summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrzej J.R. Hunt <andrzej@ahunt.org>2013-06-21 21:23:59 +0100
committerAndrzej J.R. Hunt <andrzej@ahunt.org>2013-06-21 21:23:59 +0100
commit0981fd7a1f054f8344b5e525d3a79f0fd23ec9af (patch)
tree6784ff159cb3385215e8edb4c2fcad9eb4010da8
parent747f7fc9a9a85751bf83946adb6571ba534029d8 (diff)
Patch Firebird to use LO icu.
Previously Firebird built it's bundled icu leading to extra libraries and path issues. Change-Id: Ib27e364da3b7e5bc56c7a784c0525426d635bf16
-rw-r--r--RepositoryExternal.mk2
-rw-r--r--firebird/ExternalPackage_firebird.mk25
-rw-r--r--firebird/ExternalProject_firebird.mk17
-rw-r--r--firebird/UnpackedTarball_firebird.mk4
-rw-r--r--firebird/firebird-icu.patch.158
5 files changed, 72 insertions, 34 deletions
diff --git a/RepositoryExternal.mk b/RepositoryExternal.mk
index 2062b0a32a8a..09b207fecb22 100644
--- a/RepositoryExternal.mk
+++ b/RepositoryExternal.mk
@@ -2220,8 +2220,6 @@ ifeq ($(ENABLE_FIREBIRD_SDBC),TRUE)
ifeq ($(SYSTEM_FIREBIRD),YES)
-$(call gb_LinkTarget__use_libatomic_ops,$(1))
-
define gb_LinkTarget__use_firebird
$(call gb_LinkTarget_set_include,$(1),\
$(FIREBIRD_CFLAGS) \
diff --git a/firebird/ExternalPackage_firebird.mk b/firebird/ExternalPackage_firebird.mk
index 4d72c9b86dbe..0a003d65266d 100644
--- a/firebird/ExternalPackage_firebird.mk
+++ b/firebird/ExternalPackage_firebird.mk
@@ -45,29 +45,4 @@ $(eval $(call gb_ExternalPackage_add_file,firebird,libfbembed.so.2.5.2,gen/fireb
$(eval $(call gb_ExternalPackage_add_file,firebird,libfbembed.so.2.5,gen/firebird/lib/libfbembed.so.2.5))
$(eval $(call gb_ExternalPackage_add_file,firebird,libfbembed.so,gen/firebird/lib/libfbembed.so))
-$(eval $(call gb_ExternalPackage_add_files,firebird,firebird,\
- gen/firebird/firebird.msg \
- gen/firebird/security2.fdb \
-))
-
-$(eval $(call gb_ExternalPackage_add_files,firebird,firebird/bin,\
- gen/firebird/bin/isql \
-))
-
-$(eval $(call gb_ExternalPackage_add_files,firebird,firebird/lib,\
- gen/firebird/lib/libfbembed.so.2.5.2 \
- gen/firebird/lib/libfbembed.so.2.5 \
- gen/firebird/lib/libfbembed.so \
- gen/firebird/lib/libicudata.so \
- gen/firebird/lib/libicudata.so.30 \
- gen/firebird/lib/libicudata.so.30.0 \
- gen/firebird/lib/libicuuc.so \
- gen/firebird/lib/libicuuc.so.30 \
- gen/firebird/lib/libicuuc.so.30.0 \
- gen/firebird/lib/libicui18n.so \
- gen/firebird/lib/libicui18n.so.30 \
- gen/firebird/lib/libicui18n.so.30.0 \
-))
-
-
# vim: set noet sw=4 ts=4:
diff --git a/firebird/ExternalProject_firebird.mk b/firebird/ExternalProject_firebird.mk
index 903e5c64999b..ca28dbb85197 100644
--- a/firebird/ExternalProject_firebird.mk
+++ b/firebird/ExternalProject_firebird.mk
@@ -31,17 +31,20 @@ $(eval $(call gb_ExternalProject_register_targets,firebird,\
$(call gb_ExternalProject_get_state_target,firebird,build):
$(call gb_ExternalProject_run,build,\
- unset MAKEFLAGS && \
- export CFLAGS="$(if $(filter TRUE,$(DISABLE_DYNLOADING)),-fvisibility=hidden)" \
- && LDFLAGS="-L$(OUTDIR)/lib \
- $(if $(filter LINUX FREEBSD,$(OS)),-Wl$(COMMA)-z$(COMMA)origin -Wl$(COMMA)-rpath$(COMMA)\\"\$$\$$ORIGIN:'\'\$$\$$ORIGIN/../ure-link/lib") \
- $(if $(SYSBASE),$(if $(filter LINUX SOLARIS,$(OS)),-L$(SYSBASE)/lib -L$(SYSBASE)/usr/lib -lpthread -ldl))" \
- && CPPFLAGS="-I$(OUTDIR)/inc/external $(if $(SYSBASE),-I$(SYSBASE)/usr/include)" \
+ unset MAKEFLAGS \
&& export PKG_CONFIG="" \
+ && export CXXFLAGS="-L$(OUTDIR)/lib \
+ $(if $(filter NO,$(SYSTEM_BOOST)),-I$(call gb_UnpackedTarball_get_dir,boost),$(BOOST_CPPFLAGS)) \
+ $(if $(filter NO,$(SYSTEM_ICU)), \
+ -I$(call gb_UnpackedTarball_get_dir,icu)/source \
+ -I$(call gb_UnpackedTarball_get_dir,icu)/source/i18n \
+ -I$(call gb_UnpackedTarball_get_dir,icu)/source/common \
+ ,$(ICU_CPPFLAGS))" \
+ && export LD_LIBRARY_PATH="$(OUTDIR)/lib" \
&& ./configure \
--without-editline \
--disable-superserver \
- $(if $(filter NO,$(SYSTEM_BOOST)),CXXFLAGS=-I$(call gb_UnpackedTarball_get_dir,boost),CXXFLAGS=$(BOOST_CPPFLAGS)) \
+ --with-system-icu --without-fbsample --without-fbsample-db \
$(if $(filter YES,$(CROSS_COMPILING)),--build=$(BUILD_PLATFORM) --host=$(HOST_PLATFORM)) \
$(if $(filter MACOSX,$(OS)),--prefix=/@.__________________________________________________OOO) \
$(if $(filter IOS ANDROID,$(OS)),--disable-shared,--disable-static) \
diff --git a/firebird/UnpackedTarball_firebird.mk b/firebird/UnpackedTarball_firebird.mk
index ebdfab808c78..6ecc5fec8678 100644
--- a/firebird/UnpackedTarball_firebird.mk
+++ b/firebird/UnpackedTarball_firebird.mk
@@ -11,4 +11,8 @@ $(eval $(call gb_UnpackedTarball_UnpackedTarball,firebird))
$(eval $(call gb_UnpackedTarball_set_tarball,firebird,$(FIREBIRD_TARBALL)))
+$(eval $(call gb_UnpackedTarball_add_patches,firebird,\
+ firebird/firebird-icu.patch.1 \
+))
+
# vim: set noet sw=4 ts=4:
diff --git a/firebird/firebird-icu.patch.1 b/firebird/firebird-icu.patch.1
new file mode 100644
index 000000000000..70275ea72293
--- /dev/null
+++ b/firebird/firebird-icu.patch.1
@@ -0,0 +1,58 @@
+Only in firebird: build.log
+diff -ur firebird.org/builds/posix/Makefile.in.examples firebird/builds/posix/Makefile.in.examples
+--- firebird.org/builds/posix/Makefile.in.examples 2013-06-21 20:47:17.047657633 +0100
++++ firebird/builds/posix/Makefile.in.examples 2013-06-21 21:01:45.297638456 +0100
+@@ -53,10 +53,10 @@
+ export PATH
+
+ ifeq ($(PLATFORM),DARWIN)
+-DYLD_LIBRARY_PATH := $(GEN_ROOT)/firebird/lib
++DYLD_LIBRARY_PATH := $(DYLD_LIBRARY_PATH):$(GEN_ROOT)/firebird/lib
+ export DYLD_LIBRARY_PATH
+ else
+-LD_LIBRARY_PATH := $(GEN_ROOT)/firebird/lib
++LD_LIBRARY_PATH := $(LD_LIBRARY_PATH):$(GEN_ROOT)/firebird/lib
+ export LD_LIBRARY_PATH
+ endif
+ GPRE_FLAGS= -r -m -z -n
+Only in firebird/builds/posix: Makefile.in.examples~
+diff -ur firebird.org/builds/posix/Makefile.in.firebird firebird/builds/posix/Makefile.in.firebird
+--- firebird.org/builds/posix/Makefile.in.firebird 2013-06-21 20:47:17.060657632 +0100
++++ firebird/builds/posix/Makefile.in.firebird 2013-06-21 21:12:00.559624868 +0100
+@@ -44,7 +44,7 @@
+ TEST_PATH = @FIREBIRD_BUILD_DIR@
+ # Firebird libs path set at link time (-R) so do not override local requirements - nmcc 28/12/2002
+ #LD_LIBRARY_PATH=$(RealFirebirdPath)/lib
+-LD_LIBRARY_PATH=$(LIB)
++LD_LIBRARY_PATH:=$(LD_LIBRARY_PATH):$(LIB)
+
+ #export ISC_USER
+ #export ISC_PASSWORD
+Only in firebird/builds/posix: Makefile.in.firebird~
+Only in firebird: config.log
+Only in firebird: config.status
+Only in firebird/extern/btyacc: btyacc
+Only in firebird/extern/btyacc: closure.o
+Only in firebird/extern/btyacc: error.o
+Only in firebird/extern/btyacc: lalr.o
+Only in firebird/extern/btyacc: lr0.o
+Only in firebird/extern/btyacc: main.o
+Only in firebird/extern/btyacc: mkpar.o
+Only in firebird/extern/btyacc: mstring.o
+Only in firebird/extern/btyacc: output.o
+Only in firebird/extern/btyacc: reader.o
+Only in firebird/extern/btyacc: readskel.o
+Only in firebird/extern/btyacc: skeleton.o
+Only in firebird/extern/btyacc: symtab.o
+Only in firebird/extern/btyacc: verbose.o
+Only in firebird/extern/btyacc: warshall.o
+Only in firebird: gen
+Only in firebird: libtool
+Only in firebird: Makefile
+Only in firebird/src/dsql: dsql.tab.h
+Only in firebird/src/dsql: parse.cpp
+Only in firebird/src/gpre: gpre_meta.cpp
+Only in firebird/src/include/gen: autoconfig.h
+Only in firebird/src/include/gen: blrtable.h
+Only in firebird/src/misc: codes.cpp
+Only in firebird: temp