|
@@ -35,6 +35,21 @@ endif
|
|
|
# Fix lfs detection when cross compiling
|
|
|
APR_CONF_ENV += apr_cv_use_lfs64=yes
|
|
|
|
|
|
+# Use non-portable atomics when available: 8 bytes atomics are used on
|
|
|
+# 64-bits architectures, 4 bytes atomics on 32-bits architectures. We
|
|
|
+# have to override ap_cv_atomic_builtins because the test used to
|
|
|
+# check for atomic builtins uses AC_TRY_RUN, which doesn't work when
|
|
|
+# cross-compiling.
|
|
|
+ifeq ($(BR2_ARCH_IS_64):$(BR2_TOOLCHAIN_HAS_SYNC_8),y:y)
|
|
|
+APR_CONF_OPTS += --enable-nonportable-atomics
|
|
|
+APR_CONF_ENV += ap_cv_atomic_builtins=yes
|
|
|
+else ifeq ($(BR2_ARCH_IS_64):$(BR2_TOOLCHAIN_HAS_SYNC_4),:y)
|
|
|
+APR_CONF_OPTS += --enable-nonportable-atomics
|
|
|
+APR_CONF_ENV += ap_cv_atomic_builtins=yes
|
|
|
+else
|
|
|
+APR_CONF_OPTS += --disable-nonportable-atomics
|
|
|
+endif
|
|
|
+
|
|
|
ifeq ($(BR2_PACKAGE_UTIL_LINUX_LIBUUID),y)
|
|
|
APR_DEPENDENCIES += util-linux
|
|
|
endif
|