Skip to content

Commit 8ce7268

Browse files
Merge pull request #64 from mlazdans/master
Handle Firebird 4/5 types
2 parents 025f24d + c185385 commit 8ce7268

19 files changed

+486
-134
lines changed

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -58,6 +58,7 @@ yaml.loT
5858
.FBCIndex
5959
.FBCLockFolder
6060
core
61+
*.dep
6162

6263
# Test specific Ignores
6364
tests/*.diff

config.m4

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,22 @@ if test "$PHP_INTERBASE" != "no"; then
5454
fi
5555

5656
AC_DEFINE(HAVE_IBASE,1,[ ])
57-
PHP_NEW_EXTENSION(interbase, interbase.c ibase_query.c ibase_service.c ibase_events.c ibase_blobs.c, $ext_shared,, -DZEND_ENABLE_STATIC_TSRMLS_CACHE=1)
57+
PHP_NEW_EXTENSION(interbase, interbase.c ibase_query.c ibase_service.c ibase_events.c ibase_blobs.c, $ext_shared,, -DZEND_ENABLE_STATIC_TSRMLS_CACHE=1,[cxx])
5858
PHP_SUBST(INTERBASE_SHARED_LIBADD)
59+
60+
PHP_REQUIRE_CXX()
61+
PHP_CXX_COMPILE_STDCXX([11], [mandatory], [PHP_INTERBASE_STDCXX])
62+
63+
PHP_INTERBASE_CXX_SOURCES="pdo_firebird_utils.cpp"
64+
65+
AS_VAR_IF([ext_shared], [no],
66+
[PHP_ADD_SOURCES([$ext_dir],
67+
[$PHP_INTERBASE_CXX_SOURCES],
68+
[$PHP_INTERBASE_STDCXX])],
69+
[PHP_ADD_SOURCES_X([$ext_dir],
70+
[$PHP_INTERBASE_CXX_SOURCES],
71+
[$PHP_INTERBASE_STDCXX],
72+
[shared_objects_interbase],
73+
[yes])])
74+
5975
fi

config.w32

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -3,13 +3,13 @@
33
ARG_WITH("interbase", "InterBase support", "no");
44

55
if (PHP_INTERBASE != "no") {
6-
7-
if (CHECK_HEADER_ADD_INCLUDE("ibase.h", "CFLAGS_INTERBASE",
8-
PHP_PHP_BUILD + "\\include\\interbase;" + PHP_PHP_BUILD + "\\interbase\\include;" + PHP_INTERBASE) &&
9-
(CHECK_LIB("fbclient_ms.lib", "interbase", PHP_PHP_BUILD + "\\interbase\\lib_ms;" + PHP_INTERBASE) ||
10-
CHECK_LIB("gds32_ms.lib", "interbase", PHP_PHP_BUILD + "\\interbase\\lib_ms;" + PHP_INTERBASE))) {
11-
12-
EXTENSION("interbase", "interbase.c ibase_query.c ibase_service.c ibase_events.c ibase_blobs.c", PHP_INTERBASE_SHARED, "/DZEND_ENABLE_STATIC_TSRMLS_CACHE=1");
6+
if (
7+
CHECK_HEADER_ADD_INCLUDE("ibase.h", "CFLAGS_INTERBASE", PHP_INTERBASE + "\\include") && (
8+
CHECK_LIB("fbclient_ms.lib", "interbase", PHP_INTERBASE + "\\lib") ||
9+
CHECK_LIB("gds32_ms.lib", "interbase", PHP_INTERBASE + "\\lib")
10+
)
11+
) {
12+
EXTENSION("interbase", "interbase.c ibase_query.c ibase_service.c ibase_events.c ibase_blobs.c pdo_firebird_utils.cpp", PHP_INTERBASE_SHARED, "/DZEND_ENABLE_STATIC_TSRMLS_CACHE=1");
1313
AC_DEFINE('HAVE_IBASE', 1, 'Have interbase library');
1414
} else {
1515
WARNING("interbase not enabled; libraries and headers not found");

0 commit comments

Comments
 (0)