summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--RepositoryExternal.mk9
-rw-r--r--configure.ac27
-rw-r--r--external/firebird/ExternalProject_firebird.mk12
-rw-r--r--external/libatomic_ops/Module_libatomic_ops.mk4
4 files changed, 34 insertions, 18 deletions
diff --git a/RepositoryExternal.mk b/RepositoryExternal.mk
index 32711b407980..4228803fae33 100644
--- a/RepositoryExternal.mk
+++ b/RepositoryExternal.mk
@@ -703,15 +703,10 @@ $(LIBATOMIC_OPS_CFLAGS) \
$(call gb_LinkTarget_use_external_project,$(1),\
libatomic_ops \
)
-ifeq ($(COM),MSC)
-$(call gb_LinkTarget_add_libs,$(1),\
- $(call gb_UnpackedTarball_get_dir,libatomic_ops)/src/lib/.libs/libatomic_ops-7.2d.lib \
-)
-else
+
$(call gb_LinkTarget_add_libs,$(1),\
- -L$(call gb_UnpackedTarball_get_dir,libatomic_ops)/src/lib/.libs -latomic_ops-7.2d \
+ -L$(call gb_UnpackedTarball_get_dir,libatomic_ops)/src/lib -latomic_ops \
)
-endif
endef
diff --git a/configure.ac b/configure.ac
index 3fbfdcdb169e..b92cb4d22c16 100644
--- a/configure.ac
+++ b/configure.ac
@@ -8468,14 +8468,22 @@ if test "x$enable_firebird_sdbc" = "xyes"; then
elif test "$cross_compiling" = "yes"; then
AC_MSG_RESULT([none])
else
- dnl ===================================================================
- dnl Check for system libatomic-ops
- dnl ===================================================================
- libo_CHECK_SYSTEM_MODULE([libatomic_ops],[ATOMIC_OPS],[atomic_ops >= 0.7.2])
- if test "$with_system_libatomic_ops" = "yes"; then
- SYSTEM_LIBATOMIC_OPS=YES
- AC_CHECK_HEADERS(atomic_ops.h, [],
- [AC_MSG_ERROR(atomic_ops.h not found. install libatomic-ops)], [])
+ dnl We need libatomic-ops for any non X86/X64 system
+ if test "$CPU" != I -a "$CPU" != X; then
+ dnl ===================================================================
+ dnl Check for system libatomic-ops
+ dnl ===================================================================
+ libo_CHECK_SYSTEM_MODULE([libatomic_ops],[ATOMIC_OPS],[atomic_ops >= 0.7.2])
+ if test "$with_system_libatomic_ops" = "yes"; then
+ SYSTEM_LIBATOMIC_OPS=YES
+ AC_CHECK_HEADERS(atomic_ops.h, [],
+ [AC_MSG_ERROR(atomic_ops.h not found. install libatomic-ops)], [])
+ else
+ SYSTEM_LIBATOMIC_OPS=NO
+ LIBATOMIC_OPS_CFLAGS="-I${WORKDIR}/UnpackedTarball/libatomic_ops/include"
+ LIBATOMIC_OPS_LIBS="-latomic_ops"
+ BUILD_TYPE="$BUILD_TYPE LIBATOMIC_OPS"
+ fi
fi
AC_MSG_RESULT([internal])
@@ -8489,6 +8497,9 @@ if test "x$enable_firebird_sdbc" = "xyes"; then
fi
AC_SUBST(ENABLE_FIREBIRD_SDBC)
+AC_SUBST(SYSTEM_LIBATOMIC_OPS)
+AC_SUBST(LIBATOMIC_OPS_CFLAGS)
+AC_SUBST(LIBATOMIC_OPS_LIBS)
AC_SUBST(SYSTEM_FIREBIRD)
AC_SUBST(FIREBIRD_CFLAGS)
AC_SUBST(FIREBIRD_LIBS)
diff --git a/external/firebird/ExternalProject_firebird.mk b/external/firebird/ExternalProject_firebird.mk
index b87b4d3e0e43..97db740b8065 100644
--- a/external/firebird/ExternalProject_firebird.mk
+++ b/external/firebird/ExternalProject_firebird.mk
@@ -29,16 +29,22 @@ $(call gb_ExternalProject_get_state_target,firebird,build):
$(call gb_ExternalProject_run,build,\
unset MAKEFLAGS \
&& export PKG_CONFIG="" \
+ && export CPPFLAGS=" \
+ $(if $(filter NO,$(SYSTEM_LIBATOMIC_OPS)), \
+ -I$(call gb_UnpackedTarball_get_dir,libatomic_ops)/src \
+ ,$(LIBATOMIC_OPS_CFLAGS)) \
+ " \
&& export CXXFLAGS=" \
$(if $(filter NO,$(SYSTEM_BOOST)), \
- -I$(call gb_UnpackedTarball_get_dir,boost),$(BOOST_CPPFLAGS) \
- -L$(call gb_UnpackedTarball_get_dir,boost)/source/lib) \
+ -I$(call gb_UnpackedTarball_get_dir,boost) \
+ -L$(call gb_UnpackedTarball_get_dir,boost)/source/lib \
+ ,$(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 \
+ -L$(call gb_UnpackedTarball_get_dir,icu)/source/lib \
,$(ICU_CPPFLAGS)) \
- -L$(call gb_UnpackedTarball_get_dir,icu)/source/lib \
" \
&& ./configure \
--without-editline \
diff --git a/external/libatomic_ops/Module_libatomic_ops.mk b/external/libatomic_ops/Module_libatomic_ops.mk
index 7dca6703c868..0a9a534630de 100644
--- a/external/libatomic_ops/Module_libatomic_ops.mk
+++ b/external/libatomic_ops/Module_libatomic_ops.mk
@@ -9,9 +9,13 @@
$(eval $(call gb_Module_Module,libatomic_ops))
+ifeq ($(SYSTEM_LIBATOMIC_OPS),NO)
+
$(eval $(call gb_Module_add_targets,libatomic_ops,\
ExternalProject_libatomic_ops \
UnpackedTarball_libatomic_ops \
))
+endif
+
# vim: set noet sw=4 ts=4: