Skip to content

Commit e3e3c9d

Browse files
committed
PHP-1289: Revamp the build system to embed libmongoc, libbson and yajl
Still a littlebit more work left re the version files (point git at tags with the files committed) and being able to use local patches. The config files should also be looked into and verified
1 parent 4ac8344 commit e3e3c9d

File tree

1 file changed

+245
-61
lines changed

1 file changed

+245
-61
lines changed

config.m4

Lines changed: 245 additions & 61 deletions
Original file line numberDiff line numberDiff line change
@@ -1,91 +1,139 @@
11
dnl config.m4 for extension phongo
2-
syscmd("./autogen.sh")
3-
42
PHP_ARG_ENABLE(phongo, whether to enable phongo support,
53
[ --enable-phongo Enable phongo support])
64

75

6+
AC_DEFUN([MONGOC_DEFINE_RESET],[
7+
[echo "" > src/libmongoc/src/mongoc/mongoc-config.h]
8+
])
9+
AC_DEFUN([BSON_DEFINE_RESET],[
10+
[echo "" > src/libbson/src/bson/bson-config.h]
11+
])
12+
dnl borrowed from PHP acinclude.m4
13+
AC_DEFUN([BSON_DEFINE],[
14+
[echo "#define ]$1[]ifelse([$2],,[ 1],[ $2])[" >> src/libbson/src/bson/bson-config.h]
15+
])
16+
dnl borrowed from PHP acinclude.m4
17+
AC_DEFUN([PHP_BSON_BIGENDIAN],
18+
[AC_CACHE_CHECK([whether byte ordering is bigendian], ac_cv_c_bigendian_php,
19+
[
20+
ac_cv_c_bigendian_php=unknown
21+
AC_TRY_RUN(
22+
[
23+
int main(void)
24+
{
25+
short one = 1;
26+
char *cp = (char *)&one;
27+
28+
if (*cp == 0) {
29+
return(0);
30+
} else {
31+
return(1);
32+
}
33+
}
34+
], [ac_cv_c_bigendian_php=yes], [ac_cv_c_bigendian_php=no], [ac_cv_c_bigendian_php=unknown])
35+
])
36+
if test $ac_cv_c_bigendian_php = yes; then
37+
BSON_DEFINE([BSON_BYTE_ORDER], 4321)
38+
else
39+
BSON_DEFINE([BSON_BYTE_ORDER], 1234)
40+
fi
41+
])
42+
dnl Borrowed from sapi/fpm/config.m4
43+
AC_DEFUN([PHP_BSON_CLOCK],
44+
[
45+
have_clock_gettime=no
46+
47+
AC_MSG_CHECKING([for clock_gettime])
48+
49+
AC_TRY_LINK([ #include <time.h> ], [struct timespec ts; clock_gettime(CLOCK_MONOTONIC, &ts);], [
50+
have_clock_gettime=yes
51+
AC_MSG_RESULT([yes])
52+
], [
53+
AC_MSG_RESULT([no])
54+
])
55+
56+
if test "$have_clock_gettime" = "no"; then
57+
AC_MSG_CHECKING([for clock_gettime in -lrt])
58+
59+
SAVED_LIBS="$LIBS"
60+
LIBS="$LIBS -lrt"
61+
62+
AC_TRY_LINK([ #include <time.h> ], [struct timespec ts; clock_gettime(CLOCK_MONOTONIC, &ts);], [
63+
have_clock_gettime=yes
64+
AC_MSG_RESULT([yes])
65+
], [
66+
LIBS="$SAVED_LIBS"
67+
AC_MSG_RESULT([no])
68+
])
69+
fi
70+
71+
if test "$have_clock_gettime" = "yes"; then
72+
BSON_DEFINE([BSON_HAVE_CLOCK_GETTIME], 1)
73+
fi
74+
])
875

976
MONGOC_SYMBOL_SUFFIX="priv"
1077

