# HG changeset patch # User David Demelier # Date 1566929400 -7200 # Node ID c90a8ede0eb2b64c563b58d7a82b2c2c8aee20af # Parent 1e83dce87b7ef7dd7b2117a90b68eac3ab1b78c8 audio/libmad: initial import, closes #2229 diff -r 1e83dce87b7e -r c90a8ede0eb2 audio/libmad/libmad.sh --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/audio/libmad/libmad.sh Tue Aug 27 20:10:00 2019 +0200 @@ -0,0 +1,61 @@ +#!/bin/sh +# +# Copyright (c) 2019 David Demelier +# +# Permission to use, copy, modify, and/or distribute this software for any +# purpose with or without fee is hereby granted, provided that the above +# copyright notice and this permission notice appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF +# OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. +# + +PKGNAME=libmad +PKGVERSION=0.15.1b +PKGREVISION=1 +PKGLICENSE="GPLv20" +PKGSUMMARY="MPEG audio decoder library" +PKGDOWNLOAD="ftp://ftp.mars.org/pub/mpeg/$PKGNAME-$PKGVERSION.tar.gz" + +: ${CHOST:=$(uname -m)-linux-musl} +: ${CBUILD:=$(uname -m)-linux-musl} +: ${CC:=clang} +: ${CFLAGS:=-O2} +: ${CXX:=clang++} +: ${CXXFLAGS:=-O2} +: ${LDFLAGS:=} +: ${LIBS:=} + +build() +{ + rm -rf $PKGNAME-$PKGVERSION + tar xvf $PKGNAME-$PKGVERSION.tar.gz + cd $PKGNAME-$PKGVERSION + + # http://www.linuxfromscratch.org/blfs/view/cvs/multimedia/libmad.html + patch -p1 < ../patch-optimizations.patch + sed -i -e "s@AM_CONFIG_HEADER@AC_CONFIG_HEADERS@g" configure.ac + touch NEWS AUTHORS ChangeLog + autoreconf -vif + CC="$CC" \ + CFLAGS="$CFLAGS" \ + CXX="$CXX" \ + CXXFLAGS="$CXXFLAGS" \ + LDFLAGS="$LDFLAGS" \ + LIBS="$LIBS" \ + ./configure \ + --build=$CBUILD \ + --host=$CHOST \ + --prefix= + make + make install DESTDIR=$DESTDIR + find $DESTDIR -type f -name "*.la" -delete + + cd .. + rm -rf $PKGNAME-$PKGVERSION +} diff -r 1e83dce87b7e -r c90a8ede0eb2 audio/libmad/libmad.sha1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/audio/libmad/libmad.sha1 Tue Aug 27 20:10:00 2019 +0200 @@ -0,0 +1,1 @@ +cac19cd00e1a907f3150cc040ccc077783496d76 libmad-0.15.1b.tar.gz diff -r 1e83dce87b7e -r c90a8ede0eb2 audio/libmad/patch-optimizations.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/audio/libmad/patch-optimizations.patch Tue Aug 27 20:10:00 2019 +0200 @@ -0,0 +1,91 @@ +Submitted By: Igor Živković +Date: 2013-07-04 +Initial Package Version: 0.15.1b +Upstream Status: Reported +Origin: Arch Linux packages repository +Description: Fixes compilation on x86-64 and optimization issues. + +diff -Naur libmad-0.15.1b.orig/configure.ac libmad-0.15.1b/configure.ac +--- libmad-0.15.1b.orig/configure.ac 2004-01-23 10:41:32.000000000 +0100 ++++ libmad-0.15.1b/configure.ac 2013-07-04 15:55:09.323764417 +0200 +@@ -124,71 +124,7 @@ + + if test "$GCC" = yes + then +- if test -z "$arch" +- then +- case "$host" in +- i386-*) ;; +- i?86-*) arch="-march=i486" ;; +- arm*-empeg-*) arch="-march=armv4 -mtune=strongarm1100" ;; +- armv4*-*) arch="-march=armv4 -mtune=strongarm" ;; +- powerpc-*) ;; +- mips*-agenda-*) arch="-mcpu=vr4100" ;; +- mips*-luxsonor-*) arch="-mips1 -mcpu=r3000 -Wa,-m4010" ;; +- esac +- fi +- +- case "$optimize" in +- -O|"-O "*) +- optimize="-O" +- optimize="$optimize -fforce-mem" +- optimize="$optimize -fforce-addr" +- : #x optimize="$optimize -finline-functions" +- : #- optimize="$optimize -fstrength-reduce" +- optimize="$optimize -fthread-jumps" +- optimize="$optimize -fcse-follow-jumps" +- optimize="$optimize -fcse-skip-blocks" +- : #x optimize="$optimize -frerun-cse-after-loop" +- : #x optimize="$optimize -frerun-loop-opt" +- : #x optimize="$optimize -fgcse" +- optimize="$optimize -fexpensive-optimizations" +- optimize="$optimize -fregmove" +- : #* optimize="$optimize -fdelayed-branch" +- : #x optimize="$optimize -fschedule-insns" +- optimize="$optimize -fschedule-insns2" +- : #? optimize="$optimize -ffunction-sections" +- : #? optimize="$optimize -fcaller-saves" +- : #> optimize="$optimize -funroll-loops" +- : #> optimize="$optimize -funroll-all-loops" +- : #x optimize="$optimize -fmove-all-movables" +- : #x optimize="$optimize -freduce-all-givs" +- : #? optimize="$optimize -fstrict-aliasing" +- : #* optimize="$optimize -fstructure-noalias" +- +- case "$host" in +- arm*-*) +- optimize="$optimize -fstrength-reduce" +- ;; +- mips*-*) +- optimize="$optimize -fstrength-reduce" +- optimize="$optimize -finline-functions" +- ;; +- i?86-*) +- optimize="$optimize -fstrength-reduce" +- ;; +- powerpc-apple-*) +- # this triggers an internal compiler error with gcc2 +- : #optimize="$optimize -fstrength-reduce" +- +- # this is really only beneficial with gcc3 +- : #optimize="$optimize -finline-functions" +- ;; +- *) +- # this sometimes provokes bugs in gcc 2.95.2 +- : #optimize="$optimize -fstrength-reduce" +- ;; +- esac +- ;; +- esac ++ optimize="-O2" + fi + + case "$host" in +@@ -297,6 +233,7 @@ + then + case "$host" in + i?86-*) FPM="INTEL" ;; ++ x86_64*) FPM="64BIT" ;; + arm*-*) FPM="ARM" ;; + mips*-*) FPM="MIPS" ;; + sparc*-*) FPM="SPARC" ;;