Anybody happen to know what the best way to handle builds against 
Oracle's JDKs?  They don't use a framework, there's not an unversioned 
link anywhere so using hardcoded paths is fragile, and the preferred 
method of @rpath is problematic because of those hardcoded paths--in 
particular I'm thinking about libjvm.dylib, which typically has the 
following:

$ otool -L 
/Library/Java/JavaVirtualMachines/jdk1.7.0_55.jdk/Contents/Home/jre/lib/server/libjvm.dylib
 

/Library/Java/JavaVirtualMachines/jdk1.7.0_55.jdk/Contents/Home/jre/lib/server/libjvm.dylib:
        @rpath/libjvm.dylib (compatibility version 1.0.0, current version 1.0.0)
        /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current 
version 159.1.0)
        /usr/lib/libstdc++.6.dylib (compatibility version 7.0.0, current 
version 52.0.0)

If newer Java versions (at least minor version changes, anyway) are 
supposed to be back-compatible, then I'd think that we'd want packages 
to be able to switch to a newer version freely.

Options which have been suggested or have occurred to me are:

1) Have a policy that we only support Apple's Java framework.  This is 
probably not ideal.

2) Use install_name_tool on libraries to use the unversioned library 
from the Oracle JRE, which is is installed in /Library/Internet 
Plug-Ins/JavaAppletPlugin.plugin/Contents/Home/ .  However, this is a 
separate install from the JDK, and we don't track it in the virtual 
package system.

3) Use wrapper scripts for executables which the lookup path to the 
latest Java via the output from "/usr/libexec/java_home", e.g. via 
LD_LIBRARY_PATH or DYLD_LIBRARY_FALLBACK_PATH.

4) Have a fink "system" package which sets up links in %p/lib to the 
various Java libraries in whatever the latest installed Java is. 
Ideally, it'd be nice to have the option to set up a schedule for such a 
package to check whether a newer JDK has been installed and then update 
the links.

5+) ?
-- 
Alexander Hansen, Ph.D.
Fink User Liaison
My package updates: http://finkakh.wordpress.com/

------------------------------------------------------------------------------
"Accelerate Dev Cycles with Automated Cross-Browser Testing - For FREE
Instantly run your Selenium tests across 300+ browser/OS combos.
Get unparalleled scalability from the best Selenium testing platform available
Simple to use. Nothing to install. Get started now for free."
http://p.sf.net/sfu/SauceLabs
_______________________________________________
Fink-devel mailing list
Fink-devel@lists.sourceforge.net
List archive:
http://news.gmane.org/gmane.os.apple.fink.devel
Subscription management:
https://lists.sourceforge.net/lists/listinfo/fink-devel

Reply via email to