[92186] trunk/dports/devel/ld64

jeremyhu at macports.org jeremyhu at macports.org
Sat Apr 21 04:25:08 PDT 2012


Revision: 92186
          https://trac.macports.org/changeset/92186
Author:   jeremyhu at macports.org
Date:     2012-04-21 04:25:06 -0700 (Sat, 21 Apr 2012)
Log Message:
-----------
ld64: Update Tiger to ld64-77.1

Modified Paths:
--------------
    trunk/dports/devel/ld64/Portfile

Added Paths:
-----------
    trunk/dports/devel/ld64/files/ld64-77-version.patch

Removed Paths:
-------------
    trunk/dports/devel/ld64/files/ld64-62.1-dylib_version_args.patch
    trunk/dports/devel/ld64/files/ld64-62.1-version.patch

Modified: trunk/dports/devel/ld64/Portfile
===================================================================
--- trunk/dports/devel/ld64/Portfile	2012-04-21 10:50:52 UTC (rev 92185)
+++ trunk/dports/devel/ld64/Portfile	2012-04-21 11:25:06 UTC (rev 92186)
@@ -50,19 +50,15 @@
 }
 
 if {${os.major} < 9} {
-    # XCode 2.5
-    # Newer versions rely on too many changes which aren't really worth
-    # bringing back to Tiger at this point.  77 relies on CommonCrypto, and
-    # 85 relies on ARM macros from xnu_headers.
-    version             62.1
-    revision            4
-    checksums           rmd160 5b53ecb7b7a7e40e7420192fdf609e43151a736a \
-                        sha256 82ccb66eb5a452b8bb47771ebbdb73bed7e8824e3cbd58fa2d6d6fc91ca26b87     
+    # Between XCode 3.0 (OS X 10.5.2)
+    version             77.1
+    revision            0
+    checksums           rmd160  a50eaef9ccd49c9e0db81b7e2abc392574bd552d \
+                        sha256  abd66f0dd92d52da6f0b9c44ca5c2a39d92f8be47941f6c35a9af39b790bf163
     supported_archs     i386 ppc
     depends_build
     depends_lib
-
-    patchfiles          ld64-62.1-dylib_version_args.patch ld64-62.1-version.patch
+    patchfiles          ld64-77-version.patch
 } elseif {${os.arch} == "powerpc"} {
     # XCode 3.1.4
     # 127.2 should work, but it will require some build fixes for ppc.
@@ -86,7 +82,7 @@
 xcode.target            all ObjectDump machocheck
 xcode.destroot.path     ${prefix}/bin
 
-post-extract {
+post-patch {
     if {${os.major} >= 9} {
         reinplace "s|/Developer/usr/lib|${prefix}/libexec/llvm-${llvm_version}/lib|g" \
             ${worksrcpath}/ld64.xcodeproj/project.pbxproj
@@ -101,21 +97,25 @@
         ${worksrcpath}/ld64.xcodeproj/project.pbxproj
     reinplace "s|\$(RC_ProjectSourceVersion)|${version}|g" \
         ${worksrcpath}/ld64.xcodeproj/project.pbxproj
+
+    if {${os.major} < 9} {
+        # No CommonCrypto, use openssl
+        reinplace "s:<CommonCrypto/CommonDigest.h>:<openssl/md5.h>:" ${worksrcpath}/src/MachOWriterExecutable.hpp
+        reinplace "s:CC_MD5:MD5:" ${worksrcpath}/src/MachOWriterExecutable.hpp
+    }
 }
 
 if {${os.major} >= 9} {
     xcode.build.settings OTHER_CFLAGS='[exec ${prefix}/bin/llvm-config-mp-${llvm_version} --cflags] -I${prefix}/include' \
                          OTHER_CPLUSPLUSFLAGS='[exec ${prefix}/bin/llvm-config-mp-${llvm_version} --cflags] -I${prefix}/include'
+    xcode.destroot.settings OTHER_CFLAGS='[exec ${prefix}/bin/llvm-config-mp-${llvm_version} --cflags] -I${prefix}/include' \
+                            OTHER_CPLUSPLUSFLAGS='[exec ${prefix}/bin/llvm-config-mp-${llvm_version} --cflags] -I${prefix}/include'
 } else {
-    xcode.build.settings OTHER_CFLAGS='-I${prefix}/include' OTHER_CPLUSPLUSFLAGS='-I${prefix}/include'
+    xcode.build.settings OTHER_CFLAGS='-I${prefix}/include' OTHER_CPLUSPLUSFLAGS='-I${prefix}/include' OTHER_LDFLAGS='-lcrypto'
+    xcode.destroot.settings OTHER_CFLAGS='-I${prefix}/include' OTHER_CPLUSPLUSFLAGS='-I${prefix}/include' OTHER_LDFLAGS='-lcrypto'
 }
 
 post-destroot {
-    if {${os.major} == 8} {
-        move ${destroot}${prefix}/bin/ld64 ${destroot}${prefix}/bin/ld
-        move ${destroot}${prefix}/share/man/man1/ld64.1 ${destroot}${prefix}/share/man/man1/ld.1
-    }
-
     # ${prefix}/bin/ld will always use the llvm we built against
     # ${prefix}/libexec/ld64/ld uses relative linking for use with the llvm ports
     file mkdir ${destroot}${prefix}/libexec/ld64

Deleted: trunk/dports/devel/ld64/files/ld64-62.1-dylib_version_args.patch
===================================================================
--- trunk/dports/devel/ld64/files/ld64-62.1-dylib_version_args.patch	2012-04-21 10:50:52 UTC (rev 92185)
+++ trunk/dports/devel/ld64/files/ld64-62.1-dylib_version_args.patch	2012-04-21 11:25:06 UTC (rev 92186)
@@ -1,25 +0,0 @@
-diff -Naurp ld64-62.1.orig/src/Options.cpp ld64-62.1/src/Options.cpp
---- src/Options.cpp	2006-09-22 18:38:53.000000000 -0700
-+++ src/Options.cpp	2012-04-02 16:56:18.000000000 -0700
-@@ -972,10 +972,10 @@ void Options::parse(int argc, const char
- 				fReaderOptions.fLoadObjcClassesInArchives = true;
- 			}
- 			// Library versioning.
--			else if ( strcmp(arg, "-dylib_compatibility_version") == 0 ) {
-+			else if ( (strcmp(arg, "-compatibility_version") == 0) || (strcmp(arg, "-dylib_compatibility_version") == 0) ) {
- 				fDylibCompatVersion = parseVersionNumber(argv[++i]);
- 			}
--			else if ( strcmp(arg, "-dylib_current_version") == 0 ) {
-+			else if ( (strcmp(arg, "-current_version") == 0) || (strcmp(arg, "-dylib_current_version") == 0) ) {
- 				fDylibCurrentVersion = parseVersionNumber(argv[++i]);
- 			}
- 			else if ( strcmp(arg, "-sectorder") == 0 ) {
-@@ -989,7 +989,7 @@ void Options::parse(int argc, const char
- 				i += 3;
- 			}
- 			// Since we have a full path in binary/library names we need to be able to override it.
--			else if ( (strcmp(arg, "-dylib_install_name") == 0) || (strcmp(arg, "-dylinker_install_name") == 0) ) {
-+			else if ( (strcmp(arg, "-install_name") == 0) || (strcmp(arg, "-dylib_install_name") == 0) || (strcmp(arg, "-dylinker_install_name") == 0) ) {
- 				fDylibInstallName = argv[++i];
- 			}
- 			// Sets the base address of the output.

Deleted: trunk/dports/devel/ld64/files/ld64-62.1-version.patch
===================================================================
--- trunk/dports/devel/ld64/files/ld64-62.1-version.patch	2012-04-21 10:50:52 UTC (rev 92185)
+++ trunk/dports/devel/ld64/files/ld64-62.1-version.patch	2012-04-21 11:25:06 UTC (rev 92186)
@@ -1,56 +0,0 @@
---- ld64.xcodeproj/project.pbxproj.orig	2012-04-09 23:17:48.000000000 -0700
-+++ ld64.xcodeproj/project.pbxproj	2012-04-09 23:21:25.000000000 -0700
-@@ -463,7 +463,6 @@
- 				PREBINDING = NO;
- 				PRODUCT_NAME = ld64;
- 				SECTORDER_FLAGS = "";
--				VERSIONING_SYSTEM = "apple-generic";
- 				WARNING_CFLAGS = "-Wall";
- 			};
- 			name = Debug;
-@@ -511,7 +510,6 @@
- 				PRODUCT_NAME = ld64;
- 				SECTORDER_FLAGS = "";
- 				VALID_ARCHS = "i386 ppc";
--				VERSIONING_SYSTEM = "apple-generic";
- 				WARNING_CFLAGS = "-Wall";
- 			};
- 			name = Release;
---- src/ld.cpp.orig	2012-04-09 23:23:58.000000000 -0700
-+++ src/ld.cpp	2012-04-09 23:25:34.000000000 -0700
-@@ -57,6 +57,8 @@
- 
- #include "SectCreate.h"
- 
-+const double ld64VersionNumber = (double)62.1;
-+
- #if 0
- static void dumpAtom(ObjectFile::Atom* atom)
- {
-@@ -2629,7 +2632,6 @@ int main(int argc, const char* argv[])
- 		ld.link();
- 	}
- 	catch (const char* msg) {
--		extern const double ld64VersionNumber;
- 		if ( archInferred )
- 			fprintf(stderr, "ld64-%g failed: %s for inferred architecture %s\n", ld64VersionNumber, msg, archName);
- 		else if ( showArch )
---- src/Options.cpp.orig	2012-04-09 23:30:52.000000000 -0700
-+++ src/Options.cpp	2012-04-09 23:31:07.000000000 -0700
-@@ -31,6 +31,8 @@
- 
- #include "Options.h"
- 
-+const char *ld64VersionString = "@(#)PROGRAM:ld64  PROJECT:ld64-62.1\n";
-+
- void throwf(const char* format, ...)
- {
- 	va_list	list;
-@@ -1456,7 +1458,6 @@ void Options::buildSearchPaths(int argc,
- 			addStandardLibraryDirectories = false;
- 		else if ( strcmp(argv[i], "-v") == 0 ) {
- 			fVerbose = true;
--			extern const char ld64VersionString[];
- 			fprintf(stderr, "%s", ld64VersionString);
- 			 // if only -v specified, exit cleanly
- 			 if ( argc == 2 )

Added: trunk/dports/devel/ld64/files/ld64-77-version.patch
===================================================================
--- trunk/dports/devel/ld64/files/ld64-77-version.patch	                        (rev 0)
+++ trunk/dports/devel/ld64/files/ld64-77-version.patch	2012-04-21 11:25:06 UTC (rev 92186)
@@ -0,0 +1,39 @@
+diff -Naurp ld64-77.orig/ld64.xcodeproj/project.pbxproj ld64-77/ld64.xcodeproj/project.pbxproj
+--- ld64.xcodeproj/project.pbxproj	2012-04-11 15:51:36.000000000 -0700
++++ ld64.xcodeproj/project.pbxproj	2012-04-11 15:53:23.000000000 -0700
+@@ -480,7 +480,6 @@
+ 				PREBINDING = NO;
+ 				PRODUCT_NAME = ld;
+ 				SECTORDER_FLAGS = "";
+-				VERSIONING_SYSTEM = "apple-generic";
+ 				WARNING_CFLAGS = "-Wall";
+ 			};
+ 			name = Debug;
+@@ -528,7 +527,6 @@
+ 				PRODUCT_NAME = ld;
+ 				SECTORDER_FLAGS = "";
+ 				VALID_ARCHS = "i386 ppc";
+-				VERSIONING_SYSTEM = "apple-generic";
+ 				WARNING_CFLAGS = "-Wall";
+ 			};
+ 			name = Release;
+diff -Naurp ld64-77.orig/src/Options.cpp ld64-77/src/Options.cpp
+--- src/Options.cpp	2008-03-20 18:48:04.000000000 -0700
++++ src/Options.cpp	2012-04-11 15:54:34.000000000 -0700
+@@ -32,6 +32,8 @@
+ 
+ #include "Options.h"
+ 
++const char *ldVersionString = "@(#)PROGRAM:ld  PROJECT:ld64-77\n";
++
+ void throwf(const char* format, ...)
+ {
+ 	va_list	list;
+@@ -2153,7 +2155,6 @@ void Options::buildSearchPaths(int argc,
+ 			addStandardLibraryDirectories = false;
+ 		else if ( strcmp(argv[i], "-v") == 0 ) {
+ 			fVerbose = true;
+-			extern const char ldVersionString[];
+ 			fprintf(stderr, "%s", ldVersionString);
+ 			 // if only -v specified, exit cleanly
+ 			 if ( argc == 2 )
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/macports-changes/attachments/20120421/811132ca/attachment.html>


More information about the macports-changes mailing list