See <http://build.squid-cache.org/job/3.HEAD-i386-opensolaris/531/changes>
Changes: [Amos Jeffries <amosjeffr...@squid-cache.org>] Get url_rewrite_concurrency upgrade parse right [Amos Jeffries <amosjeffr...@squid-cache.org>] Upgrade process for obsolete options One problem we currently have with upgrades is leaving the parser able to avoid its bungled/unknown option message for directives which have been fully removed or massively syntax altered. We are able to handle this for flags and option syntax easily but the parser has been particularly dense and strict on the directives (first word of each line). This patch updates the cf_* and cfgman code to allow a special directive type "obsolete" which causes these directives to be handled specially without causing the directives to remain in the publicly visible squid.conf documentation. It allows DOC_START / DOC_END comments to be written in cf.data.pre describing the upgrade actions that need to be taken. This text is dumped to cache.log verbatim when the configuration option is sighted. If "-k parse" is used the text is displayed at debug level 0, otherwise displayed at debug level 1. One line indicating a generic "directive X is obsolete" is always displayed at level 0 for backwards compatibility with admin expectations of a high level "bungled" message. After all this text display, parse_obsolete(char*) is called with the directive name. This function exists in cache_cf.cc and can be coded to selectivey do more complex handling of the directive. ie for upgrade actions deeper than removal. * cf.data.pre has entries added for all the 2.6-3.1 directives I could find that were removed up to 3.HEAD [Amos Jeffries <squ...@treenet.co.nz>] Author: Various Translators Translations Update auto-save ------------------------------------------ Started by upstream project "3.HEAD-amd64-CentOS-5.3" build number 914 Building remotely on osol-x86 [3.HEAD-i386-opensolaris] $ bzr log --show-ids -r -1 [3.HEAD-i386-opensolaris] $ bzr pull --overwrite http://bzr.squid-cache.org/bzr/squid3/trunk/ http://bzr.squid-cache.org/bzr/squid3/trunk is permanently redirected to http://bzr.squid-cache.org/bzr/squid3/trunk/ M scripts/www/build-cfg-help.pl M src/cache_cf.cc M src/cf.data.depend M src/cf.data.pre M src/cf_gen.cc M src/globals.h M src/main.cc All changes applied successfully. Now on revision 10971. [3.HEAD-i386-opensolaris] $ bzr log --show-ids -r -1 [3.HEAD-i386-opensolaris] $ bzr log -v -r revid:squ...@treenet.co.nz-20101022170220-pev3juvf7ifjm94k..revid:amosjeffr...@squid-cache.org-20101023124205-24fqwux2sxq9ah6i --long --show-ids [3.HEAD-i386-opensolaris] $ /bin/sh -xe /var/tmp/hudson1570163986216849636.sh + ./test-builds.sh --verbose --cleanup --use-config-cache + LDFLAGS=-L/usr/local/gcc-libs/lib + CC='ccache gcc' + CXX='ccache g++' + pjobs=-j4 TESTING: layer-00-bootstrap chmod: cannot access `btlayer-00-bootstrap': No such file or directory total 4 drwxr-xr-x 2 hudson other 2 Oct 23 07:42 . drwxr-xr-x 22 hudson other 45 Oct 23 07:42 .. BUILD: .././test-suite/buildtests/layer-00-bootstrap.opts automake (1.11) : automake autoconf (2.64) : autoconf libtool (2.2) : libtool libtool path : /usr/local/bin Bootstrapping Bootstrapping lib/libTrie Fixing configure recursion Autotool bootstrapping complete. buildtest.sh result is 0 BUILD: .././test-suite/buildtests/layer-00-bootstrap.opts Build OK. Global result is 0. REMOVE DATA: btlayer-00-bootstrap REMOVE LOG: btlayer-00-bootstrap.log TESTING: layer-00-default total 4 drwxr-xr-x 2 hudson other 2 Oct 23 07:43 . drwxr-xr-x 21 hudson other 44 Oct 23 07:43 .. BUILD: .././test-suite/buildtests/layer-00-default.opts configure: creating cache /tmp/config.cache.18939 checking for a BSD-compatible install... /opt/jdsbld/bin/install -c checking whether build environment is sane... yes checking for a thread-safe mkdir -p... /usr/gnu/bin/mkdir -p checking for gawk... no checking for mawk... no checking for nawk... nawk checking whether make sets $(MAKE)... yes checking how to create a ustar tar archive... gnutar checking whether to enable maintainer-specific portions of Makefiles... no checking for gcc... ccache gcc checking for C compiler default output file name... a.out checking whether the C compiler works... yes checking whether we are cross compiling... no checking for suffix of executables... checking for suffix of object files... o checking whether we are using the GNU C compiler... yes checking whether ccache gcc accepts -g... yes checking for ccache gcc option to accept ISO C89... none needed checking for style of include used by make... GNU checking dependency style of ccache gcc... gcc3 checking whether ccache gcc and cc understand -c and -o together... yes checking whether we are using the GNU C++ compiler... yes checking whether ccache g++ accepts -g... yes checking dependency style of ccache g++... gcc3 checking build system type... i386-pc-solaris2.11 checking host system type... i386-pc-solaris2.11 checking simplified host os... solaris2.11 (version 2.11) checking for ranlib... ranlib checking how to run the C preprocessor... ccache gcc -E checking whether ln -s works... yes checking for grep that handles long lines and -e... /usr/gnu/bin/grep checking for egrep... /usr/gnu/bin/grep -E checking for sh... /usr/gnu/bin/sh checking for false... /usr/gnu/bin/false checking for true... /usr/gnu/bin/true checking for mv... /usr/gnu/bin/mv checking for mkdir... /usr/gnu/bin/mkdir checking for ln... /usr/gnu/bin/ln checking for chmod... /usr/gnu/bin/chmod checking for tr... /usr/gnu/bin/tr checking for rm... /usr/gnu/bin/rm checking for cppunit-config... /usr/local/bin/cppunit-config checking for perl... /usr/bin/perl checking for pod2man... /usr/local/bin/pod2man checking for ar... /usr/gnu/bin/ar configure: strict error checking enabled: yes checking whether to use loadable modules... yes checking for a sed that does not truncate output... /usr/gnu/bin/sed checking for fgrep... /usr/gnu/bin/grep -F checking for ld used by ccache gcc... /usr/ccs/bin/ld checking if the linker (/usr/ccs/bin/ld) is GNU ld... no checking for BSD- or MS-compatible name lister (nm)... /usr/gnu/bin/nm -B checking the name lister (/usr/gnu/bin/nm -B) interface... BSD nm checking the maximum length of command line arguments... 786240 checking whether the shell understands some XSI constructs... yes checking whether the shell understands "+="... yes checking for /usr/ccs/bin/ld option to reload object files... -r checking for objdump... objdump checking how to recognize dependent libraries... pass_all checking for ar... /usr/gnu/bin/ar checking for strip... strip checking for ranlib... (cached) ranlib checking command to parse /usr/gnu/bin/nm -B output from ccache gcc object... ok checking for dlfcn.h... yes checking whether we are using the GNU C++ compiler... (cached) yes checking whether ccache g++ accepts -g... (cached) yes checking dependency style of ccache g++... (cached) gcc3 checking how to run the C++ preprocessor... ccache g++ -E checking for objdir... .libs checking if ccache gcc supports -fno-rtti -fno-exceptions... no checking for ccache gcc option to produce PIC... -fPIC -DPIC checking if ccache gcc PIC flag -fPIC -DPIC works... yes checking if ccache gcc static flag -static works... no checking if ccache gcc supports -c -o file.o... yes checking if ccache gcc supports -c -o file.o... (cached) yes checking whether the ccache gcc linker (/usr/ccs/bin/ld) supports shared libraries... yes checking whether -lc should be explicitly linked in... yes checking dynamic linker characteristics... solaris2.11 ld.so checking how to hardcode library paths into programs... immediate checking for shl_load... no checking for shl_load in -ldld... no checking for dlopen... yes checking whether a program can dlopen itself... yes checking whether a statically linked program can dlopen itself... yes checking whether stripping libraries is possible... yes checking if libtool supports shared libraries... yes checking whether to build shared libraries... yes checking whether to build static libraries... yes checking for ld used by ccache g++... /usr/ccs/bin/ld checking if the linker (/usr/ccs/bin/ld) is GNU ld... no checking whether the ccache g++ linker (/usr/ccs/bin/ld) supports shared libraries... yes checking for ccache g++ option to produce PIC... -fPIC -DPIC checking if ccache g++ PIC flag -fPIC -DPIC works... yes checking if ccache g++ static flag -static works... no checking if ccache g++ supports -c -o file.o... yes checking if ccache g++ supports -c -o file.o... (cached) yes checking whether the ccache g++ linker (/usr/ccs/bin/ld) supports shared libraries... yes checking dynamic linker characteristics... solaris2.11 ld.so checking how to hardcode library paths into programs... immediate checking which extension is used for runtime loadable modules... .so checking which variable specifies run-time module search path... LD_LIBRARY_PATH checking for the default library search path... /lib /usr/lib checking for library containing dlopen... none required checking for dlerror... yes checking for shl_load... (cached) no checking for shl_load in -ldld... (cached) no checking for dld_link in -ldld... no checking for _ prefix in compiled symbols... no checking whether deplibs are loaded by dlopen... yes checking for argz.h... no checking for error_t... no checking for argz_add... no checking for argz_append... no checking for argz_count... no checking for argz_create_sep... no checking for argz_insert... no checking for argz_next... no checking for argz_stringify... no checking whether libtool supports -dlopen/-dlpreopen... yes checking for ltdl.h... yes checking whether lt_dlinterface_register is declared... yes checking for lt_dladvise_preload in -lltdl... no checking where to find libltdl headers... -I${top_srcdir}/libltdl checking where to find libltdl library... ${top_build_prefix}libltdl/libltdlc.la checking for unistd.h... yes checking for dl.h... no checking for sys/dl.h... yes checking for dld.h... no checking for mach-o/dyld.h... no checking for dirent.h... yes checking for closedir... yes checking for opendir... yes checking for readdir... yes checking for strlcat... yes checking for strlcpy... yes checking for library containing dlopen... (cached) none required checking for dlerror... (cached) yes checking for shl_load... (cached) no checking for shl_load in -ldld... (cached) no checking for dld_link in -ldld... (cached) no checking what kind of compiler we're using... gcc checking for compiler variant... gcc checking whether compiler accepts -Werror -fhuge-objects... no configure: inlining optimizations enabled: yes configure: cbdata debugging enabled: no configure: xmalloc stats display: no checking for DiskIO modules to be enabled... AIO Blocking DiskDaemon DiskThreads .././test-suite/../configure: line 18824: syntax error at line 19074: `!' unexpected make: *** No rule to make target `distcheck'. Stop. buildtest.sh result is 2 BUILD: .././test-suite/buildtests/layer-00-default.opts Build FAILED.