diff options
author | Paul Joseph Davis <davisp@apache.org> | 2012-01-21 16:08:58 -0600 |
---|---|---|
committer | Paul Joseph Davis <davisp@apache.org> | 2012-01-21 16:08:58 -0600 |
commit | 10047e75935818e0421bdd9ac96dc21334f90e95 (patch) | |
tree | bb85ee01e272ecda597d39655c566b00036fd942 | |
parent | da33e344705cda3f205e278cfb278513e7a7c03d (diff) | |
download | couchdb-10047e75935818e0421bdd9ac96dc21334f90e95.tar.gz |
Fix SpiderMonkey version detection
Randall's last patch to only test for JSOPTION_ANONFUNFIX ended up
reordering the test before the headers were located. This ran into
errors in version detection. This patch reorders the header location as
well as adds a few more default search paths when no --with-js-include
option is specified to account for newer SpiderMonkeys that puth their
headers into $PREFIX/include/js.
-rw-r--r-- | configure.ac | 41 |
1 files changed, 22 insertions, 19 deletions
diff --git a/configure.ac b/configure.ac index c6d564ae2..adfd7405c 100644 --- a/configure.ac +++ b/configure.ac @@ -177,8 +177,11 @@ AS_CASE([$(uname -s)], [CYGWIN*], [] , [*], [ CPPFLAGS="$CPPFLAGS -I/opt/local/include" + CPPFLAGS="$CPPFLAGS -I/opt/local/include/js" CPPFLAGS="$CPPFLAGS -I/usr/local/include" + CPPFLAGS="$CPPFLAGS -I/usr/local/include/js" CPPFLAGS="$CPPFLAGS -I/usr/include" + CPPFLAGS="$CPPFLAGS -I/usr/include/js" LDFLAGS="$LDFLAGS -L/opt/local/lib" LDFLAGS="$LDFLAGS -L/usr/local/lib" ]) @@ -203,6 +206,17 @@ AS_CASE([$(uname -s)], AM_CONDITIONAL([WINDOWS], [test x$IS_WINDOWS = xTRUE]) +AC_CHECK_HEADER([jsapi.h], [], [ + AC_CHECK_HEADER([js/jsapi.h], + [ + CPPFLAGS="$CPPFLAGS -I$JS_INCLUDE/js" + ], + [ + AC_MSG_ERROR([Could not find the jsapi header. + +Are the Mozilla SpiderMonkey headers installed?]) + ])]) + OLD_LIBS="$LIBS" LIBS="$JS_LIBS $LIBS" OLD_CPPFLAGS="$CPPFLAGS" @@ -247,6 +261,14 @@ AC_CHECK_LIB([$JS_LIB_BASE], [JS_GetStringCharsAndLength], # Else, hope that 1.7.0 works +# Deal with JSScript -> JSObject -> JSScript switcheroo + +AC_CHECK_TYPE([JSScript*], + [AC_DEFINE([JSSCRIPT_TYPE], [JSScript*], [Use JSObject* for scripts])], + [AC_DEFINE([JSSCRIPT_TYPE], [JSObject*], [Use JSScript* for scripts])], + [[#include <jsapi.h>]] +) + AC_DEFINE([COUCHJS_NAME], ["couchjs"], ["CouchJS executable name."]) if test x${IS_WINDOWS} = xTRUE; then @@ -298,25 +320,6 @@ fi JS_LIBS="-l$JS_LIB_BASE -lm $JS_LIBS" AC_SUBST(JS_LIBS) -AC_CHECK_HEADER([jsapi.h], [], [ - AC_CHECK_HEADER([js/jsapi.h], - [ - CPPFLAGS="$CPPFLAGS -I$JS_INCLUDE/js" - ], - [ - AC_MSG_ERROR([Could not find the jsapi header. - -Are the Mozilla SpiderMonkey headers installed?]) - ])]) - -# Deal with JSScript -> JSObject -> JSScript switcheroo - -AC_CHECK_TYPE([JSScript*], - [AC_DEFINE([JSSCRIPT_TYPE], [JSScript*], [Use JSObject* for scripts])], - [AC_DEFINE([JSSCRIPT_TYPE], [JSObject*], [Use JSScript* for scripts])], - [[#include <jsapi.h>]] -) - LIBS="$OLD_LIBS" CPPFLAGS="$OLD_CPPFLAGS" |