Buildroot Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCHv2 1/4] pkgconf: new package
@ 2012-09-26 10:48 Gustavo Zacarias
  2012-09-26 10:48 ` [Buildroot] [PATCHv2 2/4] packages: switch to pkgconf Gustavo Zacarias
                   ` (2 more replies)
  0 siblings, 3 replies; 7+ messages in thread
From: Gustavo Zacarias @ 2012-09-26 10:48 UTC (permalink / raw)
  To: buildroot

pkgconf is a drop-in replacement for pkg-config that doesn't need
itself to build and just requires a C89 compiler.

Instead of using a patch for hardcoded sysroot support (as the patch to
pkg-config does) we rely instead on a wrapper script that takes the
appropiate action.

Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
---
 package/Config.in             |    1 +
 package/pkgconf/Config.in     |    9 +++++++++
 package/pkgconf/pkg-config.in |    2 ++
 package/pkgconf/pkgconf.mk    |   33 +++++++++++++++++++++++++++++++++
 4 files changed, 45 insertions(+), 0 deletions(-)
 create mode 100644 package/pkgconf/Config.in
 create mode 100644 package/pkgconf/pkg-config.in
 create mode 100644 package/pkgconf/pkgconf.mk

diff --git a/package/Config.in b/package/Config.in
index 82c319e..0c17918 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -84,6 +84,7 @@ if BR2_PACKAGE_BUSYBOX_SHOW_OTHERS
 source "package/patch/Config.in"
 endif
 source "package/pkg-config/Config.in"
+source "package/pkgconf/Config.in"
 if BR2_PACKAGE_BUSYBOX_SHOW_OTHERS
 source "package/sed/Config.in"
 endif
diff --git a/package/pkgconf/Config.in b/package/pkgconf/Config.in
new file mode 100644
index 0000000..fec5a69
--- /dev/null
+++ b/package/pkgconf/Config.in
@@ -0,0 +1,9 @@
+config BR2_PACKAGE_PKGCONF
+	bool "pkgconf"
+	help
+	  pkgconf is a program which helps to configure compiler and linker
+	  flags for development frameworks. It is similar to pkg-config,
+	  but was written from scratch in the summer of 2011 to replace
+	  pkg-config, which now needs itself to build itself.
+
+	  https://github.com/nenolod/pkgconf
diff --git a/package/pkgconf/pkg-config.in b/package/pkgconf/pkg-config.in
new file mode 100644
index 0000000..4039d4d
--- /dev/null
+++ b/package/pkgconf/pkg-config.in
@@ -0,0 +1,2 @@
+#!/bin/sh
+PKG_CONFIG_PATH=${PKG_CONFIG_PATH:- at PKG_CONFIG_PATH@} PKG_CONFIG_SYSROOT_DIR=${PKG_CONFIG_SYSROOT_DIR:- at STAGING_DIR@} @HOST_DIR@/usr/bin/pkgconf $@
diff --git a/package/pkgconf/pkgconf.mk b/package/pkgconf/pkgconf.mk
new file mode 100644
index 0000000..2dd1a51
--- /dev/null
+++ b/package/pkgconf/pkgconf.mk
@@ -0,0 +1,33 @@
+#############################################################
+#
+# pkgconf
+#
+#############################################################
+
+PKGCONF_VERSION = 0.8.9
+PKGCONF_SITE = http://tortois.es/~nenolod/distfiles
+PKGCONF_SOURCE = pkgconf-$(PKGCONF_VERSION).tar.bz2
+
+HOST_PKGCONF_CONF_OPT = \
+	--with-pkg-config-dir="$(STAGING_DIR)/usr/lib/pkgconfig:$(STAGING_DIR)/usr/share/pkgconfig"
+
+PKG_CONFIG_HOST_BINARY = $(HOST_DIR)/usr/bin/pkg-config
+
+define PKGCONF_LINK_PKGCONFIG
+	ln -sf pkgconf $(TARGET_DIR)/usr/bin/pkg-config
+endef
+
+define HOST_PKGCONF_INSTALL_WRAPPER
+	$(INSTALL) -m 0755 -D package/pkgconf/pkg-config.in \
+		$(HOST_DIR)/usr/bin/pkg-config
+	$(SED) 's, at PKG_CONFIG_PATH@,$(STAGING_DIR)/usr/lib/pkgconfig:$(STAGING_DIR)/usr/share/pkgconfig,' \
+		-e 's, at HOST_DIR@,$(HOST_DIR),' \
+		-e 's, at STAGING_DIR@,$(STAGING_DIR),' \
+		$(HOST_DIR)/usr/bin/pkg-config
+endef
+
+PKGCONF_POST_INSTALL_TARGET_HOOKS += PKGCONF_LINK_PKGCONFIG
+HOST_PKGCONF_POST_INSTALL_HOOKS += HOST_PKGCONF_INSTALL_WRAPPER
+
+$(eval $(autotools-package))
+$(eval $(host-autotools-package))
-- 
1.7.8.6

^ permalink raw reply related	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2012-09-28 14:12 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-09-26 10:48 [Buildroot] [PATCHv2 1/4] pkgconf: new package Gustavo Zacarias
2012-09-26 10:48 ` [Buildroot] [PATCHv2 2/4] packages: switch to pkgconf Gustavo Zacarias
2012-09-26 10:48 ` [Buildroot] [PATCHv2 3/4] pkg-config: remove package Gustavo Zacarias
2012-09-26 10:48 ` [Buildroot] [PATCHv2 4/4] iw: pkg-config nitpicking Gustavo Zacarias
2012-09-27 21:40   ` Arnout Vandecappelle
2012-09-27 22:27     ` Gustavo Zacarias
2012-09-28 14:12       ` Thomas Petazzoni

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox