[92017] trunk/dports/gnome/gst-ffmpeg/Portfile

jeremyhu at macports.org jeremyhu at macports.org
Sun Apr 15 23:20:03 PDT 2012


Revision: 92017
          https://trac.macports.org/changeset/92017
Author:   jeremyhu at macports.org
Date:     2012-04-15 23:20:03 -0700 (Sun, 15 Apr 2012)
Log Message:
-----------
gst-ffmpeg: Support +universal, address build failures, and deal with gstreamer's buggy arch detection

Modified Paths:
--------------
    trunk/dports/gnome/gst-ffmpeg/Portfile

Modified: trunk/dports/gnome/gst-ffmpeg/Portfile
===================================================================
--- trunk/dports/gnome/gst-ffmpeg/Portfile	2012-04-16 03:52:47 UTC (rev 92016)
+++ trunk/dports/gnome/gst-ffmpeg/Portfile	2012-04-16 06:20:03 UTC (rev 92017)
@@ -3,8 +3,12 @@
 
 PortSystem          1.0
 
+# https://bugzilla.gnome.org/show_bug.cgi?id=636134
+PortGroup   muniversal 1.0
+
 name                gst-ffmpeg
 version             0.10.13
+revision            1
 description         This is gst-ffmpeg, a set of plug-ins for GStreamer.
 long_description     ${description}
 maintainers         rmstonecipher openmaintainer
@@ -28,26 +32,56 @@
 
 depends_lib         port:gst-plugins-base
 
-universal_variant   no
 use_bzip2           yes
 
 configure.args      --mandir=${prefix}/share/man
-set with_ffmpeg_extra_configure "--cc=${configure.cc}"
-pre-configure {
-    configure.args-append --with-ffmpeg-extra-configure="$with_ffmpeg_extra_configure"
-}
 
-if {$build_arch == "i386"} {
-    append with_ffmpeg_extra_configure " --arch=i686"
-} elseif {$build_arch != ""} {
-    append with_ffmpeg_extra_configure " --arch=${build_arch}"
-}
+if {[variant_isset universal]} { 
+    set merger_host(x86_64) x86_64-apple-${os.platform}${os.major}
+    set merger_host(i386) i686-apple-${os.platform}${os.major}
+    set merger_host(ppc64) powerpc64-apple-${os.platform}${os.major}
+    set merger_host(ppc) powerpc-apple-${os.platform}${os.major}
+    set merger_configure_args(x86_64) "--build=x86_64-apple-${os.platform}${os.major} --with-ffmpeg-extra-configure=\"--cc=${configure.cc} --arch=x86_64\""
+    set merger_configure_args(ppc) "--build=powerpc-apple-${os.platform}${os.major} --with-ffmpeg-extra-configure=\"--cc=${configure.cc} --arch=ppc\""
+    set merger_configure_args(ppc64) "--build=powerpc64-apple-${os.platform}${os.major} --with-ffmpeg-extra-configure=\"--cc=${configure.cc} --arch=ppc64\""
 
-platform darwin 10 {
-    # ticket #20938 -- disable mmx for 32 bit intel only
-    if { $build_arch == "i386" } {
-        append with_ffmpeg_extra_configure " --disable-swscale --disable-mmx --disable-mmx2 --disable-sse --disable-ssse3 --disable-amd3dnow --disable-amd3dnowext"
+    if {[string match "*gcc-4.2" ${configure.compiler}] && [lsearch ${universal_archs} i386] != -1} {
+        if {[vercmp ${xcodeversion} 3.2] >= 0} {
+            set merger_configure_compiler(i386) clang
+            set merger_configure_args(i386) "--build=i686-apple-${os.platform}${os.major} --with-ffmpeg-extra-configure=\"--cc=[portconfigure::find_developer_tool clang] --arch=i686\""
+        } else {
+            # i386 in +universal needs MacPorts base 2.1 on Leopard
+            depends_build port:clang-3.0
+            depends_skip_archcheck-append clang-3.0
+
+            set merger_configure_compiler(i386) macports-clang-3.0
+
+            set merger_configure_args(i386) "--build=i686-apple-${os.platform}${os.major} --with-ffmpeg-extra-configure=\"--cc=${prefix}/bin/clang-mp-3.0 --arch=i686\""
+        }
+    } else {
+       set merger_configure_args(i386) "--build=i686-apple-${os.platform}${os.major} --with-ffmpeg-extra-configure=\"--cc=${configure.cc} --arch=i686\""
     }
+} elseif {${build_arch} == "i386"} {
+    if {${configure.compiler} == "gcc-4.2"} {
+        if {[vercmp ${xcodeversion} 3.2] >= 0} {
+            configure.compiler clang
+        } else {
+            depends_build port:clang-3.0
+            depends_skip_archcheck-append clang-3.0
+
+            # FIXME: Use macports-clang-3.0 once 2.1 is out
+            configure.cc ${prefix}/bin/clang-mp-3.0
+        }
+    }
+    configure.args-append \
+        --host=i686-apple-${os.platform}${os.major} \
+        --build=i686-apple-${os.platform}${os.major} \
+        --with-ffmpeg-extra-configure="--cc=${configure.cc} --arch=i686\""
+} else {
+    configure.args-append \
+        --host=${os.arch}-apple-${os.platform}${os.major} \
+        --build=${os.arch}-apple-${os.platform}${os.major} \
+        --with-ffmpeg-extra-configure="--cc=${configure.cc} --arch=${os.arch}"
 }
 
 #
@@ -55,7 +89,10 @@
 #
 platform darwin 8 {
     depends_build-append port:gmake
+    depends_skip_archcheck-append gmake
+
     build.cmd            gmake
+    destroot.cmd         gmake
 }
 
 livecheck.type      regex
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/macports-changes/attachments/20120415/b1f97c4b/attachment.html>


More information about the macports-changes mailing list