This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
Re: [PATCH 1/8] Add --with-system-zlib in bfd
- From: "H.J. Lu" <hjl dot tools at gmail dot com>
- To: Pedro Alves <palves at redhat dot com>
- Cc: Binutils <binutils at sourceware dot org>, GDB <gdb-patches at sourceware dot org>
- Date: Tue, 31 Mar 2015 05:01:06 -0700
- Subject: Re: [PATCH 1/8] Add --with-system-zlib in bfd
- Authentication-results: sourceware.org; auth=none
- References: <20150326155711 dot GA10088 at gmail dot com> <20150331061337 dot GA30996 at vapier> <CAMe9rOpRauO-5fxuV5bZkUC0tMbbi0tCTCmGQ0GEe1NXEa1dYw at mail dot gmail dot com> <551A78D4 dot 7050804 at redhat dot com> <CAMe9rOomwTtSiSS1K1zQpGvpArqZLDfOyapDVvC=Yfy5m3zBEg at mail dot gmail dot com> <551A7CB1 dot 4060101 at redhat dot com> <CAMe9rOoBdTqGa-k9nX9ktW23h-jfA34Jx5D4wqnqO+eb4c8buA at mail dot gmail dot com> <551A8907 dot 6070309 at redhat dot com>
On Tue, Mar 31, 2015 at 4:46 AM, Pedro Alves <palves@redhat.com> wrote:
> On 03/31/2015 12:33 PM, H.J. Lu wrote:
>> On Tue, Mar 31, 2015 at 3:53 AM, Pedro Alves <palves@redhat.com> wrote:
>>> On 03/31/2015 11:46 AM, H.J. Lu wrote:
>
>>>> It is better for Makefile.am to use what configure.ac defines
>>>
>>> That's orthogonal. How configure.ac defines what Makefile.am
>>> consumes is the issue. That can either be through a shared macro,
>>> which makes sure all tools have the exact same command line option
>>> (like AM_ZLIB), or you manually put the same configure.ac bits
>>> everywhere.
>>
>> They aren't the same. Some tools like ld, which use zlib implicitly
>> via libfd and libtool, don't need to reference zlib.
>
> Sure, that one just drops AM_ZLIB.
>
>> Some only need
>> to reference zlib library. Some only need to reference header.
>>
>
> And? If you replace AM_ZLIB's body with:
>
> # Use the system's zlib library.
> zlibdir=-L../zlib
> zlibinc="-I\$(srcdir)/../zlib"
> AC_ARG_WITH(system-zlib,
> [AS_HELP_STRING([--with-system-zlib], [use installed libz])],
> zlibdir=
> zlibinc=
> )
> AC_SUBST(zlibdir)
> AC_SUBST(zlibinc)
>
> then it'll work for those too. They just won't use zlibinc
> or zlibinc if they don't need it. Currently you have:
>
> bfd:
>
>> +# Use the system's zlib library.
>> +zlibdir=-L../zlib
>> +zlibinc="-I\$(srcdir)/../zlib"
>> +AC_ARG_WITH(system-zlib,
>> +[AS_HELP_STRING([--with-system-zlib], [use installed libz])],
>> +zlibdir=
>> +zlibinc=
>> +)
>> +AC_SUBST(zlibdir)
>> +AC_SUBST(zlibinc)
>
> gold:
>
> +# Use the system's zlib library.
> +zlibdir=-L../zlib
> +zlibinc="-I\$(srcdir)/../zlib"
> +AC_ARG_WITH(system-zlib,
> +[AS_HELP_STRING([--with-system-zlib], [use installed libz])],
> +zlibdir=
> +zlibinc=
> +)
> +AC_SUBST(zlibdir)
> +AC_SUBST(zlibinc)
>
> gas:
>
> +# Use the system's zlib library.
> +zlibinc="-I\$(srcdir)/../zlib"
> +AC_ARG_WITH(system-zlib,
> +[AS_HELP_STRING([--with-system-zlib], [use installed libz])],
> +zlibinc=
> +)
> +AC_SUBST(zlibinc)
>
> binutils:
>
> +# Use the system's zlib library.
> +zlibdir=-L../zlib
> +zlibinc="-I\$(srcdir)/../zlib"
> +AC_ARG_WITH(system-zlib,
> +[AS_HELP_STRING([--with-system-zlib], [use installed libz])],
> +zlibdir=
> +zlibinc=
> +)
> +AC_SUBST(zlibdir)
> +AC_SUBST(zlibinc)
>
> gdb:
>
> +# Use the system's zlib library.
> +zlibdir=-L../zlib
> +AC_ARG_WITH(system-zlib,
> +[AS_HELP_STRING([--with-system-zlib], [use installed libz])],
> +zlibdir=
> +)
> +AC_SUBST(zlibdir)
>
> and gcc has:
>
> # Use the system's zlib library.
> zlibdir=-L../zlib
> zlibinc="-I\$(srcdir)/../zlib"
> AC_ARG_WITH(system-zlib,
> [AS_HELP_STRING([--with-system-zlib], [use installed libz])],
> zlibdir=
> zlibinc=
> )
> AC_SUBST(zlibdir)
> AC_SUBST(zlibinc)
>
>
>
> They're all the same. Just a couple doesn't define zlibdir or zlibinc.
If zlib.m4 is changed, I will use it and GCC can also use it. But I
don't know if other packages use zlib.m4.
--
H.J.