From mboxrd@z Thu Jan 1 00:00:00 1970 From: Michael Tremer To: development@lists.ipfire.org Subject: Re: [PATCH 1/2] apr and aprutil: Added as requirement for apache 2.4 Date: Wed, 16 Aug 2017 14:36:06 +0100 Message-ID: <1502890566.2543.23.camel@ipfire.org> In-Reply-To: <20170815204356.2928-1-wolfgang.apolinarski@googlemail.com> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="===============2918145008627247050==" List-Id: --===============2918145008627247050== Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 7bit Hi, a few questions regarding this patch. Please see below. Also: Why is nobody else reviewing this and testing this? I know that there is many people out there who want to update Apache and have tried, but this is just not good enough to want something. We also need people who work on it to make it happen. So thank you Wolfgang for working on this. But I want to see more people reviewing this! On Tue, 2017-08-15 at 22:43 +0200, Wolfgang Apolinarski wrote: > - APR 1.6.2 is a requirement for building apache httpd 2.4 > - APR-Util 1.6.0 is a requirement for building apache httpd 2.4 > --- > config/rootfiles/common/apache2 | 8 ++-- > config/rootfiles/common/apr | 57 ++++++++++++++++++++++++++++ > config/rootfiles/common/aprutil | 52 +++++++++++++++++++++++++ > lfs/apr | 84 > +++++++++++++++++++++++++++++++++++++++++ > lfs/aprutil | 84 > +++++++++++++++++++++++++++++++++++++++++ > make.sh | 2 + > 6 files changed, 283 insertions(+), 4 deletions(-) > create mode 100644 config/rootfiles/common/apr > create mode 100644 config/rootfiles/common/aprutil > create mode 100644 lfs/apr > create mode 100644 lfs/aprutil > > diff --git a/config/rootfiles/common/apache2 > b/config/rootfiles/common/apache2 > index 7e33a155e..360f5ae61 100644 > --- a/config/rootfiles/common/apache2 > +++ b/config/rootfiles/common/apache2 > @@ -1342,22 +1342,22 @@ usr/lib/apache/mod_usertrack.so > usr/lib/apache/mod_version.so > usr/lib/apache/mod_vhost_alias.so > #usr/lib/apr-util-1 > -usr/lib/apr-util-1/apr_dbd_sqlite3-1.so > +#usr/lib/apr-util-1/apr_dbd_sqlite3-1.so > #usr/lib/apr-util-1/apr_dbd_sqlite3.a > #usr/lib/apr-util-1/apr_dbd_sqlite3.la > -usr/lib/apr-util-1/apr_dbd_sqlite3.so > +#usr/lib/apr-util-1/apr_dbd_sqlite3.so > #usr/lib/apr.exp > #usr/lib/aprutil.exp > #usr/lib/libapr-1.a > #usr/lib/libapr-1.la > usr/lib/libapr-1.so > usr/lib/libapr-1.so.0 > -usr/lib/libapr-1.so.0.5.1 > +#usr/lib/libapr-1.so.0.5.1 > #usr/lib/libaprutil-1.a > #usr/lib/libaprutil-1.la > usr/lib/libaprutil-1.so > usr/lib/libaprutil-1.so.0 > -usr/lib/libaprutil-1.so.0.5.3 > +#usr/lib/libaprutil-1.so.0.5.3 > #usr/lib/pkgconfig/apr-1.pc > #usr/lib/pkgconfig/apr-util-1.pc > #usr/sbin/ab You don't need to package the .so files. They are just needed for linking which we never do on the firewall system. Just ship the .so.X and .so.X.Y files. Here it seems taht you are not shipping libaprutil at all. Can we not disable it in the build since it is being compiled in an extra package? > diff --git a/config/rootfiles/common/apr > b/config/rootfiles/common/apr > new file mode 100644 > index 000000000..abc825623 > --- /dev/null > +++ b/config/rootfiles/common/apr > @@ -0,0 +1,57 @@ > +usr/bin/apr-1-config > +#usr/include/apr-1 > +#usr/include/apr-1/apr.h > +#usr/include/apr-1/apr_allocator.h > +#usr/include/apr-1/apr_atomic.h > +#usr/include/apr-1/apr_cstr.h > +#usr/include/apr-1/apr_dso.h > +#usr/include/apr-1/apr_env.h > +#usr/include/apr-1/apr_errno.h > +#usr/include/apr-1/apr_escape.h > +#usr/include/apr-1/apr_file_info.h > +#usr/include/apr-1/apr_file_io.h > +#usr/include/apr-1/apr_fnmatch.h > +#usr/include/apr-1/apr_general.h > +#usr/include/apr-1/apr_getopt.h > +#usr/include/apr-1/apr_global_mutex.h > +#usr/include/apr-1/apr_hash.h > +#usr/include/apr-1/apr_inherit.h > +#usr/include/apr-1/apr_lib.h > +#usr/include/apr-1/apr_mmap.h > +#usr/include/apr-1/apr_network_io.h > +#usr/include/apr-1/apr_perms_set.h > +#usr/include/apr-1/apr_poll.h > +#usr/include/apr-1/apr_pools.h > +#usr/include/apr-1/apr_portable.h > +#usr/include/apr-1/apr_proc_mutex.h > +#usr/include/apr-1/apr_random.h > +#usr/include/apr-1/apr_ring.h > +#usr/include/apr-1/apr_shm.h > +#usr/include/apr-1/apr_signal.h > +#usr/include/apr-1/apr_skiplist.h > +#usr/include/apr-1/apr_strings.h > +#usr/include/apr-1/apr_support.h > +#usr/include/apr-1/apr_tables.h > +#usr/include/apr-1/apr_thread_cond.h > +#usr/include/apr-1/apr_thread_mutex.h > +#usr/include/apr-1/apr_thread_proc.h > +#usr/include/apr-1/apr_thread_rwlock.h > +#usr/include/apr-1/apr_time.h > +#usr/include/apr-1/apr_user.h > +#usr/include/apr-1/apr_version.h > +#usr/include/apr-1/apr_want.h > +usr/lib/libapr-1.so.0.6.2 > +usr/lib/apr.exp > +usr/lib/libapr-1.la > +usr/lib/libapr-1.so > +usr/lib/libapr-1.so.0 > +#usr/lib/pkgconfig/apr-1.pc > +#usr/share/apr-1 > +#usr/share/apr-1/build > +#usr/share/apr-1/build/apr_common.m4 > +#usr/share/apr-1/build/apr_rules.mk > +#usr/share/apr-1/build/find_apr.m4 > +#usr/share/apr-1/build/libtool > +#usr/share/apr-1/build/make_exports.awk > +#usr/share/apr-1/build/make_var_export.awk > +#usr/share/apr-1/build/mkdir.sh Same as above. The static library .a isn't needed on the system either. Also the alphabetical order of the rootfile is messed up. The build system should complain about that. > diff --git a/config/rootfiles/common/aprutil > b/config/rootfiles/common/aprutil > new file mode 100644 > index 000000000..7b0bbb8d7 > --- /dev/null > +++ b/config/rootfiles/common/aprutil > @@ -0,0 +1,52 @@ > +usr/bin/apu-1-config > +#usr/include/apr-1/apr_anylock.h > +#usr/include/apr-1/apr_base64.h > +#usr/include/apr-1/apr_buckets.h > +#usr/include/apr-1/apr_crypto.h > +#usr/include/apr-1/apr_date.h > +#usr/include/apr-1/apr_dbd.h > +#usr/include/apr-1/apr_dbm.h > +#usr/include/apr-1/apr_hooks.h > +#usr/include/apr-1/apr_ldap.h > +#usr/include/apr-1/apr_ldap_init.h > +#usr/include/apr-1/apr_ldap_option.h > +#usr/include/apr-1/apr_ldap_rebind.h > +#usr/include/apr-1/apr_ldap_url.h > +#usr/include/apr-1/apr_md4.h > +#usr/include/apr-1/apr_md5.h > +#usr/include/apr-1/apr_memcache.h > +#usr/include/apr-1/apr_optional.h > +#usr/include/apr-1/apr_optional_hooks.h > +#usr/include/apr-1/apr_queue.h > +#usr/include/apr-1/apr_redis.h > +#usr/include/apr-1/apr_reslist.h > +#usr/include/apr-1/apr_rmm.h > +#usr/include/apr-1/apr_sdbm.h > +#usr/include/apr-1/apr_sha1.h > +#usr/include/apr-1/apr_siphash.h > +#usr/include/apr-1/apr_strmatch.h > +#usr/include/apr-1/apr_thread_pool.h > +#usr/include/apr-1/apr_uri.h > +#usr/include/apr-1/apr_uuid.h > +#usr/include/apr-1/apr_xlate.h > +#usr/include/apr-1/apr_xml.h > +#usr/include/apr-1/apu.h > +#usr/include/apr-1/apu_errno.h > +#usr/include/apr-1/apu_version.h > +#usr/include/apr-1/apu_want.h > +#usr/include/apr-1/expat.h > +usr/lib/libaprutil-1.la > +usr/lib/libaprutil-1.so > +usr/lib/libaprutil-1.so.0 > +usr/lib/libaprutil-1.so.0.6.0 > +#usr/lib/libexpat.a > +#usr/lib/libexpat.la > +#usr/lib/libexpat.so > +#usr/lib/libexpat.so.0 > +#usr/lib/libexpat.so.0.5.0 > +#usr/lib/pkgconfig/apr-util-1.pc > +usr/lib/apr-util-1 > +usr/lib/apr-util-1/apr_crypto_openssl-1.so > +usr/lib/apr-util-1/apr_crypto_openssl.la > +usr/lib/apr-util-1/apr_crypto_openssl.so > +usr/lib/aprutil.exp The package has a bundled version of libexpat. We have a package for that. Please disable this here. aprutil is compiled after expat, but it does not seem to find it or it is not happy with the version. > diff --git a/lfs/apr b/lfs/apr > new file mode 100644 > index 000000000..24ab1d79e > --- /dev/null > +++ b/lfs/apr > @@ -0,0 +1,84 @@ > +#################################################################### > ########### > +# > # > +# IPFire.org - A linux based > firewall # > +# Copyright (C) 2007-2014 IPFire Team > # > +# > # > +# This program is free software: you can redistribute it and/or > modify # > +# it under the terms of the GNU General Public License as published > by # > +# the Free Software Foundation, either version 3 of the License, > or # > +# (at your option) any later > version. # > +# > # > +# This program is distributed in the hope that it will be > useful, # > +# but WITHOUT ANY WARRANTY; without even the implied warranty > of # > +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See > the # > +# GNU General Public License for more > details. # > +# > # > +# You should have received a copy of the GNU General Public > License # > +# along with this program. If not, see />. # > +# > # > +#################################################################### > ########### > + > + > +#################################################################### > ########### > +# Definitions > +#################################################################### > ########### > + > +include Config > + > +VER = 1.6.2 > + > +THISAPP = apr-$(VER) > +DL_FILE = $(THISAPP).tar.bz2 > +DL_FROM = http://archive.apache.org/dist/apr > +DIR_APP = $(DIR_SRC)/$(THISAPP) > + > +TARGET = $(DIR_INFO)/$(THISAPP) > + > +#################################################################### > ########### > +# Top-level Rules > +#################################################################### > ########### > + > +objects = $(DL_FILE) > + > +$(DL_FILE) = $(DL_FROM)/$(DL_FILE) > + > +$(DL_FILE)_MD5 = e81a851967c79b5ce9bfbc909e4bf735 > + > +install : $(TARGET) > + > +check : $(patsubst %,$(DIR_CHK)/%,$(objects)) > + > +download :$(patsubst %,$(DIR_DL)/%,$(objects)) > + > +md5 : $(subst %,%_MD5,$(objects)) > + > +#################################################################### > ########### > +# Downloading, checking, md5sum > +#################################################################### > ########### > + > +$(patsubst %,$(DIR_CHK)/%,$(objects)) : > + @$(CHECK) > + > +$(patsubst %,$(DIR_DL)/%,$(objects)) : > + @$(LOAD) > + > +$(subst %,%_MD5,$(objects)) : > + @$(MD5) > + > +#################################################################### > ########### > +# Installation Details > +#################################################################### > ########### > + > +$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) > + @$(PREBUILD) > + @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar jxf > $(DIR_DL)/$(DL_FILE) > + > + cd $(DIR_APP) && sed -i "/seems to be moved/s/^/#/" > build/ltmain.sh What is this supposed to do? Please add a comment. > + > + cd $(DIR_APP) && ./configure --prefix=/usr \ > + --disable-static --with- > installbuilddir=/usr/share/apr-1/build > + cd $(DIR_APP) && make $(MAKETUNING) > + cd $(DIR_APP) && make install > + > + @rm -rf $(DIR_APP) > + @$(POSTBUILD) > diff --git a/lfs/aprutil b/lfs/aprutil > new file mode 100644 > index 000000000..cf8f4a8a9 > --- /dev/null > +++ b/lfs/aprutil > @@ -0,0 +1,84 @@ > +#################################################################### > ########### > +# > # > +# IPFire.org - A linux based > firewall # > +# Copyright (C) 2007-2014 IPFire Team > # > +# > # > +# This program is free software: you can redistribute it and/or > modify # > +# it under the terms of the GNU General Public License as published > by # > +# the Free Software Foundation, either version 3 of the License, > or # > +# (at your option) any later > version. # > +# > # > +# This program is distributed in the hope that it will be > useful, # > +# but WITHOUT ANY WARRANTY; without even the implied warranty > of # > +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See > the # > +# GNU General Public License for more > details. # > +# > # > +# You should have received a copy of the GNU General Public > License # > +# along with this program. If not, see />. # > +# > # > +#################################################################### > ########### > + > + > +#################################################################### > ########### > +# Definitions > +#################################################################### > ########### > + > +include Config > + > +VER = 1.6.0 > + > +THISAPP = apr-util-$(VER) > +DL_FILE = $(THISAPP).tar.bz2 > +DL_FROM = http://archive.apache.org/dist/apr > +DIR_APP = $(DIR_SRC)/$(THISAPP) > + > +TARGET = $(DIR_INFO)/$(THISAPP) > + > +DEPS = "apr" > + > +#################################################################### > ########### > +# Top-level Rules > +#################################################################### > ########### > + > +objects = $(DL_FILE) > + > +$(DL_FILE) = $(DL_FROM)/$(DL_FILE) > + > +$(DL_FILE)_MD5 = 069a9a980776acab05212c5f37ef8368 > + > +install : $(TARGET) > + > +check : $(patsubst %,$(DIR_CHK)/%,$(objects)) > + > +download :$(patsubst %,$(DIR_DL)/%,$(objects)) > + > +md5 : $(subst %,%_MD5,$(objects)) > + > +#################################################################### > ########### > +# Downloading, checking, md5sum > +#################################################################### > ########### > + > +$(patsubst %,$(DIR_CHK)/%,$(objects)) : > + @$(CHECK) > + > +$(patsubst %,$(DIR_DL)/%,$(objects)) : > + @$(LOAD) > + > +$(subst %,%_MD5,$(objects)) : > + @$(MD5) > + > +#################################################################### > ########### > +# Installation Details > +#################################################################### > ########### > + > +$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) > + @$(PREBUILD) > + @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar jxf > $(DIR_DL)/$(DL_FILE) > + > + cd $(DIR_APP) && ./configure --prefix=/usr \ > + --with-apr=/usr --with-gdbm=/usr -- > with-openssl=/usr --with-crypto > + cd $(DIR_APP) && make $(MAKETUNING) > + cd $(DIR_APP) && make install > + > + @rm -rf $(DIR_APP) > + @$(POSTBUILD) > diff --git a/make.sh b/make.sh > index 663f23fbb..dd57c914e 100755 > --- a/make.sh > +++ b/make.sh > @@ -358,6 +358,7 @@ buildbase() { > lfsmake2 bzip2 > lfsmake2 pcre > lfsmake2 pcre-compat > + lfsmake2 apr > lfsmake2 bash > lfsmake2 diffutils > lfsmake2 e2fsprogs Does apr need to be built this early in the processs? Why can we not have it in the IPFire stage? Is anything suddenly depending on it? > @@ -497,6 +498,7 @@ buildipfire() { > lfsmake2 libevent2 > lfsmake2 libevent2-compat > lfsmake2 expat > + lfsmake2 aprutil > lfsmake2 unbound > lfsmake2 gnutls > lfsmake2 bind Best, -Michael --===============2918145008627247050== Content-Type: application/pgp-signature Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="signature.asc" MIME-Version: 1.0 LS0tLS1CRUdJTiBQR1AgU0lHTkFUVVJFLS0tLS0KCmlRSXpCQUFCQ2dBZEZpRUU1L3JXNWwzR0dl Mnlwa3R4Z0hudy8yK1FDUWNGQWxtVVNrWUFDZ2tRZ0hudy8yK1EKQ1FmWDl4QUFsWW1RT3JKY1hU eEczNXgyVjVhb09SVkp6TStCUFF4RVNrZjRhTlNObkJsWnRXb1lMRXk4WXo2RQplem5JVlc5YkU5 bzVWYlduaTZQSnR0alpONFRnQXZFUHlMWEp5UlI3SGgwKzZGYXpJbXBpZkpmcW1RcUxsOEhUCnZ3 YzBRbnFqTS9ISHFuMGdUeXFmMWtGYlhrTnJVaE80aFB3SmxpQU1FZUVLYXdrRlp1M1NGVXZCdjJL VTkxY0kKVkNhZDNmQitXSzhlMk5kUTg1OWpxblRTY003blBJbWQxQVBQZjhacUtOOXhaeFovQTNn RTg0THhEc0EzWDdwQgptaVk4SEpxRUxxS2tsbnJzK1FzckRvUU9Ld1BNdS8rWk5rNW1IVGNDTXAr d2ZYcmJSV0didGNkYmNkWXJNSStFCmJCZ09lV2tna1Q1Sk9MZ0hmRUFzZkw3bitibDZ4RmpOMnp6 SWdQOXllVy9VWWtrU2xKYnJGdThCT3Y1bUNkM2QKcmVjNUQ1TUF0dCt3U2I4N01zZnoyVWdmTW8w bEkwVUc3ZXNOZDZreEdiNURQL255TGpaNUlqYVBIcHN3RzBqUQpqcW9CQ0hSb0VNbnhXMVJPdGdk SnZmUEwxeTZ3WVk2cUtGMWVaNnJjMXhPVHJRc0YwRC9aQ2QxSlEvWlZMV1oxCjRMNVFSKzhiYVZm WDY2cU9BVGRqRDdWclU4WEdONUhTK00vdVB2QU5ValYvU3I5SlQ2NU52eFU1Ti9TOGg3ZzEKTmhi b2I5Z3VOd1dHWDZpYjlBNGppcWlsbUk0eVdLZG9MbWZTd3VsMmdFVWpSRmtqRmtWOEpXZmFCMFNV cnU4dwo4M2oweHRKWTc1QWozOEk2U0N6R1kwb3NGRUd4MmV1Njk2MzdpUlloK2NLSmRlMjBmazg9 Cj1PejA4Ci0tLS0tRU5EIFBHUCBTSUdOQVRVUkUtLS0tLQo= --===============2918145008627247050==--