Revision
91485
Author
jeremyhu@macports.org
Date
2012-04-02 17:03:33 -0700 (Mon, 02 Apr 2012)

Log Message

ld64: Make Tiger's ld64 also support -install_name

Modified Paths

Diff

Modified: trunk/dports/devel/ld64/Portfile (91484 => 91485)


--- trunk/dports/devel/ld64/Portfile	2012-04-02 23:52:00 UTC (rev 91484)
+++ trunk/dports/devel/ld64/Portfile	2012-04-03 00:03:33 UTC (rev 91485)
@@ -92,7 +92,7 @@
 
 platform darwin 8 {
     version             62.1
-    revision            2
+    revision            3
     checksums           rmd160 5b53ecb7b7a7e40e7420192fdf609e43151a736a \
                         sha256 82ccb66eb5a452b8bb47771ebbdb73bed7e8824e3cbd58fa2d6d6fc91ca26b87
     supported_archs     i386 ppc

Modified: trunk/dports/devel/ld64/files/ld64-62.1-dylib_version_args.patch (91484 => 91485)


--- trunk/dports/devel/ld64/files/ld64-62.1-dylib_version_args.patch	2012-04-02 23:52:00 UTC (rev 91484)
+++ trunk/dports/devel/ld64/files/ld64-62.1-dylib_version_args.patch	2012-04-03 00:03:33 UTC (rev 91485)
@@ -1,19 +1,25 @@
 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-03-31 18:50:06.000000000 -0700
-@@ -972,9 +972,15 @@ void Options::parse(int argc, const char
++++ 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, "-compatibility_version") == 0 ) {
-+				fDylibCompatVersion = parseVersionNumber(argv[++i]);
-+			}
- 			else if ( strcmp(arg, "-dylib_compatibility_version") == 0 ) {
+-			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, "-current_version") == 0 ) {
-+				fDylibCurrentVersion = parseVersionNumber(argv[++i]);
-+			}
- 			else if ( strcmp(arg, "-dylib_current_version") == 0 ) {
+-			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.