1178
if test "$PHONGO" != "no"; then
1279
AC_MSG_CHECKING(configuring libmongoc)
1380
AC_MSG_RESULT(...)
1481

15-
dnl Run libbson and mongo-c-driver configure scripts..
16-
AC_CONFIG_SUBDIRS([src/libbson])
17-
AC_CONFIG_SUBDIRS([src/libmongoc])
18-
PHP_ADD_INCLUDE(src/libbson/src/bson/)
19-
PHP_ADD_INCLUDE(src/libmongoc/src/mongoc/)
20-
dnl ...with hardcoded arguments
21-
cur_CFLAGS="$CFLAGS"
22-
CFLAGS="-I$abs_srcdir/src/libbson/src/bson"
23-
ac_configure_args="--enable-debug --enable-tracing --enable-debug-symbols=full --disable-hardening --enable-examples=no --enable-man-pages=no --enable-sasl=no --enable-tests=no --enable-ssl=no --disable-silent-rules --with-libbson=bundled --quiet CFLAGS='$CFLAGS'"
24-
dnl Print out the config run right away so it doesn't show up after our stuff
25-
_AC_OUTPUT_SUBDIRS
26-
dnl since we cheated.. add a guard to not execute it again
27-
no_recursion=yes
28-
CFLAGS="$cur_CFLAGS"
29-
30-
31-
PHP_ADD_LIBRARY_WITH_PATH(bson-1.0, src/libbson/.libs, PHONGO_SHARED_LIBADD)
32-
PHP_ADD_LIBRARY_WITH_PATH(mongoc-priv, src/libmongoc/.libs, PHONGO_SHARED_LIBADD)
33-
PHP_SUBST(PHONGO_SHARED_LIBADD)
34-
3582
AC_DEFINE(HAVE_MONGOC, 1, [Kinda useless extension without it..])
3683

3784
PHP_ARG_ENABLE(developer-flags, whether to enable developer build flags,
3885
[ --enable-developer-flags Enable developer flags],, no)
3986

