aboutsummaryrefslogtreecommitdiff
path: root/package/pkgconf/pkg-config.in
Commit message (Collapse)AuthorAgeFilesLines
* 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>
* 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>
* pkgconf: use relative path to STAGING_DIR instead of absolute pathGravatar Thomas Petazzoni2017-12-311-1/+4
| | | | | | | | | | | | | | | | | | | 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>
* host-pkgconf: use --static option for static buildsGravatar Vicente Olivert Riera2014-05-071-1/+1
| | | | | | | | | | | | | | 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: new packageGravatar Gustavo Zacarias2012-10-291-0/+2
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>