Re: /bzr/squid3/trunk/ r10069: Fixed OpenSolaris build issues.

View: New views
3 Messages — Rating Filter:   Alert me  

Parent Message unknown Re: /bzr/squid3/trunk/ r10069: Fixed OpenSolaris build issues.

by Amos Jeffries-2 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message


Just a note on this change...

I'm trying to get rid of XTRA_LIBS entirely. It's adding to the code bloat
and external library dependencies in Squid.

Moving towards a model of the binaries and/or components which require
specific libraries link their @FOOLIB@ explicitly when needed.

Please make new dependencies fit that slimming model where possible. If
you can identify existing ones needed please prioritize the general cleanup
for their conversion out of XTRA_LIBS.

If it's a genuine wide-ranging dependency unrelated to any component we
have the src/Makefile.am:COMMON_LIBS or src/Common.am:COMPAT_LIB being used
as the dependency linkage location. Whichever is more appropriate in
semantic meaning.

Amos


Re: /bzr/squid3/trunk/ r10069: Fixed OpenSolaris build issues.

by Robert Collins :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

On Tue, 2009-11-03 at 13:19 +1300, Amos Jeffries wrote:
> Just a note on this change...
>
> I'm trying to get rid of XTRA_LIBS entirely. It's adding to the code bloat
> and external library dependencies in Squid.

This isn't clear to me, can you expand on it please. Specifically how
XTRA_LIBS - the list of additional libraries to link against - is
different to COMMON_LIBS.

-Rob


signature.asc (204 bytes) Download Attachment

Re: /bzr/squid3/trunk/ r10069: Fixed OpenSolaris build issues.

by Amos Jeffries-2 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Robert Collins wrote:
> On Tue, 2009-11-03 at 13:19 +1300, Amos Jeffries wrote:
>> Just a note on this change...
>>
>> I'm trying to get rid of XTRA_LIBS entirely. It's adding to the code bloat
>> and external library dependencies in Squid.
>
> This isn't clear to me, can you expand on it please. Specifically how
> XTRA_LIBS - the list of additional libraries to link against - is
> different to COMMON_LIBS.

Very little.

XTRA_LIBS is old and pulls in a mix of external libraries, local lib/*
files, paths and sometimes build flags.
It's used in some of the older binaries under helpers, tools, test-suite
etc.

For one small example; XTRA_LIBS currently pulls into the ufsdump helper
(which only really needs storage, diskio, crypt/md5, and _maybe_ the
header parser):
  * epoll - main squid binary only.
  * windows threading libraries - main binary only.
  * kerberos libraries and build flags - main binary and one helper only.
  * OpenSSL libraries - main binary only.
  * berkley db - session helper only.


COMMON_LIBS was added by Alex quite recently. It seems to be used only
within src/Makefile.am and for compatibility sharing of the base/core
convenience libraries use by the older slightly bloated binaries built
there.

I'm viewing it as a slightly cleaned up version of XTRA_LIBS.


Binaries built elsewhere have been pared down to minimal linkages
already. Or for helpers are in the process of that happening now.

As the unit-tests are cleaned up they only have a list of libraries used
by the test and stubs for the hanging bits.

Amos
--
Please be using
   Current Stable Squid 2.7.STABLE7 or 3.0.STABLE20
   Current Beta Squid 3.1.0.14