@@ -3,37 +3,55 @@ PHP_ARG_WITH(v8js, for V8 Javascript Engine,
3
3
4
4
if test "$PHP_V8JS" != "no"; then
5
5
SEARCH_PATH="/usr/local /usr"
6
- SEARCH_FOR="$PHP_LIBDIR/libv8.$SHLIB_SUFFIX_NAME"
7
-
8
- if test -r $PHP_V8JS/$SEARCH_FOR; then
9
- case $host_os in
10
- darwin* )
11
- # MacOS does not support --rpath
12
- ;;
13
- * )
14
- LDFLAGS="$LDFLAGS -Wl,--rpath=$PHP_V8JS/$PHP_LIBDIR"
15
- ;;
16
- esac
17
- V8_DIR=$PHP_V8JS
18
- else
19
- AC_MSG_CHECKING ( [ for V8 files in default path] )
20
- for i in $SEARCH_PATH ; do
21
- if test -r $i/$SEARCH_FOR; then
22
- V8_DIR=$i
23
- AC_MSG_RESULT ( found in $i )
24
- fi
25
- done
6
+ SEARCH_FOR="libv8.$SHLIB_SUFFIX_NAME"
7
+
8
+ if test -d "$PHP_V8JS"; then
9
+ SEARCH_PATH="$PHP_V8JS $SEARCH_PATH"
26
10
fi
27
11
28
- AC_DEFINE_UNQUOTED ( [ PHP_V8_EXEC_PATH] , "$V8_DIR/$SEARCH_FOR" , [ Full path to libv8 library file] )
12
+ case $host_os in
13
+ darwin* )
14
+ # MacOS does not support --rpath
15
+ ;;
16
+ * )
17
+ LDFLAGS="$LDFLAGS -Wl,--rpath=$PHP_V8JS/$PHP_LIBDIR"
18
+ ;;
19
+ esac
20
+
21
+ AC_MSG_CHECKING ( [ for V8 files in default path] )
22
+ ARCH=$(uname -m)
23
+
24
+ for i in $SEARCH_PATH ; do
25
+ if test -r $i/$PHP_LIBDIR/$SEARCH_FOR; then
26
+ V8_INCLUDE_DIR=$i/include/v8
27
+ V8_LIBRARY_DIR=$i/$PHP_LIBDIR
28
+ AC_MSG_RESULT ( found in $i )
29
+ fi
30
+
31
+ # Debian installations
32
+ if test -r $i/$PHP_LIBDIR/$ARCH-linux-gnu/$SEARCH_FOR; then
33
+ V8_INCLUDE_DIR=$i/include/v8
34
+ V8_LIBRARY_DIR=$i/$PHP_LIBDIR/$ARCH-linux-gnu
35
+ AC_MSG_RESULT ( found in $i )
36
+ fi
37
+
38
+ # Manual installations
39
+ if test -r $i/$PHP_LIBDIR/$SEARCH_FOR && test -r $i/include/libplatform/libplatform.h; then
40
+ V8_INCLUDE_DIR=$i/include
41
+ V8_LIBRARY_DIR=$i/$PHP_LIBDIR
42
+ AC_MSG_RESULT ( found in $i )
43
+ fi
44
+ done
45
+
46
+ AC_DEFINE_UNQUOTED ( [ PHP_V8_EXEC_PATH] , "$V8_LIBRARY_DIR/$SEARCH_FOR" , [ Full path to libv8 library file] )
29
47
30
- if test -z "$V8_DIR "; then
48
+ if test -z "$V8_INCLUDE_DIR" || test -z "$V8_LIBRARY_DIR "; then
31
49
AC_MSG_RESULT ( [ not found] )
32
50
AC_MSG_ERROR ( [ Please reinstall the v8 distribution] )
33
51
fi
34
52
35
- PHP_ADD_INCLUDE($V8_DIR/include )
36
- PHP_ADD_LIBRARY_WITH_PATH(v8, $V8_DIR/$PHP_LIBDIR , V8JS_SHARED_LIBADD)
53
+ PHP_ADD_INCLUDE($V8_INCLUDE_DIR )
54
+ PHP_ADD_LIBRARY_WITH_PATH(v8, $V8_LIBRARY_DIR , V8JS_SHARED_LIBADD)
37
55
PHP_SUBST(V8JS_SHARED_LIBADD)
38
56
PHP_REQUIRE_CXX()
39
57
@@ -89,8 +107,8 @@ if test "$PHP_V8JS" != "no"; then
89
107
90
108
AC_LANG_PUSH ( [ C++] )
91
109
92
- CPPFLAGS="$CPPFLAGS -I$V8_DIR/include -std=$ac_cv_v8_cstd"
93
- LDFLAGS="$LDFLAGS -L$V8_DIR/$PHP_LIBDIR "
110
+ CPPFLAGS="$CPPFLAGS -I$V8_INCLUDE_DIR -std=$ac_cv_v8_cstd"
111
+ LDFLAGS="$LDFLAGS -L$V8_LIBRARY_DIR "
94
112
95
113
AC_MSG_CHECKING ( [ for libv8_libplatform] )
96
114
AC_DEFUN ( [ V8_CHECK_LINK] , [
@@ -161,7 +179,7 @@ int main ()
161
179
AC_MSG_CHECKING ( [ for 1ドル ] )
162
180
blob_found=0
163
181
164
- for i in "$V8_DIR/$PHP_LIBDIR " "$V8_DIR /share/v8"; do
182
+ for i in "$V8_LIBRARY_DIR " "$V8_INCLUDE_DIR/.. /share/v8"; do
165
183
if test -r "$i/1ドル "; then
166
184
AC_MSG_RESULT ( [ found ($i/1ドル )] )
167
185
AC_DEFINE_UNQUOTED ( [ 2ドル ] , "$i/1ドル " , [ Full path to 1ドル file] )
@@ -219,7 +237,7 @@ int main ()
219
237
220
238
AC_DEFINE ( [ V8_DEPRECATION_WARNINGS] , [ 1] , [ Enable compiler warnings when using V8_DEPRECATED apis.] )
221
239
222
- PHP_ADD_INCLUDE($V8_DIR )
240
+ PHP_ADD_INCLUDE($V8_INCLUDE_DIR )
223
241
PHP_NEW_EXTENSION(v8js, [ \
224
242
v8js_array_access.cc \
225
243
v8js_class.cc \
0 commit comments