Skip to content

Commit fa27d03

Browse files
authored
SRM enhancements (#6717)
* SRM: fix REQUIRED_MIN_SRM - prevent to compare SRM version with REQUIRED_MIN_DSM version * 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) * 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) * 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 * add SRM 1.2 kernels from synocommunity releases * synokernel packages are not supported on SRM 1.2 * additional REQUIRED_MIN_SRM definitions * fix python3*-wheels packages for SRM 1.3 - adjust tc_vars.mk generation for SRM 1.3 toolchains having gfortran * 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) * 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) * fix synocli-monitor for SRM 1.3 and DSM 7.2 - cross/cpulimit: add missing toolchain headers * simplify SRM kernel downloads * update comment for unsupported synokernel packages * cross/fuse: fix for DSM 7.2 and SRM 1.3 * revert unrelated changes * kavita: adjust Makefile comments
1 parent 6ab3b48 commit fa27d03

File tree

93 files changed

+445
-95
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

93 files changed

+445
-95
lines changed

cross/bind_9.20/Makefile

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ DEPENDS += cross/libcap
2222
# needs C11 with some C17 features
2323
REQUIRED_MIN_DSM = 7.0
2424
UNSUPPORTED_ARCHS = comcerto2k
25+
REQUIRED_MIN_SRM = 1.3
2526

2627

2728
HOMEPAGE = https://www.isc.org/

cross/cpulimit/Makefile

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ PKG_DIR = $(PKG_NAME)-$(PKG_VERS)/src
88

99
DEPENDS =
1010

11-
CONFIGURE_TARGET = nop
11+
CONFIGURE_TARGET = cpulimit_configure
1212
INSTALL_TARGET = cpulimit_install
1313

1414
HOMEPAGE = https://github.com/opsengine/cpulimit
@@ -17,6 +17,13 @@ LICENSE = GPLv2+
1717

1818
include ../../mk/spksrc.cross-cc.mk
1919

20+
.PHONY: cpulimit_configure
21+
cpulimit_configure:
22+
@$(MSG) "Add header files missing in some toolchains (DSM 7.2, SRM 1.3)"
23+
@install -d -m 755 $(STAGING_INSTALL_PREFIX)/include/sys $(STAGING_INSTALL_PREFIX)/include/bits
24+
@install -m 755 src/sys/sysctl.h $(STAGING_INSTALL_PREFIX)/include/sys/
25+
@install -m 755 src/bits/sysctl.h $(STAGING_INSTALL_PREFIX)/include/bits/
26+
2027
.PHONY: cpulimit_install
2128
cpulimit_install:
2229
@install -d -m 755 $(STAGING_INSTALL_PREFIX)/bin/

cross/cpulimit/src/bits/sysctl.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
/* Empty file. */

cross/cpulimit/src/sys/sysctl.h

Lines changed: 73 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,73 @@
1+
/* Copyright (C) 1996-2017 Free Software Foundation, Inc.
2+
This file is part of the GNU C Library.
3+
4+
The GNU C Library is free software; you can redistribute it and/or
5+
modify it under the terms of the GNU Lesser General Public
6+
License as published by the Free Software Foundation; either
7+
version 2.1 of the License, or (at your option) any later version.
8+
9+
The GNU C Library is distributed in the hope that it will be useful,
10+
but WITHOUT ANY WARRANTY; without even the implied warranty of
11+
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12+
Lesser General Public License for more details.
13+
14+
You should have received a copy of the GNU Lesser General Public
15+
License along with the GNU C Library; if not, see
16+
<http://www.gnu.org/licenses/>. */
17+
18+
#ifndef _SYS_SYSCTL_H
19+
#define _SYS_SYSCTL_H 1
20+
21+
#include <features.h>
22+
#define __need_size_t
23+
#include <stddef.h>
24+
/* Prevent more kernel headers than necessary to be included. */
25+
#ifndef _LINUX_KERNEL_H
26+
# define _LINUX_KERNEL_H 1
27+
# define __undef_LINUX_KERNEL_H
28+
#endif
29+
#ifndef _LINUX_TYPES_H
30+
# define _LINUX_TYPES_H 1
31+
# define __undef_LINUX_TYPES_H
32+
#endif
33+
#ifndef _LINUX_LIST_H
34+
# define _LINUX_LIST_H 1
35+
# define __undef_LINUX_LIST_H
36+
#endif
37+
#ifndef __LINUX_COMPILER_H
38+
# define __LINUX_COMPILER_H 1
39+
# define __user
40+
# define __undef__LINUX_COMPILER_H
41+
#endif
42+
43+
#include <linux/sysctl.h>
44+
45+
#ifdef __undef_LINUX_KERNEL_H
46+
# undef _LINUX_KERNEL_H
47+
# undef __undef_LINUX_KERNEL_H
48+
#endif
49+
#ifdef __undef_LINUX_TYPES_H
50+
# undef _LINUX_TYPES_H
51+
# undef __undef_LINUX_TYPES_H
52+
#endif
53+
#ifdef __undef_LINUX_LIST_H
54+
# undef _LINUX_LIST_H
55+
# undef __undef_LINUX_LIST_H
56+
#endif
57+
#ifdef __undef__LINUX_COMPILER_H
58+
# undef __LINUX_COMPILER_H
59+
# undef __user
60+
# undef __undef__LINUX_COMPILER_H
61+
#endif
62+
63+
#include <bits/sysctl.h>
64+
65+
__BEGIN_DECLS
66+
67+
/* Read or write system parameters. */
68+
extern int sysctl (int *__name, int __nlen, void *__oldval,
69+
size_t *__oldlenp, void *__newval, size_t __newlen) __THROW;
70+
71+
__END_DECLS
72+
73+
#endif /* _SYS_SYSCTL_H */