4087
if test "$PHP_DEVELOPER_FLAGS" = "yes"; then
4188
dnl Warn about functions which might be candidates for format attributes
42-
PHP_CHECK_GCC_ARG(-Wmissing-format-attribute, _EXTRA_CFLAGS="$_EXTRA_CFLAGS -Wmissing-format-attribute")
89+
PHP_CHECK_GCC_ARG(-Wmissing-format-attribute, _MAINTAINER_CFLAGS="$_MAINTAINER_CFLAGS -Wmissing-format-attribute")
4390
dnl Avoid duplicating values for an enum
44-
PHP_CHECK_GCC_ARG(-Wduplicate-enum, _EXTRA_CFLAGS="$_EXTRA_CFLAGS -Wduplicate-enum")
91+
PHP_CHECK_GCC_ARG(-Wduplicate-enum, _MAINTAINER_CFLAGS="$_MAINTAINER_CFLAGS -Wduplicate-enum")
4592
dnl Warns on mismatches between #ifndef and #define header guards
46-
PHP_CHECK_GCC_ARG(-Wheader-guard, _EXTRA_CFLAGS="$_EXTRA_CFLAGS -Wheader-guard")
93+
PHP_CHECK_GCC_ARG(-Wheader-guard, _MAINTAINER_CFLAGS="$_MAINTAINER_CFLAGS -Wheader-guard")
4794
dnl logical not of a non-boolean expression
48-
PHP_CHECK_GCC_ARG(-Wlogical-not-parentheses, _EXTRA_CFLAGS="$_EXTRA_CFLAGS -Wlogical-not-parentheses")
95+
PHP_CHECK_GCC_ARG(-Wlogical-not-parentheses, _MAINTAINER_CFLAGS="$_MAINTAINER_CFLAGS -Wlogical-not-parentheses")
4996
dnl Warn about suspicious uses of logical operators in expressions
50-
PHP_CHECK_GCC_ARG(-Wlogical-op, _EXTRA_CFLAGS="$_EXTRA_CFLAGS -Wlogical-op")
97+
PHP_CHECK_GCC_ARG(-Wlogical-op, _MAINTAINER_CFLAGS="$_MAINTAINER_CFLAGS -Wlogical-op")
5198
dnl memory error detector.
5299
dnl FIXME: -fsanitize=address,undefined for clang. The PHP_CHECK_GCC_ARG macro isn't happy about that string :(
53-
PHP_CHECK_GCC_ARG(-fsanitize-address, _EXTRA_CFLAGS="$_EXTRA_CFLAGS -fsanitize-address")
100+
PHP_CHECK_GCC_ARG(-fsanitize-address, _MAINTAINER_CFLAGS="$_MAINTAINER_CFLAGS -fsanitize-address")
54101
dnl Enable frame debugging
55-
PHP_CHECK_GCC_ARG(-fno-omit-frame-pointer, _EXTRA_CFLAGS="$_EXTRA_CFLAGS -fno-omit-frame-pointer")
102+
PHP_CHECK_GCC_ARG(-fno-omit-frame-pointer, _MAINTAINER_CFLAGS="$_MAINTAINER_CFLAGS -fno-omit-frame-pointer")
56103
dnl Make sure we don't optimize calls
57-
PHP_CHECK_GCC_ARG(-fno-optimize-sibling-calls, _EXTRA_CFLAGS="$_EXTRA_CFLAGS -fno-optimize-sibling-calls")
58-
PHP_CHECK_GCC_ARG(-Wlogical-op-parentheses, _EXTRA_CFLAGS="$_EXTRA_CFLAGS -Wlogical-op-parentheses")
59-
PHP_CHECK_GCC_ARG(-Wbool-conversion, _EXTRA_CFLAGS="$_EXTRA_CFLAGS -Wbool-conversion")
60-
PHP_CHECK_GCC_ARG(-Wloop-analysis, _EXTRA_CFLAGS="$_EXTRA_CFLAGS -Wloop-analysis")
61-
PHP_CHECK_GCC_ARG(-Wsizeof-array-argument, _EXTRA_CFLAGS="$_EXTRA_CFLAGS -Wsizeof-array-argument")
62-
PHP_CHECK_GCC_ARG(-Wstring-conversion, _EXTRA_CFLAGS="$_EXTRA_CFLAGS -Wstring-conversion")
63-
PHP_CHECK_GCC_ARG(-Wno-variadic-macros, _EXTRA_CFLAGS="$_EXTRA_CFLAGS -Wno-variadic-macros")
64-
PHP_CHECK_GCC_ARG(-Wno-sign-compare, _EXTRA_CFLAGS="$_EXTRA_CFLAGS -Wno-sign-compare")
65-
PHP_CHECK_GCC_ARG(-fstack-protector, _EXTRA_CFLAGS="$_EXTRA_CFLAGS -fstack-protector")
66-
PHP_CHECK_GCC_ARG(-fno-exceptions, _EXTRA_CFLAGS="$_EXTRA_CFLAGS -fno-exceptions")
67-
PHP_CHECK_GCC_ARG(-Wformat-security, _EXTRA_CFLAGS="$_EXTRA_CFLAGS -Wformat-security")
68-
PHP_CHECK_GCC_ARG(-Wformat-nonliteral, _EXTRA_CFLAGS="$_EXTRA_CFLAGS -Wformat-nonliteral")
69-
PHP_CHECK_GCC_ARG(-Winit-self, _EXTRA_CFLAGS="$_EXTRA_CFLAGS -Winit-self")
70-
PHP_CHECK_GCC_ARG(-Wwrite-strings, _EXTRA_CFLAGS="$_EXTRA_CFLAGS -Wwrite-strings")
71-
PHP_CHECK_GCC_ARG(-Wenum-compare, _EXTRA_CFLAGS="$_EXTRA_CFLAGS -Wenum-compare")
72-
PHP_CHECK_GCC_ARG(-Wempty-body, _EXTRA_CFLAGS="$_EXTRA_CFLAGS -Wempty-body")
73-
PHP_CHECK_GCC_ARG(-Wparentheses, _EXTRA_CFLAGS="$_EXTRA_CFLAGS -Wparentheses")
74-
75-
76-
EXTRA_CFLAGS="-g -O0 -Wall -Wextra $_EXTRA_CFLAGS "
104+
PHP_CHECK_GCC_ARG(-fno-optimize-sibling-calls, _MAINTAINER_CFLAGS="$_MAINTAINER_CFLAGS -fno-optimize-sibling-calls")
105+
PHP_CHECK_GCC_ARG(-Wlogical-op-parentheses, _MAINTAINER_CFLAGS="$_MAINTAINER_CFLAGS -Wlogical-op-parentheses")
106+
PHP_CHECK_GCC_ARG(-Wbool-conversion, _MAINTAINER_CFLAGS="$_MAINTAINER_CFLAGS -Wbool-conversion")
107+
PHP_CHECK_GCC_ARG(-Wloop-analysis, _MAINTAINER_CFLAGS="$_MAINTAINER_CFLAGS -Wloop-analysis")
108+
PHP_CHECK_GCC_ARG(-Wsizeof-array-argument, _MAINTAINER_CFLAGS="$_MAINTAINER_CFLAGS -Wsizeof-array-argument")
109+
PHP_CHECK_GCC_ARG(-Wstring-conversion, _MAINTAINER_CFLAGS="$_MAINTAINER_CFLAGS -Wstring-conversion")
110+
PHP_CHECK_GCC_ARG(-Wno-variadic-macros, _MAINTAINER_CFLAGS="$_MAINTAINER_CFLAGS -Wno-variadic-macros")
111+
PHP_CHECK_GCC_ARG(-Wno-sign-compare, _MAINTAINER_CFLAGS="$_MAINTAINER_CFLAGS -Wno-sign-compare")
112+
PHP_CHECK_GCC_ARG(-fstack-protector, _MAINTAINER_CFLAGS="$_MAINTAINER_CFLAGS -fstack-protector")
113+
PHP_CHECK_GCC_ARG(-fno-exceptions, _MAINTAINER_CFLAGS="$_MAINTAINER_CFLAGS -fno-exceptions")
114+
PHP_CHECK_GCC_ARG(-Wformat-security, _MAINTAINER_CFLAGS="$_MAINTAINER_CFLAGS -Wformat-security")
115+
PHP_CHECK_GCC_ARG(-Wformat-nonliteral, _MAINTAINER_CFLAGS="$_MAINTAINER_CFLAGS -Wformat-nonliteral")
116+
PHP_CHECK_GCC_ARG(-Winit-self, _MAINTAINER_CFLAGS="$_MAINTAINER_CFLAGS -Winit-self")
117+
PHP_CHECK_GCC_ARG(-Wwrite-strings, _MAINTAINER_CFLAGS="$_MAINTAINER_CFLAGS -Wwrite-strings")
118+
PHP_CHECK_GCC_ARG(-Wenum-compare, _MAINTAINER_CFLAGS="$_MAINTAINER_CFLAGS -Wenum-compare")
119+
PHP_CHECK_GCC_ARG(-Wempty-body, _MAINTAINER_CFLAGS="$_MAINTAINER_CFLAGS -Wempty-body")
120+
PHP_CHECK_GCC_ARG(-Wparentheses, _MAINTAINER_CFLAGS="$_MAINTAINER_CFLAGS -Wparentheses")
121+
122+
123+
MAINTAINER_CFLAGS="-g -O0 -Wall -Wextra $_MAINTAINER_CFLAGS "
77124
dnl EXTRA_LDFLAGS="-Wl,--no-undefined"
78125
fi
126+
MAINTAINER_CFLAGS="$MAINTAINER_CFLAGS -Wno-unused-parameter -Wno-unused-but-set-variable -Wno-missing-field-initializers"
79127

