summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKeith Packard <keithp@keithp.com>2019-07-17 11:40:06 -0700
committerKeith Packard <keithp@keithp.com>2019-07-17 11:40:06 -0700
commit318b81d59e6f34a92a7a78c0896aa331bc14d0a1 (patch)
tree2c54089f748c55c15b891c79e6e1901d0f18f630
parent784ccd37d051e8b88ef1b150ccb4e89103675b3e (diff)
Use discovered java path for compiler and jni include files
Instead of using the discovered java bits just for jni.h, also use javac from that directory. Add JAVA_VERSION param to set language version for newer compilers. Signed-off-by: Keith Packard <keithp@keithp.com>
-rw-r--r--altoslib/Makefile.am2
-rw-r--r--altosui/Makefile.am2
-rw-r--r--altosuilib/Makefile.am2
-rw-r--r--configure.ac38
-rw-r--r--libaltos/Makefile.am3
-rw-r--r--map-server/altos-mapd/Makefile.am2
-rw-r--r--map-server/altos-mapj/Makefile.am2
-rw-r--r--micropeak/Makefile.am2
-rw-r--r--telegps/Makefile.am2
9 files changed, 34 insertions, 21 deletions
diff --git a/altoslib/Makefile.am b/altoslib/Makefile.am
index 82ad2eab..d16a79d5 100644
--- a/altoslib/Makefile.am
+++ b/altoslib/Makefile.am
@@ -1,4 +1,4 @@
-AM_JAVACFLAGS=-target 1.6 -encoding UTF-8 -Xlint:deprecation -Xlint:unchecked -source 6
+AM_JAVACFLAGS=$(JAVAC_VERSION_FLAGS) -encoding UTF-8 -Xlint:deprecation -Xlint:unchecked
JAVAROOT=bin
diff --git a/altosui/Makefile.am b/altosui/Makefile.am
index b5fdf0f0..1413de58 100644
--- a/altosui/Makefile.am
+++ b/altosui/Makefile.am
@@ -1,6 +1,6 @@
JAVAROOT=classes
-AM_JAVACFLAGS=-target 1.6 -encoding UTF-8 -Xlint:deprecation -Xlint:unchecked -source 6
+AM_JAVACFLAGS=$(JAVAC_VERSION_FLAGS) -encoding UTF-8 -Xlint:deprecation -Xlint:unchecked
man_MANS=altosui.1
diff --git a/altosuilib/Makefile.am b/altosuilib/Makefile.am
index 3b2e49d4..10a5b494 100644
--- a/altosuilib/Makefile.am
+++ b/altosuilib/Makefile.am
@@ -1,4 +1,4 @@
-AM_JAVACFLAGS=-target 1.6 -encoding UTF-8 -Xlint:deprecation -Xlint:unchecked -source 6
+AM_JAVACFLAGS=$(JAVAC_VERSION_FLAGS) -encoding UTF-8 -Xlint:deprecation -Xlint:unchecked
JAVAROOT=bin
diff --git a/configure.ac b/configure.ac
index 0e4b204c..cc6a23d4 100644
--- a/configure.ac
+++ b/configure.ac
@@ -64,27 +64,41 @@ AC_ARG_WITH(jcommon, AS_HELP_STRING([--with-jcommon=PATH],
AC_SUBST(JCOMMON)
-AC_ARG_WITH(jvm, AS_HELP_STRING([--with-jvm-include=PATH],
- [Set jvm include path for jni builds (default searches in /usr/lib/jvm)]),
- [JVM_INCLUDE=$withval], [JVM_INCLUDE=auto])
-
-if test "x$JVM_INCLUDE" = "xauto"; then
- AC_MSG_CHECKING([JVM include files])
- for jvm in default-java java-6-openjdk java-6-sun; do
- if test "x$JVM_INCLUDE" = "xauto"; then
+AC_ARG_WITH(jvm, AS_HELP_STRING([--with-jvm=PATH],
+ [Set jvm path for java builds (default searches in /usr/lib/jvm)]),
+ [JVM=$withval], [JVM=auto])
+
+if test "x$JVM" = "xauto"; then
+ AC_MSG_CHECKING([JVM])
+ for jvm in default-java java-6-openjdk java-7-openjdk java-8-openjdk java-9-openjdk java-10-openjdk java-11-openjdk java-12-openjdk java-13-openjdk java-6-sun; do
+ if test "x$JVM" = "xauto"; then
INCLUDE="/usr/lib/jvm/$jvm/include"
if test -f "$INCLUDE"/jni.h; then
- JVM_INCLUDE="$INCLUDE"
+ JVM=/usr/lib/jvm/"$jvm"
fi
fi
done
- if test "x$JVM_INCLUDE" = "xauto"; then
- AC_MSG_ERROR([no JVM include files found])
+ if test "x$JVM" = "xauto"; then
+ AC_MSG_ERROR([no JVM files found])
fi
- AC_MSG_RESULT([$JVM_INCLUDE])
+ AC_MSG_RESULT([$JVM])
fi
+AC_ARG_WITH(java-version, AS_HELP_STRING([--with-java-version=7],
+ [Set java language compatibility version (default is 7)]),
+ [JAVA_VERSION=$withval], [JAVA_VERSION=7])
+
+JAVAC="$JVM"/bin/javac
+JAVA="$JVM"/bin/java
+JVM_INCLUDE="$JVM"/include
+JAVAC_VERSION_FLAGS="-target 1.$JAVA_VERSION -source 1.$JAVA_VERSION"
+
+AC_SUBST(JAVAC)
+AC_SUBST(JAVA)
+AC_SUBST(JVM)
AC_SUBST(JVM_INCLUDE)
+AC_SUBST(JAVAC_VERSION_FLAGS)
+
AC_ARG_WITH(android, AS_HELP_STRING([--with-android=PATH],
[Set android SDK path (default searches in a variety of places)]),
diff --git a/libaltos/Makefile.am b/libaltos/Makefile.am
index 69fe7a57..eb5eb677 100644
--- a/libaltos/Makefile.am
+++ b/libaltos/Makefile.am
@@ -1,6 +1,5 @@
-JAVAC=javac
AM_CFLAGS=-DLINUX -DPOSIX_TTY -I$(JVM_INCLUDE) -I$(JVM_INCLUDE)/linux
-AM_JAVACFLAGS=-target 1.6 -encoding UTF-8 -Xlint:deprecation -source 6
+AM_JAVACFLAGS=$(JAVAC_VERSION_FLAGS) -encoding UTF-8 -Xlint:deprecation -Xlint:unchecked
altoslibdir=$(libdir)/altos
diff --git a/map-server/altos-mapd/Makefile.am b/map-server/altos-mapd/Makefile.am
index 315a33d5..bb20dd84 100644
--- a/map-server/altos-mapd/Makefile.am
+++ b/map-server/altos-mapd/Makefile.am
@@ -1,5 +1,5 @@
JAVAROOT=classes
-AM_JAVACFLAGS=-target 1.6 -encoding UTF-8 -Xlint:deprecation -Xlint:unchecked -source 6
+AM_JAVACFLAGS=$(JAVAC_VERSION_FLAGS) -encoding UTF-8 -Xlint:deprecation -Xlint:unchecked
altoslibdir=$(libdir)/altos
diff --git a/map-server/altos-mapj/Makefile.am b/map-server/altos-mapj/Makefile.am
index 98d4f170..a8dfffec 100644
--- a/map-server/altos-mapj/Makefile.am
+++ b/map-server/altos-mapj/Makefile.am
@@ -1,5 +1,5 @@
JAVAROOT=classes
-AM_JAVACFLAGS=-target 1.6 -encoding UTF-8 -Xlint:deprecation -Xlint:unchecked -source 6
+AM_JAVACFLAGS=$(JAVAC_VERSION_FLAGS) -encoding UTF-8 -Xlint:deprecation -Xlint:unchecked
altoslibdir=$(libdir)/altos
diff --git a/micropeak/Makefile.am b/micropeak/Makefile.am
index 7e9b490d..23ec077e 100644
--- a/micropeak/Makefile.am
+++ b/micropeak/Makefile.am
@@ -1,5 +1,5 @@
JAVAROOT=classes
-AM_JAVACFLAGS=-target 1.6 -encoding UTF-8 -Xlint:deprecation -Xlint:unchecked -source 6
+AM_JAVACFLAGS=$(JAVAC_VERSION_FLAGS) -encoding UTF-8 -Xlint:deprecation -Xlint:unchecked
man_MANS=micropeak.1
diff --git a/telegps/Makefile.am b/telegps/Makefile.am
index ae1e83e9..0e75abf1 100644
--- a/telegps/Makefile.am
+++ b/telegps/Makefile.am
@@ -1,5 +1,5 @@
JAVAROOT=classes
-AM_JAVACFLAGS=-target 1.6 -encoding UTF-8 -Xlint:deprecation -Xlint:unchecked -source 6
+AM_JAVACFLAGS=$(JAVAC_VERSION_FLAGS) -encoding UTF-8 -Xlint:deprecation -Xlint:unchecked
man_MANS=telegps.1