cross/elfutils/Makefile

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ COMMENT = elfutils is a collection of utilities and libraries to read, create a
1212
LICENSE = GPL
1313

1414
REQUIRED_MIN_DSM = 7.0
15+
REQUIRED_MIN_SRM = 1.3
1516

1617
GNU_CONFIGURE = 1
1718
CONFIGURE_ARGS = --disable-libdebuginfod

cross/frei0r/Makefile

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,8 @@ LICENSE = GPL-2.0
1414

1515
REQUIRED_MIN_DSM = 7
1616
UNSUPPORTED_ARCHS = $(ARMv5_ARCHS) $(OLD_PPC_ARCHS) comcerto2k
17+
REQUIRED_MIN_SRM = 1.3
18+
1719
CMAKE_USE_TOOLCHAIN_FILE = OFF
1820

1921
CMAKE_ARGS = -DCMAKE_BUILD_TYPE=Release
Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
# util/ulockmgr_server.c: conditionally define closefrom (fix glibc-2.34+)
2+
# origin: https://github.com/libfuse/libfuse/pull/619/files
3+
#
4+
--- configure.ac.orig 2019-01-04 13:38:34.000000000 +0000
5+
+++ configure.ac 2025-09-22 20:50:55.284892241 +0000
6+
@@ -55,6 +55,7 @@
7+
8+
AC_CHECK_FUNCS([fork setxattr fdatasync splice vmsplice utimensat])
9+
AC_CHECK_FUNCS([posix_fallocate])
10+
+AC_CHECK_FUNCS([closefrom])
11+
AC_CHECK_MEMBERS([struct stat.st_atim])
12+
AC_CHECK_MEMBERS([struct stat.st_atimespec])
13+
14+
--- util/ulockmgr_server.c.orig 2019-01-04 13:38:34.000000000 +0000
15+
+++ util/ulockmgr_server.c 2025-09-22 20:58:31.306592559 +0000
16+
@@ -22,6 +22,10 @@
17+
#include <sys/socket.h>
18+
#include <sys/wait.h>
19+
20+
+#ifdef HAVE_CONFIG_H
21+
+ #include "config.h"
22+
+#endif
23+
+
24+
struct message {
25+
unsigned intr : 1;
26+
unsigned nofd : 1;
27+
@@ -124,6 +128,7 @@
28+
return res;
29+
}
30+
31+
+#if !defined(HAVE_CLOSEFROM)
32+
static int closefrom(int minfd)
33+
{
34+
DIR *dir = opendir("/proc/self/fd");
35+
@@ -141,6 +146,7 @@
36+
}
37+
return 0;
38+
}
39+
+#endif
40+
41+
static void send_reply(int cfd, struct message *msg)
42+
{

cross/gotify-cli/Makefile

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ PKG_NAME = gotify-cli
22
PKG_VERS = 2.2.1
33
PKG_DIST_NAME = gotify-cli-linux-$(PKG_DIST_ARCH)
44
PKG_DIST_SITE = https://github.com/gotify/cli/releases/download/v$(PKG_VERS)
5+
PKG_DIST_FILE = gotify-cli-$(PKG_VERS)-linux-$(PKG_DIST_ARCH)
56

67
UNSUPPORTED_ARCHS = $(PPC_ARCHS) $(ARMv5_ARCHS) $(ARMv7L_ARCHS)
78

cross/gotify-cli/digests

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
1-
gotify-cli-linux-amd64 SHA1 6c10faffd271c6cf0cb0d3df4ed2e2ad8db83c06
2-
gotify-cli-linux-amd64 SHA256 970b2ffdc71083574f4d2e5a6a4862b0299929ac66c5a54113fff4ad3d52ce1b
3-
gotify-cli-linux-amd64 MD5 d143326d6c44b6b9d6a91d298692233c
4-
gotify-cli-linux-386 SHA1 f71f2655da225e1299bcc2a46618b7f7f54b739f
5-
gotify-cli-linux-386 SHA256 c49482834e80de2dc7f72e1a86f75e646c91645bb31329c4059544857d517e84
6-
gotify-cli-linux-386 MD5 e954c6561f9da14af5bee015a2d31436
7-
gotify-cli-linux-arm-7 SHA1 4d5402f1a056694aa5d5e00e34353ea97b3f369f
8-
gotify-cli-linux-arm-7 SHA256 d0dba4f453598d37fed7908d264c47498d1b8c808f5cb935bf5969f2e01696c8
9-
gotify-cli-linux-arm-7 MD5 7ddec0568603d55b73ac47d1dfb3c6f6
10-
gotify-cli-linux-arm64 SHA1 7317966c057bf7b9f5eab900faf8bf6b4b767538
11-
gotify-cli-linux-arm64 SHA256 e44c0dbf84bc1fb2f58da547065a569d45300cf1d11d4e46ecdeb99ef6a00e54
12-
gotify-cli-linux-arm64 MD5 035493ff0e52450ca565f12cdd560ca7
1+
gotify-cli-2.2.1-linux-amd64 SHA1 6c10faffd271c6cf0cb0d3df4ed2e2ad8db83c06
2+
gotify-cli-2.2.1-linux-amd64 SHA256 970b2ffdc71083574f4d2e5a6a4862b0299929ac66c5a54113fff4ad3d52ce1b
3+
gotify-cli-2.2.1-linux-amd64 MD5 d143326d6c44b6b9d6a91d298692233c
4+
gotify-cli-2.2.1-linux-386 SHA1 f71f2655da225e1299bcc2a46618b7f7f54b739f
5+
gotify-cli-2.2.1-linux-386 SHA256 c49482834e80de2dc7f72e1a86f75e646c91645bb31329c4059544857d517e84
6+
gotify-cli-2.2.1-linux-386 MD5 e954c6561f9da14af5bee015a2d31436
7+
gotify-cli-2.2.1-linux-arm-7 SHA1 4d5402f1a056694aa5d5e00e34353ea97b3f369f
8+
gotify-cli-2.2.1-linux-arm-7 SHA256 d0dba4f453598d37fed7908d264c47498d1b8c808f5cb935bf5969f2e01696c8
9+
gotify-cli-2.2.1-linux-arm-7 MD5 7ddec0568603d55b73ac47d1dfb3c6f6
10+
gotify-cli-2.2.1-linux-arm64 SHA1 7317966c057bf7b9f5eab900faf8bf6b4b767538
11+
gotify-cli-2.2.1-linux-arm64 SHA256 e44c0dbf84bc1fb2f58da547065a569d45300cf1d11d4e46ecdeb99ef6a00e54
12+
gotify-cli-2.2.1-linux-arm64 MD5 035493ff0e52450ca565f12cdd560ca7

cross/gotify-server/Makefile

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ PKG_VERS = 2.1.4
33
PKG_EXT = zip
44
PKG_DIST_NAME = gotify-linux-$(PKG_DIST_ARCH).$(PKG_EXT)
55
PKG_DIST_SITE = https://github.com/gotify/server/releases/download/v$(PKG_VERS)
6+
PKG_DIST_FILE = gotify-$(PKG_VERS)-linux-$(PKG_DIST_ARCH).$(PKG_EXT)
67

78
UNSUPPORTED_ARCHS = $(PPC_ARCHS) $(ARMv5_ARCHS) $(ARMv7L_ARCHS)
89

0 commit comments

Comments
 (0)