80128

81129
PHP_ARG_ENABLE(coverage, whether to enable code coverage,
82130
[ --enable-coverage Enable developer code coverage information],, no)
83131

84132
if test "$PHP_COVERAGE" = "yes"; then
85-
PHP_CHECK_GCC_ARG(-fprofile-arcs, _EXTRA_FLAGS="$_EXTRA_FLAGS -fprofile-arcs")
86-
PHP_CHECK_GCC_ARG(-ftest-coverage, _EXTRA_FLAGS="$_EXTRA_FLAGS -ftest-coverage")
87-
EXTRA_CFLAGS="$EXTRA_CFLAGS $_EXTRA_FLAGS "
88-
EXTRA_LDFLAGS="$_EXTRA_FLAGS"
133+
PHP_CHECK_GCC_ARG(-fprofile-arcs, COVERAGE_CFLAGS="$COVERAGE_CFLAGS -fprofile-arcs")
134+
PHP_CHECK_GCC_ARG(-ftest-coverage, COVERAGE_CFLAGS="$COVERAGE_CFLAGS -ftest-coverage")
135+
dnl EXTRA_CFLAGS="$EXTRA_CFLAGS $_COVERAGE_CFLAGS "
136+
dnl EXTRA_LDFLAGS="$_COVERAGE_CFLAGS"
89137
fi
90138

