From bd3916d367e29f702d62db15c8b8160567389cae Mon Sep 17 00:00:00 2001 From: Vivek Reddy Date: Sat, 25 Feb 2023 02:18:26 +0000 Subject: [PATCH 1/2] Provision the ability to apply the patches in any order Signed-off-by: Vivek Reddy --- Makefile | 52 +++++++++++++++++++++++++++++++--------------------- 1 file changed, 31 insertions(+), 21 deletions(-) diff --git a/Makefile b/Makefile index d4acb1b98..5cb01b6ec 100644 --- a/Makefile +++ b/Makefile @@ -61,6 +61,37 @@ ORIG_FILE_URL = "$(SOURCE_FILE_BASE_URL)/$(ORIG_FILE)" NON_UP_DIR = /tmp/non_upstream_patches $(addprefix $(DEST)/, $(MAIN_TARGET)): $(DEST)/% : + # Include any non upstream patches + rm -rf $(NON_UP_DIR) + mkdir -p $(NON_UP_DIR) + + if [ ! -z ${EXTERNAL_KERNEL_PATCH_URL} ]; then + wget $(EXTERNAL_KERNEL_PATCH_URL) -O patches.tar + tar -xf patches.tar -C $(NON_UP_DIR) + fi + + # Precedence is given for external URL + if [ -z ${EXTERNAL_KERNEL_PATCH_URL} ] && [ x${INCLUDE_EXTERNAL_PATCHES} == xy ]; then + if [ -d "$(EXTERNAL_KERNEL_PATCH_LOC)" ]; then + cp -r $(EXTERNAL_KERNEL_PATCH_LOC)/* $(NON_UP_DIR)/ + fi + fi + + if [ -f "$(NON_UP_DIR)/series.patch" ]; then + echo "Patch the series file" + cat $(NON_UP_DIR)/series.patch + pushd patch + # clear any unstaged changes + git stash -- series + git apply $(NON_UP_DIR)/series.patch + popd + + if [ -d "$(NON_UP_DIR)/patches" ]; then + echo "Copy the non upstream patches" + cp $(NON_UP_DIR)/patches/*.patch patch/ + fi + fi + # Obtaining the Debian kernel source rm -rf $(BUILD_DIR) wget -O $(DSC_FILE) $(DSC_FILE_URL) @@ -102,27 +133,6 @@ $(addprefix $(DEST)/, $(MAIN_TARGET)): $(DEST)/% : stg repair stg import -s ../patch/series - rm -rf $(NON_UP_DIR) - mkdir -p $(NON_UP_DIR) - - if [ ! -z ${EXTERNAL_KERNEL_PATCH_URL} ]; then - wget $(EXTERNAL_KERNEL_PATCH_URL) -O patches.tar - tar -xf patches.tar -C $(NON_UP_DIR) - fi - - # Precedence is given for external URL - if [ -z ${EXTERNAL_KERNEL_PATCH_URL} ] && [ x${INCLUDE_EXTERNAL_PATCH_TAR} == xy ]; then - if [ -f "$(EXTERNAL_KERNEL_PATCH_TAR)" ]; then - tar -xf $(EXTERNAL_KERNEL_PATCH_TAR) -C $(NON_UP_DIR) - fi - fi - - if [ -f "$(NON_UP_DIR)/series" ]; then - echo "External Patches applied:" - cat $(NON_UP_DIR)/series - stg import -s $(NON_UP_DIR)/series - fi - # Optionally add/remove kernel options if [ -f ../manage-config ]; then ../manage-config $(CONFIGURED_ARCH) $(CONFIGURED_PLATFORM) $(SECURE_UPGRADE_MODE) $(SECURE_UPGRADE_DEV_SIGNING_CERT) From 907f7a1ac74c42c554c6e63328f5edd3ff3282ba Mon Sep 17 00:00:00 2001 From: Vivek Reddy Date: Tue, 4 Apr 2023 22:38:14 +0000 Subject: [PATCH 2/2] Make INCLUDE_EXTERNAL_PATCHES a mandatory parameter Signed-off-by: Vivek Reddy --- Makefile | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) diff --git a/Makefile b/Makefile index 5cb01b6ec..f897524af 100644 --- a/Makefile +++ b/Makefile @@ -65,15 +65,14 @@ $(addprefix $(DEST)/, $(MAIN_TARGET)): $(DEST)/% : rm -rf $(NON_UP_DIR) mkdir -p $(NON_UP_DIR) - if [ ! -z ${EXTERNAL_KERNEL_PATCH_URL} ]; then - wget $(EXTERNAL_KERNEL_PATCH_URL) -O patches.tar - tar -xf patches.tar -C $(NON_UP_DIR) - fi - - # Precedence is given for external URL - if [ -z ${EXTERNAL_KERNEL_PATCH_URL} ] && [ x${INCLUDE_EXTERNAL_PATCHES} == xy ]; then - if [ -d "$(EXTERNAL_KERNEL_PATCH_LOC)" ]; then - cp -r $(EXTERNAL_KERNEL_PATCH_LOC)/* $(NON_UP_DIR)/ + if [ x${INCLUDE_EXTERNAL_PATCHES} == xy ]; then + if [ ! -z ${EXTERNAL_KERNEL_PATCH_URL} ]; then + wget $(EXTERNAL_KERNEL_PATCH_URL) -O patches.tar + tar -xf patches.tar -C $(NON_UP_DIR) + else + if [ -d "$(EXTERNAL_KERNEL_PATCH_LOC)" ]; then + cp -r $(EXTERNAL_KERNEL_PATCH_LOC)/* $(NON_UP_DIR)/ + fi fi fi