The attaching octave-3.8.2-102.info Info file with the following changes compare to octave-3.8.2-12.info builds on 10.13 with only the Oracle JDK 1.8 installed.
--- octave-3.8.2.info 2017-09-18 06:37:27.000000000 -0400 +++ octave-3.8.2-102.info 2017-09-22 23:15:34.000000000 -0400 @@ -1,9 +1,9 @@ Info2: << Package: octave%type_pkg[-blas]%type_pkg[-x11]%type_pkg[-qtui] -Type: -blas (. -atlas -ref), oct (3.8.2), gcc (5), -x11 (boolean), lapack (3.5.0), java (1.6), -qtui (. -qtmac -qtx11) +Type: -blas (. -atlas -ref), oct (3.8.2), gcc (5), -x11 (boolean), lapack (3.5.0), -qtui (. -qtmac -qtx11) Version: 3.8.2 -Revision: 12 -Distribution: ( %type_raw[-x11] = -x11 ) 10.9, ( %type_raw[-x11] = -x11 ) 10.10, 10.9, 10.10, 10.11, 10.12 +Revision: 102 +Distribution: 10.13 Description: MATLAB-like language for computations Maintainer: None <fink-devel@lists.sourceforge.net> @@ -30,7 +30,7 @@ readline6, sed, suitesparse (>= 4.0.2-2), - system-java16-dev, + system-java-dev, texinfo, fink (>= 0.36.4-1), fink-buildenv-modules (>= 0.1.3-1), @@ -171,6 +171,8 @@ perl -pi -e 's/HAVE_X_WINDOWS/HAVE_X_BINDOWS/g' libinterp/dldfcn/__init_fltk__.cc fi + # No Apple Java on 10.13 + perl -pi -e 's|-framework JavaVM||g' configure << GCC: 4.0 @@ -224,10 +226,10 @@ # allow configure to find OpenGL libraries in X11 if [ "%type_raw[-x11]" = "-x11" ] ; then export LDFLAGS="-L%p/lib -L$X11_BASE_DIR/lib -Wl,-dead_strip_dylibs" - export CPPFLAGS="-I%p/include -I%p/include/freetype2 -I$X11_BASE_DIR/include" + export CPPFLAGS="-I%p/include -I%p/include/freetype2 -I$X11_BASE_DIR/include -I`/usr/libexec/java_home`/include/darwin" else export LDFLAGS="-L%p/lib -Wl,-dead_strip_dylibs" - export CPPFLAGS="-I%p/include -I%p/include/freetype2" + export CPPFLAGS="-I%p/include -I%p/include/freetype2 -I`/usr/libexec/java_home`/include/darwin" fi export CPP="clang -E" export CXXCPP="clang++ -E" @@ -250,7 +252,7 @@ autoreconf -fi - ./configure %c "ac_cv_func_mkostemp=no" + ./configure %c --with-java-homedir=`/usr/libexec/java_home` --with-java-includedir=`/usr/libexec/java_home`/include --with-java-libdir=`/usr/libexec/java_home`/jre/lib/server "ac_cv_func_mkostemp=no" # don't just use top-level Makefile so that we can do a multi-core build. pushd libgnu /usr/bin/make -j1 @@ -783,7 +785,7 @@ (%type_raw[-blas] = -ref) qrupdate-ref-shlibs (>= 1.1.2-7), readline6-shlibs, suitesparse-shlibs (>= 4.0.2-2), - system-java16 + system-java << RuntimeDepends: << epstool,
Tested with 'fink -m' on 10.13 and using it to build through to mvapack-oct382.
Info file for octave_3.8.2-102 variant for 10.13
Note that I had always suspected that Apple would have to fullty deprecate Apple Java from macOS for the build of octave against the Oracle Java to work.
Nope. I'm done with Octave-3.8.2, as you would have seen from "fink info octave-3.8.2". I will not accept any assignments for packages that I've given up for adoption by others.
Yeah, we know, and you tried something like this before. Recall that one of the huge problems with Octave-3.8.2 is that it links to libjvm.dylib, which is in a different location for every Java minor update because Oracle didn't see fit to do a framework-like setup. Has something changed for High Sierra?
Last edit: Alexander Hansen 2017-09-23
Check
otool -L /sw/lib/octave/3.8.2/liboctinterp.2.dylib
.Interim packaging (Revision: 101) which disables java is now in the distribution.
Last edit: Alexander Hansen 2017-09-30
With fink-0.42.0 out, there's now a java9 family of virtual packages. Assuming that Oracle isn't going to go back to having minor-versioned directories, that could be a dependency option which gives a deterministic build.