91139
PHONGO_BSON="\
@@ -129,24 +177,160 @@ if test "$PHONGO" != "no"; then
129177
src/MongoDB/WriteResult.c \
130178
";
131179

132-
EXTRA_CFLAGS="$EXTRA_CFLAGS $MONGOC_CFLAGS"
180+
YAJL_SOURCES="\
181+
yajl_version.c \
182+
yajl.c \
183+
yajl_encode.c \
184+
yajl_lex.c \
185+
yajl_parser.c \
186+
yajl_buf.c \
187+
yajl_tree.c \
188+
yajl_alloc.c \
189+
yajl_gen.c
190+
";
191+
192+
BSON_SOURCES="\
193+
bcon.c \
194+
bson.c \
195+
bson-atomic.c \
196+
bson-clock.c \
197+
bson-context.c \
198+
bson-error.c \
199+
bson-iter.c \
200+
bson-iso8601.c \
201+
bson-json.c \
202+
bson-keys.c \
203+
bson-md5.c \
204+
bson-memory.c \
205+
bson-oid.c \
206+
bson-reader.c \
207+
bson-string.c \
208+
bson-timegm.c \
209+
bson-utf8.c \
210+
bson-value.c \
211+
bson-version.c \
212+
bson-writer.c
213+
";
214+
MONGOC_SOURCES="\
215+
mongoc-array.c \
216+
mongoc-buffer.c \
217+
mongoc-bulk-operation.c \
218+
mongoc-client.c \
219+
mongoc-client-pool.c \
220+
mongoc-cluster.c \
221+
mongoc-collection.c \
222+
mongoc-counters.c \
223+
mongoc-cursor.c \
224+
mongoc-cursor-array.c \
225+
mongoc-cursor-cursorid.c \
226+
mongoc-database.c \
227+
mongoc-init.c \
228+
mongoc-gridfs.c \
229+
mongoc-gridfs-file.c \
230+
mongoc-gridfs-file-page.c \
231+
mongoc-gridfs-file-list.c \
232+
mongoc-index.c \
233+
mongoc-list.c \
234+
mongoc-log.c \
235+
mongoc-matcher-op.c \
236+
mongoc-matcher.c \
237+
mongoc-queue.c \
238+
mongoc-read-prefs.c \
239+
mongoc-rpc.c \
240+
mongoc-socket.c \
241+
mongoc-stream.c \
242+
mongoc-stream-buffered.c \
243+
mongoc-stream-file.c \
244+
mongoc-stream-gridfs.c \
245+
mongoc-stream-socket.c \
246+
mongoc-uri.c \
247+
mongoc-util.c \
248+
mongoc-write-command.c \
249+
mongoc-write-concern.c
250+
";
251+
252+
MONGOC_SOURCES_SSL="\
253+
mongoc-rand.c \
254+
mongoc-scram.c \
255+
mongoc-stream-tls.c \
256+
mongoc-ssl.c
257+
";
258+
259+
MONGOC_SOURCES_SASL=mongoc-sasl.c
260+
dnl if ENABLE_SSL
261+
dnl endif
262+
263+
dnl if ENABLE_SASL
264+
dnl endif
133265

