]> granicus.if.org Git - apache/commit
Add an --enable-reduced-exports configure option to link libmain.a
authorJoe Orton <jorton@apache.org>
Thu, 20 Jun 2019 13:00:37 +0000 (13:00 +0000)
committerJoe Orton <jorton@apache.org>
Thu, 20 Jun 2019 13:00:37 +0000 (13:00 +0000)
commit50bbfb3de58e82514f50a34f2ec24d147112b7f5
tree8b983073a3f756f57b81d724d0d44fe35d56d8eb
parent314fb18f15ceb32589e40224257faeac6c8768b2
Add an --enable-reduced-exports configure option to link libmain.a
using ld's --whole-archive mode and avoid building exports.c entirely.
This reduces the size of a minimal httpd binary by 18% on Linux/x86_64
(687K to 560K) with no difference to the set of symbols available to
modules.

This option is only appropriate to use if using a shared libapr*
build, hence is non-default.

* configure.in: Add --enable-reduced-exports; disable httpdunit build
  if used.  Define AP_FORCE_EXPORTS if not enabled (default) in place
  of AP_USING_AUTOCONF.

* server/main.c (ap_suck_in_APR): Only build if AP_FORCE_EXPORTS is
  defined.

* Makefile.in: Link libmain.la using LIBMAIN_LIB.

* server/Makefile.in: Conditionally build exports.c into libmain.

git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1861685 13f79535-47bb-0310-9956-ffa450edef68
Makefile.in
build/config_vars.sh.in
configure.in
server/Makefile.in
server/main.c