Rewritten Javascript autoconfiguration.
This commit is contained in:
parent
29ccb270af
commit
962207e0f3
1 changed files with 198 additions and 3 deletions
201
configure.in
201
configure.in
|
|
@ -1078,17 +1078,212 @@ AC_SUBST(JAVACXXSHARED)
|
|||
AC_SUBST(JAVACFLAGS)
|
||||
|
||||
#----------------------------------------------------------------
|
||||
# Look for JAVASCRIPT [JavaScriptCore Headers and Library]
|
||||
# Look for JAVASCRIPT
|
||||
#----------------------------------------------------------------
|
||||
AC_ARG_WITH(javascript, AS_HELP_STRING([--without-javascript], [Disable JAVASCRIPT]), [with_javascript="$withval"], [with_javascript=yes])
|
||||
AC_ARG_VAR(JSDEFAULT, "The default engine to use ( v8 | jsc ).")
|
||||
|
||||
# First, check for "--without-javascript" or "--with-javascript=no".
|
||||
if test x"${with_javascript}" = xno -o x"${with_alllang}" = xno ; then
|
||||
if test x"${with_javascript}" = xno -o x"${with_alllang}" = xno ; then
|
||||
AC_MSG_NOTICE([Disabling Javascript])
|
||||
JAVASCRIPT=
|
||||
else
|
||||
#----------------------------------------------------------------
|
||||
# General Javascript settings shared by JSC and V8
|
||||
#----------------------------------------------------------------
|
||||
|
||||
case $host in
|
||||
*-*-cygwin* | *-*-mingw*)
|
||||
JSLIBRARYPREFIX=""
|
||||
;;
|
||||
*)
|
||||
JSLIBRARYPREFIX="lib"
|
||||
;;
|
||||
esac
|
||||
|
||||
case $host in
|
||||
*-*-darwin*)
|
||||
JSSO=".dylib"
|
||||
JSLDSHARED='$(CC) -dynamiclib'
|
||||
JSCXXSHARED='$(CXX) -dynamiclib'
|
||||
;;
|
||||
*)
|
||||
JSSO=$SO
|
||||
JSLDSHARED='$(LDSHARED)'
|
||||
JSCXXSHARED='$(CXXSHARED)'
|
||||
;;
|
||||
esac
|
||||
|
||||
#----------------------------------------------------------------
|
||||
# Look for JavascriptCore (Webkit) settings (JSCOREINCDIR, JSCOREDYNAMICLINKING)
|
||||
#----------------------------------------------------------------
|
||||
|
||||
# check for include files
|
||||
AC_MSG_CHECKING(for include file JavaScriptCore/JavaScript.h)
|
||||
AC_ARG_WITH(jscoreinc, [ --with-jscinc=path Set location of Javascript include directory], [JSCOREINCDIR="$withval"], [JSCOREINCDIR=])
|
||||
|
||||
if test -z "$JSCOREINCDIR"; then
|
||||
JSCOREINCDIR="/usr/include/ /usr/local/include/"
|
||||
|
||||
# Add in default directory for JavaScriptCore headers for Linux and MacOSX
|
||||
case $host in
|
||||
*-*-linux*)
|
||||
JSCOREINCDIR="/usr/include/webkit-1.0/ /usr/include/webkitgtk-1.0/ /usr/local/include/webkit-1.0/JavaScriptCore/ $JSCOREINCDIR"
|
||||
;;
|
||||
*-*-darwin*)
|
||||
JSCOREINCDIR="/System/Library/Frameworks/JavaScriptCore.framework/Headers/ $JSCOREINCDIR"
|
||||
;;
|
||||
*)
|
||||
;;
|
||||
esac
|
||||
fi
|
||||
|
||||
for d in $JSCOREINCDIR ; do
|
||||
if test -r "$d/JavaScriptCore/JavaScript.h" || test -r "$d/JavaScript.h" ; then
|
||||
AC_MSG_RESULT($d)
|
||||
JSCOREINCDIR=$d
|
||||
JSCOREINC=-I\"$d\"
|
||||
break
|
||||
fi
|
||||
done
|
||||
|
||||
if test "$JSCOREINC" = "" ; then
|
||||
AC_MSG_RESULT(not found)
|
||||
fi
|
||||
|
||||
# check for JavaScriptCore/Webkit libraries
|
||||
AC_ARG_WITH(jscorelib,[ --with-jsclib =path Set location of the JavaScriptCore/Webkit library directory],[JSCORELIB="-L$withval"], [JSCORELIB=])
|
||||
AC_MSG_CHECKING(for JavaScriptCore/Webkit library)
|
||||
|
||||
# look for the library when not provided
|
||||
if test -z "$JSCORELIB"; then
|
||||
case $host in
|
||||
*-*-linux*)
|
||||
dirs="/usr/lib/ /usr/local/lib/"
|
||||
for i in $dirs ; do
|
||||
if test -r $i/libwebkit-1.0.la; then
|
||||
AC_MSG_RESULT($i)
|
||||
JSCORELIB="-L$i -lwebkit-1.0"
|
||||
break
|
||||
fi
|
||||
|
||||
if test -r $i/libjavascriptcoregtk-1.0.so; then
|
||||
AC_MSG_RESULT($i)
|
||||
JSCORELIB="-L$i -ljavascriptcoregtk-1.0"
|
||||
break
|
||||
fi
|
||||
|
||||
if test -r $i/libwebkitgtk-1.0.so; then
|
||||
AC_MSG_RESULT($i)
|
||||
JSCORELIB="-L$i -lwebkitgtk-1.0"
|
||||
break
|
||||
fi
|
||||
done
|
||||
|
||||
if test -z "$JSCORELIB"; then
|
||||
AC_MSG_RESULT(not found)
|
||||
JSCENABLED=0
|
||||
else
|
||||
JSCOREDYNAMICLINKING="$JSCORELIB"
|
||||
JSCENABLED=1
|
||||
fi
|
||||
;;
|
||||
*-*-darwin*)
|
||||
JSCOREDYNAMICLINKING="-framework JavaScriptCore"
|
||||
;;
|
||||
*)
|
||||
;;
|
||||
esac
|
||||
fi
|
||||
|
||||
#----------------------------------------------------------------
|
||||
# Look for V8 settings (JSV8INCDIR, JSV8DYNAMICLINKING)
|
||||
#----------------------------------------------------------------
|
||||
|
||||
# check for include files
|
||||
AC_MSG_CHECKING(for include file v8.h)
|
||||
AC_ARG_WITH(jsv8inc, [ --with-v8inc=path Set location of Javascript include directory], [JSV8INCDIR="$withval"])
|
||||
|
||||
# if not include dir is specified we try to find
|
||||
if test -z "$JSV8INCDIR"; then
|
||||
# Add in default directory for JavaScriptCore headers for Linux and MacOSX
|
||||
case $host in
|
||||
*-*-linux*)
|
||||
JSV8INCDIR="/usr/include /usr/local/include/ $JSV8INCDIR"
|
||||
;;
|
||||
*-*-darwin*)
|
||||
JSV8INCDIR="$JSV8INCDIR"
|
||||
;;
|
||||
*)
|
||||
;;
|
||||
esac
|
||||
fi
|
||||
|
||||
for d in $JSV8INCDIR ; do
|
||||
if test -r "$d/v8.h" ; then
|
||||
JSV8INCDIR=$d
|
||||
JSV8INC=-I\"$d\"
|
||||
break
|
||||
fi
|
||||
done
|
||||
|
||||
if test "$JSV8INC" = "" ; then
|
||||
AC_MSG_RESULT(not found)
|
||||
else
|
||||
AC_MSG_RESULT($JSV8INCDIR)
|
||||
fi
|
||||
|
||||
# check for V8 library
|
||||
AC_MSG_CHECKING(for v8 library)
|
||||
AC_ARG_WITH(jsv8lib,[ --with-v8lib=path Set location of V8 library directory],[JSV8LIBDIR="$withval"], [JSV8LIB=])
|
||||
|
||||
v8libdirs="$JSV8LIBDIR /usr/lib/ /usr/local/lib/"
|
||||
for d in $v8libdirs ; do
|
||||
if test -r $d/libv8.so; then
|
||||
JSV8LIBDIR=$d
|
||||
JSV8LIB="-L$d -lv8"
|
||||
break
|
||||
fi
|
||||
done
|
||||
|
||||
if test "$JSV8LIB" = "" ; then
|
||||
AC_MSG_RESULT(not found)
|
||||
JSV8ENABLED=0
|
||||
else
|
||||
AC_MSG_RESULT($JSV8LIBDIR)
|
||||
JSV8ENABLED=1
|
||||
fi
|
||||
|
||||
|
||||
# linking options
|
||||
case $host in
|
||||
*-*-darwin*)
|
||||
JSV8DYNAMICLINKING="" # TODO: add osx configuration
|
||||
;;
|
||||
*-*-linux*)
|
||||
JSV8DYNAMICLINKING="$JSV8LIB"
|
||||
;;
|
||||
*)
|
||||
JSV8DYNAMICLINKING=""
|
||||
;;
|
||||
esac
|
||||
|
||||
fi
|
||||
|
||||
AC_SUBST(JSCFLAGS)
|
||||
AC_SUBST(JSCXXFLAGS)
|
||||
AC_SUBST(JSLIBRARYPREFIX)
|
||||
AC_SUBST(JSSO)
|
||||
AC_SUBST(JSLDSHARED)
|
||||
AC_SUBST(JSCXXSHARED)
|
||||
|
||||
AC_SUBST(JSCOREINC)
|
||||
AC_SUBST(JSCOREDYNAMICLINKING)
|
||||
AC_SUBST(JSV8INC)
|
||||
AC_SUBST(JSV8DYNAMICLINKING)
|
||||
|
||||
AC_SUBST(JSCENABLED)
|
||||
AC_SUBST(JSV8ENABLED)
|
||||
|
||||
#----------------------------------------------------------------
|
||||
# Look for gcj
|
||||
#----------------------------------------------------------------
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue