### Why I did it Cherry-pick from https://github.com/sonic-net/sonic-buildimage/pull/15660 Fix some of the patches in .patches folder not applied issue. The command "quilt applied" only lists the applied patches, if some of the patches have issues, then the patches will not be applied when you run the build command again. ##### Work item tracking - Microsoft ADO **(number only)**: 24410730 #### How I did it 1. Run the command to apply the patches without any conditions. 2. If failed, check if the failure reason is "series fully applied".
This commit is contained in:
parent
6f2e2f353b
commit
22d1eda644
14
slave.mk
14
slave.mk
@ -408,7 +408,7 @@ $(addprefix $(FILES_PATH)/, $(SONIC_MAKE_FILES)) : $(FILES_PATH)/% : .platform $
|
|||||||
# Remove target to force rebuild
|
# Remove target to force rebuild
|
||||||
rm -f $(addprefix $(FILES_PATH)/, $*)
|
rm -f $(addprefix $(FILES_PATH)/, $*)
|
||||||
# Apply series of patches if exist
|
# Apply series of patches if exist
|
||||||
if [ -f $($*_SRC_PATH).patch/series ]; then pushd $($*_SRC_PATH) && quilt applied || QUILT_PATCHES=../$(notdir $($*_SRC_PATH)).patch quilt push -a; popd; fi $(LOG)
|
if [ -f $($*_SRC_PATH).patch/series ]; then pushd $($*_SRC_PATH) && ( quilt pop -a -f 1>/dev/null 2>&1 || true ) && QUILT_PATCHES=../$(notdir $($*_SRC_PATH)).patch quilt push -a; popd; fi $(LOG)
|
||||||
# Build project and take package
|
# Build project and take package
|
||||||
make DEST=$(shell pwd)/$(FILES_PATH) -C $($*_SRC_PATH) $(shell pwd)/$(FILES_PATH)/$* $(LOG)
|
make DEST=$(shell pwd)/$(FILES_PATH) -C $($*_SRC_PATH) $(shell pwd)/$(FILES_PATH)/$* $(LOG)
|
||||||
# Clean up
|
# Clean up
|
||||||
@ -452,7 +452,7 @@ $(addprefix $(DEBS_PATH)/, $(SONIC_MAKE_DEBS)) : $(DEBS_PATH)/% : .platform $$(a
|
|||||||
# Remove target to force rebuild
|
# Remove target to force rebuild
|
||||||
rm -f $(addprefix $(DEBS_PATH)/, $* $($*_DERIVED_DEBS) $($*_EXTRA_DEBS))
|
rm -f $(addprefix $(DEBS_PATH)/, $* $($*_DERIVED_DEBS) $($*_EXTRA_DEBS))
|
||||||
# Apply series of patches if exist
|
# Apply series of patches if exist
|
||||||
if [ -f $($*_SRC_PATH).patch/series ]; then pushd $($*_SRC_PATH) && quilt applied || QUILT_PATCHES=../$(notdir $($*_SRC_PATH)).patch quilt push -a; popd; fi $(LOG)
|
if [ -f $($*_SRC_PATH).patch/series ]; then pushd $($*_SRC_PATH) && ( quilt pop -a -f 1>/dev/null 2>&1 || true ) && QUILT_PATCHES=../$(notdir $($*_SRC_PATH)).patch quilt push -a; popd; fi $(LOG)
|
||||||
# Build project and take package
|
# Build project and take package
|
||||||
$(SETUP_OVERLAYFS_FOR_DPKG_ADMINDIR)
|
$(SETUP_OVERLAYFS_FOR_DPKG_ADMINDIR)
|
||||||
DEB_BUILD_OPTIONS="${DEB_BUILD_OPTIONS_GENERIC}" make DEST=$(shell pwd)/$(DEBS_PATH) -C $($*_SRC_PATH) $(shell pwd)/$(DEBS_PATH)/$* $(LOG)
|
DEB_BUILD_OPTIONS="${DEB_BUILD_OPTIONS_GENERIC}" make DEST=$(shell pwd)/$(DEBS_PATH) -C $($*_SRC_PATH) $(shell pwd)/$(DEBS_PATH)/$* $(LOG)
|
||||||
@ -491,7 +491,7 @@ $(addprefix $(DEBS_PATH)/, $(SONIC_DPKG_DEBS)) : $(DEBS_PATH)/% : .platform $$(a
|
|||||||
# Remove old build logs if they exist
|
# Remove old build logs if they exist
|
||||||
rm -f $($*_SRC_PATH)/debian/*.debhelper.log
|
rm -f $($*_SRC_PATH)/debian/*.debhelper.log
|
||||||
# Apply series of patches if exist
|
# Apply series of patches if exist
|
||||||
if [ -f $($*_SRC_PATH).patch/series ]; then pushd $($*_SRC_PATH) && quilt applied || QUILT_PATCHES=../$(notdir $($*_SRC_PATH)).patch quilt push -a; popd; fi $(LOG)
|
if [ -f $($*_SRC_PATH).patch/series ]; then pushd $($*_SRC_PATH) && ( quilt pop -a -f 1>/dev/null 2>&1 || true ) && QUILT_PATCHES=../$(notdir $($*_SRC_PATH)).patch quilt push -a; popd; fi $(LOG)
|
||||||
# Build project
|
# Build project
|
||||||
pushd $($*_SRC_PATH) $(LOG_SIMPLE)
|
pushd $($*_SRC_PATH) $(LOG_SIMPLE)
|
||||||
if [ -f ./autogen.sh ]; then ./autogen.sh $(LOG); fi
|
if [ -f ./autogen.sh ]; then ./autogen.sh $(LOG); fi
|
||||||
@ -597,7 +597,7 @@ $(addprefix $(PYTHON_DEBS_PATH)/, $(SONIC_PYTHON_STDEB_DEBS)) : $(PYTHON_DEBS_PA
|
|||||||
if [ -z '$($*_CACHE_LOADED)' ] ; then
|
if [ -z '$($*_CACHE_LOADED)' ] ; then
|
||||||
|
|
||||||
# Apply series of patches if exist
|
# Apply series of patches if exist
|
||||||
if [ -f $($*_SRC_PATH).patch/series ]; then pushd $($*_SRC_PATH) && quilt applied || QUILT_PATCHES=../$(notdir $($*_SRC_PATH)).patch quilt push -a; popd; fi $(LOG)
|
if [ -f $($*_SRC_PATH).patch/series ]; then pushd $($*_SRC_PATH) && ( quilt pop -a -f 1>/dev/null 2>&1 || true ) && QUILT_PATCHES=../$(notdir $($*_SRC_PATH)).patch quilt push -a; popd; fi $(LOG)
|
||||||
# Build project
|
# Build project
|
||||||
pushd $($*_SRC_PATH) $(LOG_SIMPLE)
|
pushd $($*_SRC_PATH) $(LOG_SIMPLE)
|
||||||
rm -rf deb_dist/* $(LOG)
|
rm -rf deb_dist/* $(LOG)
|
||||||
@ -637,7 +637,7 @@ $(addprefix $(PYTHON_WHEELS_PATH)/, $(SONIC_PYTHON_WHEELS)) : $(PYTHON_WHEELS_PA
|
|||||||
|
|
||||||
pushd $($*_SRC_PATH) $(LOG_SIMPLE)
|
pushd $($*_SRC_PATH) $(LOG_SIMPLE)
|
||||||
# apply series of patches if exist
|
# apply series of patches if exist
|
||||||
if [ -f ../$(notdir $($*_SRC_PATH)).patch/series ]; then quilt applied || QUILT_PATCHES=../$(notdir $($*_SRC_PATH)).patch quilt push -a; fi $(LOG)
|
if [ -f ../$(notdir $($*_SRC_PATH)).patch/series ]; then ( quilt pop -a -f 1>/dev/null 2>&1 || true ) && QUILT_PATCHES=../$(notdir $($*_SRC_PATH)).patch quilt push -a; fi $(LOG)
|
||||||
# Use pip instead of later setup.py to install dependencies into user home, but uninstall self
|
# Use pip instead of later setup.py to install dependencies into user home, but uninstall self
|
||||||
pip$($*_PYTHON_VERSION) install . && pip$($*_PYTHON_VERSION) uninstall --yes `python setup.py --name`
|
pip$($*_PYTHON_VERSION) install . && pip$($*_PYTHON_VERSION) uninstall --yes `python setup.py --name`
|
||||||
if [ ! "$($*_TEST)" = "n" ]; then python$($*_PYTHON_VERSION) setup.py test $(LOG); fi
|
if [ ! "$($*_TEST)" = "n" ]; then python$($*_PYTHON_VERSION) setup.py test $(LOG); fi
|
||||||
@ -686,7 +686,7 @@ docker-start :
|
|||||||
$(addprefix $(TARGET_PATH)/, $(SONIC_SIMPLE_DOCKER_IMAGES)) : $(TARGET_PATH)/%.gz : .platform docker-start $$(addsuffix -load,$$(addprefix $(TARGET_PATH)/,$$($$*.gz_LOAD_DOCKERS)))
|
$(addprefix $(TARGET_PATH)/, $(SONIC_SIMPLE_DOCKER_IMAGES)) : $(TARGET_PATH)/%.gz : .platform docker-start $$(addsuffix -load,$$(addprefix $(TARGET_PATH)/,$$($$*.gz_LOAD_DOCKERS)))
|
||||||
$(HEADER)
|
$(HEADER)
|
||||||
# Apply series of patches if exist
|
# Apply series of patches if exist
|
||||||
if [ -f $($*.gz_PATH).patch/series ]; then pushd $($*.gz_PATH) && quilt applied || QUILT_PATCHES=../$(notdir $($*.gz_PATH)).patch quilt push -a; popd; fi $(LOG)
|
if [ -f $($*.gz_PATH).patch/series ]; then pushd $($*.gz_PATH) && ( quilt pop -a -f 1>/dev/null 2>&1 || true ) && QUILT_PATCHES=../$(notdir $($*.gz_PATH)).patch quilt push -a; popd; fi $(LOG)
|
||||||
# Prepare docker build info
|
# Prepare docker build info
|
||||||
scripts/prepare_docker_buildinfo.sh $* $($*.gz_PATH)/Dockerfile $(CONFIGURED_ARCH) $(TARGET_DOCKERFILE)/Dockerfile.buildinfo
|
scripts/prepare_docker_buildinfo.sh $* $($*.gz_PATH)/Dockerfile $(CONFIGURED_ARCH) $(TARGET_DOCKERFILE)/Dockerfile.buildinfo
|
||||||
docker info $(LOG)
|
docker info $(LOG)
|
||||||
@ -759,7 +759,7 @@ $(addprefix $(TARGET_PATH)/, $(DOCKER_IMAGES)) : $(TARGET_PATH)/%.gz : .platform
|
|||||||
if [ -z '$($*.gz_CACHE_LOADED)' ] ; then
|
if [ -z '$($*.gz_CACHE_LOADED)' ] ; then
|
||||||
|
|
||||||
# Apply series of patches if exist
|
# Apply series of patches if exist
|
||||||
if [ -f $($*.gz_PATH).patch/series ]; then pushd $($*.gz_PATH) && quilt applied || QUILT_PATCHES=../$(notdir $($*.gz_PATH)).patch quilt push -a; popd; fi $(LOG)
|
if [ -f $($*.gz_PATH).patch/series ]; then pushd $($*.gz_PATH) && ( quilt pop -a -f 1>/dev/null 2>&1 || true ) && QUILT_PATCHES=../$(notdir $($*.gz_PATH)).patch quilt push -a; popd; fi $(LOG)
|
||||||
mkdir -p $($*.gz_PATH)/debs $(LOG)
|
mkdir -p $($*.gz_PATH)/debs $(LOG)
|
||||||
mkdir -p $($*.gz_PATH)/files $(LOG)
|
mkdir -p $($*.gz_PATH)/files $(LOG)
|
||||||
mkdir -p $($*.gz_PATH)/python-debs $(LOG)
|
mkdir -p $($*.gz_PATH)/python-debs $(LOG)
|
||||||
|
Loading…
Reference in New Issue
Block a user