Patchwork [1/2] package/libnspr: add pkg-config file

login
register
mail settings
Submitter Yann E. MORIN
Date Aug. 18, 2012, 12:55 p.m.
Message ID <1345294543-13671-1-git-send-email-yann.morin.1998@free.fr>
Download mbox | patch
Permalink /patch/178462/
State Accepted
Headers show

Comments

Yann E. MORIN - Aug. 18, 2012, 12:55 p.m.
Some packages use pkg-config to check for libnspr.
libnspr does bundle a .pc file, but it is not installed.

Simply install it (using patch from Debian).

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
---
 package/libnspr/libnspr.mk |   16 ++++++++++++++++
 package/libnspr/nspr.pc.in |   10 ++++++++++
 2 files changed, 26 insertions(+), 0 deletions(-)
 create mode 100644 package/libnspr/nspr.pc.in
Thomas Petazzoni - Aug. 21, 2012, 9:14 a.m.
Le Sat, 18 Aug 2012 14:55:42 +0200,
"Yann E. MORIN" <yann.morin.1998@free.fr> a écrit :

> Some packages use pkg-config to check for libnspr.
> libnspr does bundle a .pc file, but it is not installed.

Here you're saying that libnspr bundles a .pc file... but

> diff --git a/package/libnspr/nspr.pc.in b/package/libnspr/nspr.pc.in
> new file mode 100644
> index 0000000..3719260
> --- /dev/null
> +++ b/package/libnspr/nspr.pc.in

here you're adding it to Buildroot. I'm confused. Could you explain? :-)

Thanks!

Thomas
Yann E. MORIN - Aug. 21, 2012, 4:31 p.m.
Thomas, All,

On Tuesday 21 August 2012 11:14:39 Thomas Petazzoni wrote:
> Le Sat, 18 Aug 2012 14:55:42 +0200,
> "Yann E. MORIN" <yann.morin.1998@free.fr> a écrit :
> 
> > Some packages use pkg-config to check for libnspr.
> > libnspr does bundle a .pc file, but it is not installed.
> 
> Here you're saying that libnspr bundles a .pc file... but
> 
> > diff --git a/package/libnspr/nspr.pc.in b/package/libnspr/nspr.pc.in
> > new file mode 100644
> > index 0000000..3719260
> > --- /dev/null
> > +++ b/package/libnspr/nspr.pc.in
> 
> here you're adding it to Buildroot. I'm confused. Could you explain? :-)

Bah, I guess I was cafeine-deprived when I wrote this... libnspr does *not*
bundle a .pc file. I don't know where I saw one: I just re-extracted the
sources, and there's clearly no pkg-config file in there...

I'll reword the commit message and resubmit.

Thanks for the review.

Regards,
Yann E. MORIN.

Patch

diff --git a/package/libnspr/libnspr.mk b/package/libnspr/libnspr.mk
index 689caa4..736984d 100644
--- a/package/libnspr/libnspr.mk
+++ b/package/libnspr/libnspr.mk
@@ -16,4 +16,20 @@  LIBNSPR_CONF_OPT  = --host=$(GNU_HOST_NAME)
 LIBNSPR_CONF_OPT += --$(if $(BR2_ARCH_IS_64),en,dis)able-64bit
 LIBNSPR_CONF_OPT += --$(if $(BR2_INET_IPV6),en,dis)able-ipv6
 
+define LIBNSPR_INSTALL_STAGING_PC
+	$(INSTALL) -D -m 0644 $(TOPDIR)/package/libnspr/nspr.pc.in \
+		$(STAGING_DIR)/usr/lib/pkgconfig/nspr.pc
+	$(SED) 's/@VERSION@/$(LIBNSPR_VERSION)/g;' \
+		$(STAGING_DIR)/usr/lib/pkgconfig/nspr.pc
+endef
+LIBNSPR_POST_INSTALL_STAGING_HOOKS += LIBNSPR_INSTALL_STAGING_PC
+
+define LIBNSPR_INSTALL_TARGET_PC
+	$(INSTALL) -D -m 0644 $(TOPDIR)/package/libnspr/nspr.pc.in \
+		$(TARGET_DIR)/usr/lib/pkgconfig/nspr.pc
+	$(SED) 's/@VERSION@/$(LIBNSPR_VERSION)/g;' \
+		$(TARGET_DIR)/usr/lib/pkgconfig/nspr.pc
+endef
+LIBNSPR_POST_INSTALL_TARGET_HOOKS += LIBNSPR_INSTALL_TARGET_PC
+
 $(eval $(autotools-package))
diff --git a/package/libnspr/nspr.pc.in b/package/libnspr/nspr.pc.in
new file mode 100644
index 0000000..3719260
--- /dev/null
+++ b/package/libnspr/nspr.pc.in
@@ -0,0 +1,10 @@ 
+prefix=/usr
+exec_prefix=${prefix}
+libdir=${exec_prefix}/lib
+includedir=${prefix}/include/nspr
+
+Name: NSPR
+Description: The Netscape Portable Runtime
+Version: @VERSION@
+Libs: -L${exec_prefix}/lib -lplds4 -lplc4 -lnspr4 -lpthread -ldl 
+Cflags: -I${prefix}/include/nspr