1SUMMARY = "Helper tool used when compiling"
2DESCRIPTION = "pkg-config is a helper tool used when compiling applications and libraries. It helps determined \
3the correct compiler/link options.  It is also language-agnostic."
4HOMEPAGE = "http://pkg-config.freedesktop.org/wiki/"
5BUGTRACKER = "http://bugs.freedesktop.org/buglist.cgi?product=pkg-config"
6SECTION = "console/utils"
7
8LICENSE = "GPLv2+"
9LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
10
11SRCREV = "edf8e6f0ea77ede073f07bff0d2ae1fc7a38103b"
12PV = "0.29.2+git${SRCPV}"
13
14SRC_URI = "git://gitlab.freedesktop.org/pkg-config/pkg-config.git;branch=master;protocol=https \
15           file://pkg-config-esdk.in \
16           file://pkg-config-native.in \
17           file://fix-glib-configure-libtool-usage.patch \
18           file://0001-glib-gettext.m4-Update-AM_GLIB_GNU_GETTEXT-to-match-.patch \
19           file://0001-autotools-remove-support-for-the-__int64-type.-See-1.patch \
20           file://0001-autotools-use-C99-printf-format-specifiers-on-Window.patch \
21           "
22
23S = "${WORKDIR}/git"
24
25inherit autotools
26
27# Because of a faulty test, the current auto mode always evaluates to no,
28# so just continue that behaviour.
29#
30EXTRA_OECONF += "--disable-indirect-deps"
31
32PACKAGECONFIG ??= "glib"
33PACKAGECONFIG:class-native = ""
34PACKAGECONFIG:class-nativesdk = ""
35
36PACKAGECONFIG[glib] = "--without-internal-glib,--with-internal-glib,glib-2.0 pkgconfig-native"
37
38acpaths = "-I ."
39
40BBCLASSEXTEND = "native nativesdk"
41
42# Set an empty dev package to ensure the base PN package gets
43# the pkg.m4 macros, pkgconfig does not deliver any other -dev
44# files.
45FILES:${PN}-dev = ""
46FILES:${PN} += "${datadir}/aclocal/pkg.m4"
47
48# When using the RPM generated automatic package dependencies, some packages
49# will end up requiring 'pkgconfig(pkg-config)'.  Allow this behavior by
50# specifying an appropriate provide.
51RPROVIDES:${PN} += "pkgconfig(pkg-config)"
52
53# Install a pkg-config-native wrapper that will use the native sysroot instead
54# of the MACHINE sysroot, for using pkg-config when building native tools.
55do_install:append:class-native () {
56    sed -e "s|@PATH_NATIVE@|${PKG_CONFIG_PATH}|" \
57        -e "s|@LIBDIR_NATIVE@|${PKG_CONFIG_LIBDIR}|" \
58        < ${WORKDIR}/pkg-config-native.in > ${B}/pkg-config-native
59    install -m755 ${B}/pkg-config-native ${D}${bindir}/pkg-config-native
60    sed -e "s|@PATH_NATIVE@|${PKG_CONFIG_PATH}|" \
61        -e "s|@LIBDIR_NATIVE@|${PKG_CONFIG_LIBDIR}|" \
62        < ${WORKDIR}/pkg-config-esdk.in > ${B}/pkg-config-esdk
63    install -m755 ${B}/pkg-config-esdk ${D}${bindir}/pkg-config-esdk
64}
65
66pkgconfig_sstate_fixup_esdk () {
67	if [ "${BB_CURRENTTASK}" = "populate_sysroot_setscene" -a "${WITHIN_EXT_SDK}" = "1" ] ; then
68		pkgconfdir="${SSTATE_INSTDIR}/recipe-sysroot-native/${bindir_native}"
69		mv $pkgconfdir/pkg-config $pkgconfdir/pkg-config.real
70		lnr $pkgconfdir/pkg-config-esdk $pkgconfdir/pkg-config
71		sed -i -e "s|^pkg-config|pkg-config.real|" $pkgconfdir/pkg-config-native
72	fi
73}
74
75SSTATEPOSTUNPACKFUNCS:append:class-native = " pkgconfig_sstate_fixup_esdk"
76