[build] Update ax_jni_include_dir.m4 macro to deal with recent versions of macOS
This commit is contained in:
		
							parent
							
								
									84973d393a
								
							
						
					
					
						commit
						5b22977922
					
				| @ -1,5 +1,5 @@ | ||||
| # =========================================================================== | ||||
| #    http://www.gnu.org/software/autoconf-archive/ax_jni_include_dir.html | ||||
| #    https://www.gnu.org/software/autoconf-archive/ax_jni_include_dir.html | ||||
| # =========================================================================== | ||||
| # | ||||
| # SYNOPSIS | ||||
| @ -44,7 +44,7 @@ | ||||
| #   and this notice are preserved. This file is offered as-is, without any | ||||
| #   warranty. | ||||
| 
 | ||||
| #serial 10 | ||||
| #serial 14 | ||||
| 
 | ||||
| AU_ALIAS([AC_JNI_INCLUDE_DIR], [AX_JNI_INCLUDE_DIR]) | ||||
| AC_DEFUN([AX_JNI_INCLUDE_DIR],[ | ||||
| @ -59,16 +59,24 @@ else | ||||
| 	fi | ||||
| 	AC_PATH_PROG([_ACJNI_JAVAC], [$JAVAC], [no]) | ||||
| 	if test "x$_ACJNI_JAVAC" = xno; then | ||||
| 		AC_MSG_WARN([cannot find JDK; try setting \$JAVAC or \$JAVA_HOME]) | ||||
| 		AC_MSG_ERROR([cannot find JDK; try setting \$JAVAC or \$JAVA_HOME]) | ||||
| 	fi | ||||
| 	_ACJNI_FOLLOW_SYMLINKS("$_ACJNI_JAVAC") | ||||
| 	_JTOPDIR=`echo "$_ACJNI_FOLLOWED" | sed -e 's://*:/:g' -e 's:/[[^/]]*$::'` | ||||
| fi | ||||
| 
 | ||||
| case "$host_os" in | ||||
|         darwin*)        _JTOPDIR=`echo "$_JTOPDIR" | sed -e 's:/[[^/]]*$::'` | ||||
|                         _JINC="$_JTOPDIR/Headers";; | ||||
|         *)              _JINC="$_JTOPDIR/include";; | ||||
|         darwin*)        # Apple Java headers are inside the Xcode bundle. | ||||
|             macos_version=$(sw_vers -productVersion | sed -n -e 's/^@<:@0-9@:>@*.\(@<:@0-9@:>@*\).@<:@0-9@:>@*/\1/p') | ||||
|             if @<:@ "$macos_version" -gt "7" @:>@; then | ||||
|                 _JTOPDIR="$(xcrun --show-sdk-path)/System/Library/Frameworks/JavaVM.framework" | ||||
|                 _JINC="$_JTOPDIR/Headers" | ||||
|             else | ||||
|                 _JTOPDIR="/System/Library/Frameworks/JavaVM.framework" | ||||
|                 _JINC="$_JTOPDIR/Headers" | ||||
|             fi | ||||
|             ;; | ||||
|         *) _JINC="$_JTOPDIR/include";; | ||||
| esac | ||||
| _AS_ECHO_LOG([_JTOPDIR=$_JTOPDIR]) | ||||
| _AS_ECHO_LOG([_JINC=$_JINC]) | ||||
| @ -76,30 +84,27 @@ _AS_ECHO_LOG([_JINC=$_JINC]) | ||||
| # On Mac OS X 10.6.4, jni.h is a symlink: | ||||
| # /System/Library/Frameworks/JavaVM.framework/Versions/Current/Headers/jni.h | ||||
| # -> ../../CurrentJDK/Headers/jni.h. | ||||
| 
 | ||||
| AC_CACHE_CHECK(jni headers, ac_cv_jni_header_path, | ||||
| [ | ||||
| if test -f "$_JINC/jni.h"; then | ||||
|   ac_cv_jni_header_path="$_JINC" | ||||
|   JNI_INCLUDE_DIRS="$JNI_INCLUDE_DIRS $ac_cv_jni_header_path" | ||||
| else | ||||
|   _JTOPDIR=`echo "$_JTOPDIR" | sed -e 's:/[[^/]]*$::'` | ||||
|   if test -f "$_JTOPDIR/include/jni.h"; then | ||||
|     ac_cv_jni_header_path="$_JTOPDIR/include" | ||||
|   if test -f "$_JINC/jni.h"; then | ||||
|     ac_cv_jni_header_path="$_JINC" | ||||
|     JNI_INCLUDE_DIRS="$JNI_INCLUDE_DIRS $ac_cv_jni_header_path" | ||||
|   else | ||||
|     ac_cv_jni_header_path=none | ||||
|     _JTOPDIR=`echo "$_JTOPDIR" | sed -e 's:/[[^/]]*$::'` | ||||
|     if test -f "$_JTOPDIR/include/jni.h"; then | ||||
|       ac_cv_jni_header_path="$_JTOPDIR/include" | ||||
|       JNI_INCLUDE_DIRS="$JNI_INCLUDE_DIRS $ac_cv_jni_header_path" | ||||
|     else | ||||
|       ac_cv_jni_header_path=none | ||||
|     fi | ||||
|   fi | ||||
| fi | ||||
| ]) | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
| # get the likely subdirectories for system specific java includes | ||||
| case "$host_os" in | ||||
| bsdi*)          _JNI_INC_SUBDIRS="bsdos";; | ||||
| darwin*)        _JNI_INC_SUBDIRS="darwin";; | ||||
| freebsd*)       _JNI_INC_SUBDIRS="freebsd";; | ||||
| darwin*)        _JNI_INC_SUBDIRS="darwin";; | ||||
| linux*)         _JNI_INC_SUBDIRS="linux genunix";; | ||||
| osf*)           _JNI_INC_SUBDIRS="alpha";; | ||||
| solaris*)       _JNI_INC_SUBDIRS="solaris";; | ||||
| @ -112,9 +117,9 @@ if test "x$ac_cv_jni_header_path" != "xnone"; then | ||||
|   # add any subdirectories that are present | ||||
|   for JINCSUBDIR in $_JNI_INC_SUBDIRS | ||||
|   do | ||||
|       if test -d "$_JTOPDIR/include/$JINCSUBDIR"; then | ||||
|            JNI_INCLUDE_DIRS="$JNI_INCLUDE_DIRS $_JTOPDIR/include/$JINCSUBDIR" | ||||
|       fi | ||||
|     if test -d "$_JTOPDIR/include/$JINCSUBDIR"; then | ||||
|          JNI_INCLUDE_DIRS="$JNI_INCLUDE_DIRS $_JTOPDIR/include/$JINCSUBDIR" | ||||
|     fi | ||||
|   done | ||||
| fi | ||||
| ]) | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user