apr-util: sync with master
This is a squash of the following cherry-picked commits:27c4723936
03124bf4b4
141bd55316
40c7e95210
1d25dcde24
ea5b746e58
a62c0e599b
a16b294805
c24f5d258b
f6c218e74d
Short summary: - adds external modules (crypto-openssl dbd-mysql dbd-odbc dbd-pgsql dbd-sqlite3 dbm-gdbm ldap) - Makefile and patches are updated and cleaned - adds myself as maintainer - improves the cross-compile setup (via configure variables sed scripts) For more details please check the individual commits provided above. Signed-off-by: Sebastian Kemper <sebastian_ml@gmx.net>
This commit is contained in:
parent
391f5f087e
commit
4cba41ac1d
7 changed files with 423 additions and 54 deletions
|
@ -9,75 +9,161 @@ include $(TOPDIR)/rules.mk
|
|||
|
||||
PKG_NAME:=apr-util
|
||||
PKG_VERSION:=1.6.1
|
||||
PKG_RELEASE:=1
|
||||
PKG_RELEASE:=2
|
||||
|
||||
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
|
||||
PKG_SOURCE_URL:=@APACHE/apr/
|
||||
PKG_HASH:=d3e12f7b6ad12687572a3a39475545a072608f4ba03a6ce8a3778f607dd0035b
|
||||
PKG_MAINTAINER:=Thomas Heil <heil@terminal-consulting.de>
|
||||
PKG_LICENSE:=Apache License
|
||||
PKG_MAINTAINER:=Thomas Heil <heil@terminal-consulting.de>, \
|
||||
Sebastian Kemper <sebastian_ml@gmx.net>
|
||||
|
||||
PKG_LICENSE:=Apache-2.0
|
||||
PKG_LICENSE_FILES:=LICENSE
|
||||
|
||||
PKG_CPE_ID:=cpe:/a:apache:apr-util
|
||||
|
||||
PKG_BUILD_PARALLEL:=1
|
||||
|
||||
PKG_CONFIG_DEPENDS := \
|
||||
CONFIG_PACKAGE_libaprutil-crypto-openssl \
|
||||
CONFIG_PACKAGE_libaprutil-dbd-mysql \
|
||||
CONFIG_PACKAGE_libaprutil-dbd-odbc \
|
||||
CONFIG_PACKAGE_libaprutil-dbd-pgsql \
|
||||
CONFIG_PACKAGE_libaprutil-dbd-sqlite3 \
|
||||
CONFIG_PACKAGE_libaprutil-dbm-gdbm \
|
||||
CONFIG_PACKAGE_libaprutil-ldap
|
||||
|
||||
PKG_FIXUP:=autoreconf
|
||||
PKG_REMOVE_FILES:=aclocal.m4 build/ltmain.sh
|
||||
|
||||
PKG_INSTALL:=1
|
||||
|
||||
include $(INCLUDE_DIR)/package.mk
|
||||
include $(INCLUDE_DIR)/nls.mk
|
||||
|
||||
define Package/libaprutil
|
||||
define Package/libaprutil/Default
|
||||
SECTION:=libs
|
||||
CATEGORY:=Libraries
|
||||
DEPENDS:=+libapr +libexpat +libsqlite3 +libuuid $(ICONV_DEPENDS)
|
||||
TITLE:=Apache Portable Runtime Utility Library
|
||||
URL:=http://apr.apache.org/
|
||||
endef
|
||||
|
||||
TARGET_CFLAGS += $(FPIC)
|
||||
TARGET_CPPFLAGS += -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE
|
||||
define Package/libaprutil
|
||||
$(call Package/libaprutil/Default)
|
||||
DEPENDS:=+libapr +libexpat +libuuid $(ICONV_DEPENDS)
|
||||
TITLE:=Apache Portable Runtime Utility Library
|
||||
endef
|
||||
|
||||
CONFIGURE_ARGS += \
|
||||
--with-pgsql=no \
|
||||
--with-apr="$(STAGING_DIR)/usr/bin/apr-1-config" \
|
||||
--with-expat="$(STAGING_DIR)/usr" \
|
||||
--without-sqlite2 \
|
||||
--with-sqlite3="$(STAGING_DIR)/usr"
|
||||
--with-iconv="$(ICONV_PREFIX)" \
|
||||
--without-sqlite2
|
||||
|
||||
ifdef $(CONFIG_BUILD_NLS)
|
||||
CONFIGURE_ARGS += --with-iconv="$(ICONV_PREFIX)"
|
||||
ifneq ($(CONFIG_PACKAGE_libaprutil-crypto-openssl),)
|
||||
CONFIGURE_ARGS += --with-crypto --with-openssl="$(STAGING_DIR)/usr"
|
||||
else
|
||||
CONFIGURE_ARGS += --without-iconv
|
||||
CONFIGURE_ARGS += --without-crypto
|
||||
endif
|
||||
|
||||
ifneq ($(CONFIG_PACKAGE_libaprutil-dbd-mysql),)
|
||||
CONFIGURE_ARGS += --with-mysql="$(STAGING_DIR)/usr"
|
||||
else
|
||||
CONFIGURE_ARGS += --without-mysql
|
||||
endif
|
||||
|
||||
ifneq ($(CONFIG_PACKAGE_libaprutil-dbd-odbc),)
|
||||
CONFIGURE_ARGS += --with-odbc="$(STAGING_DIR)/usr"
|
||||
else
|
||||
CONFIGURE_ARGS += --without-odbc
|
||||
endif
|
||||
|
||||
ifneq ($(CONFIG_PACKAGE_libaprutil-dbd-pgsql),)
|
||||
CONFIGURE_ARGS += --with-pgsql="$(STAGING_DIR)/usr"
|
||||
else
|
||||
CONFIGURE_ARGS += --without-pgsql
|
||||
endif
|
||||
|
||||
ifneq ($(CONFIG_PACKAGE_libaprutil-dbd-sqlite3),)
|
||||
CONFIGURE_ARGS += --with-sqlite3="$(STAGING_DIR)/usr"
|
||||
else
|
||||
CONFIGURE_ARGS += --without-sqlite3
|
||||
endif
|
||||
|
||||
ifneq ($(CONFIG_PACKAGE_libaprutil-dbm-gdbm),)
|
||||
CONFIGURE_ARGS += --with-gdbm="$(STAGING_DIR)/usr"
|
||||
else
|
||||
CONFIGURE_ARGS += --without-gdbm
|
||||
endif
|
||||
|
||||
ifneq ($(CONFIG_PACKAGE_libaprutil-ldap),)
|
||||
CONFIGURE_ARGS += \
|
||||
--with-ldap \
|
||||
--with-ldap-include="$(STAGING_DIR)/usr/include" \
|
||||
--with-ldap-lib="$(STAGING_DIR)/usr/lib"
|
||||
else
|
||||
CONFIGURE_ARGS += \
|
||||
--without-ldap
|
||||
endif
|
||||
|
||||
CONFIGURE_VARS += \
|
||||
ac_cv_file_dbd_apr_dbd_mysql_c=no \
|
||||
ac_cv_path_ODBC_CONFIG= \
|
||||
apu_cv_weak_symbols=yes \
|
||||
APR_BUILD_DIR="$(STAGING_DIR)/usr/share/build-1"
|
||||
|
||||
MAKE_FLAGS += \
|
||||
APRUTIL_LIBS="-lsqlite3 $(TARGET_LDFLAGS) -lexpat $(if $(ICONV_FULL),-liconv) -lapr-1 -luuid -lm -lcrypt"
|
||||
ifeq ($(CONFIG_USE_GLIBC)$(CONFIG_USE_MUSL),y)
|
||||
CONFIGURE_VARS += \
|
||||
apu_cv_explicit_bzero=yes
|
||||
endif
|
||||
|
||||
define Package/libaprutil/install/driver
|
||||
$(INSTALL_DIR) $(1)/usr/lib/apr-util-1
|
||||
$(CP) $(PKG_INSTALL_DIR)/usr/lib/apr-util-1/apr_$(2)*.so \
|
||||
$(1)/usr/lib/apr-util-1
|
||||
endef
|
||||
|
||||
define Package/libaprutil/Driver
|
||||
define Package/libaprutil-$(subst _,-,$(1))
|
||||
$(call Package/libaprutil/Default)
|
||||
TITLE:=libaprutil - $(2) driver
|
||||
DEPENDS:=libaprutil $(patsubst +%,+PACKAGE_libaprutil-$(subst _,-,$(1)):%,$(3))
|
||||
endef
|
||||
define Package/libaprutil-$(subst _,-,$(1))/install
|
||||
$(foreach d,$(1),$(call Package/libaprutil/install/driver,$$(1),$(d));)
|
||||
endef
|
||||
$$(eval $$(call BuildPackage,libaprutil-$(subst _,-,$(1))))
|
||||
endef
|
||||
|
||||
# PKG_CONFIG_DEPENDS trigger configure, but the compile afterward may be
|
||||
# incomplete if the build directory is not cleaned before. This is not a
|
||||
# general observation, yet it is valid for apr-util :/
|
||||
define Build/Compile
|
||||
$(call Build/Compile/Default,clean all)
|
||||
endef
|
||||
|
||||
define Build/InstallDev
|
||||
$(INSTALL_DIR) $(1)/usr/bin $(1)/usr/include/apr-1/ $(1)/usr/lib $(1)/usr/lib/pkgconfig/
|
||||
$(CP) $(PKG_INSTALL_DIR)/usr/bin/apu-1-config \
|
||||
$(1)/usr/bin/
|
||||
$(CP) $(PKG_INSTALL_DIR)/usr/include/apr-1/* \
|
||||
$(1)/usr/include/apr-1/
|
||||
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libaprutil-1.{la,a,so*} \
|
||||
$(1)/usr/lib/
|
||||
$(CP) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/apr-util-1.pc \
|
||||
$(1)/usr/lib/pkgconfig/
|
||||
$(SED) 's, -e \"s -I$$$$prefix/lib g\",,g' $(1)/usr/bin/apu-1-config
|
||||
$(SED) 's,^libdir=\"$$$${exec_prefix}/lib,libdir=\"$(STAGING_DIR)/usr/lib,g' $(1)/usr/bin/apu-1-config
|
||||
$(SED) 's,^includedir=\"$$$${prefix}/include/,includedir=\"$(STAGING_DIR)/usr/include/,g' $(1)/usr/bin/apu-1-config
|
||||
$(SED) 's,-L$$$$libdir,,g' $(1)/usr/bin/apu-1-config
|
||||
$(SED) 's,-R$$$$libdir,,g' $(1)/usr/bin/apu-1-config
|
||||
$(INSTALL_DIR) $(1)/usr/bin $(1)/usr/include/apr-1 \
|
||||
$(1)/usr/lib/apr-util-1 $(1)/usr/lib/pkgconfig
|
||||
$(CP) $(PKG_INSTALL_DIR)/usr/bin/apu-1-config $(1)/usr/bin
|
||||
$(CP) $(PKG_INSTALL_DIR)/usr/include/apr-1/* $(1)/usr/include/apr-1
|
||||
$(CP) $(PKG_INSTALL_DIR)/usr/lib/apr-util-1/apr_*.{a,so} \
|
||||
$(1)/usr/lib/apr-util-1 2>/dev/null || :
|
||||
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libaprutil-1.{a,so*} \
|
||||
$(1)/usr/lib
|
||||
$(CP) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/apr-util-1.pc \
|
||||
$(1)/usr/lib/pkgconfig
|
||||
$(SED) '/^prefix=\|^exec_prefix=/s|/usr|$(STAGING_DIR)/usr|' \
|
||||
$(1)/usr/bin/apu-1-config
|
||||
endef
|
||||
|
||||
define Package/libaprutil/install
|
||||
$(INSTALL_DIR) $(1)/usr/lib
|
||||
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libaprutil-1.so.* $(1)/usr/lib/
|
||||
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libaprutil-1.so.* $(1)/usr/lib
|
||||
endef
|
||||
|
||||
$(eval $(call BuildPackage,libaprutil))
|
||||
$(eval $(call Package/libaprutil/Driver,crypto_openssl,OpenSSL,+libopenssl))
|
||||
$(eval $(call Package/libaprutil/Driver,dbd_mysql,MySQL,+libmariadb))
|
||||
$(eval $(call Package/libaprutil/Driver,dbd_odbc,ODBC,+unixodbc))
|
||||
$(eval $(call Package/libaprutil/Driver,dbd_pgsql,PostgreSQL,+libpq))
|
||||
$(eval $(call Package/libaprutil/Driver,dbd_sqlite3,SQLite3,+libsqlite3))
|
||||
$(eval $(call Package/libaprutil/Driver,dbm_gdbm,GDBM dbm,+libgdbm))
|
||||
$(eval $(call Package/libaprutil/Driver,ldap,LDAP,+libopenldap))
|
||||
|
|
|
@ -1,21 +0,0 @@
|
|||
--- a/Makefile.in
|
||||
+++ b/Makefile.in
|
||||
@@ -8,6 +8,7 @@ APRUTIL_MAJOR_VERSION=@APRUTIL_MAJOR_VER
|
||||
APRUTIL_DOTTED_VERSION=@APRUTIL_DOTTED_VERSION@
|
||||
|
||||
srcdir = @srcdir@
|
||||
+top_builddir = @top_builddir@
|
||||
VPATH = @srcdir@
|
||||
|
||||
INCLUDES = @APRUTIL_PRIV_INCLUDES@ @APR_INCLUDES@ @APRUTIL_INCLUDES@
|
||||
--- a/configure.in
|
||||
+++ b/configure.in
|
||||
@@ -41,6 +41,8 @@ AC_SUBST(APU_CONFIG_LOCATION)
|
||||
AC_CANONICAL_SYSTEM
|
||||
|
||||
AC_PROG_INSTALL
|
||||
+AC_PROG_LIBTOOL
|
||||
+LT_INIT
|
||||
|
||||
# Use -no-install or -no-fast-install to link the test
|
||||
# programs on all platforms but Darwin, where it would cause
|
79
libs/apr-util/patches/002-fix-gdbm-error-handling.patch
Normal file
79
libs/apr-util/patches/002-fix-gdbm-error-handling.patch
Normal file
|
@ -0,0 +1,79 @@
|
|||
# https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=889170
|
||||
# needs to be submitted upstream
|
||||
--- apr-util.orig/dbm/apr_dbm_gdbm.c
|
||||
+++ apr-util/dbm/apr_dbm_gdbm.c
|
||||
@@ -36,13 +36,22 @@
|
||||
static apr_status_t g2s(int gerr)
|
||||
{
|
||||
if (gerr == -1) {
|
||||
- /* ### need to fix this */
|
||||
- return APR_EGENERAL;
|
||||
+ return APR_OS_START_USEERR + gdbm_errno;
|
||||
}
|
||||
|
||||
return APR_SUCCESS;
|
||||
}
|
||||
|
||||
+static apr_status_t gdat2s(datum d)
|
||||
+{
|
||||
+ if (d.dptr == NULL) {
|
||||
+ return APR_OS_START_USEERR + gdbm_errno;
|
||||
+ }
|
||||
+
|
||||
+ return APR_SUCCESS;
|
||||
+}
|
||||
+
|
||||
+
|
||||
static apr_status_t datum_cleanup(void *dptr)
|
||||
{
|
||||
if (dptr)
|
||||
@@ -55,19 +64,15 @@ static apr_status_t set_error(apr_dbm_t
|
||||
{
|
||||
apr_status_t rv = APR_SUCCESS;
|
||||
|
||||
- /* ### ignore whatever the DBM said (dbm_said); ask it explicitly */
|
||||
-
|
||||
- if ((dbm->errcode = gdbm_errno) == GDBM_NO_ERROR) {
|
||||
+ if (dbm_said == APR_SUCCESS) {
|
||||
+ dbm->errcode = GDBM_NO_ERROR;
|
||||
dbm->errmsg = NULL;
|
||||
}
|
||||
else {
|
||||
+ dbm->errcode = dbm_said;
|
||||
dbm->errmsg = gdbm_strerror(gdbm_errno);
|
||||
- rv = APR_EGENERAL; /* ### need something better */
|
||||
}
|
||||
|
||||
- /* captured it. clear it now. */
|
||||
- gdbm_errno = GDBM_NO_ERROR;
|
||||
-
|
||||
return rv;
|
||||
}
|
||||
|
||||
@@ -144,7 +149,7 @@ static apr_status_t vt_gdbm_fetch(apr_db
|
||||
|
||||
/* store the error info into DBM, and return a status code. Also, note
|
||||
that *pvalue should have been cleared on error. */
|
||||
- return set_error(dbm, APR_SUCCESS);
|
||||
+ return set_error(dbm, gdat2s(rd));
|
||||
}
|
||||
|
||||
static apr_status_t vt_gdbm_store(apr_dbm_t *dbm, apr_datum_t key,
|
||||
@@ -203,7 +208,7 @@ static apr_status_t vt_gdbm_firstkey(apr
|
||||
apr_pool_cleanup_null);
|
||||
|
||||
/* store any error info into DBM, and return a status code. */
|
||||
- return set_error(dbm, APR_SUCCESS);
|
||||
+ return set_error(dbm, gdat2s(rd));
|
||||
}
|
||||
|
||||
static apr_status_t vt_gdbm_nextkey(apr_dbm_t *dbm, apr_datum_t *pkey)
|
||||
@@ -223,7 +228,7 @@ static apr_status_t vt_gdbm_nextkey(apr_
|
||||
apr_pool_cleanup_null);
|
||||
|
||||
/* store any error info into DBM, and return a status code. */
|
||||
- return set_error(dbm, APR_SUCCESS);
|
||||
+ return set_error(dbm, gdat2s(rd));
|
||||
}
|
||||
|
||||
static void vt_gdbm_freedatum(apr_dbm_t *dbm, apr_datum_t data)
|
125
libs/apr-util/patches/003-support_mariadb.patch
Normal file
125
libs/apr-util/patches/003-support_mariadb.patch
Normal file
|
@ -0,0 +1,125 @@
|
|||
# patch by Kris Karas fom
|
||||
# https://bz.apache.org/bugzilla/attachment.cgi?id=35326&action=diff
|
||||
--- a/build/dbd.m4
|
||||
+++ b/build/dbd.m4
|
||||
@@ -163,10 +163,15 @@ AC_DEFUN([APU_CHECK_DBD_MYSQL], [
|
||||
old_cppflags="$CPPFLAGS"
|
||||
old_ldflags="$LDFLAGS"
|
||||
|
||||
+ my_library="mysqlclient"
|
||||
+
|
||||
AC_ARG_WITH([mysql], APR_HELP_STRING([--with-mysql=DIR], [enable MySQL DBD driver]),
|
||||
[
|
||||
if test "$withval" = "yes"; then
|
||||
AC_PATH_PROG([MYSQL_CONFIG],[mysql_config])
|
||||
+ if test "x$MYSQL_CONFIG" = "x"; then
|
||||
+ AC_PATH_PROG([MYSQL_CONFIG],[mariadb_config])
|
||||
+ fi
|
||||
if test "x$MYSQL_CONFIG" != 'x'; then
|
||||
mysql_CPPFLAGS="`$MYSQL_CONFIG --include`"
|
||||
mysql_LDFLAGS="`$MYSQL_CONFIG --libs_r | sed -e 's/-l[[^ ]]\+//g'`"
|
||||
@@ -174,32 +179,40 @@ AC_DEFUN([APU_CHECK_DBD_MYSQL], [
|
||||
|
||||
APR_ADDTO(CPPFLAGS, [$mysql_CPPFLAGS])
|
||||
APR_ADDTO(LIBS, [$mysql_LIBS])
|
||||
+
|
||||
+ if $MYSQL_CONFIG --libs_r | grep -q mariadb; then
|
||||
+ my_library="mariadb"
|
||||
+ fi
|
||||
fi
|
||||
|
||||
- AC_CHECK_HEADERS([mysql.h my_global.h my_sys.h],
|
||||
- AC_CHECK_LIB(mysqlclient, mysql_init, [apu_have_mysql=1]),
|
||||
- [apu_have_mysql=0; break],
|
||||
- [#include <my_global.h>])
|
||||
- if test "$apu_have_mysql" = "0"; then
|
||||
- AC_CHECK_HEADERS([mysql/mysql.h mysql/my_global.h mysql/my_sys.h],
|
||||
- AC_CHECK_LIB(mysqlclient, mysql_init, [apu_have_mysql=1]),
|
||||
- [apu_have_mysql=0; break],
|
||||
- [#include <mysql/my_global.h>])
|
||||
+ AC_CHECK_HEADERS([mysql.h errmsg.h], [apu_have_mysql=1], [apu_have_mysql=0; break])
|
||||
+ if test "$apr_have_mysql" = "0"; then
|
||||
+ AC_CHECK_HEADERS([mysql/mysql.h mysql/errmsg.h], [apu_have_mysql=1], [apu_have_mysql=0; break])
|
||||
fi
|
||||
- if test "$apu_have_mysql" != "0" && test "x$MYSQL_CONFIG" != 'x'; then
|
||||
- APR_ADDTO(APRUTIL_PRIV_INCLUDES, [$mysql_CPPFLAGS])
|
||||
+ if test "$apr_have_mysql" = "1"; then
|
||||
+ AC_CHECK_HEADERS([my_global.h my_sys.h mysql/my_global.h mysql/my_sys.h])
|
||||
+ AC_CHECK_LIB($my_library, mysql_init,, [apu_have_mysql=0])
|
||||
+ fi
|
||||
+ if test "$apu_have_mysql" = "1" && test "x$MYSQL_CONFIG" != 'x'; then
|
||||
+ APR_ADDTO(APRUTIL_PRIV_INCLUDES, [$mysql_CPPFLAGS])
|
||||
fi
|
||||
elif test "$withval" = "no"; then
|
||||
:
|
||||
else
|
||||
AC_PATH_PROG([MYSQL_CONFIG],[mysql_config],,[$withval/bin])
|
||||
+ if test "x$MYSQL_CONFIG" = "x"; then
|
||||
+ AC_PATH_PROG([MYSQL_CONFIG],[mariadb_config],,[$withval/bin])
|
||||
+ fi
|
||||
if test "x$MYSQL_CONFIG" != 'x'; then
|
||||
- mysql_CPPFLAGS="`$MYSQL_CONFIG --include`"
|
||||
- mysql_LDFLAGS="`$MYSQL_CONFIG --libs_r | sed -e 's/-l[[^ ]]\+//g'`"
|
||||
- mysql_LIBS="`$MYSQL_CONFIG --libs_r`"
|
||||
+ mysql_CPPFLAGS="`$MYSQL_CONFIG --include`"
|
||||
+ mysql_LDFLAGS="`$MYSQL_CONFIG --libs_r | sed -e 's/-l[[^ ]]\+//g'`"
|
||||
+ mysql_LIBS="`$MYSQL_CONFIG --libs_r`"
|
||||
+ if $MYSQL_CONFIG --libs_r | grep -q mariadb; then
|
||||
+ my_library="mariadb"
|
||||
+ fi
|
||||
else
|
||||
- mysql_CPPFLAGS="-I$withval/include"
|
||||
- mysql_LDFLAGS="-L$withval/lib "
|
||||
+ mysql_CPPFLAGS="-I$withval/include"
|
||||
+ mysql_LDFLAGS="-L$withval/lib "
|
||||
fi
|
||||
|
||||
APR_ADDTO(CPPFLAGS, [$mysql_CPPFLAGS])
|
||||
@@ -207,18 +220,15 @@ AC_DEFUN([APU_CHECK_DBD_MYSQL], [
|
||||
APR_ADDTO(LIBS, [$mysql_LIBS])
|
||||
|
||||
AC_MSG_NOTICE(checking for mysql in $withval)
|
||||
- AC_CHECK_HEADERS([mysql.h my_global.h my_sys.h],
|
||||
- AC_CHECK_LIB(mysqlclient, mysql_init, [apu_have_mysql=1]),
|
||||
- [apu_have_mysql=0; break],
|
||||
- [#include <my_global.h>])
|
||||
-
|
||||
- if test "$apu_have_mysql" != "1"; then
|
||||
- AC_CHECK_HEADERS([mysql/mysql.h mysql/my_global.h mysql/my_sys.h],
|
||||
- AC_CHECK_LIB(mysqlclient, mysql_init, [apu_have_mysql=1]),
|
||||
- [apu_have_mysql=0; break],
|
||||
- [#include <mysql/my_global.h>])
|
||||
+ AC_CHECK_HEADERS([mysql.h errmsg.h], [apu_have_mysql=1], [apu_have_mysql=0; break])
|
||||
+ if test "$apr_have_mysql" = "0"; then
|
||||
+ AC_CHECK_HEADERS([mysql/mysql.h mysql/errmsg.h], [apu_have_mysql=1], [apu_have_mysql=0; break])
|
||||
+ fi
|
||||
+ if test "$apr_have_mysql" = "1"; then
|
||||
+ AC_CHECK_HEADERS([my_global.h my_sys.h mysql/my_global.h mysql/my_sys.h])
|
||||
+ AC_CHECK_LIB($my_library, mysql_init,, [apu_have_mysql=0])
|
||||
fi
|
||||
- if test "$apu_have_mysql" != "0"; then
|
||||
+ if test "$apu_have_mysql" = "1"; then
|
||||
APR_ADDTO(APRUTIL_PRIV_INCLUDES, [$mysql_CPPFLAGS])
|
||||
fi
|
||||
fi
|
||||
@@ -229,7 +239,7 @@ AC_DEFUN([APU_CHECK_DBD_MYSQL], [
|
||||
dnl Since we have already done the AC_CHECK_LIB tests, if we have it,
|
||||
dnl we know the library is there.
|
||||
if test "$apu_have_mysql" = "1"; then
|
||||
- APR_ADDTO(LDADD_dbd_mysql, [$mysql_LDFLAGS -lmysqlclient $mysql_LIBS])
|
||||
+ APR_ADDTO(LDADD_dbd_mysql, [$mysql_LDFLAGS -l$my_library $mysql_LIBS])
|
||||
fi
|
||||
AC_SUBST(LDADD_dbd_mysql)
|
||||
|
||||
--- a/dbd/apr_dbd_mysql.c
|
||||
+++ b/dbd/apr_dbd_mysql.c
|
||||
@@ -1262,7 +1262,9 @@ static apr_status_t thread_end(void *dat
|
||||
|
||||
static void dbd_mysql_init(apr_pool_t *pool)
|
||||
{
|
||||
+#if MYSQL_VERSION_ID < 100000
|
||||
my_init();
|
||||
+#endif
|
||||
mysql_thread_init();
|
||||
|
||||
/* FIXME: this is a guess; find out what it really does */
|
34
libs/apr-util/patches/004-avoid_ldap_by_defaut.patch
Normal file
34
libs/apr-util/patches/004-avoid_ldap_by_defaut.patch
Normal file
|
@ -0,0 +1,34 @@
|
|||
From: Ryan Niebur <ryanryan52@gmail.com>
|
||||
Subject: by default --avoid-ldap since apache2 is the only user, and we don't
|
||||
want to add extra dependencies to other apr-utils rdepends
|
||||
|
||||
--- a/apu-config.in
|
||||
+++ b/apu-config.in
|
||||
@@ -30,7 +30,8 @@ includedir="@includedir@"
|
||||
LIBS="@APRUTIL_EXPORT_LIBS@"
|
||||
INCLUDES="@APRUTIL_INCLUDES@"
|
||||
LDFLAGS="@APRUTIL_LDFLAGS@"
|
||||
-LDAP_LIBS="@LDADD_ldap@"
|
||||
+ORIG_LDAP_LIBS="@LDADD_ldap@"
|
||||
+LDAP_LIBS=""
|
||||
DBM_LIBS="@LDADD_dbm_db@ @LDADD_dbm_gdbm@ @LDADD_dbm_ndbm@"
|
||||
|
||||
APRUTIL_LIBNAME="@APRUTIL_LIBNAME@"
|
||||
@@ -55,7 +56,7 @@ Known values for OPTION are:
|
||||
--includedir print location where headers are installed
|
||||
--ldflags print linker flags
|
||||
--libs print library information
|
||||
- --avoid-ldap do not include ldap library information with --libs
|
||||
+ --avoid-ldap do not include ldap library information with --libs (default on OpenWrt)
|
||||
--ldap-libs print library information to link with ldap
|
||||
--avoid-dbm do not include DBM library information with --libs
|
||||
--dbm-libs print additional library information to link with DBM
|
||||
@@ -121,7 +122,7 @@ while test $# -gt 0; do
|
||||
flags="$flags $LDAP_LIBS $DBM_LIBS $LIBS"
|
||||
;;
|
||||
--ldap-libs)
|
||||
- flags="$flags $LDAP_LIBS"
|
||||
+ flags="$flags $ORIG_LDAP_LIBS"
|
||||
;;
|
||||
--dbm-libs)
|
||||
flags="$flags $DBM_LIBS"
|
|
@ -0,0 +1,31 @@
|
|||
From: Peter Samuelson <peter@p12n.org>
|
||||
Subject: Prevent recursive linking of dependent libraries by apr-util users.
|
||||
|
||||
---
|
||||
apr-util.pc.in | 5 +++--
|
||||
apu-config.in | 2 +-
|
||||
2 files changed, 4 insertions(+), 3 deletions(-)
|
||||
|
||||
--- a/apr-util.pc.in
|
||||
+++ b/apr-util.pc.in
|
||||
@@ -8,6 +8,7 @@ Name: APR Utils
|
||||
Description: Companion library for APR
|
||||
Version: @APRUTIL_DOTTED_VERSION@
|
||||
# assume that apr-util requires libapr of same major version
|
||||
-Requires: apr-@APRUTIL_MAJOR_VERSION@
|
||||
-Libs: -L${libdir} -l@APRUTIL_LIBNAME@ @LDADD_ldap@ @APRUTIL_EXPORT_LIBS@
|
||||
+Requires.private: apr-@APRUTIL_MAJOR_VERSION@
|
||||
+Libs: -L${libdir} -l@APRUTIL_LIBNAME@ @LDADD_ldap@
|
||||
+Libs.private: @APRUTIL_EXPORT_LIBS@
|
||||
Cflags: -I${includedir}
|
||||
--- a/apu-config.in
|
||||
+++ b/apu-config.in
|
||||
@@ -27,7 +27,7 @@ bindir="@bindir@"
|
||||
libdir="@libdir@"
|
||||
includedir="@includedir@"
|
||||
|
||||
-LIBS="@APRUTIL_EXPORT_LIBS@"
|
||||
+LIBS=
|
||||
INCLUDES="@APRUTIL_INCLUDES@"
|
||||
LDFLAGS="@APRUTIL_LDFLAGS@"
|
||||
ORIG_LDAP_LIBS="@LDADD_ldap@"
|
35
libs/apr-util/patches/006-avoid_db_by-default.patch
Normal file
35
libs/apr-util/patches/006-avoid_db_by-default.patch
Normal file
|
@ -0,0 +1,35 @@
|
|||
From: Stefan Fritsch <sf@debian.org>
|
||||
Subject: Make apu-config not output dbm libs by default. See #622081
|
||||
|
||||
--- a/apu-config.in
|
||||
+++ b/apu-config.in
|
||||
@@ -32,7 +32,8 @@ INCLUDES="@APRUTIL_INCLUDES@"
|
||||
LDFLAGS="@APRUTIL_LDFLAGS@"
|
||||
ORIG_LDAP_LIBS="@LDADD_ldap@"
|
||||
LDAP_LIBS=""
|
||||
-DBM_LIBS="@LDADD_dbm_db@ @LDADD_dbm_gdbm@ @LDADD_dbm_ndbm@"
|
||||
+ORIG_DBM_LIBS="@LDADD_dbm_db@ @LDADD_dbm_gdbm@ @LDADD_dbm_ndbm@"
|
||||
+DBM_LIBS=""
|
||||
|
||||
APRUTIL_LIBNAME="@APRUTIL_LIBNAME@"
|
||||
|
||||
@@ -58,8 +59,8 @@ Known values for OPTION are:
|
||||
--libs print library information
|
||||
--avoid-ldap do not include ldap library information with --libs (default on OpenWrt)
|
||||
--ldap-libs print library information to link with ldap
|
||||
- --avoid-dbm do not include DBM library information with --libs
|
||||
- --dbm-libs print additional library information to link with DBM
|
||||
+ --avoid-dbm do not include DBM library information with --libs (default on OpenWrt)
|
||||
+ --dbm-libs print library information to link with DBM
|
||||
--srcdir print APR-util source directory
|
||||
--link-ld print link switch(es) for linking to APR-util
|
||||
--link-libtool print the libtool inputs for linking to APR-util
|
||||
@@ -125,7 +126,7 @@ while test $# -gt 0; do
|
||||
flags="$flags $ORIG_LDAP_LIBS"
|
||||
;;
|
||||
--dbm-libs)
|
||||
- flags="$flags $DBM_LIBS"
|
||||
+ flags="$flags $ORIG_DBM_LIBS"
|
||||
;;
|
||||
--includedir)
|
||||
if test "$location" = "installed"; then
|
Loading…
Reference in a new issue