[PATCH 4/8] classes/pkgconfig: move variable exports to the class

Ross Burton
2026-01-23T18:04:59Z

All recipes that use pkg-config should be inheriting the class so this
is a no-op change for those, and for recipes that do not use pkg-config
will no longer need to rebuild if these variables are changed.

Any recipes that use pkg-config but do not inherit the class will fail
to build, and this is intentional: those recipes should inherit the class.

This commit is simply the move of the exports, the values do not change.

Signed-off-by: Ross Burton <ross.burton@arm.com>
---
meta/classes-recipe/pkgconfig.bbclass | 7 +++++++
meta/conf/bitbake.conf | 14 +++++++-------
2 files changed, 14 insertions(+), 7 deletions(-)

diff --git a/meta/classes-recipe/pkgconfig.bbclass b/meta/classes-recipe/pkgconfig.bbclass
index 1e1f3824dd..ea91338d34 100644
--- a/meta/classes-recipe/pkgconfig.bbclass
+++ b/meta/classes-recipe/pkgconfig.bbclass
@@ -6,3 +6,10 @@

DEPENDS:prepend = "pkgconfig-native "

+export PKG_CONFIG_DIR
+export PKG_CONFIG_PATH
+export PKG_CONFIG_LIBDIR
+export PKG_CONFIG_SYSROOT_DIR
+export PKG_CONFIG_DISABLE_UNINSTALLED
+export PKG_CONFIG_SYSTEM_LIBRARY_PATH
+export PKG_CONFIG_SYSTEM_INCLUDE_PATH
diff --git a/meta/conf/bitbake.conf b/meta/conf/bitbake.conf
index 88f4d0df69..8779f65157 100644
--- a/meta/conf/bitbake.conf
+++ b/meta/conf/bitbake.conf
@@ -768,13 +768,13 @@ BUILDCFG_NEEDEDVARS[type] = "list"

# Other

-export PKG_CONFIG_DIR = "${STAGING_DIR_HOST}${libdir}/pkgconfig"
-export PKG_CONFIG_PATH = "${PKG_CONFIG_DIR}:${STAGING_DATADIR}/pkgconfig"
-export PKG_CONFIG_LIBDIR = "${PKG_CONFIG_DIR}"
-export PKG_CONFIG_SYSROOT_DIR = "${STAGING_DIR_HOST}"
-export PKG_CONFIG_DISABLE_UNINSTALLED = "yes"
-export PKG_CONFIG_SYSTEM_LIBRARY_PATH = "${base_libdir}:${libdir}"
-export PKG_CONFIG_SYSTEM_INCLUDE_PATH = "${includedir}"
+PKG_CONFIG_DIR = "${STAGING_DIR_HOST}${libdir}/pkgconfig"
+PKG_CONFIG_PATH = "${PKG_CONFIG_DIR}:${STAGING_DATADIR}/pkgconfig"
+PKG_CONFIG_LIBDIR = "${PKG_CONFIG_DIR}"
+PKG_CONFIG_SYSROOT_DIR = "${STAGING_DIR_HOST}"
+PKG_CONFIG_DISABLE_UNINSTALLED = "yes"
+PKG_CONFIG_SYSTEM_LIBRARY_PATH = "${base_libdir}:${libdir}"
+PKG_CONFIG_SYSTEM_INCLUDE_PATH = "${includedir}"

# Don't allow git to chdir up past WORKDIR or TMPDIR so that it doesn't detect the OE
# repository when building a recipe.
--
2.43.0