From 8bb484bd7a08a8cd4852a8fafaccb4c12f545f76 Mon Sep 17 00:00:00 2001 From: hgy59 Date: Wed, 17 Sep 2025 20:40:28 +0200 Subject: [PATCH 01/14] SRM: fix REQUIRED_MIN_SRM - prevent to compare SRM version with REQUIRED_MIN_DSM version --- mk/spksrc.pre-check.mk | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/mk/spksrc.pre-check.mk b/mk/spksrc.pre-check.mk index f40fa499c6c..150b646849f 100644 --- a/mk/spksrc.pre-check.mk +++ b/mk/spksrc.pre-check.mk @@ -70,7 +70,7 @@ endif # Check maximal DSM requirements of package ifneq ($(REQUIRED_MAX_DSM),) - ifeq (,$(findstring $(ARCH),$(SRM_ARCHS))) + ifeq ($(call version_ge, ${TCVERSION}, 3.0),1) ifneq ($(TCVERSION),$(firstword $(sort $(TCVERSION) $(REQUIRED_MAX_DSM)))) ifneq (,$(BUILD_UNSUPPORTED_FILE)) $(shell echo $(date --date=now +"%Y.%m.%d %H:%M:%S") - $(SPK_FOLDER): DSM Toolchain $(TCVERSION) is higher than $(REQUIRED_MAX_DSM) >> $(BUILD_UNSUPPORTED_FILE)) @@ -82,7 +82,7 @@ endif # Check minimum DSM requirements of package ifneq ($(REQUIRED_MIN_DSM),) - ifeq (,$(findstring $(ARCH),$(SRM_ARCHS))) + ifeq ($(call version_ge, ${TCVERSION}, 3.0),1) ifneq ($(REQUIRED_MIN_DSM),$(firstword $(sort $(TCVERSION) $(REQUIRED_MIN_DSM)))) ifneq (,$(BUILD_UNSUPPORTED_FILE)) $(shell echo $(date --date=now +"%Y.%m.%d %H:%M:%S") - $(SPK_FOLDER): DSM Toolchain $(TCVERSION) is lower than $(REQUIRED_MIN_DSM) >> $(BUILD_UNSUPPORTED_FILE)) @@ -94,7 +94,7 @@ endif # Check minimum SRM requirements of package ifneq ($(REQUIRED_MIN_SRM),) - ifeq ($(ARCH),$(findstring $(ARCH),$(SRM_ARCHS))) + ifeq ($(call version_lt, ${TCVERSION}, 3.0),1) ifneq ($(REQUIRED_MIN_SRM),$(firstword $(sort $(TCVERSION) $(REQUIRED_MIN_SRM)))) ifneq (,$(BUILD_UNSUPPORTED_FILE)) $(shell echo $(date --date=now +"%Y.%m.%d %H:%M:%S") - $(SPK_FOLDER): SRM Toolchain $(TCVERSION) is lower than $(REQUIRED_MIN_SRM) >> $(BUILD_UNSUPPORTED_FILE)) From 2ee76abd0c7373536ac7d4ce7f06fc90d57ed815 Mon Sep 17 00:00:00 2001 From: hgy59 Date: Wed, 17 Sep 2025 20:45:17 +0200 Subject: [PATCH 02/14] fix dotnet arch checks - add SRM 1.3 to dotnet arch checks - remove unavailable TCVERSION 6.1 - cleanup for DOTNET_SERVARR_ARCHS = 2 (remove obsolete definitions already covered by ARMv7_ARCHS) --- mk/spksrc.archs.mk | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/mk/spksrc.archs.mk b/mk/spksrc.archs.mk index 5b4f6eeaded..2654ab8d8c9 100644 --- a/mk/spksrc.archs.mk +++ b/mk/spksrc.archs.mk @@ -63,21 +63,20 @@ DEPRECATED_ARCHS = powerpc ppc824x ppc854x ppc853x # 4. Certain combinations of ARMv7 and DSM are incompatible (issues #4790, #5089, #5302, #5315) # 5. Comprehensive ARMv7 testing conducted under issue #5574 resulted in the following exclusions -# Exclusions for dotnet 6.0 core apps +# Exclusions for dotnet core apps ifeq ($(strip $(DOTNET_CORE_ARCHS)),1) UNSUPPORTED_ARCHS = $(PPC_ARCHS) $(ARMv5_ARCHS) $(ARMv7L_ARCHS) $(i686_ARCHS) armada370 alpine comcerto2k - UNSUPPORTED_ARCHS_TCVERSION = armv7-6.1 armv7-6.2.4 armv7-1.2 + UNSUPPORTED_ARCHS_TCVERSION = armv7-6.2.4 armv7-1.2 armv7-1.3 endif # Exclusions for dotnet 6.0 servarr apps (except x86) ifeq ($(strip $(DOTNET_SERVARR_ARCHS)),1) UNSUPPORTED_ARCHS = $(PPC_ARCHS) $(ARMv5_ARCHS) $(ARMv7L_ARCHS) armada370 alpine comcerto2k - UNSUPPORTED_ARCHS_TCVERSION = armv7-6.1 armv7-6.2.4 armv7-1.2 + UNSUPPORTED_ARCHS_TCVERSION = armv7-6.2.4 armv7-1.2 armv7-1.3 endif # Exclusions for dotnet 6.0 servarr apps (except x86) # ARMv7 incompatibility — see: https://github.com/dotnet/runtime/issues/109739 ifeq ($(strip $(DOTNET_SERVARR_ARCHS)),2) - UNSUPPORTED_ARCHS = $(PPC_ARCHS) $(ARMv5_ARCHS) $(ARMv7L_ARCHS) armada370 alpine comcerto2k $(ARMv7_ARCHS) - UNSUPPORTED_ARCHS_TCVERSION = armv7-6.1 armv7-6.2.4 armv7-1.2 + UNSUPPORTED_ARCHS = $(PPC_ARCHS) $(ARMv5_ARCHS) $(ARMv7L_ARCHS) $(ARMv7_ARCHS) endif From ef0847b9b3e810822333ad227b935f891a650325 Mon Sep 17 00:00:00 2001 From: hgy59 Date: Wed, 17 Sep 2025 20:50:15 +0200 Subject: [PATCH 03/14] add kernel sources for SRM 1.3 archs - sources are hosted as synocommunity github releases - sources are extracted from synology gpl sources since those are too large (we have similar approach for SRM 1.3 toolchains) --- kernel/syno-cypress-1.3/Makefile | 8 +++++++ kernel/syno-cypress-1.3/digests | 3 +++ kernel/syno-dakota-1.3/Makefile | 8 +++++++ kernel/syno-dakota-1.3/digests | 3 +++ kernel/syno-hawkeye-1.3/Makefile | 8 +++++++ kernel/syno-hawkeye-1.3/digests | 3 +++ kernel/syno-ipq806x-1.3/Makefile | 8 +++++++ kernel/syno-ipq806x-1.3/digests | 3 +++ mk/spksrc.kernel-flags.mk | 37 ++++++++++++++++++++++++++++++++ 9 files changed, 81 insertions(+) create mode 100644 kernel/syno-cypress-1.3/Makefile create mode 100644 kernel/syno-cypress-1.3/digests create mode 100644 kernel/syno-dakota-1.3/Makefile create mode 100644 kernel/syno-dakota-1.3/digests create mode 100644 kernel/syno-hawkeye-1.3/Makefile create mode 100644 kernel/syno-hawkeye-1.3/digests create mode 100644 kernel/syno-ipq806x-1.3/Makefile create mode 100644 kernel/syno-ipq806x-1.3/digests diff --git a/kernel/syno-cypress-1.3/Makefile b/kernel/syno-cypress-1.3/Makefile new file mode 100644 index 00000000000..2b02d51f293 --- /dev/null +++ b/kernel/syno-cypress-1.3/Makefile @@ -0,0 +1,8 @@ +KERNEL_ARCH = cypress +KERNEL_VERS = 1.3 +KERNEL_BUILD = 9346 +KERNEL_EXT = txz +KERNEL_DIST = linux-4.4.x +KERNEL_BASE_ARCH = arm64 + +include ../../mk/spksrc.kernel.mk diff --git a/kernel/syno-cypress-1.3/digests b/kernel/syno-cypress-1.3/digests new file mode 100644 index 00000000000..97b8ac8c93d --- /dev/null +++ b/kernel/syno-cypress-1.3/digests @@ -0,0 +1,3 @@ +cypress-linux-4.4.x.txz SHA1 3a969fb1a660207ef10a23c47cc4f3306107e6a4 +cypress-linux-4.4.x.txz SHA256 99008550149c942ca06da50ba8ea3e8d63bd6a0c905f51fd58be6872e596dbb6 +cypress-linux-4.4.x.txz MD5 e39cc3280d1fe37d82f1c758a297e3e9 diff --git a/kernel/syno-dakota-1.3/Makefile b/kernel/syno-dakota-1.3/Makefile new file mode 100644 index 00000000000..07027f0bef8 --- /dev/null +++ b/kernel/syno-dakota-1.3/Makefile @@ -0,0 +1,8 @@ +KERNEL_ARCH = dakota +KERNEL_VERS = 1.3 +KERNEL_BUILD = 9346 +KERNEL_EXT = txz +KERNEL_DIST = linux-4.4.x +KERNEL_BASE_ARCH = arm + +include ../../mk/spksrc.kernel.mk diff --git a/kernel/syno-dakota-1.3/digests b/kernel/syno-dakota-1.3/digests new file mode 100644 index 00000000000..3ba72988812 --- /dev/null +++ b/kernel/syno-dakota-1.3/digests @@ -0,0 +1,3 @@ +dakota-linux-4.4.x.txz SHA1 eda3a9d111ded2b82abaf33da1f4590e9e229abd +dakota-linux-4.4.x.txz SHA256 3803bea1b86a68466935b4310cc4c22ce4d250e1fbed9d655cdf07040ef1a029 +dakota-linux-4.4.x.txz MD5 b918c85a7d96543cc1df8e5618edd217 diff --git a/kernel/syno-hawkeye-1.3/Makefile b/kernel/syno-hawkeye-1.3/Makefile new file mode 100644 index 00000000000..51e5d529c15 --- /dev/null +++ b/kernel/syno-hawkeye-1.3/Makefile @@ -0,0 +1,8 @@ +KERNEL_ARCH = hawkeye +KERNEL_VERS = 1.3 +KERNEL_BUILD = 9346 +KERNEL_EXT = txz +KERNEL_DIST = linux-4.4.x +KERNEL_BASE_ARCH = arm64 + +include ../../mk/spksrc.kernel.mk diff --git a/kernel/syno-hawkeye-1.3/digests b/kernel/syno-hawkeye-1.3/digests new file mode 100644 index 00000000000..6a10d1be9a1 --- /dev/null +++ b/kernel/syno-hawkeye-1.3/digests @@ -0,0 +1,3 @@ +hawkeye-linux-4.4.x.txz SHA1 17a8906198c8afbe602145880e79c0b3c5a994c8 +hawkeye-linux-4.4.x.txz SHA256 b4fcb2c192d31fcb8bb94fe8e558b5edb75381a3032a365a088f93164b6d7f09 +hawkeye-linux-4.4.x.txz MD5 03ea4001f7b2e17346c5c98d170c4037 diff --git a/kernel/syno-ipq806x-1.3/Makefile b/kernel/syno-ipq806x-1.3/Makefile new file mode 100644 index 00000000000..29eeeb0fdc9 --- /dev/null +++ b/kernel/syno-ipq806x-1.3/Makefile @@ -0,0 +1,8 @@ +KERNEL_ARCH = ipq806x +KERNEL_VERS = 1.3 +KERNEL_BUILD = 9346 +KERNEL_EXT = txz +KERNEL_DIST = linux-4.4.x +KERNEL_BASE_ARCH = arm + +include ../../mk/spksrc.kernel.mk diff --git a/kernel/syno-ipq806x-1.3/digests b/kernel/syno-ipq806x-1.3/digests new file mode 100644 index 00000000000..d9d05d302d0 --- /dev/null +++ b/kernel/syno-ipq806x-1.3/digests @@ -0,0 +1,3 @@ +ipq806x-linux-4.4.x.txz SHA1 031a8dfa585c70244276a5d51a94f22dcc4fcec6 +ipq806x-linux-4.4.x.txz SHA256 354868e4d50eec9ff32f69180cb031778e99f26c901dd8cd16c9fc2d33bc45d6 +ipq806x-linux-4.4.x.txz MD5 720866c5c857dfd63a82bde2c029d25e diff --git a/mk/spksrc.kernel-flags.mk b/mk/spksrc.kernel-flags.mk index b904438e1fd..c5024fb2591 100644 --- a/mk/spksrc.kernel-flags.mk +++ b/mk/spksrc.kernel-flags.mk @@ -123,6 +123,41 @@ endif # else ifeq ($(strip $(TC_TYPE)),SRM) +# +# For SRM version >= 1.3 +# +ifeq ($(shell expr "$(KERNEL_BUILD)" \>= 9346),1) + +ifeq ($(KERNEL_URL_VERSION),) +KERNEL_URL_VERSION = $(KERNEL_VERS) +endif + +ifeq ($(strip $(KERNEL_DIST_SITE)),) +KERNEL_DIST_SITE = https://github.com/SynoCommunity/spksrc/releases/download/kernels/srm1.3 +endif + +ifeq ($(strip $(KERNEL_DIST_NAME)),) +KERNEL_DIST_NAME = $(KERNEL_ARCH)-$(KERNEL_DIST).$(KERNEL_EXT) +endif + +ifeq ($(strip $(KERNEL_URL_DIR)),) +KERNEL_URL_DIR = $(KERNEL_ARCH) +endif + +ifeq ($(strip $(KERNEL_PREFIX)),) +KERNEL_PREFIX = $(KERNEL_DIST) +endif + +ifeq ($(strip $(KERNEL_STRIP)),) +KERNEL_STRIP = 0 +endif + + +# +# For SRM version >= 1.2 +# +else ifeq ($(shell expr "$(KERNEL_BUILD)" \>= 7742),1) + ifeq ($(strip $(KERNEL_DIST_SITE)),) KERNEL_DIST_SITE = https://sourceforge.net/projects/dsgpl/files/Synology%20Router%20GPL%20Source/$(KERNEL_BUILD)branch/$(KERNEL_URL_DIR) endif @@ -143,3 +178,5 @@ ifeq ($(strip $(KERNEL_STRIP)),) KERNEL_STRIP = 1 endif endif + +endif # For SRM From edcdcecc77f28dee00f5b0d63175bd05fdf5620a Mon Sep 17 00:00:00 2001 From: hgy59 Date: Wed, 17 Sep 2025 20:56:40 +0200 Subject: [PATCH 04/14] use REQUIRED_MIN_SRM - add REQUIRED_MIN_SRM = 1.3 to all supported packages with REQUIRE_MIN_DSM = 7 and 7.1 - disable support for SRM with REQUIRED_MIN_SRM = 3.0 for packages with missing spk dependencies --- cross/bind_9.20/Makefile | 1 + cross/elfutils/Makefile | 1 + cross/frei0r/Makefile | 2 ++ cross/gotify-cli/Makefile | 1 + cross/gotify-cli/digests | 24 ++++++++++++------------ cross/gotify-server/Makefile | 1 + cross/gotify-server/digests | 24 ++++++++++++------------ cross/kavita/Makefile | 1 + cross/kavita/digests | 18 +++++++++--------- cross/kiwix-tools/Makefile | 1 + cross/libkiwix/Makefile | 1 + cross/libtorrent-rakshasa/Makefile | 9 +++++---- cross/llvm-latest/Makefile | 2 ++ cross/mkvtoolnix/Makefile | 1 + cross/mpd/Makefile | 1 + cross/mympd/Makefile | 1 + cross/navidrome/Makefile | 1 + cross/nnn/Makefile | 1 + cross/rtorrent/Makefile | 1 + cross/screen5/Makefile | 1 + cross/taglib2/Makefile | 2 +- cross/transmission/Makefile | 1 + cross/unrar7/Makefile | 1 + cross/znc/Makefile | 1 + spk/adminer/Makefile | 2 +- spk/ariang/Makefile | 3 +++ spk/bazarr/Makefile | 1 + spk/beets/Makefile | 1 + spk/bicbucstriim/Makefile | 2 ++ spk/cops/Makefile | 2 ++ spk/deluge/Makefile | 1 + spk/demowebservice/Makefile | 3 +++ spk/fengoffice/Makefile | 2 ++ spk/ffsync/Makefile | 2 ++ spk/homeassistant/Makefile | 1 + spk/java-17-openjdk/Makefile | 1 + spk/java-21-openjdk/Makefile | 1 + spk/kavita/Makefile | 3 ++- spk/kiwix/Makefile | 1 + spk/mantisbt/Makefile | 2 ++ spk/metacubexd/Makefile | 2 ++ spk/mkvtoolnix/Makefile | 1 + spk/mpd/Makefile | 1 + spk/mympd/Makefile | 1 + spk/navidrome/Makefile | 1 + spk/owncloud/Makefile | 2 ++ spk/phpmemcachedadmin/Makefile | 2 ++ spk/roundcube/Makefile | 2 ++ spk/rutorrent/Makefile | 2 ++ spk/selfoss/Makefile | 4 +++- spk/transmission/Makefile | 1 + spk/tt-rss/Makefile | 2 ++ spk/wallabag/Makefile | 2 ++ spk/znc/Makefile | 1 + 54 files changed, 109 insertions(+), 41 deletions(-) diff --git a/cross/bind_9.20/Makefile b/cross/bind_9.20/Makefile index 0612beab2c5..288ae188342 100644 --- a/cross/bind_9.20/Makefile +++ b/cross/bind_9.20/Makefile @@ -22,6 +22,7 @@ DEPENDS += cross/libcap # needs C11 with some C17 features REQUIRED_MIN_DSM = 7.0 UNSUPPORTED_ARCHS = comcerto2k +REQUIRED_MIN_SRM = 1.3 HOMEPAGE = https://www.isc.org/ diff --git a/cross/elfutils/Makefile b/cross/elfutils/Makefile index 6bf84f98f65..48910ebab18 100644 --- a/cross/elfutils/Makefile +++ b/cross/elfutils/Makefile @@ -12,6 +12,7 @@ COMMENT = elfutils is a collection of utilities and libraries to read, create a LICENSE = GPL REQUIRED_MIN_DSM = 7.0 +REQUIRED_MIN_SRM = 1.3 GNU_CONFIGURE = 1 CONFIGURE_ARGS = --disable-libdebuginfod diff --git a/cross/frei0r/Makefile b/cross/frei0r/Makefile index 443f9536bd0..b75c7dbf72d 100644 --- a/cross/frei0r/Makefile +++ b/cross/frei0r/Makefile @@ -14,6 +14,8 @@ LICENSE = GPL-2.0 REQUIRED_MIN_DSM = 7 UNSUPPORTED_ARCHS = $(ARMv5_ARCHS) $(OLD_PPC_ARCHS) comcerto2k +REQUIRED_MIN_SRM = 1.3 + CMAKE_USE_TOOLCHAIN_FILE = OFF CMAKE_ARGS = -DCMAKE_BUILD_TYPE=Release diff --git a/cross/gotify-cli/Makefile b/cross/gotify-cli/Makefile index 546cfbe39ff..8f41f60c8fe 100644 --- a/cross/gotify-cli/Makefile +++ b/cross/gotify-cli/Makefile @@ -2,6 +2,7 @@ PKG_NAME = gotify-cli PKG_VERS = 2.2.1 PKG_DIST_NAME = gotify-cli-linux-$(PKG_DIST_ARCH) PKG_DIST_SITE = https://github.com/gotify/cli/releases/download/v$(PKG_VERS) +PKG_DIST_FILE = gotify-cli-$(PKG_VERS)-linux-$(PKG_DIST_ARCH) UNSUPPORTED_ARCHS = $(PPC_ARCHS) $(ARMv5_ARCHS) $(ARMv7L_ARCHS) diff --git a/cross/gotify-cli/digests b/cross/gotify-cli/digests index f64ad2ea31d..6a7d0d264f4 100644 --- a/cross/gotify-cli/digests +++ b/cross/gotify-cli/digests @@ -1,12 +1,12 @@ -gotify-cli-linux-amd64 SHA1 6c10faffd271c6cf0cb0d3df4ed2e2ad8db83c06 -gotify-cli-linux-amd64 SHA256 970b2ffdc71083574f4d2e5a6a4862b0299929ac66c5a54113fff4ad3d52ce1b -gotify-cli-linux-amd64 MD5 d143326d6c44b6b9d6a91d298692233c -gotify-cli-linux-386 SHA1 f71f2655da225e1299bcc2a46618b7f7f54b739f -gotify-cli-linux-386 SHA256 c49482834e80de2dc7f72e1a86f75e646c91645bb31329c4059544857d517e84 -gotify-cli-linux-386 MD5 e954c6561f9da14af5bee015a2d31436 -gotify-cli-linux-arm-7 SHA1 4d5402f1a056694aa5d5e00e34353ea97b3f369f -gotify-cli-linux-arm-7 SHA256 d0dba4f453598d37fed7908d264c47498d1b8c808f5cb935bf5969f2e01696c8 -gotify-cli-linux-arm-7 MD5 7ddec0568603d55b73ac47d1dfb3c6f6 -gotify-cli-linux-arm64 SHA1 7317966c057bf7b9f5eab900faf8bf6b4b767538 -gotify-cli-linux-arm64 SHA256 e44c0dbf84bc1fb2f58da547065a569d45300cf1d11d4e46ecdeb99ef6a00e54 -gotify-cli-linux-arm64 MD5 035493ff0e52450ca565f12cdd560ca7 +gotify-cli-2.2.1-linux-amd64 SHA1 6c10faffd271c6cf0cb0d3df4ed2e2ad8db83c06 +gotify-cli-2.2.1-linux-amd64 SHA256 970b2ffdc71083574f4d2e5a6a4862b0299929ac66c5a54113fff4ad3d52ce1b +gotify-cli-2.2.1-linux-amd64 MD5 d143326d6c44b6b9d6a91d298692233c +gotify-cli-2.2.1-linux-386 SHA1 f71f2655da225e1299bcc2a46618b7f7f54b739f +gotify-cli-2.2.1-linux-386 SHA256 c49482834e80de2dc7f72e1a86f75e646c91645bb31329c4059544857d517e84 +gotify-cli-2.2.1-linux-386 MD5 e954c6561f9da14af5bee015a2d31436 +gotify-cli-2.2.1-linux-arm-7 SHA1 4d5402f1a056694aa5d5e00e34353ea97b3f369f +gotify-cli-2.2.1-linux-arm-7 SHA256 d0dba4f453598d37fed7908d264c47498d1b8c808f5cb935bf5969f2e01696c8 +gotify-cli-2.2.1-linux-arm-7 MD5 7ddec0568603d55b73ac47d1dfb3c6f6 +gotify-cli-2.2.1-linux-arm64 SHA1 7317966c057bf7b9f5eab900faf8bf6b4b767538 +gotify-cli-2.2.1-linux-arm64 SHA256 e44c0dbf84bc1fb2f58da547065a569d45300cf1d11d4e46ecdeb99ef6a00e54 +gotify-cli-2.2.1-linux-arm64 MD5 035493ff0e52450ca565f12cdd560ca7 diff --git a/cross/gotify-server/Makefile b/cross/gotify-server/Makefile index d44cf52083d..971c7b8de9b 100644 --- a/cross/gotify-server/Makefile +++ b/cross/gotify-server/Makefile @@ -3,6 +3,7 @@ PKG_VERS = 2.1.4 PKG_EXT = zip PKG_DIST_NAME = gotify-linux-$(PKG_DIST_ARCH).$(PKG_EXT) PKG_DIST_SITE = https://github.com/gotify/server/releases/download/v$(PKG_VERS) +PKG_DIST_FILE = gotify-$(PKG_VERS)-linux-$(PKG_DIST_ARCH).$(PKG_EXT) UNSUPPORTED_ARCHS = $(PPC_ARCHS) $(ARMv5_ARCHS) $(ARMv7L_ARCHS) diff --git a/cross/gotify-server/digests b/cross/gotify-server/digests index e5826c5b962..55fbfc4dc21 100644 --- a/cross/gotify-server/digests +++ b/cross/gotify-server/digests @@ -1,12 +1,12 @@ -gotify-linux-amd64.zip SHA1 e8ba8d00de67ca8b7a66fd2ebafc7cad2ad1f2af -gotify-linux-amd64.zip SHA256 98b126e5d934d45b1390b1a1b9136e7690518bfdbb731a75a45a55e86291af4b -gotify-linux-amd64.zip MD5 285a66542aa1852dbf47bb0451ed2cc6 -gotify-linux-386.zip SHA1 545272983835ff46d9ca9d8034fb369e2fc5c329 -gotify-linux-386.zip SHA256 171a31c234479cb04dbdb491302bcf30a1bce747f69678c7c7f1e7f24e46ae7a -gotify-linux-386.zip MD5 a5e6d89651a288e5d9fb2fc0197d373d -gotify-linux-arm-7.zip SHA1 388f182aeba26755432945402723dc1a7b9bca61 -gotify-linux-arm-7.zip SHA256 ffbc8710f1ba6b2c3dc74171fd4e28fc74765e6dda2e6a304dc0685bbd167243 -gotify-linux-arm-7.zip MD5 40dcb76a40dbbb1c1b5387ad1aa2617d -gotify-linux-arm64.zip SHA1 cbd8fa2582b87824ba5483e0482769c939b4a481 -gotify-linux-arm64.zip SHA256 1379a92844e9d632cc5fd01db1e1d1ef4303bb6e92e6ca7e2618f06ed463264c -gotify-linux-arm64.zip MD5 e9466bc6f8bac5cf29077ae5ee84e7c0 +gotify-2.1.4-linux-amd64.zip SHA1 e8ba8d00de67ca8b7a66fd2ebafc7cad2ad1f2af +gotify-2.1.4-linux-amd64.zip SHA256 98b126e5d934d45b1390b1a1b9136e7690518bfdbb731a75a45a55e86291af4b +gotify-2.1.4-linux-amd64.zip MD5 285a66542aa1852dbf47bb0451ed2cc6 +gotify-2.1.4-linux-386.zip SHA1 545272983835ff46d9ca9d8034fb369e2fc5c329 +gotify-2.1.4-linux-386.zip SHA256 171a31c234479cb04dbdb491302bcf30a1bce747f69678c7c7f1e7f24e46ae7a +gotify-2.1.4-linux-386.zip MD5 a5e6d89651a288e5d9fb2fc0197d373d +gotify-2.1.4-linux-arm-7.zip SHA1 388f182aeba26755432945402723dc1a7b9bca61 +gotify-2.1.4-linux-arm-7.zip SHA256 ffbc8710f1ba6b2c3dc74171fd4e28fc74765e6dda2e6a304dc0685bbd167243 +gotify-2.1.4-linux-arm-7.zip MD5 40dcb76a40dbbb1c1b5387ad1aa2617d +gotify-2.1.4-linux-arm64.zip SHA1 cbd8fa2582b87824ba5483e0482769c939b4a481 +gotify-2.1.4-linux-arm64.zip SHA256 1379a92844e9d632cc5fd01db1e1d1ef4303bb6e92e6ca7e2618f06ed463264c +gotify-2.1.4-linux-arm64.zip MD5 e9466bc6f8bac5cf29077ae5ee84e7c0 diff --git a/cross/kavita/Makefile b/cross/kavita/Makefile index f4222e11fe0..85d46ab076f 100644 --- a/cross/kavita/Makefile +++ b/cross/kavita/Makefile @@ -3,6 +3,7 @@ PKG_VERS = 0.8.7 PKG_EXT = tar.gz PKG_DIST_NAME = $(PKG_NAME)-linux-$(PKG_DIST_ARCH).$(PKG_EXT) PKG_DIST_SITE = https://github.com/Kareadita/Kavita/releases/download/v$(PKG_VERS) +PKG_DIST_FILE = $(PKG_NAME)-$(PKG_VERS)-linux-$(PKG_DIST_ARCH).$(PKG_EXT) PKG_DIR = Kavita DEPENDS = diff --git a/cross/kavita/digests b/cross/kavita/digests index 7894e951df5..31eb0c5d1b6 100644 --- a/cross/kavita/digests +++ b/cross/kavita/digests @@ -1,9 +1,9 @@ -kavita-linux-arm.tar.gz SHA1 30eb95ca9926c5208b5d42db785881dcd711f6eb -kavita-linux-arm.tar.gz SHA256 dd2f556ccc17d9d241871f451964a19169871d6a58f1f3de2af8627c8b022ed8 -kavita-linux-arm.tar.gz MD5 da7ed971961eaad2514518da63538bb8 -kavita-linux-arm64.tar.gz SHA1 2f51d508e0dcca4955798619a95cb26901dc1365 -kavita-linux-arm64.tar.gz SHA256 e54108d9a39258d1bed77e4abeff5419d04f146a15c2c0d862e8354eb5634276 -kavita-linux-arm64.tar.gz MD5 7f6df5347f76c44525e4bf8a6600eafb -kavita-linux-x64.tar.gz SHA1 e19aaf00a0dae3248220d37930f9629b49578f55 -kavita-linux-x64.tar.gz SHA256 88ea7862ae732a80e562139d3fa5e404f52b3762af8ec5ae2e83266e251f63e4 -kavita-linux-x64.tar.gz MD5 4e64bccaecf5ed58b36096ea6158380c +kavita-0.8.7-linux-x64.tar.gz SHA1 e19aaf00a0dae3248220d37930f9629b49578f55 +kavita-0.8.7-linux-x64.tar.gz SHA256 88ea7862ae732a80e562139d3fa5e404f52b3762af8ec5ae2e83266e251f63e4 +kavita-0.8.7-linux-x64.tar.gz MD5 4e64bccaecf5ed58b36096ea6158380c +kavita-0.8.7-linux-arm.tar.gz SHA1 30eb95ca9926c5208b5d42db785881dcd711f6eb +kavita-0.8.7-linux-arm.tar.gz SHA256 dd2f556ccc17d9d241871f451964a19169871d6a58f1f3de2af8627c8b022ed8 +kavita-0.8.7-linux-arm.tar.gz MD5 da7ed971961eaad2514518da63538bb8 +kavita-0.8.7-linux-arm64.tar.gz SHA1 2f51d508e0dcca4955798619a95cb26901dc1365 +kavita-0.8.7-linux-arm64.tar.gz SHA256 e54108d9a39258d1bed77e4abeff5419d04f146a15c2c0d862e8354eb5634276 +kavita-0.8.7-linux-arm64.tar.gz MD5 7f6df5347f76c44525e4bf8a6600eafb diff --git a/cross/kiwix-tools/Makefile b/cross/kiwix-tools/Makefile index 25e50213265..d36f770839f 100644 --- a/cross/kiwix-tools/Makefile +++ b/cross/kiwix-tools/Makefile @@ -8,6 +8,7 @@ PKG_DIR = $(PKG_NAME)-$(PKG_VERS) REQUIRED_MIN_DSM = 7.0 UNSUPPORTED_ARCHS = comcerto2k +REQUIRED_MIN_SRM = 1.3 DEPENDS = cross/libkiwix diff --git a/cross/libkiwix/Makefile b/cross/libkiwix/Makefile index ff8b1938496..b1a74e7e4f7 100644 --- a/cross/libkiwix/Makefile +++ b/cross/libkiwix/Makefile @@ -9,6 +9,7 @@ PKG_DIR = $(PKG_NAME)-$(PKG_VERS) # compiler too old for cross/libzim REQUIRED_MIN_DSM = 7.0 UNSUPPORTED_ARCHS = comcerto2k +REQUIRED_MIN_SRM = 1.3 DEPENDS = cross/libzim cross/pugixml cross/curl cross/libmicrohttpd cross/mustache diff --git a/cross/libtorrent-rakshasa/Makefile b/cross/libtorrent-rakshasa/Makefile index 9e947125dc6..c41f70dedb0 100644 --- a/cross/libtorrent-rakshasa/Makefile +++ b/cross/libtorrent-rakshasa/Makefile @@ -7,13 +7,14 @@ PKG_DIR = $(PKG_NAME)-$(PKG_VERS) DEPENDS = cross/zlib cross/openssl3 cross/libsigc++ -HOMEPAGE = https://github.com/rakshasa/rtorrent/wiki -COMMENT = LibTorrent is a BitTorrent library written in C++ for *nix, with a focus on high performance and good code. -LICENSE = GPLv2 - # A compiler with support for C++14 language features is required. REQUIRED_MIN_DSM = 7.0 UNSUPPORTED_ARCHS = comcerto2k +REQUIRED_MIN_SRM = 1.3 + +HOMEPAGE = https://github.com/rakshasa/rtorrent/wiki +COMMENT = LibTorrent is a BitTorrent library written in C++ for *nix, with a focus on high performance and good code. +LICENSE = GPLv2 GNU_CONFIGURE = 1 diff --git a/cross/llvm-latest/Makefile b/cross/llvm-latest/Makefile index e440cf9a964..01507f2d8a4 100644 --- a/cross/llvm-latest/Makefile +++ b/cross/llvm-latest/Makefile @@ -11,6 +11,8 @@ LICENSE = Apache v2.0 with LLVM Exceptions REQUIRED_MIN_DSM = 7.0 UNSUPPORTED_ARCHS = $(ARMv5_ARCHS) $(PPC_ARCHS) comcerto2k +REQUIRED_MIN_SRM = 1.3 + CMAKE_USE_NINJA = 1 POST_INSTALL_TARGET = llvm_post_install diff --git a/cross/mkvtoolnix/Makefile b/cross/mkvtoolnix/Makefile index 5d98d2a4aa6..37667d8e06a 100644 --- a/cross/mkvtoolnix/Makefile +++ b/cross/mkvtoolnix/Makefile @@ -17,6 +17,7 @@ REQUIRED_MIN_DSM = 7.1 # comcerto2k has older toolchain than other DSM 7.1 archs UNSUPPORTED_ARCHS = comcerto2k +REQUIRED_MIN_SRM = 1.3 BUILD_DEPENDS = native/ruby # build cross/libicu before cross/boost to build libboost_regex with unicode support diff --git a/cross/mpd/Makefile b/cross/mpd/Makefile index 9ac6fb5c6d6..1a5a3887218 100644 --- a/cross/mpd/Makefile +++ b/cross/mpd/Makefile @@ -11,6 +11,7 @@ PKG_DIR = MPD-$(PKG_VERS) # GCC version is too old. You need at least version 8. REQUIRED_MIN_DSM = 7.0 UNSUPPORTED_ARCHS = comcerto2k +REQUIRED_MIN_SRM = 1.3 include ../../mk/spksrc.archs.mk diff --git a/cross/mympd/Makefile b/cross/mympd/Makefile index 307098aa41a..037b4b34d8a 100644 --- a/cross/mympd/Makefile +++ b/cross/mympd/Makefile @@ -10,6 +10,7 @@ DEPENDS = cross/libmpdclient cross/openssl3 cross/pcre2 cross/libid3tag REQUIRED_MIN_DSM = 7.0 UNSUPPORTED_ARCHS = comcerto2k +REQUIRED_MIN_SRM = 1.3 HOMEPAGE = https://jcorporation.github.io/ COMMENT = myMPD is a standalone and mobile friendly web mpd client with a tiny footprint and advanced features. diff --git a/cross/navidrome/Makefile b/cross/navidrome/Makefile index c3fa3f42046..a073ab33784 100644 --- a/cross/navidrome/Makefile +++ b/cross/navidrome/Makefile @@ -12,6 +12,7 @@ DEPENDS = cross/taglib2 # taglib2: REQUIRED_MIN_DSM = 7.1 UNSUPPORTED_ARCHS = comcerto2k +REQUIRED_MIN_SRM = 1.3 HOMEPAGE = https://www.navidrome.org/ COMMENT = 🎧☁ Modern Music Server and Streamer compatible with Subsonic/Airsonic. diff --git a/cross/nnn/Makefile b/cross/nnn/Makefile index a765265ba78..35ea5d2e5e2 100644 --- a/cross/nnn/Makefile +++ b/cross/nnn/Makefile @@ -9,6 +9,7 @@ DEPENDS = cross/ncursesw cross/readline REQUIRED_MIN_DSM = 7 UNSUPPORTED_ARCHS = comcerto2k +REQUIRED_MIN_SRM = 1.3 HOMEPAGE = https://github.com/jarun/nnn COMMENT = n³ The unorthodox terminal file manager. diff --git a/cross/rtorrent/Makefile b/cross/rtorrent/Makefile index 0344281e06d..e92f68125e9 100644 --- a/cross/rtorrent/Makefile +++ b/cross/rtorrent/Makefile @@ -14,6 +14,7 @@ LICENSE = GPL # Requires compiler with C++14 support REQUIRED_MIN_DSM = 7.0 UNSUPPORTED_ARCHS = comcerto2k +REQUIRED_MIN_SRM = 1.3 GNU_CONFIGURE = 1 PRE_CONFIGURE_TARGET = rtorrent_pre_configure diff --git a/cross/screen5/Makefile b/cross/screen5/Makefile index a054d3a388b..7e190ec50ae 100644 --- a/cross/screen5/Makefile +++ b/cross/screen5/Makefile @@ -10,6 +10,7 @@ DEPENDS = cross/ncursesw cross/linux-pam # Compiler with support for std=c17 required REQUIRED_MIN_DSM = 7.0 UNSUPPORTED_ARCHS = comcerto2k +REQUIRED_MIN_SRM = 1.3 HOMEPAGE = https://www.gnu.org/software/screen/ COMMENT = Screen is a full-screen window manager that multiplexes a physical terminal between several processes, typically interactive shells. diff --git a/cross/taglib2/Makefile b/cross/taglib2/Makefile index 6a6309b564b..cf1bb3aeb50 100644 --- a/cross/taglib2/Makefile +++ b/cross/taglib2/Makefile @@ -10,7 +10,7 @@ DEPENDS = cross/zlib cross/utfcpp # requires "CMAKE_CXX_STANDARD 17" REQUIRED_MIN_DSM = 7.1 UNSUPPORTED_ARCHS = comcerto2k - +REQUIRED_MIN_SRM = 1.3 HOMEPAGE = https://taglib.org/ COMMENT = TagLib is a library for reading and editing the meta-data of several popular audio formats. Currently it supports both ID3v1 and ID3v2 for MP3 files, Ogg Vorbis comments and ID3 tags and Vorbis comments in FLAC, MPC, Speex, WavPack, TrueAudio, WAV, AIFF, MP4 and ASF files. diff --git a/cross/transmission/Makefile b/cross/transmission/Makefile index 3d53c77e670..6043fb8e6fb 100644 --- a/cross/transmission/Makefile +++ b/cross/transmission/Makefile @@ -14,6 +14,7 @@ LICENSE = GPLv2/GPLv3 # gcc >= 5.1 required REQUIRED_MIN_DSM = 7.0 UNSUPPORTED_ARCHS = comcerto2k +REQUIRED_MIN_SRM = 1.3 CMAKE_ARGS = -DCMAKE_BUILD_TYPE=RelWithDebInfo .. CMAKE_ARGS += -DENABLE_TESTS=OFF diff --git a/cross/unrar7/Makefile b/cross/unrar7/Makefile index 1d7b5f12886..88b5c6f70c1 100644 --- a/cross/unrar7/Makefile +++ b/cross/unrar7/Makefile @@ -9,6 +9,7 @@ DEPENDS = REQUIRED_MIN_DSM = 7.0 UNSUPPORTED_ARCHS = comcerto2k +REQUIRED_MIN_SRM = 1.3 HOMEPAGE = https://rarlab.com COMMENT = Extract files from rar archives. diff --git a/cross/znc/Makefile b/cross/znc/Makefile index 248c0d630dd..2841a87297d 100644 --- a/cross/znc/Makefile +++ b/cross/znc/Makefile @@ -10,6 +10,7 @@ PKG_DIR = $(PKG_NAME)-$(PKG_VERS) # Ensure C++17 compatibility REQUIRED_MIN_DSM = 7.0 UNSUPPORTED_ARCHS = comcerto2k +REQUIRED_MIN_SRM = 1.3 HOMEPAGE = https://wiki.znc.in/ COMMENT = Advanced IRC bouncer diff --git a/spk/adminer/Makefile b/spk/adminer/Makefile index afab188d5b7..f31986040fb 100644 --- a/spk/adminer/Makefile +++ b/spk/adminer/Makefile @@ -7,7 +7,7 @@ DSM_UI_DIR = app DEPENDS = cross/adminer # SRM is lacking webstation and php -UNSUPPORTED_ARCHS_TCVERSION = noarch-1.1 +REQUIRED_MIN_SRM = 3.0 MAINTAINER = piwi82 DESCRIPTION = Adminer is a full-featured database management tool available for MySQL, PostgreSQL, SQLite, MS SQL, Oracle, Firebird, SimpleDB, Elasticsearch and MongoDB. diff --git a/spk/ariang/Makefile b/spk/ariang/Makefile index 823c4da3ba3..037db42d94b 100644 --- a/spk/ariang/Makefile +++ b/spk/ariang/Makefile @@ -8,6 +8,9 @@ DEPENDS = cross/ariang SPK_DEPENDS = "WebStation>=2.1.0" +# SRM is not supported due lacking webstation package +REQUIRED_MIN_SRM = 3.0 + MAINTAINER = vitkabele DESCRIPTION = AriaNg, a modern web frontend making aria2 easier to use. ADMIN_URL = /ariang/ diff --git a/spk/bazarr/Makefile b/spk/bazarr/Makefile index 90adccc0991..9cfde5cc1e3 100644 --- a/spk/bazarr/Makefile +++ b/spk/bazarr/Makefile @@ -25,6 +25,7 @@ STARTABLE = yes # Requires gcc>=8.4 to build succesfully REQUIRED_MIN_DSM = 7.1 UNSUPPORTED_ARCHS = comcerto2k +REQUIRED_MIN_SRM = 1.3 SERVICE_USER = auto SERVICE_SETUP = src/service-setup.sh diff --git a/spk/beets/Makefile b/spk/beets/Makefile index 4eb15f8eb6a..d35075ad909 100644 --- a/spk/beets/Makefile +++ b/spk/beets/Makefile @@ -9,6 +9,7 @@ SPK_DEPENDS = "$(PYTHON_PACKAGE)" # numpy, pygobject REQUIRED_MIN_DSM = 7.1 UNSUPPORTED_ARCHS = comcerto2k +REQUIRED_MIN_SRM = 1.3 WHEELS = src/requirements-crossenv.txt src/requirements-pure.txt diff --git a/spk/bicbucstriim/Makefile b/spk/bicbucstriim/Makefile index 741f515769a..2784079736f 100644 --- a/spk/bicbucstriim/Makefile +++ b/spk/bicbucstriim/Makefile @@ -9,6 +9,8 @@ override ARCH=noarch REQUIRED_MIN_DSM = 7.2 SPK_DEPENDS = WebStation:PHP8.2:Apache2.4 +# SRM is not supported due lacking php and apache packages +REQUIRED_MIN_SRM = 3.0 MAINTAINER = SynoCommunity DESCRIPTION = BicBucStriim streams books, digital books. It fills a gap in the functionality of current NAS devices, which provide access to your collection of music, videos and photos -- but not books. BicBucStriim covers that area and provides web-based access to your e-book collection. diff --git a/spk/cops/Makefile b/spk/cops/Makefile index 14c9e0a9a13..930c9403abe 100644 --- a/spk/cops/Makefile +++ b/spk/cops/Makefile @@ -9,6 +9,8 @@ override ARCH=noarch REQUIRED_MIN_DSM = 7.2 SPK_DEPENDS = WebStation:PHP8.2:Apache2.4 +# SRM is not supported due lacking webstation, php and apache packages +REQUIRED_MIN_SRM = 3.0 MAINTAINER = SynoCommunity DESCRIPTION = Calibre OPDS and HTML PHP Server : light alternative to Calibre content server / Calibre2OPDS. diff --git a/spk/deluge/Makefile b/spk/deluge/Makefile index 3273e5933d9..6ecaf71048a 100644 --- a/spk/deluge/Makefile +++ b/spk/deluge/Makefile @@ -22,6 +22,7 @@ HELPURL = https://dev.deluge-torrent.org/wiki/UserGuide REQUIRED_MIN_DSM = 7.0 UNSUPPORTED_ARCHS = comcerto2k +REQUIRED_MIN_SRM = 1.3 WIZARDS_DIR = src/wizard/ diff --git a/spk/demowebservice/Makefile b/spk/demowebservice/Makefile index 60bb4055f64..99ccf6eed62 100644 --- a/spk/demowebservice/Makefile +++ b/spk/demowebservice/Makefile @@ -5,6 +5,9 @@ SPK_ICON = src/demowebservice.png DEPENDS = +# SRM is not supported due lacking webstation package +REQUIRED_MIN_SRM = 3.0 + override ARCH=noarch MAINTAINER = hgy59 diff --git a/spk/fengoffice/Makefile b/spk/fengoffice/Makefile index 7ac1a84774a..d7fd3145a68 100644 --- a/spk/fengoffice/Makefile +++ b/spk/fengoffice/Makefile @@ -10,6 +10,8 @@ override ARCH=noarch # Due to not obvious WebStation handling requirements REQUIRED_MIN_DSM = 6.0 SPK_DEPENDS = "WebStation:PHP7.4:MariaDB10:Apache2.4" +# SRM is not supported due lacking webstation, php, mariadb and apache packages +REQUIRED_MIN_SRM = 3.0 MAINTAINER = SynoCommunity DESCRIPTION = Feng Office is a Collaboration Platform and Project Management System. diff --git a/spk/ffsync/Makefile b/spk/ffsync/Makefile index 810a3e5a2a4..6d7f7aa8d1e 100644 --- a/spk/ffsync/Makefile +++ b/spk/ffsync/Makefile @@ -12,6 +12,8 @@ UNSUPPORTED_ARCHS = $(ARMv5_ARCHS) $(PPC_ARCHS) $(ARMv7L_ARCHS) REQUIRED_MIN_DSM = 6.0 SPK_DEPENDS = MariaDB10:$(PYTHON_PACKAGE) +# SRM is not supported due lacking mariadb package +REQUIRED_MIN_SRM = 3.0 MAINTAINER = SynoCommunity DESCRIPTION = An implementation of the Mozilla Sync-1.5 Server protocol used by the sync service in Firefox 29 and later. You can use Mozilla Sync Server to exchange browser data \(bookmarks, history, open tabs, passwords, add-ons, and the like\) between \'clients\' in a manner that respects a user\'s security and privacy. The service runs on port 8132. diff --git a/spk/homeassistant/Makefile b/spk/homeassistant/Makefile index d395783b6bb..45b69c28695 100644 --- a/spk/homeassistant/Makefile +++ b/spk/homeassistant/Makefile @@ -11,6 +11,7 @@ SPK_DEPENDS = $(PYTHON_PACKAGE) # unsupported wheels: deebot_client, numpy, pymicro_vad, pyspeex_noise, and others REQUIRED_MIN_DSM = 7.0 UNSUPPORTED_ARCHS = comcerto2k +REQUIRED_MIN_SRM = 1.3 # mandatory wheel not available (av): # It is possible to build for armv7, but av==13.1.0 is not available, and the diff --git a/spk/java-17-openjdk/Makefile b/spk/java-17-openjdk/Makefile index 4248750d6c1..85cdfcffb91 100644 --- a/spk/java-17-openjdk/Makefile +++ b/spk/java-17-openjdk/Makefile @@ -12,6 +12,7 @@ DEPENDS = cross/java-17-openjdk # gcc >= 5.0 required REQUIRED_MIN_DSM = 7.0 UNSUPPORTED_ARCHS = comcerto2k +REQUIRED_MIN_SRM = 1.3 MAINTAINER = SynoCommunity DESCRIPTION = OpenJDK version $(JAVA_VERSION)+$(JAVA_RELEASE). OpenJDK 17 is the open-source reference implementation of version 17 of the Java SE Platform as specified by JSR 390 in the Java Community Process. diff --git a/spk/java-21-openjdk/Makefile b/spk/java-21-openjdk/Makefile index a2879f8b7e6..605560cc902 100644 --- a/spk/java-21-openjdk/Makefile +++ b/spk/java-21-openjdk/Makefile @@ -10,6 +10,7 @@ DEPENDS = cross/java-21-openjdk # gcc >= 5.0 required REQUIRED_MIN_DSM = 7.0 UNSUPPORTED_ARCHS = comcerto2k +REQUIRED_MIN_SRM = 1.3 MAINTAINER = SynoCommunity DESCRIPTION = OpenJDK version $(JAVA_VERSION)+$(JAVA_RELEASE). OpenJDK 21 is the open-source reference implementation of version 21 of the Java SE Platform as specified by JSR 396 in the Java Community Process. diff --git a/spk/kavita/Makefile b/spk/kavita/Makefile index 71fc84f9bf4..1ba9b0cd1da 100644 --- a/spk/kavita/Makefile +++ b/spk/kavita/Makefile @@ -8,8 +8,9 @@ DEPENDS = cross/kavita cross/libe_sqlite3 # Arch exclusions for dotnet 6.0 DOTNET_CORE_ARCHS = 1 -# Requires glibc 2.28 which is not in DSM 6 toolchains +# Requires glibc 2.28 which is not in DSM 6 and SRM 1.2 toolchains REQUIRED_MIN_DSM = 7.0 +REQUIRED_MIN_SRM = 1.3 MAINTAINER = SynoCommunity MAINTAINER_URL = https://synocommunity.com/ diff --git a/spk/kiwix/Makefile b/spk/kiwix/Makefile index 978d8567739..a4cceb3b234 100644 --- a/spk/kiwix/Makefile +++ b/spk/kiwix/Makefile @@ -8,6 +8,7 @@ DEPENDS = cross/kiwix-tools # compiler too old for cross/libzim REQUIRED_MIN_DSM = 7.0 UNSUPPORTED_ARCHS = comcerto2k +REQUIRED_MIN_SRM = 1.3 HOMEPAGE = https://www.kiwix.org/ DESCRIPTION = Kiwix is an offline reader for online content like Wikipedia, Project Gutenberg, or TED Talks. It makes knowledge available to people with no or limited internet access. The software as well as the content is free to use for anyone. diff --git a/spk/mantisbt/Makefile b/spk/mantisbt/Makefile index e97f248caa1..b560cb2720d 100644 --- a/spk/mantisbt/Makefile +++ b/spk/mantisbt/Makefile @@ -10,6 +10,8 @@ override ARCH=noarch # Due to not obvious WebStation handling requirements REQUIRED_MIN_DSM = 6.0 SPK_DEPENDS = "WebStation:PHP7.4:MariaDB10:Apache2.4" +# SRM is not supported due lacking webstation, php, mariadb and apache packages +REQUIRED_MIN_SRM = 3.0 MAINTAINER = SynoCommunity DESCRIPTION = Mantis is an easily deployable, web based bugtracker to aid product bug tracking. It requires PHP, MySQL and a web server. It is simpler than Bugzilla and easily editable. diff --git a/spk/metacubexd/Makefile b/spk/metacubexd/Makefile index 914cdc701fa..9e409d8f146 100644 --- a/spk/metacubexd/Makefile +++ b/spk/metacubexd/Makefile @@ -17,6 +17,8 @@ CHANGELOG = "Initial package release." LICENSE = GPLv3 REQUIRED_MIN_DSM = 6.0 +# SRM is not supported due lacking webstation and apache packages +REQUIRED_MIN_SRM = 3.0 SPK_DEPENDS = WebStation:Apache2.4 diff --git a/spk/mkvtoolnix/Makefile b/spk/mkvtoolnix/Makefile index e69396fe261..73e5b248a0f 100644 --- a/spk/mkvtoolnix/Makefile +++ b/spk/mkvtoolnix/Makefile @@ -9,6 +9,7 @@ DEPENDS = cross/mkvtoolnix REQUIRED_MIN_DSM = 7.1 # comcerto2k has older toolchain than other DSM 7 archs UNSUPPORTED_ARCHS = comcerto2k +REQUIRED_MIN_SRM = 1.3 MAINTAINER = cytec DESCRIPTION = MKVToolNix - Ultimate Tool for Editing and Merging MKV Files. MKVToolNix is a powerful tool for editing, merging, and splitting MKV files. Easily manage video, audio, and subtitles, extract tracks, and modify metadata. diff --git a/spk/mpd/Makefile b/spk/mpd/Makefile index 084610a9289..9531e34d13a 100644 --- a/spk/mpd/Makefile +++ b/spk/mpd/Makefile @@ -8,6 +8,7 @@ DEPENDS = cross/mpd REQUIRED_MIN_DSM = 7.0 UNSUPPORTED_ARCHS = comcerto2k +REQUIRED_MIN_SRM = 1.3 MAINTAINER = hgy59 DESCRIPTION = Music Player Daemon \(MPD\) is a flexible, powerful, server-side application for playing music. Through plugins and libraries it can play a variety of sound files while being controlled by its network protocol. diff --git a/spk/mympd/Makefile b/spk/mympd/Makefile index f009e19c12c..1235ab464ea 100644 --- a/spk/mympd/Makefile +++ b/spk/mympd/Makefile @@ -8,6 +8,7 @@ DEPENDS = cross/mympd REQUIRED_MIN_DSM = 7.0 UNSUPPORTED_ARCHS = comcerto2k +REQUIRED_MIN_SRM = 1.3 MAINTAINER = hgy59 DESCRIPTION = myMPD is a standalone and mobile friendly web mpd client with a tiny footprint and advanced features. diff --git a/spk/navidrome/Makefile b/spk/navidrome/Makefile index fd03faf9b6f..0a5abdffd2c 100644 --- a/spk/navidrome/Makefile +++ b/spk/navidrome/Makefile @@ -7,6 +7,7 @@ DEPENDS = cross/navidrome REQUIRED_MIN_DSM = 7.1 UNSUPPORTED_ARCHS = comcerto2k +REQUIRED_MIN_SRM = 1.3 MAINTAINER = hgy59 HOMEPAGE = https://www.navidrome.org/ diff --git a/spk/owncloud/Makefile b/spk/owncloud/Makefile index 5dd4f3ebd47..df9f95d95a1 100644 --- a/spk/owncloud/Makefile +++ b/spk/owncloud/Makefile @@ -9,6 +9,8 @@ override ARCH=noarch REQUIRED_MIN_DSM = 6.0 SPK_DEPENDS = WebStation:PHP7.4:MariaDB10:Apache2.4:redis +# SRM is not supported due lacking webstation, php, mariadb and apache packages +REQUIRED_MIN_SRM = 3.0 MAINTAINER = SynoCommunity DESCRIPTION = ownCloud is a personal cloud which runs on your own server and gives you freedom and control over your own data. diff --git a/spk/phpmemcachedadmin/Makefile b/spk/phpmemcachedadmin/Makefile index af55b04982b..a33628d0081 100644 --- a/spk/phpmemcachedadmin/Makefile +++ b/spk/phpmemcachedadmin/Makefile @@ -10,6 +10,8 @@ override ARCH=noarch REQUIRED_MIN_DSM = 6.0 SPK_DEPENDS = WebStation:PHP7.4:Apache2.4 +# SRM is not supported due lacking webstation, php and apache packages +REQUIRED_MIN_SRM = 3.0 MAINTAINER = SynoCommunity DESCRIPTION = Graphic stand-alone administration for memcached to monitor and debug purpose. diff --git a/spk/roundcube/Makefile b/spk/roundcube/Makefile index 9f5fafdcaf8..5b2798daa34 100644 --- a/spk/roundcube/Makefile +++ b/spk/roundcube/Makefile @@ -10,6 +10,8 @@ override ARCH=noarch # Due to not obvious WebStation handling requirements REQUIRED_MIN_DSM = 6.0 SPK_DEPENDS = "WebStation:PHP7.4:MariaDB10:Apache2.4" +# SRM is not supported due lacking webstation, php, mariadb and apache packages +REQUIRED_MIN_SRM = 3.0 MAINTAINER = SynoCommunity DESCRIPTION = Roundcube is a free and open source webmail solution with a desktop-like user interface which is easy to install/configure and that runs on a standard LAMPP server. It is the same software Synology offers as Mail Station except this does not depend on Mail Server package. diff --git a/spk/rutorrent/Makefile b/spk/rutorrent/Makefile index 09bc24680a8..8bc7a173baa 100644 --- a/spk/rutorrent/Makefile +++ b/spk/rutorrent/Makefile @@ -12,6 +12,8 @@ CHANGELOG = "1. Upgrade rutorrent to 5.1.12.
2. Update rtorrent to v0.10.0. # libtorrent-rakshasa requires C++14 support REQUIRED_MIN_DSM = 7.0 UNSUPPORTED_ARCHS = comcerto2k +# SRM is not supported due lacking webstation, php and apache packages +REQUIRED_MIN_SRM = 3.0 PYTHON_PACKAGE = python312 SPK_DEPENDS = "WebStation:${PYTHON_PACKAGE}:PHP7.4:Apache2.4" diff --git a/spk/selfoss/Makefile b/spk/selfoss/Makefile index 27230c2356d..357034cd155 100644 --- a/spk/selfoss/Makefile +++ b/spk/selfoss/Makefile @@ -9,11 +9,13 @@ override ARCH=noarch REQUIRED_MIN_DSM = 6.0 SPK_DEPENDS = WebStation:PHP7.4:Apache2.4 +# SRM is not supported due lacking webstation, php and apache packages +REQUIRED_MIN_SRM = 3.0 MAINTAINER = moneytoo DESCRIPTION = The new multipurpose rss reader, live stream, mashup, aggregation web application. DISPLAY_NAME = Selfoss -CHANGELOG = "1. Update Selfoss to 2.19.
2. Use faster SQLite database." +CHANGELOG = "1. Update Selfoss to 2.19.
2. Use faster SQLite database." HOMEPAGE = https://selfoss.aditu.de/ LICENSE = GPLv3 diff --git a/spk/transmission/Makefile b/spk/transmission/Makefile index b771a8c3aaa..9ec58a29ae7 100644 --- a/spk/transmission/Makefile +++ b/spk/transmission/Makefile @@ -7,6 +7,7 @@ DEPENDS = cross/transmission REQUIRED_MIN_DSM = 7.0 UNSUPPORTED_ARCHS = comcerto2k +REQUIRED_MIN_SRM = 1.3 MAINTAINER = SynoCommunity DESCRIPTION = Transmission is an easy and fast BitTorrent client. You can control it remotely with its web interface or dedicated applications. diff --git a/spk/tt-rss/Makefile b/spk/tt-rss/Makefile index dacfa8cbba5..5f561876bc6 100644 --- a/spk/tt-rss/Makefile +++ b/spk/tt-rss/Makefile @@ -10,6 +10,8 @@ override ARCH=noarch # Due to not obvious WebStation handling requirements REQUIRED_MIN_DSM = 6.0 SPK_DEPENDS = "WebStation:PHP7.4:MariaDB10:Apache2.4" +# SRM is not supported due lacking webstation, php, mariadb and apache packages +REQUIRED_MIN_SRM = 3.0 MAINTAINER = moneytoo DESCRIPTION = Tiny Tiny RSS is an open source web-based news feed \(RSS/Atom\) reader and aggregator, designed to allow you to read news from any location, while feeling as close to a real desktop application as possible. diff --git a/spk/wallabag/Makefile b/spk/wallabag/Makefile index ab290458823..dd2d1c8ae5c 100644 --- a/spk/wallabag/Makefile +++ b/spk/wallabag/Makefile @@ -10,6 +10,8 @@ override ARCH=noarch # Due to not obvious WebStation handling requirements REQUIRED_MIN_DSM = 6.0 SPK_DEPENDS = "WebStation:PHP7.4:MariaDB10:Apache2.4" +# SRM is not supported due lacking webstation, php, mariadb and apache packages +REQUIRED_MIN_SRM = 3.0 MAINTAINER = SynoCommunity DESCRIPTION = Wallabag is a self hostable application allowing you to save an offline copy of your favorite articles. Click, save, read it when you can. It extracts content so that you can read it when you have time. diff --git a/spk/znc/Makefile b/spk/znc/Makefile index 5d9b14f224c..324b19f57cd 100644 --- a/spk/znc/Makefile +++ b/spk/znc/Makefile @@ -21,6 +21,7 @@ LICENSE = Apache License 2.0 # Ensure C++17 compatibility REQUIRED_MIN_DSM = 7.0 UNSUPPORTED_ARCHS = comcerto2k +REQUIRED_MIN_SRM = 1.3 WIZARDS_DIR = src/wizard CONF_DIR = src/conf From c7f75b4cb338f8e3f87985a34030156dd178d65d Mon Sep 17 00:00:00 2001 From: hgy59 Date: Wed, 17 Sep 2025 22:30:30 +0200 Subject: [PATCH 05/14] add SRM 1.2 kernels from synocommunity releases --- kernel/syno-dakota-1.2/Makefile | 2 +- kernel/syno-dakota-1.2/digests | 6 +++--- kernel/syno-ipq806x-1.2/Makefile | 2 +- kernel/syno-ipq806x-1.2/digests | 6 +++--- kernel/syno-northstarplus-1.2/Makefile | 2 +- kernel/syno-northstarplus-1.2/digests | 6 +++--- mk/spksrc.kernel-flags.mk | 10 +++++----- 7 files changed, 17 insertions(+), 17 deletions(-) diff --git a/kernel/syno-dakota-1.2/Makefile b/kernel/syno-dakota-1.2/Makefile index a20dd01436a..a95d154aee6 100644 --- a/kernel/syno-dakota-1.2/Makefile +++ b/kernel/syno-dakota-1.2/Makefile @@ -1,7 +1,7 @@ KERNEL_ARCH = dakota KERNEL_VERS = 1.2 KERNEL_BUILD = 7742 -KERNEL_EXT = tbz +KERNEL_EXT = txz KERNEL_DIST = linux-4.4.x KERNEL_BASE_ARCH = arm diff --git a/kernel/syno-dakota-1.2/digests b/kernel/syno-dakota-1.2/digests index 22b30fd1f56..ba5685c4a1b 100644 --- a/kernel/syno-dakota-1.2/digests +++ b/kernel/syno-dakota-1.2/digests @@ -1,3 +1,3 @@ -dakota-linux-4.4.x.tbz SHA1 2424a5d010114384b3a6f41e307199d9e1f120ba -dakota-linux-4.4.x.tbz SHA256 68ead2d0e791b74b0a72ccfecdc2ab1801a25eb0102b0c517291064acb46abc5 -dakota-linux-4.4.x.tbz MD5 b9bee48e3dca579e02d02abd898ba940 +dakota-linux-4.4.x.txz SHA1 50ed5bf952959975a48d28fc68c795eff36646cf +dakota-linux-4.4.x.txz SHA256 0a8619420b7fba287fedbbd93abcdb3d8b7546b937ddb8baa0fb65c6866cdd3d +dakota-linux-4.4.x.txz MD5 32d9690e00839c47fcfaca824b9d89de diff --git a/kernel/syno-ipq806x-1.2/Makefile b/kernel/syno-ipq806x-1.2/Makefile index cf031eddb54..441b93ef2bf 100644 --- a/kernel/syno-ipq806x-1.2/Makefile +++ b/kernel/syno-ipq806x-1.2/Makefile @@ -1,7 +1,7 @@ KERNEL_ARCH = ipq806x KERNEL_VERS = 1.2 KERNEL_BUILD = 7742 -KERNEL_EXT = tbz +KERNEL_EXT = txz KERNEL_DIST = linux-4.4.x KERNEL_BASE_ARCH = arm diff --git a/kernel/syno-ipq806x-1.2/digests b/kernel/syno-ipq806x-1.2/digests index edaf0e1d803..5a208086010 100644 --- a/kernel/syno-ipq806x-1.2/digests +++ b/kernel/syno-ipq806x-1.2/digests @@ -1,3 +1,3 @@ -ipq806x-linux-4.4.x.tbz SHA1 a335c22c8bc67a795181c976b43ffee0ea07317d -ipq806x-linux-4.4.x.tbz SHA256 e7a8bbc3129ce4dbaac5c1c054c710015d33cec448c74209805152554e9f95c3 -ipq806x-linux-4.4.x.tbz MD5 c92af5840b1296d6485fddd94ead4308 +ipq806x-linux-4.4.x.txz SHA1 8853d85f21ee5571c45cf3bcb97d319cf9985cc4 +ipq806x-linux-4.4.x.txz SHA256 7627a5aed76922545f51102c00a24a26ef7754ebb9192cb8f0f457d9a0c5289b +ipq806x-linux-4.4.x.txz MD5 d7a3d9d15c61bd6f8b20292375e71334 diff --git a/kernel/syno-northstarplus-1.2/Makefile b/kernel/syno-northstarplus-1.2/Makefile index 68d501d118d..fbb385c98b9 100644 --- a/kernel/syno-northstarplus-1.2/Makefile +++ b/kernel/syno-northstarplus-1.2/Makefile @@ -1,7 +1,7 @@ KERNEL_ARCH = northstarplus KERNEL_VERS = 1.2 KERNEL_BUILD = 7742 -KERNEL_EXT = tbz +KERNEL_EXT = txz KERNEL_DIST = linux-3.6.x KERNEL_CONFIG = synoconfigs/broadcom_northstarplus KERNEL_BASE_ARCH = arm diff --git a/kernel/syno-northstarplus-1.2/digests b/kernel/syno-northstarplus-1.2/digests index 27c38ea9b2b..7955ed178f5 100644 --- a/kernel/syno-northstarplus-1.2/digests +++ b/kernel/syno-northstarplus-1.2/digests @@ -1,3 +1,3 @@ -northstarplus-linux-3.6.x.tbz SHA1 61da8ccf39672946aef45fcccb2c49a3d25e6fee -northstarplus-linux-3.6.x.tbz SHA256 2f414eec8ec704a7a32b28d1aab18ebbaac65466526f3989f7b7fc73dad24078 -northstarplus-linux-3.6.x.tbz MD5 e8392cd130573fb272097a300b26fd24 +northstarplus-linux-3.6.x.txz SHA1 41a9f8ba79f3533a2ac27ed6ca2686a9dcdb4b36 +northstarplus-linux-3.6.x.txz SHA256 ae2a9955bd6f42de752650ee6a47c02d0c4350efb5c238bbc6d9e1fba37496e0 +northstarplus-linux-3.6.x.txz MD5 cf7a08e8865ceb8cd096ef465ac8010f diff --git a/mk/spksrc.kernel-flags.mk b/mk/spksrc.kernel-flags.mk index c5024fb2591..83ac035e873 100644 --- a/mk/spksrc.kernel-flags.mk +++ b/mk/spksrc.kernel-flags.mk @@ -159,23 +159,23 @@ endif else ifeq ($(shell expr "$(KERNEL_BUILD)" \>= 7742),1) ifeq ($(strip $(KERNEL_DIST_SITE)),) -KERNEL_DIST_SITE = https://sourceforge.net/projects/dsgpl/files/Synology%20Router%20GPL%20Source/$(KERNEL_BUILD)branch/$(KERNEL_URL_DIR) +KERNEL_DIST_SITE = https://github.com/SynoCommunity/spksrc/releases/download/kernels/srm1.2 endif ifeq ($(strip $(KERNEL_DIST_NAME)),) -KERNEL_DIST_NAME = synogpl-$(KERNEL_BUILD)-$(KERNEL_ARCH).$(KERNEL_EXT) +KERNEL_DIST_NAME = $(KERNEL_ARCH)-$(KERNEL_DIST).$(KERNEL_EXT) endif ifeq ($(strip $(KERNEL_URL_DIR)),) -KERNEL_URL_DIR = / +KERNEL_URL_DIR = $(KERNEL_ARCH) endif ifeq ($(strip $(KERNEL_PREFIX)),) -KERNEL_PREFIX = source/$(KERNEL_DIST) +KERNEL_PREFIX = $(KERNEL_DIST) endif ifeq ($(strip $(KERNEL_STRIP)),) -KERNEL_STRIP = 1 +KERNEL_STRIP = 0 endif endif From 4c02776b3398a3fd8f54d934d7827937713a0edf Mon Sep 17 00:00:00 2001 From: hgy59 Date: Wed, 17 Sep 2025 22:31:13 +0200 Subject: [PATCH 06/14] synokernel packages are not supported on SRM 1.2 --- spk/synokernel-cdrom/Makefile | 9 +++++++-- spk/synokernel-usbserial/Makefile | 9 +++++++-- 2 files changed, 14 insertions(+), 4 deletions(-) diff --git a/spk/synokernel-cdrom/Makefile b/spk/synokernel-cdrom/Makefile index 43c1ed26e2d..b99b7a4093a 100644 --- a/spk/synokernel-cdrom/Makefile +++ b/spk/synokernel-cdrom/Makefile @@ -1,7 +1,7 @@ SPK_NAME = synokernel-cdrom SPK_VERS = 1.3 SPK_REV = 3 -SPK_ICON = src/$(SPK_NAME).png +SPK_ICON = src/synokernel-cdrom.png DEPENDS = @@ -13,7 +13,12 @@ MAINTAINER = th0ma7 DESCRIPTION = "Provides Synology kernel CD-ROM drivers cdrom.ko and sr_mod.ko" CHANGELOG = "1. Support DSM-7.1 and DSM-7.2" -UNSUPPORTED_ARCHS = $(PPC_ARCHS) epyc7002 rtd1619b +UNSUPPORTED_ARCHS = $(PPC_ARCHS) +# archs with kernel 5.x fail to build +UNSUPPORTED_ARCHS += epyc7002 rtd1619b +# we only have northstar for SRM 1.2, but this fails with: +# /usr/bin/ld: scripts/dtc/dtc-parser.tab.o:(.bss+0x10): multiple definition of `yylloc'; scripts/dtc/dtc-lexer.lex.o:(.bss+0x0): first defined here +REQUIRED_MIN_SRM = 1.3 STARTABLE = no DISPLAY_NAME = SynoKernel USB CD-ROM drivers diff --git a/spk/synokernel-usbserial/Makefile b/spk/synokernel-usbserial/Makefile index f2edb340d5f..da3e02d5363 100644 --- a/spk/synokernel-usbserial/Makefile +++ b/spk/synokernel-usbserial/Makefile @@ -1,7 +1,7 @@ SPK_NAME = synokernel-usbserial SPK_VERS = 1.2 SPK_REV = 9 -SPK_ICON = src/$(SPK_NAME).png +SPK_ICON = src/synokernel-usbserial.png DEPENDS = @@ -18,7 +18,12 @@ MAINTAINER = th0ma7 DESCRIPTION = "Provides usbserial.ko ch341.ko cp210x.ko pl2303.ko ti_usb3410_5052.ko and ftdi_sio.ko" CHANGELOG = "1. Support DSM-7.1 and DSM-7.2" -UNSUPPORTED_ARCHS = $(PPC_ARCHS) epyc7002 rtd1619b +UNSUPPORTED_ARCHS = $(PPC_ARCHS) +# archs with kernel 5.x fail to build +UNSUPPORTED_ARCHS += epyc7002 rtd1619b +# we only have northstar for SRM 1.2, but this fails with: +# /usr/bin/ld: scripts/dtc/dtc-parser.tab.o:(.bss+0x10): multiple definition of `yylloc'; scripts/dtc/dtc-lexer.lex.o:(.bss+0x0): first defined here +REQUIRED_MIN_SRM = 1.3 STARTABLE = no DISPLAY_NAME = SynoKernel USB Serial drivers From 7dfb89ff502b6cc3658592a464ed727aae978be4 Mon Sep 17 00:00:00 2001 From: hgy59 Date: Fri, 19 Sep 2025 23:30:30 +0200 Subject: [PATCH 07/14] additional REQUIRED_MIN_SRM definitions --- python/lap/Makefile | 1 + python/numpy-latest/Makefile | 1 + python/numpy/Makefile | 1 + python/numpy_1.26/Makefile | 1 + python/numpy_ha/Makefile | 1 + python/scipy/Makefile | 1 + spk/salt-master/Makefile | 2 ++ spk/salt-minion/Makefile | 2 ++ 8 files changed, 10 insertions(+) diff --git a/python/lap/Makefile b/python/lap/Makefile index 10b8b19cec0..9d1558fba75 100644 --- a/python/lap/Makefile +++ b/python/lap/Makefile @@ -12,6 +12,7 @@ LICENSE = BSD-2-Clause license # Requires gcc>=8.4 to build sucesfully REQUIRED_MIN_DSM = 7.1 UNSUPPORTED_ARCHS = comcerto2k +REQUIRED_MIN_SRM = 1.3 DEPENDS = python/numpy diff --git a/python/numpy-latest/Makefile b/python/numpy-latest/Makefile index 4866f2d90f0..03f6019d253 100644 --- a/python/numpy-latest/Makefile +++ b/python/numpy-latest/Makefile @@ -23,6 +23,7 @@ LICENSE = NumPy Developers # Requires gcc>=9.3 to build sucesfully REQUIRED_MIN_DSM = 7.2 +REQUIRED_MIN_SRM = 1.3 include ../../mk/spksrc.common.mk diff --git a/python/numpy/Makefile b/python/numpy/Makefile index 5f7e720457c..d21541d6879 100644 --- a/python/numpy/Makefile +++ b/python/numpy/Makefile @@ -26,6 +26,7 @@ LICENSE = NumPy Developers # Requires gcc>=8.4 to build sucesfully REQUIRED_MIN_DSM = 7.1 UNSUPPORTED_ARCHS = comcerto2k +REQUIRED_MIN_SRM = 1.3 include ../../mk/spksrc.common.mk diff --git a/python/numpy_1.26/Makefile b/python/numpy_1.26/Makefile index fd958ac8831..78e1b338ae4 100644 --- a/python/numpy_1.26/Makefile +++ b/python/numpy_1.26/Makefile @@ -25,6 +25,7 @@ LICENSE = NumPy Developers # Requires gcc>=8.4 to build sucesfully REQUIRED_MIN_DSM = 7.1 UNSUPPORTED_ARCHS = comcerto2k +REQUIRED_MIN_SRM = 1.3 include ../../mk/spksrc.common.mk diff --git a/python/numpy_ha/Makefile b/python/numpy_ha/Makefile index 8511cc8ed23..1de28af46b3 100644 --- a/python/numpy_ha/Makefile +++ b/python/numpy_ha/Makefile @@ -24,6 +24,7 @@ LICENSE = NumPy Developers # Requires gcc>=8.4 to build sucesfully REQUIRED_MIN_DSM = 7.1 UNSUPPORTED_ARCHS = comcerto2k +REQUIRED_MIN_SRM = 1.3 include ../../mk/spksrc.common.mk diff --git a/python/scipy/Makefile b/python/scipy/Makefile index bb5a5e0e645..46c39e5ab08 100644 --- a/python/scipy/Makefile +++ b/python/scipy/Makefile @@ -16,6 +16,7 @@ LICENSE = 3-Clause BSD license # Requires gcc>=8.4 to build sucesfully REQUIRED_MIN_DSM = 7.1 UNSUPPORTED_ARCHS = comcerto2k +REQUIRED_MIN_SRM = 1.3 DEPENDS = python/numpy DEPENDS += cross/openblas diff --git a/spk/salt-master/Makefile b/spk/salt-master/Makefile index bc9d9900044..3f4b2f1d59d 100644 --- a/spk/salt-master/Makefile +++ b/spk/salt-master/Makefile @@ -10,6 +10,8 @@ WHEELS = src/requirements-crossenv.txt src/requirements-pure.txt DEPENDS = cross/saltgui UNSUPPORTED_ARCHS = $(PPC_ARCHS) $(ARMv5_ARCHS) $(ARMv7L_ARCHS) +# SRM 1.2 toolchains fail to build wheel pyzmq +REQUIRED_MIN_SRM = 1.3 MAINTAINER = SynoCommunity DESCRIPTION = Salt, a new approach to infrastructure management, is easy enough to get running in minutes, scalable enough to manage tens of thousands of servers, and fast enough to communicate with those servers in seconds. diff --git a/spk/salt-minion/Makefile b/spk/salt-minion/Makefile index 62e1625b4a3..9cad768c0ac 100644 --- a/spk/salt-minion/Makefile +++ b/spk/salt-minion/Makefile @@ -8,6 +8,8 @@ SPK_DEPENDS = "$(PYTHON_PACKAGE)" WHEELS = src/requirements-crossenv.txt src/requirements-pure.txt UNSUPPORTED_ARCHS = $(PPC_ARCHS) $(ARMv5_ARCHS) $(ARMv7L_ARCHS) +# SRM 1.2 toolchains fail to build wheel pyzmq +REQUIRED_MIN_SRM = 1.3 MAINTAINER = SynoCommunity DESCRIPTION = Salt, a new approach to infrastructure management, is easy enough to get running in minutes, scalable enough to manage tens of thousands of servers, and fast enough to communicate with those servers in seconds. From e6934eb6cd8033be626e1e90f643fcab4f86d767 Mon Sep 17 00:00:00 2001 From: hgy59 Date: Sat, 20 Sep 2025 23:54:11 +0200 Subject: [PATCH 08/14] fix python3*-wheels packages for SRM 1.3 - adjust tc_vars.mk generation for SRM 1.3 toolchains having gfortran --- mk/spksrc.tc-flags.mk | 16 +++++++++++++--- mk/spksrc.tc.mk | 4 ++-- 2 files changed, 15 insertions(+), 5 deletions(-) diff --git a/mk/spksrc.tc-flags.mk b/mk/spksrc.tc-flags.mk index 09b1624a199..4de7d1772ca 100644 --- a/mk/spksrc.tc-flags.mk +++ b/mk/spksrc.tc-flags.mk @@ -1,7 +1,17 @@ +# we can't check whether gfortran exists, because toolchain is not yet extracted ifeq ($(strip $(firstword $(subst ., ,$(TC_VERS)))),7) -TOOLS = ld ldshared:"gcc -shared" cpp nm cc:gcc as ranlib cxx:g++ fc:gfortran ar strip objdump objcopy readelf -else +TC_HAS_FORTRAN = 1 +else ifeq ($(strip $(TC_VERS)),1.3) +TC_HAS_FORTRAN = 1 +else ifeq ($(strip $(TC_VERS)),6.2.4) +ifeq ($(findstring $(ARCH),$(x64_ARCHS)),$(ARCH)) +TC_HAS_FORTRAN = 1 +endif +endif + TOOLS = ld ldshared:"gcc -shared" cpp nm cc:gcc as ranlib cxx:g++ ar strip objdump objcopy readelf +ifneq ($(strip $(TC_HAS_FORTRAN)),) +TOOLS += fc:gfortran endif ifeq ($(strip $(TC_NAME)),) @@ -57,7 +67,7 @@ CPPFLAGS += -I$(abspath $(INSTALL_DIR)/$(INSTALL_PREFIX)/include) CXXFLAGS += -I$(abspath $(WORK_DIR)/$(TC_TARGET)/$(TC_INCLUDE)) $(TC_EXTRA_CFLAGS) CXXFLAGS += -I$(abspath $(INSTALL_DIR)/$(INSTALL_PREFIX)/include) -ifeq ($(strip $(firstword $(subst ., ,$(TC_VERS)))),7) +ifneq ($(strip $(TC_HAS_FORTRAN)),) FFLAGS += -I$(abspath $(WORK_DIR)/$(TC_TARGET)/$(TC_INCLUDE)) $(TC_EXTRA_FFLAGS) FFLAGS += -I$(abspath $(INSTALL_DIR)/$(INSTALL_PREFIX)/include) endif diff --git a/mk/spksrc.tc.mk b/mk/spksrc.tc.mk index c983679ec1a..b5d956c2dc8 100644 --- a/mk/spksrc.tc.mk +++ b/mk/spksrc.tc.mk @@ -195,7 +195,7 @@ tc_vars: flag echo TC_ENV += CFLAGS=\"$(CFLAGS) $(GCC_DEBUG) $$\(ADDITIONAL_CFLAGS\)\" ; \ echo TC_ENV += CPPFLAGS=\"$(CPPFLAGS) $(GCC_DEBUG) $$\(ADDITIONAL_CPPFLAGS\)\" ; \ echo TC_ENV += CXXFLAGS=\"$(CXXFLAGS) $(GCC_DEBUG) $$\(ADDITIONAL_CXXFLAGS\)\" ; \ - if [ "$$(printf '%s\n' "7" "$(TC_VERS)" | sort -V | tail -n1)" = "$(TC_VERS)" ]; then \ + if [ -n "$(TC_HAS_FORTRAN)" ]; then \ echo TC_ENV += FFLAGS=\"$(FFLAGS) $(GCC_DEBUG) $$\(ADDITIONAL_FFLAGS\)\" ; \ fi ; \ echo TC_ENV += LDFLAGS=\"$(LDFLAGS) $$\(ADDITIONAL_LDFLAGS\)\" ; \ @@ -215,7 +215,7 @@ tc_vars: flag echo CFLAGS := $(CFLAGS) $(GCC_DEBUG) $$\(ADDITIONAL_CFLAGS\) ; \ echo CPPFLAGS := $(CPPFLAGS) $(GCC_DEBUG) $$\(ADDITIONAL_CPPFLAGS\) ; \ echo CXXFLAGS := $(CXXFLAGS) $(GCC_DEBUG) $$\(ADDITIONAL_CXXFLAGS\) ; \ - if [ "$$(printf '%s\n' "7" "$(TC_VERS)" | sort -V | tail -n1)" = "$(TC_VERS)" ]; then \ + if [ -n "$(TC_HAS_FORTRAN)" ]; then \ echo FFLAGS := $(FFLAGS) $(GCC_DEBUG) $$\(ADDITIONAL_FFLAGS\) ; \ fi ; \ echo LDFLAGS := $(LDFLAGS) $$\(ADDITIONAL_LDFLAGS\) ; \ From cb576c989c813e141a08b3bda70170dfeb913b16 Mon Sep 17 00:00:00 2001 From: hgy59 Date: Sun, 21 Sep 2025 23:38:05 +0200 Subject: [PATCH 09/14] fix synocli-disk for SRM 1.3 - fix cross/libudev_204 - add patch to fix build for newer glibc - add patch to fix cdrom_id.c (globally replacement with sed in post_configure breaks build for SRM 1.3) - adjust cross/libudev_219 - add patch to fix cdrom_id.c (avoid definition of CFLAGS -DSG_FLAG_LUN_INHIBIT=2) - update patch to fix build for newer glibc (was 003-missing-minor-major-x64-dsm72.patch) --- cross/libudev_204/Makefile | 1 - .../patches/002-fix_cdrom_id.patch | 20 +++++++++++ .../patches/003-fix-for-newer-glibc.patch | 35 +++++++++++++++++++ cross/libudev_219/Makefile | 5 +-- .../patches/003-fix-for-newer-glibc.patch | 22 ++++++++++++ .../003-missing-minor-major-x64-dsm72.patch | 17 --------- .../patches/004-fix_cdrom_id.patch | 20 +++++++++++ 7 files changed, 100 insertions(+), 20 deletions(-) create mode 100644 cross/libudev_204/patches/002-fix_cdrom_id.patch create mode 100644 cross/libudev_204/patches/003-fix-for-newer-glibc.patch create mode 100644 cross/libudev_219/patches/003-fix-for-newer-glibc.patch delete mode 100644 cross/libudev_219/patches/003-missing-minor-major-x64-dsm72.patch create mode 100644 cross/libudev_219/patches/004-fix_cdrom_id.patch diff --git a/cross/libudev_204/Makefile b/cross/libudev_204/Makefile index ccb98fad6fe..89ad2fc9637 100644 --- a/cross/libudev_204/Makefile +++ b/cross/libudev_204/Makefile @@ -87,7 +87,6 @@ libudev_post_configure: @$(RUN) sed -i.bak ":1;/lookup_syscall/{n;s/unsigned int/size_t/;b1}" $(WORK_DIR)/$(PKG_DIR)/src/core/syscall-list.c @$(RUN) sed -i.bak -e "/load_fragment_gperf_lookup/s/unsigned/size_t/" $(WORK_DIR)/$(PKG_DIR)/src/core/load-fragment.h @$(RUN) sed -i.bak -e "/logind_gperf_lookup/s/unsigned/size_t/" $(WORK_DIR)/$(PKG_DIR)/src/login/logind.h - @$(RUN) sed -i.bak -e "s/SG_FLAG_LUN_INHIBIT/SG_FLAG_UNUSED_LUN_INHIBIT/g" $(WORK_DIR)/$(PKG_DIR)/src/udev/cdrom_id/cdrom_id.c @$(RUN) sed -i.bak -e "/lookup_key/s/unsigned int/size_t/" $(WORK_DIR)/$(PKG_DIR)/src/udev/keymap/keymap.c @$(RUN) sed -i.bak -e "/mtd-user.h/i\$\\#ifndef u_int32_t\ntypedef unsigned int u_int32_t;\n#endif" -e "/mtd-user.h/a\$\\#include " $(WORK_DIR)/$(PKG_DIR)/src/udev/mtd_probe/mtd_probe.h diff --git a/cross/libudev_204/patches/002-fix_cdrom_id.patch b/cross/libudev_204/patches/002-fix_cdrom_id.patch new file mode 100644 index 00000000000..8179f0849ba --- /dev/null +++ b/cross/libudev_204/patches/002-fix_cdrom_id.patch @@ -0,0 +1,20 @@ +# Most of the toolchains have SG_FLAG_UNUSED_LUN_INHIBIT instead of SG_FLAG_LUN_INHIBIT +# As defined in scsi/sg.h of sysroot includes +# +# Some toolchains have the expected SG_FLAG_LUN_INHIBIT defined, +# so we can't globally replace SG_FLAG_LUN_INHIBIT by SG_FLAG_UNUSED_LUN_INHIBIT +# +--- src/udev/cdrom_id/cdrom_id.c.orig 2013-05-09 13:45:50.000000000 +0000 ++++ src/udev/cdrom_id/cdrom_id.c 2025-09-21 19:46:15.895246924 +0000 +@@ -161,7 +161,11 @@ + cmd->sg_io.mx_sb_len = sizeof(cmd->_sense); + cmd->sg_io.cmdp = cmd->cgc.cmd; + cmd->sg_io.sbp = cmd->_sense.u; ++#if defined(SG_FLAG_LUN_INHIBIT) + cmd->sg_io.flags = SG_FLAG_LUN_INHIBIT | SG_FLAG_DIRECT_IO; ++#else ++ cmd->sg_io.flags = SG_FLAG_UNUSED_LUN_INHIBIT | SG_FLAG_DIRECT_IO; ++#endif + } + + static void scsi_cmd_set(struct udev *udev, struct scsi_cmd *cmd, size_t i, unsigned char arg) diff --git a/cross/libudev_204/patches/003-fix-for-newer-glibc.patch b/cross/libudev_204/patches/003-fix-for-newer-glibc.patch new file mode 100644 index 00000000000..5819a69cf90 --- /dev/null +++ b/cross/libudev_204/patches/003-fix-for-newer-glibc.patch @@ -0,0 +1,35 @@ +# Ensure major(), minor() and makedev() are defined +# Fix for SRM 1.3 having glibc 2.32 +# +# New versions of glibc (since 2.28) and musl (since 1.1.23) actually no longer provide a definition +# of major by including sys/types.h. +# It's a bit unfortunate since on Linux, we now need to include sys/sysmacros.h +# +# Solution based on https://github.com/kristapsdz/openrsync/issues/13#issuecomment-559931285 +# +--- src/libudev/libudev.h.orig 2013-05-09 13:45:50.000000000 +0000 ++++ src/libudev/libudev.h 2025-09-21 18:44:53.459980291 +0000 +@@ -22,6 +22,10 @@ + + #include + #include ++#ifndef major ++// for the case that sys/sysmacros.h is not included within sys/types.h ++#include ++#endif + #include + + #ifdef __cplusplus +--- src/shared/util.h.orig 2013-05-09 13:45:50.000000000 +0000 ++++ src/shared/util.h 2025-09-21 18:53:26.206312863 +0000 +@@ -33,6 +33,10 @@ + #include + #include + #include ++#ifndef major ++// for the case that sys/sysmacros.h is not included within sys/types.h ++#include ++#endif + #include + #include + #include diff --git a/cross/libudev_219/Makefile b/cross/libudev_219/Makefile index 11090d91a43..167d964e57d 100644 --- a/cross/libudev_219/Makefile +++ b/cross/libudev_219/Makefile @@ -76,14 +76,15 @@ CONFIGURE_ARGS += --with-dbuspolicydir=/usr/share/dbus-1/system.d CONFIGURE_ARGS += --with-dbussessionservicedir=/usr/share/dbus-1/services CONFIGURE_ARGS += --with-dbussystemservicedir=/usr/share/dbus-1/system-services -ADDITIONAL_CFLAGS = -DSG_FLAG_LUN_INHIBIT=2 - include ../../mk/spksrc.common.mk # Build fix for aarch64 and x64 for DSM-7.2: # error: static declaration of 'renameat2' follows non-static declaration ifeq ($(call version_ge, $(TCVERSION), 7.2),1) CONFIGURE_ARGS += ac_cv_have_decl_renameat2=yes +else ifeq ($(strip $(TCVERSION)),1.3) +# Same for armv7 and aarch64 for SRM 1.3 (but SRM 1.3 is still on systemd 204): +CONFIGURE_ARGS += ac_cv_have_decl_renameat2=yes endif include ../../mk/spksrc.cross-cc.mk diff --git a/cross/libudev_219/patches/003-fix-for-newer-glibc.patch b/cross/libudev_219/patches/003-fix-for-newer-glibc.patch new file mode 100644 index 00000000000..44053d44b48 --- /dev/null +++ b/cross/libudev_219/patches/003-fix-for-newer-glibc.patch @@ -0,0 +1,22 @@ +# Ensure major(), minor() and makedev() are defined +# Fix for DSM 7.2 having glibc 2.36 and SRM 1.3 having glibc 2.32 +# +# New versions of glibc (since 2.28) and musl (since 1.1.23) actually no longer provide a definition +# of major by including sys/types.h. +# It's a bit unfortunate since on Linux, we now need to include sys/sysmacros.h +# +# Solution based on https://github.com/kristapsdz/openrsync/issues/13#issuecomment-559931285 +# +--- src/shared/macro.h.orig 2015-02-16 20:55:07.000000000 +0000 ++++ src/shared/macro.h 2025-09-21 20:19:43.838878204 +0000 +@@ -24,6 +24,10 @@ + #include + #include + #include ++#ifndef major ++// for the case that sys/sysmacros.h is not included within sys/types.h ++#include ++#endif + #include + #include + diff --git a/cross/libudev_219/patches/003-missing-minor-major-x64-dsm72.patch b/cross/libudev_219/patches/003-missing-minor-major-x64-dsm72.patch deleted file mode 100644 index 239fd422e31..00000000000 --- a/cross/libudev_219/patches/003-missing-minor-major-x64-dsm72.patch +++ /dev/null @@ -1,17 +0,0 @@ -Build fix for x64 (and presumably others) for DSM-7.2. -Has no impacts on DSM-7.1 builds. - - undefined reference to `minor' - undefined reference to `major' - undefined reference to `makedev' - ---- src/shared/macro.h.orig 2015-02-16 20:55:07.000000000 +0000 -+++ src/shared/macro.h 2024-10-01 23:29:07.479848724 +0000 -@@ -23,6 +23,7 @@ - - #include - #include -+#include - #include - #include - #include diff --git a/cross/libudev_219/patches/004-fix_cdrom_id.patch b/cross/libudev_219/patches/004-fix_cdrom_id.patch new file mode 100644 index 00000000000..4dbd25b386d --- /dev/null +++ b/cross/libudev_219/patches/004-fix_cdrom_id.patch @@ -0,0 +1,20 @@ +# Most of the toolchains have SG_FLAG_UNUSED_LUN_INHIBIT instead of SG_FLAG_LUN_INHIBIT +# As defined in scsi/sg.h of sysroot includes +# +# Some toolchains have the expected SG_FLAG_LUN_INHIBIT defined, +# so we can't globally replace SG_FLAG_LUN_INHIBIT by SG_FLAG_UNUSED_LUN_INHIBIT +# +--- src/udev/cdrom_id/cdrom_id.c.orig 2015-02-16 20:55:07.000000000 +0000 ++++ src/udev/cdrom_id/cdrom_id.c 2025-09-21 20:11:45.304492632 +0000 +@@ -147,7 +147,11 @@ + cmd->sg_io.mx_sb_len = sizeof(cmd->_sense); + cmd->sg_io.cmdp = cmd->cgc.cmd; + cmd->sg_io.sbp = cmd->_sense.u; ++#if defined(SG_FLAG_LUN_INHIBIT) + cmd->sg_io.flags = SG_FLAG_LUN_INHIBIT | SG_FLAG_DIRECT_IO; ++#else ++ cmd->sg_io.flags = SG_FLAG_UNUSED_LUN_INHIBIT | SG_FLAG_DIRECT_IO; ++#endif + } + + static void scsi_cmd_set(struct udev *udev, struct scsi_cmd *cmd, size_t i, unsigned char arg) From 3113deb138e220c40fad699570e08e0e209c116e Mon Sep 17 00:00:00 2001 From: hgy59 Date: Sun, 21 Sep 2025 23:52:28 +0200 Subject: [PATCH 10/14] adjust service ports of demoservice and demowebservice - port 8888 is used by Synology SRM - use port 18888 instead of 8888 for demoservice - use port 18889 instead of 8889 for demowebservice (no conflict and not supported on SRM) --- spk/demoservice/Makefile | 8 ++++---- spk/demowebservice/Makefile | 6 +++--- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/spk/demoservice/Makefile b/spk/demoservice/Makefile index 86b7c9af8bb..9661ec4b344 100644 --- a/spk/demoservice/Makefile +++ b/spk/demoservice/Makefile @@ -1,6 +1,6 @@ SPK_NAME = demoservice -SPK_VERS = 1.2 -SPK_REV = 8 +SPK_VERS = 1.3 +SPK_REV = 9 SPK_ICON = src/demoservice.png override ARCH=noarch @@ -8,7 +8,7 @@ override ARCH=noarch MAINTAINER = ymartin59 DESCRIPTION = Demonstration package to show installer script capabilities when requiring non-root user for background service and show configuration/creation of shared folder for package user. DISPLAY_NAME = Demo Service -CHANGELOG = "1. Use redesigned shared folder handling.
2. Fix service command to work on SRM and DSM 5.
3. Use Pyhton 3 when available in path." +CHANGELOG = "1. Use Port 18888 for SRM compatibility." LICENSE = GPLv2 @@ -27,7 +27,7 @@ STARTABLE = yes SERVICE_WIZARD_SHARENAME = wizard_shared_folder_name # Service configuration -SERVICE_PORT = 8888 +SERVICE_PORT = 18888 SERVICE_PORT_TITLE = $(DISPLAY_NAME) (HTTP) SERVICE_DESC = Demo Service Package diff --git a/spk/demowebservice/Makefile b/spk/demowebservice/Makefile index 99ccf6eed62..79e042a7b50 100644 --- a/spk/demowebservice/Makefile +++ b/spk/demowebservice/Makefile @@ -1,6 +1,6 @@ SPK_NAME = demowebservice SPK_VERS = 1.0 -SPK_REV = 1 +SPK_REV = 2 SPK_ICON = src/demowebservice.png DEPENDS = @@ -13,7 +13,7 @@ override ARCH=noarch MAINTAINER = hgy59 DESCRIPTION = Demopackage to show how to create a web service \(web application\) DISPLAY_NAME = Demo Web Service -CHANGELOG = "Initial package release" +CHANGELOG = "Use service port 18889 instead of 8889" LICENSE = MIT @@ -46,7 +46,7 @@ CONF_DIR = src/conf_php$(PHP_VERSION)/ # Disable the creation of app/config file: NO_SERVICE_SHORTCUT = y # create firewall rules, since we add a port based "Web Portal" -SERVICE_PORT = 8889 +SERVICE_PORT = 18889 endif # apache-web dependency is not used: From 410ca6a2cd2db81324c4c2e215fa7736865cc772 Mon Sep 17 00:00:00 2001 From: hgy59 Date: Mon, 22 Sep 2025 16:00:30 +0200 Subject: [PATCH 11/14] fix synocli-monitor for SRM 1.3 and DSM 7.2 - cross/cpulimit: add missing toolchain headers --- cross/cpulimit/Makefile | 9 +++- cross/cpulimit/src/bits/sysctl.h | 1 + cross/cpulimit/src/sys/sysctl.h | 73 ++++++++++++++++++++++++++++++++ 3 files changed, 82 insertions(+), 1 deletion(-) create mode 100644 cross/cpulimit/src/bits/sysctl.h create mode 100644 cross/cpulimit/src/sys/sysctl.h diff --git a/cross/cpulimit/Makefile b/cross/cpulimit/Makefile index 843d4afb293..d1e005dcd60 100644 --- a/cross/cpulimit/Makefile +++ b/cross/cpulimit/Makefile @@ -8,7 +8,7 @@ PKG_DIR = $(PKG_NAME)-$(PKG_VERS)/src DEPENDS = -CONFIGURE_TARGET = nop +CONFIGURE_TARGET = cpulimit_configure INSTALL_TARGET = cpulimit_install HOMEPAGE = https://github.com/opsengine/cpulimit @@ -17,6 +17,13 @@ LICENSE = GPLv2+ include ../../mk/spksrc.cross-cc.mk +.PHONY: cpulimit_configure +cpulimit_configure: + @$(MSG) "Add header files missing in some toolchains (DSM 7.2, SRM 1.3)" + @install -d -m 755 $(STAGING_INSTALL_PREFIX)/include/sys $(STAGING_INSTALL_PREFIX)/include/bits + @install -m 755 src/sys/sysctl.h $(STAGING_INSTALL_PREFIX)/include/sys/ + @install -m 755 src/bits/sysctl.h $(STAGING_INSTALL_PREFIX)/include/bits/ + .PHONY: cpulimit_install cpulimit_install: @install -d -m 755 $(STAGING_INSTALL_PREFIX)/bin/ diff --git a/cross/cpulimit/src/bits/sysctl.h b/cross/cpulimit/src/bits/sysctl.h new file mode 100644 index 00000000000..81447b2f74b --- /dev/null +++ b/cross/cpulimit/src/bits/sysctl.h @@ -0,0 +1 @@ +/* Empty file. */ diff --git a/cross/cpulimit/src/sys/sysctl.h b/cross/cpulimit/src/sys/sysctl.h new file mode 100644 index 00000000000..f646fe87657 --- /dev/null +++ b/cross/cpulimit/src/sys/sysctl.h @@ -0,0 +1,73 @@ +/* Copyright (C) 1996-2017 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +#ifndef _SYS_SYSCTL_H +#define _SYS_SYSCTL_H 1 + +#include +#define __need_size_t +#include +/* Prevent more kernel headers than necessary to be included. */ +#ifndef _LINUX_KERNEL_H +# define _LINUX_KERNEL_H 1 +# define __undef_LINUX_KERNEL_H +#endif +#ifndef _LINUX_TYPES_H +# define _LINUX_TYPES_H 1 +# define __undef_LINUX_TYPES_H +#endif +#ifndef _LINUX_LIST_H +# define _LINUX_LIST_H 1 +# define __undef_LINUX_LIST_H +#endif +#ifndef __LINUX_COMPILER_H +# define __LINUX_COMPILER_H 1 +# define __user +# define __undef__LINUX_COMPILER_H +#endif + +#include + +#ifdef __undef_LINUX_KERNEL_H +# undef _LINUX_KERNEL_H +# undef __undef_LINUX_KERNEL_H +#endif +#ifdef __undef_LINUX_TYPES_H +# undef _LINUX_TYPES_H +# undef __undef_LINUX_TYPES_H +#endif +#ifdef __undef_LINUX_LIST_H +# undef _LINUX_LIST_H +# undef __undef_LINUX_LIST_H +#endif +#ifdef __undef__LINUX_COMPILER_H +# undef __LINUX_COMPILER_H +# undef __user +# undef __undef__LINUX_COMPILER_H +#endif + +#include + +__BEGIN_DECLS + +/* Read or write system parameters. */ +extern int sysctl (int *__name, int __nlen, void *__oldval, + size_t *__oldlenp, void *__newval, size_t __newlen) __THROW; + +__END_DECLS + +#endif /* _SYS_SYSCTL_H */ From ece55ca9bfbfc0d76579d26d4b4c00bca704c6f0 Mon Sep 17 00:00:00 2001 From: hgy59 Date: Mon, 22 Sep 2025 16:24:02 +0200 Subject: [PATCH 12/14] simplify SRM kernel downloads --- mk/spksrc.kernel-flags.mk | 38 +------------------------------------- 1 file changed, 1 insertion(+), 37 deletions(-) diff --git a/mk/spksrc.kernel-flags.mk b/mk/spksrc.kernel-flags.mk index 83ac035e873..333df8ca353 100644 --- a/mk/spksrc.kernel-flags.mk +++ b/mk/spksrc.kernel-flags.mk @@ -123,17 +123,8 @@ endif # else ifeq ($(strip $(TC_TYPE)),SRM) -# -# For SRM version >= 1.3 -# -ifeq ($(shell expr "$(KERNEL_BUILD)" \>= 9346),1) - -ifeq ($(KERNEL_URL_VERSION),) -KERNEL_URL_VERSION = $(KERNEL_VERS) -endif - ifeq ($(strip $(KERNEL_DIST_SITE)),) -KERNEL_DIST_SITE = https://github.com/SynoCommunity/spksrc/releases/download/kernels/srm1.3 +KERNEL_DIST_SITE = https://github.com/SynoCommunity/spksrc/releases/download/kernels/srm$(KERNEL_VERS) endif ifeq ($(strip $(KERNEL_DIST_NAME)),) @@ -152,31 +143,4 @@ ifeq ($(strip $(KERNEL_STRIP)),) KERNEL_STRIP = 0 endif - -# -# For SRM version >= 1.2 -# -else ifeq ($(shell expr "$(KERNEL_BUILD)" \>= 7742),1) - -ifeq ($(strip $(KERNEL_DIST_SITE)),) -KERNEL_DIST_SITE = https://github.com/SynoCommunity/spksrc/releases/download/kernels/srm1.2 -endif - -ifeq ($(strip $(KERNEL_DIST_NAME)),) -KERNEL_DIST_NAME = $(KERNEL_ARCH)-$(KERNEL_DIST).$(KERNEL_EXT) -endif - -ifeq ($(strip $(KERNEL_URL_DIR)),) -KERNEL_URL_DIR = $(KERNEL_ARCH) endif - -ifeq ($(strip $(KERNEL_PREFIX)),) -KERNEL_PREFIX = $(KERNEL_DIST) -endif - -ifeq ($(strip $(KERNEL_STRIP)),) -KERNEL_STRIP = 0 -endif -endif - -endif # For SRM From be1b9170eaa61a184221959639aa782b169c0141 Mon Sep 17 00:00:00 2001 From: hgy59 Date: Mon, 22 Sep 2025 16:27:15 +0200 Subject: [PATCH 13/14] update comment for unsupported synokernel packages --- spk/synokernel-cdrom/Makefile | 5 ++++- spk/synokernel-usbserial/Makefile | 5 ++++- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/spk/synokernel-cdrom/Makefile b/spk/synokernel-cdrom/Makefile index b99b7a4093a..a15b5277333 100644 --- a/spk/synokernel-cdrom/Makefile +++ b/spk/synokernel-cdrom/Makefile @@ -15,8 +15,11 @@ CHANGELOG = "1. Support DSM-7.1 and DSM-7.2" UNSUPPORTED_ARCHS = $(PPC_ARCHS) # archs with kernel 5.x fail to build +# error: Cannot generate ORC metadata for CONFIG_UNWINDER_ORC=y, please install libelf-dev, libelf-devel or elfutils-libelf-devel +# with installation of elfutils and libelf-dev to the development environment, +# it further fails with error: pointer may be used after ‘realloc’ [-Werror=use-after-free] UNSUPPORTED_ARCHS += epyc7002 rtd1619b -# we only have northstar for SRM 1.2, but this fails with: +# we only have ipq806x for SRM 1.2, but this fails with: # /usr/bin/ld: scripts/dtc/dtc-parser.tab.o:(.bss+0x10): multiple definition of `yylloc'; scripts/dtc/dtc-lexer.lex.o:(.bss+0x0): first defined here REQUIRED_MIN_SRM = 1.3 diff --git a/spk/synokernel-usbserial/Makefile b/spk/synokernel-usbserial/Makefile index da3e02d5363..2ecdb67ba37 100644 --- a/spk/synokernel-usbserial/Makefile +++ b/spk/synokernel-usbserial/Makefile @@ -20,8 +20,11 @@ CHANGELOG = "1. Support DSM-7.1 and DSM-7.2" UNSUPPORTED_ARCHS = $(PPC_ARCHS) # archs with kernel 5.x fail to build +# error: Cannot generate ORC metadata for CONFIG_UNWINDER_ORC=y, please install libelf-dev, libelf-devel or elfutils-libelf-devel +# with installation of elfutils and libelf-dev to the development environment, +# it further fails with error: pointer may be used after ‘realloc’ [-Werror=use-after-free] UNSUPPORTED_ARCHS += epyc7002 rtd1619b -# we only have northstar for SRM 1.2, but this fails with: +# we only have ipq806x for SRM 1.2, but this fails with: # /usr/bin/ld: scripts/dtc/dtc-parser.tab.o:(.bss+0x10): multiple definition of `yylloc'; scripts/dtc/dtc-lexer.lex.o:(.bss+0x0): first defined here REQUIRED_MIN_SRM = 1.3 From 4c48d6d5c8daa8010fcaf1ca0097f27a3b4199f1 Mon Sep 17 00:00:00 2001 From: hgy59 Date: Mon, 22 Sep 2025 23:16:14 +0200 Subject: [PATCH 14/14] cross/fuse: fix for DSM 7.2 and SRM 1.3 --- .../patches/003-fix-for-newer-glibc.patch | 42 +++++++++++++++++++ 1 file changed, 42 insertions(+) create mode 100644 cross/fuse/patches/003-fix-for-newer-glibc.patch diff --git a/cross/fuse/patches/003-fix-for-newer-glibc.patch b/cross/fuse/patches/003-fix-for-newer-glibc.patch new file mode 100644 index 00000000000..0d8585a531a --- /dev/null +++ b/cross/fuse/patches/003-fix-for-newer-glibc.patch @@ -0,0 +1,42 @@ +# util/ulockmgr_server.c: conditionally define closefrom (fix glibc-2.34+) +# origin: https://github.com/libfuse/libfuse/pull/619/files +# +--- configure.ac.orig 2019-01-04 13:38:34.000000000 +0000 ++++ configure.ac 2025-09-22 20:50:55.284892241 +0000 +@@ -55,6 +55,7 @@ + + AC_CHECK_FUNCS([fork setxattr fdatasync splice vmsplice utimensat]) + AC_CHECK_FUNCS([posix_fallocate]) ++AC_CHECK_FUNCS([closefrom]) + AC_CHECK_MEMBERS([struct stat.st_atim]) + AC_CHECK_MEMBERS([struct stat.st_atimespec]) + +--- util/ulockmgr_server.c.orig 2019-01-04 13:38:34.000000000 +0000 ++++ util/ulockmgr_server.c 2025-09-22 20:58:31.306592559 +0000 +@@ -22,6 +22,10 @@ + #include + #include + ++#ifdef HAVE_CONFIG_H ++ #include "config.h" ++#endif ++ + struct message { + unsigned intr : 1; + unsigned nofd : 1; +@@ -124,6 +128,7 @@ + return res; + } + ++#if !defined(HAVE_CLOSEFROM) + static int closefrom(int minfd) + { + DIR *dir = opendir("/proc/self/fd"); +@@ -141,6 +146,7 @@ + } + return 0; + } ++#endif + + static void send_reply(int cfd, struct message *msg) + {