Bug 61418 - httpd MUST NOT use buildflags of installed apr
Summary: httpd MUST NOT use buildflags of installed apr
Status: RESOLVED WONTFIX
Alias: None
Product: Apache httpd-2
Classification: Unclassified
Component: Build (show other bugs)
Version: 2.4.29
Hardware: PC Linux
: P2 normal (vote)
Target Milestone: ---
Assignee: Apache HTTPD Bugs Mailing List
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2017-08-15 11:58 UTC by Reindl Harald
Modified: 2017-10-29 15:28 UTC (History)
0 users



Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Reindl Harald 2017-08-15 11:58:40 UTC
httpd does exactly the same as apr-util (https://bz.apache.org/bugzilla/show_bug.cgi?id=61417)

configure: Configuring Apache Portable Runtime library...
configure: 
checking for APR... yes
 setting CPP to "gcc -m64 -O2 -g0 -mfpmath=sse -mavx -msse2avx -march=sandybridge -mtune=sandybridge -fopenmp -pipe -fno-strict-aliasing -fomit-frame-pointer -fexceptions -fstack-protector-strong --param=ssp-buffer-size=6 -D_FORTIFY_SOURCE=2 -Wstack-protector -Wformat -Werror=format-security -march=native -mtune=native -O3 -fno-strict-aliasing -fno-gcse-after-reload -fno-inline-functions -fno-ipa-cp -fno-ipa-cp-clone -fno-peel-loops -fno-predictive-commoning -fno-tree-loop-distribute-patterns -fno-unswitch-loops -fPIC -flto -ffat-lto-objects -fuse-ld=gold -fuse-linker-plugin -E"
 setting CPPFLAGS to " -DLINUX -D_REENTRANT -D_GNU_SOURCE"
Comment 1 Reindl Harald 2017-10-29 14:02:22 UTC
well, and finally you can't use LTO for apr/apr-util because httpd don't build with the inherited -fno-fat-lto-objects even when you use -fno-fat-lto-objects in the httpd build itself

CCFLAGS/LDFLAGS are *not* your business when supplied in the environment

/tmp/ccBJ2nch.ltrans0.ltrans.o:<artificial>:ap_prelinked_modules: error: undefined reference to 'core_module'
/tmp/ccBJ2nch.ltrans0.ltrans.o:<artificial>:ap_prelinked_modules: error: undefined reference to 'authn_file_module'
/tmp/ccBJ2nch.ltrans0.ltrans.o:<artificial>:ap_prelinked_modules: error: undefined reference to 'authn_core_module'
/tmp/ccBJ2nch.ltrans0.ltrans.o:<artificial>:ap_prelinked_modules: error: undefined reference to 'authz_host_module'
/tmp/ccBJ2nch.ltrans0.ltrans.o:<artificial>:ap_prelinked_modules: error: undefined reference to 'authz_groupfile_module'
/tmp/ccBJ2nch.ltrans0.ltrans.o:<artificial>:ap_prelinked_modules: error: undefined reference to 'authz_user_module'
/tmp/ccBJ2nch.ltrans0.ltrans.o:<artificial>:ap_prelinked_modules: error: undefined reference to 'authz_core_module'
/tmp/ccBJ2nch.ltrans0.ltrans.o:<artificial>:ap_prelinked_modules: error: undefined reference to 'auth_basic_module'
/tmp/ccBJ2nch.ltrans0.ltrans.o:<artificial>:ap_prelinked_modules: error: undefined reference to 'auth_digest_module'
/tmp/ccBJ2nch.ltrans0.ltrans.o:<artificial>:ap_prelinked_modules: error: undefined reference to 'allowmethods_module'
/tmp/ccBJ2nch.ltrans0.ltrans.o:<artificial>:ap_prelinked_modules: error: undefined reference to 'socache_shmcb_module'
/tmp/ccBJ2nch.ltrans0.ltrans.o:<artificial>:ap_prelinked_modules: error: undefined reference to 'so_module'
/tmp/ccBJ2nch.ltrans0.ltrans.o:<artificial>:ap_prelinked_modules: error: undefined reference to 'ratelimit_module'
/tmp/ccBJ2nch.ltrans0.ltrans.o:<artificial>:ap_prelinked_modules: error: undefined reference to 'reqtimeout_module'
/tmp/ccBJ2nch.ltrans0.ltrans.o:<artificial>:ap_prelinked_modules: error: undefined reference to 'filter_module'
/tmp/ccBJ2nch.ltrans0.ltrans.o:<artificial>:ap_prelinked_modules: error: undefined reference to 'deflate_module'
/tmp/ccBJ2nch.ltrans0.ltrans.o:<artificial>:ap_prelinked_modules: error: undefined reference to 'http_module'
/tmp/ccBJ2nch.ltrans0.ltrans.o:<artificial>:ap_prelinked_modules: error: undefined reference to 'mime_module'
/tmp/ccBJ2nch.ltrans0.ltrans.o:<artificial>:ap_prelinked_modules: error: undefined reference to 'log_config_module'
/tmp/ccBJ2nch.ltrans0.ltrans.o:<artificial>:ap_prelinked_modules: error: undefined reference to 'env_module'
/tmp/ccBJ2nch.ltrans0.ltrans.o:<artificial>:ap_prelinked_modules: error: undefined reference to 'expires_module'
/tmp/ccBJ2nch.ltrans0.ltrans.o:<artificial>:ap_prelinked_modules: error: undefined reference to 'headers_module'
/tmp/ccBJ2nch.ltrans0.ltrans.o:<artificial>:ap_prelinked_modules: error: undefined reference to 'unique_id_module'
/tmp/ccBJ2nch.ltrans0.ltrans.o:<artificial>:ap_prelinked_modules: error: undefined reference to 'setenvif_module'
/tmp/ccBJ2nch.ltrans0.ltrans.o:<artificial>:ap_prelinked_modules: error: undefined reference to 'version_module'
/tmp/ccBJ2nch.ltrans0.ltrans.o:<artificial>:ap_prelinked_modules: error: undefined reference to 'remoteip_module'
/tmp/ccBJ2nch.ltrans0.ltrans.o:<artificial>:ap_prelinked_modules: error: undefined reference to 'mpm_prefork_module'
/tmp/ccBJ2nch.ltrans0.ltrans.o:<artificial>:ap_prelinked_modules: error: undefined reference to 'unixd_module'
/tmp/ccBJ2nch.ltrans0.ltrans.o:<artificial>:ap_prelinked_modules: error: undefined reference to 'autoindex_module'
/tmp/ccBJ2nch.ltrans0.ltrans.o:<artificial>:ap_prelinked_modules: error: undefined reference to 'dir_module'
/tmp/ccBJ2nch.ltrans0.ltrans.o:<artificial>:ap_prelinked_modules: error: undefined reference to 'alias_module'
/tmp/ccBJ2nch.ltrans0.ltrans.o:<artificial>:ap_prelinked_modules: error: undefined reference to 'rewrite_module'
/tmp/ccBJ2nch.ltrans0.ltrans.o:<artificial>:ap_prelinked_module_symbols: error: undefined reference to 'core_module'
/tmp/ccBJ2nch.ltrans0.ltrans.o:<artificial>:ap_prelinked_module_symbols: error: undefined reference to 'authn_file_module'
/tmp/ccBJ2nch.ltrans0.ltrans.o:<artificial>:ap_prelinked_module_symbols: error: undefined reference to 'authn_core_module'
/tmp/ccBJ2nch.ltrans0.ltrans.o:<artificial>:ap_prelinked_module_symbols: error: undefined reference to 'authz_host_module'
/tmp/ccBJ2nch.ltrans0.ltrans.o:<artificial>:ap_prelinked_module_symbols: error: undefined reference to 'authz_groupfile_module'
/tmp/ccBJ2nch.ltrans0.ltrans.o:<artificial>:ap_prelinked_module_symbols: error: undefined reference to 'authz_user_module'
/tmp/ccBJ2nch.ltrans0.ltrans.o:<artificial>:ap_prelinked_module_symbols: error: undefined reference to 'authz_core_module'
/tmp/ccBJ2nch.ltrans0.ltrans.o:<artificial>:ap_prelinked_module_symbols: error: undefined reference to 'auth_basic_module'
/tmp/ccBJ2nch.ltrans0.ltrans.o:<artificial>:ap_prelinked_module_symbols: error: undefined reference to 'auth_digest_module'
/tmp/ccBJ2nch.ltrans0.ltrans.o:<artificial>:ap_prelinked_module_symbols: error: undefined reference to 'allowmethods_module'
/tmp/ccBJ2nch.ltrans0.ltrans.o:<artificial>:ap_prelinked_module_symbols: error: undefined reference to 'socache_shmcb_module'
/tmp/ccBJ2nch.ltrans0.ltrans.o:<artificial>:ap_prelinked_module_symbols: error: undefined reference to 'so_module'
/tmp/ccBJ2nch.ltrans0.ltrans.o:<artificial>:ap_prelinked_module_symbols: error: undefined reference to 'ratelimit_module'
/tmp/ccBJ2nch.ltrans0.ltrans.o:<artificial>:ap_prelinked_module_symbols: error: undefined reference to 'reqtimeout_module'
/tmp/ccBJ2nch.ltrans0.ltrans.o:<artificial>:ap_prelinked_module_symbols: error: undefined reference to 'filter_module'
/tmp/ccBJ2nch.ltrans0.ltrans.o:<artificial>:ap_prelinked_module_symbols: error: undefined reference to 'deflate_module'
/tmp/ccBJ2nch.ltrans0.ltrans.o:<artificial>:ap_prelinked_module_symbols: error: undefined reference to 'http_module'
/tmp/ccBJ2nch.ltrans0.ltrans.o:<artificial>:ap_prelinked_module_symbols: error: undefined reference to 'mime_module'
/tmp/ccBJ2nch.ltrans0.ltrans.o:<artificial>:ap_prelinked_module_symbols: error: undefined reference to 'log_config_module'
/tmp/ccBJ2nch.ltrans0.ltrans.o:<artificial>:ap_prelinked_module_symbols: error: undefined reference to 'env_module'
/tmp/ccBJ2nch.ltrans0.ltrans.o:<artificial>:ap_prelinked_module_symbols: error: undefined reference to 'expires_module'
/tmp/ccBJ2nch.ltrans0.ltrans.o:<artificial>:ap_prelinked_module_symbols: error: undefined reference to 'headers_module'
/tmp/ccBJ2nch.ltrans0.ltrans.o:<artificial>:ap_prelinked_module_symbols: error: undefined reference to 'unique_id_module'
/tmp/ccBJ2nch.ltrans0.ltrans.o:<artificial>:ap_prelinked_module_symbols: error: undefined reference to 'setenvif_module'
/tmp/ccBJ2nch.ltrans0.ltrans.o:<artificial>:ap_prelinked_module_symbols: error: undefined reference to 'version_module'
/tmp/ccBJ2nch.ltrans0.ltrans.o:<artificial>:ap_prelinked_module_symbols: error: undefined reference to 'remoteip_module'
/tmp/ccBJ2nch.ltrans0.ltrans.o:<artificial>:ap_prelinked_module_symbols: error: undefined reference to 'mpm_prefork_module'
/tmp/ccBJ2nch.ltrans0.ltrans.o:<artificial>:ap_prelinked_module_symbols: error: undefined reference to 'unixd_module'
/tmp/ccBJ2nch.ltrans0.ltrans.o:<artificial>:ap_prelinked_module_symbols: error: undefined reference to 'autoindex_module'
/tmp/ccBJ2nch.ltrans0.ltrans.o:<artificial>:ap_prelinked_module_symbols: error: undefined reference to 'dir_module'
/tmp/ccBJ2nch.ltrans0.ltrans.o:<artificial>:ap_prelinked_module_symbols: error: undefined reference to 'alias_module'
/tmp/ccBJ2nch.ltrans0.ltrans.o:<artificial>:ap_prelinked_module_symbols: error: undefined reference to 'rewrite_module'
/tmp/ccBJ2nch.ltrans0.ltrans.o:<artificial>:ap_preloaded_modules: error: undefined reference to 'core_module'
/tmp/ccBJ2nch.ltrans0.ltrans.o:<artificial>:ap_preloaded_modules: error: undefined reference to 'authn_file_module'
/tmp/ccBJ2nch.ltrans0.ltrans.o:<artificial>:ap_preloaded_modules: error: undefined reference to 'authn_core_module'
/tmp/ccBJ2nch.ltrans0.ltrans.o:<artificial>:ap_preloaded_modules: error: undefined reference to 'authz_host_module'
/tmp/ccBJ2nch.ltrans0.ltrans.o:<artificial>:ap_preloaded_modules: error: undefined reference to 'authz_groupfile_module'
/tmp/ccBJ2nch.ltrans0.ltrans.o:<artificial>:ap_preloaded_modules: error: undefined reference to 'authz_user_module'
/tmp/ccBJ2nch.ltrans0.ltrans.o:<artificial>:ap_preloaded_modules: error: undefined reference to 'authz_core_module'
/tmp/ccBJ2nch.ltrans0.ltrans.o:<artificial>:ap_preloaded_modules: error: undefined reference to 'auth_basic_module'
/tmp/ccBJ2nch.ltrans0.ltrans.o:<artificial>:ap_preloaded_modules: error: undefined reference to 'auth_digest_module'
/tmp/ccBJ2nch.ltrans0.ltrans.o:<artificial>:ap_preloaded_modules: error: undefined reference to 'allowmethods_module'
/tmp/ccBJ2nch.ltrans0.ltrans.o:<artificial>:ap_preloaded_modules: error: undefined reference to 'socache_shmcb_module'
/tmp/ccBJ2nch.ltrans0.ltrans.o:<artificial>:ap_preloaded_modules: error: undefined reference to 'so_module'
/tmp/ccBJ2nch.ltrans0.ltrans.o:<artificial>:ap_preloaded_modules: error: undefined reference to 'ratelimit_module'
/tmp/ccBJ2nch.ltrans0.ltrans.o:<artificial>:ap_preloaded_modules: error: undefined reference to 'reqtimeout_module'
/tmp/ccBJ2nch.ltrans0.ltrans.o:<artificial>:ap_preloaded_modules: error: undefined reference to 'filter_module'
/tmp/ccBJ2nch.ltrans0.ltrans.o:<artificial>:ap_preloaded_modules: error: undefined reference to 'deflate_module'
/tmp/ccBJ2nch.ltrans0.ltrans.o:<artificial>:ap_preloaded_modules: error: undefined reference to 'http_module'
/tmp/ccBJ2nch.ltrans0.ltrans.o:<artificial>:ap_preloaded_modules: error: undefined reference to 'mime_module'
/tmp/ccBJ2nch.ltrans0.ltrans.o:<artificial>:ap_preloaded_modules: error: undefined reference to 'log_config_module'
/tmp/ccBJ2nch.ltrans0.ltrans.o:<artificial>:ap_preloaded_modules: error: undefined reference to 'env_module'
/tmp/ccBJ2nch.ltrans0.ltrans.o:<artificial>:ap_preloaded_modules: error: undefined reference to 'expires_module'
/tmp/ccBJ2nch.ltrans0.ltrans.o:<artificial>:ap_preloaded_modules: error: undefined reference to 'headers_module'
/tmp/ccBJ2nch.ltrans0.ltrans.o:<artificial>:ap_preloaded_modules: error: undefined reference to 'unique_id_module'
/tmp/ccBJ2nch.ltrans0.ltrans.o:<artificial>:ap_preloaded_modules: error: undefined reference to 'setenvif_module'
/tmp/ccBJ2nch.ltrans0.ltrans.o:<artificial>:ap_preloaded_modules: error: undefined reference to 'version_module'
/tmp/ccBJ2nch.ltrans0.ltrans.o:<artificial>:ap_preloaded_modules: error: undefined reference to 'remoteip_module'
/tmp/ccBJ2nch.ltrans0.ltrans.o:<artificial>:ap_preloaded_modules: error: undefined reference to 'mpm_prefork_module'
/tmp/ccBJ2nch.ltrans0.ltrans.o:<artificial>:ap_preloaded_modules: error: undefined reference to 'unixd_module'
/tmp/ccBJ2nch.ltrans0.ltrans.o:<artificial>:ap_preloaded_modules: error: undefined reference to 'autoindex_module'
/tmp/ccBJ2nch.ltrans0.ltrans.o:<artificial>:ap_preloaded_modules: error: undefined reference to 'dir_module'
/tmp/ccBJ2nch.ltrans0.ltrans.o:<artificial>:ap_preloaded_modules: error: undefined reference to 'alias_module'
/tmp/ccBJ2nch.ltrans0.ltrans.o:<artificial>:ap_preloaded_modules: error: undefined reference to 'rewrite_module'
Comment 2 Eric Covener 2017-10-29 14:40:47 UTC
Working as designed. If you want more control, build httpd w/ an included apr as the manual already describes.  If you re-open, please try to avoid all of the hysterics and editorializing and report something more concrete.
Comment 3 Reindl Harald 2017-10-29 15:28:32 UTC
> report something more concrete

what more concrete than setting CPP to "gcc -m64 -O2 -g0 -mfpmath=sse -mavx -msse2avx -march=sandybridge -mtune=sandybridge..." is plain wrong because you override explicit configuration in the spec file below

# optimized compiler flags
export CFLAGS="%{optflags} %{O3_flags} -flto -ffat-lto-objects -fuse-ld=gold -fuse-linker-plugin -Wa,--noexecstack"
export CXXFLAGS="$CFLAGS"
export CC="gcc $CFLAGS"
export SH_LDFLAGS="-Wl,--as-needed -Wl,-z,now -Wl,-z,relro -Wl,-z,noexecstack -Wl,-z,nodump %{optflags} %{O3_flags} -flto -ffat-lto-objects -fuse-ld=gold -fuse-linker-plugin -Wa,--noexecstack"
export LDFLAGS="$SH_LDFLAGS -pie -fPIE"