summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorXavier Del Campo Romero <xavi92@disroot.org>2025-10-09 23:06:33 +0200
committerXavier Del Campo Romero <xavi92@disroot.org>2025-10-09 23:06:33 +0200
commit8fd6eb263aecc925f661e873cb34d8f5fc9b386a (patch)
tree3b351cf447e976bba5d5d101a26f4b3e40e67724
parent71cdf6c83a48342493761f2de784a10a745ffd19 (diff)
downloadspm-packages-8fd6eb263aecc925f661e873cb34d8f5fc9b386a.tar.gz
slcl-0.4.0: Also build usergen and thumbnail
-rw-r--r--slcl/0.4.0/0001-thumbnail-CMakeLists.txt-Link-ImageMagick-dependenci.patch25
-rw-r--r--slcl/0.4.0/Dockerfile9
2 files changed, 34 insertions, 0 deletions
diff --git a/slcl/0.4.0/0001-thumbnail-CMakeLists.txt-Link-ImageMagick-dependenci.patch b/slcl/0.4.0/0001-thumbnail-CMakeLists.txt-Link-ImageMagick-dependenci.patch
new file mode 100644
index 0000000..3f33448
--- /dev/null
+++ b/slcl/0.4.0/0001-thumbnail-CMakeLists.txt-Link-ImageMagick-dependenci.patch
@@ -0,0 +1,25 @@
+From 6b1878986c8536f41bb1c6ceeb869940bbe156d0 Mon Sep 17 00:00:00 2001
+From: Xavier Del Campo Romero <xavi92@disroot.org>
+Date: Thu, 9 Oct 2025 22:51:27 +0200
+Subject: [PATCH] thumbnail/CMakeLists.txt: Link ImageMagick dependencies
+
+PkgConfig does not return the dependencies for ImageMagick. Therefore,
+when building thumbnail with static libraries, dependencies are also
+required.
+---
+ thumbnail/CMakeLists.txt | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/thumbnail/CMakeLists.txt b/thumbnail/CMakeLists.txt
+index 85e8951..2c6b82d 100644
+--- a/thumbnail/CMakeLists.txt
++++ b/thumbnail/CMakeLists.txt
+@@ -6,4 +6,5 @@ target_compile_definitions(${PROJECT_NAME} PRIVATE _FILE_OFFSET_BITS=64)
+ include(FindPkgConfig)
+ pkg_check_modules(ImageMagick REQUIRED IMPORTED_TARGET ImageMagick)
+ target_link_libraries(${PROJECT_NAME} PRIVATE dynstr PkgConfig::ImageMagick)
++target_link_libraries(PkgConfig::ImageMagick INTERFACE z png jpeg)
+ install(TARGETS ${PROJECT_NAME})
+--
+2.43.0
+
diff --git a/slcl/0.4.0/Dockerfile b/slcl/0.4.0/Dockerfile
index 673e7b4..03f0fa4 100644
--- a/slcl/0.4.0/Dockerfile
+++ b/slcl/0.4.0/Dockerfile
@@ -9,12 +9,19 @@ RUN apk update && apk add \
COPY --from=zlib:1.3.1 /opt/spm/zlib-1.3.1/ /usr/local/
COPY --from=libcjson:1.7.18 /opt/spm/cjson-1.7.18/ /usr/local/
COPY --from=libsodium:1.0.20 /opt/spm/libsodium-1.0.20/ /usr/local/
+COPY --from=libjpeg:9f /opt/spm/libjpeg-9f/ /usr/local/
+COPY --from=libpng:1.6.50 /opt/spm/libpng-1.6.50/ /usr/local/
+COPY --from=libimagemagick:6.9.13-30-jpeg-png /opt/spm/imagemagick-6.9.13-30-jpeg-png /usr/local/
ARG PREFIX=/opt/spm/slcl-0.4.0
RUN git clone --depth 1 -b v0.4.0 --recursive \
https://gitea.privatedns.org/xavi/slcl
+WORKDIR /slcl/patches
+COPY 0001-thumbnail-CMakeLists.txt-Link-ImageMagick-dependenci.patch .
WORKDIR /slcl
+RUN git apply patches/0001-thumbnail-CMakeLists.txt-Link-ImageMagick-dependenci.patch
RUN LDFLAGS='-static -Wl,--gc-sections' cmake -B build \
-DCMAKE_BUILD_TYPE=Release \
+ -DTHUMBNAIL=ON \
-DCMAKE_INSTALL_PREFIX=$PREFIX
RUN cmake --build build -j$(nproc)
RUN cmake --install build
@@ -22,3 +29,5 @@ WORKDIR $PREFIX/bin
RUN strip slcl
FROM scratch
COPY --from=base /opt/spm/slcl-0.4.0/bin/slcl /opt/spm/slcl-0.4.0/bin/slcl
+COPY --from=base /opt/spm/slcl-0.4.0/bin/usergen /opt/spm/slcl-0.4.0/bin/usergen
+COPY --from=base /opt/spm/slcl-0.4.0/bin/thumbnail /opt/spm/slcl-0.4.0/bin/thumbnail