跳到主要内容

kmpkg_fixup_pkgconfig

修复 .pc 文件中的常见路径问题,将所有路径调整为相对于 $(prefix) 的形式。

此外,在静态三元组(static triplet) 场景下,该函数会将私有条目(private entries)合并到对应的非私有条目中,使得调用 pkg-config 时无需添加 --static 标志。

由于使用者无法知晓依赖库是静态构建还是动态构建,kmpkg 被设计为永远不需要通过 --static 标志调用 pkg-config。

用法

kmpkg_fixup_pkgconfig(
[RELEASE_FILES <PATHS>...]
[DEBUG_FILES <PATHS>...]
[SKIP_CHECK]
)

参数

RELEASE_FILES

指定需要修复发布版本路径的 .pc 文件列表。默认值为 ${CURRENT_PACKAGES_DIR} 目录下(排除 ${CURRENT_PACKAGES_DIR}/debug/ 子目录)的所有 .pc 文件。

DEBUG_FILES

指定需要修复调试版本路径的 .pc 文件列表。默认值为 ${CURRENT_PACKAGES_DIR}/debug/ 目录下的所有 .pc 文件。

SKIP_CHECK

跳过 kmpkg_fixup_pkgconfig 中的库检查逻辑。仅建议在脚本本身存在未处理的特殊场景时使用。

SYSTEM_PACKAGES(已废弃)

注意

该参数已废弃,无任何实际作用。

SYSTEM_LIBRARIES(已废弃)

注意

该参数已废弃,无任何实际作用。

IGNORE_FLAGS(已废弃)

注意

该参数已废弃,无任何实际作用。

说明

该函数仍在持续完善中。如果有更多可通过此脚本处理的场景,欢迎补充相关逻辑。

示例

源码

scripts/cmake/kmpkg_fixup_pkgconfig.cmake