vcpkg/docs/maintainers/vcpkg_fixup_pkgconfig.md
nicole mazzuca 6b117c9c7e
[vcpkg docs] Check for documentation generation in CI (#14614)
* [vcpkg docs] Change how documenting port functions works

Instead of using `##`, use comment blocks for documentation.

Also, add some minor docs and change RST -> MD
so we actually get docs generated.

* add CI stuff

* regenerate docs

* fix vcpkg_find_acquire_program to not use _execute_process
2020-12-01 13:37:26 -08:00

1.4 KiB

vcpkg_fixup_pkgconfig

Fix common paths in *.pc files and make everything relativ to $(prefix)

Usage

vcpkg_fixup_pkgconfig(
    [RELEASE_FILES <PATHS>...]
    [DEBUG_FILES <PATHS>...]
    [SYSTEM_LIBRARIES <NAMES>...]
    [IGNORE_FLAGS <FLAGS>]
    [SKIP_CHECK]
)

Parameters

RELEASE_FILES

Specifies a list of files to apply the fixes for release paths. Defaults to every *.pc file in the folder ${CURRENT_PACKAGES_DIR} without ${CURRENT_PACKAGES_DIR}/debug/

DEBUG_FILES

Specifies a list of files to apply the fixes for debug paths. Defaults to every *.pc file in the folder ${CURRENT_PACKAGES_DIR}/debug/

SYSTEM_LIBRARIES

If the *.pc file contains system libraries outside vcpkg these need to be listed here. VCPKG checks every -l flag for the existence of the required library within vcpkg.

IGNORE_FLAGS

If the *.pc file contains flags in the lib field which are not libraries. These can be listed here

SKIP_CHECK

Skips the library checks in vcpkg_fixup_pkgconfig. Only use if the script itself has unhandled cases.

Notes

Still work in progress. If there are more cases which can be handled here feel free to add them

Examples

Just call vcpkg_fixup_pkgconfig() after any install step which installs *.pc files.

Source

scripts/cmake/vcpkg_fixup_pkgconfig.cmake