[24149] trunk/dports
source_changes at macosforge.org
source_changes at macosforge.org
Tue Apr 17 09:53:05 PDT 2007
Revision: 24149
http://trac.macosforge.org/projects/macports/changeset/24149
Author: pipping at macports.org
Date: 2007-04-17 09:53:05 -0700 (Tue, 17 Apr 2007)
Log Message:
-----------
* add universal variants
note regarding zlib:
zlib's universal variant is unchanged - it can now savely be readded
because the commands used in the portfile have been included in 1.4.2
note regarding openssl:
the variant universal has been completely rewritten, making use of
fs-traverse (find.c - thanks a lot, Kevin!), backup, lipo (portutil.tcl)
Modified Paths:
--------------
trunk/dports/archivers/zlib/Portfile
trunk/dports/devel/openssl/Portfile
Added Paths:
-----------
trunk/dports/devel/openssl/files/patch-Makefile-universal-install
trunk/dports/devel/openssl/files/patch-Makefiles-universal-i386
trunk/dports/devel/openssl/files/patch-Makefiles-universal-ppc
Modified: trunk/dports/archivers/zlib/Portfile
===================================================================
--- trunk/dports/archivers/zlib/Portfile 2007-04-17 16:35:18 UTC (rev 24148)
+++ trunk/dports/archivers/zlib/Portfile 2007-04-17 16:53:05 UTC (rev 24149)
@@ -23,8 +23,12 @@
checksums md5 dee233bf288ee795ac96a98cc2e369b6
patchfiles patch-Makefile-static
+if {[variant_isset universal]} {
+ patchfiles-append patch-Makefile-universal
+}
configure.args --shared
+configure.universal_args
test.run yes
Modified: trunk/dports/devel/openssl/Portfile
===================================================================
--- trunk/dports/devel/openssl/Portfile 2007-04-17 16:35:18 UTC (rev 24148)
+++ trunk/dports/devel/openssl/Portfile 2007-04-17 16:53:05 UTC (rev 24149)
@@ -46,3 +46,84 @@
livecheck.check regex
livecheck.url ${master_sites}
livecheck.regex ${name}-(0.9.8\[a-z\])
+
+variant universal {
+
+# port-specific procedure
+ proc clean {} {
+ system "make clean"
+ foreach f [glob lib*.a lib*.*.*.*.dylib] {
+ file delete ${f}
+ }
+ }
+
+# i386
+ # configure
+ pre-configure {
+ cd ${worksrcpath}
+ system "./Configure darwin-i386-cc ${configure.pre_args} ${configure.args}"
+ system "patch < ${filespath}/patch-Makefiles-universal-i386"
+ reinplace "s|^PROCESSOR=.*|PROCESSOR=|" Makefile
+ }
+ # build
+ configure {
+ cd ${worksrcpath}
+ system "make"
+ }
+ # backup, clean up
+ post-configure {
+ cd ${worksrcpath}
+ # get list of files to be backed up - only needs to be done once
+ fs-traverse file . {
+ if {![string equal [string range [file tail $file] end-1 end] .o]} {
+ set type [exec file -b $file]
+ if {[regexp {(Mach-O|ar archive)} $type]} {
+ global universal_filelist
+ lappend universal_filelist $file
+ }
+ }
+ }
+
+ backup i386
+
+ clean
+ }
+# ppc
+ # configure
+ pre-build {
+ cd ${worksrcpath}
+ system "./Configure darwin-ppc-cc ${configure.pre_args} ${configure.args}"
+ system "patch < ${filespath}/patch-Makefiles-universal-ppc"
+ }
+ # build
+ build {
+ cd ${worksrcpath}
+ system "make"
+ }
+ # backup
+ post-build {
+ cd ${worksrcpath}
+ # there's already a list of files to be backed up
+
+ global fileList
+
+ backup ppc
+
+ clean
+ }
+
+# universal
+ pre-destroot {
+ cd ${worksrcpath}
+ global fileList
+ system "make openssl.pc libssl.pc libcrypto.pc"
+ lipo
+ system "patch < ${filespath}/patch-Makefile-universal-install"
+ }
+ destroot.target install_docs install_sw
+
+ # the test suite can only be run *after* destrooting
+ test.run yes
+ test.dir ${worksrcpath}/test
+ test.target alltests
+}
Added: trunk/dports/devel/openssl/files/patch-Makefile-universal-install
===================================================================
--- trunk/dports/devel/openssl/files/patch-Makefile-universal-install (rev 0)
+++ trunk/dports/devel/openssl/files/patch-Makefile-universal-install 2007-04-17 16:53:05 UTC (rev 24149)
@@ -0,0 +1,11 @@
+--- Makefile.orig 2007-04-02 05:42:04.000000000 +0200
++++ Makefile 2007-04-02 05:42:15.000000000 +0200
+@@ -475,7 +475,7 @@
+ dist_pem_h:
+ (cd crypto/pem; $(MAKE) -e $(BUILDENV) pem.h; $(MAKE) clean)
+
+-install: all install_docs install_sw
++install: install_docs install_sw
+
+ install_sw:
+ @$(PERL) $(TOP)/util/mkdir-p.pl $(INSTALL_PREFIX)$(INSTALLTOP)/bin \
Added: trunk/dports/devel/openssl/files/patch-Makefiles-universal-i386
===================================================================
--- trunk/dports/devel/openssl/files/patch-Makefiles-universal-i386 (rev 0)
+++ trunk/dports/devel/openssl/files/patch-Makefiles-universal-i386 2007-04-17 16:53:05 UTC (rev 24149)
@@ -0,0 +1,33 @@
+--- Makefile.orig 2007-04-01 18:13:46.000000000 +0200
++++ Makefile 2007-04-01 18:15:07.000000000 +0200
+@@ -60,7 +60,7 @@
+ # PKCS1_CHECK - pkcs1 tests.
+
+ CC= cc
+-CFLAG= -fPIC -fno-common -DOPENSSL_PIC -DZLIB -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -O3 -fomit-frame-pointer -fno-common
++CFLAG= -fPIC -fno-common -DOPENSSL_PIC -DZLIB -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -O3 -fomit-frame-pointer -fno-common -isysroot /Developer/SDKs/MacOSX10.4u.sdk -arch i386
+ DEPFLAG= -DOPENSSL_NO_CAMELLIA -DOPENSSL_NO_GMP -DOPENSSL_NO_MDC2 -DOPENSSL_NO_RC5 -DOPENSSL_NO_RFC3779
+ PEX_LIBS=
+ EX_LIBS= -L/opt/local/lib -lz
+@@ -142,7 +142,7 @@
+ SHARED_SSL=libssl$(SHLIB_EXT)
+ SHARED_LIBS=$(SHARED_CRYPTO) $(SHARED_SSL)
+ SHARED_LIBS_LINK_EXTS=.$(SHLIB_MAJOR).dylib .dylib
+-SHARED_LDFLAGS=-dynamiclib
++SHARED_LDFLAGS=-dynamiclib -arch i386
+
+ GENERAL= Makefile
+ BASENAME= openssl
+--- Makefile.shared.orig 2007-04-01 18:16:24.000000000 +0200
++++ Makefile.shared 2007-04-01 18:16:55.000000000 +0200
+@@ -11,8 +11,8 @@
+ # LDFLAGS contains flags to be used when temporary object files (when building
+ # shared libraries) are created, or when an application is linked.
+ # SHARED_LDFLAGS contains flags to be used when the shared library is created.
+-LDFLAGS=
+-SHARED_LDFLAGS=
++LDFLAGS=-arch i386
++SHARED_LDFLAGS=-arch i386
+
+ # LIBNAME contains just the name of the library, without prefix ("lib"
+ # on Unix, "cyg" for certain forms under Cygwin...) or suffix (.a, .so,
Added: trunk/dports/devel/openssl/files/patch-Makefiles-universal-ppc
===================================================================
--- trunk/dports/devel/openssl/files/patch-Makefiles-universal-ppc (rev 0)
+++ trunk/dports/devel/openssl/files/patch-Makefiles-universal-ppc 2007-04-17 16:53:05 UTC (rev 24149)
@@ -0,0 +1,33 @@
+--- Makefile.orig 2007-04-01 18:13:46.000000000 +0200
++++ Makefile 2007-04-01 18:15:07.000000000 +0200
+@@ -60,7 +60,7 @@
+ # PKCS1_CHECK - pkcs1 tests.
+
+ CC= cc
+-CFLAG= -fPIC -fno-common -DOPENSSL_PIC -DZLIB -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -O3 -DB_ENDIAN
++CFLAG= -fPIC -fno-common -DOPENSSL_PIC -DZLIB -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -O3 -DB_ENDIAN -isysroot /Developer/SDKs/MacOSX10.4u.sdk -arch ppc
+ DEPFLAG= -DOPENSSL_NO_CAMELLIA -DOPENSSL_NO_GMP -DOPENSSL_NO_MDC2 -DOPENSSL_NO_RC5 -DOPENSSL_NO_RFC3779
+ PEX_LIBS=
+ EX_LIBS= -L/opt/local/lib -lz
+@@ -142,7 +142,7 @@
+ SHARED_SSL=libssl$(SHLIB_EXT)
+ SHARED_LIBS=$(SHARED_CRYPTO) $(SHARED_SSL)
+ SHARED_LIBS_LINK_EXTS=.$(SHLIB_MAJOR).dylib .dylib
+-SHARED_LDFLAGS=-dynamiclib
++SHARED_LDFLAGS=-dynamiclib -arch ppc
+
+ GENERAL= Makefile
+ BASENAME= openssl
+--- Makefile.shared.orig 2007-04-01 18:16:24.000000000 +0200
++++ Makefile.shared 2007-04-01 18:16:55.000000000 +0200
+@@ -11,8 +11,8 @@
+ # LDFLAGS contains flags to be used when temporary object files (when building
+ # shared libraries) are created, or when an application is linked.
+ # SHARED_LDFLAGS contains flags to be used when the shared library is created.
+-LDFLAGS=-arch i386
+-SHARED_LDFLAGS=-arch i386
++LDFLAGS=-arch ppc
++SHARED_LDFLAGS=-arch ppc
+
+ # LIBNAME contains just the name of the library, without prefix ("lib"
+ # on Unix, "cyg" for certain forms under Cygwin...) or suffix (.a, .so,
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.macosforge.org/pipermail/macports-changes/attachments/20070417/93154fe7/attachment.html
More information about the macports-changes
mailing list