From 99a6ddf3be35bd49566cf3d0e942729696684a6e Mon Sep 17 00:00:00 2001 From: "Yann E. MORIN\"" Date: Mon, 7 May 2012 00:27:05 +0200 Subject: samples: use savedefconfig when saving samples When saving a sample, use savedefconfig instead of copying the full .config file. This reduces the saved .config, and reduces clutter when it is later upgraded. Also use defconfig when retrieving a sample. Reported-by: Thomas Petazzoni Signed-off-by: "Yann E. MORIN" --- scripts/saveSample.sh.in | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) (limited to 'scripts') diff --git a/scripts/saveSample.sh.in b/scripts/saveSample.sh.in index e8859721..792f0332 100644 --- a/scripts/saveSample.sh.in +++ b/scripts/saveSample.sh.in @@ -72,15 +72,16 @@ esac samp_dir="samples/${samp_name}" mkdir -p "${samp_dir}" -# Save the crosstool-NG config file -# We need to save the real .config with kconfig's values, -# not our mangled .config.2 with arrays +# Tweak the .config file +# We need to be based on the real .config with kconfig's values, +# not our mangled .config.2 with shell arrays +cp .config .defconfig "${sed}" -r -e 's|^(CT_PREFIX_DIR)=.*|\1="${HOME}/x-tools/${CT_TARGET}"|;' \ -e 's|^# CT_LOG_TO_FILE is not set$|CT_LOG_TO_FILE=y|;' \ -e 's|^# CT_LOG_FILE_COMPRESS is not set$|CT_LOG_FILE_COMPRESS=y|;' \ -e 's|^(CT_LOCAL_TARBALLS_DIR)=.*|\1="${HOME}/src"|;' \ <.config \ - >"${samp_dir}/crosstool.config" + >.defconfig # Function to copy a file to the sample directory # Needed in case the file is already there (think of a previously available sample) @@ -106,7 +107,7 @@ if [ -n "${CT_LIBC_UCLIBC_CONFIG_FILE}" ]; then # We save the file, and then point the saved sample to this file CT_DoAddFileToSample "${CT_LIBC_UCLIBC_CONFIG_FILE}" "${samp_dir}/${CT_LIBC}-${CT_LIBC_VERSION}.config" "${sed}" -r -i -e 's|^(CT_LIBC_UCLIBC_CONFIG_FILE)=.+$|\1="'"${samp_top_dir}"'/samples/${CT_TARGET}/${CT_LIBC}-${CT_LIBC_VERSION}.config"|;' \ - "${samp_dir}/crosstool.config" + .defconfig else # remove any dangling files for f in "${samp_dir}/${CT_LIBC}-"*.config; do @@ -114,6 +115,11 @@ else done fi +# Now, actually save the defconfig +export KCONFIG_CONFIG="$(pwd)/.defconfig" +${CONF} --savedefconfig="${samp_dir}/crosstool.config" "${KCONFIG_TOP}" +rm -f .defconfig + # Restore stdout now, to be interactive exec >&7 -- cgit v1.2.3