Revision
75728
Author
ryandesign@macports.org
Date
2011-02-05 13:55:51 -0800 (Sat, 05 Feb 2011)

Log Message

libvpx: add universal variant with muniversal portgroup; see #25939

Modified Paths

Diff

Modified: trunk/dports/multimedia/libvpx/Portfile (75727 => 75728)


--- trunk/dports/multimedia/libvpx/Portfile	2011-02-05 21:00:54 UTC (rev 75727)
+++ trunk/dports/multimedia/libvpx/Portfile	2011-02-05 21:55:51 UTC (rev 75728)
@@ -2,6 +2,7 @@
 # $Id$
 
 PortSystem      1.0
+PortGroup       muniversal 1.0
 
 name            libvpx
 version         0.9.5
@@ -25,9 +26,6 @@
 
 depends_build   port:yasm
 
-# gcc-4.2: -E, -S, -save-temps and -M options are not allowed with multiple -arch flags
-universal_variant no
-
 # patches for: 10.6; correct "universal" arch default selection; 'sed' scripts.
 patchfiles      patch-build-make-configure.sh.diff \
                 patch-configure.diff
@@ -62,21 +60,22 @@
 build.args      verbose=1
 
 # set configure parameters depending on if universal or not
-if {![variant_isset universal] || ![variant_exists universal]} {
-    # specify only the single target, otherwise 'configure' will try
-    # for a 'universal' install.
-    switch ${build_arch} {
-        i386    { set tgt_isa x86           }
-        ppc     { set tgt_isa ppc32         }
-        default { set tgt_isa ${build_arch} }
-    }
-    configure.args-append --target=${tgt_isa}-${os.platform}${os.major}-gcc
-} else {
+set my_targets(ppc)     ppc32
+set my_targets(ppc64)   ppc64
+set my_targets(i386)    x86
+set my_targets(x86_64)  x86_64
+if {[variant_isset universal]} {
     # clear universal flags; configure will determine them.
     configure.universal_cppflags
     configure.universal_cflags
     configure.universal_cxxflags
     configure.universal_ldflags
-    # tell configure the target; probably not necessary
-    configure.args-append --target=universal-${os.platform}${os.major}-gcc
+    configure.universal_args-delete --disable-dependency-tracking
+    foreach my_arch ${configure.universal_archs} {
+        set merger_configure_args(${my_arch}) --target=$my_targets(${my_arch})-${os.platform}${os.major}-gcc
+    }
+} else {
+    # specify only the single target, otherwise 'configure' will try
+    # for a universal install.
+    configure.args-append --target=$my_targets(${build_arch})-${os.platform}${os.major}-gcc
 }