btw: I ran (as best I could) ApacheTest against 2.4.10. On the one hand, all tests it did passed, but it skipped several, which surprises me somewhat - because I thought I had all mods enabled in the build.
tail... t/security/CVE-2009-1890............skipped all skipped: cannot find module 'mod_proxy', cannot find module 'proxy_http.c' t/security/CVE-2009-3555............skipped all skipped: cannot find module 'ssl' t/security/CVE-2011-3368-rewrite....skipped all skipped: cannot find module 'rewrite' t/security/CVE-2011-3368............skipped all skipped: cannot find module 'proxy' t/ssl/all...........................skipped all skipped: cannot find module 'mod_ssl' All tests successful, 56 tests and 29 subtests skipped. Files=97, Tests=2894, 369 wallclock secs (85.19 cusr + 80.86 csys = 166.05 CPU) [warning] server loopback:8529 shutdown [warning] port 8529 still in use... ......done Where should I be looking to correct this? On Fri, Aug 1, 2014 at 2:40 PM, Michael Felt <mamf...@gmail.com> wrote: > the good news: "user" error. I had removed coreutils so I was relying on > the default /usr/bin/install program. Once replaced with coreutils install > program everything worked as expected. > > So, back to FYI only for the compile warnings. > > (Or, a storm in my glass of water) > > > On Fri, Aug 1, 2014 at 1:41 PM, Michael Felt <mamf...@gmail.com> wrote: > >> correction: I did not pay attention to the .. in the symbolic name. It >> does reference the file correctly. >> >> >> On Fri, Aug 1, 2014 at 1:40 PM, Michael Felt <mamf...@gmail.com> wrote: >> >>> ran same command again, but rather that sh -x, used option --debug >>> >>> This is what I get from func_mode_install - where it fails above. >>> >>> + func_mode_install mod_mpm_worker.la >>> /var/tmp/root/httpd.2.4.10/opt/httpd/libexec/ >>> + test install = /bin/sh >>> + test install = /bin/sh >>> + false >>> + install_prog= >>> + arg=install >>> + func_quote_for_eval install >>> + install_prog=install >>> + install_shared_prog=install >>> + install_cp=false >>> + dest= >>> + files= >>> + opts= >>> + prev= >>> + install_type= >>> + isdir=no >>> + stripme= >>> + no_mode=: >>> + arg2= >>> + test -n >>> + test -n >>> + dest=mod_mpm_worker.la >>> + continue >>> + arg2= >>> + test -n mod_mpm_worker.la >>> + files= mod_mpm_worker.la >>> + dest=/var/tmp/root/httpd.2.4.10/opt/httpd/libexec/ >>> + continue >>> + test -z install >>> + test -n >>> + test -n >>> + test -z mod_mpm_worker.la >>> + func_stripname / /var/tmp/root/httpd.2.4.10/opt/httpd/libexec/ >>> + dest=/var/tmp/root/httpd.2.4.10/opt/httpd/libexec >>> + test -d /var/tmp/root/httpd.2.4.10/opt/httpd/libexec >>> + isdir=yes >>> + test yes = yes >>> + destdir=/var/tmp/root/httpd.2.4.10/opt/httpd/libexec >>> + destname= >>> + libtool_install_magic=%%%MAGIC variable%%% >>> + staticlibs= >>> + future_libdirs= >>> + current_libdirs= >>> + func_resolve_sysroot mod_mpm_worker.la >>> + file=mod_mpm_worker.la >>> + func_lalib_unsafe_p mod_mpm_worker.la >>> + func_fatal_help `mod_mpm_worker.la' is not a valid libtool archive >>> >>> libtool: install: `mod_mpm_worker.la' is not a valid libtool archive >>> libtool: install: Try `libtool --help --mode=install' for more >>> information. >>> >>> FYI: the contents of mod_mpm_worker.la is: >>> root@x093:[/data/prj/apache/httpd/httpd-2.4.10]cat ./server/mpm/worker/ >>> mod_mpm_worker.la >>> # mod_mpm_worker.la - a libtool library file >>> # Generated by libtool (GNU libtool) 2.4.2 >>> # >>> # Please DO NOT delete this file! >>> # It is necessary for linking the library. >>> >>> # The name that we can dlopen(3). >>> dlname='mod_mpm_worker.so' >>> >>> # Names of this library. >>> library_names='mod_mpm_worker.so mod_mpm_worker.so mod_mpm_worker.so' >>> >>> # The name of the static archive. >>> old_library='mod_mpm_worker.a' >>> >>> # Linker flags that can not go in dependency_libs. >>> inherited_linker_flags='' >>> >>> # Libraries that this one depends upon. >>> dependency_libs=' -L/usr/include/openssl/lib' >>> >>> # Names of additional weak libraries provided by this library >>> weak_library_names='' >>> >>> # Version information for mod_mpm_worker. >>> current=0 >>> age=0 >>> revision=0 >>> >>> # Is this an already installed library? >>> installed=no >>> >>> # Should we warn about portability when linking against -modules? >>> shouldnotlink=yes >>> >>> # Files to dlopen/dlpreopen >>> dlopen='' >>> dlpreopen='' >>> >>> # Directory that this library needs to be installed in: >>> libdir='/opt/httpd/libexec' >>> >>> However, I think the problem might be the self-referencing >>> mod_mpm_worker.la in .libs >>> >>> root@x093:[/data/prj/apache/httpd/httpd-2.4.10]find . -name >>> mod_mpm_worker.\* -ls >>> 137301550 1 -rw-r--r-- 1 root system 987 Aug 1 09:07 >>> ./server/mpm/worker/mod_mpm_worker.la >>> 137301549 57 -rw-r--r-- 1 root system 57455 Aug 1 09:07 >>> ./server/mpm/worker/.libs/mod_mpm_worker.a >>> 137301547 1 -rw-r--r-- 1 root system 188 Aug 1 09:07 >>> ./server/mpm/worker/.libs/mod_mpm_worker.exp >>> 137301552 1 lrwxrwxrwx 1 root system 20 Aug 1 09:07 >>> ./server/mpm/worker/.libs/mod_mpm_worker.la -> ../mod_mpm_worker.la >>> 137301548 86 -rwxr-xr-x 1 root system 87823 Aug 1 09:07 >>> ./server/mpm/worker/.libs/mod_mpm_worker.so >>> 137301551 1 -rw-r--r-- 1 root system 988 Aug 1 09:07 >>> ./server/mpm/worker/.libs/mod_mpm_worker.lai >>> >>> Will try modifying the symbolic link to the real file, and see how it >>> works, or does not. >>> >>> >>> On Fri, Aug 1, 2014 at 12:30 PM, Michael Felt <mamf...@gmail.com> wrote: >>> >>>> ran >>>> # sh -x /var/apr/build-1/libtool --mode=install install >>>> mod_mpm_worker.la /var/tmp/root/httpd.2.4.10/opt/httpd/libexec/ >>>> >>>> got: >>>> ... >>>> + func_mode_install mod_mpm_worker.la >>>> /var/tmp/root/httpd.2.4.10/opt/httpd/libexec/ >>>> libtool: install: `mod_mpm_worker.la' is not a valid libtool archive >>>> libtool: install: Try `libtool --help --mode=install' for more >>>> information. >>>> root@x093:[/data/prj/apache/httpd/httpd-2.4.10] >>>> >>>> This is what I am starting from. >>>> root@x093:[/data/prj/apache/httpd/httpd-2.4.10]find . -name >>>> mod_mpm_worker.\* >>>> ./server/mpm/worker/mod_mpm_worker.la >>>> ./server/mpm/worker/.libs/mod_mpm_worker.a >>>> ./server/mpm/worker/.libs/mod_mpm_worker.exp >>>> ./server/mpm/worker/.libs/mod_mpm_worker.la >>>> ./server/mpm/worker/.libs/mod_mpm_worker.so >>>> ./server/mpm/worker/.libs/mod_mpm_worker.lai >>>> root@x093:[/data/prj/apache/httpd/httpd-2.4.10] >>>> >>>> My gut feeling is that the problem here, and the one I have with PHP >>>> (and instdso.sh) are related, i.e., in apr. >>>> >>>> Something else I saw and have some concern about (in the ... stuff) is >>>> the assumption that linux==unix. >>>> >>>> with some context - the line: version_type=linux >>>> >>>> ... >>>> + OTOOL= >>>> + OTOOL64= >>>> + libext=a >>>> + shrext_cmds=.so >>>> + extract_expsyms_cmds= >>>> + variables_saved_for_relink=PATH LIBPATH >>>> + need_lib_prefix=no >>>> + need_version=no >>>> + version_type=linux >>>> + runpath_var= >>>> + shlibpath_var=LIBPATH >>>> + shlibpath_overrides_runpath=unknown >>>> + libname_spec=lib$name >>>> + library_names_spec=${libname}${release}${shared_ext}$versuffix >>>> ${libname}${release}${shared_ext}$major $libname${shared_ext} >>>> + soname_spec= >>>> ... >>>> >>>> And, if it is not apr, then it is libtool again - but why was it >>>> working fine with 2.4.7 and 2.2.27? >>>> >>>> ASF.apr-vac.rte 1.5.1.0 C F apr-vac version >>>> 1.5.1 for >>>> ASF.apu-vac.rte 1.5.3.0 C F apu-vac version >>>> 1.5.3 for >>>> >>>> So, apr == version 1.5.1, and apr-util is version 1.5.3 >>>> >>>> >>>> >>>> On Fri, Aug 1, 2014 at 11:24 AM, Michael Felt <mamf...@gmail.com> >>>> wrote: >>>> >>>>> All was looking "normal" (I will make a small patch for the >>>>> buildaix.ksh script to increase the value for MAXMEM) - however, at the >>>>> end >>>>> there is an error (when installing to a DESTDIR). >>>>> build ends with: >>>>> >>>>> find: bad status-- >>>>> /var/tmp/root/httpd.2.4.10/opt/httpd/libexec/mod_mpm_worker.so >>>>> install: File mod_mpm_worker.so was not found. >>>>> >>>>> >>>>> I shall be looking into that later - however, if anyone has an >>>>> idea/suggestion - please do not hesitate to comment. >>>>> >>>>> p.s. I recall something like this happening before, but what that was >>>>> - I have forgotten. >>>>> >>>>> === >>>>> + make > build/aix/make.out >>>>> "util_expr_eval.c", line 1595.7: 1506-196 (W) Initialization between >>>>> types "const void* const" and "const char*(*)(struct {...}*,const void*)" >>>>> is not allowed. >>>>> "util_expr_eval.c", line 1596.7: 1506-196 (W) Initialization between >>>>> types "const void* const" and "const char*(*)(struct {...}*,const void*)" >>>>> is not allowed. >>>>> "util_expr_eval.c", line 1597.7: 1506-196 (W) Initialization between >>>>> types "const void* const" and "const char*(*)(struct {...}*,const void*)" >>>>> is not allowed. >>>>> "util_expr_eval.c", line 1598.7: 1506-196 (W) Initialization between >>>>> types "const void* const" and "const char*(*)(struct {...}*,const void*)" >>>>> is not allowed. >>>>> "util_expr_eval.c", line 1603.7: 1506-196 (W) Initialization between >>>>> types "const void* const" and "const char*(*)(struct {...}*,const >>>>> void*,const char*)" is not allowed. >>>>> "util_expr_eval.c", line 1604.7: 1506-196 (W) Initialization between >>>>> types "const void* const" and "const char*(*)(struct {...}*,const >>>>> void*,const char*)" is not allowed. >>>>> "util_expr_eval.c", line 1605.7: 1506-196 (W) Initialization between >>>>> types "const void* const" and "const char*(*)(struct {...}*,const >>>>> void*,const char*)" is not allowed. >>>>> "util_expr_eval.c", line 1606.7: 1506-196 (W) Initialization between >>>>> types "const void* const" and "const char*(*)(struct {...}*,const >>>>> void*,const char*)" is not allowed. >>>>> "util_expr_eval.c", line 1608.7: 1506-196 (W) Initialization between >>>>> types "const void* const" and "const char*(*)(struct {...}*,const >>>>> void*,const char*)" is not allowed. >>>>> "util_expr_eval.c", line 1609.7: 1506-196 (W) Initialization between >>>>> types "const void* const" and "const char*(*)(struct {...}*,const >>>>> void*,const char*)" is not allowed. >>>>> "util_expr_eval.c", line 1610.7: 1506-196 (W) Initialization between >>>>> types "const void* const" and "const char*(*)(struct {...}*,const >>>>> void*,const char*)" is not allowed. >>>>> "util_expr_eval.c", line 1611.7: 1506-196 (W) Initialization between >>>>> types "const void* const" and "const char*(*)(struct {...}*,const >>>>> void*,const char*)" is not allowed. >>>>> "util_expr_eval.c", line 1612.7: 1506-196 (W) Initialization between >>>>> types "const void* const" and "const char*(*)(struct {...}*,const >>>>> void*,const char*)" is not allowed. >>>>> "util_expr_eval.c", line 1613.7: 1506-196 (W) Initialization between >>>>> types "const void* const" and "const char*(*)(struct {...}*,const >>>>> void*,const char*)" is not allowed. >>>>> "util_expr_eval.c", line 1614.7: 1506-196 (W) Initialization between >>>>> types "const void* const" and "const char*(*)(struct {...}*,const >>>>> void*,const char*)" is not allowed. >>>>> "util_expr_eval.c", line 1615.7: 1506-196 (W) Initialization between >>>>> types "const void* const" and "const char*(*)(struct {...}*,const >>>>> void*,const char*)" is not allowed. >>>>> "util_expr_eval.c", line 1616.7: 1506-196 (W) Initialization between >>>>> types "const void* const" and "const char*(*)(struct {...}*,const >>>>> void*,char*)" is not allowed. >>>>> "util_expr_eval.c", line 1617.7: 1506-196 (W) Initialization between >>>>> types "const void* const" and "const char*(*)(struct {...}*,const >>>>> void*,char*)" is not allowed. >>>>> "util_expr_eval.c", line 1618.7: 1506-196 (W) Initialization between >>>>> types "const void* const" and "const char*(*)(struct {...}*,const >>>>> void*,const char*)" is not allowed. >>>>> "util_expr_eval.c", line 1619.7: 1506-196 (W) Initialization between >>>>> types "const void* const" and "const char*(*)(struct {...}*,const >>>>> void*,const char*)" is not allowed. >>>>> "util_expr_eval.c", line 1620.7: 1506-196 (W) Initialization between >>>>> types "const void* const" and "const char*(*)(struct {...}*,const >>>>> void*,const char*)" is not allowed. >>>>> "util_expr_eval.c", line 1621.7: 1506-196 (W) Initialization between >>>>> types "const void* const" and "const char*(*)(struct {...}*,const >>>>> void*,const char*)" is not allowed. >>>>> "util_expr_eval.c", line 1626.7: 1506-196 (W) Initialization between >>>>> types "const void* const" and "int(*)(struct {...}*,const void*,const >>>>> char*)" is not allowed. >>>>> "util_expr_eval.c", line 1627.7: 1506-196 (W) Initialization between >>>>> types "const void* const" and "int(*)(struct {...}*,const void*,const >>>>> char*)" is not allowed. >>>>> "util_expr_eval.c", line 1628.7: 1506-196 (W) Initialization between >>>>> types "const void* const" and "int(*)(struct {...}*,const void*,const >>>>> char*)" is not allowed. >>>>> "util_expr_eval.c", line 1629.7: 1506-196 (W) Initialization between >>>>> types "const void* const" and "int(*)(struct {...}*,const void*,const >>>>> char*)" is not allowed. >>>>> "util_expr_eval.c", line 1630.7: 1506-196 (W) Initialization between >>>>> types "const void* const" and "int(*)(struct {...}*,const void*,const >>>>> char*)" is not allowed. >>>>> "util_expr_eval.c", line 1631.7: 1506-196 (W) Initialization between >>>>> types "const void* const" and "int(*)(struct {...}*,const void*,const >>>>> char*)" is not allowed. >>>>> "util_expr_eval.c", line 1632.7: 1506-196 (W) Initialization between >>>>> types "const void* const" and "int(*)(struct {...}*,const void*,const >>>>> char*)" is not allowed. >>>>> "util_expr_eval.c", line 1633.7: 1506-196 (W) Initialization between >>>>> types "const void* const" and "int(*)(struct {...}*,const void*,const >>>>> char*)" is not allowed. >>>>> "util_expr_eval.c", line 1634.7: 1506-196 (W) Initialization between >>>>> types "const void* const" and "int(*)(struct {...}*,const void*,const >>>>> char*)" is not allowed. >>>>> "util_expr_eval.c", line 1635.7: 1506-196 (W) Initialization between >>>>> types "const void* const" and "int(*)(struct {...}*,const void*,const >>>>> char*)" is not allowed. >>>>> "util_expr_eval.c", line 1636.7: 1506-196 (W) Initialization between >>>>> types "const void* const" and "int(*)(struct {...}*,const void*,const >>>>> char*)" is not allowed. >>>>> "util_expr_eval.c", line 1637.7: 1506-196 (W) Initialization between >>>>> types "const void* const" and "int(*)(struct {...}*,const void*,const >>>>> char*)" is not allowed. >>>>> "util_expr_eval.c", line 1638.7: 1506-196 (W) Initialization between >>>>> types "const void* const" and "int(*)(struct {...}*,const void*,const >>>>> char*)" is not allowed. >>>>> "util_expr_eval.c", line 1639.7: 1506-196 (W) Initialization between >>>>> types "const void* const" and "int(*)(struct {...}*,const void*,const >>>>> char*)" is not allowed. >>>>> "util_expr_eval.c", line 1644.7: 1506-196 (W) Initialization between >>>>> types "const void* const" and "int(*)(struct {...}*,const void*,const >>>>> char*,const char*)" is not allowed. >>>>> "util_expr_eval.c", line 1645.7: 1506-196 (W) Initialization between >>>>> types "const void* const" and "int(*)(struct {...}*,const void*,const >>>>> char*,const char*)" is not allowed. >>>>> "util_expr_eval.c", line 1646.7: 1506-196 (W) Initialization between >>>>> types "const void* const" and "int(*)(struct {...}*,const void*,const >>>>> char*,const char*)" is not allowed. >>>>> "util_expr_eval.c", line 1647.7: 1506-196 (W) Initialization between >>>>> types "const void* const" and "int(*)(struct {...}*,const void*,const >>>>> char*,const char*)" is not allowed. >>>>> 1500-030: (I) INFORMATION: cache_save_filter: Additional >>>>> optimization may be attained by recompiling and specifying MAXMEM option >>>>> with a value greater than 8192. >>>>> "mod_include.c", line 721.26: 1506-068 (W) Operation between types >>>>> "const void*" and "const char*(*)(struct {...}*,const void*,const char*)" >>>>> is not allowed. >>>>> 1500-030: (I) INFORMATION: deflate_out_filter: Additional >>>>> optimization may be attained by recompiling and specifying MAXMEM option >>>>> with a value greater than 8192. >>>>> "mod_headers.c", line 971.43: 1506-280 (W) Function argument >>>>> assignment between types "const void*" and "const char*(*)(struct >>>>> request_rec*,char*)" is not allowed. >>>>> 1500-030: (I) INFORMATION: proxy_ftp_handler: Additional >>>>> optimization may be attained by recompiling and specifying MAXMEM option >>>>> with a value greater than 8192. >>>>> 1500-030: (I) INFORMATION: ap_proxy_ajp_request: Additional >>>>> optimization may be attained by recompiling and specifying MAXMEM option >>>>> with a value greater than 8192. >>>>> 1500-030: (I) INFORMATION: balancer_handler: Additional >>>>> optimization may be attained by recompiling and specifying MAXMEM option >>>>> with a value greater than 8192. >>>>> 1500-030: (I) INFORMATION: ssl_hook_Access: Additional >>>>> optimization may be attained by recompiling and specifying MAXMEM option >>>>> with a value greater than 8192. >>>>> "ssl_engine_vars.c", line 88.26: 1506-068 (W) Operation between types >>>>> "const void*" and "const char*(*)(struct {...}*,const void*)" is not >>>>> allowed. >>>>> "ssl_engine_vars.c", line 95.26: 1506-068 (W) Operation between types >>>>> "const void*" and "struct apr_array_header_t*(*)(struct {...}*,const >>>>> void*,const char*)" is not allowed. >>>>> 1500-030: (I) INFORMATION: status_handler: Additional optimization >>>>> may be attained by recompiling and specifying MAXMEM option with a value >>>>> greater than 8192. >>>>> 1500-030: (I) INFORMATION: lookup_variable: Additional >>>>> optimization may be attained by recompiling and specifying MAXMEM option >>>>> with a value greater than 8192. >>>>> + make install DESTDIR=/var/tmp/root/httpd.2.4.10 > >>>>> build/aix/install.out >>>>> mkdir /var/tmp/root/httpd.2.4.10 >>>>> mkdir /var/tmp/root/httpd.2.4.10/opt >>>>> mkdir /var/tmp/root/httpd.2.4.10/opt/httpd >>>>> mkdir /var/tmp/root/httpd.2.4.10/opt/httpd/libexec >>>>> find: bad status-- >>>>> /var/tmp/root/httpd.2.4.10/opt/httpd/libexec/mod_mpm_worker.so >>>>> install: File mod_mpm_worker.so was not found. >>>>> >>>>> >>>> >>> >> >