From f3766dc038f7ba9780ddaf5eb8d27385ea31d7d0 Mon Sep 17 00:00:00 2001 From: Richard Purdie Date: Thu, 30 May 2024 17:15:14 +0100 Subject: [PATCH] siteconfig: Drop siteconfig class/code/support The siteconfig code was only used for 5 cache values. The complexity added to sstate to support this code was considerable and the runtime much more significant than any benefit the cache files would have added. Drop the support for this which was only used minimally for ncurses and zlib. Signed-off-by: Richard Purdie --- meta/classes-recipe/autotools.bbclass | 2 - meta/classes-recipe/siteinfo.bbclass | 16 +------ meta/classes-recipe/toolchain-scripts.bbclass | 7 --- meta/classes/siteconfig.bbclass | 39 ----------------- meta/recipes-core/ncurses/ncurses.inc | 2 - meta/recipes-core/ncurses/site_config/headers | 5 --- meta/recipes-core/zlib/site_config/headers | 1 - scripts/gen-site-config | 43 ------------------- 8 files changed, 1 insertion(+), 114 deletions(-) delete mode 100644 meta/classes/siteconfig.bbclass delete mode 100644 meta/recipes-core/ncurses/site_config/headers delete mode 100644 meta/recipes-core/zlib/site_config/headers delete mode 100755 scripts/gen-site-config diff --git a/meta/classes-recipe/autotools.bbclass b/meta/classes-recipe/autotools.bbclass index 9359c9b4e19..7ee1b0d9c74 100644 --- a/meta/classes-recipe/autotools.bbclass +++ b/meta/classes-recipe/autotools.bbclass @@ -254,8 +254,6 @@ autotools_do_install() { fi } -inherit siteconfig - EXPORT_FUNCTIONS do_configure do_compile do_install B = "${WORKDIR}/build" diff --git a/meta/classes-recipe/siteinfo.bbclass b/meta/classes-recipe/siteinfo.bbclass index 68aefb8eda6..25b53d929a7 100644 --- a/meta/classes-recipe/siteinfo.bbclass +++ b/meta/classes-recipe/siteinfo.bbclass @@ -221,20 +221,6 @@ def siteinfo_get_files(d, sysrootcache=False): # This would show up as breaking sstatetests.SStateTests.test_sstate_32_64_same_hash for example searched = [] - if not sysrootcache: - return sitefiles, searched - - # Now check for siteconfig cache files in sysroots - path_siteconfig = d.getVar('SITECONFIG_SYSROOTCACHE') - if path_siteconfig and os.path.isdir(path_siteconfig): - for i in os.listdir(path_siteconfig): - if not i.endswith("_config"): - continue - filename = os.path.join(path_siteconfig, i) - sitefiles.append(filename) return sitefiles, searched -# -# Make some information available via variables -# -SITECONFIG_SYSROOTCACHE = "${STAGING_DATADIR}/${TARGET_SYS}_config_site.d" + diff --git a/meta/classes-recipe/toolchain-scripts.bbclass b/meta/classes-recipe/toolchain-scripts.bbclass index cbef412e796..b59a295abcc 100644 --- a/meta/classes-recipe/toolchain-scripts.bbclass +++ b/meta/classes-recipe/toolchain-scripts.bbclass @@ -201,7 +201,6 @@ EOF #we get the cached site config in the runtime TOOLCHAIN_CONFIGSITE_NOCACHE = "${@' '.join(siteinfo_get_files(d)[0])}" -TOOLCHAIN_CONFIGSITE_SYSROOTCACHE = "${STAGING_DIR}/${MLPREFIX}${MACHINE}/${target_datadir}/${TARGET_SYS}_config_site.d" TOOLCHAIN_NEED_CONFIGSITE_CACHE ??= "virtual/${MLPREFIX}libc ncurses" DEPENDS += "${TOOLCHAIN_NEED_CONFIGSITE_CACHE}" @@ -223,14 +222,8 @@ toolchain_create_sdk_siteconfig () { sitefile=`echo $sitefile | tr / _` sitefile=`cat ${STAGING_DIR_TARGET}/sysroot-providers/$sitefile` esac - - if [ -r ${TOOLCHAIN_CONFIGSITE_SYSROOTCACHE}/${sitefile}_config ]; then - cat ${TOOLCHAIN_CONFIGSITE_SYSROOTCACHE}/${sitefile}_config >> $siteconfig - fi done } -# The immediate expansion above can result in unwanted path dependencies here -toolchain_create_sdk_siteconfig[vardepsexclude] = "TOOLCHAIN_CONFIGSITE_SYSROOTCACHE" python __anonymous () { import oe.classextend diff --git a/meta/classes/siteconfig.bbclass b/meta/classes/siteconfig.bbclass deleted file mode 100644 index 953cafd285e..00000000000 --- a/meta/classes/siteconfig.bbclass +++ /dev/null @@ -1,39 +0,0 @@ -# -# Copyright OpenEmbedded Contributors -# -# SPDX-License-Identifier: MIT -# - -python siteconfig_do_siteconfig () { - shared_state = sstate_state_fromvars(d) - if shared_state['task'] != 'populate_sysroot': - return - if not os.path.isdir(os.path.join(d.getVar('FILE_DIRNAME'), 'site_config')): - bb.debug(1, "No site_config directory, skipping do_siteconfig") - return - sstate_install(shared_state, d) - bb.build.exec_func('do_siteconfig_gencache', d) - sstate_clean(shared_state, d) -} - -EXTRASITECONFIG ?= "" - -siteconfig_do_siteconfig_gencache () { - mkdir -p ${WORKDIR}/site_config_${MACHINE} - gen-site-config ${FILE_DIRNAME}/site_config \ - >${WORKDIR}/site_config_${MACHINE}/configure.ac - cd ${WORKDIR}/site_config_${MACHINE} - autoconf - rm -f ${BPN}_cache - CONFIG_SITE="" ${EXTRASITECONFIG} ./configure ${CONFIGUREOPTS} --cache-file ${BPN}_cache - sed -n -e "/ac_cv_c_bigendian/p" -e "/ac_cv_sizeof_/p" \ - -e "/ac_cv_type_/p" -e "/ac_cv_header_/p" -e "/ac_cv_func_/p" \ - < ${BPN}_cache > ${BPN}_config - mkdir -p ${SYSROOT_DESTDIR}${datadir}/${TARGET_SYS}_config_site.d - cp ${BPN}_config ${SYSROOT_DESTDIR}${datadir}/${TARGET_SYS}_config_site.d - -} - -do_populate_sysroot[sstate-interceptfuncs] += "do_siteconfig " - -EXPORT_FUNCTIONS do_siteconfig do_siteconfig_gencache diff --git a/meta/recipes-core/ncurses/ncurses.inc b/meta/recipes-core/ncurses/ncurses.inc index 2a3fd4f2c5d..f5e37b94da6 100644 --- a/meta/recipes-core/ncurses/ncurses.inc +++ b/meta/recipes-core/ncurses/ncurses.inc @@ -20,8 +20,6 @@ EXTRA_AUTORECONF = "-I m4" CACHED_CONFIGUREVARS = "cf_cv_func_nanosleep=yes" CACHED_CONFIGUREVARS:append:linux = " cf_cv_working_poll=yes" -EXTRASITECONFIG = "CFLAGS='${CFLAGS} -I${SYSROOT_DESTDIR}${includedir}'" - # Whether to enable separate widec libraries; must be 'true' or 'false' # # TODO: remove this variable when widec is supported in every setup? diff --git a/meta/recipes-core/ncurses/site_config/headers b/meta/recipes-core/ncurses/site_config/headers deleted file mode 100644 index 087b7bfd5e4..00000000000 --- a/meta/recipes-core/ncurses/site_config/headers +++ /dev/null @@ -1,5 +0,0 @@ -curses.h -ncurses/curses.h -ncurses.h -ncurses/termcap.h - diff --git a/meta/recipes-core/zlib/site_config/headers b/meta/recipes-core/zlib/site_config/headers deleted file mode 100644 index 50268918aa9..00000000000 --- a/meta/recipes-core/zlib/site_config/headers +++ /dev/null @@ -1 +0,0 @@ -zlib.h diff --git a/scripts/gen-site-config b/scripts/gen-site-config deleted file mode 100755 index 727b809c0f2..00000000000 --- a/scripts/gen-site-config +++ /dev/null @@ -1,43 +0,0 @@ -#! /bin/sh -# Copyright (c) 2005-2008 Wind River Systems, Inc. -# -# SPDX-License-Identifier: GPL-2.0-only -# - -cat << EOF -AC_PREREQ(2.57) -AC_INIT([site_wide],[1.0.0]) - -EOF - -# Disable as endian is set in the default config -#echo AC_C_BIGENDIAN -#echo - -if [ -e $1/types ] ; then - while read type ; do - echo "AC_CHECK_SIZEOF([$type])" - done < $1/types - - echo -fi - -if [ -e $1/funcs ]; then - while read func ; do - echo "AC_CHECK_FUNCS([$func])" - done < $1/funcs - - echo -fi - -if [ -e $1/headers ]; then - while read header ; do - echo "AC_CHECK_HEADERS([$header])" - done < $1/headers - - echo -fi - -cat << EOF -AC_OUTPUT -EOF -- 2.47.2