summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ext/java/Makefile.frag2
-rw-r--r--ext/java/config.m422
-rw-r--r--ext/rpc/java/Makefile.frag2
-rw-r--r--ext/rpc/java/config.m422
4 files changed, 36 insertions, 12 deletions
diff --git a/ext/java/Makefile.frag b/ext/java/Makefile.frag
index 1813ec86cd..ff2a79a27f 100644
--- a/ext/java/Makefile.frag
+++ b/ext/java/Makefile.frag
@@ -5,7 +5,7 @@ $(srcdir)/php_java.jar : $(srcdir)/reflect.java
$(mkinstalldirs) $(srcdir)/net/php
@cp $(srcdir)/reflect.java $(srcdir)/net/php
@echo library=php_java > $(srcdir)/net/php/reflect.properties
- javac $(srcdir)/net/php/reflect.java
+ $(JAVA_C) $(srcdir)/net/php/reflect.java
@test ! -f reflect.class || mv reflect.class $(srcdir)/net/php # bug in KJC javac
$(JAVA_JAR) $(srcdir)/php_java.jar $(srcdir)/net/php/*.class $(srcdir)/net/php/*.properties
@rm $(srcdir)/net/php/reflect.*
diff --git a/ext/java/config.m4 b/ext/java/config.m4
index 604959f7e0..bb258e8ebb 100644
--- a/ext/java/config.m4
+++ b/ext/java/config.m4
@@ -15,15 +15,26 @@ if test "$PHP_JAVA" != "no"; then
HP-UX) java_libext=libjava.sl ;;
esac
- # substitute zip for systems which don't have jar in the PATH
- if JAVA_JAR=`which jar 2>/dev/null`; then
- JAVA_JAR="$JAVA_JAR cf"
+ if test "$withval" = "yes"; then
+ if JAVA_JAR=`which jar 2>/dev/null`; then
+ JAVA_JAR="$JAVA_JAR cf"
+ else
+ JAVA_JAR=
+ fi
+ withval=`cd \`dirname \\\`which javac\\\`\`/..;pwd`
else
+ test -x $withval/bin/jar && JAVA_JAR="$withval/bin/jar cf"
+ fi
+
+ # substitute zip for systems which don't have jar
+ if test -z "$JAVA_JAR"; then
JAVA_JAR='zip -q0'
fi
- if test "$PHP_JAVA" = "yes"; then
- PHP_JAVA=`cd \`dirname \\\`which javac\\\`\`/..;pwd`
+ if test -x $withval/bin/javac; then
+ JAVA_C=$withval/bin/javac
+ else
+ AC_MSG_ERROR([Can not find the javac binary under $withval/bin/])
fi
if test -d $PHP_JAVA/lib/kaffe; then
@@ -109,6 +120,7 @@ if test "$PHP_JAVA" != "no"; then
PHP_SUBST(JAVA_CLASSPATH)
PHP_SUBST(JAVA_JAR)
+ PHP_SUBST(JAVA_C)
PHP_ADD_MAKEFILE_FRAGMENT
fi
diff --git a/ext/rpc/java/Makefile.frag b/ext/rpc/java/Makefile.frag
index 1813ec86cd..ff2a79a27f 100644
--- a/ext/rpc/java/Makefile.frag
+++ b/ext/rpc/java/Makefile.frag
@@ -5,7 +5,7 @@ $(srcdir)/php_java.jar : $(srcdir)/reflect.java
$(mkinstalldirs) $(srcdir)/net/php
@cp $(srcdir)/reflect.java $(srcdir)/net/php
@echo library=php_java > $(srcdir)/net/php/reflect.properties
- javac $(srcdir)/net/php/reflect.java
+ $(JAVA_C) $(srcdir)/net/php/reflect.java
@test ! -f reflect.class || mv reflect.class $(srcdir)/net/php # bug in KJC javac
$(JAVA_JAR) $(srcdir)/php_java.jar $(srcdir)/net/php/*.class $(srcdir)/net/php/*.properties
@rm $(srcdir)/net/php/reflect.*
diff --git a/ext/rpc/java/config.m4 b/ext/rpc/java/config.m4
index 604959f7e0..bb258e8ebb 100644
--- a/ext/rpc/java/config.m4
+++ b/ext/rpc/java/config.m4
@@ -15,15 +15,26 @@ if test "$PHP_JAVA" != "no"; then
HP-UX) java_libext=libjava.sl ;;
esac
- # substitute zip for systems which don't have jar in the PATH
- if JAVA_JAR=`which jar 2>/dev/null`; then
- JAVA_JAR="$JAVA_JAR cf"
+ if test "$withval" = "yes"; then
+ if JAVA_JAR=`which jar 2>/dev/null`; then
+ JAVA_JAR="$JAVA_JAR cf"
+ else
+ JAVA_JAR=
+ fi
+ withval=`cd \`dirname \\\`which javac\\\`\`/..;pwd`
else
+ test -x $withval/bin/jar && JAVA_JAR="$withval/bin/jar cf"
+ fi
+
+ # substitute zip for systems which don't have jar
+ if test -z "$JAVA_JAR"; then
JAVA_JAR='zip -q0'
fi
- if test "$PHP_JAVA" = "yes"; then
- PHP_JAVA=`cd \`dirname \\\`which javac\\\`\`/..;pwd`
+ if test -x $withval/bin/javac; then
+ JAVA_C=$withval/bin/javac
+ else
+ AC_MSG_ERROR([Can not find the javac binary under $withval/bin/])
fi
if test -d $PHP_JAVA/lib/kaffe; then
@@ -109,6 +120,7 @@ if test "$PHP_JAVA" != "no"; then
PHP_SUBST(JAVA_CLASSPATH)
PHP_SUBST(JAVA_JAR)
+ PHP_SUBST(JAVA_C)
PHP_ADD_MAKEFILE_FRAGMENT
fi