aboutsummaryrefslogtreecommitdiff
path: root/package/pkgconf
Commit message (Collapse)AuthorAgeFilesLines
* package/pkgconf: bump to version 1.6.3Gravatar Francois Perrad2021-01-074-10/+10
| | | | | Signed-off-by: Francois Perrad <francois.perrad@gadz.org> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* package/pkgconf: prepend sysroot paths to common gobject-introspection utilsGravatar Adam Duskett2020-02-201-4/+9
| | | | | | | | | | | | | | | Many autotools packages call pkg-conf to inquire as to where the following utilities are: g_ir_scanner g_ir_compiler g_ir_generate Because gobject uses wrappers to call qemu, prepending the sysroot to the paths of these compilers is necessary. Signed-off-by: Adam Duskett <Aduskett@gmail.com> Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
* pkgconf: always keep system libsGravatar Thomas Preston2020-01-141-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The previous change to pkgconf 9cc8680fe5, which tells it about the target sysroot system lib and include dirs so that they are not printed by default, introduced a regression where packages relying on libtool could no longer see Libtool Archive (.la) files in the system lib directory. Since we still rely on pkgconf not printing the system include directory to allow the correct ordering of -I, -isystem and compiler default search paths, and it is still correct behaviour to tell pkgconf about the new system lib dir (in the target sysroot), we should not revert the previous change. Instead, we should explicitly request pkgconf to print the system libs globally, so that all packages which rely on libtool can find the Libtool Archive files. For system lib directories, this is the same pkgconf behaviour as before the 9cc8680fe5 change. Fixes: http://autobuild.buildroot.org/results/a79/a79e0487135ad90530595d5c6ecc32f9c8cea7c4/ http://autobuild.buildroot.net/results/089/08952dbf89bf3c49da7697943441cee411940420/ http://autobuild.buildroot.org/results/7ca/7ca3e6c17d8ce5a53715d719ae9de2551ce2a669/ ... Signed-off-by: Thomas Preston <thomas.preston@codethink.co.uk> Signed-off-by: Michael Drake <michael.drake@codethink.co.uk> Tested-by: Peter Seiderer <ps.report@gmx.net> Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
* pkgconf: Add pkgconf system lib and include pathGravatar Thomas Preston2019-10-201-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | Buildroot does not reconfigure pkgconf system library and system include dirs to STAGING_DIR. This means that pkgconf prints the sysroot system library and system include dirs instead of letting the compiler handle the logical sysroot. This breaks the -isystem compiler flag, as it increases the priority of the system library and system include directories. For example: $ output/host/bin/pkg-config --cflags glib-2.0 -Ioutput/host/bin/../x86_64-buildroot-linux-gnu/sysroot/usr/include/glib-2.0 -Ioutput/host/bin/../x86_64-buildroot-linux-gnu/sysroot/usr/lib/glib-2.0/include -Ioutput/host/bin/../x86_64-buildroot-linux-gnu/sysroot/usr/include A header in `.../sysroot/usr/include` will be included before a header in any directory specified with -isystem flags. Specifically, this breaks the Chromium build system, which expects a C++ math.h in a bundled LLVM C++ library, and gets a GNU C math.h instead. Fix this by telling pkgconf about the sysroot's system library and system include directories, so that it doesn't accidentally print them. Signed-off-by: Thomas Preston <thomas.preston@codethink.co.uk> [Arnout: change order of variables] Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
* pkgconf: Split pkgconf command into multi-lineGravatar Thomas Preston2019-10-191-1/+4
| | | | | | | | | The pkgconf command is a long and confusing line, which is about to get longer. Split it up into logical stages so that it is easier to visualise changes. Signed-off-by: Thomas Preston <thomas.preston@codethink.co.uk> Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
* package/pkgconf: bump to version 1.6.1Gravatar Adam Duskett2019-04-162-2/+3
| | | | | | | | | | | | | | Other changes: - Add a hash for the license file. Tested against: - libsoup - X11r7 - dbus-glib - atk Signed-off-by: Adam Duskett <Aduskett@gmail.com> Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
* package/pkgconf: fix behavior of pkg-config --versionGravatar Thomas Petazzoni2019-01-031-0/+45
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | For some odd reason, the new pkg-config 1.5.3 changed the behavior of "pkg-config --version": as soon as another argument than "--version" is passed, the code assumes the user wanted to run "--modversion" instead. Sadly, this breaks badly with our pkg-config wrapper that unconditionally passes --static to pkg-config when BR2_STATIC_LIBS=y. When ffmpeg calls "pkg-config --version" to test if pkg-config is available and functional, it's actually "pkg-config --static --version" that gets executed. pkg-config assumes that the user wanted to use --modversion and bails out with an error. This causes a build failure of ffmpeg in BR2_STATIC_LIBS=y configuration. This misbehavior of pkg-config has been reported upstream at https://git.dereferenced.org/pkgconf/pkgconf/issues/19, but until it gets fixed, we work around the issue by reverting the commit that does the "hey let's assume you're using --modversion if --version is passed with more than one argument". Fixes: http://autobuild.buildroot.net/results/ed82a95e1866ea2caadbb3433b2a255b2cf621d2/ (and plenty of other ffmpeg + BR2_STATIC_LIBS=y build failures) Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com> Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
* package/pkgconf: add patch to restore pre-1.5.3 behavior for sysroot prefixingGravatar Thomas Petazzoni2018-12-211-0/+142
| | | | | | | | | | | | | | | | | | | | | | | Prior to the bump to version 1.5.3 in commit 4e423669399ad8389edd81761ea5c9cc26bf312d, we had a patch on pkgconf that ensures only some variables containing paths were prefixed by the sysroot directory when queried through pkg-config. This patch was dropped as part of the 1.5.3 bump, but it turns out we really need something like this, or a significant number of changes need to be done to existing packages. Indeed, pkg-config has no notion of which variable/path gets used at build time vs. which variable/path gets used at runtime. Prefixing with the sysroot the paths used at build time works and is desirable, but prefixing the paths used at runtime doesn't work. This commit should fix a large number of remaining build failures related to pkgconf 1.5.3, and should allow reverting a significant number of workarounds. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com> Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
* package/pkgconf: purge trailing '/' from PKGCONF_SITEGravatar Carlos Santos2018-12-101-1/+1
| | | | | | | | | | <PKG>_SITE cannot have a trailing slash. This was not detected by the check in generic-package because it is a host-only package without Config.in symbol. Signed-off-by: Carlos Santos <casantos@datacom.com.br> Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
* package/pkgconf: bump to 1.5.3, change upstreamGravatar Thomas Petazzoni2018-12-094-69/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The pkgconf project now has a website at pkgconf.org, and hosts its tarballs at https://distfiles.dereferenced.org/pkgconf/, so this commit updates the upstream location, and uses the xz-compressed tarball as well. pkgconf is bumped to 1.5.3. What prompted this update is the fact that GStreamer uses the --define-prefix option when calling pkg-config, and this option didn't exist in pkgconf 0.9.2. The patch 0001-Fix-all-variables-sysroot-prefix-problem.patch is dropped, because pkgconf now behaves properly, by prefixing all paths with the sysroot. This has been verified by testing libdir and includedir in zlib.pc, and adding some dummy pkgdatadir, mapdir and sdkdir variables: $ cat staging/usr/lib/pkgconfig/zlib.pc prefix=/usr exec_prefix=${prefix} libdir=${exec_prefix}/lib sharedlibdir=${libdir} includedir=${prefix}/include pkgdatadir=${prefix}/pouet mapdir=${prefix}/this/is/map/dir sdkdir=${prefix}/this/is/sdk/dir [...] $ ./host/bin/pkg-config --variable=libdir zlib ./host/bin/../arm-buildroot-linux-uclibcgnueabi/sysroot/usr/lib $ ./host/bin/pkg-config --variable=includedir zlib ./host/bin/../arm-buildroot-linux-uclibcgnueabi/sysroot/usr/include $ ./host/bin/pkg-config --variable=mapdir zlib ./host/bin/../arm-buildroot-linux-uclibcgnueabi/sysroot/usr/this/is/map/dir $ ./host/bin/pkg-config --variable=sdkdir zlib ./host/bin/../arm-buildroot-linux-uclibcgnueabi/sysroot/usr/this/is/sdk/dir $ ./host/bin/pkg-config --variable=pkgdatadir zlib ./host/bin/../arm-buildroot-linux-uclibcgnueabi/sysroot/usr/pouet So, the 0001-Fix-all-variables-sysroot-prefix-problem patch is no longer necessary. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com> Tested-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
* Merge branch 'next'Gravatar Peter Korsgaard2018-03-051-1/+1
|\ | | | | | | Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
| * pkgconf: pkg-config.in: exec pkgconfGravatar Gaël PORTAY2018-02-251-1/+1
| | | | | | | | | | | | | | Replace the shell script with pkgconf without creating a new process. Signed-off-by: Gaël PORTAY <gael.portay@savoirfairelinux.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
| * pkgconf: pkg-config.in: double quote $@Gravatar Gaël PORTAY2018-02-251-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The shell expands "$@" as "$1" "$2" "$3"... while it expands $@ as $1 $2 $3. With the second form, we loses spaces in positional parameters. As example, the following call pkg-config --cflags "one two" three is wrapped as pkgconf --cflags one two three while we are expecting pkgconf --cflags "one two" three "$@" is really useful when writing wrappers. It passes the positional arguments *as* they are given. Double quote $@ to prevent from splitting elements. Signed-off-by: Gaël PORTAY <gael.portay@savoirfairelinux.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
* | package/*/Config.in.host: fix help text check-package warningsGravatar Gaël PORTAY2018-02-141-4/+5
|/ | | | | | | | | | This commit fixes the warnings reported by check-package on the help text of all package Config.in.host files, related to the formatting of the help text: should start with a tab, then 2 spaces, then at most 62 characters. Signed-off-by: Gaël PORTAY <gael.portay@savoirfairelinux.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
* pkgconf: use relative path to STAGING_DIR instead of absolute pathGravatar Thomas Petazzoni2017-12-312-3/+5
| | | | | | | | | | | | | | | | | | | The pkg-config wrapper script is currently generated with absolute paths to $(STAGING_DIR). However, this will not work properly with per-package SDK, and each package will be built with a different STAGING_DIR value. In order to fix this, we adjust how the pkg-config wrapper script is generated, so that it uses a relative path to itself: the sysroot (i.e STAGING_DIR) is always located in $(path of pkg-config)/../$(STAGING_SUBDIR). This change is independent from the per-package SDK work, and could be applied independently from it. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* package/*/Config.in: fix help text check-package warningsGravatar Thomas Petazzoni2017-12-181-4/+5
| | | | | | | | | | | | | This commit fixes the warnings reported by check-package on the help text of all package Config.in files, related to the formatting of the help text: should start with a tab, then 2 spaces, then at most 62 characters. The vast majority of warnings fixed were caused by too long lines. A few warnings were related to spaces being used instead of a tab to indent the help text. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* pkgconf: expose the host variant in menuconfigGravatar Peter Korsgaard2017-09-191-0/+9
| | | | | | | | With the addition of the sdk support it may be interesting to build host-pkgconf even though no packages need it, so expose it in menuconfig. Signed-off-by: Peter Korsgaard <peter@korsgaard.com> Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
* pkgconf: update upstream URL in Config.inGravatar Peter Korsgaard2017-09-191-1/+1
| | | | | | | | The download location got changed two years ago when the version was bumped to 0.9.12, but the upstream URL in Config.in wasn't updated. Signed-off-by: Peter Korsgaard <peter@korsgaard.com> Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
* Globally replace $(HOST_DIR)/usr/bin with $(HOST_DIR)/binGravatar Arnout Vandecappelle2017-07-051-5/+5
| | | | | | | | | | | Since things are no longer installed in $(HOST_DIR)/usr, the callers should also not refer to it. This is a mechanical change with git grep -l '$(HOST_DIR)/usr/bin' | xargs sed -i 's%$(HOST_DIR)/usr/bin%$(HOST_DIR)/bin%g' Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* package/pkgconf: variable pkgdatadir also needs sysroot prefixing, wayland ↵Gravatar Bernd Kuhls2017-01-291-6/+12
| | | | | | | | | | | | | | | | | | patch III Needed when wayland support is enabled in xserver_xorg-server. This patch fixes the final build error: Making all in xwayland make[3]: Entering directory '/home/buildroot/br5/output/build/xserver_xorg-server-1.19.0/hw/xwayland' make[3]: *** No rule to make target '/usr/share/wayland-protocols/unstable/relative-pointer/relative-pointer-unstable-v1.xml', needed by 'relative-pointer-unstable-v1-client-protocol.h'. Stop. when trying to build http://autobuild.buildroot.net/results/cf0/cf026e9b18e86b9890341612050f4d166a7b822d/ Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* pkgconf: fix incorrect variable-directory sysroot prefixingGravatar Gustavo Zacarias2015-11-061-0/+58
| | | | | | | | | | | | | | | | | | | | | | | According to the pkg-config documents ("specification") when sysroot-prefixing is enabled via PKG_CONFIG_SYSROOT_DIR this should only be applied to -I/-L directories (includes, library directories), and not to all of the other variables that can specify a directory. However xorg uses mapdir/sdkdir in a similar fashion in what could be considered an abuse of the spec, hence needs to be prefixed as well. And what's more, it also uses includedir in a nonstandard fashion just requesting the value via 'pkg-config --variable=includedir libfoo' which doesn't pass the standard prefixing rules for the --cflags and --libs invocation. This patch makes pkgconf behave in the pkg-config specified way with the added exception for the includedir, libdir, mapdir and sdkdir variables which are prefixed. Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar> Tested-by: Peter Seiderer <ps.report@gmx.net> Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* pkgconf: bump to version 0.9.12Gravatar Gustavo Zacarias2015-10-054-73/+4
| | | | | | | | | | | | | | | Drop patches, they aren't required any more. It fixes a bug where inline comments cause issues, like: Libs: -lblah # -lbleh ...it would make pkgconf search for the '#' package This is required for the nettle 3.1.1 upgrade since howgeed.pc adjusts Libs according to static/dynamic builds using the comment feature. Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* package/pkgconf: add hashGravatar Fabio Porcedda2015-04-201-0/+2
| | | | | Signed-off-by: Fabio Porcedda <fabio.porcedda@gmail.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* packages: indentation cleanupGravatar Jerzy Grzegorek2015-03-311-2/+2
| | | | | | | This commit doesn't touch infra packages. Signed-off-by: Jerzy Grzegorek <jerzy.grzegorek@trzebnica.net> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* package/*: rename patches according to the new policyGravatar Peter Korsgaard2015-02-032-0/+0
| | | | | | | Autogenerated from rename-patch.py (http://patchwork.ozlabs.org/patch/403345) Signed-off-by: Samuel Martin <s.martin49@gmail.com> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* Rename BR2_PREFER_STATIC_LIB to BR2_STATIC_LIBSGravatar Thomas Petazzoni2014-12-111-1/+1
| | | | | | | | | | | | | | | | | | | | | | | Since a while, the semantic of BR2_PREFER_STATIC_LIB has been changed from "prefer static libraries when possible" to "use only static libraries". The former semantic didn't make much sense, since the user had absolutely no control/idea of which package would use static libraries, and which packages would not. Therefore, for quite some time, we have been starting to enforce that BR2_PREFER_STATIC_LIB should really build everything with static libraries. As a consequence, this patch renames BR2_PREFER_STATIC_LIB to BR2_STATIC_LIBS, and adjust the Config.in option accordingly. This also helps preparing the addition of other options to select shared, shared+static or just static. Note that we have verified that this commit can be reproduced by simply doing a global rename of BR2_PREFER_STATIC_LIB to BR2_STATIC_LIBS plus adding BR2_PREFER_STATIC_LIB to Config.in.legacy. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
* package: remove the trailing slash sign from <PKG>_SITE variableGravatar Jerzy Grzegorek2014-07-311-1/+1
| | | | | | | | | | | | Since the trailing slash is stripped from $($(PKG)_SITE) by pkg-generic.mk: $(call DOWNLOAD,$($(PKG)_SITE:/=)/$($(PKG)_SOURCE)) so it is redundant. This patch removes it from $(PKG)_SITE variable for BR consistency. Signed-off-by: Jerzy Grzegorek <jerzy.grzegorek@trzebnica.net> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* pkgconf: don't double prefix lib/include paths with sysrootGravatar Thomas De Schampheleire2014-06-291-0/+40
| | | | | | | | | | | | | | | | | | | | | | | | A .pc file could contain statements of the form: -L/usr/lib but also: -L/path/to/sysroot/usr/lib The latter form typically occurs when the dependency was configured with a statement like --with-xxx=$(STAGING_DIR)/usr. pkgconf only expects the first form, and prefixes it with the specified sysroot. However, this strategy would result in a double sysroot in the second case: -L/path/to/sysroot/path/to/sysroot/usr/lib This patch checks for the presence of the sysroot in the specified -L or -I directives, and only adds the sysroot when not already present. Partially fixes bug #5750 (https://bugs.busybox.net/show_bug.cgi?id=5750) Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com> Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* host-pkgconf: use --static option for static buildsGravatar Vicente Olivert Riera2014-05-072-1/+15
| | | | | | | | | | | | | | Detect when BR2_PREFER_STATIC_LIBS is selected and modify the host pkg-config wrapper to append the --static option in that case. Fixes: http://autobuild.buildroot.net/results/161/161446dde7e8e774773eb2b34fd555f5ac22dd02/ Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com> Tested-by: Baruch Siach <baruch@tkos.co.il> Acked-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be> Tested-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* pkgconf: rewrite variable sdkdir, needed by xdriver_xf86-video-intelGravatar Bernd Kuhls2014-03-291-1/+3
| | | | | | | - rename patch file to include the apply order Signed-off-by: Bernd Kuhls <berndkuhls@hotmail.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* pkg-config: remove deprecatedGravatar Gustavo Zacarias2013-12-061-2/+0
| | | | | | Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar> Reviewed-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* pkgconf: fix upstream URLGravatar Thomas Petazzoni2013-10-301-1/+1
| | | | | | | | | | | | The upstream URL has changed to http://rabbit.dereferenced.org/~nenolod/distfiles/, updated the Buildroot pkgconf package accordingly. Fixes #6638. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Reported-by: <masrur.macece@gmail.com> Cc: <masrur.macece@gmail.com>
* Normalize separator size to 80Gravatar Alexandre Belloni2013-06-061-2/+2
| | | | | Signed-off-by: Alexandre Belloni <alexandre.belloni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* pkgconf: add license informationsGravatar Thomas Petazzoni2013-01-201-0/+2
| | | | | Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* pkgconf: new packageGravatar Gustavo Zacarias2012-10-294-0/+69
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> Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>