### 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
|
||||
rm -f $(addprefix $(FILES_PATH)/, $*)
|
||||
# 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
|
||||
make DEST=$(shell pwd)/$(FILES_PATH) -C $($*_SRC_PATH) $(shell pwd)/$(FILES_PATH)/$* $(LOG)
|
||||
# Clean up
|
||||
@ -452,7 +452,7 @@ $(addprefix $(DEBS_PATH)/, $(SONIC_MAKE_DEBS)) : $(DEBS_PATH)/% : .platform $$(a
|
||||
# Remove target to force rebuild
|
||||
rm -f $(addprefix $(DEBS_PATH)/, $* $($*_DERIVED_DEBS) $($*_EXTRA_DEBS))
|
||||
# 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
|
||||
$(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)
|
||||
@ -491,7 +491,7 @@ $(addprefix $(DEBS_PATH)/, $(SONIC_DPKG_DEBS)) : $(DEBS_PATH)/% : .platform $$(a
|
||||
# Remove old build logs if they exist
|
||||
rm -f $($*_SRC_PATH)/debian/*.debhelper.log
|
||||
# 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
|
||||
pushd $($*_SRC_PATH) $(LOG_SIMPLE)
|
||||
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
|
||||
|
||||
# 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
|
||||
pushd $($*_SRC_PATH) $(LOG_SIMPLE)
|
||||
rm -rf deb_dist/* $(LOG)
|
||||
@ -637,7 +637,7 @@ $(addprefix $(PYTHON_WHEELS_PATH)/, $(SONIC_PYTHON_WHEELS)) : $(PYTHON_WHEELS_PA
|
||||
|
||||
pushd $($*_SRC_PATH) $(LOG_SIMPLE)
|
||||
# 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
|
||||
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
|
||||
@ -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)))
|
||||
$(HEADER)
|
||||
# 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
|
||||
scripts/prepare_docker_buildinfo.sh $* $($*.gz_PATH)/Dockerfile $(CONFIGURED_ARCH) $(TARGET_DOCKERFILE)/Dockerfile.buildinfo
|
||||
docker info $(LOG)
|
||||
@ -759,7 +759,7 @@ $(addprefix $(TARGET_PATH)/, $(DOCKER_IMAGES)) : $(TARGET_PATH)/%.gz : .platform
|
||||
if [ -z '$($*.gz_CACHE_LOADED)' ] ; then
|
||||
|
||||
# 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)/files $(LOG)
|
||||
mkdir -p $($*.gz_PATH)/python-debs $(LOG)
|
||||
|
Loading…
Reference in New Issue
Block a user