diff --git a/Makefile b/Makefile index dc76e858d44..71580f7d674 100644 --- a/Makefile +++ b/Makefile @@ -2,10 +2,10 @@ NOJESSIE ?= 1 NOSTRETCH ?= 1 -NOBUSTER ?= 0 -NOBULLSEYE ?= 0 -NOBOOKWORM ?= 0 -NOTRIXIE ?= 1 +NOBUSTER ?= 1 +NOBULLSEYE ?= 1 +NOBOOKWORM ?= 1 +NOTRIXIE ?= 0 override Q := @ ifeq ($(QUIET),n) @@ -63,10 +63,10 @@ ifeq ($(NOBULLSEYE), 0) $(MAKE_WITH_RETRY) EXTRA_DOCKER_TARGETS=$(notdir $@) BLDENV=bullseye -f Makefile.work bullseye endif ifeq ($(NOBOOKWORM), 0) - $(MAKE_WITH_RETRY) BLDENV=bookworm -f Makefile.work $@ + $(MAKE_WITH_RETRY) EXTRA_DOCKER_TARGETS=$(notdir $@) BLDENV=bookworm -f Makefile.work bookworm endif ifeq ($(NOTRIXIE), 0) - $(MAKE_WITH_RETRY) BLDENV=trixie -f Makefile.work trixie + $(MAKE_WITH_RETRY) BLDENV=trixie -f Makefile.work $@ endif BLDENV=bookworm $(MAKE) -f Makefile.work docker-cleanup diff --git a/build_debian.sh b/build_debian.sh index d01a50eb509..0fc5e99d6d4 100755 --- a/build_debian.sh +++ b/build_debian.sh @@ -31,9 +31,9 @@ set -x -e CONFIGURED_ARCH=$([ -f .arch ] && cat .arch || echo amd64) ## docker engine version (with platform) -DOCKER_VERSION=5:24.0.2-1~debian.12~$IMAGE_DISTRO -CONTAINERD_IO_VERSION=1.6.21-1 -LINUX_KERNEL_VERSION=6.1.0-29-2 +DOCKER_VERSION=5:28.2.2-1~debian.13~$IMAGE_DISTRO +CONTAINERD_IO_VERSION=1.7.27-1 +LINUX_KERNEL_VERSION=6.12.30 ## Working directory to prepare the file system FILESYSTEM_ROOT=./fsroot @@ -135,20 +135,12 @@ echo 'Dir::Bin::dpkg "/usr/local/bin/dpkg";' | sudo tee $FILESYSTEM_ROOT/etc/apt sudo LANG=C chroot $FILESYSTEM_ROOT rm /usr/local/sbin/dpkg -f echo '[INFO] Install packages for building image' -sudo LANG=C chroot $FILESYSTEM_ROOT apt-get -y install makedev psmisc +sudo LANG=C chroot $FILESYSTEM_ROOT apt-get -y install psmisc if [[ $CROSS_BUILD_ENVIRON == y ]]; then sudo LANG=C chroot $FILESYSTEM_ROOT dpkg --add-architecture $CONFIGURED_ARCH fi -## Create device files -echo '[INFO] MAKEDEV' -if [[ $CONFIGURED_ARCH == armhf || $CONFIGURED_ARCH == arm64 ]]; then - sudo LANG=C chroot $FILESYSTEM_ROOT /bin/bash -c 'cd /dev && MAKEDEV generic-arm' -else - sudo LANG=C chroot $FILESYSTEM_ROOT /bin/bash -c 'cd /dev && MAKEDEV generic' -fi - ## docker and mkinitramfs on target system will use pigz/unpigz automatically sudo LANG=C chroot $FILESYSTEM_ROOT apt-get -y install pigz @@ -365,7 +357,6 @@ sudo LANG=C DEBIAN_FRONTEND=noninteractive chroot $FILESYSTEM_ROOT apt-get -y in makedumpfile \ conntrack \ python3 \ - python3-distutils \ python3-pip \ python-is-python3 \ cron \ @@ -388,6 +379,7 @@ sudo LANG=C DEBIAN_FRONTEND=noninteractive chroot $FILESYSTEM_ROOT apt-get -y in zstd \ nvme-cli + sudo cp files/initramfs-tools/pzstd $FILESYSTEM_ROOT/etc/initramfs-tools/hooks/pzstd sudo chmod +x $FILESYSTEM_ROOT/etc/initramfs-tools/hooks/pzstd diff --git a/platform/vs/docker-dash-engine.mk b/platform/vs/docker-dash-engine.mk index d23b71d1395..dcba3fe3436 100644 --- a/platform/vs/docker-dash-engine.mk +++ b/platform/vs/docker-dash-engine.mk @@ -13,3 +13,5 @@ $(DOCKER_DASH_ENGINE)_LOAD_DOCKERS += $(DOCKER_CONFIG_ENGINE_BOOKWORM) $(DOCKER_DASH_ENGINE)_CONTAINER_NAME = dash_engine $(DOCKER_DASH_ENGINE)_CONTAINER_PRIVILEGED = true $(DOCKER_DASH_ENGINE)_RUN_OPT += --privileged -t + +SONIC_BOOKWORM_DOCKERS += $(DOCKER_DASH_ENGINE) diff --git a/rules/bash.mk b/rules/bash.mk index 48c089c49e0..ea40115e79a 100644 --- a/rules/bash.mk +++ b/rules/bash.mk @@ -1,11 +1,9 @@ # bash package # -# Created to patch plugin support in the bash-package included in Debian-11 (Bullseye) +# Created to patch plugin support in the bash-package included in Debian-13 (Trixie) # release. -# Bash major release-number corresponding to Debian-11 (Bullseye) -BASH_VERSION_MAJOR = 5.1 -# Bash complete release-number. This image contains all 5.1 fixes up to patch '2'. +BASH_VERSION_MAJOR = 5.2.37 BASH_VERSION_FULL = $(BASH_VERSION_MAJOR)-2 export BASH_VERSION_MAJOR BASH_VERSION_FULL diff --git a/rules/kdump-tools.mk b/rules/kdump-tools.mk index b32f07e3c2d..94b0ffc5123 100644 --- a/rules/kdump-tools.mk +++ b/rules/kdump-tools.mk @@ -1,6 +1,6 @@ # kdump-tools package -KDUMP_TOOLS_VERSION = 1.8.1 +KDUMP_TOOLS_VERSION = 1.10.7 export KDUMP_TOOLS_VERSION_BASE export KDUMP_TOOLS_VERSION diff --git a/rules/libyang.mk b/rules/libyang.mk index 0819b0a5431..3f12276c8b7 100644 --- a/rules/libyang.mk +++ b/rules/libyang.mk @@ -10,9 +10,11 @@ export LIBYANG_SUBVERSION LIBYANG = libyang_$(LIBYANG_VERSION)_$(CONFIGURED_ARCH).deb $(LIBYANG)_SRC_PATH = $(SRC_PATH)/libyang +ifeq ($(BLDENV),bookworm) # introduce artifical dependency between LIBYANG and FRR # make sure LIBYANG is compile after FRR $(LIBYANG)_AFTER = $(FRR) +endif SONIC_MAKE_DEBS += $(LIBYANG) LIBYANG_DEV = libyang-dev_$(LIBYANG_VERSION)_$(CONFIGURED_ARCH).deb diff --git a/rules/linux-kernel.mk b/rules/linux-kernel.mk index 8cb0bab79e7..65ecf2f5a74 100644 --- a/rules/linux-kernel.mk +++ b/rules/linux-kernel.mk @@ -1,12 +1,12 @@ # linux kernel package -KVERSION_SHORT = 6.1.0-29-2 -KVERSION = $(KVERSION_SHORT)-$(CONFIGURED_ARCH) -KERNEL_VERSION = 6.1.123 +KERNEL_VERSION = 6.12.30 KERNEL_SUBVERSION = 1 +KERNEL_FEATURESET = sonic +KVERSION = $(KERNEL_VERSION)-$(KERNEL_FEATURESET)-$(CONFIGURED_ARCH) ifeq ($(CONFIGURED_ARCH), armhf) # Override kernel version for ARMHF as it uses arm MP (multi-platform) for short version -KVERSION = $(KVERSION_SHORT)-armmp +KVERSION = $(KERNEL_VERSION)-$(KERNEL_FEATURESET)-armmp endif # Place an URL here to .tar.gz file if you want to include those patches @@ -16,12 +16,12 @@ INCLUDE_EXTERNAL_PATCHES ?= n # platforms should override this and provide an absolute location to the patches EXTERNAL_KERNEL_PATCH_LOC = -export KVERSION_SHORT KVERSION KERNEL_VERSION KERNEL_SUBVERSION +export KVERSION KERNEL_VERSION KERNEL_SUBVERSION export EXTERNAL_KERNEL_PATCH_URL export INCLUDE_EXTERNAL_PATCHES export EXTERNAL_KERNEL_PATCH_LOC -LINUX_HEADERS_COMMON = linux-headers-$(KVERSION_SHORT)-common_$(KERNEL_VERSION)-$(KERNEL_SUBVERSION)_all.deb +LINUX_HEADERS_COMMON = linux-headers-$(KERNEL_VERSION)-common-$(KERNEL_FEATURESET)_$(KERNEL_VERSION)-$(KERNEL_SUBVERSION)_all.deb $(LINUX_HEADERS_COMMON)_SRC_PATH = $(SRC_PATH)/sonic-linux-kernel SONIC_MAKE_DEBS += $(LINUX_HEADERS_COMMON) diff --git a/rules/openssh.mk b/rules/openssh.mk index a96cea8d3f6..cb0977c2777 100644 --- a/rules/openssh.mk +++ b/rules/openssh.mk @@ -1,7 +1,7 @@ # openssh package -OPENSSH_VERSION := 9.2p1 -OPENSSH_VERSION_FULL := $(OPENSSH_VERSION)-2+deb12u5 +OPENSSH_VERSION := 10.0p1 +OPENSSH_VERSION_FULL := $(OPENSSH_VERSION)-5 export OPENSSH_VERSION OPENSSH_VERSION_FULL diff --git a/rules/snmpd.mk b/rules/snmpd.mk index c70f30a4cad..a15b25e4a0a 100644 --- a/rules/snmpd.mk +++ b/rules/snmpd.mk @@ -1,14 +1,16 @@ # snmpd package -ifeq ($(BLDENV),bookworm) +# TODO(trixie): Update version to version in Trixie +ifeq ($(BLDENV),trixie) +SNMPD_VERSION = 5.9.4+dfsg +SNMPD_VERSION_FULL = $(SNMPD_VERSION)-2 +else ifeq ($(BLDENV),bookworm) SNMPD_VERSION = 5.9.3+dfsg SNMPD_VERSION_FULL = $(SNMPD_VERSION)-2 else ifeq ($(BLDENV),bullseye) SNMPD_VERSION = 5.9+dfsg SNMPD_VERSION_FULL = $(SNMPD_VERSION)-4+deb11u1 else -SNMPD_VERSION = 5.7.3+dfsg -SNMPD_VERSION_FULL = $(SNMPD_VERSION)-5 endif export SNMPD_VERSION SNMPD_VERSION_FULL @@ -40,22 +42,26 @@ $(eval $(call add_derived_package,$(LIBSNMP_BASE),$(SNMP_DBG))) SNMPD_DBG = snmpd-dbgsym_$(SNMPD_VERSION_FULL)_$(CONFIGURED_ARCH).deb $(eval $(call add_derived_package,$(LIBSNMP_BASE),$(SNMPD_DBG))) -ifeq ($(BLDENV),bookworm) +ifeq ($(BLDENV),trixie) +LIBSNMP = libsnmp40t64_$(SNMPD_VERSION_FULL)_$(CONFIGURED_ARCH).deb +else ifeq ($(BLDENV),bookworm) LIBSNMP = libsnmp40_$(SNMPD_VERSION_FULL)_$(CONFIGURED_ARCH).deb else ifeq ($(BLDENV),bullseye) LIBSNMP = libsnmp40_$(SNMPD_VERSION_FULL)_$(CONFIGURED_ARCH).deb else -LIBSNMP = libsnmp30_$(SNMPD_VERSION_FULL)_$(CONFIGURED_ARCH).deb +$(error Specify the version of snmpd to use for this version of Debian) endif $(LIBSNMP)_RDEPENDS += $(LIBSNMP_BASE) $(eval $(call add_derived_package,$(LIBSNMP_BASE),$(LIBSNMP))) -ifeq ($(BLDENV),bookworm) +ifeq ($(BLDENV),trixie) +LIBSNMP_DBG = libsnmp40t64-dbgsym_$(SNMPD_VERSION_FULL)_$(CONFIGURED_ARCH).deb +else ifeq ($(BLDENV),bookworm) LIBSNMP_DBG = libsnmp40-dbgsym_$(SNMPD_VERSION_FULL)_$(CONFIGURED_ARCH).deb else ifeq ($(BLDENV),bullseye) LIBSNMP_DBG = libsnmp40-dbgsym_$(SNMPD_VERSION_FULL)_$(CONFIGURED_ARCH).deb else -LIBSNMP_DBG = libsnmp30-dbg_$(SNMPD_VERSION_FULL)_$(CONFIGURED_ARCH).deb +$(error Specify the version of snmpd to use for this version of Debian) endif $(LIBSNMP_DBG)_DEPENDS += $(LIBSNMP) $(LIBSNMP_DBG)_RDEPENDS += $(LIBSNMP) diff --git a/rules/sonic-fips.mk b/rules/sonic-fips.mk index 7b8d27da300..3e4cf86a6e0 100644 --- a/rules/sonic-fips.mk +++ b/rules/sonic-fips.mk @@ -1,5 +1,16 @@ # fips packages +ifeq ($(BLDENV), trixie) +FIPS_VERSION = 1.5.2 +FIPS_OPENSSL_VERSION = 3.5.0-2+fips +FIPS_OPENSSH_VERSION = 10.0p1-5+fips +FIPS_PYTHON_MAIN_VERSION = 3.11 +FIPS_PYTHON_VERSION = 3.11.2-6+fips +FIPS_GOLANG_MAIN_VERSION = 1.24 +FIPS_GOLANG_VERSION = 1.24~2+fips +FIPS_KRB5_VERSION = 1.21.3-5+deb12u1+fips +endif + ifeq ($(BLDENV), bookworm) FIPS_VERSION = 1.5.2 FIPS_OPENSSL_VERSION = 3.0.11-1~deb12u2+fips @@ -31,6 +42,8 @@ $(SYMCRYPT_OPENSSL)_SRC_PATH = $(SRC_PATH)/sonic-fips FIPS_OPENSSL = openssl_$(FIPS_OPENSSL_VERSION)_$(CONFIGURED_ARCH).deb ifeq ($(BLDENV), bookworm) FIPS_OPENSSL_LIBSSL = libssl3_$(FIPS_OPENSSL_VERSION)_$(CONFIGURED_ARCH).deb +else ifeq ($(BLDENV), trixie) +FIPS_OPENSSL_LIBSSL = libssl3_$(FIPS_OPENSSL_VERSION)_$(CONFIGURED_ARCH).deb else FIPS_OPENSSL_LIBSSL = libssl1.1_$(FIPS_OPENSSL_VERSION)_$(CONFIGURED_ARCH).deb endif @@ -55,6 +68,8 @@ FIPS_GOLANG = golang-$(FIPS_GOLANG_MAIN_VERSION)_$(FIPS_GOLANG_VERSION)_all.deb FIPS_GOLANG_GO = golang-$(FIPS_GOLANG_MAIN_VERSION)-go_$(FIPS_GOLANG_VERSION)_$(CONFIGURED_ARCH).deb ifeq ($(BLDENV), bookworm) FIPS_GOLANG_SRC = golang-$(FIPS_GOLANG_MAIN_VERSION)-src_$(FIPS_GOLANG_VERSION)_all.deb +else ifeq ($(BLDENV), trixie) +FIPS_GOLANG_SRC = golang-$(FIPS_GOLANG_MAIN_VERSION)-src_$(FIPS_GOLANG_VERSION)_all.deb else FIPS_GOLANG_SRC = golang-$(FIPS_GOLANG_MAIN_VERSION)-src_$(FIPS_GOLANG_VERSION)_$(CONFIGURED_ARCH).deb endif diff --git a/slave.mk b/slave.mk index 25c2f4de8dc..40d0670367e 100644 --- a/slave.mk +++ b/slave.mk @@ -43,6 +43,8 @@ BULLSEYE_DEBS_PATH = $(TARGET_PATH)/debs/bullseye BULLSEYE_FILES_PATH = $(TARGET_PATH)/files/bullseye BOOKWORM_DEBS_PATH = $(TARGET_PATH)/debs/bookworm BOOKWORM_FILES_PATH = $(TARGET_PATH)/files/bookworm +TRIXIE_DEBS_PATH = $(TARGET_PATH)/debs/trixie +TRIXIE_FILES_PATH = $(TARGET_PATH)/files/trixie DBG_IMAGE_MARK = dbg DBG_SRC_ARCHIVE_FILE = $(TARGET_PATH)/sonic_src.tar.gz BUILD_WORKDIR = /sonic @@ -64,12 +66,12 @@ ifeq ($(CONFIGURED_ARCH),arm64) endif endif -IMAGE_DISTRO := bookworm +IMAGE_DISTRO := trixie IMAGE_DISTRO_DEBS_PATH = $(TARGET_PATH)/debs/$(IMAGE_DISTRO) IMAGE_DISTRO_FILES_PATH = $(TARGET_PATH)/files/$(IMAGE_DISTRO) # Python 2 packages will not be available in Bullseye and newer -ifneq ($(filter bullseye bookworm,$(BLDENV)),) +ifneq ($(filter bullseye bookworm trixie,$(BLDENV)),) ENABLE_PY2_MODULES = n else ENABLE_PY2_MODULES = y @@ -119,12 +121,14 @@ configure : $(Q)mkdir -p $(BUSTER_DEBS_PATH) $(Q)mkdir -p $(BULLSEYE_DEBS_PATH) $(Q)mkdir -p $(BOOKWORM_DEBS_PATH) + $(Q)mkdir -p $(TRIXIE_DEBS_PATH) $(Q)mkdir -p $(FILES_PATH) $(Q)mkdir -p $(JESSIE_FILES_PATH) $(Q)mkdir -p $(STRETCH_FILES_PATH) $(Q)mkdir -p $(BUSTER_FILES_PATH) $(Q)mkdir -p $(BULLSEYE_FILES_PATH) $(Q)mkdir -p $(BOOKWORM_FILES_PATH) + $(Q)mkdir -p $(TRIXIE_FILES_PATH) $(Q)mkdir -p $(PYTHON_DEBS_PATH) $(Q)mkdir -p $(PYTHON_WHEELS_PATH) $(Q)mkdir -p $(DPKG_ADMINDIR_PATH) @@ -964,7 +968,7 @@ $(addprefix $(PYTHON_WHEELS_PATH)/, $(SONIC_PYTHON_WHEELS)) : $(PYTHON_WHEELS_PA ifneq ($(CROSS_BUILD_ENVIRON),y) # 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$($*_PYTHON_VERSION) setup.py --name`; } $(LOG) -ifeq ($(BLDENV),bookworm) +ifneq ($(filter bookworm trixie,$(BLDENV)),) if [ ! "$($*_TEST)" = "n" ]; then pip$($*_PYTHON_VERSION) install ".[testing]" && pip$($*_PYTHON_VERSION) uninstall --yes `python$($*_PYTHON_VERSION) setup.py --name` && timeout --preserve-status -s 9 -k 10 $(BUILD_PROCESS_TIMEOUT) python$($*_PYTHON_VERSION) -m pytest; fi $(LOG) python$($*_PYTHON_VERSION) -m build -n $(LOG) else @@ -1082,6 +1086,10 @@ $(foreach DOCKER_IMAGE,$(SONIC_BULLSEYE_DOCKERS), $(eval $(DOCKER_IMAGE)_DEBS_PA $(foreach DOCKER_IMAGE,$(SONIC_BULLSEYE_DOCKERS), $(eval $(DOCKER_IMAGE)_FILES_PATH := $(BULLSEYE_FILES_PATH))) $(foreach DOCKER_IMAGE,$(SONIC_BULLSEYE_DBG_DOCKERS), $(eval $(DOCKER_IMAGE)_DEBS_PATH := $(BULLSEYE_DEBS_PATH))) $(foreach DOCKER_IMAGE,$(SONIC_BULLSEYE_DBG_DOCKERS), $(eval $(DOCKER_IMAGE)_FILES_PATH := $(BULLSEYE_FILES_PATH))) +$(foreach DOCKER_IMAGE,$(SONIC_BOOKWORM_DOCKERS), $(eval $(DOCKER_IMAGE)_DEBS_PATH := $(BOOKWORM_DEBS_PATH))) +$(foreach DOCKER_IMAGE,$(SONIC_BOOKWORM_DOCKERS), $(eval $(DOCKER_IMAGE)_FILES_PATH := $(BOOKWORM_FILES_PATH))) +$(foreach DOCKER_IMAGE,$(SONIC_BOOKWORM_DBG_DOCKERS), $(eval $(DOCKER_IMAGE)_DEBS_PATH := $(BOOKWORM_DEBS_PATH))) +$(foreach DOCKER_IMAGE,$(SONIC_BOOKWORM_DBG_DOCKERS), $(eval $(DOCKER_IMAGE)_FILES_PATH := $(BOOKWORM_FILES_PATH))) ifeq ($(BLDENV),jessie) DOCKER_IMAGES := $(SONIC_JESSIE_DOCKERS) @@ -1107,8 +1115,15 @@ ifeq ($(BLDENV),bullseye) BULLSEYE_DOCKER_IMAGES = $(filter $(SONIC_BULLSEYE_DOCKERS),$(DOCKER_IMAGES_FOR_INSTALLERS) $(EXTRA_DOCKER_TARGETS) $(SONIC_PACKAGES_LOCAL)) BULLSEYE_DBG_DOCKER_IMAGES = $(filter $(SONIC_BULLSEYE_DBG_DOCKERS),$(DOCKER_IMAGES_FOR_INSTALLERS) $(EXTRA_DOCKER_TARGETS) $(SONIC_PACKAGES_LOCAL)) else - DOCKER_IMAGES = $(filter-out $(SONIC_JESSIE_DOCKERS) $(SONIC_STRETCH_DOCKERS) $(SONIC_BUSTER_DOCKERS) $(SONIC_BULLSEYE_DOCKERS),$(SONIC_DOCKER_IMAGES)) - DOCKER_DBG_IMAGES = $(filter-out $(SONIC_JESSIE_DBG_DOCKERS) $(SONIC_STRETCH_DBG_DOCKERS) $(SONIC_BUSTER_DBG_DOCKERS) $(SONIC_BULLSEYE_DBG_DOCKERS), $(SONIC_DOCKER_DBG_IMAGES)) +ifeq ($(BLDENV),bookworm) + DOCKER_IMAGES := $(SONIC_BOOKWORM_DOCKERS) + DOCKER_DBG_IMAGES := $(SONIC_BOOKWORM_DBG_DOCKERS) + BOOKWORM_DOCKER_IMAGES = $(filter $(SONIC_BOOKWORM_DOCKERS),$(DOCKER_IMAGES_FOR_INSTALLERS) $(EXTRA_DOCKER_TARGETS) $(SONIC_PACKAGES_LOCAL)) + BOOKWORM_DBG_DOCKER_IMAGES = $(filter $(SONIC_BOOKWORM_DBG_DOCKERS),$(DOCKER_IMAGES_FOR_INSTALLERS) $(EXTRA_DOCKER_TARGETS) $(SONIC_PACKAGES_LOCAL)) +else + DOCKER_IMAGES = $(filter-out $(SONIC_JESSIE_DOCKERS) $(SONIC_STRETCH_DOCKERS) $(SONIC_BUSTER_DOCKERS) $(SONIC_BULLSEYE_DOCKERS) $(SONIC_BOOKWORM_DOCKERS),$(SONIC_DOCKER_IMAGES)) + DOCKER_DBG_IMAGES = $(filter-out $(SONIC_JESSIE_DBG_DOCKERS) $(SONIC_STRETCH_DBG_DOCKERS) $(SONIC_BUSTER_DBG_DOCKERS) $(SONIC_BULLSEYE_DBG_DOCKERS) $(SONIC_BOOKWORM_DBG_DOCKERS), $(SONIC_DOCKER_DBG_IMAGES)) +endif endif endif endif @@ -1306,12 +1321,13 @@ DOCKER_LOAD_TARGETS = $(addsuffix -load,$(addprefix $(TARGET_PATH)/, \ $(DOCKER_IMAGES) \ $(DOCKER_DBG_IMAGES))) -ifeq ($(BLDENV),bookworm) +ifeq ($(BLDENV),trixie) DOCKER_LOAD_TARGETS += $(addsuffix -load,$(addprefix $(TARGET_PATH)/, \ $(SONIC_JESSIE_DOCKERS) \ $(SONIC_STRETCH_DOCKERS) \ $(SONIC_BUSTER_DOCKERS) \ - $(SONIC_BULLSEYE_DOCKERS))) + $(SONIC_BULLSEYE_DOCKERS) \ + $(SONIC_BOOKWORM_DOCKERS))) endif @@ -1377,6 +1393,14 @@ $(addprefix $(TARGET_PATH)/, $(SONIC_RFS_TARGETS)) : $(TARGET_PATH)/% : \ $(FOOTER) # targets for building installers with base image +# TODO(trixie): Enable the following when ready: +# $(LIBPAM_RADIUS) \ +# $(LIBNSS_RADIUS) \ +# $(OPENSSH_SERVER) \ +# $(BASH) \ +# $(BASH_TACPLUS) \ +# $(AUDISP_TACPLUS) \ +# $(addprefix $(TARGET_PATH)/, $(SONIC_INSTALLERS)) : $(TARGET_PATH)/% : \ .platform \ onie-image.conf \ @@ -1392,22 +1416,16 @@ $(addprefix $(TARGET_PATH)/, $(SONIC_INSTALLERS)) : $(TARGET_PATH)/% : \ $(SONIC_DEVICE_DATA) \ $(IFUPDOWN2) \ $(KDUMP_TOOLS) \ - $(LIBPAM_RADIUS) \ - $(LIBNSS_RADIUS) \ $(LIBPAM_TACPLUS) \ $(LIBNSS_TACPLUS) \ $(MONIT) \ - $(OPENSSH_SERVER) \ - $(PYTHON_SWSSCOMMON) \ $(PYTHON3_SWSSCOMMON) \ $(SONIC_DB_CLI) \ $(SONIC_NETTOOLS) \ $(SONIC_RSYSLOG_PLUGIN) \ $(SONIC_UTILITIES_DATA) \ $(SONIC_HOST_SERVICES_DATA) \ - $(BASH) \ - $(BASH_TACPLUS) \ - $(AUDISP_TACPLUS)) \ + ) \ $$(addprefix $(TARGET_PATH)/,$$($$*_DOCKERS)) \ $$(addprefix $(TARGET_PATH)/,$$(SONIC_PACKAGES_LOCAL)) \ $$(addprefix $(FILES_PATH)/,$$($$*_FILES)) \ @@ -1512,7 +1530,7 @@ $(addprefix $(TARGET_PATH)/, $(SONIC_INSTALLERS)) : $(TARGET_PATH)/% : \ export sonic_yang_mgmt_py3_wheel_path="$(addprefix $(PYTHON_WHEELS_PATH)/,$(SONIC_YANG_MGMT_PY3))" export multi_instance="false" export python_swss_debs="$(addprefix $(IMAGE_DISTRO_DEBS_PATH)/,$($(LIBSWSSCOMMON)_RDEPENDS))" - export python_swss_debs+=" $(addprefix $(IMAGE_DISTRO_DEBS_PATH)/,$(LIBSWSSCOMMON)) $(addprefix $(IMAGE_DISTRO_DEBS_PATH)/,$(PYTHON_SWSSCOMMON)) $(addprefix $(IMAGE_DISTRO_DEBS_PATH)/,$(PYTHON3_SWSSCOMMON))" + export python_swss_debs+=" $(addprefix $(IMAGE_DISTRO_DEBS_PATH)/,$(LIBSWSSCOMMON)) $(addprefix $(IMAGE_DISTRO_DEBS_PATH)/,$(PYTHON3_SWSSCOMMON))" export sonic_utilities_py3_wheel_path="$(addprefix $(PYTHON_WHEELS_PATH)/,$(SONIC_UTILITIES_PY3))" export sonic_host_services_py3_wheel_path="$(addprefix $(PYTHON_WHEELS_PATH)/,$(SONIC_HOST_SERVICES_PY3))" export components="$(foreach component,$(notdir $^),\ @@ -1737,6 +1755,9 @@ clean :: .platform clean-logs clean-versions $$(SONIC_CLEAN_DEBS) $$(SONIC_CLEAN all : .platform $$(addprefix $(TARGET_PATH)/,$$(SONIC_ALL)) +bookworm : $$(addprefix $(TARGET_PATH)/,$$(BOOKWORM_DOCKER_IMAGES)) \ + $$(addprefix $(TARGET_PATH)/,$$(BOOKWORM_DBG_DOCKER_IMAGES)) + bullseye : $$(addprefix $(TARGET_PATH)/,$$(BULLSEYE_DOCKER_IMAGES)) \ $$(addprefix $(TARGET_PATH)/,$$(BULLSEYE_DBG_DOCKER_IMAGES)) diff --git a/sonic-slave-trixie/Dockerfile.j2 b/sonic-slave-trixie/Dockerfile.j2 index 405f68e2730..d4f6fb05fe0 100644 --- a/sonic-slave-trixie/Dockerfile.j2 +++ b/sonic-slave-trixie/Dockerfile.j2 @@ -450,6 +450,15 @@ RUN apt-get update && apt-get install -y eatmydata && eatmydata apt-get install dmidecode \ usbutils \ xmlstarlet \ +# For fips + python3-sphinx \ + python3-cheetah \ + python3-docs-theme \ + ss-dev \ + liblmdb-dev \ + libverto-dev \ + systemtap-sdt-dev \ + xvfb \ # For nvidia-bluefield sdk compilation cython3 \ pandoc \ diff --git a/src/bash/Makefile b/src/bash/Makefile index a72cbc17035..65c31355d57 100644 --- a/src/bash/Makefile +++ b/src/bash/Makefile @@ -9,7 +9,7 @@ $(addprefix $(DEST)/, $(MAIN_TARGET)): $(DEST)/% : rm -rf .pc rm -rf bash-$(BASH_VERSION_MAJOR) - dget -u https://launchpad.net/debian/+archive/primary/+sourcefiles/bash/$(BASH_VERSION_FULL)/bash_$(BASH_VERSION_FULL).dsc + dget -u https://deb.debian.org/debian/pool/main/b/bash/bash_$(BASH_VERSION_FULL).dsc # Apply plugin suport patches quilt push -a diff --git a/src/openssh/Makefile b/src/openssh/Makefile index 8ecea0228c1..80a5dace6e8 100644 --- a/src/openssh/Makefile +++ b/src/openssh/Makefile @@ -14,7 +14,7 @@ $(addprefix $(DEST)/, $(MAIN_TARGET)): $(DEST)/% : rm -rf ./openssh-$(OPENSSH_VERSION) # Get openssh release, debian files - dget https://security.debian.org/pool/updates/main/o/openssh/openssh_$(OPENSSH_VERSION_FULL).dsc + dget https://deb.debian.org/debian/pool/main/o/openssh/openssh_$(OPENSSH_VERSION_FULL).dsc pushd ./openssh-$(OPENSSH_VERSION) # Create a git repository here for stg to apply patches diff --git a/src/sonic-linux-kernel b/src/sonic-linux-kernel index a259e54792b..5241cb30d25 160000 --- a/src/sonic-linux-kernel +++ b/src/sonic-linux-kernel @@ -1 +1 @@ -Subproject commit a259e54792b06f7c8590b7c292d42bd8f1f2d0a1 +Subproject commit 5241cb30d25db60f089485b745748a4275ad0805 diff --git a/src/systemd-sonic-generator/Makefile b/src/systemd-sonic-generator/Makefile index c4c01f66f47..4f31b784cbb 100644 --- a/src/systemd-sonic-generator/Makefile +++ b/src/systemd-sonic-generator/Makefile @@ -2,7 +2,7 @@ CC=gcc CFLAGS += -std=gnu99 -D_GNU_SOURCE CXX=g++ -CXXFLAGS += -std=c++11 -D_GNU_SOURCE -I ./ +CXXFLAGS += -std=c++17 -D_GNU_SOURCE -I ./ LDFLAGS += -l stdc++ -lpthread -lboost_filesystem -lboost_system -lgtest -ljson-c BINARY = systemd-sonic-generator diff --git a/src/systemd-sonic-generator/ssg-test.cc b/src/systemd-sonic-generator/ssg-test.cc index 692271f88a2..d1ffadcbb51 100644 --- a/src/systemd-sonic-generator/ssg-test.cc +++ b/src/systemd-sonic-generator/ssg-test.cc @@ -6,6 +6,7 @@ * Copyright (c) 2021 by Cisco Systems, Inc. *------------------------------------------------------------------ */ +#include #include #include #include