[36833] trunk/dports/databases/oracle-instantclient/Portfile

ryandesign at macports.org ryandesign at macports.org
Fri May 16 02:16:24 PDT 2008


Revision: 36833
          http://trac.macosforge.org/projects/macports/changeset/36833
Author:   ryandesign at macports.org
Date:     2008-05-16 02:16:22 -0700 (Fri, 16 May 2008)

Log Message:
-----------
oracle-instantclient: now works on Intel Macs; closes #15296

Modified Paths:
--------------
    trunk/dports/databases/oracle-instantclient/Portfile

Modified: trunk/dports/databases/oracle-instantclient/Portfile
===================================================================
--- trunk/dports/databases/oracle-instantclient/Portfile	2008-05-16 07:55:27 UTC (rev 36832)
+++ trunk/dports/databases/oracle-instantclient/Portfile	2008-05-16 09:16:22 UTC (rev 36833)
@@ -9,7 +9,7 @@
 maintainers             ryandesign
 homepage                http://www.oracle.com/technology/software/tech/oci/instantclient/
 use_zip                 yes
-worksrcdir              instantclient[join [lrange [split ${version} .] 0 1] _]
+set weird_prefix        ""
 
 description \
     Oracle database connection libraries
@@ -17,27 +17,49 @@
 long_description \
     Oracle Instant Client allows you to run your applications without installing the standard Oracle client or having an ORACLE_HOME.
 
-master_sites \
-    http://download.oracle.com/otn/mac/instantclient/
+platform powerpc {
+    worksrcdir          instantclient[join [lrange [split ${version} .] 0 1] _]
+    set weird_prefix    /b/729
+    
+    master_sites \
+        http://download.oracle.com/otn/mac/instantclient/
+    
+    distfiles \
+        instantclient-basic-macosx-${version}${extract.suffix} \
+        instantclient-sdk-macosx-${version}${extract.suffix}
+    
+    checksums \
+        instantclient-basic-macosx-${version}${extract.suffix} \
+            md5 5b38ab0565d6189d2069a4abe0bf2ab2 \
+            sha1 2f3aa35e99228fd08b686b19eba84ec34db8277b \
+            rmd160 d1f056f8f1b308c5493f4938b29b55fcb32452cf \
+        instantclient-sdk-macosx-${version}${extract.suffix} \
+            md5 79c7cb3f8afaff076fb20bad75b37cc9 \
+            sha1 486fe1c9a6c5cfc32401e72728ff821a50a22cf9 \
+            rmd160 c819db7f739b8ca468c8059dfbac31a6a6965938
+}
 
-distfiles \
-    instantclient-basic-macosx-${version}${extract.suffix} \
-    instantclient-sdk-macosx-${version}${extract.suffix}
-
-checksums \
-    instantclient-basic-macosx-${version}${extract.suffix} \
-        md5 5b38ab0565d6189d2069a4abe0bf2ab2 \
-        sha1 2f3aa35e99228fd08b686b19eba84ec34db8277b \
-        rmd160 d1f056f8f1b308c5493f4938b29b55fcb32452cf \
-    instantclient-sdk-macosx-${version}${extract.suffix} \
-        md5 79c7cb3f8afaff076fb20bad75b37cc9 \
-        sha1 486fe1c9a6c5cfc32401e72728ff821a50a22cf9 \
-        rmd160 c819db7f739b8ca468c8059dfbac31a6a6965938
-
-pre-fetch {
-    if { [string compare ${os.endian} "big"] != 0 } {
-        return -code error "${name} is only available for PowerPC-based Macs at this time. Oracle says they will release a version for Intel-based Macs in Q1 CY2008."
-    }
+platform i386 {
+    version             10.2.0.4.0
+    worksrcdir          instantclient_[join [lrange [split ${version} .] 0 1] _]
+    set weird_prefix    /scratch/plebld/208
+    
+    master_sites \
+        http://download.oracle.com/otn/mac/instantclient/10204/
+    
+    distfiles \
+        instantclient-basic-macosx-${version}${extract.suffix} \
+        instantclient-sdk-macosx-${version}${extract.suffix}
+    
+    checksums \
+        instantclient-basic-macosx-${version}${extract.suffix} \
+            md5 383826be2873ece610da63b833eff052 \
+            sha1 91e408a580dc5a415e5906ff71c837d6a8b628c9 \
+            rmd160 fdd5d8a7d6034ba852a06ce378e1775f13a1519d \
+        instantclient-sdk-macosx-${version}${extract.suffix} \
+            md5 8aa52afeb9529d953c494e0233eb7c52 \
+            sha1 6f32cda591c61112c6f963698fdc829ab6a59e7f \
+            rmd160 e672eadc6fb0eccbe42cd49663128f011abfe493
 }
 
 use_configure           no
@@ -46,20 +68,24 @@
 set lib_dir ${prefix}/lib/oracle
 
 build {
-    # The pre-built libraries use weird prefixes like /b/729/rdbms and Oracle
-    # recommends setting DYLD_LIBRARY_PATH to deal with this. I find that ill-
-    # advised and would rather fix the paths in the libraries at install time.
+    # The pre-built libraries use weird prefixes and Oracle recommends setting
+    # DYLD_LIBRARY_PATH to deal with this. I would rather fix the paths in the
+    # libraries at install time.
+    # Annoyingly, I can't do that for the Intel version right now because
+    # install_name_tool says "malformed object (unknown load command 8)" (or 7).
     
-    # For each dylib in the distribution, change the directory of its own
-    # "soname" to our ${lib_dir}.
-    foreach lib [glob -directory ${worksrcpath} *.dylib*] {
-        system "install_name_tool -id ${lib_dir}/[strsed ${lib} /^.*\\///] ${lib}"
-        
-        # Then for each dependent dylib with a weird path that this dylib
-        # references, fix the reference to use our ${lib_dir}.
-        foreach dep [exec otool -L ${lib}] {
-            if [string match "/b/729/*" ${dep}] {
-                system "install_name_tool -change ${dep} ${lib_dir}/[strsed ${dep} /^.*\\///] ${lib}"
+    if {![variant_isset i386]} {
+        # For each dylib in the distribution, change the directory of its own
+        # "soname" to our ${lib_dir}.
+        foreach lib [glob -directory ${worksrcpath} *.dylib*] {
+            system "install_name_tool -id ${lib_dir}/[strsed ${lib} /^.*\\///] ${lib}"
+            
+            # Then for each dependent dylib with a weird path that this dylib
+            # references, fix the reference to use our ${lib_dir}.
+            foreach dep [exec otool -L ${lib}] {
+                if [string match "${weird_prefix}/*" ${dep}] {
+                    system "install_name_tool -change ${dep} ${lib_dir}/[strsed ${dep} /^.*\\///] ${lib}"
+                }
             }
         }
     }

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.macosforge.org/pipermail/macports-changes/attachments/20080516/c6ae3059/attachment.htm 


More information about the macports-changes mailing list