ports/78670: [PATCH] multimedia/mplayer AAC decoding broken on recent -CURRENT/-STABLE

Bartosz Fabianowski freebsd at chillt.de
Thu Mar 10 15:10:15 UTC 2005


>Number:         78670
>Category:       ports
>Synopsis:       [PATCH] multimedia/mplayer AAC decoding broken on recent -CURRENT/-STABLE
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Thu Mar 10 15:10:14 GMT 2005
>Closed-Date:
>Last-Modified:
>Originator:     Bartosz Fabianowski
>Release:        5.4-PRERELEASE
>Organization:
>Environment:
FreeBSD takahe.local 5.4-PRERELEASE FreeBSD 5.4-PRERELEASE #0: Thu Mar 10 03:09:38 CET 2005     root at takahe.local:/usr/obj/usr/src/sys/TAKAHE  i386
>Description:
Mplayer uses libfaad2 for AAC decoding. This library does not know that recent versions of FreeBSD have a lrintf() function and tries to redefine it. That fails, of course, and the configure script excludes libfaad2 from compilation.
>How-To-Repeat:
ON -CURRENT after 11th January 2005 or -STABLE after 15th January 2005:

cd /usr/ports/multimedia/mplayer
make configure | grep FAAD2

This will result in:

Checking for internal FAAD2 (AAC) support ... no (broken gcc)
Checking for external FAAD2 (AAC) support ... no

Thus, no AAC decoding :(
>Fix:
The following patch fixes the problem. It does two things. First of all, it makes libfaad2/common.h respect the HAVE_LRINTF knob that gets set by configure. Second, it makes sure that this knob is set in config.h while libfaad2 compilation is being tested.

If this seems like a valid fix, it might be a good idea to submit this upstream (that is, to the mplayer and libfaad2 teams).




--- configure.orig	Thu Mar 10 15:33:06 2005
+++ configure	Thu Mar 10 15:33:54 2005
@@ -5173,7 +5173,7 @@
 if test "$_faad_internal" = auto ; then
   # the faad check needs a config.h file
   if not test -f "config.h" ; then
-    > config.h
+    echo "$_def_lrintf" > config.h
   fi
   # internal faad: check if our dear gcc is able to compile it...
   cp "`pwd`/libfaad2/cfft.c" $TMPC
--- libfaad2/common.h.orig	Thu Mar 10 15:33:19 2005
+++ libfaad2/common.h	Thu Mar 10 15:34:38 2005
@@ -328,7 +328,9 @@
   }
 
 
-  #if defined(_WIN32) && !defined(__MINGW32__)
+  #if defined(HAVE_LRINTF)
+    #define HAS_LRINTF
+  #elif defined(_WIN32) && !defined(__MINGW32__)
     #define HAS_LRINTF
     static INLINE int lrintf(float f)
     {
>Release-Note:
>Audit-Trail:
>Unformatted:



More information about the freebsd-ports-bugs mailing list