134266
if test "$ext_shared" = "no"; then
135267
PHP_ADD_SOURCES(PHP_EXT_DIR(phongo), $PHONGO_BSON)
136268
PHP_ADD_SOURCES(PHP_EXT_DIR(phongo), $PHONGO_BSON_CLASSES)
137269
PHP_ADD_SOURCES(PHP_EXT_DIR(phongo), $PHONGO_MONGODB_CLASSES)
138270
else
139-
PHP_ADD_SOURCES_X(PHP_EXT_DIR(phongo), $PHONGO_BSON, $EXTRA_CFLAGS, shared_objects_phongo, yes)
140-
PHP_ADD_SOURCES_X(PHP_EXT_DIR(phongo), $PHONGO_BSON_CLASSES, $EXTRA_CFLAGS, shared_objects_phongo, yes)
141-
PHP_ADD_SOURCES_X(PHP_EXT_DIR(phongo), $PHONGO_MONGODB_CLASSES, $EXTRA_CFLAGS, shared_objects_phongo, yes)
271+
PHP_ADD_SOURCES_X(PHP_EXT_DIR(phongo), $PHONGO_BSON, [$EXTRA_CFLAGS $COVERAGE_CFLAGS], shared_objects_phongo, yes)
272+
PHP_ADD_SOURCES_X(PHP_EXT_DIR(phongo), $PHONGO_BSON_CLASSES, [$EXTRA_CFLAGS $COVERAGE_CFLAGS], shared_objects_phongo, yes)
273+
PHP_ADD_SOURCES_X(PHP_EXT_DIR(phongo), $PHONGO_MONGODB_CLASSES, [$EXTRA_CFLAGS $COVERAGE_CFLAGS], shared_objects_phongo, yes)
142274
fi
143275

