From 3a2687bb714226ab13111cac2149afc660fa70e7 Mon Sep 17 00:00:00 2001 From: Konstantin Pavlov Date: Tue, 17 Oct 2023 16:22:44 -0700 Subject: Packages: added Ubuntu 23.10 "mantic" support. --- pkg/deb/Makefile | 17 ++++++ pkg/deb/Makefile.jsc21 | 71 ++++++++++++++++++++++ pkg/deb/Makefile.python312 | 46 ++++++++++++++ pkg/deb/debian.module/unit.example-jsc21-config | 15 +++++ .../debian.module/unit.example-python3.12-config | 16 +++++ 5 files changed, 165 insertions(+) create mode 100644 pkg/deb/Makefile.jsc21 create mode 100644 pkg/deb/Makefile.python312 create mode 100644 pkg/deb/debian.module/unit.example-jsc21-config create mode 100644 pkg/deb/debian.module/unit.example-python3.12-config (limited to 'pkg/deb') diff --git a/pkg/deb/Makefile b/pkg/deb/Makefile index ce16068d..8bfe6c19 100644 --- a/pkg/deb/Makefile +++ b/pkg/deb/Makefile @@ -19,6 +19,23 @@ BUILD_DEPENDS = $(BUILD_DEPENDS_unit) MODULES= +# Ubuntu 23.10 +ifeq ($(CODENAME),mantic) +include Makefile.php +include Makefile.python311 +include Makefile.python312 +include Makefile.go +include Makefile.perl +include Makefile.ruby +include Makefile.jsc-common +include Makefile.jsc11 +include Makefile.jsc17 +include Makefile.jsc19 +include Makefile.jsc20 +include Makefile.jsc21 +include Makefile.wasm +endif + # Ubuntu 23.04 ifeq ($(CODENAME),lunar) include Makefile.php diff --git a/pkg/deb/Makefile.jsc21 b/pkg/deb/Makefile.jsc21 new file mode 100644 index 00000000..82e7f9a2 --- /dev/null +++ b/pkg/deb/Makefile.jsc21 @@ -0,0 +1,71 @@ +MODULES+= jsc21 +MODULE_SUFFIX_jsc21= jsc21 + +MODULE_SUMMARY_jsc21= Java 21 module for NGINX Unit + +MODULE_VERSION_jsc21= $(VERSION) +MODULE_RELEASE_jsc21= 1 + +MODULE_CONFARGS_jsc21= java --module=java21 --home=/usr/lib/jvm/java-21-openjdk-$$\(DEB_HOST_ARCH\) --jars=/usr/share/unit-jsc-common/ +MODULE_MAKEARGS_jsc21= java21 +MODULE_INSTARGS_jsc21= java21-install + +MODULE_SOURCES_jsc21= unit.example-jsc-app \ + unit.example-jsc21-config + +BUILD_DEPENDS_jsc21= openjdk-21-jdk-headless openjdk-21-jre-headless +BUILD_DEPENDS+= $(BUILD_DEPENDS_jsc21) + +MODULE_BUILD_DEPENDS_jsc21=,openjdk-21-jdk-headless +MODULE_DEPENDS_jsc21=,openjdk-21-jre-headless,unit-jsc-common (= $(MODULE_VERSION_jsc_common)-$(MODULE_RELEASE_jsc_common)~$(CODENAME)) + +define MODULE_PREINSTALL_jsc21 + mkdir -p debian/unit-jsc21/usr/share/doc/unit-jsc21/examples/jsc-app + install -m 644 -p debian/unit.example-jsc-app debian/unit-jsc21/usr/share/doc/unit-jsc21/examples/jsc-app/index.jsp + install -m 644 -p debian/unit.example-jsc21-config debian/unit-jsc21/usr/share/doc/unit-jsc21/examples/unit.config + install -m 644 -p src/java/README.JSR-340 debian/unit-jsc21/usr/share/doc/unit-jsc21/ +endef +export MODULE_PREINSTALL_jsc21 + +define MODULE_POSTINSTALL_jsc21 + cd $$\(BUILDDIR_unit\) \&\& \ + DESTDIR=$$\(INSTALLDIR\) make java-shared-uninstall +endef +export MODULE_POSTINSTALL_jsc21 + +define MODULE_POST_jsc21 +cat < Date: Tue, 30 Jan 2024 09:14:39 +0000 Subject: Updated copyright notice. --- pkg/deb/debian.module/copyright.unit-jsc11 | 18 ++++++++++++------ pkg/deb/debian.module/copyright.unit-jsc8 | 18 ++++++++++++------ pkg/deb/debian/copyright | 18 ++++++++++++------ 3 files changed, 36 insertions(+), 18 deletions(-) (limited to 'pkg/deb') diff --git a/pkg/deb/debian.module/copyright.unit-jsc11 b/pkg/deb/debian.module/copyright.unit-jsc11 index e11b64d3..6e512e86 100644 --- a/pkg/deb/debian.module/copyright.unit-jsc11 +++ b/pkg/deb/debian.module/copyright.unit-jsc11 @@ -1,13 +1,19 @@ NGINX Unit. - Copyright 2017-2023 NGINX, Inc. - Copyright 2017-2023 Andrei Zeliankou - Copyright 2018-2023 Konstantin Pavlov - Copyright 2021-2023 Zhidao Hong + Copyright 2017-2024 NGINX, Inc. + Copyright 2017-2024 Andrei Zeliankou + Copyright 2018-2024 Konstantin Pavlov + Copyright 2021-2024 Zhidao Hong + Copyright 2022-2024 Andrew Clayton + Copyright 2022-2024 Liam Crilly + Copyright 2023-2024 Dan Callahan + Copyright 2023-2024 Danielle De Leo + Copyright 2023-2024 Dylan Arbour + Copyright 2023-2024 Gabor Javorszky + Copyright 2023-2024 Igor Ippolitov + Copyright 2023-2024 Taryn Musgrave Copyright 2021-2023 Alejandro Colomar - Copyright 2022-2023 Andrew Clayton - Copyright 2022-2023 Liam Crilly Copyright 2017-2022 Valentin V. Bartenev Copyright 2017-2022 Max Romanov Copyright 2021-2022 Oisín Canty diff --git a/pkg/deb/debian.module/copyright.unit-jsc8 b/pkg/deb/debian.module/copyright.unit-jsc8 index 1d267021..60da2dfa 100644 --- a/pkg/deb/debian.module/copyright.unit-jsc8 +++ b/pkg/deb/debian.module/copyright.unit-jsc8 @@ -1,13 +1,19 @@ NGINX Unit. - Copyright 2017-2023 NGINX, Inc. - Copyright 2017-2023 Andrei Zeliankou - Copyright 2018-2023 Konstantin Pavlov - Copyright 2021-2023 Zhidao Hong + Copyright 2017-2024 NGINX, Inc. + Copyright 2017-2024 Andrei Zeliankou + Copyright 2018-2024 Konstantin Pavlov + Copyright 2021-2024 Zhidao Hong + Copyright 2022-2024 Andrew Clayton + Copyright 2022-2024 Liam Crilly + Copyright 2023-2024 Dan Callahan + Copyright 2023-2024 Danielle De Leo + Copyright 2023-2024 Dylan Arbour + Copyright 2023-2024 Gabor Javorszky + Copyright 2023-2024 Igor Ippolitov + Copyright 2023-2024 Taryn Musgrave Copyright 2021-2023 Alejandro Colomar - Copyright 2022-2023 Andrew Clayton - Copyright 2022-2023 Liam Crilly Copyright 2017-2022 Valentin V. Bartenev Copyright 2017-2022 Max Romanov Copyright 2021-2022 Oisín Canty diff --git a/pkg/deb/debian/copyright b/pkg/deb/debian/copyright index 692ae2e0..dbc37146 100644 --- a/pkg/deb/debian/copyright +++ b/pkg/deb/debian/copyright @@ -1,13 +1,19 @@ NGINX Unit. - Copyright 2017-2023 NGINX, Inc. - Copyright 2017-2023 Andrei Zeliankou - Copyright 2018-2023 Konstantin Pavlov - Copyright 2021-2023 Zhidao Hong + Copyright 2017-2024 NGINX, Inc. + Copyright 2017-2024 Andrei Zeliankou + Copyright 2018-2024 Konstantin Pavlov + Copyright 2021-2024 Zhidao Hong + Copyright 2022-2024 Andrew Clayton + Copyright 2022-2024 Liam Crilly + Copyright 2023-2024 Dan Callahan + Copyright 2023-2024 Danielle De Leo + Copyright 2023-2024 Dylan Arbour + Copyright 2023-2024 Gabor Javorszky + Copyright 2023-2024 Igor Ippolitov + Copyright 2023-2024 Taryn Musgrave Copyright 2021-2023 Alejandro Colomar - Copyright 2022-2023 Andrew Clayton - Copyright 2022-2023 Liam Crilly Copyright 2017-2022 Valentin V. Bartenev Copyright 2017-2022 Max Romanov Copyright 2021-2022 Oisín Canty -- cgit From 3f805bc64e287e8fa06d82c0e3c0904f0173dafe Mon Sep 17 00:00:00 2001 From: Konstantin Pavlov Date: Wed, 21 Feb 2024 16:40:43 -0800 Subject: Packages: added wasm-wasi-component module packaging for deb-based distros We need to redefine CFLAGS to drop missing-prototypes as warning since third-party code such as wasmtime fails to build from source when building a debian package. This happens only for packages because we use DPKG_EXPORT_BUILDFLAGS=1 propagating build flags to the environment, so cargo build picks it up as well. Since we have no control over third-party code, the easiest solution is to disable this warning. --- pkg/deb/Makefile.wasm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'pkg/deb') diff --git a/pkg/deb/Makefile.wasm b/pkg/deb/Makefile.wasm index da028f19..9e408fda 100644 --- a/pkg/deb/Makefile.wasm +++ b/pkg/deb/Makefile.wasm @@ -6,9 +6,9 @@ MODULE_SUMMARY_wasm= WASM module for NGINX Unit MODULE_VERSION_wasm= $(VERSION) MODULE_RELEASE_wasm= 1 -MODULE_CONFARGS_wasm= wasm --include-path=\$$(CURDIR)/pkg/contrib/wasmtime/crates/c-api/include --lib-path=\$$(CURDIR)/pkg/contrib/wasmtime/target/release -MODULE_MAKEARGS_wasm= wasm -MODULE_INSTARGS_wasm= wasm-install +MODULE_CONFARGS_wasm= wasm --include-path=\$$(CURDIR)/pkg/contrib/wasmtime/crates/c-api/include --lib-path=\$$(CURDIR)/pkg/contrib/wasmtime/target/release \&\& ./configure wasm-wasi-component +MODULE_MAKEARGS_wasm= wasm wasm-wasi-component CFLAGS='\$$(CFLAGS) -Wno-missing-prototypes' +MODULE_INSTARGS_wasm= wasm-install wasm-wasi-component-install CFLAGS='\$$(CFLAGS) -Wno-missing-prototypes' MODULE_SOURCES_wasm= -- cgit From faa7e792428265a7c72ff0c692f31c04932d7dc0 Mon Sep 17 00:00:00 2001 From: Konstantin Pavlov Date: Thu, 22 Feb 2024 14:12:51 -0800 Subject: Packages: Pass CFLAGS to compile wasm modules on all packaging targets This extends the approach used for debian-based packages in 3f805bc64e28 to rpm as well. Notable change for both deb and rpm packaging is to use CFLAGS as defined in the build/Makefile, and not pass them from the environment which might not be there (as is the case for rpm). While at it, stop passing CFLAGS in the install phase, as it should no longer invoke builds (see d54af163c46b). The rpm part was overlooked in 7a6405566c0, since testing was not done on the platforms where problem manifested itself, notably Amazon Linux 2023 and Fedora 38+. --- pkg/deb/Makefile.wasm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'pkg/deb') diff --git a/pkg/deb/Makefile.wasm b/pkg/deb/Makefile.wasm index 9e408fda..8f3fdc67 100644 --- a/pkg/deb/Makefile.wasm +++ b/pkg/deb/Makefile.wasm @@ -7,8 +7,8 @@ MODULE_VERSION_wasm= $(VERSION) MODULE_RELEASE_wasm= 1 MODULE_CONFARGS_wasm= wasm --include-path=\$$(CURDIR)/pkg/contrib/wasmtime/crates/c-api/include --lib-path=\$$(CURDIR)/pkg/contrib/wasmtime/target/release \&\& ./configure wasm-wasi-component -MODULE_MAKEARGS_wasm= wasm wasm-wasi-component CFLAGS='\$$(CFLAGS) -Wno-missing-prototypes' -MODULE_INSTARGS_wasm= wasm-install wasm-wasi-component-install CFLAGS='\$$(CFLAGS) -Wno-missing-prototypes' +MODULE_MAKEARGS_wasm= wasm wasm-wasi-component CFLAGS=\"\$$(shell grep ^CFLAGS \$$(BUILDDIR_\$$*)/build/Makefile | cut -d' ' -f 3-) -Wno-missing-prototypes\" +MODULE_INSTARGS_wasm= wasm-install wasm-wasi-component-install MODULE_SOURCES_wasm= -- cgit