mirror of
https://git.freebsd.org/ports.git
synced 2025-07-18 01:39:16 -04:00
- update apr to 1.5.1
- use OPTIONS_SUB instead PLIST_SUB - remove back ported patch - use POSIX instead SysV SHM - remove LDFLAGS from CONFIGURE_ENV (unbreak auto. testing) Changes for APR 1.5.1 *) apr_os_proc_mutex_get() on Unix: Avoid segfault for cross- process pthread mutexes. [Yann Ylavic <ylavic.dev gmail.com>] *) When using shmget-based shared memory, the ID used for ftok is now an APR hash of the filename instead of the constant '1'. We do this to help avoid collisions. PR 53996 [Jim Jagielski] *) apr_socket_atreadeof(): Fix breakage on OS X. [Jim Jagielski] *) Fix POSIX shared memory (shm_open) use for named shared memory. Includes adding '--enable-posix-shm' to force POSIX shm if available, and OS X compatibility. PR 55928. [Jozef Hatala <jh-asf skrt org>, Jim Jagielski] *) Fix race condition when calling apr_dir_make_recursive from multiple threads on Windows. [Bert Huijben] *) Fix apr_escape.c compilation errors on EBCDIC platforms. [Eric Covener] *) FreeBSD 10: Correct a regression in 1.5.0 which affected non- blocking sockets in some applications, including httpd. [Jeff Trawick] *) apr_skiplist: Add compatibility with C++ applications. [Jeff Trawick] *) Correct a regression in 1.5.0 which affected out-of-tree builds on Unix. [Rainer Jung] *) Improve platform detection for bundled expat by updating config.guess and config.sub. [Rainer Jung] with hat apache@
This commit is contained in:
parent
d89fbee9e3
commit
d94172244d
Notes:
svn2git
2021-03-31 03:12:20 +00:00
svn path=/head/; revision=351698
5 changed files with 16 additions and 81 deletions
|
@ -13,7 +13,7 @@ COMMENT= Apache Portability Library
|
|||
|
||||
LIB_DEPENDS= libexpat.so:${PORTSDIR}/textproc/expat2
|
||||
|
||||
|
||||
OPTIONS_SUB= yes
|
||||
OPTIONS_GROUP= APR APU
|
||||
OPTIONS_GROUP_APR= THREADS IPV6 DEVRANDOM
|
||||
OPTIONS_GROUP_APU= BDB GDBM LDAP MYSQL NDBM PGSQL SQLITE FREETDS
|
||||
|
@ -26,7 +26,7 @@ NDBM_DESC= NDBM support
|
|||
SSL_DESC= OpenSSL crypto driver
|
||||
NSS_DESC= NSS crypto driver
|
||||
|
||||
APR_VERSION= 1.5.0
|
||||
APR_VERSION= 1.5.1
|
||||
APU_VERSION= 1.5.3
|
||||
|
||||
USES= iconv pathfix
|
||||
|
@ -41,7 +41,8 @@ PLIST_SUB+= SHLIB_APR_MAJOR="${SHLIB_APR_MAJOR}" SHLIB_APU_MAJOR="${SHLIB_APU_MA
|
|||
SHLIB_APR_MAJOR= 5
|
||||
SHLIB_APU_MAJOR= 5
|
||||
|
||||
APR_CONF_ARGS= --with-installbuilddir=${DATADIR}/build-1
|
||||
APR_CONF_ARGS= --with-installbuilddir=${DATADIR}/build-1 \
|
||||
--enable-posix-shm
|
||||
APU_CONF_ARGS= --with-apr=${APR_WRKDIR} \
|
||||
--with-expat=${LOCALBASE} \
|
||||
--with-iconv=${ICONV_PREFIX}
|
||||
|
@ -69,87 +70,71 @@ APR_CONF_ARGS+= --without-devrandom
|
|||
|
||||
######### APR-Util Options
|
||||
.if ${PORT_OPTIONS:MGDBM}
|
||||
PLIST_SUB+= GDBM=""
|
||||
APU_EXTRAS= yes
|
||||
LIB_DEPENDS+= libgdbm.so:${PORTSDIR}/databases/gdbm
|
||||
APU_CONF_ARGS+= --with-gdbm=${LOCALBASE}
|
||||
.else
|
||||
PLIST_SUB+= GDBM="@comment "
|
||||
APU_CONF_ARGS+= --without-gdbm
|
||||
.endif
|
||||
|
||||
.if ${PORT_OPTIONS:MBDB}
|
||||
APU_EXTRAS= yes
|
||||
PLIST_SUB+= BDB=""
|
||||
USE_BDB= 48+
|
||||
APU_CONF_ARGS+= --with-berkeley-db=${BDB_INCLUDE_DIR}:${BDB_LIB_DIR}
|
||||
.else
|
||||
PLIST_SUB+= BDB="@comment "
|
||||
APU_CONF_ARGS+= --without-berkeley-db
|
||||
.endif
|
||||
|
||||
.if ${PORT_OPTIONS:MNDBM}
|
||||
APU_EXTRAS= yes
|
||||
PLIST_SUB+= NDBM=""
|
||||
APU_CONF_ARGS+= --with-ndbm=/usr
|
||||
.else
|
||||
PLIST_SUB+= NDBM="@comment "
|
||||
APU_CONF_ARGS+= --without-ndbm
|
||||
.endif
|
||||
|
||||
.if ${PORT_OPTIONS:MLDAP}
|
||||
APU_EXTRAS= yes
|
||||
PLIST_SUB+= LDAP=""
|
||||
USE_OPENLDAP= yes
|
||||
APU_CONF_ARGS+= --with-ldap-include=${LOCALBASE}/include \
|
||||
--with-ldap-lib=${LOCALBASE}/lib --with-ldap=ldap
|
||||
.else
|
||||
PLIST_SUB+= LDAP="@comment "
|
||||
APU_CONF_ARGS+= --without-ldap
|
||||
.endif
|
||||
|
||||
.if ${PORT_OPTIONS:MFREETDS}
|
||||
APU_EXTRAS= yes
|
||||
PLIST_SUB+= FREETDS=""
|
||||
APU_CONF_ARGS+= --with-freetds=${LOCALBASE}
|
||||
LIB_DEPENDS+= libsybdb.so:${PORTSDIR}/databases/freetds
|
||||
.else
|
||||
PLIST_SUB+= FREETDS="@comment "
|
||||
APU_CONF_ARGS+= --without-freetds
|
||||
.endif
|
||||
|
||||
.if ${PORT_OPTIONS:MMYSQL}
|
||||
APU_EXTRAS= yes
|
||||
PLIST_SUB+= MYSQL=""
|
||||
USE_MYSQL= YES
|
||||
USE_MYSQL= yes
|
||||
APU_CONF_ARGS+= --with-mysql=${LOCALBASE}
|
||||
CONFIGURE_ENV+= LIBS="${LIBS}"
|
||||
CPPFLAGS+= -I${LOCALBASE}/include -I${LOCALBASE}/include/mysql -DHAVE_MYSQL_H
|
||||
LDFLAGS+= -L${LOCALBASE}/lib/mysql
|
||||
.else
|
||||
PLIST_SUB+= MYSQL="@comment "
|
||||
APU_CONF_ARGS+= --without-mysql
|
||||
.endif
|
||||
|
||||
.if ${PORT_OPTIONS:MPGSQL}
|
||||
APU_EXTRAS= yes
|
||||
PLIST_SUB+= PGSQL=""
|
||||
USE_PGSQL= YES
|
||||
USE_PGSQL= yes
|
||||
APU_CONF_ARGS+= --with-pgsql=${LOCALBASE}
|
||||
CONFIGURE_ENV+= ac_cv_path_PGSQL_CONFIG=""
|
||||
.else
|
||||
PLIST_SUB+= PGSQL="@comment "
|
||||
APU_CONF_ARGS+= --without-pgsql
|
||||
.endif
|
||||
|
||||
.if ${PORT_OPTIONS:MSQLITE}
|
||||
APU_EXTRAS= yes
|
||||
PLIST_SUB+= SQLITE3=""
|
||||
USE_SQLITE= YES
|
||||
USE_SQLITE= yes
|
||||
APU_CONF_ARGS+= --with-sqlite3=${LOCALBASE}
|
||||
.else
|
||||
APU_CONF_ARGS+= --without-sqlite3
|
||||
PLIST_SUB+= SQLITE3="@comment "
|
||||
.endif
|
||||
|
||||
# crypto (apache24)
|
||||
|
@ -160,28 +145,22 @@ APU_CONF_ARGS+= --with-crypto
|
|||
.if ${PORT_OPTIONS:MSSL}
|
||||
APU_EXTRAS= yes
|
||||
USE_OPENSSL= yes
|
||||
PLIST_SUB+= SSL=""
|
||||
CPPFLAGS+= -I${OPENSSLINC}
|
||||
LDFLAGS+= -L${OPENSSLLIB}
|
||||
APU_CONF_ARGS+= --with-openssl=${OPENSSLBASE}
|
||||
.else
|
||||
PLIST_SUB+= SSL="@comment "
|
||||
APU_CONF_ARGS+= --without-openssl
|
||||
.endif
|
||||
|
||||
.if ${PORT_OPTIONS:MNSS}
|
||||
APU_EXTRAS= yes
|
||||
PLIST_SUB+= NSS=""
|
||||
LIB_DEPENDS+= libnss3.so:${PORTSDIR}/security/nss
|
||||
CPPFLAGS+= -I${LOCALBASE}/include/nss
|
||||
LDFLAGS+= -L${LOCALBASE}/lib/nss
|
||||
APU_CONF_ARGS+= --with-nss=${LOCALBASE}
|
||||
.else
|
||||
PLIST_SUB+= NSS="@comment "
|
||||
.endif
|
||||
|
||||
CONFIGURE_ENV+= CC="${CC}" CFLAGS="${CFLAGS}" CPPFLAGS="${CPPFLAGS}" \
|
||||
LDFLAGS="${LDFLAGS}"
|
||||
CONFIGURE_ENV+= CC="${CC}" CFLAGS="${CFLAGS}" CPPFLAGS="${CPPFLAGS}"
|
||||
|
||||
.if defined(APU_EXTRAS)
|
||||
PLIST_SUB+= APU_EXTRAS=""
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
SHA256 (apr-1.5.0.tar.gz) = 9879f02054cb22e99f605f6fdbf47f4c028af4cd4f351cf64186a7ee447f35d7
|
||||
SIZE (apr-1.5.0.tar.gz) = 1016391
|
||||
SHA256 (apr-1.5.1.tar.gz) = 94b1c9d9835cc9e902838b95d62ecc9a39b698f23e3e706812ec65a78ba41af7
|
||||
SIZE (apr-1.5.1.tar.gz) = 1020833
|
||||
SHA256 (apr-util-1.5.3.tar.gz) = 76db34cb508e346e3bf69347c29ed1500bf0b71bcc48d54271ad9d1c25703743
|
||||
SIZE (apr-util-1.5.3.tar.gz) = 874462
|
||||
|
|
|
@ -1,44 +0,0 @@
|
|||
Fix the inheritance of the non-blocking option across apr_socket_accept()
|
||||
on FreeBSD 10 which was introduced with APR 1.5.0 through an unlikely
|
||||
mechanism:
|
||||
|
||||
* FreeBSD 10 introduced accept4(). APR uses accept4() where it can find it.
|
||||
accept4() on Linux and FreeBSD 10 both have a SOCK_NONBLOCK flag, but on
|
||||
FreeBSD 10 the SOCK_NONBLOCK is the sole determiner of whether or not the
|
||||
connected socket is non-blocking.
|
||||
* clang is normally used on FreeBSD 10.
|
||||
* APR's configure-time check for inherited O_NONBLOCK didn't work with clang,
|
||||
so initially the lack of inheritance across accept4() wasn't a problem.
|
||||
* APR 1.5.0 allowed the configure-time check to work with clang, exposing
|
||||
the bad expectation about accept4() matching the accept() behavior.
|
||||
|
||||
With FreeBSD accept4() (avail in 10+), O_NONBLOCK is not inherited
|
||||
(unlike Linux). Mimic the accept() behavior here in a way that
|
||||
may help other platforms as well.
|
||||
|
||||
http://svn.apache.org/viewvc?view=revision&revision=1551672
|
||||
===================================================================================
|
||||
--- ./apr-1.5.0/network_io/unix/sockets.c.orig 2011-03-23 19:50:21.000000000 +0100
|
||||
+++ ./apr-1.5.0/network_io/unix/sockets.c 2014-03-22 18:52:57.000000000 +0100
|
||||
@@ -207,7 +207,20 @@
|
||||
sa.salen = sizeof(sa.sa);
|
||||
|
||||
#ifdef HAVE_ACCEPT4
|
||||
- s = accept4(sock->socketdes, (struct sockaddr *)&sa.sa, &sa.salen, SOCK_CLOEXEC);
|
||||
+ {
|
||||
+ int flags = SOCK_CLOEXEC;
|
||||
+
|
||||
+#if defined(SOCK_NONBLOCK) && APR_O_NONBLOCK_INHERITED
|
||||
+ /* With FreeBSD accept4() (avail in 10+), O_NONBLOCK is not inherited
|
||||
+ * (unlike Linux). Mimic the accept() behavior here in a way that
|
||||
+ * may help other platforms.
|
||||
+ */
|
||||
+ if (apr_is_option_set(sock, APR_SO_NONBLOCK) == 1) {
|
||||
+ flags |= SOCK_NONBLOCK;
|
||||
+ }
|
||||
+#endif
|
||||
+ s = accept4(sock->socketdes, (struct sockaddr *)&sa.sa, &sa.salen, flags);
|
||||
+ }
|
||||
#else
|
||||
s = accept(sock->socketdes, (struct sockaddr *)&sa.sa, &sa.salen);
|
||||
#endif
|
|
@ -1,5 +1,5 @@
|
|||
--- ./apr-1.5.0/configure.orig 2014-03-22 18:52:57.000000000 +0100
|
||||
+++ ./apr-1.5.0/configure 2014-03-22 18:52:57.000000000 +0100
|
||||
--- ./apr-1.5.1/configure.orig 2014-03-22 18:52:57.000000000 +0100
|
||||
+++ ./apr-1.5.1/configure 2014-03-22 18:52:57.000000000 +0100
|
||||
@@ -6622,11 +6622,7 @@
|
||||
apr_lock_method="USE_FLOCK_SERIALIZE"
|
||||
fi
|
||||
|
|
|
@ -91,10 +91,10 @@ include/apr-1/apu_want.h
|
|||
%%PGSQL%%lib/apr-util-1/apr_dbd_pgsql.a
|
||||
%%PGSQL%%lib/apr-util-1/apr_dbd_pgsql.la
|
||||
%%PGSQL%%lib/apr-util-1/apr_dbd_pgsql.so
|
||||
%%SQLITE3%%lib/apr-util-1/apr_dbd_sqlite3-1.so
|
||||
%%SQLITE3%%lib/apr-util-1/apr_dbd_sqlite3.a
|
||||
%%SQLITE3%%lib/apr-util-1/apr_dbd_sqlite3.la
|
||||
%%SQLITE3%%lib/apr-util-1/apr_dbd_sqlite3.so
|
||||
%%SQLITE%%lib/apr-util-1/apr_dbd_sqlite3-1.so
|
||||
%%SQLITE%%lib/apr-util-1/apr_dbd_sqlite3.a
|
||||
%%SQLITE%%lib/apr-util-1/apr_dbd_sqlite3.la
|
||||
%%SQLITE%%lib/apr-util-1/apr_dbd_sqlite3.so
|
||||
%%BDB%%lib/apr-util-1/apr_dbm_db-1.so
|
||||
%%BDB%%lib/apr-util-1/apr_dbm_db.a
|
||||
%%BDB%%lib/apr-util-1/apr_dbm_db.la
|
||||
|
|
Loading…
Add table
Reference in a new issue