pkgconf 2.4.3.post3__tar.gz → 2.5.1.post0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/PKG-INFO +1 -1
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/meson.build +1 -1
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/pyproject.toml +1 -1
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/src/pkgconf/__init__.py +1 -1
- pkgconf-2.5.1.post0/subprojects/pkgconf/.github/workflows/release-tarballs.yml +51 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/.github/workflows/test.yml +31 -2
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/Makefile.am +4 -1
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/Makefile.lite +1 -1
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/NEWS +40 -0
- pkgconf-2.5.1.post0/subprojects/pkgconf/README.md +130 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/cli/main.c +73 -3
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/configure.ac +2 -1
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/libpkgconf/argvsplit.c +10 -3
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/libpkgconf/bsdstubs.c +37 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/libpkgconf/bsdstubs.h +2 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/libpkgconf/client.c +214 -12
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/libpkgconf/config.h.meson +6 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/libpkgconf/dependency.c +24 -6
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/libpkgconf/fragment.c +22 -6
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/libpkgconf/libpkgconf.h +36 -12
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/libpkgconf/parser.c +0 -1
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/libpkgconf/path.c +94 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/libpkgconf/personality.c +33 -18
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/libpkgconf/pkg.c +159 -108
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/libpkgconf/stdinc.h +6 -1
- pkgconf-2.5.1.post0/subprojects/pkgconf/man/bomtool.1 +100 -0
- pkgconf-2.5.1.post0/subprojects/pkgconf/man/pkgconf.1 +758 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/meson.build +55 -5
- pkgconf-2.5.1.post0/subprojects/pkgconf/pkgconf.wxs.in +64 -0
- pkgconf-2.5.1.post0/subprojects/pkgconf/txt2rtf.py +35 -0
- pkgconf-2.4.3.post3/subprojects/pkgconf/.woodpecker.yml +0 -75
- pkgconf-2.4.3.post3/subprojects/pkgconf/README.md +0 -149
- pkgconf-2.4.3.post3/subprojects/pkgconf/man/pkgconf.1 +0 -231
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/.github/workflows/build.yml +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/.github/workflows/test.yml +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/.gitmodules +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/.pre-commit-config.yaml +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/.readthedocs.yaml +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/LICENSE +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/README.md +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/codecov.yml +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/docs/conf.py +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/docs/index.rst +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/environment.yml +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/examples/header-only-library/example/include/example.h +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/examples/header-only-library/example/pkgconf/example.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/examples/header-only-library/pyproject.toml +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/src/buildhack.py +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/src/pkgconf/__main__.py +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/src/pkgconf/_path_entrypoints.py +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/src/pkgconf/diagnose.py +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/src/pkgconf/py.typed +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/.gitattributes +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/.github/FUNDING.yml +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/.gitignore +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/.mailmap +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/AUTHORS +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/CODE_OF_CONDUCT.md +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/COPYING +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/Kyuafile.in +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/autogen.sh +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/cli/bomtool/main.c +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/cli/getopt_long.c +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/cli/getopt_long.h +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/cli/renderer-msvc.c +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/cli/renderer-msvc.h +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/doc/conf.py +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/doc/extract.py +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/doc/index.rst +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/doc/libpkgconf-argvsplit.rst +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/doc/libpkgconf-audit.rst +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/doc/libpkgconf-cache.rst +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/doc/libpkgconf-client.rst +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/doc/libpkgconf-dependency.rst +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/doc/libpkgconf-fragment.rst +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/doc/libpkgconf-path.rst +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/doc/libpkgconf-personality.rst +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/doc/libpkgconf-pkg.rst +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/doc/libpkgconf-queue.rst +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/doc/libpkgconf-tuple.rst +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/doc/libpkgconf.rst +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/libpkgconf/audit.c +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/libpkgconf/buffer.c +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/libpkgconf/cache.c +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/libpkgconf/fileio.c +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/libpkgconf/iter.h +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/libpkgconf/libpkgconf-api.h +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/libpkgconf/meson.build +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/libpkgconf/queue.c +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/libpkgconf/tuple.c +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/libpkgconf/win-dirent.h +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/libpkgconf.pc.in +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/m4/ax_check_compile_flag.m4 +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/man/pc.5 +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/man/pkg.m4.7 +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/man/pkgconf-personality.5 +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/meson_options.txt +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/pkg.m4 +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/Kyuafile.in +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/basic.sh +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/builtins.sh +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/conflicts.sh +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/framework.sh +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib-relocatable/lib/pkgconfig/foo.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib1/argv-parse-2.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib1/argv-parse-3.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib1/argv-parse.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib1/bar.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib1/baz.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib1/billion-laughs.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib1/c-comment.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib1/case-sensitivity.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib1/cflags-internal.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib1/cflags-libs-only.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib1/cflags-libs-private-a.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib1/cflags-libs-private-b.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib1/cflags-libs-private-c.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib1/cflags-whitespace-trailing.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib1/cflags-whitespace.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib1/child-prefix/pkgconfig/child-prefix-1.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib1/circular-1.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib1/circular-2.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib1/circular-3.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib1/comments-in-fields.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib1/comments.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib1/conflicts.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib1/depgraph-break.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib1/dos-lineendings.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib1/empty-tuple.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib1/escaped-backslash.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib1/explicit-sysroot.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib1/flag-order-1.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib1/flag-order-3.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib1/foo.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib1/foobar.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib1/fragment-collision-1.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib1/fragment-collision-2.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib1/fragment-collision-intermediary.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib1/fragment-collision.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib1/fragment-comment.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib1/fragment-escaping-1.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib1/fragment-escaping-2.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib1/fragment-escaping-3.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib1/fragment-group-a.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib1/fragment-group-b.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib1/fragment-group-c.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib1/fragment-groups-2.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib1/fragment-groups.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib1/fragment-quoting-2.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib1/fragment-quoting-3.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib1/fragment-quoting-5.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib1/fragment-quoting-7.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib1/fragment-quoting.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib1/framework-1.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib1/framework-2.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib1/idirafter-ordering.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib1/idirafter.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib1/incomplete.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib1/intermediary-1.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib1/intermediary-2.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib1/isystem.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib1/malformed-1.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib1/malformed-quoting.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib1/malformed-version.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib1/metapackage-1.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib1/metapackage-2.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib1/metapackage-3.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib1/metapackage.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib1/missing-require.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib1/multiline-bogus.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib1/multiline.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib1/no-trailing-newline.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib1/nocflag.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib1/nolib.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib1/omg-sysroot-uninstalled.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib1/omg-uninstalled.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib1/orphaned-requires-private.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib1/paren-quoting.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib1/pcfiledir.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib1/prefix-foo1.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib1/prefix-foo2.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib1/private-libs-duplication.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib1/provides-request-simple.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib1/provides.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib1/quotes.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib1/requires-internal-2.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib1/requires-internal-collision.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib1/requires-internal-missing.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib1/requires-internal.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib1/spaces-in-paths.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib1/static-archive-libs.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib1/static-libs.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib1/sysroot-dir-2.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib1/sysroot-dir-3.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib1/sysroot-dir-4.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib1/sysroot-dir-5.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib1/sysroot-dir.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib1/tilde-quoting.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib1/tilde.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib1/truncated.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib1/tuple-quoting.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib1/typelibdir.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib1/unavailable-provider.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib1/utf8.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib1/variable-whitespace.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib2/foo.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/lib3/bar.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/meson.build +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/parser.sh +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/provides.sh +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/regress.sh +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/requires.sh +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/symlink.sh +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/sysroot.sh +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/test_env.sh.in +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/subprojects/pkgconf/tests/version.sh +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/tests/conftest.py +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/tests/data/needs-example-lib.c +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/tests/packages/error-on-import/foo/__init__.py +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/tests/packages/error-on-import/foo/bar/__init__.py +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/tests/packages/error-on-import/meson.build +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/tests/packages/error-on-import/pyproject.toml +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/tests/packages/inplace/example/__init__.py +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/tests/packages/inplace/example/include/example.h +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/tests/packages/inplace/example/pkgconf/example.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/tests/packages/inplace/pyproject.toml +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/tests/packages/namespace/namespace/namespace.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/tests/packages/namespace/pyproject.toml +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/tests/packages/register-pkg-config-path/lib.c +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/tests/packages/register-pkg-config-path/meson.build +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/tests/packages/register-pkg-config-path/pyproject.toml +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/tests/packages/register-pkg-config-path/register_pkg_config_path/__init__.py +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/tests/packages/register-pkg-config-path/register_pkg_config_path/include/__init__.py +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/tests/packages/register-pkg-config-path/register_pkg_config_path/include/lib.h +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/tests/packages/register-pkg-config-path/register_pkg_config_path/lib/__init__.py +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/tests/packages/register-pkg-config-path/register_pkg_config_path/pkgconf/__init__.py +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/tests/packages/register-pkg-config-path/register_pkg_config_path/pkgconf/register_pkg_config_path.pc +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/tests/packages/use-pybind11/meson.build +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/tests/test_diagnose.py +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/tests/test_distribution.py +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/tests/test_entrypoints.py +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/tests/test_examples.py +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/tests/test_python_module.py +0 -0
- {pkgconf-2.4.3.post3 → pkgconf-2.5.1.post0}/update-upstream.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: pkgconf
|
|
3
|
-
Version: 2.
|
|
3
|
+
Version: 2.5.1.post0
|
|
4
4
|
Summary: `pkgconf` is a program which helps with discovering library dependencies and configuring compiler and linker flags.
|
|
5
5
|
Author-Email: Ralf Gommers <ralf.gommers@gmail.com>, =?utf-8?q?Filipe_La=C3=ADns?= <lains@riseup.net>
|
|
6
6
|
License: Copyright (c) 2024 pypackaging-native contributors
|
|
@@ -11,7 +11,7 @@ requires = ['meson-python', 'wheel']
|
|
|
11
11
|
|
|
12
12
|
[project]
|
|
13
13
|
name = 'pkgconf'
|
|
14
|
-
version = '2.
|
|
14
|
+
version = '2.5.1-0'
|
|
15
15
|
description = '`pkgconf` is a program which helps with discovering library dependencies and configuring compiler and linker flags.'
|
|
16
16
|
readme = 'README.md'
|
|
17
17
|
license = {file = 'LICENSE'}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
name: Generate and upload release tarballs
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
push:
|
|
5
|
+
tags:
|
|
6
|
+
- 'pkgconf-*'
|
|
7
|
+
|
|
8
|
+
jobs:
|
|
9
|
+
publish:
|
|
10
|
+
runs-on: ubuntu-latest
|
|
11
|
+
container:
|
|
12
|
+
image: alpine:latest
|
|
13
|
+
steps:
|
|
14
|
+
- name: Checkout
|
|
15
|
+
uses: actions/checkout@v2
|
|
16
|
+
with:
|
|
17
|
+
repository: pkgconf/pkgconf
|
|
18
|
+
|
|
19
|
+
- name: Update system and add dependencies
|
|
20
|
+
run: |
|
|
21
|
+
apk update
|
|
22
|
+
apk add kyua atf build-base autoconf automake libtool xz gzip openssh-client
|
|
23
|
+
|
|
24
|
+
- name: Bootstrap autotools
|
|
25
|
+
run: |
|
|
26
|
+
sh autogen.sh
|
|
27
|
+
./configure
|
|
28
|
+
|
|
29
|
+
- name: Run tests and generate dist tarballs
|
|
30
|
+
run: |
|
|
31
|
+
make distcheck -j$(nproc)
|
|
32
|
+
|
|
33
|
+
- name: Upload dist tarballs to distfiles.ariadne.space
|
|
34
|
+
env:
|
|
35
|
+
DISTFILES_PRIVATE_KEY: ${{ secrets.DISTFILES_PRIVATE_KEY }}
|
|
36
|
+
DISTFILES_HOST_KEYS: ${{ secrets.DISTFILES_HOST_KEYS }}
|
|
37
|
+
run: |
|
|
38
|
+
mkdir -p $HOME/.ssh
|
|
39
|
+
|
|
40
|
+
# Ensure the private key is read-only so SSH doesn't reject it.
|
|
41
|
+
umask 277
|
|
42
|
+
(echo "$DISTFILES_PRIVATE_KEY" | base64 -d) > $HOME/.ssh/id_ed25519
|
|
43
|
+
|
|
44
|
+
umask 077
|
|
45
|
+
(echo "$DISTFILES_HOST_KEYS" | base64 -d) > $HOME/.ssh/known_hosts
|
|
46
|
+
|
|
47
|
+
# Upload the tarballs.
|
|
48
|
+
scp -i "$HOME/.ssh/id_ed25519" -o "UserKnownHostsFile=$HOME/.ssh/known_hosts" *.tar* kaniini@distfiles.ariadne.space:distfiles/pkgconf/
|
|
49
|
+
|
|
50
|
+
# Delete the key material.
|
|
51
|
+
rm -rf $HOME/.ssh
|
|
@@ -13,7 +13,6 @@ jobs:
|
|
|
13
13
|
matrix:
|
|
14
14
|
include: [
|
|
15
15
|
{ msystem: MINGW64, arch: x86_64},
|
|
16
|
-
{ msystem: MINGW32, arch: i686}
|
|
17
16
|
]
|
|
18
17
|
steps:
|
|
19
18
|
- name: Checkout code
|
|
@@ -28,6 +27,7 @@ jobs:
|
|
|
28
27
|
mingw-w64-${{ matrix.arch }}-meson
|
|
29
28
|
mingw-w64-${{ matrix.arch }}-ninja
|
|
30
29
|
mingw-w64-${{ matrix.arch }}-gcc
|
|
30
|
+
mingw-w64-${{ matrix.arch }}-msitools
|
|
31
31
|
|
|
32
32
|
- name: Build
|
|
33
33
|
shell: msys2 {0}
|
|
@@ -36,7 +36,16 @@ jobs:
|
|
|
36
36
|
export CFLAGS=-D__USE_MINGW_ANSI_STDIO=0
|
|
37
37
|
|
|
38
38
|
meson -Dtests=disabled _build
|
|
39
|
-
meson compile -C _build
|
|
39
|
+
meson compile -C _build msi
|
|
40
|
+
|
|
41
|
+
- name: Upload Artifact
|
|
42
|
+
uses: actions/upload-artifact@v4
|
|
43
|
+
with:
|
|
44
|
+
name: build-output
|
|
45
|
+
path: |
|
|
46
|
+
_build/*.exe
|
|
47
|
+
_build/*.dll
|
|
48
|
+
_build/*.msi
|
|
40
49
|
|
|
41
50
|
debian-meson:
|
|
42
51
|
runs-on: ubuntu-latest
|
|
@@ -151,3 +160,23 @@ jobs:
|
|
|
151
160
|
- name: Run tests
|
|
152
161
|
run: |
|
|
153
162
|
make distcheck
|
|
163
|
+
|
|
164
|
+
analysis:
|
|
165
|
+
runs-on: ubuntu-latest
|
|
166
|
+
container:
|
|
167
|
+
image: alpine
|
|
168
|
+
steps:
|
|
169
|
+
- name: Checkout
|
|
170
|
+
uses: actions/checkout@v2
|
|
171
|
+
|
|
172
|
+
- name: Update system and add dependencies
|
|
173
|
+
run: |
|
|
174
|
+
apk update
|
|
175
|
+
apk add kyua atf build-base autoconf automake libtool xz gzip
|
|
176
|
+
|
|
177
|
+
- name: Build
|
|
178
|
+
run: |
|
|
179
|
+
export CFLAGS="-Wall -Werror -O2 -ggdb3 -fanalyzer"
|
|
180
|
+
./autogen.sh
|
|
181
|
+
./configure
|
|
182
|
+
make -j9 CFLAGS="$CFLAGS"
|
|
@@ -18,6 +18,8 @@ lib_LTLIBRARIES = libpkgconf.la
|
|
|
18
18
|
EXTRA_DIST = pkg.m4 \
|
|
19
19
|
meson.build \
|
|
20
20
|
meson_options.txt \
|
|
21
|
+
pkgconf.wxs.in \
|
|
22
|
+
txt2rtf.py \
|
|
21
23
|
libpkgconf/meson.build \
|
|
22
24
|
libpkgconf/config.h.meson \
|
|
23
25
|
libpkgconf/win-dirent.h \
|
|
@@ -174,9 +176,10 @@ libpkgconf_la_SOURCES = \
|
|
|
174
176
|
libpkgconf/path.c \
|
|
175
177
|
libpkgconf/personality.c \
|
|
176
178
|
libpkgconf/parser.c
|
|
177
|
-
libpkgconf_la_LDFLAGS = -no-undefined -version-info
|
|
179
|
+
libpkgconf_la_LDFLAGS = -no-undefined -version-info 7:0:0 -export-symbols-regex '^pkgconf_'
|
|
178
180
|
|
|
179
181
|
dist_man_MANS = \
|
|
182
|
+
man/bomtool.1 \
|
|
180
183
|
man/pkgconf.1 \
|
|
181
184
|
man/pkg.m4.7 \
|
|
182
185
|
man/pc.5 \
|
|
@@ -39,7 +39,7 @@ all: pkgconf-lite
|
|
|
39
39
|
libpkgconf/config.h:
|
|
40
40
|
@echo '#define PACKAGE_NAME "pkgconf-lite"' >> $@
|
|
41
41
|
@echo '#define PACKAGE_BUGREPORT "https://git.dereferenced.org/pkgconf/pkgconf/issues"' >> $@
|
|
42
|
-
@echo '#define PACKAGE_VERSION "2.
|
|
42
|
+
@echo '#define PACKAGE_VERSION "2.5.1"' >> $@
|
|
43
43
|
@echo '#define PACKAGE PACKAGE_NAME " " PACKAGE_VERSION' >> $@
|
|
44
44
|
@echo '#define HAVE_STRLCPY' >> $@
|
|
45
45
|
@echo '#define HAVE_STRLCAT' >> $@
|
|
@@ -1,6 +1,46 @@
|
|
|
1
1
|
Changes from previous version of pkgconf
|
|
2
2
|
========================================
|
|
3
3
|
|
|
4
|
+
Changes from 2.5.0 to 2.5.1:
|
|
5
|
+
----------------------------
|
|
6
|
+
|
|
7
|
+
* Fix processing of empty dependency lists.
|
|
8
|
+
|
|
9
|
+
Changes from 2.4.3 to 2.5.0:
|
|
10
|
+
----------------------------
|
|
11
|
+
|
|
12
|
+
* Added a manual page for bomtool.
|
|
13
|
+
|
|
14
|
+
* Add support for preloaded packages.
|
|
15
|
+
These are modules which are preloaded into the package database
|
|
16
|
+
and preferred over searching the module search path when present.
|
|
17
|
+
|
|
18
|
+
* Refactor Windows registry PKG_CONFIG_PATH support so that it
|
|
19
|
+
augments the main directory search list instead of being treated
|
|
20
|
+
as a special case.
|
|
21
|
+
|
|
22
|
+
* Processing of `--with-path` arguments by the pkgconf CLI is
|
|
23
|
+
now deferred until libpkgconf is fully initialized, effectively
|
|
24
|
+
aligning behavior with PKG_CONFIG_PATH processing.
|
|
25
|
+
|
|
26
|
+
* Fix several minor memory safety bugs which were identified by
|
|
27
|
+
the GCC 15 static analyzer.
|
|
28
|
+
|
|
29
|
+
* Added support for pledge(2) and unveil(2) on systems where
|
|
30
|
+
this functionality is available.
|
|
31
|
+
|
|
32
|
+
* Significant improvements to pkgconf's manual pages.
|
|
33
|
+
Patches by Ingo Schwarze and Jonathan Gray (OpenBSD).
|
|
34
|
+
|
|
35
|
+
* Remove questionable default-static assumption on Windows that
|
|
36
|
+
was inherited from the original pkg-config. Most distributions
|
|
37
|
+
of pkgconf on Windows were already patching this out.
|
|
38
|
+
Patch by Kai Pastor.
|
|
39
|
+
|
|
40
|
+
* Add -D_POSIX_C_SOURCE=200809L to the build definitions, which
|
|
41
|
+
is needed for readlinkat on glibc.
|
|
42
|
+
Patch by Filipe Laíns.
|
|
43
|
+
|
|
4
44
|
Changes from 2.4.2 to 2.4.3:
|
|
5
45
|
----------------------------
|
|
6
46
|
|
|
@@ -0,0 +1,130 @@
|
|
|
1
|
+
# pkgconf [](https://github.com/pkgconf/pkgconf/actions/workflows/test.yml)
|
|
2
|
+
|
|
3
|
+
`pkgconf` is a program which helps to configure compiler and linker flags for
|
|
4
|
+
development libraries. It is a superset of the functionality provided by
|
|
5
|
+
pkg-config from freedesktop.org, but does not provide bug-compatibility with
|
|
6
|
+
the original pkg-config.
|
|
7
|
+
|
|
8
|
+
`libpkgconf` is a library which provides access to most of `pkgconf`'s functionality,
|
|
9
|
+
to allow other tooling such as compilers and IDEs to discover and use libraries
|
|
10
|
+
configured by pkgconf.
|
|
11
|
+
|
|
12
|
+
## release tarballs
|
|
13
|
+
|
|
14
|
+
Release tarballs are available on [distfiles.ariadne.space][distfiles].
|
|
15
|
+
|
|
16
|
+
[distfiles]: https://distfiles.ariadne.space/pkgconf/
|
|
17
|
+
|
|
18
|
+
## build system setup
|
|
19
|
+
|
|
20
|
+
If you would like to use the git sources directly, or a snapshot of the
|
|
21
|
+
sources from GitHub, you will need to regenerate the autotools build
|
|
22
|
+
system artifacts yourself, or use Meson instead. For example, on Alpine:
|
|
23
|
+
|
|
24
|
+
$ apk add autoconf automake libtool build-base
|
|
25
|
+
$ sh ./autogen.sh
|
|
26
|
+
|
|
27
|
+
## pkgconf-lite
|
|
28
|
+
|
|
29
|
+
If you only need the original pkg-config functionality, there is also pkgconf-lite,
|
|
30
|
+
which builds the `pkgconf` frontend and relevant portions of `libpkgconf` functionality
|
|
31
|
+
into a single binary:
|
|
32
|
+
|
|
33
|
+
$ make -f Makefile.lite
|
|
34
|
+
|
|
35
|
+
## why `pkgconf` over original `pkg-config`?
|
|
36
|
+
|
|
37
|
+
pkgconf builds a flattened directed dependency graph, which allows for more insight
|
|
38
|
+
into relationships between dependencies, allowing for some link-time dependency
|
|
39
|
+
optimization, which allows for the user to more conservatively link their binaries,
|
|
40
|
+
which may be helpful in some environments, such as when prelink(1) is being used.
|
|
41
|
+
|
|
42
|
+
The solver is also optimized to handle large dependency graphs with hundreds of
|
|
43
|
+
thousands of edges, which can be seen in any project using the Abseil frameworks
|
|
44
|
+
for example.
|
|
45
|
+
|
|
46
|
+
In addition, pkgconf has full support for virtual packages, while the original
|
|
47
|
+
pkg-config does not, as well as fully supporting `Conflicts` at dependency
|
|
48
|
+
resolution time, which is more efficient than checking for `Conflicts` while
|
|
49
|
+
walking the dependency graph.
|
|
50
|
+
|
|
51
|
+
## linker flags optimization
|
|
52
|
+
|
|
53
|
+
pkgconf, when used effectively, can make optimizations to avoid overlinking binaries.
|
|
54
|
+
|
|
55
|
+
This functionality depends on the pkg-config module properly declaring its dependency
|
|
56
|
+
tree instead of using `Libs` and `Cflags` fields to directly link against other modules
|
|
57
|
+
which have pkg-config metadata files installed.
|
|
58
|
+
|
|
59
|
+
The practice of using `Libs` and `Cflags` to describe unrelated dependencies is
|
|
60
|
+
not recommended in [Dan Nicholson's pkg-config tutorial][fd-tut] for this reason.
|
|
61
|
+
|
|
62
|
+
[fd-tut]: http://people.freedesktop.org/~dbn/pkg-config-guide.html
|
|
63
|
+
|
|
64
|
+
## bug compatibility with original pkg-config
|
|
65
|
+
|
|
66
|
+
In general, we do not provide bug-level compatibility with pkg-config.
|
|
67
|
+
|
|
68
|
+
What that means is, if you feel that there is a legitimate regression versus pkg-config,
|
|
69
|
+
do let us know, but also make sure that the .pc files are valid and follow the rules of
|
|
70
|
+
the [pkg-config tutorial][fd-tut], as most likely fixing them to follow the specified
|
|
71
|
+
rules will solve the problem.
|
|
72
|
+
|
|
73
|
+
## debug output
|
|
74
|
+
|
|
75
|
+
Please use only the stable interfaces to query pkg-config. Do not screen-scrape the
|
|
76
|
+
output from `--debug`: this is sent to `stderr` for a reason, it is not intended to be
|
|
77
|
+
scraped. The `--debug` output is **not** a stable interface, and should **never** be
|
|
78
|
+
depended on as a source of information. If you need a stable interface to query pkg-config
|
|
79
|
+
which is not covered, please get in touch.
|
|
80
|
+
|
|
81
|
+
## compiling `pkgconf` and `libpkgconf` on UNIX
|
|
82
|
+
|
|
83
|
+
pkgconf is basically compiled the same way any other autotools-based project is
|
|
84
|
+
compiled:
|
|
85
|
+
|
|
86
|
+
$ ./configure
|
|
87
|
+
$ make
|
|
88
|
+
$ sudo make install
|
|
89
|
+
|
|
90
|
+
If you are installing pkgconf into a custom prefix, such as `/opt/pkgconf`, you will
|
|
91
|
+
likely want to define the default system includedir and libdir for your toolchain.
|
|
92
|
+
To do this, use the `--with-system-includedir` and `--with-system-libdir` configure
|
|
93
|
+
flags like so:
|
|
94
|
+
|
|
95
|
+
$ ./configure \
|
|
96
|
+
--prefix=/opt/pkgconf \
|
|
97
|
+
--with-system-libdir=/lib:/usr/lib \
|
|
98
|
+
--with-system-includedir=/usr/include
|
|
99
|
+
$ make
|
|
100
|
+
$ sudo make install
|
|
101
|
+
|
|
102
|
+
## compiling `pkgconf` and `libpkgconf` with Meson (usually for Windows)
|
|
103
|
+
|
|
104
|
+
pkgconf is compiled using [Meson](https://mesonbuild.com) on Windows. In theory, you could also use
|
|
105
|
+
Meson to build on UNIX, but this is not recommended at this time as pkgconf is typically built
|
|
106
|
+
much earlier than Meson.
|
|
107
|
+
|
|
108
|
+
$ meson setup build -Dtests=disabled
|
|
109
|
+
$ meson compile -C build
|
|
110
|
+
$ meson install -C build
|
|
111
|
+
|
|
112
|
+
There are a few defines such as `SYSTEM_LIBDIR`, `PKGCONFIGDIR` and `SYSTEM_INCLUDEDIR`.
|
|
113
|
+
However, on Windows, the default `PKGCONFIGDIR` value is usually overridden at runtime based
|
|
114
|
+
on path relocation.
|
|
115
|
+
|
|
116
|
+
## pkg-config symlink
|
|
117
|
+
|
|
118
|
+
If you want pkgconf to be used when you invoke `pkg-config`, you should install a
|
|
119
|
+
symlink for this. We do not do this for you, as we believe it is better for vendors
|
|
120
|
+
to make this determination themselves.
|
|
121
|
+
|
|
122
|
+
$ ln -sf pkgconf /usr/bin/pkg-config
|
|
123
|
+
|
|
124
|
+
## contacts
|
|
125
|
+
|
|
126
|
+
You can report bugs at <https://github.com/pkgconf/pkgconf/issues>.
|
|
127
|
+
|
|
128
|
+
There is a mailing list at <https://lists.sr.ht/~kaniini/pkgconf>.
|
|
129
|
+
|
|
130
|
+
You can contact us via IRC at `#pkgconf` at `irc.oftc.net`.
|
|
@@ -1031,6 +1031,47 @@ deduce_personality(char *argv[])
|
|
|
1031
1031
|
}
|
|
1032
1032
|
#endif
|
|
1033
1033
|
|
|
1034
|
+
static void
|
|
1035
|
+
unveil_handler(const pkgconf_client_t *client, const char *path, const char *permissions)
|
|
1036
|
+
{
|
|
1037
|
+
(void) client;
|
|
1038
|
+
|
|
1039
|
+
if (pkgconf_unveil(path, permissions) == -1)
|
|
1040
|
+
{
|
|
1041
|
+
fprintf(stderr, "pkgconf: unveil failed: %s\n", strerror(errno));
|
|
1042
|
+
exit(EXIT_FAILURE);
|
|
1043
|
+
}
|
|
1044
|
+
}
|
|
1045
|
+
|
|
1046
|
+
static bool
|
|
1047
|
+
unveil_search_paths(const pkgconf_client_t *client, const pkgconf_cross_personality_t *personality)
|
|
1048
|
+
{
|
|
1049
|
+
pkgconf_node_t *n;
|
|
1050
|
+
|
|
1051
|
+
if (pkgconf_unveil("/dev/null", "rwc") == -1)
|
|
1052
|
+
return false;
|
|
1053
|
+
|
|
1054
|
+
PKGCONF_FOREACH_LIST_ENTRY(client->dir_list.head, n)
|
|
1055
|
+
{
|
|
1056
|
+
pkgconf_path_t *pn = n->data;
|
|
1057
|
+
|
|
1058
|
+
if (pkgconf_unveil(pn->path, "r") == -1)
|
|
1059
|
+
return false;
|
|
1060
|
+
}
|
|
1061
|
+
|
|
1062
|
+
PKGCONF_FOREACH_LIST_ENTRY(personality->dir_list.head, n)
|
|
1063
|
+
{
|
|
1064
|
+
pkgconf_path_t *pn = n->data;
|
|
1065
|
+
|
|
1066
|
+
if (pkgconf_unveil(pn->path, "r") == -1)
|
|
1067
|
+
return false;
|
|
1068
|
+
}
|
|
1069
|
+
|
|
1070
|
+
pkgconf_client_set_unveil_handler(&pkg_client, unveil_handler);
|
|
1071
|
+
|
|
1072
|
+
return true;
|
|
1073
|
+
}
|
|
1074
|
+
|
|
1034
1075
|
int
|
|
1035
1076
|
main(int argc, char *argv[])
|
|
1036
1077
|
{
|
|
@@ -1055,6 +1096,12 @@ main(int argc, char *argv[])
|
|
|
1055
1096
|
.flags = PKGCONF_PKG_PROPF_STATIC | PKGCONF_PKG_PROPF_VIRTUAL,
|
|
1056
1097
|
};
|
|
1057
1098
|
|
|
1099
|
+
if (pkgconf_pledge("stdio rpath wpath cpath unveil", NULL) == -1)
|
|
1100
|
+
{
|
|
1101
|
+
fprintf(stderr, "pkgconf: pledge failed: %s\n", strerror(errno));
|
|
1102
|
+
return EXIT_FAILURE;
|
|
1103
|
+
}
|
|
1104
|
+
|
|
1058
1105
|
want_flags = 0;
|
|
1059
1106
|
|
|
1060
1107
|
#ifdef _WIN32
|
|
@@ -1218,9 +1265,6 @@ main(int argc, char *argv[])
|
|
|
1218
1265
|
#endif
|
|
1219
1266
|
}
|
|
1220
1267
|
|
|
1221
|
-
pkgconf_path_copy_list(&personality->dir_list, &dir_list);
|
|
1222
|
-
pkgconf_path_free(&dir_list);
|
|
1223
|
-
|
|
1224
1268
|
#ifndef PKGCONF_LITE
|
|
1225
1269
|
if ((want_flags & PKG_DUMP_PERSONALITY) == PKG_DUMP_PERSONALITY)
|
|
1226
1270
|
{
|
|
@@ -1232,6 +1276,13 @@ main(int argc, char *argv[])
|
|
|
1232
1276
|
/* now, bring up the client. settings are preserved since the client is prealloced */
|
|
1233
1277
|
pkgconf_client_init(&pkg_client, error_handler, NULL, personality);
|
|
1234
1278
|
|
|
1279
|
+
/* unveil the entire search path now that we have loaded the personality data. */
|
|
1280
|
+
if (!unveil_search_paths(&pkg_client, personality))
|
|
1281
|
+
{
|
|
1282
|
+
fprintf(stderr, "pkgconf: unveil failed: %s\n", strerror(errno));
|
|
1283
|
+
return EXIT_FAILURE;
|
|
1284
|
+
}
|
|
1285
|
+
|
|
1235
1286
|
#ifndef PKGCONF_LITE
|
|
1236
1287
|
if ((want_flags & PKG_MSVC_SYNTAX) == PKG_MSVC_SYNTAX || getenv("PKG_CONFIG_MSVC_SYNTAX") != NULL)
|
|
1237
1288
|
want_render_ops = msvc_renderer_get();
|
|
@@ -1259,6 +1310,9 @@ main(int argc, char *argv[])
|
|
|
1259
1310
|
pkgconf_client_set_trace_handler(&pkg_client, error_handler, NULL);
|
|
1260
1311
|
#endif
|
|
1261
1312
|
|
|
1313
|
+
pkgconf_path_prepend_list(&pkg_client.dir_list, &dir_list);
|
|
1314
|
+
pkgconf_path_free(&dir_list);
|
|
1315
|
+
|
|
1262
1316
|
if ((want_flags & PKG_ABOUT) == PKG_ABOUT)
|
|
1263
1317
|
{
|
|
1264
1318
|
about();
|
|
@@ -1398,6 +1452,9 @@ main(int argc, char *argv[])
|
|
|
1398
1452
|
/* at this point, want_client_flags should be set, so build the dir list */
|
|
1399
1453
|
pkgconf_client_dir_list_build(&pkg_client, personality);
|
|
1400
1454
|
|
|
1455
|
+
/* preload any files in PKG_CONFIG_PRELOADED_FILES */
|
|
1456
|
+
pkgconf_client_preload_from_environ(&pkg_client, "PKG_CONFIG_PRELOADED_FILES");
|
|
1457
|
+
|
|
1401
1458
|
if (required_pkgconfig_version != NULL)
|
|
1402
1459
|
{
|
|
1403
1460
|
if (pkgconf_compare_version(PACKAGE_VERSION, required_pkgconfig_version) >= 0)
|
|
@@ -1427,6 +1484,12 @@ main(int argc, char *argv[])
|
|
|
1427
1484
|
|
|
1428
1485
|
if (logfile_arg != NULL)
|
|
1429
1486
|
{
|
|
1487
|
+
if (pkgconf_unveil(logfile_arg, "rwc") == -1)
|
|
1488
|
+
{
|
|
1489
|
+
fprintf(stderr, "pkgconf: unveil failed: %s\n", strerror(errno));
|
|
1490
|
+
return EXIT_FAILURE;
|
|
1491
|
+
}
|
|
1492
|
+
|
|
1430
1493
|
logfile_out = fopen(logfile_arg, "w");
|
|
1431
1494
|
pkgconf_audit_set_log(&pkg_client, logfile_out);
|
|
1432
1495
|
}
|
|
@@ -1619,6 +1682,13 @@ cleanup3:
|
|
|
1619
1682
|
goto out;
|
|
1620
1683
|
}
|
|
1621
1684
|
|
|
1685
|
+
/* we shouldn't need to unveil any more filesystem accesses from this point, so lock it down */
|
|
1686
|
+
if (pkgconf_unveil(NULL, NULL) == -1)
|
|
1687
|
+
{
|
|
1688
|
+
fprintf(stderr, "pkgconf: unveil lockdown failed: %s\n", strerror(errno));
|
|
1689
|
+
return EXIT_FAILURE;
|
|
1690
|
+
}
|
|
1691
|
+
|
|
1622
1692
|
#ifndef PKGCONF_LITE
|
|
1623
1693
|
if ((want_flags & PKG_SIMULATE) == PKG_SIMULATE)
|
|
1624
1694
|
{
|
|
@@ -12,7 +12,7 @@ dnl implied. In no event shall the authors be liable for any damages arising
|
|
|
12
12
|
dnl from the use of this software.
|
|
13
13
|
|
|
14
14
|
AC_PREREQ([2.71])
|
|
15
|
-
AC_INIT([pkgconf],[2.
|
|
15
|
+
AC_INIT([pkgconf],[2.5.1],[https://github.com/pkgconf/pkgconf/issues/new])
|
|
16
16
|
AC_CONFIG_SRCDIR([cli/main.c])
|
|
17
17
|
AC_CONFIG_MACRO_DIR([m4])
|
|
18
18
|
AX_CHECK_COMPILE_FLAG([-Wall], [CFLAGS="$CFLAGS -Wall"])
|
|
@@ -23,6 +23,7 @@ AX_CHECK_COMPILE_FLAG([-std=gnu99], [CFLAGS="$CFLAGS -std=gnu99"], [
|
|
|
23
23
|
])
|
|
24
24
|
AC_CONFIG_HEADERS([libpkgconf/config.h])
|
|
25
25
|
AC_CHECK_DECLS([strlcpy, strlcat, strndup], [], [], [[#include <string.h>]])
|
|
26
|
+
AC_CHECK_DECLS([pledge, unveil], [], [], [[#include <unistd.h>]])
|
|
26
27
|
AC_CHECK_DECLS([reallocarray])
|
|
27
28
|
AC_CHECK_HEADERS([sys/stat.h])
|
|
28
29
|
AM_INIT_AUTOMAKE([foreign dist-xz subdir-objects])
|
|
@@ -59,7 +59,10 @@ pkgconf_argv_free(char **argv)
|
|
|
59
59
|
int
|
|
60
60
|
pkgconf_argv_split(const char *src, int *argc, char ***argv)
|
|
61
61
|
{
|
|
62
|
-
char *buf =
|
|
62
|
+
char *buf = calloc(1, strlen(src) + 1);
|
|
63
|
+
if (buf == NULL)
|
|
64
|
+
return -1;
|
|
65
|
+
|
|
63
66
|
const char *src_iter;
|
|
64
67
|
char *dst_iter;
|
|
65
68
|
int argc_count = 0;
|
|
@@ -70,9 +73,13 @@ pkgconf_argv_split(const char *src, int *argc, char ***argv)
|
|
|
70
73
|
src_iter = src;
|
|
71
74
|
dst_iter = buf;
|
|
72
75
|
|
|
73
|
-
memset(buf, 0, strlen(src) + 1);
|
|
74
|
-
|
|
75
76
|
*argv = calloc(argv_size, sizeof (void *));
|
|
77
|
+
if (*argv == NULL)
|
|
78
|
+
{
|
|
79
|
+
free(buf);
|
|
80
|
+
return -1;
|
|
81
|
+
}
|
|
82
|
+
|
|
76
83
|
(*argv)[argc_count] = dst_iter;
|
|
77
84
|
|
|
78
85
|
while (*src_iter)
|
|
@@ -21,6 +21,9 @@
|
|
|
21
21
|
#include <sys/types.h>
|
|
22
22
|
#include <string.h>
|
|
23
23
|
#include <errno.h>
|
|
24
|
+
#ifndef _WIN32
|
|
25
|
+
#include <unistd.h>
|
|
26
|
+
#endif
|
|
24
27
|
|
|
25
28
|
#include <libpkgconf/bsdstubs.h>
|
|
26
29
|
#include <libpkgconf/config.h>
|
|
@@ -121,6 +124,28 @@ strndup(const char *src, size_t len)
|
|
|
121
124
|
}
|
|
122
125
|
#endif
|
|
123
126
|
|
|
127
|
+
#if !HAVE_DECL_PLEDGE
|
|
128
|
+
static inline int
|
|
129
|
+
pledge(const char *promises, const char *execpromises)
|
|
130
|
+
{
|
|
131
|
+
(void) promises;
|
|
132
|
+
(void) execpromises;
|
|
133
|
+
|
|
134
|
+
return 0;
|
|
135
|
+
}
|
|
136
|
+
#endif
|
|
137
|
+
|
|
138
|
+
#if !HAVE_DECL_UNVEIL
|
|
139
|
+
static inline int
|
|
140
|
+
unveil(const char *path, const char *permissions)
|
|
141
|
+
{
|
|
142
|
+
(void) path;
|
|
143
|
+
(void) permissions;
|
|
144
|
+
|
|
145
|
+
return 0;
|
|
146
|
+
}
|
|
147
|
+
#endif
|
|
148
|
+
|
|
124
149
|
size_t
|
|
125
150
|
pkgconf_strlcpy(char *dst, const char *src, size_t siz)
|
|
126
151
|
{
|
|
@@ -158,3 +183,15 @@ pkgconf_reallocarray(void *ptr, size_t m, size_t n)
|
|
|
158
183
|
{
|
|
159
184
|
return reallocarray(ptr, m, n);
|
|
160
185
|
}
|
|
186
|
+
|
|
187
|
+
int
|
|
188
|
+
pkgconf_pledge(const char *promises, const char *execpromises)
|
|
189
|
+
{
|
|
190
|
+
return pledge(promises, execpromises);
|
|
191
|
+
}
|
|
192
|
+
|
|
193
|
+
int
|
|
194
|
+
pkgconf_unveil(const char *path, const char *permissions)
|
|
195
|
+
{
|
|
196
|
+
return unveil(path, permissions);
|
|
197
|
+
}
|
|
@@ -26,6 +26,8 @@ PKGCONF_API extern size_t pkgconf_strlcpy(char *dst, const char *src, size_t siz
|
|
|
26
26
|
PKGCONF_API extern size_t pkgconf_strlcat(char *dst, const char *src, size_t siz);
|
|
27
27
|
PKGCONF_API extern char *pkgconf_strndup(const char *src, size_t len);
|
|
28
28
|
PKGCONF_API extern void *pkgconf_reallocarray(void *ptr, size_t m, size_t n);
|
|
29
|
+
PKGCONF_API extern int pkgconf_pledge(const char *promises, const char *execpromises);
|
|
30
|
+
PKGCONF_API extern int pkgconf_unveil(const char *path, const char *permissions);
|
|
29
31
|
|
|
30
32
|
#ifdef __cplusplus
|
|
31
33
|
}
|