Skip to content

Commit ab2ae41

Browse files
authored
[build]: fix dpkg admindir corruption issue in parallel build (#6408)
Fix #119 when parallel build is enable, multiple dpkg-buildpackage instances are running at the same time. /var/lib/dpkg is shared by all instances and the /var/lib/dpkg/updates could be corrupted and cause the build failure. the fix is to use overlay fs to mount separate /var/lib/dpkg for each dpkg-buildpackage instance so that they are not affecting each other. Signed-off-by: Guohan Lu <[email protected]>
1 parent 6ff8d2c commit ab2ae41

File tree

37 files changed

+55
-39
lines changed

37 files changed

+55
-39
lines changed

platform/broadcom/sonic-platform-modules-brcm-xlr-gts/Makefile

+1-1
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ MAIN_TARGET = $(BRCM_XLR_GTS_PLATFORM_MODULE)
77
$(addprefix $(DEST)/, $(MAIN_TARGET)): $(DEST)/% :
88
# Build the package
99
export PYBUILD_INSTALL_ARGS_python2=--install-scripts=/dev/null
10-
dpkg-buildpackage -rfakeroot -b -us -uc -j$(SONIC_CONFIG_MAKE_JOBS)
10+
dpkg-buildpackage -rfakeroot -b -us -uc -j$(SONIC_CONFIG_MAKE_JOBS) --admindir $(SONIC_DPKG_ADMINDIR)
1111

1212
mv $(addprefix ../, $* $(EXTRA_TARGETS)) $(DEST)/
1313

rules/functions

+12
Original file line numberDiff line numberDiff line change
@@ -153,3 +153,15 @@ if [ -n "$(1)" ]; then \
153153
done; \
154154
fi
155155
endef
156+
157+
###############################################################################
158+
## Setup overlay fs for dpkg admin directory /var/lib/dpkg
159+
###############################################################################
160+
define SETUP_OVERLAYFS_FOR_DPKG_ADMINDIR
161+
upperdir=$(shell mktemp -d -p $(DPKG_ADMINDIR_PATH))
162+
workdir=$(shell mktemp -d -p $(DPKG_ADMINDIR_PATH))
163+
mergedir=$(shell mktemp -d -p $(DPKG_ADMINDIR_PATH))
164+
sudo mount -t overlay overlay -olowerdir=/var/lib/dpkg,upperdir=$$upperdir,workdir=$$workdir $$mergedir
165+
export SONIC_DPKG_ADMINDIR=$$mergedir
166+
trap "sudo umount $$mergedir && rm -rf $$mergedir $$upperdir $$workdir" EXIT
167+
endef

slave.mk

+6-2
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,7 @@ BUSTER_DEBS_PATH = $(TARGET_PATH)/debs/buster
4141
BUSTER_FILES_PATH = $(TARGET_PATH)/files/buster
4242
DBG_IMAGE_MARK = dbg
4343
DBG_SRC_ARCHIVE_FILE = $(TARGET_PATH)/sonic_src.tar.gz
44+
DPKG_ADMINDIR_PATH = /sonic/dpkg
4445

4546
CONFIGURED_PLATFORM := $(shell [ -f .platform ] && cat .platform || echo generic)
4647
PLATFORM_PATH = platform/$(CONFIGURED_PLATFORM)
@@ -83,6 +84,7 @@ configure :
8384
@mkdir -p $(BUSTER_FILES_PATH)
8485
@mkdir -p $(PYTHON_DEBS_PATH)
8586
@mkdir -p $(PYTHON_WHEELS_PATH)
87+
@mkdir -p $(DPKG_ADMINDIR_PATH)
8688
@echo $(PLATFORM) > .platform
8789
@echo $(PLATFORM_ARCH) > .arch
8890

@@ -419,6 +421,7 @@ $(addprefix $(DEBS_PATH)/, $(SONIC_MAKE_DEBS)) : $(DEBS_PATH)/% : .platform $$(a
419421
# Apply series of patches if exist
420422
if [ -f $($*_SRC_PATH).patch/series ]; then pushd $($*_SRC_PATH) && QUILT_PATCHES=../$(notdir $($*_SRC_PATH)).patch quilt push -a; popd; fi
421423
# Build project and take package
424+
$(SETUP_OVERLAYFS_FOR_DPKG_ADMINDIR)
422425
DEB_BUILD_OPTIONS="${DEB_BUILD_OPTIONS_GENERIC}" make DEST=$(shell pwd)/$(DEBS_PATH) -C $($*_SRC_PATH) $(shell pwd)/$(DEBS_PATH)/$* $(LOG)
423426
# Clean up
424427
if [ -f $($*_SRC_PATH).patch/series ]; then pushd $($*_SRC_PATH) && quilt pop -a -f; [ -d .pc ] && rm -rf .pc; popd; fi
@@ -459,9 +462,10 @@ $(addprefix $(DEBS_PATH)/, $(SONIC_DPKG_DEBS)) : $(DEBS_PATH)/% : .platform $$(a
459462
# Build project
460463
pushd $($*_SRC_PATH) $(LOG_SIMPLE)
461464
if [ -f ./autogen.sh ]; then ./autogen.sh $(LOG); fi
465+
$(SETUP_OVERLAYFS_FOR_DPKG_ADMINDIR)
462466
$(if $($*_DPKG_TARGET),
463-
DEB_BUILD_OPTIONS="${DEB_BUILD_OPTIONS_GENERIC} ${$*_DEB_BUILD_OPTIONS}" dpkg-buildpackage -rfakeroot -b -us -uc -j$(SONIC_CONFIG_MAKE_JOBS) --as-root -T$($*_DPKG_TARGET) $(LOG),
464-
DEB_BUILD_OPTIONS="${DEB_BUILD_OPTIONS_GENERIC} ${$*_DEB_BUILD_OPTIONS}" dpkg-buildpackage -rfakeroot -b -us -uc -j$(SONIC_CONFIG_MAKE_JOBS) $(LOG)
467+
DEB_BUILD_OPTIONS="${DEB_BUILD_OPTIONS_GENERIC} ${$*_DEB_BUILD_OPTIONS}" dpkg-buildpackage -rfakeroot -b -us -uc -j$(SONIC_CONFIG_MAKE_JOBS) --as-root -T$($*_DPKG_TARGET) --admindir $$mergedir $(LOG),
468+
DEB_BUILD_OPTIONS="${DEB_BUILD_OPTIONS_GENERIC} ${$*_DEB_BUILD_OPTIONS}" dpkg-buildpackage -rfakeroot -b -us -uc -j$(SONIC_CONFIG_MAKE_JOBS) --admindir $$mergedir $(LOG)
465469
)
466470
popd $(LOG_SIMPLE)
467471
# Clean up

src/bash/Makefile

+1-1
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ $(addprefix $(DEST)/, $(MAIN_TARGET)): $(DEST)/% :
1010
dget -u https://launchpad.net/debian/+archive/primary/+sourcefiles/bash/$(BASH_VERSION_FULL)/bash_$(BASH_VERSION_FULL).dsc
1111

1212
pushd bash-$(BASH_VERSION_MAJOR)
13-
DEB_BUILD_OPTIONS=nocheck dpkg-buildpackage -us -uc -b -j$(SONIC_CONFIG_MAKE_JOBS)
13+
DEB_BUILD_OPTIONS=nocheck dpkg-buildpackage -us -uc -b -j$(SONIC_CONFIG_MAKE_JOBS) --admindir $(SONIC_DPKG_ADMINDIR)
1414
popd
1515

1616
mv $* $(DEST)/

src/hiredis/Makefile

+1-1
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ $(addprefix $(DEST)/, $(MAIN_TARGET)): $(DEST)/% :
1414

1515
dpkg-source -x hiredis_$(HIREDIS_VERSION_FULL).dsc
1616
pushd hiredis-$(HIREDIS_VERSION)
17-
fakeroot debian/rules -j$(SONIC_CONFIG_MAKE_JOBS) binary
17+
dpkg-buildpackage -rfakeroot -d -b -us -uc -j$(SONIC_CONFIG_MAKE_JOBS) --admindir $(SONIC_DPKG_ADMINDIR)
1818
popd
1919

2020
mv $* $(DERIVED_TARGETS) $(DEST)/

src/ifupdown2/Makefile

+1-1
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ $(addprefix $(DEST)/, $(MAIN_TARGET)): $(DEST)/% :
1414
pushd ./ifupdown2-$(IFUPDOWN2_VERSION)
1515

1616
# Build source and Debian packages
17-
dpkg-buildpackage -rfakeroot -b -us -uc -j$(SONIC_CONFIG_MAKE_JOBS)
17+
dpkg-buildpackage -rfakeroot -b -us -uc -j$(SONIC_CONFIG_MAKE_JOBS) --admindir $(SONIC_DPKG_ADMINDIR)
1818
popd
1919

2020
# Move the newly-built .deb packages to the destination directory

src/initramfs-tools/Makefile

+1-1
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ $(addprefix $(DEST)/, $(MAIN_TARGET)): $(DEST)/% :
1919

2020
# Build the package
2121
rm -f debian/*.debhelper.log
22-
dpkg-buildpackage -rfakeroot -b -us -uc -j$(SONIC_CONFIG_MAKE_JOBS)
22+
dpkg-buildpackage -rfakeroot -b -us -uc -j$(SONIC_CONFIG_MAKE_JOBS) --admindir $(SONIC_DPKG_ADMINDIR)
2323
popd
2424

2525
mv $(DERIVED_TARGETS) $* $(DEST)/

src/iproute2/Makefile

+1-1
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ $(addprefix $(DEST)/, $(MAIN_TARGET)): $(DEST)/% :
1717
dpkg-source -x iproute2_$(IPROUTE2_VERSION_FULL).dsc
1818

1919
pushd iproute2-$(IPROUTE2_VERSION)
20-
dpkg-buildpackage -us -uc -b -j$(SONIC_CONFIG_MAKE_JOBS)
20+
dpkg-buildpackage -us -uc -b -j$(SONIC_CONFIG_MAKE_JOBS) --admindir $(SONIC_DPKG_ADMINDIR)
2121
popd
2222

2323
mv $* $(DEST)/

src/iptables/Makefile

+1-1
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ $(addprefix $(DEST)/, $(MAIN_TARGET)): $(DEST)/% :
3838
stg import -s ../patch/series
3939

4040
# Build source and Debian packages
41-
dpkg-buildpackage -rfakeroot -b -us -uc -j$(SONIC_CONFIG_MAKE_JOBS)
41+
dpkg-buildpackage -rfakeroot -b -us -uc -j$(SONIC_CONFIG_MAKE_JOBS) --admindir $(SONIC_DPKG_ADMINDIR)
4242
popd
4343

4444
# Move the newly-built .deb packages to the destination directory

src/isc-dhcp/Makefile

+1-1
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ $(addprefix $(DEST)/, $(MAIN_TARGET)): $(DEST)/% :
2323
stg import -s ../patch/series
2424

2525
# Build source and Debian packages
26-
dpkg-buildpackage -rfakeroot -b -us -uc -j$(SONIC_CONFIG_MAKE_JOBS)
26+
dpkg-buildpackage -rfakeroot -b -us -uc -j$(SONIC_CONFIG_MAKE_JOBS) --admindir $(SONIC_DPKG_ADMINDIR)
2727
popd
2828

2929
# Move the newly-built .deb packages to the destination directory

src/kdump-tools/Makefile

+1-1
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ $(addprefix $(DEST)/, $(MAIN_TARGET)): $(DEST)/% :
2525
stg import -s ../patch/series
2626

2727
# Build source and Debian packages
28-
fakeroot debian/rules binary-indep
28+
dpkg-buildpackage -rfakeroot -b -us -uc -Tbinary-indep -j$(SONIC_CONFIG_MAKE_JOBS) --admindir $(SONIC_DPKG_ADMINDIR)
2929
popd
3030

3131
# Move the newly-built .deb packages to the destination directory

src/libnl3/Makefile

+1-1
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ $(addprefix $(DEST)/, $(MAIN_TARGET)): $(DEST)/% :
2121
git checkout tags/libnl$(subst .,_,$(LIBNL3_VERSION_BASE))
2222

2323
ln -s ../debian debian
24-
dpkg-buildpackage -rfakeroot -b -us -uc -j$(SONIC_CONFIG_MAKE_JOBS)
24+
dpkg-buildpackage -rfakeroot -b -us -uc -j$(SONIC_CONFIG_MAKE_JOBS) --admindir $(SONIC_DPKG_ADMINDIR)
2525
popd
2626

2727
mv $(DERIVED_TARGETS) $* $(DEST)/

src/libteam/Makefile

+1-1
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ $(addprefix $(DEST)/, $(MAIN_TARGET)): $(DEST)/% :
3131
mv tmp/debian libteam/
3232
rm -rf tmp
3333
pushd ./libteam
34-
dpkg-buildpackage -rfakeroot -b -us -uc -j$(SONIC_CONFIG_MAKE_JOBS)
34+
dpkg-buildpackage -rfakeroot -b -us -uc -j$(SONIC_CONFIG_MAKE_JOBS) --admindir $(SONIC_DPKG_ADMINDIR)
3535
popd
3636

3737
mv $(DERIVED_TARGETS) $* $(DEST)/

src/libyang1/Makefile

+1-1
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ $(addprefix $(DEST)/, $(MAIN_TARGET)): $(DEST)/% :
3131
# Enable large file support for 32-bit arch
3232
echo 'add_definitions(-D_FILE_OFFSET_BITS=64)' >> CMakeLists.txt
3333

34-
dpkg-buildpackage -rfakeroot -b -us -uc -j$(SONIC_CONFIG_MAKE_JOBS)
34+
dpkg-buildpackage -rfakeroot -b -us -uc -j$(SONIC_CONFIG_MAKE_JOBS) --admindir $(SONIC_DPKG_ADMINDIR)
3535
popd
3636

3737
# Move the newly-built .deb packages to the destination directory

src/lldpd/Makefile

+1-1
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ $(addprefix $(DEST)/, $(MAIN_TARGET)): $(DEST)/% :
3535
stg import -s ../patch/series
3636

3737
# Build source and Debian packages
38-
env "with_netlink_receive_bufsize=1024*1024" dpkg-buildpackage -rfakeroot -b -us -uc -j$(SONIC_CONFIG_MAKE_JOBS)
38+
env "with_netlink_receive_bufsize=1024*1024" dpkg-buildpackage -rfakeroot -b -us -uc -j$(SONIC_CONFIG_MAKE_JOBS) --admindir $(SONIC_DPKG_ADMINDIR)
3939
popd
4040

4141
# Move the newly-built .deb packages to the destination directory

src/lm-sensors/Makefile

+1-1
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ $(addprefix $(DEST)/, $(MAIN_TARGET)): $(DEST)/% :
2525
stg init
2626
stg import -s ../patch/series
2727

28-
DEB_BUILD_OPTIONS=nocheck PROG_EXTRA=sensord dpkg-buildpackage -us -uc -b -j$(SONIC_CONFIG_MAKE_JOBS)
28+
DEB_BUILD_OPTIONS=nocheck PROG_EXTRA=sensord dpkg-buildpackage -us -uc -b -j$(SONIC_CONFIG_MAKE_JOBS) --admindir $(SONIC_DPKG_ADMINDIR)
2929
popd
3030

3131
mv $(DERIVED_TARGETS) $* $(DEST)/

src/monit/Makefile

+1-1
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ $(addprefix $(DEST)/, $(MAIN_TARGET)): $(DEST)/% :
2424
stg import -s ../patch/series
2525

2626
# Build source and Debian packages
27-
dpkg-buildpackage -rfakeroot -b -us -uc -j$(SONIC_CONFIG_MAKE_JOBS)
27+
dpkg-buildpackage -rfakeroot -b -us -uc -j$(SONIC_CONFIG_MAKE_JOBS) --admindir $(SONIC_DPKG_ADMINDIR)
2828
popd
2929

3030
# Move the newly-built .deb packages to the destination directory

src/mpdecimal/Makefile

+1-1
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ $(addprefix $(DEST)/, $(MAIN_TARGET)): $(DEST)/% :
1414

1515
dpkg-source -x mpdecimal_$(MPDECIMAL_VERSION_FULL).dsc
1616
pushd mpdecimal-$(MPDECIMAL_VERSION)
17-
dpkg-buildpackage -us -uc -b -j$(SONIC_CONFIG_MAKE_JOBS)
17+
dpkg-buildpackage -us -uc -b -j$(SONIC_CONFIG_MAKE_JOBS) --admindir $(SONIC_DPKG_ADMINDIR)
1818
popd
1919

2020
mv $* $(DERIVED_TARGETS) $(DEST)/

src/ntp/Makefile

+1-1
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ $(addprefix $(DEST)/, $(MAIN_TARGET)): $(DEST)/% :
3939
sed -i 's/\/usr\/sbin\/ntpd {/\/usr\/sbin\/ntpd flags=(attach_disconnected complain) {/' debian/apparmor-profile
4040

4141
# Build source and Debian packages with the symbols
42-
dpkg-buildpackage -rfakeroot -b -us -uc -j$(SONIC_CONFIG_MAKE_JOBS)
42+
dpkg-buildpackage -rfakeroot -b -us -uc -j$(SONIC_CONFIG_MAKE_JOBS) --admindir $(SONIC_DPKG_ADMINDIR)
4343

4444
popd
4545

src/openssh/Makefile

+1-1
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ $(addprefix $(DEST)/, $(MAIN_TARGET)): $(DEST)/% :
2020

2121
# Build package
2222
sudo http_proxy=$(http_proxy) apt-get -y build-dep openssh
23-
dpkg-buildpackage -rfakeroot -b -us -uc -j$(SONIC_CONFIG_MAKE_JOBS)
23+
dpkg-buildpackage -rfakeroot -b -us -uc -j$(SONIC_CONFIG_MAKE_JOBS) --admindir $(SONIC_DPKG_ADMINDIR)
2424
popd
2525

2626
mv $(DERIVED_TARGETS) $* $(DEST)/

src/python3/Makefile

+1-1
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ $(addprefix $(DEST)/, $(MAIN_TARGET)): $(DEST)/% :
3535
fi
3636
done
3737

38-
dpkg-buildpackage -rfakeroot -us -uc -b -j$(SONIC_CONFIG_MAKE_JOBS)
38+
dpkg-buildpackage -rfakeroot -us -uc -b -j$(SONIC_CONFIG_MAKE_JOBS) --admindir $(SONIC_DPKG_ADMINDIR)
3939
popd
4040

4141
cp $(DERIVED_TARGETS) $* $(DEST)/

src/redis/Makefile

+1-1
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ $(addprefix $(DEST)/, $(MAIN_TARGET)): $(DEST)/% :
2222

2323
pushd redis-$(REDIS_VERSION)
2424
export ARCH=""
25-
DEB_BUILD_OPTIONS=nocheck dpkg-buildpackage -us -uc -b -j$(SONIC_CONFIG_MAKE_JOBS)
25+
DEB_BUILD_OPTIONS=nocheck dpkg-buildpackage -us -uc -b -j$(SONIC_CONFIG_MAKE_JOBS) --admindir $(SONIC_DPKG_ADMINDIR)
2626
popd
2727

2828
mv $(DERIVED_TARGETS) $* $(DEST)/

src/sflow/hsflowd/Makefile

+1-1
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ $(addprefix $(DEST)/, $(MAIN_TARGET)): $(DEST)/% :
2121
chmod u+x debian/rules
2222
sed -i -e s/_VERSION_/$(HSFLOWD_VERSION)-$(HSFLOWD_SUBVERSION)/g debian/changelog
2323

24-
dpkg-buildpackage -rfakeroot -b -us -uc -j$(SONIC_CONFIG_MAKE_JOBS) --buildinfo-option=-u. --changes-option=-u.
24+
dpkg-buildpackage -rfakeroot -b -us -uc -j$(SONIC_CONFIG_MAKE_JOBS) --admindir $(SONIC_DPKG_ADMINDIR) --buildinfo-option=-u. --changes-option=-u.
2525

2626
mv $(DERIVED_TARGET) $* $(DEST)/
2727
popd

src/sflow/psample/Makefile

+1-1
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ $(addprefix $(DEST)/, $(MAIN_TARGET)): $(DEST)/% :
1313
pushd ./libpsample
1414
git checkout -b libpsample -f e48fad2
1515

16-
dpkg-buildpackage -rfakeroot -b -us -uc -j$(SONIC_CONFIG_MAKE_JOBS)
16+
dpkg-buildpackage -rfakeroot -b -us -uc -j$(SONIC_CONFIG_MAKE_JOBS) --admindir $(SONIC_DPKG_ADMINDIR)
1717
popd
1818

1919
mv $* $(DEST)/

src/sflow/sflowtool/Makefile

+1-1
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ $(addprefix $(DEST)/, $(MAIN_TARGET)): $(DEST)/% :
1212

1313
pushd ./sflowtool
1414
git checkout -b sflowtool -f 6c2963b
15-
dpkg-buildpackage -rfakeroot -b -us -uc -j$(SONIC_CONFIG_MAKE_JOBS)
15+
dpkg-buildpackage -rfakeroot -b -us -uc -j$(SONIC_CONFIG_MAKE_JOBS) --admindir $(SONIC_DPKG_ADMINDIR)
1616
popd
1717

1818
mv $* $(DEST)/

src/smartmontools/Makefile

+1-1
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ $(addprefix $(DEST)/, $(MAIN_TARGET)): $(DEST)/% :
1313
dpkg-source -x smartmontools_$(SMARTMONTOOLS_VERSION_FULL).dsc
1414

1515
pushd smartmontools-$(SMARTMONTOOLS_VERSION_MAJOR)
16-
dpkg-buildpackage -us -uc -b -j$(SONIC_CONFIG_MAKE_JOBS)
16+
dpkg-buildpackage -us -uc -b -j$(SONIC_CONFIG_MAKE_JOBS) --admindir $(SONIC_DPKG_ADMINDIR)
1717
popd
1818

1919
mv $* $(DEST)/

src/snmpd/Makefile

+1-1
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ $(addprefix $(DEST)/, $(MAIN_TARGET)): $(DEST)/% :
2929
stg init
3030
stg import -s ../patch-$(SNMPD_VERSION)/series
3131

32-
fakeroot debian/rules -j$(SONIC_CONFIG_MAKE_JOBS) binary
32+
dpkg-buildpackage -rfakeroot -b -d -us -uc -j$(SONIC_CONFIG_MAKE_JOBS) --admindir $(SONIC_DPKG_ADMINDIR)
3333
popd
3434

3535
mv $(DERIVED_TARGETS) $* $(DEST)/

src/socat/Makefile

+1-1
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ $(addprefix $(DEST)/, $(MAIN_TARGET)): $(DEST)/% :
1818
# Build source and Debian packages
1919
pushd socat-1.7.3.1
2020
patch -p0 < ../enable_readline.patch
21-
dpkg-buildpackage -rfakeroot -b -us -uc -j$(SONIC_CONFIG_MAKE_JOBS)
21+
dpkg-buildpackage -rfakeroot -b -us -uc -j$(SONIC_CONFIG_MAKE_JOBS) --admindir $(SONIC_DPKG_ADMINDIR)
2222
popd
2323

2424
# Move the newly-built .deb packages to the destination directory

src/sonic-device-data/Makefile

+1-1
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ $(addprefix $(DEST)/, $(MAIN_TARGET)): $(DEST)/% :
2525
done;
2626

2727
# Build the package
28-
dpkg-buildpackage -rfakeroot -b -us -uc
28+
dpkg-buildpackage -rfakeroot -b -us -uc -j$(SONIC_CONFIG_MAKE_JOBS) --admindir $(SONIC_DPKG_ADMINDIR)
2929

3030
popd
3131

src/sonic-frr/Makefile

+1-1
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ $(addprefix $(DEST)/, $(MAIN_TARGET)): $(DEST)/% :
1414
stg branch --create $(STG_BRANCH) $(FRR_TAG)
1515
stg import -s ../patch/series
1616
tools/tarsource.sh -V -e '-sonic'
17-
dpkg-buildpackage -rfakeroot -b -us -uc -Ppkg.frr.nortrlib -j$(SONIC_CONFIG_MAKE_JOBS)
17+
dpkg-buildpackage -rfakeroot -b -us -uc -Ppkg.frr.nortrlib -j$(SONIC_CONFIG_MAKE_JOBS) --admindir $(SONIC_DPKG_ADMINDIR)
1818
stg undo || true
1919
git clean -xfdf
2020
git checkout $(FRR_BRANCH)

src/sonic-host-service/Makefile

+1-1
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ MAIN_TARGET = sonic-host-service_1.0.0_all.deb
2121
INSTALL := /usr/bin/install
2222

2323
$(addprefix $(DEST)/, $(MAIN_TARGET)): $(DEST)/% :
24-
dpkg-buildpackage -us -uc -b
24+
dpkg-buildpackage -us -uc -b -j$(SONIC_CONFIG_MAKE_JOBS) --admindir $(SONIC_DPKG_ADMINDIR)
2525
mv ../$(MAIN_TARGET) $(DEST)/
2626

2727
SOURCES := $(wildcard '*.*') $(wildcard 'host_modules/*.py')

src/swig/Makefile

+1-1
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ $(addprefix $(DEST)/, $(MAIN_TARGET)): $(DEST)/% :
1313
dpkg-source -x swig_$(SWIG_VERSION).dsc
1414

1515
pushd ./swig-$(SWIG_VERSION)
16-
dpkg-buildpackage -rfakeroot -b -us -uc -j$(SONIC_CONFIG_MAKE_JOBS)
16+
dpkg-buildpackage -rfakeroot -b -us -uc -j$(SONIC_CONFIG_MAKE_JOBS) --admindir $(SONIC_DPKG_ADMINDIR)
1717
popd
1818

1919
mv $(DERIVED_TARGETS) $* $(DEST)/

src/systemd-sonic-generator/Makefile

+1-1
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ BINARY = systemd-sonic-generator
55
MAIN_TARGET = $(BINARY)_1.0.0_$(CONFIGURED_ARCH).deb
66

77
$(addprefix $(DEST)/, $(MAIN_TARGET)): $(DEST)/% :
8-
dpkg-buildpackage -us -uc -b
8+
dpkg-buildpackage -us -uc -b -j$(SONIC_CONFIG_MAKE_JOBS) --admindir $(SONIC_DPKG_ADMINDIR)
99
mv ../$(MAIN_TARGET) $(DEST)/
1010
rm ../$(BINARY)-* ../$(BINARY)_*
1111

src/tacacs/nss/Makefile

+2-2
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ MAIN_TARGET = libnss-tacplus_$(NSS_TACPLUS_VERSION)_$(CONFIGURED_ARCH).deb
66

77
GIT_APPLY = am
88
ifneq (,$(filter $(CONFIGURED_ARCH), armhf arm64))
9-
# Workaround git am issue "Out of memory getdelim failed"
9+
# Workaround git am issue "Out of memory getdelim failed"
1010
GIT_APPLY = apply
1111
endif
1212

@@ -26,7 +26,7 @@ $(addprefix $(DEST)/, $(MAIN_TARGET)): $(DEST)/% :
2626
git $(GIT_APPLY) ../0006-fix-compiling-warning-about-token-dereference.patch
2727
git $(GIT_APPLY) ../0007-Add-support-for-TACACS-source-address.patch
2828

29-
dpkg-buildpackage -rfakeroot -b -us -uc
29+
dpkg-buildpackage -rfakeroot -b -us -uc -j$(SONIC_CONFIG_MAKE_JOBS) --admindir $(SONIC_DPKG_ADMINDIR)
3030
popd
3131

3232
mv $(DERIVED_TARGETS) $* $(DEST)/

src/tacacs/pam/Makefile

+2-2
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ DERIVED_TARGETS = libtac2_$(PAM_TACPLUS_VERSION)_$(CONFIGURED_ARCH).deb \
99
$(addprefix $(DEST)/, $(MAIN_TARGET)): $(DEST)/% :
1010
# Obtain pam_tacplus
1111
rm -rf ./pam_tacplus
12-
git clone https://github.com/jeroennijhof/pam_tacplus.git
12+
git clone https://github.com/jeroennijhof/pam_tacplus.git
1313
pushd ./pam_tacplus
1414
git checkout -f v1.4.1
1515

@@ -21,7 +21,7 @@ $(addprefix $(DEST)/, $(MAIN_TARGET)): $(DEST)/% :
2121
git apply ../0005-pam-Modify-parsing-of-IP-address-and-port-number-to-.patch
2222
git apply ../0006-Add-support-for-source-ip-address.patch
2323

24-
dpkg-buildpackage -rfakeroot -b -us -uc
24+
dpkg-buildpackage -rfakeroot -b -us -uc -j$(SONIC_CONFIG_MAKE_JOBS) --admindir $(SONIC_DPKG_ADMINDIR)
2525
popd
2626

2727
mv $(DERIVED_TARGETS) $* $(DEST)/

src/thrift/Makefile

+1-1
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ $(addprefix $(DEST)/, $(MAIN_TARGET)): $(DEST)/% :
2626
# saithrift implementation relies on the bug in union serialization
2727
# (https://jira.apache.org/jira/browse/THRIFT-3650)
2828
patch -p1 < ../patch/0001-Revert-THRIFT-3650-incorrect-union-serialization.patch
29-
CXXFLAGS="-DFORCE_BOOST_SMART_PTR" DEB_BUILD_OPTIONS=nocheck dpkg-buildpackage -d -rfakeroot -b -us -uc -j$(SONIC_CONFIG_MAKE_JOBS)
29+
CXXFLAGS="-DFORCE_BOOST_SMART_PTR" DEB_BUILD_OPTIONS=nocheck dpkg-buildpackage -d -rfakeroot -b -us -uc -j$(SONIC_CONFIG_MAKE_JOBS) --admindir $(SONIC_DPKG_ADMINDIR)
3030
popd
3131

3232
mv $(DERIVED_TARGETS) $* $(DEST)/

src/wpasupplicant/Makefile

+1-1
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ DERIVED_TARGETS = wpasupplicant-dbgsym_$(WPASUPPLICANT_VERSION)_$(CONFIGURED_ARC
88
$(addprefix $(DEST)/, $(MAIN_TARGET)): $(DEST)/% :
99
# Clone wpa repo
1010
pushd ./sonic-wpa-supplicant
11-
dpkg-buildpackage -rfakeroot -b -us -uc -j$(SONIC_CONFIG_MAKE_JOBS)
11+
dpkg-buildpackage -rfakeroot -b -us -uc -j$(SONIC_CONFIG_MAKE_JOBS) --admindir $(SONIC_DPKG_ADMINDIR)
1212
popd
1313

1414
# Move the newly-built .deb packages to the destination directory

0 commit comments

Comments
 (0)