@@ -3,46 +3,53 @@ PHP_ARG_WITH(v8js, for V8 Javascript Engine,
33
44if test "$PHP_V8JS" != "no"; then
55 SEARCH_PATH="/usr/local /usr"
6- SEARCH_FOR="libv8.$SHLIB_SUFFIX_NAME"
7-
8- if test -d "$PHP_V8JS"; then
9- SEARCH_PATH="$PHP_V8JS"
10-
11- # set rpath, so library loader picks up libv8 even if it's not on the
12- # system's library search path
13- case $host_os in
14- darwin* )
15- # MacOS does not support --rpath
16- ;;
17- * )
18- LDFLAGS="$LDFLAGS -Wl,--rpath=$PHP_V8JS/$PHP_LIBDIR"
19- ;;
20- esac
21- fi
22-
23- AC_MSG_CHECKING ( [ for V8 files in default path] )
24- ARCH=$(uname -m)
25-
26- for i in $SEARCH_PATH ; do
27- if test -r "$i/$PHP_LIBDIR/$SEARCH_FOR" -a -r "$i/include/v8/v8.h"; then
28- V8_INCLUDE_DIR="$i/include/v8"
29- V8_LIBRARY_DIR="$i/$PHP_LIBDIR"
30- AC_MSG_RESULT ( found in $i )
31- fi
326
33- # Debian installations
34- if test -r "$i/$PHP_LIBDIR/$ARCH-linux-gnu/$SEARCH_FOR"; then
35- V8_INCLUDE_DIR="$i/include/v8"
36- V8_LIBRARY_DIR="$i/$PHP_LIBDIR/$ARCH-linux-gnu"
37- AC_MSG_RESULT ( found in $i )
7+ for libname in v8 node; do
8+ SEARCH_FOR="lib$libname.$SHLIB_SUFFIX_NAME"
9+
10+ if test -d "$PHP_V8JS"; then
11+ SEARCH_PATH="$PHP_V8JS"
12+
13+ # set rpath, so library loader picks up libv8 even if it's not on the
14+ # system's library search path
15+ case $host_os in
16+ darwin* )
17+ # MacOS does not support --rpath
18+ ;;
19+ * )
20+ LDFLAGS="$LDFLAGS -Wl,--rpath=$PHP_V8JS/$PHP_LIBDIR"
21+ ;;
22+ esac
3823 fi
3924
40- # Manual installations
41- if test -r "$i/$PHP_LIBDIR/$SEARCH_FOR" -a -r "$i/include/libplatform/libplatform.h"; then
42- V8_INCLUDE_DIR="$i/include"
43- V8_LIBRARY_DIR="$i/$PHP_LIBDIR"
44- AC_MSG_RESULT ( found in $i )
45- fi
25+ AC_MSG_CHECKING ( [ for V8 files in default path] )
26+ ARCH=$(uname -m)
27+
28+ for i in $SEARCH_PATH ; do
29+ echo checking "$i/$PHP_LIBDIR/$SEARCH_FOR" -a -r "$i/include/$libname/v8.h"
30+ if test -r "$i/$PHP_LIBDIR/$SEARCH_FOR" -a -r "$i/include/$libname/v8.h"; then
31+ V8_INCLUDE_DIR="$i/include/$libname"
32+ V8_LIBRARY_DIR="$i/$PHP_LIBDIR"
33+ AC_MSG_RESULT ( found in $i )
34+ break 2
35+ fi
36+
37+ # Debian installations
38+ if test -r "$i/$PHP_LIBDIR/$ARCH-linux-gnu/$SEARCH_FOR"; then
39+ V8_INCLUDE_DIR="$i/include/$libname"
40+ V8_LIBRARY_DIR="$i/$PHP_LIBDIR/$ARCH-linux-gnu"
41+ AC_MSG_RESULT ( found in $i )
42+ break 2
43+ fi
44+
45+ # Manual installations
46+ if test -r "$i/$PHP_LIBDIR/$SEARCH_FOR" -a -r "$i/include/libplatform/libplatform.h"; then
47+ V8_INCLUDE_DIR="$i/include"
48+ V8_LIBRARY_DIR="$i/$PHP_LIBDIR"
49+ AC_MSG_RESULT ( found in $i )
50+ break 2
51+ fi
52+ done
4653 done
4754
4855 AC_DEFINE_UNQUOTED ( [ PHP_V8_EXEC_PATH] , "$V8_LIBRARY_DIR/$SEARCH_FOR" , [ Full path to libv8 library file] )
@@ -53,8 +60,9 @@ if test "$PHP_V8JS" != "no"; then
5360 fi
5461
5562 PHP_ADD_INCLUDE($V8_INCLUDE_DIR)
56- PHP_ADD_LIBRARY_WITH_PATH(v8 , $V8_LIBRARY_DIR, V8JS_SHARED_LIBADD)
63+ PHP_ADD_LIBRARY_WITH_PATH($libname , $V8_LIBRARY_DIR, V8JS_SHARED_LIBADD)
5764 PHP_SUBST(V8JS_SHARED_LIBADD)
65+
5866 PHP_REQUIRE_CXX()
5967
6068
@@ -112,26 +120,28 @@ if test "$PHP_V8JS" != "no"; then
112120 CPPFLAGS="$CPPFLAGS -I$V8_INCLUDE_DIR -std=$ac_cv_v8_cstd"
113121 LDFLAGS="$LDFLAGS -L$V8_LIBRARY_DIR"
114122
115- AC_MSG_CHECKING ( [ for libv8_libplatform] )
116- AC_DEFUN ( [ V8_CHECK_LINK] , [
117- save_LIBS="$LIBS"
118- LIBS="$LIBS $1 -lv8_libplatform -lv8"
119- AC_LINK_IFELSE ( [ AC_LANG_PROGRAM ( [
120- #include <libplatform/libplatform.h>
121- ] , [ v8::platform::NewDefaultPlatform(); ] ) ] , [
122- dnl libv8_libplatform.so found
123- AC_MSG_RESULT ( found )
124- V8JS_SHARED_LIBADD="$1 -lv8_libplatform $V8JS_SHARED_LIBADD"
125- $3
126- ] , [ $4 ] )
127- LIBS="$save_LIBS"
128- ] )
123+ if test "$libname" = "v8"; then
124+ AC_MSG_CHECKING ( [ for libv8_libplatform] )
125+ AC_DEFUN ( [ V8_CHECK_LINK] , [
126+ save_LIBS="$LIBS"
127+ LIBS="$LIBS $1 -lv8_libplatform -lv8"
128+ AC_LINK_IFELSE ( [ AC_LANG_PROGRAM ( [
129+ #include <libplatform/libplatform.h>
130+ ] , [ v8::platform::NewDefaultPlatform(); ] ) ] , [
131+ dnl libv8_libplatform.so found
132+ AC_MSG_RESULT ( found )
133+ V8JS_SHARED_LIBADD="$1 -lv8_libplatform $V8JS_SHARED_LIBADD"
134+ $3
135+ ] , [ $4 ] )
136+ LIBS="$save_LIBS"
137+ ] )
129138
130- V8_CHECK_LINK([ ] , [ ] , [ ] , [
131- V8_CHECK_LINK([ -lv8_libbase] , [ ] , [ ] , [
132- AC_MSG_ERROR ( [ could not find libv8_libplatform library] )
139+ V8_CHECK_LINK([ ] , [ ] , [ ] , [
140+ V8_CHECK_LINK([ -lv8_libbase] , [ ] , [ ] , [
141+ AC_MSG_ERROR ( [ could not find libv8_libplatform library] )
142+ ] )
133143 ] )
134- ] )
144+ fi
135145
136146
137147 dnl
0 commit comments