144-
PHONGO_SHARED_DEPENDENCIES="phongodep"
145-
PHP_SUBST(PHONGO_SHARED_DEPENDENCIES)
276+
dnl libmongoc stuff {{{
277+
PHP_ADD_INCLUDE(src/libbson/src/)
278+
PHP_ADD_INCLUDE(src/libbson/src/yajl/)
279+
PHP_ADD_INCLUDE(src/libbson/src/bson/)
280+
PHP_ADD_INCLUDE(src/libmongoc/src/mongoc/)
281+
CPPFLAGS="$CPPFLAGS -DBSON_COMPILATION -DMONGOC_COMPILATION"
282+
283+
PHP_ADD_SOURCES_X(PHP_EXT_DIR(phongo)[/src/libbson/src/yajl], $YAJL_SOURCES, [$EXTRA_CFLAGS $COVERAGE_CFLAGS], shared_objects_phongo, yes)
284+
dnl PHP_ADD_BUILD_DIR([$ext_builddir/src/libbson/src/yajl/])
285+
286+
PHP_ADD_SOURCES_X(PHP_EXT_DIR(phongo)[/src/libbson/src/bson], $BSON_SOURCES, [$EXTRA_CFLAGS $COVERAGE_CFLAGS], shared_objects_phongo, yes)
287+
dnl PHP_ADD_BUILD_DIR([$ext_builddir/src/libbson/src/bson/])
146288

147-
PHP_NEW_EXTENSION(phongo, $PHONGO_ROOT, $ext_shared,, $EXTRA_CFLAGS)
289+
m4_include(src/libmongoc/build/autotools/m4/ax_pthread.m4)
290+
AX_PTHREAD
291+
m4_include(src/libbson/build/autotools/m4/ac_compile_check_sizeof.m4)
292+
m4_include(src/libbson/build/autotools/m4/ac_create_stdint_h.m4)
293+
AC_CREATE_STDINT_H([src/libbson/src/bson/bson-stdint.h])
294+
295+
PHP_ADD_SOURCES_X(PHP_EXT_DIR(phongo)[/src/libmongoc/src/mongoc], $MONGOC_SOURCES, [$EXTRA_CFLAGS $COVERAGE_CFLAGS], shared_objects_phongo, yes)
296+
dnl PHP_ADD_BUILD_DIR([$ext_builddir/src/libmongoc/src/mongoc/])
297+
298+
AC_DEFINE(HAVE_MONGOC, 1, [Kinda useless extension without it..])
299+
ac_configure_args="--enable-debug --enable-tracing --enable-debug-symbols=full --disable-hardening --enable-examples=no --enable-man-pages=no --enable-sasl=no --enable-tests=no --enable-ssl=no --disable-silent-rules --with-libbson=bundled --quiet CFLAGS='$CFLAGS'"
300+
301+
302+
dnl PHP_ADD_LIBRARY_WITH_PATH(bson-1.0, src/libbson/.libs, PHONGO_SHARED_LIBADD)
303+
dnl PHP_ADD_LIBRARY_WITH_PATH(mongoc-priv, src/libmongoc/.libs, PHONGO_SHARED_LIBADD)
304+
EXTRA_CFLAGS="$PTHREAD_CFLAGS"
305+
PHP_SUBST(EXTRA_CFLAGS)
306+
PHONGO_SHARED_LIBADD="$PTHREAD_LIBS -lrt"
307+
PHP_SUBST(PHONGO_SHARED_LIBADD)
308+
309+
dnl }}}
310+
311+
PHP_NEW_EXTENSION(phongo, $PHONGO_ROOT, $ext_shared,, [$EXTRA_CFLAGS $COVERAGE_CFLAGS])
148312
PHP_ADD_EXTENSION_DEP(phongo, spl)
149313

314+
MONGOC_DEFINE_RESET
315+
BSON_DEFINE_RESET
316+
PHP_BSON_BIGENDIAN
317+
AC_HEADER_STDBOOL
318+
if test "$ac_cv_header_stdbool_h" = "yes"; then
319+
BSON_DEFINE([BSON_HAVE_STDBOOL_H], 1)
320+
else
321+
BSON_DEFINE([BSON_HAVE_STDBOOL_H], 0)
322+
fi
323+
324+
BSON_DEFINE([BSON_OS], 1)
325+
PHP_BSON_CLOCK
326+
AC_CHECK_FUNC(strnlen,ac_cv_func_strnlen=yes,ac_cv_func_strnlen=no)
327+
if test "$ac_cv_func_strnlen" = "yes"; then
328+
BSON_DEFINE([BSON_HAVE_STRNLEN], 1)
329+
fi
330+
AC_CHECK_FUNC(snprintf,ac_cv_func_snprintf=yes,ac_cv_func_snprintf=no)
331+
if test "$ac_cv_func_snprintf" = "yes"; then
332+
BSON_DEFINE([BSON_HAVE_SNPRINTF], 1)
333+
fi
150334

151335
dnl This must come after PHP_NEW_EXTENSION, otherwise the srcdir won't be set
152336
PHP_ADD_MAKEFILE_FRAGMENT
@@ -155,7 +339,7 @@ AC_CONFIG_COMMANDS_POST([echo "
155339
phongo was configured with the following options:
156340
157341
Build configuration:
158-
Enable developers flags (slow) : $_EXTRA_CFLAGS
342+
Enable developers flags (slow) : $MAINTAINER_CFLAGS $COVERAGE_CFLAGS
159343
CFLAGS : $CFLAGS
160344
161345
Submit bugreports at:

0 commit comments

Comments
 (0)