2013-06-06 01:53:30 +02:00
|
|
|
################################################################################
|
2012-04-17 16:35:16 +02:00
|
|
|
#
|
|
|
|
# apr
|
|
|
|
#
|
2013-06-06 01:53:30 +02:00
|
|
|
################################################################################
|
2013-06-06 01:53:25 +02:00
|
|
|
|
2023-02-28 23:16:25 +01:00
|
|
|
APR_VERSION = 1.7.2
|
2017-05-21 17:21:04 +02:00
|
|
|
APR_SOURCE = apr-$(APR_VERSION).tar.bz2
|
2022-04-01 20:05:17 +02:00
|
|
|
APR_SITE = https://archive.apache.org/dist/apr
|
2013-03-24 09:19:27 +01:00
|
|
|
APR_LICENSE = Apache-2.0
|
|
|
|
APR_LICENSE_FILES = LICENSE
|
2021-12-05 09:49:00 +01:00
|
|
|
APR_CPE_ID_VENDOR = apache
|
|
|
|
APR_CPE_ID_PRODUCT = portable_runtime
|
2012-04-17 16:35:16 +02:00
|
|
|
APR_INSTALL_STAGING = YES
|
2014-10-05 19:39:00 +02:00
|
|
|
# We have a patch touching configure.in and Makefile.in,
|
|
|
|
# so we need to autoreconf:
|
|
|
|
APR_AUTORECONF = YES
|
2015-05-21 19:19:08 +02:00
|
|
|
|
2023-02-28 23:16:25 +01:00
|
|
|
APR_CONF_OPTS = --disable-sctp
|
2022-03-31 23:00:46 +02:00
|
|
|
|
2019-09-23 21:57:11 +02:00
|
|
|
# avoid apr_hints.m4 by setting apr_preload_done=yes and set
|
|
|
|
# the needed CFLAGS on our own (avoids '-D_REENTRANT' in case
|
|
|
|
# not supported by toolchain and subsequent configure failure)
|
|
|
|
APR_CFLAGS = $(TARGET_CFLAGS) -DLINUX -D_GNU_SOURCE
|
|
|
|
ifeq ($(BR2_TOOLCHAIN_HAS_THREADS),y)
|
|
|
|
APR_CFLAGS += -D_REENTRANT
|
|
|
|
endif
|
|
|
|
|
2012-04-17 16:35:16 +02:00
|
|
|
APR_CONF_ENV = \
|
2014-10-05 19:39:00 +02:00
|
|
|
CC_FOR_BUILD="$(HOSTCC)" \
|
|
|
|
CFLAGS_FOR_BUILD="$(HOST_CFLAGS)" \
|
2019-09-23 21:57:11 +02:00
|
|
|
CFLAGS="$(APR_CFLAGS)" \
|
2012-04-17 16:35:16 +02:00
|
|
|
ac_cv_file__dev_zero=yes \
|
2023-02-28 23:16:25 +01:00
|
|
|
ac_cv_mmap__dev_zero=yes \
|
2012-04-17 16:35:16 +02:00
|
|
|
ac_cv_func_setpgrp_void=yes \
|
|
|
|
apr_cv_process_shared_works=yes \
|
|
|
|
apr_cv_mutex_robust_shared=no \
|
|
|
|
apr_cv_tcp_nodelay_with_cork=yes \
|
|
|
|
ac_cv_sizeof_struct_iovec=8 \
|
2017-03-21 14:23:56 +01:00
|
|
|
ac_cv_sizeof_pid_t=4 \
|
2014-10-05 19:38:49 +02:00
|
|
|
ac_cv_struct_rlimit=yes \
|
2023-02-28 23:16:25 +01:00
|
|
|
ac_cv_strerror_r_rc_int=no \
|
2014-10-05 19:39:01 +02:00
|
|
|
ac_cv_o_nonblock_inherited=no \
|
2019-01-17 20:36:30 +01:00
|
|
|
apr_cv_mutex_recursive=yes \
|
|
|
|
apr_cv_epoll=yes \
|
|
|
|
apr_cv_epoll_create1=yes \
|
|
|
|
apr_cv_dup3=yes \
|
|
|
|
apr_cv_sock_cloexec=yes \
|
2019-09-23 21:57:11 +02:00
|
|
|
apr_cv_accept4=yes \
|
|
|
|
apr_preload_done=yes
|
2013-03-24 09:19:27 +01:00
|
|
|
APR_CONFIG_SCRIPTS = apr-1-config
|
|
|
|
|
2013-11-27 13:53:04 +01:00
|
|
|
# Doesn't even try to guess when cross compiling
|
|
|
|
ifeq ($(BR2_TOOLCHAIN_HAS_THREADS),y)
|
|
|
|
APR_CONF_ENV += apr_cv_pthreads_lib="-lpthread"
|
|
|
|
endif
|
|
|
|
|
2014-10-05 19:38:49 +02:00
|
|
|
# Fix lfs detection when cross compiling
|
|
|
|
APR_CONF_ENV += apr_cv_use_lfs64=yes
|
|
|
|
|
2019-09-04 21:33:15 +02:00
|
|
|
# Use non-portable atomics when available. 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_TOOLCHAIN_HAS_SYNC_8),y)
|
2016-02-02 16:31:24 +01:00
|
|
|
APR_CONF_OPTS += --enable-nonportable-atomics
|
|
|
|
APR_CONF_ENV += ap_cv_atomic_builtins=yes
|
|
|
|
else
|
|
|
|
APR_CONF_OPTS += --disable-nonportable-atomics
|
|
|
|
endif
|
|
|
|
|
2015-05-21 19:19:08 +02:00
|
|
|
ifeq ($(BR2_PACKAGE_UTIL_LINUX_LIBUUID),y)
|
|
|
|
APR_DEPENDENCIES += util-linux
|
|
|
|
endif
|
|
|
|
|
2013-03-24 09:19:27 +01:00
|
|
|
define APR_CLEANUP_UNNEEDED_FILES
|
|
|
|
$(RM) -rf $(TARGET_DIR)/usr/build-1/
|
|
|
|
endef
|
|
|
|
|
|
|
|
APR_POST_INSTALL_TARGET_HOOKS += APR_CLEANUP_UNNEEDED_FILES
|
|
|
|
|
|
|
|
define APR_FIXUP_RULES_MK
|
|
|
|
$(SED) 's%apr_builddir=%apr_builddir=$(STAGING_DIR)%' \
|
|
|
|
$(STAGING_DIR)/usr/build-1/apr_rules.mk
|
|
|
|
$(SED) 's%apr_builders=%apr_builders=$(STAGING_DIR)%' \
|
|
|
|
$(STAGING_DIR)/usr/build-1/apr_rules.mk
|
2014-10-05 19:39:00 +02:00
|
|
|
$(SED) 's%top_builddir=%top_builddir=$(STAGING_DIR)%' \
|
|
|
|
$(STAGING_DIR)/usr/build-1/apr_rules.mk
|
2013-03-24 09:19:27 +01:00
|
|
|
endef
|
|
|
|
|
|
|
|
APR_POST_INSTALL_STAGING_HOOKS += APR_FIXUP_RULES_MK
|
2012-04-17 16:35:16 +02:00
|
|
|
|
2012-07-03 00:07:32 +02:00
|
|
|
$(eval $(autotools-package))
|