[pacman-dev] [PATCH] Fix a mistake in the cross-compilation fix

Dan McGee dpmcgee at gmail.com
Fri Apr 9 16:30:39 CEST 2010


On Fri, Apr 9, 2010 at 8:21 AM, Matthias Lanzinger <mlaenz at gmail.com> wrote:
> I noticed a serious mistake in my previous patch.
> -lssl and -lcrypto were beeing added to $LIBS and
> by that they were added as linker flags during compilation.
> This overruled the --as-needed flag and causes ssl to be directly
> linked to pacman.
>
> Signed-off-by: Matthias Lanzinger <mlaenz at gmail.com>

I'm actually going to revert most of this link stuff as you are still
not doing it right, and I want to make our library linking process a
bit saner.

> ---
>  configure.ac |    4 ++--
>  1 files changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/configure.ac b/configure.ac
> index d0fed48..9bb0cd1 100644
> --- a/configure.ac
> +++ b/configure.ac
> @@ -142,8 +142,8 @@ if test "x$internaldownload" = "xyes" ; then
>        AC_MSG_RESULT(yes)
>        AC_DEFINE([INTERNAL_DOWNLOAD], , [Use internal download library])
>        # Check for a download library if it was actually requested
> -       AC_CHECK_LIB([fetch], [fetchParseURL], [AC_SUBST([LIBS], ["-lfetch -lssl -lcrypto -ldl $LIBS"])],
> -               AC_MSG_ERROR([libfetch is needed to compile with internal download support]), [-lssl -lcrypto -ldl] )
> +       AC_CHECK_LIB([fetch], [fetchParseURL], [AC_SUBST([LIBS], ["-lfetch -ldl $LIBS"])],
> +               AC_MSG_ERROR([libfetch is needed to compile with internal download support]), [-lcrypto -ldl] )
The [-lcrypto -ldl] in the second line here is completely wrong if I'm
reading autoconf docs correctly. This is meant to be fallback
libraries, not additional dependencies of the original library.

>        # Check if libfetch supports conditional GET
>        # (version >=2.21, struct url has member last_modified)
>        AC_CHECK_MEMBER(struct url.last_modified, ,
> --

Basically this whole thing assumes you are running with a libfetch
compiled exactly as we do. Who says you need crypto support? We
shouldn't be making these decisions during config time.

-Dan


More information about the pacman-dev mailing list