Amos Jeffries [Fri, 6 Mar 2009 07:36:36 +0000 (20:36 +1300)]
Author: Francesco Chemolli <kinkie@squid-cache.org>
Bug 2608: Build broken by Linux basename() implementation.
This patch implements a replacement for the call to basename() in
debugs().
It involves a hard-coded relative test location for debugs.cc used as an
anchor within the __FILE__ path. This relative path MUST be updated
whenever debugs.cc is moved.
debugs() is no longer valid to be used within auto-generated files which
may retain a completely different relative base path.
Amos Jeffries [Tue, 3 Mar 2009 13:02:21 +0000 (02:02 +1300)]
Experimental Solaris 10 pthreads Support
Why is it going in since its experimental?
- we need a snapshot to test the configure code with.
- side testing indicates this new option is best and does work under
some conditions with only Solaris native compiler to build with.
Amos Jeffries [Sat, 28 Feb 2009 13:38:11 +0000 (02:38 +1300)]
TestBed: Alter translation to work in more make targets
This makes translation work in distcheck, uninstallcheck, and installcheck
out-of-tree testing. Not just dist, all, and check.
Also adds some clean failure for out-of-tree 'make all' translations.
Automake seems to not have enough correct path info to perform translation
when its run inside distcheck target.
Re-add distcheck to Testbed requirements.
TODO: verify through build slaves that its portable.
Alex Rousskov [Fri, 27 Feb 2009 15:45:17 +0000 (08:45 -0700)]
SourceLayout: src/auth, take 0: Moved src/AuthFoo* to src/auth/Foo*, polished.
SourceLayout: src/fs, take 0: Polished Makefiles.
These fixes should have no runtime effects and were triggered by an attempt to
make "make distclean" work. TODO: add Auth and Fs namespaces, rename classes.
Alex Rousskov [Fri, 27 Feb 2009 04:58:29 +0000 (21:58 -0700)]
Add a dummy file called testHeaders to CLEANFILES.
It is created by testheaders.sh and distclean does not know about it.
The change can be reversed when testheaders.sh and its users are fixed.
Amos Jeffries [Thu, 26 Feb 2009 03:58:09 +0000 (16:58 +1300)]
TestBed: correct log handling.
Removal of the log MUST happen after the log has been checked for a
successful run. Removal of run data MAY hapen before this.
Probably data SHOULD be removed early to prevent excess data between runs.
Alex Rousskov [Wed, 25 Feb 2009 20:35:16 +0000 (13:35 -0700)]
SourceLayout: src/fs, take 0
Simplified and documented STORE_* autotools variables.
All fs code is built as fs/lib*.a libraries now, no exception for
diskd and aufs "fake" legacy modules.
fs/* sources are no longer added to executables directly.
TODO: Add Makefiles to specific fs modules.
TODO: Add Fs namespace and rename fs classes accordingly.
testHeaders in fs/Makefile.am requires absolute source directories for
out-of-tree checks to work.
Removed src/ip/stubQosConfig.cc from STORE_TEST_SOURCES. It does not seem to
be needed in my tests. If it is needed, the stub file should be moved into
src/tests to avoid dependency on a source in a directory with a Makefile. If
the stub is not needed at all, it should be removed from the tree. Note that
src/ip/stubQosConfig.cc is non-empty only when --enable-zph-qos.
These changes were triggered by an attempt to make "make distclean" work.
Amos Jeffries [Mon, 23 Feb 2009 11:05:52 +0000 (00:05 +1300)]
Author: frencesco chemolli <kinkie@squid-cache.org>
testBed: add parallel make capability to build testing
This small patch to the test-suite system allows for parallel-make in
the test-suite (only on Linux). This will allow for shorter build-test
times on multicpu/multicore systems.
Amos Jeffries [Mon, 23 Feb 2009 09:41:36 +0000 (22:41 +1300)]
Author: Mark Nottingham <mnot@pobox.com>
Bug 2599: Idempotent start
As discussed on squid-dev, Squid shouldn't return a shell error when:
- starting squid, if it's already running
- stopping squid, if it isn't running
This is to make writing scripts that control squid easier.
Note that it should still notify the user, and should not affect other
operations (e.g., kill, rotate, parse).
Alex Rousskov [Fri, 20 Feb 2009 18:48:56 +0000 (11:48 -0700)]
Added CBDATA_NAMESPACED_CLASS_INIT to define static members of classes that
live in a namespace.
The alternative was to change CBDATA_CLASS_* macros so that the static member
name does not depend on the type. That may have been better, but perhaps there
are some, unknown to me, low-level reasons why unique member names are
required for class cbdata code to work.
Alex Rousskov [Thu, 19 Feb 2009 22:35:50 +0000 (15:35 -0700)]
Moved src/ICAP into src/adaptation/icap.
Moved src/eCAP into src/adaptation/ecap.
As a side effect, eCAP now tests its headers. MessageRep.h needed to include
config.h to pass the tests, which probably indicates a bug in some other
header (possibly enums.h).
Alex Rousskov [Thu, 19 Feb 2009 20:28:48 +0000 (13:28 -0700)]
Fixed default -I options: there are no headers in $(top_builddir)/lib/ but
there is autoconf.h in $(top_builddir)/include/
Fixed hard-coded OBJS dependencies: autoconf.h is in $(top_builddir)/include/
The bug apparently did not bother anyobody too much, adding to my suspicion
that we do not really need these hard-coded OBJS dependencies.
Alex Rousskov [Thu, 19 Feb 2009 19:00:01 +0000 (12:00 -0700)]
SourceLayout: src/base, take 0 with tweaks
Added src/base directory for fundamental, commonly-used code pieces that are
not large enough to warrant their own directories. Currently base/ contains
the beginning of AsyncCalls hierarchy, which may eventually get its own
directory.
Removed src/ip from the top-level SUBDIRS list. Made cf_gen compile without
libip.
Started building makefile includes, to be used in subdir makefiles:
src/Common.am and src/TestHeaders.am.
Alex Rousskov [Thu, 19 Feb 2009 18:19:37 +0000 (11:19 -0700)]
Moved header testing from Common.am to TestHeaders.am. Not all makefiles
using Common.am will use a standardized header test, at least for now.
We have makefiles that test headers in subdirectories, for example.
Alex Rousskov [Thu, 19 Feb 2009 07:16:14 +0000 (00:16 -0700)]
Added src/base directory for fundamental, commonly-used code pieces that are
not large enough to warrant their own directories. Currently base/ contains
the beginning of AsyncCalls hierarchy, which may eventually get its own
directory.
Reduced cf_gen dependencies so that it can be built before subdirectories,
as, apparently, required by BUILT_SOURCES.
Moved some libraries that are used by virtually all executables to COMMON_LIBS.
The list will probably grow as we try to reduce the insane complexity of the
current Makefile.am.
Alex Rousskov [Thu, 19 Feb 2009 07:15:47 +0000 (00:15 -0700)]
Added src/base directory for fundamental, commonly-used code pieces that are
not large enough to warrant their own directories. Currently base/ contains
the beginning of AsyncCalls hierarchy, which may eventually get its own
directory.
Alex Rousskov [Thu, 19 Feb 2009 07:14:08 +0000 (00:14 -0700)]
Copied common Makefile.am stuff seen in a few Makefile.ams to a single
Makefile "header". This avoids evil code duplication. This file should be
included by most Makefile.ams inside src/. Needs more work as some of the
copied code is questionable and more code can probably be extracted here. See
XXXs.
TODO: The .h dependency test script part seems pretty universal, but if
many subdirs need to customize it, we may want to put it into a separate
Makefile "header".
Alex Rousskov [Thu, 19 Feb 2009 07:11:38 +0000 (00:11 -0700)]
Removed src/ip from the top-level SUBDIRS list. That directory is not
a top-level subdirectory and it is already listed in src/Makefile.am.
The commit message introducing the change talked about libip being a "POD
library". I do not know what that is, but, hopefully, we do not really need to
make this kind of exceptions for any src/ libraries.