[pacman-dev] [PATCH] libalpm: add pkg-config file
Allan McRae
allan at archlinux.org
Tue Mar 20 10:34:52 EDT 2012
On 20/03/12 14:00, Dave Reisner wrote:
> Borrowed heavily from libarchive.
>
> Signed-off-by: Dave Reisner <dreisner at archlinux.org>
> ---
> Throw a bone to the few projects who link against us...
>
> configure.ac | 1 +
> lib/libalpm/Makefile.am | 3 +++
> lib/libalpm/libalpm.pc.in | 11 +++++++++++
> 3 files changed, 15 insertions(+)
> create mode 100644 lib/libalpm/libalpm.pc.in
>
> diff --git a/configure.ac b/configure.ac
> index 12a6e65..9093a90 100644
> --- a/configure.ac
> +++ b/configure.ac
> @@ -382,6 +382,7 @@ AC_DEFINE_UNQUOTED([SCRIPTLET_SHELL], "$SCRIPTLET_SHELL", [The shell used to run
> AC_CONFIG_FILES([
> lib/libalpm/Makefile
> lib/libalpm/po/Makefile.in
> +lib/libalpm/libalpm.pc
> src/pacman/Makefile
> src/pacman/po/Makefile.in
> src/util/Makefile
> diff --git a/lib/libalpm/Makefile.am b/lib/libalpm/Makefile.am
> index 61dcb87..17d9a58 100644
> --- a/lib/libalpm/Makefile.am
> +++ b/lib/libalpm/Makefile.am
> @@ -23,6 +23,9 @@ if ENABLE_GNU89_INLINE_CC
> AM_CFLAGS += -fgnu89-inline
> endif
>
> +pkgconfigdir = $(libdir)/pkgconfig
> +pkgconfig_DATA = libalpm.pc
> +
> libalpm_la_SOURCES = \
> add.h add.c \
> alpm.h alpm.c \
> diff --git a/lib/libalpm/libalpm.pc.in b/lib/libalpm/libalpm.pc.in
> new file mode 100644
> index 0000000..12bea28
> --- /dev/null
> +++ b/lib/libalpm/libalpm.pc.in
> @@ -0,0 +1,11 @@
> +prefix=@prefix@
> +exec_prefix=@exec_prefix@
> +libdir=@libdir@
> +includedir=@includedir@
> +
> +Name: libalpm
> +Description: Arch Linux package management library
> +Version: @VERSION@
> +Cflags: -I${includedir}
> +Libs: -L${libdir} -lalpm
> +Libs.private: @LIBS@
I do not think this is quite right... I end up with:
Cflags: -I${includedir}
Libs: -L${libdir} -lalpm
Libs.private: -lssl -larchive -lm -lgpgme -lassuan -lgpg-error
Note, no -lcurl or -lcrypto (although that is somewhat covered by -lssl)
I am not pkg-config expert... but I think libcurl goes in a
"Requires.private" section as it has a pkg-config files. So should
libcrypto and libarchive. Libs.private should only have -libgpgme.
Allan
More information about the pacman-dev
mailing list