Diffstat (limited to 'make-sources.sh')
| -rwxr-xr-x | make-sources.sh | 25 |
1 files changed, 23 insertions, 2 deletions
diff --git a/make-sources.sh b/make-sources.sh index 7271bf8..aa1c13b 100755 --- a/make-sources.sh +++ b/make-sources.sh @@ -130,6 +130,27 @@ while read -r dir; do total=$((total + count)) done < "${order_file}" +# Repair known-bad overlay patches: fixups/<patch basename>.sed is applied to +# the staged copy of that patch. +shopt -s nullglob +for fixup in "${script_dir}"/fixups/*.sed; do + fixup_name=${fixup##*/} + target=${fixup_name%.sed} + staged=$(find "${staging}/patches" -type f -name "${target}" -print -quit) + if [[ -z ${staged} ]]; then + echo "ERROR: fixups/${fixup_name} matches no staged patch; delete it" >&2 + exit 1 + fi + sed -f "${fixup}" "${staged}" > "${staging}/.fixed.patch" + if cmp -s "${staged}" "${staging}/.fixed.patch"; then + echo "ERROR: fixups/${fixup_name} changed nothing (overlay patch repaired?); delete it" >&2 + exit 1 + fi + mv "${staging}/.fixed.patch" "${staged}" + echo " fixup applied: ${target}" +done +shopt -u nullglob + tarball="${output_dir}/kernel-surface-patches-${upstream_ver}-${patchset_ver}.tar.gz" # COPYFILE_DISABLE stops macOS tar from adding ._ AppleDouble members, which # would show up as bogus patch files in the spec's glob. @@ -139,10 +160,10 @@ echo "${tarball} (${index} directories, ${total} patches)" #-------------------------------------- # Base config and fragments #-------------------------------------- -for cfg in base-aarch64 surface live-image no-debug-info; do +for cfg in base-aarch64 surface live-image no-debug-info foreign-socs; do cp "${script_dir}/config/${cfg}.config" "${output_dir}/${cfg}.config" done -echo "${output_dir}/{base-aarch64,surface,live-image,no-debug-info}.config" +echo "${output_dir}/{base-aarch64,surface,live-image,no-debug-info,foreign-socs}.config" if [[ ${skip_download} == true ]]; then exit 0 |