[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: libgit2, libgit2-glib: pkg-config file: dependencies on other librar
From: |
Ludovic Courtès |
Subject: |
Re: libgit2, libgit2-glib: pkg-config file: dependencies on other libraries: how to represent them in Guix? |
Date: |
Sun, 19 Jun 2016 15:53:36 +0200 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/24.5 (gnu/linux) |
Danny Milosavljevic <address@hidden> skribis:
> On Sat, 18 Jun 2016 09:47:19 +0200
> Ricardo Wurmus <address@hidden> wrote:
>
>> This depends on the pkg-config file that the library installs. If this
>> file contains a section that lists other libraries as private, then
>> propagation is probably the correct approach.
>
> See <https://github.com/libgit2/libgit2/blob/master/libgit2.pc.in>
>
> Name: libgit2
> Description: The git library, take 2
> Version: @LIBGIT2_VERSION_STRING@
>
> Libs: -L"${libdir}" -lgit2
> Libs.private: @LIBGIT2_PC_LIBS@
> Requires.private: @LIBGIT2_PC_REQUIRES@
>
> Cflags: -I${includedir}
>
> And in the CMakeLists.txt :
>
> IF (CMAKE_SYSTEM_NAME MATCHES "FreeBSD")
> LIST(APPEND LIBGIT2_PC_LIBS "-lssl")
> ELSE()
> SET(LIBGIT2_PC_REQUIRES "${LIBGIT2_PC_REQUIRES} openssl")
> ENDIF ()
>
> So I take it that it should have been a propagated-input in libgit2 itself
> already, right?
Yes. OTOH, “Requires.private” is used only when static linking; are we
using static linking here? If not, we could leave it as is.
Thanks,
Ludo’.