Merge remote-tracking branch 'origin/lance/qemu' into staging
This commit is contained in:
commit
42d06a89e8
90 changed files with 5187 additions and 32 deletions
36
packages/acl/Containerfile
Normal file
36
packages/acl/Containerfile
Normal file
|
@ -0,0 +1,36 @@
|
|||
FROM scratch AS base
|
||||
ARG ARCH=x86_64
|
||||
ENV VERSION=2.3.2
|
||||
ENV SRC_HASH=5f2bdbad629707aa7d85c623f994aa8a1d2dec55a73de5205bac0bf6058a2f7c
|
||||
ENV SRC_FILE=acl-${VERSION}.tar.gz
|
||||
ENV SRC_SITE=https://download.savannah.nongnu.org/releases/acl/${SRC_FILE}
|
||||
|
||||
FROM base AS fetch
|
||||
ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE}
|
||||
|
||||
FROM fetch AS build
|
||||
COPY --from=stagex/musl . /
|
||||
COPY --from=stagex/gcc . /
|
||||
COPY --from=stagex/busybox . /
|
||||
COPY --from=stagex/binutils . /
|
||||
COPY --from=stagex/make . /
|
||||
COPY --from=stagex/attr . /
|
||||
RUN tar -xf ${SRC_FILE}
|
||||
WORKDIR acl-${VERSION}
|
||||
RUN --network=none <<-EOF
|
||||
set -eux
|
||||
./configure \
|
||||
--build=${ARCH}-linux-musl \
|
||||
--host=${ARCH}-linux-musl \
|
||||
--prefix=/usr \
|
||||
--libdir=/usr/lib \
|
||||
--libexecdir=/usr/libexec
|
||||
make -j "$(nproc)"
|
||||
EOF
|
||||
|
||||
FROM build AS install
|
||||
RUN make DESTDIR=/rootfs install
|
||||
RUN find /rootfs -exec touch -hcd "@0" "{}" +
|
||||
|
||||
FROM stagex/filesystem AS package
|
||||
COPY --from=install /rootfs/. /
|
41
packages/alsa-lib/Containerfile
Normal file
41
packages/alsa-lib/Containerfile
Normal file
|
@ -0,0 +1,41 @@
|
|||
FROM scratch AS base
|
||||
ENV VERSION=1.2.12
|
||||
ENV SRC_HASH=4868cd908627279da5a634f468701625be8cc251d84262c7e5b6a218391ad0d2
|
||||
ENV SRC_FILE=alsa-lib-${VERSION}.tar.bz2
|
||||
ENV SRC_SITE=https://alsa-project.org/files/pub/lib/${SRC_FILE}
|
||||
|
||||
FROM base AS fetch
|
||||
ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} .
|
||||
|
||||
FROM fetch AS build
|
||||
COPY --from=stagex/busybox . /
|
||||
COPY --from=stagex/gcc . /
|
||||
COPY --from=stagex/binutils . /
|
||||
COPY --from=stagex/linux-headers . /
|
||||
COPY --from=stagex/make . /
|
||||
COPY --from=stagex/musl . /
|
||||
RUN tar -xf ${SRC_FILE}
|
||||
WORKDIR alsa-lib-${VERSION}
|
||||
RUN --network=none <<-EOF
|
||||
set -eux; \
|
||||
./configure \
|
||||
--build=x86_64-linux-musl \
|
||||
--host=x86_64-linux-musl \
|
||||
--prefix=/usr \
|
||||
--libdir=/usr/lib \
|
||||
--disable-python \
|
||||
--disable-static \
|
||||
--disable-resmgr \
|
||||
--enable-rawmidi \
|
||||
--enable-seq \
|
||||
--enable-aload \
|
||||
--disable-dependency-tracking \
|
||||
--without-versioned
|
||||
make -j "$(nproc)"
|
||||
EOF
|
||||
|
||||
FROM build AS install
|
||||
RUN --network=none make DESTDIR=/rootfs install
|
||||
|
||||
FROM stagex/filesystem AS package
|
||||
COPY --from=install /rootfs/. /
|
53
packages/apr-util/Containerfile
Normal file
53
packages/apr-util/Containerfile
Normal file
|
@ -0,0 +1,53 @@
|
|||
FROM scratch AS base
|
||||
ARG ARCH=x86_64
|
||||
ENV VERSION=1.6.3
|
||||
ENV SRC_HASH=a41076e3710746326c3945042994ad9a4fcac0ce0277dd8fea076fec3c9772b5
|
||||
ENV SRC_FILE=apr-util-${VERSION}.tar.bz2
|
||||
ENV SRC_SITE=https://www.apache.org/dist/apr/${SRC_FILE}
|
||||
|
||||
FROM base AS fetch
|
||||
ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE}
|
||||
|
||||
FROM fetch AS build
|
||||
COPY --from=stagex/musl . /
|
||||
COPY --from=stagex/gcc . /
|
||||
COPY --from=stagex/busybox . /
|
||||
COPY --from=stagex/binutils . /
|
||||
COPY --from=stagex/make . /
|
||||
COPY --from=stagex/expat . /
|
||||
COPY --from=stagex/gdbm . /
|
||||
COPY --from=stagex/openldap . /
|
||||
COPY --from=stagex/sqlite3 . /
|
||||
COPY --from=stagex/openssl . /
|
||||
COPY --from=stagex/postgresql . /
|
||||
COPY --from=stagex/apr . /
|
||||
COPY --from=stagex/libtool . /
|
||||
COPY --from=stagex/util-linux . /
|
||||
|
||||
RUN tar -xf ${SRC_FILE}
|
||||
WORKDIR apr-util-${VERSION}
|
||||
COPY *.patch .
|
||||
RUN --network=none <<-EOF
|
||||
set -eux
|
||||
patch -p1 < musl-fix-testsuite.patch
|
||||
./configure \
|
||||
--prefix=/usr \
|
||||
--with-apr=/usr \
|
||||
--with-ldap \
|
||||
--with-pgsql \
|
||||
--with-mysql \
|
||||
--with-sqlite3 \
|
||||
--with-crypto \
|
||||
--with-openssl \
|
||||
--without-sqlite2 \
|
||||
--with-dbm=ndbm \
|
||||
--with-ndbm
|
||||
make -j "$(nproc)"
|
||||
EOF
|
||||
|
||||
FROM build AS install
|
||||
RUN make DESTDIR=/rootfs install
|
||||
RUN find /rootfs -exec touch -hcd "@0" "{}" +
|
||||
|
||||
FROM stagex/filesystem AS package
|
||||
COPY --from=install /rootfs/. /
|
19
packages/apr-util/musl-fix-testsuite.patch
Normal file
19
packages/apr-util/musl-fix-testsuite.patch
Normal file
|
@ -0,0 +1,19 @@
|
|||
diff --git a/test/testxlate.c b/test/testxlate.c
|
||||
index 6981eff..de00fa4 100644
|
||||
--- a/test/testxlate.c
|
||||
+++ b/test/testxlate.c
|
||||
@@ -116,8 +116,12 @@ static void test_transformation(abts_case *tc, void *data)
|
||||
}
|
||||
|
||||
/* 4. Transformation using charset aliases */
|
||||
- one_test(tc, "UTF-8", "UTF-7", test_utf8, test_utf7, p);
|
||||
- one_test(tc, "UTF-7", "UTF-8", test_utf7, test_utf8, p);
|
||||
+ if (is_transform_supported(tc, "UTF-8", "UTF-7", p)) {
|
||||
+ one_test(tc, "UTF-8", "UTF-7", test_utf8, test_utf7, p);
|
||||
+ }
|
||||
+ if (is_transform_supported(tc, "UTF-7", "UTF-8", p)) {
|
||||
+ one_test(tc, "UTF-7", "UTF-8", test_utf7, test_utf8, p);
|
||||
+ }
|
||||
}
|
||||
|
||||
#endif /* APR_HAS_XLATE */
|
38
packages/apr/Containerfile
Normal file
38
packages/apr/Containerfile
Normal file
|
@ -0,0 +1,38 @@
|
|||
FROM scratch AS base
|
||||
ARG ARCH=x86_64
|
||||
ENV VERSION=1.7.4
|
||||
ENV SRC_HASH=fc648de983f3a2a6c9e78dea1f180639bd2fad6c06d556d4367a701fe5c35577
|
||||
ENV SRC_FILE=apr-${VERSION}.tar.bz2
|
||||
ENV SRC_SITE=https://www.apache.org/dist/apr/${SRC_FILE}
|
||||
|
||||
FROM base AS fetch
|
||||
ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE}
|
||||
|
||||
FROM fetch AS build
|
||||
COPY --from=stagex/musl . /
|
||||
COPY --from=stagex/gcc . /
|
||||
COPY --from=stagex/busybox . /
|
||||
COPY --from=stagex/binutils . /
|
||||
COPY --from=stagex/make . /
|
||||
COPY --from=stagex/util-linux . /
|
||||
RUN tar -xf ${SRC_FILE}
|
||||
WORKDIR apr-${VERSION}
|
||||
COPY *.patch .
|
||||
RUN --network=none <<-EOF
|
||||
set -eux \
|
||||
patch -p1 apr-1.6.2-dont-test-dlclose.patch
|
||||
patch -p1 semtimedop-s390x.patch
|
||||
./configure \
|
||||
--prefix=/usr \
|
||||
--datadir=/usr/share \
|
||||
--enable-nonportable-atomics=no \
|
||||
--with-devrandom=/dev/urandom
|
||||
make -j "$(nproc)"
|
||||
EOF
|
||||
|
||||
FROM build AS install
|
||||
RUN make DESTDIR=/rootfs install
|
||||
RUN find /rootfs -exec touch -hcd "@0" "{}" +
|
||||
|
||||
FROM stagex/filesystem AS package
|
||||
COPY --from=install /rootfs/. /
|
22
packages/apr/apr-1.6.2-dont-test-dlclose.patch
Normal file
22
packages/apr/apr-1.6.2-dont-test-dlclose.patch
Normal file
|
@ -0,0 +1,22 @@
|
|||
dlclose is a no-op on musl. Test will always fail.
|
||||
|
||||
--- apr-1.6.2/test/testdso.c.old 2010-01-03 19:35:07.000000000 -0600
|
||||
+++ apr-1.6.2/test/testdso.c 2017-09-10 18:43:43.374983090 -0500
|
||||
@@ -244,7 +244,7 @@
|
||||
abts_run_test(suite, test_load_module, NULL);
|
||||
abts_run_test(suite, test_dso_sym, NULL);
|
||||
abts_run_test(suite, test_dso_sym_return_value, NULL);
|
||||
- abts_run_test(suite, test_unload_module, NULL);
|
||||
+ /* abts_run_test(suite, test_unload_module, NULL); */
|
||||
|
||||
#ifdef LIB_NAME
|
||||
apr_filepath_merge(&libname, NULL, LIB_NAME, 0, p);
|
||||
@@ -252,7 +252,7 @@
|
||||
abts_run_test(suite, test_load_library, NULL);
|
||||
abts_run_test(suite, test_dso_sym_library, NULL);
|
||||
abts_run_test(suite, test_dso_sym_return_value_library, NULL);
|
||||
- abts_run_test(suite, test_unload_library, NULL);
|
||||
+ /* abts_run_test(suite, test_unload_library, NULL); */
|
||||
#endif
|
||||
|
||||
abts_run_test(suite, test_load_notthere, NULL);
|
16
packages/apr/semtimedop-s390x.patch
Normal file
16
packages/apr/semtimedop-s390x.patch
Normal file
|
@ -0,0 +1,16 @@
|
|||
the testsuite hangs on s390x when testing locking mechanism sysvsem. Work
|
||||
around by avoid use semtimedop for s390x.
|
||||
|
||||
diff --git a/locks/unix/proc_mutex.c b/locks/unix/proc_mutex.c
|
||||
index 8e2187f..cad6c4a 100644
|
||||
--- a/locks/unix/proc_mutex.c
|
||||
+++ b/locks/unix/proc_mutex.c
|
||||
@@ -449,7 +449,7 @@ static const apr_proc_mutex_unix_lock_methods_t mutex_sysv_methods =
|
||||
proc_mutex_sysv_create,
|
||||
proc_mutex_sysv_acquire,
|
||||
proc_mutex_sysv_tryacquire,
|
||||
-#if defined(HAVE_SEMTIMEDOP)
|
||||
+#if defined(HAVE_SEMTIMEDOP) && !defined(__s390x__)
|
||||
proc_mutex_sysv_timedacquire,
|
||||
#else
|
||||
proc_mutex_spinsleep_timedacquire,
|
29
packages/argon2/Containerfile
Normal file
29
packages/argon2/Containerfile
Normal file
|
@ -0,0 +1,29 @@
|
|||
FROM scratch AS base
|
||||
ARG ARCH=x86_64
|
||||
ENV VERSION=20190702
|
||||
ENV SRC_HASH=daf972a89577f8772602bf2eb38b6a3dd3d922bf5724d45e7f9589b5e830442c
|
||||
ENV SRC_FILE=${VERSION}.tar.gz
|
||||
ENV SRC_SITE=https://github.com/P-H-C/phc-winner-argon2/archive/refs/tags/${SRC_FILE}
|
||||
|
||||
FROM base AS fetch
|
||||
ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE}
|
||||
|
||||
FROM fetch AS build
|
||||
COPY --from=stagex/busybox . /
|
||||
COPY --from=stagex/musl . /
|
||||
COPY --from=stagex/gcc . /
|
||||
COPY --from=stagex/binutils . /
|
||||
COPY --from=stagex/make . /
|
||||
RUN tar -xf $SRC_FILE
|
||||
WORKDIR phc-winner-argon2-${VERSION}
|
||||
RUN --network=none <<-EOF
|
||||
set -eux
|
||||
make -j "$(nproc)" OPTTARGET=none ARGON2_VERSION=${VERSION}
|
||||
EOF
|
||||
|
||||
FROM build AS install
|
||||
RUN make OPTTARGET=none LIBRARY_REL=lib DESTDIR=/rootfs install
|
||||
RUN find /rootfs -exec touch -hcd "@0" "{}" +
|
||||
|
||||
FROM stagex/filesystem AS package
|
||||
COPY --from=install /rootfs/. /
|
38
packages/aspell/Containerfile
Normal file
38
packages/aspell/Containerfile
Normal file
|
@ -0,0 +1,38 @@
|
|||
FROM scratch AS base
|
||||
ARG ARCH=x86_64
|
||||
ENV VERSION=0.60.8.1
|
||||
ENV SRC_HASH=d6da12b34d42d457fa604e435ad484a74b2effcd120ff40acd6bb3fb2887d21b
|
||||
ENV SRC_FILE=aspell-${VERSION}.tar.gz
|
||||
ENV SRC_SITE=https://ftp.gnu.org/gnu/aspell/${SRC_FILE}
|
||||
|
||||
FROM base AS fetch
|
||||
ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} .
|
||||
|
||||
FROM fetch AS build
|
||||
COPY --from=stagex/busybox . /
|
||||
COPY --from=stagex/perl . /
|
||||
COPY --from=stagex/binutils . /
|
||||
COPY --from=stagex/musl . /
|
||||
COPY --from=stagex/make . /
|
||||
COPY --from=stagex/gcc . /
|
||||
RUN tar -xf ${SRC_FILE}
|
||||
WORKDIR aspell-${VERSION}
|
||||
ENV SOURCE_DATE_EPOCH=1
|
||||
RUN --network=none <<-EOF
|
||||
set -ex
|
||||
./configure \
|
||||
--build=${ARCH}-linux-musl \
|
||||
--host=${ARCH}-linux-musl \
|
||||
--prefix=/usr \
|
||||
--sysconfdir=/etc \
|
||||
--enable-dict-dir=/usr/share/aspell \
|
||||
--enable-pkgdatadir=/usr/share/aspell
|
||||
make -j "$(nproc)"
|
||||
EOF
|
||||
|
||||
FROM build AS install
|
||||
RUN --network=none make DESTDIR="/rootfs" install
|
||||
RUN find /rootfs -exec touch -hcd "@0" "{}" +
|
||||
|
||||
FROM stagex/filesystem AS package
|
||||
COPY --from=install /rootfs/. /
|
43
packages/attr/Containerfile
Normal file
43
packages/attr/Containerfile
Normal file
|
@ -0,0 +1,43 @@
|
|||
FROM scratch AS base
|
||||
ARG ARCH=x86_64
|
||||
ENV VERSION=2.5.2
|
||||
ENV SRC_HASH=39bf67452fa41d0948c2197601053f48b3d78a029389734332a6309a680c6c87
|
||||
ENV SRC_FILE=attr-${VERSION}.tar.gz
|
||||
ENV SRC_SITE=https://download.savannah.nongnu.org/releases/attr/${SRC_FILE}
|
||||
|
||||
FROM base AS fetch
|
||||
ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE}
|
||||
|
||||
FROM fetch AS build
|
||||
COPY --from=stagex/musl . /
|
||||
COPY --from=stagex/gcc . /
|
||||
COPY --from=stagex/busybox . /
|
||||
COPY --from=stagex/binutils . /
|
||||
COPY --from=stagex/make . /
|
||||
COPY --from=stagex/perl . /
|
||||
|
||||
RUN tar -xf ${SRC_FILE}
|
||||
WORKDIR attr-${VERSION}
|
||||
RUN --network=none <<-EOF
|
||||
set -eux
|
||||
./configure \
|
||||
--prefix=/usr \
|
||||
--exec-prefix=/ \
|
||||
--sbindir=/bin \
|
||||
--bindir=/usr/bin \
|
||||
--libdir=/usr/lib \
|
||||
--libexecdir=/usr/lib \
|
||||
--includedir=/usr/include \
|
||||
--mandir=/usr/share/man \
|
||||
--docdir=/usr/share/doc/attr \
|
||||
--datadir=/usr/share \
|
||||
--disable-nls
|
||||
make -j "$(nproc)"
|
||||
EOF
|
||||
|
||||
FROM build AS install
|
||||
RUN make DESTDIR=/rootfs install
|
||||
RUN find /rootfs -exec touch -hcd "@0" "{}" +
|
||||
|
||||
FROM stagex/filesystem AS package
|
||||
COPY --from=install /rootfs/. /
|
42
packages/brotli/Containerfile
Normal file
42
packages/brotli/Containerfile
Normal file
|
@ -0,0 +1,42 @@
|
|||
FROM scratch AS base
|
||||
ARG ARCH=x86_64
|
||||
ENV VERSION=1.1.0
|
||||
ENV SRC_HASH=e720a6ca29428b803f4ad165371771f5398faba397edf6778837a18599ea13ff
|
||||
ENV SRC_FILE=v${VERSION}.tar.gz
|
||||
ENV SRC_SITE=https://github.com/google/brotli/archive/refs/tags/${SRC_FILE}
|
||||
|
||||
FROM base AS fetch
|
||||
ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE}
|
||||
|
||||
FROM fetch AS build
|
||||
COPY --from=stagex/musl . /
|
||||
COPY --from=stagex/gcc . /
|
||||
COPY --from=stagex/busybox . /
|
||||
COPY --from=stagex/binutils . /
|
||||
COPY --from=stagex/make . /
|
||||
COPY --from=stagex/samurai . /
|
||||
COPY --from=stagex/cmake . /
|
||||
COPY --from=stagex/openssl . /
|
||||
RUN tar -xf ${SRC_FILE}
|
||||
WORKDIR brotli-${VERSION}
|
||||
RUN --network=none <<-EOF
|
||||
set -eux
|
||||
cmake -B build -G Ninja \
|
||||
-DCMAKE_BUILD_TYPE=None \
|
||||
-DCMAKE_INSTALL_PREFIX=/usr/lib \
|
||||
-DBUILD_SHARED_LIBS=OFF
|
||||
cmake --build build
|
||||
|
||||
cmake -B build -G Ninja \
|
||||
-DCMAKE_BUILD_TYPE=None \
|
||||
-DCMAKE_INSTALL_PREFIX=/usr/lib \
|
||||
-DBUILD_SHARED_LIBS=ON
|
||||
cmake --build build
|
||||
EOF
|
||||
|
||||
FROM build AS install
|
||||
RUN DESTDIR=/rootfs cmake --install build
|
||||
RUN find /rootfs -exec touch -hcd "@0" "{}" +
|
||||
|
||||
FROM stagex/filesystem AS package
|
||||
COPY --from=install /rootfs/. /
|
|
@ -9,6 +9,7 @@ ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} .
|
|||
|
||||
FROM fetch AS build
|
||||
COPY --from=stagex/busybox . /
|
||||
COPY --from=stagex/linux-headers . /
|
||||
COPY --from=stagex/binutils . /
|
||||
COPY --from=stagex/cmake . /
|
||||
COPY --from=stagex/ninja . /
|
||||
|
@ -17,28 +18,35 @@ COPY --from=stagex/gcc . /
|
|||
COPY --from=stagex/python . /
|
||||
COPY --from=stagex/py-setuptools . /
|
||||
COPY --from=stagex/openssl . /
|
||||
COPY --from=stagex/gcc . /
|
||||
COPY --from=stagex/git . /
|
||||
COPY --from=stagex/llvm . /
|
||||
COPY --from=stagex/zlib . /
|
||||
COPY --from=stagex/ninja . /
|
||||
COPY --from=stagex/libxml2 . /
|
||||
COPY --from=stagex/samurai . /
|
||||
|
||||
RUN tar -xf ${SRC_FILE}
|
||||
WORKDIR llvm-project-${VERSION}.src
|
||||
RUN --network=none <<-EOF
|
||||
set -eux
|
||||
cmake \
|
||||
-S clang \
|
||||
-B build \
|
||||
-G Ninja \
|
||||
-Wno-dev \
|
||||
-DCMAKE_BUILD_TYPE=Release \
|
||||
-DCMAKE_INSTALL_PREFIX=/usr/ \
|
||||
-DCMAKE_INSTALL_RPATH=/usr/ \
|
||||
-DCLANG_BUILT_STANDALONE=ON \
|
||||
-DCLANG_LINK_CLANG_DYLIB=ON \
|
||||
-DCLANG_PLUGIN_SUPPORT=ON \
|
||||
-DCLANG_VENDOR=stagex \
|
||||
-DLIBCLANG_BUILD_STATIC=ON
|
||||
cmake --build build
|
||||
-S clang \
|
||||
-B build \
|
||||
-G Ninja \
|
||||
-Wno-dev \
|
||||
-DCMAKE_BUILD_TYPE=Release \
|
||||
-DCMAKE_INSTALL_PREFIX=/usr/ \
|
||||
-DCLANG_BUILT_STANDALONE=ON \
|
||||
-DCLANG_CONFIG_FILE_SYSTEM_DIR=/etc/clang16 \
|
||||
-DCLANG_ENABLE_ARCMT=ON \
|
||||
-DCMAKE_INSTALL_RPATH=/usr/ \
|
||||
-DCLANG_LINK_CLANG_DYLIB=ON \
|
||||
-DCLANG_PLUGIN_SUPPORT=ON \
|
||||
-DCLANG_VENDOR=stagex \
|
||||
-DENABLE_LINKER_BUILD_ID=ON \
|
||||
-DLIBCLANG_BUILD_STATIC=ON
|
||||
ninja -C build clang-tblgen
|
||||
ninja -C build
|
||||
EOF
|
||||
|
||||
FROM build AS install
|
||||
|
|
42
packages/cython/Containerfile
Normal file
42
packages/cython/Containerfile
Normal file
|
@ -0,0 +1,42 @@
|
|||
FROM scratch AS base
|
||||
ENV VERSION=3.0.10
|
||||
ENV SRC_HASH=00f97476cef9fcd9a89f9d2a49be3b518e1a74b91f377fe08c97fcb44bc0f7d7
|
||||
ENV SRC_FILE=${VERSION}.tar.gz
|
||||
ENV SRC_SITE=https://github.com/cython/cython/archive/${SRC_FILE}
|
||||
|
||||
FROM base AS fetch
|
||||
ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} .
|
||||
|
||||
FROM fetch AS build
|
||||
COPY --from=stagex/busybox . /
|
||||
COPY --from=stagex/musl . /
|
||||
COPY --from=stagex/zlib . /
|
||||
COPY --from=stagex/openssl . /
|
||||
COPY --from=stagex/python . /
|
||||
COPY --from=stagex/gcc . /
|
||||
COPY --from=stagex/binutils . /
|
||||
COPY --from=stagex/make . /
|
||||
COPY --from=stagex/cmake . /
|
||||
COPY --from=stagex/libffi . /
|
||||
COPY --from=stagex/py-setuptools . /
|
||||
COPY --from=stagex/py-installer . /
|
||||
COPY --from=stagex/py-flit . /
|
||||
COPY --from=stagex/py-gpep517 . /
|
||||
COPY --from=stagex/py-wheel . /
|
||||
COPY --from=stagex/py-distro . /
|
||||
COPY --from=stagex/py-dateutil . /
|
||||
COPY --from=stagex/py-urllib3 . /
|
||||
COPY --from=stagex/py-cffi . /
|
||||
RUN tar -xzf ${SRC_FILE}
|
||||
WORKDIR cython-${VERSION}
|
||||
RUN gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2
|
||||
#
|
||||
FROM build AS install
|
||||
RUN --network=none <<-EOF
|
||||
set -eux
|
||||
python -m installer -d /rootfs .dist/*.whl
|
||||
find /rootfs | grep -E "(/__pycache__$|\.pyc$|\.pyo$)" | xargs rm -rf
|
||||
EOF
|
||||
|
||||
FROM stagex/filesystem AS package
|
||||
COPY --from=install /rootfs/. /
|
48
packages/doxygen/Containerfile
Normal file
48
packages/doxygen/Containerfile
Normal file
|
@ -0,0 +1,48 @@
|
|||
FROM scratch AS base
|
||||
ARG ARCH=x86_64
|
||||
ENV VERSION=1.10.0
|
||||
ENV SRC_HASH=dd7c556b4d96ca5e682534bc1f1a78a5cfabce0c425b14c1b8549802686a4442
|
||||
ENV SRC_FILE=doxygen-${VERSION}.src.tar.gz
|
||||
ENV SRC_SITE=https://doxygen.nl/files/${SRC_FILE}
|
||||
|
||||
FROM base AS fetch
|
||||
ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE}
|
||||
|
||||
FROM fetch AS build
|
||||
COPY --from=stagex/musl . /
|
||||
COPY --from=stagex/gcc . /
|
||||
COPY --from=stagex/busybox . /
|
||||
COPY --from=stagex/binutils . /
|
||||
COPY --from=stagex/make . /
|
||||
COPY --from=stagex/flex . /
|
||||
COPY --from=stagex/bison . /
|
||||
COPY --from=stagex/coreutils . /
|
||||
COPY --from=stagex/perl . /
|
||||
COPY --from=stagex/python . /
|
||||
COPY --from=stagex/cmake . /
|
||||
COPY --from=stagex/samurai . /
|
||||
COPY --from=stagex/pkgconf . /
|
||||
COPY --from=stagex/libxml2 . /
|
||||
COPY --from=stagex/perl . /
|
||||
COPY --from=stagex/openssl . /
|
||||
COPY --from=stagex/m4 . /
|
||||
RUN tar -xf ${SRC_FILE}
|
||||
WORKDIR doxygen-${VERSION}
|
||||
COPY *.patch .
|
||||
RUN --network=none <<-EOF
|
||||
set -eux \
|
||||
patch -p1 remove-usage-of-fstat64.patch
|
||||
cmake -B build -G Ninja \
|
||||
-DGIT_EXECUTABLE=/bin/false \
|
||||
-DCMAKE_INSTALL_PREFIX=/usr \
|
||||
-DCMAKE_BUILD_TYPE=MinSizeRel \
|
||||
-Dbuild_xmlparser=ON
|
||||
cmake --build build
|
||||
EOF
|
||||
|
||||
FROM build AS install
|
||||
RUN DESTDIR=/rootfs cmake --install build
|
||||
RUN find /rootfs -exec touch -hcd "@0" "{}" +
|
||||
|
||||
FROM stagex/filesystem AS package
|
||||
COPY --from=install /rootfs/. /
|
23
packages/doxygen/remove-usage-of-fstat64.patch
Normal file
23
packages/doxygen/remove-usage-of-fstat64.patch
Normal file
|
@ -0,0 +1,23 @@
|
|||
--- a/deps/spdlog/include/spdlog/details/os-inl.h
|
||||
+++ b/deps/spdlog/include/spdlog/details/os-inl.h
|
||||
@@ -236,20 +236,11 @@
|
||||
# else
|
||||
int fd = ::fileno(f);
|
||||
# endif
|
||||
-// 64 bits(but not in osx or cygwin, where fstat64 is deprecated)
|
||||
-# if (defined(__linux__) || defined(__sun) || defined(_AIX)) && (defined(__LP64__) || defined(_LP64))
|
||||
- struct stat64 st;
|
||||
- if (::fstat64(fd, &st) == 0)
|
||||
- {
|
||||
- return static_cast<size_t>(st.st_size);
|
||||
- }
|
||||
-# else // other unix or linux 32 bits or cygwin
|
||||
struct stat st;
|
||||
if (::fstat(fd, &st) == 0)
|
||||
{
|
||||
return static_cast<size_t>(st.st_size);
|
||||
}
|
||||
-# endif
|
||||
#endif
|
||||
throw_spdlog_ex("Failed getting file size from fd", errno);
|
||||
return 0; // will not be reached.
|
44
packages/dtc/Containerfile
Normal file
44
packages/dtc/Containerfile
Normal file
|
@ -0,0 +1,44 @@
|
|||
FROM scratch AS base
|
||||
ENV VERSION=1.7.0
|
||||
ENV SRC_HASH=29edce3d302a15563d8663198bbc398c5a0554765c83830d0d4c0409d21a16c4
|
||||
ENV SRC_FILE=dtc-${VERSION}.tar.xz
|
||||
ENV SRC_SITE=https://kernel.org/pub/software/utils/dtc/${SRC_FILE}
|
||||
|
||||
FROM base AS fetch
|
||||
ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} .
|
||||
|
||||
FROM fetch AS build
|
||||
COPY --from=stagex/busybox . /
|
||||
COPY --from=stagex/musl . /
|
||||
COPY --from=stagex/make . /
|
||||
COPY --from=stagex/binutils . /
|
||||
COPY --from=stagex/linux-headers . /
|
||||
COPY --from=stagex/perl . /
|
||||
COPY --from=stagex/m4 . /
|
||||
COPY --from=stagex/gcc . /
|
||||
COPY --from=stagex/bison . /
|
||||
COPY --from=stagex/openssl . /
|
||||
COPY --from=stagex/libzstd . /
|
||||
COPY --from=stagex/zlib . /
|
||||
COPY --from=stagex/flex . /
|
||||
COPY --from=stagex/pkgconf . /
|
||||
COPY --from=stagex/coreutils . /
|
||||
COPY --from=stagex/python . /
|
||||
COPY --from=stagex/py-setuptools . /
|
||||
RUN tar -xf ${SRC_FILE}
|
||||
WORKDIR dtc-${VERSION}
|
||||
RUN --network=none <<-EOF
|
||||
set -eux
|
||||
sed -i s:-Werror::g Makefile
|
||||
sed -i "s|@VERSION@|${VERSION}|" setup.py
|
||||
make -j "$(nproc)"
|
||||
EOF
|
||||
|
||||
FROM build AS install
|
||||
RUN <<-EOF
|
||||
set -eux
|
||||
make DESTDIR=/rootfs PREFIX=/usr install
|
||||
EOF
|
||||
|
||||
FROM stagex/filesystem AS package
|
||||
COPY --from=install /rootfs/. /
|
|
@ -25,11 +25,11 @@ RUN cargo fetch --locked
|
|||
|
||||
FROM fetch AS build
|
||||
RUN --network=none \
|
||||
cargo build \
|
||||
--no-default-features \
|
||||
--locked \
|
||||
--release \
|
||||
--target x86_64-unknown-linux-musl
|
||||
cargo build \
|
||||
--no-default-features \
|
||||
--locked \
|
||||
--release \
|
||||
--target x86_64-unknown-linux-musl
|
||||
|
||||
FROM build AS install
|
||||
WORKDIR /rootfs/usr/bin
|
||||
|
|
36
packages/expat/Containerfile
Normal file
36
packages/expat/Containerfile
Normal file
|
@ -0,0 +1,36 @@
|
|||
|
||||
FROM scratch AS base
|
||||
ARG ARCH=x86_64
|
||||
ENV VERSION=2.6.2
|
||||
ENV SRC_HASH=d4cf38d26e21a56654ffe4acd9cd5481164619626802328506a2869afab29ab3
|
||||
ENV SRC_FILE=expat-${VERSION}.tar.gz
|
||||
ENV SRC_SITE=https://github.com/libexpat/libexpat/releases/download/R_2_6_2/${SRC_FILE}
|
||||
|
||||
FROM base AS fetch
|
||||
ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE}
|
||||
|
||||
FROM fetch AS build
|
||||
COPY --from=stagex/busybox . /
|
||||
COPY --from=stagex/musl . /
|
||||
COPY --from=stagex/gcc . /
|
||||
COPY --from=stagex/binutils . /
|
||||
COPY --from=stagex/make . /
|
||||
RUN tar -xf $SRC_FILE
|
||||
WORKDIR expat-${VERSION}
|
||||
RUN --network=none <<-EOF
|
||||
set -eux
|
||||
./configure \
|
||||
--build=${ARCH}-linux-musl \
|
||||
--host=${ARCH}-linux-musl \
|
||||
--prefix=/usr \
|
||||
--mandir=/usr/share/man \
|
||||
--enable-static
|
||||
make -j "$(nproc)"
|
||||
EOF
|
||||
|
||||
FROM build AS install
|
||||
RUN make DESTDIR=/rootfs install
|
||||
RUN find /rootfs -exec touch -hcd "@0" "{}" +
|
||||
|
||||
FROM stagex/filesystem AS package
|
||||
COPY --from=install /rootfs/. /
|
45
packages/fmt/Containerfile
Normal file
45
packages/fmt/Containerfile
Normal file
|
@ -0,0 +1,45 @@
|
|||
FROM scratch AS base
|
||||
ARG ARCH=x86_64
|
||||
ENV VERSION=10.2.1
|
||||
ENV SRC_HASH=1250e4cc58bf06ee631567523f48848dc4596133e163f02615c97f78bab6c811
|
||||
ENV SRC_FILE=${VERSION}.tar.gz
|
||||
ENV SRC_SITE=https://github.com/fmtlib/fmt/archive/refs/tags/${SRC_FILE}
|
||||
|
||||
FROM base AS fetch
|
||||
ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE}
|
||||
|
||||
FROM fetch AS build
|
||||
COPY --from=stagex/musl . /
|
||||
COPY --from=stagex/gcc . /
|
||||
COPY --from=stagex/busybox . /
|
||||
COPY --from=stagex/binutils . /
|
||||
COPY --from=stagex/make . /
|
||||
COPY --from=stagex/openssl . /
|
||||
COPY --from=stagex/postgresql . /
|
||||
COPY --from=stagex/cmake . /
|
||||
COPY --from=stagex/samurai . /
|
||||
COPY --from=stagex/python . /
|
||||
COPY --from=stagex/doxygen . /
|
||||
RUN tar -xf ${SRC_FILE}
|
||||
WORKDIR fmt-${VERSION}
|
||||
COPY *.patch .
|
||||
RUN --network=none <<-EOF
|
||||
set -eux
|
||||
patch -p1 fix-handling-of-static-separator.patch
|
||||
# Build in-tree so the prebuilt docs get installed correctly.
|
||||
# See https://github.com/fmtlib/fmt/issues/2837
|
||||
cmake -B . -G Ninja \
|
||||
-DCMAKE_INSTALL_PREFIX=/usr \
|
||||
-DCMAKE_INSTALL_LIBDIR=lib \
|
||||
-DBUILD_SHARED_LIBS=True \
|
||||
-DCMAKE_BUILD_TYPE=None \
|
||||
CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
|
||||
cmake --build .
|
||||
EOF
|
||||
|
||||
FROM build AS install
|
||||
RUN DESTDIR=/rootfs cmake --install .
|
||||
RUN find /rootfs -exec touch -hcd "@0" "{}" +
|
||||
|
||||
FROM stagex/filesystem AS package
|
||||
COPY --from=install /rootfs/. /
|
31
packages/fmt/fix-handling-of-static-separator.patch
Normal file
31
packages/fmt/fix-handling-of-static-separator.patch
Normal file
|
@ -0,0 +1,31 @@
|
|||
From 44c3fe1ebb466ab5c296e1a1a6991c7c7b51b72e Mon Sep 17 00:00:00 2001
|
||||
From: Victor Zverovich <viz@meta.com>
|
||||
Date: Fri, 9 Feb 2024 15:58:56 -0800
|
||||
Subject: [PATCH] Fix handling of static separator
|
||||
|
||||
---
|
||||
include/fmt/format-inl.h | 7 +++++--
|
||||
1 file changed, 5 insertions(+), 2 deletions(-)
|
||||
|
||||
--- a/include/fmt/format-inl.h
|
||||
+++ b/include/fmt/format-inl.h
|
||||
@@ -114,7 +114,11 @@ template <typename Char> FMT_FUNC Char d
|
||||
|
||||
FMT_FUNC auto write_loc(appender out, loc_value value,
|
||||
const format_specs<>& specs, locale_ref loc) -> bool {
|
||||
-#ifndef FMT_STATIC_THOUSANDS_SEPARATOR
|
||||
+#ifdef FMT_STATIC_THOUSANDS_SEPARATOR
|
||||
+ value.visit(loc_writer<>{
|
||||
+ out, specs, std::string(1, FMT_STATIC_THOUSANDS_SEPARATOR), "\3", "."});
|
||||
+ return true;
|
||||
+#else
|
||||
auto locale = loc.get<std::locale>();
|
||||
// We cannot use the num_put<char> facet because it may produce output in
|
||||
// a wrong encoding.
|
||||
@@ -123,7 +127,6 @@ FMT_FUNC auto write_loc(appender out, lo
|
||||
return std::use_facet<facet>(locale).put(out, value, specs);
|
||||
return facet(locale).put(out, value, specs);
|
||||
#endif
|
||||
- return false;
|
||||
}
|
||||
} // namespace detail
|
48
packages/freetds/Containerfile
Normal file
48
packages/freetds/Containerfile
Normal file
|
@ -0,0 +1,48 @@
|
|||
FROM scratch AS base
|
||||
ARG ARCH=x86_64
|
||||
ENV VERSION=1.4.22
|
||||
ENV SRC_HASH=a9a7f24f0a7a871617e76e8cc6e6556ae788042f1c006195665505499b2334b1
|
||||
ENV SRC_FILE=freetds-${VERSION}.tar.bz2
|
||||
ENV SRC_SITE=https://www.freetds.org/files/stable/${SRC_FILE}
|
||||
|
||||
FROM base AS fetch
|
||||
ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} .
|
||||
|
||||
FROM fetch AS build
|
||||
COPY --from=stagex/busybox . /
|
||||
COPY --from=stagex/binutils . /
|
||||
COPY --from=stagex/musl . /
|
||||
COPY --from=stagex/make . /
|
||||
COPY --from=stagex/gcc . /
|
||||
COPY --from=stagex/libtool . /
|
||||
COPY --from=stagex/linux-headers . /
|
||||
COPY --from=stagex/readline . /
|
||||
COPY --from=stagex/unixodbc . /
|
||||
COPY --from=stagex/openssl . /
|
||||
COPY --from=stagex/perl . /
|
||||
RUN tar -xf ${SRC_FILE}
|
||||
WORKDIR freetds-${VERSION}
|
||||
RUN --network=none <<-EOF
|
||||
set -ex
|
||||
./configure \
|
||||
--build=${ARCH}-linux-musl \
|
||||
--host=${ARCH}-linux-musl \
|
||||
--prefix=/usr \
|
||||
--sysconfdir=/etc \
|
||||
--mandir=/usr/share/man \
|
||||
--infodir=/usr/share/info \
|
||||
--enable-msdblib \
|
||||
--with-openssl=/usr \
|
||||
--enable-odbc \
|
||||
--with-unixodbc=/usr
|
||||
make -j "$(nproc)"
|
||||
EOF
|
||||
|
||||
FROM build AS install
|
||||
RUN --network=none <<-EOF
|
||||
set -eu
|
||||
make DESTDIR="/rootfs" install
|
||||
EOF
|
||||
|
||||
FROM stagex/filesystem AS package
|
||||
COPY --from=install /rootfs/. /
|
40
packages/gdbm/Containerfile
Normal file
40
packages/gdbm/Containerfile
Normal file
|
@ -0,0 +1,40 @@
|
|||
FROM scratch AS base
|
||||
ARG ARCH=x86_64
|
||||
ENV VERSION=1.23
|
||||
ENV SRC_HASH=74b1081d21fff13ae4bd7c16e5d6e504a4c26f7cde1dca0d963a484174bbcacd
|
||||
ENV SRC_FILE=gdbm-${VERSION}.tar.gz
|
||||
ENV SRC_SITE=https://ftp.gnu.org/gnu/gdbm/${SRC_FILE}
|
||||
|
||||
FROM base AS fetch
|
||||
ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE}
|
||||
|
||||
FROM fetch AS build
|
||||
COPY --from=stagex/musl . /
|
||||
COPY --from=stagex/gcc . /
|
||||
COPY --from=stagex/bash . /
|
||||
COPY --from=stagex/busybox . /
|
||||
COPY --from=stagex/binutils . /
|
||||
COPY --from=stagex/make . /
|
||||
COPY --from=stagex/openssl . /
|
||||
RUN tar -xf ${SRC_FILE}
|
||||
WORKDIR gdbm-${VERSION}
|
||||
ENV SOURCE_DATE_EPOCH=1
|
||||
RUN --network=none <<-EOF
|
||||
set -eux
|
||||
./configure \
|
||||
--build=${ARCH}-linux-musl \
|
||||
--host=${ARCH}-linux-musl \
|
||||
--prefix=/usr \
|
||||
--enable-libgdbm-compat \
|
||||
--disable-largefile \
|
||||
--disable-dependency-tracking \
|
||||
--enable-fast-install
|
||||
make -j "$(nproc)"
|
||||
EOF
|
||||
|
||||
FROM build AS install
|
||||
RUN make DESTDIR=/rootfs install
|
||||
RUN find /rootfs -exec touch -hcd "@0" "{}" +
|
||||
|
||||
FROM stagex/filesystem AS package
|
||||
COPY --from=install /rootfs/. /
|
66
packages/glib/Containerfile
Normal file
66
packages/glib/Containerfile
Normal file
|
@ -0,0 +1,66 @@
|
|||
FROM scratch AS base
|
||||
ARG ARCH=x86_64
|
||||
ENV VERSION=2.80.0
|
||||
ENV SRC_HASH=8228a92f92a412160b139ae68b6345bd28f24434a7b5af150ebe21ff587a561d
|
||||
ENV SRC_FILE=glib-${VERSION}.tar.xz
|
||||
ENV SRC_SITE=https://download.gnome.org/sources/glib/2.80/${SRC_FILE}
|
||||
|
||||
FROM base AS fetch
|
||||
ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE}
|
||||
|
||||
FROM fetch AS build
|
||||
COPY --from=stagex/python . /
|
||||
COPY --from=stagex/zlib . /
|
||||
COPY --from=stagex/bzip2 . /
|
||||
COPY --from=stagex/pkgconf . /
|
||||
COPY --from=stagex/linux-headers . /
|
||||
COPY --from=stagex/ncurses . /
|
||||
COPY --from=stagex/meson . /
|
||||
COPY --from=stagex/busybox . /
|
||||
COPY --from=stagex/musl . /
|
||||
COPY --from=stagex/gcc . /
|
||||
COPY --from=stagex/binutils . /
|
||||
COPY --from=stagex/make . /
|
||||
COPY --from=stagex/cmake . /
|
||||
COPY --from=stagex/pcre2 . /
|
||||
COPY --from=stagex/python . /
|
||||
COPY --from=stagex/bison . /
|
||||
COPY --from=stagex/flex . /
|
||||
COPY --from=stagex/py-packaging . /
|
||||
COPY --from=stagex/libxslt . /
|
||||
COPY --from=stagex/libffi . /
|
||||
COPY --from=stagex/xz . /
|
||||
COPY --from=stagex/expat . /
|
||||
COPY --from=stagex/rhash . /
|
||||
COPY --from=stagex/libxml2 . /
|
||||
COPY --from=stagex/util-linux . /
|
||||
COPY --from=stagex/libxslt . /
|
||||
COPY --from=stagex/gettext . /
|
||||
COPY --from=stagex/ninja . /
|
||||
RUN tar -xf ${SRC_FILE}
|
||||
WORKDIR glib-${VERSION}
|
||||
COPY *.patch .
|
||||
RUN --network=none <<-EOF
|
||||
set -eux
|
||||
export CFLAGS="-ffat-lto-objects -O2"
|
||||
export CXXFLAGS="-O2"
|
||||
export CPPFLAGS="-O2"
|
||||
meson setup \
|
||||
--default-library=shared \
|
||||
--prefix=/usr \
|
||||
-Dman-pages=disabled \
|
||||
-Dlibmount=disabled \
|
||||
-Dtests=false \
|
||||
-Dintrospection=disabled \
|
||||
-Dnls=disabled \
|
||||
. output
|
||||
meson compile -C output
|
||||
meson install --no-rebuild -C output
|
||||
EOF
|
||||
|
||||
FROM build AS install
|
||||
RUN DESTDIR=/rootfs meson install --no-rebuild -C output
|
||||
RUN find /rootfs -exec touch -hcd "@0" "{}" +
|
||||
|
||||
FROM stagex/filesystem AS package
|
||||
COPY --from=install /rootfs/. /
|
38
packages/groff/Containerfile
Normal file
38
packages/groff/Containerfile
Normal file
|
@ -0,0 +1,38 @@
|
|||
FROM scratch AS base
|
||||
ARG ARCH=x86_64
|
||||
ENV VERSION=1.23.0
|
||||
ENV SRC_HASH=6b9757f592b7518b4902eb6af7e54570bdccba37a871fddb2d30ae3863511c13
|
||||
ENV SRC_FILE=groff-${VERSION}.tar.gz
|
||||
ENV SRC_SITE=https://ftp.gnu.org/gnu/groff/${SRC_FILE}
|
||||
|
||||
FROM base AS fetch
|
||||
ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE}
|
||||
|
||||
FROM fetch AS build
|
||||
COPY --from=stagex/perl . /
|
||||
COPY --from=stagex/m4 . /
|
||||
COPY --from=stagex/busybox . /
|
||||
COPY --from=stagex/musl . /
|
||||
COPY --from=stagex/gcc . /
|
||||
COPY --from=stagex/binutils . /
|
||||
COPY --from=stagex/make . /
|
||||
RUN tar -xf $SRC_FILE
|
||||
WORKDIR groff-${VERSION}
|
||||
ENV SOURCE_DATE_EPOCH=1
|
||||
RUN --network=none <<-EOF
|
||||
set -eux
|
||||
./configure \
|
||||
--build=${ARCH}-linux-musl \
|
||||
--host=${ARCH}-linux-musl \
|
||||
--prefix=/usr \
|
||||
--without-x \
|
||||
--disable-rpath
|
||||
make -j "$(nproc)"
|
||||
EOF
|
||||
|
||||
FROM build AS install
|
||||
RUN make DESTDIR=/rootfs install
|
||||
RUN find /rootfs -exec touch -hcd "@0" "{}" +
|
||||
|
||||
FROM stagex/filesystem AS package
|
||||
COPY --from=install /rootfs/. /
|
39
packages/hunspell/Containerfile
Normal file
39
packages/hunspell/Containerfile
Normal file
|
@ -0,0 +1,39 @@
|
|||
FROM scratch AS base
|
||||
ARG ARCH=x86_64
|
||||
ENV VERSION=1.7.2
|
||||
ENV SRC_HASH=11ddfa39afe28c28539fe65fc4f1592d410c1e9b6dd7d8a91ca25d85e9ec65b8
|
||||
ENV SRC_FILE=hunspell-${VERSION}.tar.gz
|
||||
ENV SRC_SITE=https://github.com/hunspell/hunspell/releases/download/v${VERSION}/${SRC_FILE}
|
||||
|
||||
FROM base AS fetch
|
||||
ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE}
|
||||
|
||||
FROM fetch AS build
|
||||
COPY --from=stagex/musl . /
|
||||
COPY --from=stagex/gcc . /
|
||||
COPY --from=stagex/bash . /
|
||||
COPY --from=stagex/busybox . /
|
||||
COPY --from=stagex/binutils . /
|
||||
COPY --from=stagex/make . /
|
||||
COPY --from=stagex/openssl . /
|
||||
RUN tar -xf ${SRC_FILE}
|
||||
WORKDIR hunspell-${VERSION}
|
||||
RUN --network=none <<-EOF
|
||||
set -eux
|
||||
./configure \
|
||||
--build=${ARCH}-linux-musl \
|
||||
--host=${ARCH}-linux-musl \
|
||||
--prefix=/usr \
|
||||
--with-ui \
|
||||
--with-readline \
|
||||
--disable-static \
|
||||
--without-included-gettext
|
||||
make -j "$(nproc)"
|
||||
EOF
|
||||
|
||||
FROM build AS install
|
||||
RUN make DESTDIR=/rootfs install
|
||||
RUN find /rootfs -exec touch -hcd "@0" "{}" +
|
||||
|
||||
FROM stagex/filesystem AS package
|
||||
COPY --from=install /rootfs/. /
|
63
packages/krb5/Containerfile
Normal file
63
packages/krb5/Containerfile
Normal file
|
@ -0,0 +1,63 @@
|
|||
FROM scratch AS base
|
||||
ARG ARCH=x86_64
|
||||
ENV VERSION=1.21.2
|
||||
ENV SRC_HASH=9560941a9d843c0243a71b17a7ac6fe31c7cebb5bce3983db79e52ae7e850491
|
||||
ENV SRC_FILE=krb5-${VERSION}.tar.gz
|
||||
ENV SRC_SITE=https://kerberos.org/dist/krb5/1.21/${SRC_FILE}
|
||||
|
||||
FROM base AS fetch
|
||||
ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE}
|
||||
|
||||
FROM fetch AS build
|
||||
COPY --from=stagex/perl . /
|
||||
COPY --from=stagex/bash . /
|
||||
COPY --from=stagex/m4 . /
|
||||
COPY --from=stagex/curl . /
|
||||
COPY --from=stagex/linux-headers . /
|
||||
COPY --from=stagex/util-linux . /
|
||||
COPY --from=stagex/autoconf . /
|
||||
COPY --from=stagex/automake . /
|
||||
COPY --from=stagex/busybox . /
|
||||
COPY --from=stagex/musl . /
|
||||
COPY --from=stagex/gcc . /
|
||||
COPY --from=stagex/binutils . /
|
||||
COPY --from=stagex/make . /
|
||||
COPY --from=stagex/e2fsprogs . /
|
||||
COPY --from=stagex/python . /
|
||||
COPY --from=stagex/openldap . /
|
||||
COPY --from=stagex/openssl . /
|
||||
COPY --from=stagex/groff . /
|
||||
COPY --from=stagex/libevent . /
|
||||
COPY --from=stagex/bison . /
|
||||
COPY --from=stagex/libtool . /
|
||||
COPY --from=stagex/libverto . /
|
||||
COPY --from=stagex/pkgconf . /
|
||||
RUN tar -xf $SRC_FILE
|
||||
WORKDIR krb5-${VERSION}/src
|
||||
RUN --network=none <<-EOF
|
||||
set -eux
|
||||
./configure \
|
||||
CPPFLAGS="-fPIC -I/usr/include/et" \
|
||||
WARN_CFLAGS= \
|
||||
--build=${ARCH}-linux-musl \
|
||||
--host=${ARCH}-linux-musl \
|
||||
--prefix=/usr \
|
||||
--localstatedir=/var/lib \
|
||||
--enable-shared \
|
||||
--disable-nls \
|
||||
--disable-static \
|
||||
--disable-rpath \
|
||||
--with-system-et \
|
||||
--with-system-ss \
|
||||
--with-system-verto \
|
||||
--without-tcl \
|
||||
--with-ldap
|
||||
make -j "$(nproc)"
|
||||
EOF
|
||||
|
||||
FROM build AS install
|
||||
RUN make DESTDIR=/rootfs install
|
||||
RUN find /rootfs -exec touch -hcd "@0" "{}" +
|
||||
|
||||
FROM stagex/filesystem AS package
|
||||
COPY --from=install /rootfs/. /
|
33
packages/libaio/Containerfile
Normal file
33
packages/libaio/Containerfile
Normal file
|
@ -0,0 +1,33 @@
|
|||
FROM scratch AS base
|
||||
ARG ARCH=x86_64
|
||||
ENV VERSION=0.3.113
|
||||
ENV SRC_HASH=716c7059703247344eb066b54ecbc3ca2134f0103307192e6c2b7dab5f9528ab
|
||||
ENV SRC_FILE=libaio-libaio-${VERSION}.tar.gz
|
||||
ENV SRC_SITE=https://pagure.io/libaio/archive/libaio-${VERSION}/${SRC_FILE}
|
||||
|
||||
FROM base AS fetch
|
||||
ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE}
|
||||
|
||||
FROM fetch AS build
|
||||
COPY --from=stagex/musl . /
|
||||
COPY --from=stagex/bash . /
|
||||
COPY --from=stagex/gcc . /
|
||||
COPY --from=stagex/busybox . /
|
||||
COPY --from=stagex/binutils . /
|
||||
COPY --from=stagex/make . /
|
||||
COPY --from=stagex/linux-headers . /
|
||||
|
||||
RUN tar -xf ${SRC_FILE}
|
||||
WORKDIR libaio-libaio-${VERSION}
|
||||
COPY *.patch .
|
||||
RUN --network=none <<-EOF
|
||||
set -eux
|
||||
make -j "$(nproc)"
|
||||
EOF
|
||||
|
||||
FROM build AS install
|
||||
RUN make DESTDIR=/rootfs install
|
||||
RUN find /rootfs -exec touch -hcd "@0" "{}" +
|
||||
|
||||
FROM stagex/filesystem AS package
|
||||
COPY --from=install /rootfs/. /
|
38
packages/libcap-ng/Containerfile
Normal file
38
packages/libcap-ng/Containerfile
Normal file
|
@ -0,0 +1,38 @@
|
|||
FROM scratch AS base
|
||||
ENV VERSION=0.8.5
|
||||
ENV SRC_HASH=3ba5294d1cbdfa98afaacfbc00b6af9ed2b83e8a21817185dfd844cc8c7ac6ff
|
||||
ENV SRC_FILE=libcap-ng-${VERSION}.tar.gz
|
||||
ENV SRC_SITE=http://people.redhat.com/sgrubb/libcap-ng/${SRC_FILE}
|
||||
|
||||
FROM base AS fetch
|
||||
ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} .
|
||||
|
||||
FROM fetch AS build
|
||||
COPY --from=stagex/busybox . /
|
||||
COPY --from=stagex/gcc . /
|
||||
COPY --from=stagex/linux-headers . /
|
||||
COPY --from=stagex/binutils . /
|
||||
COPY --from=stagex/make . /
|
||||
COPY --from=stagex/musl . /
|
||||
RUN tar -xf ${SRC_FILE}
|
||||
WORKDIR libcap-ng-${VERSION}
|
||||
RUN --network=none <<-EOF
|
||||
set -eux;
|
||||
./configure \
|
||||
--build=x86_64-linux-musl \
|
||||
--host=x86_64-linux-musl \
|
||||
--prefix=/usr \
|
||||
--sysconfdir=/etc \
|
||||
--mandir=/usr/share/man \
|
||||
--infodir=/usr/share/info \
|
||||
--without-python \
|
||||
--without-python3 \
|
||||
--enable-static
|
||||
make -j "$(nproc)"
|
||||
EOF
|
||||
|
||||
FROM build AS install
|
||||
RUN --network=none make DESTDIR=/rootfs install
|
||||
|
||||
FROM stagex/filesystem AS package
|
||||
COPY --from=install /rootfs/. /
|
44
packages/libedit/Containerfile
Normal file
44
packages/libedit/Containerfile
Normal file
|
@ -0,0 +1,44 @@
|
|||
FROM scratch AS base
|
||||
ARG ARCH=x86_64
|
||||
ENV VERSION=20230828-3.1
|
||||
ENV SRC_HASH=4ee8182b6e569290e7d1f44f0f78dac8716b35f656b76528f699c69c98814dad
|
||||
ENV SRC_FILE=libedit-${VERSION}.tar.gz
|
||||
ENV SRC_SITE=https://www.thrysoee.dk/editline/${SRC_FILE}
|
||||
|
||||
FROM base AS fetch
|
||||
ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE}
|
||||
|
||||
FROM fetch AS build
|
||||
COPY --from=stagex/perl . /
|
||||
COPY --from=stagex/ncurses . /
|
||||
COPY --from=stagex/gawk . /
|
||||
COPY --from=stagex/autoconf . /
|
||||
COPY --from=stagex/automake . /
|
||||
COPY --from=stagex/busybox . /
|
||||
COPY --from=stagex/musl . /
|
||||
COPY --from=stagex/gcc . /
|
||||
COPY --from=stagex/binutils . /
|
||||
COPY --from=stagex/make . /
|
||||
RUN tar -xf $SRC_FILE
|
||||
WORKDIR libedit-${VERSION}
|
||||
RUN --network=none <<-EOF
|
||||
set -eux
|
||||
./configure \
|
||||
--build=${ARCH}-linux-musl \
|
||||
--host=${ARCH}-linux-musl \
|
||||
--prefix=/usr \
|
||||
--sysconfdir=/etc \
|
||||
--mandir=/usr/share/man \
|
||||
--infodir=/usr/share/info \
|
||||
--localstatedir=/var
|
||||
make -j "$(nproc)"
|
||||
EOF
|
||||
|
||||
FROM build AS install
|
||||
RUN make DESTDIR=/rootfs install
|
||||
RUN find /rootfs -exec touch -hcd "@0" "{}" +
|
||||
|
||||
FROM stagex/filesystem AS package
|
||||
COPY --from=install /rootfs/. /
|
||||
|
||||
|
42
packages/libevent/Containerfile
Normal file
42
packages/libevent/Containerfile
Normal file
|
@ -0,0 +1,42 @@
|
|||
FROM scratch AS base
|
||||
ARG ARCH=x86_64
|
||||
ENV VERSION=2.1.12
|
||||
ENV SRC_HASH=92e6de1be9ec176428fd2367677e61ceffc2ee1cb119035037a27d346b0403bb
|
||||
ENV SRC_FILE=libevent-${VERSION}-stable.tar.gz
|
||||
ENV SRC_SITE=https://github.com/libevent/libevent/releases/download/release-${VERSION}-stable/${SRC_FILE}
|
||||
|
||||
FROM base AS fetch
|
||||
ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE}
|
||||
|
||||
FROM fetch AS build
|
||||
COPY --from=stagex/bash . /
|
||||
COPY --from=stagex/busybox . /
|
||||
COPY --from=stagex/musl . /
|
||||
COPY --from=stagex/gcc . /
|
||||
COPY --from=stagex/binutils . /
|
||||
COPY --from=stagex/make . /
|
||||
COPY --from=stagex/openssl . /
|
||||
RUN tar -xf $SRC_FILE
|
||||
WORKDIR libevent-${VERSION}-stable
|
||||
RUN --network=none <<-EOF
|
||||
set -eux
|
||||
./configure \
|
||||
--build=${ARCH}-linux-musl \
|
||||
--host=${ARCH}-linux-musl \
|
||||
--prefix=/usr \
|
||||
--sysconfdir=/etc
|
||||
make -j "$(nproc)"
|
||||
EOF
|
||||
|
||||
FROM build AS install
|
||||
RUN make DESTDIR=/rootfs install
|
||||
RUN find /rootfs -exec touch -hcd "@0" "{}" +
|
||||
|
||||
FROM stagex/filesystem AS package
|
||||
COPY --from=install /rootfs/. /
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
43
packages/libical/Containerfile
Normal file
43
packages/libical/Containerfile
Normal file
|
@ -0,0 +1,43 @@
|
|||
FROM scratch AS base
|
||||
ARG ARCH=x86_64
|
||||
ENV VERSION=5.1.4
|
||||
ENV SRC_HASH=bdf344c5adbcc6797940f8f8cb75cb59f5a3794eb21b9547751a11782a792ef7
|
||||
ENV SRC_FILE=nuspell-${VERSION}.tar.gz
|
||||
ENV SRC_SITE=https://github.com/nuspell/nuspell/archive/refs/tags/v${VERSION}.tar.gz
|
||||
|
||||
FROM base AS fetch
|
||||
ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} .
|
||||
|
||||
FROM fetch AS build
|
||||
COPY --from=stagex/busybox . /
|
||||
COPY --from=stagex/perl . /
|
||||
COPY --from=stagex/binutils . /
|
||||
COPY --from=stagex/cmake . /
|
||||
COPY --from=stagex/ninja . /
|
||||
COPY --from=stagex/samurai . /
|
||||
COPY --from=stagex/musl . /
|
||||
COPY --from=stagex/openssl . /
|
||||
COPY --from=stagex/icu . /
|
||||
COPY --from=stagex/make . /
|
||||
COPY --from=stagex/gcc . /
|
||||
RUN tar -xf v${VERSION}.tar.gz
|
||||
WORKDIR nuspell-${VERSION}
|
||||
RUN --network=none <<-EOF
|
||||
set -ex
|
||||
CXXFLAGS="$CXXFLAGS -flto=auto" \
|
||||
cmake -B build -G Ninja \
|
||||
-DCMAKE_INSTALL_PREFIX=/usr \
|
||||
-DCMAKE_INSTALL_LIBDIR=lib \
|
||||
-DBUILD_SHARED_LIBS=True \
|
||||
-DCMAKE_BUILD_TYPE=None \
|
||||
-DBUILD_TESTING="$(want_check && echo ON || echo OFF)" \
|
||||
-DBUILD_DOCS=OFF
|
||||
cmake --build build
|
||||
EOF
|
||||
|
||||
FROM build AS install
|
||||
RUN --network=none DESTDIR="/rootfs" cmake --install build
|
||||
RUN find /rootfs -exec touch -hcd "@0" "{}" +
|
||||
|
||||
FROM stagex/filesystem AS package
|
||||
COPY --from=install /rootfs/. /
|
37
packages/libiconv/Containerfile
Normal file
37
packages/libiconv/Containerfile
Normal file
|
@ -0,0 +1,37 @@
|
|||
|
||||
FROM scratch AS base
|
||||
ARG ARCH=x86_64
|
||||
ENV VERSION=1.17
|
||||
ENV SRC_HASH=8f74213b56238c85a50a5329f77e06198771e70dd9a739779f4c02f65d971313
|
||||
ENV SRC_FILE=libiconv-${VERSION}.tar.gz
|
||||
ENV SRC_SITE=https://ftp.gnu.org/gnu/libiconv/${SRC_FILE}
|
||||
|
||||
FROM base AS fetch
|
||||
ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE}
|
||||
|
||||
FROM fetch AS build
|
||||
COPY --from=stagex/musl . /
|
||||
COPY --from=stagex/gcc . /
|
||||
COPY --from=stagex/bash . /
|
||||
COPY --from=stagex/busybox . /
|
||||
COPY --from=stagex/binutils . /
|
||||
COPY --from=stagex/make . /
|
||||
COPY --from=stagex/openssl . /
|
||||
RUN tar -xf ${SRC_FILE}
|
||||
WORKDIR libiconv-${VERSION}
|
||||
RUN --network=none <<-EOF
|
||||
set -eux
|
||||
./configure \
|
||||
--prefix=/usr \
|
||||
--sysconfdir=/etc \
|
||||
--enable-openssl \
|
||||
--disable-openssl-runtime
|
||||
make -j "$(nproc)"
|
||||
EOF
|
||||
|
||||
FROM build AS install
|
||||
RUN make DESTDIR=/rootfs install
|
||||
RUN find /rootfs -exec touch -hcd "@0" "{}" +
|
||||
|
||||
FROM stagex/filesystem AS package
|
||||
COPY --from=install /rootfs/. /
|
41
packages/libseccomp/Containerfile
Normal file
41
packages/libseccomp/Containerfile
Normal file
|
@ -0,0 +1,41 @@
|
|||
FROM scratch AS base
|
||||
ENV VERSION=2.5.5
|
||||
ENV SRC_HASH=248a2c8a4d9b9858aa6baf52712c34afefcf9c9e94b76dce02c1c9aa25fb3375
|
||||
ENV SRC_FILE=libseccomp-${VERSION}.tar.gz
|
||||
ENV SRC_SITE=https://github.com/seccomp/libseccomp/releases/download/v${VERSION}/${SRC_FILE}
|
||||
|
||||
FROM base AS fetch
|
||||
ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} .
|
||||
|
||||
FROM fetch AS build
|
||||
COPY --from=stagex/busybox . /
|
||||
COPY --from=stagex/gcc . /
|
||||
COPY --from=stagex/gperf . /
|
||||
COPY --from=stagex/linux-headers . /
|
||||
COPY --from=stagex/binutils . /
|
||||
COPY --from=stagex/python . /
|
||||
COPY --from=stagex/cython . /
|
||||
COPY --from=stagex/make . /
|
||||
COPY --from=stagex/musl . /
|
||||
COPY --from=stagex/zlib . /
|
||||
RUN tar -xf ${SRC_FILE}
|
||||
WORKDIR libseccomp-${VERSION}
|
||||
RUN --network=none <<-EOF
|
||||
set -eux;
|
||||
./configure \
|
||||
--build=x86_64-linux-musl \
|
||||
--host=x86_64-linux-musl \
|
||||
--prefix=/usr \
|
||||
--infodir=/usr/share/info \
|
||||
--sysconfdir=/etc \
|
||||
--localstatedir=/var \
|
||||
--enable-python \
|
||||
--enable-static
|
||||
make -j "$(nproc)"
|
||||
EOF
|
||||
|
||||
FROM build AS install
|
||||
RUN --network=none make DESTDIR=/rootfs install
|
||||
|
||||
FROM stagex/filesystem AS package
|
||||
COPY --from=install /rootfs/. /
|
35
packages/libsodium/Containerfile
Normal file
35
packages/libsodium/Containerfile
Normal file
|
@ -0,0 +1,35 @@
|
|||
FROM scratch AS base
|
||||
ARG ARCH=x86_64
|
||||
ENV VERSION=1.0.20
|
||||
ENV SRC_HASH=ebb65ef6ca439333c2bb41a0c1990587288da07f6c7fd07cb3a18cc18d30ce19
|
||||
ENV SRC_FILE=libsodium-${VERSION}.tar.gz
|
||||
ENV SRC_SITE=https://github.com/jedisct1/libsodium/releases/download/${VERSION}-RELEASE/libsodium-${VERSION}.tar.gz
|
||||
|
||||
FROM base AS fetch
|
||||
ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} .
|
||||
|
||||
FROM fetch AS build
|
||||
COPY --from=stagex/busybox . /
|
||||
COPY --from=stagex/binutils . /
|
||||
COPY --from=stagex/musl . /
|
||||
COPY --from=stagex/make . /
|
||||
COPY --from=stagex/gcc . /
|
||||
RUN tar -xf ${SRC_FILE}
|
||||
WORKDIR libsodium-${VERSION}
|
||||
RUN --network=none <<-EOF
|
||||
set -ex
|
||||
./configure \
|
||||
--build=${ARCH}-linux-musl \
|
||||
--host=${ARCH}-linux-musl \
|
||||
--prefix=/usr
|
||||
make -j "$(nproc)"
|
||||
EOF
|
||||
|
||||
FROM build AS install
|
||||
RUN --network=none <<-EOF
|
||||
set -eu
|
||||
make DESTDIR="/rootfs" install
|
||||
EOF
|
||||
|
||||
FROM stagex/filesystem AS package
|
||||
COPY --from=install /rootfs/. /
|
63
packages/libverto/Containerfile
Normal file
63
packages/libverto/Containerfile
Normal file
|
@ -0,0 +1,63 @@
|
|||
FROM scratch AS base
|
||||
ARG ARCH=x86_64
|
||||
ENV VERSION=0.3.2
|
||||
ENV SRC_HASH=8d1756fd704f147549f606cd987050fb94b0b1ff621ea6aa4d6bf0b74450468a
|
||||
ENV SRC_FILE=libverto-${VERSION}.tar.gz
|
||||
ENV SRC_SITE=https://github.com/latchset/libverto/releases/download/0.3.2/${SRC_FILE}
|
||||
|
||||
FROM base AS fetch
|
||||
ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE}
|
||||
|
||||
FROM fetch AS build
|
||||
COPY --from=stagex/perl . /
|
||||
COPY --from=stagex/bash . /
|
||||
COPY --from=stagex/m4 . /
|
||||
COPY --from=stagex/curl . /
|
||||
COPY --from=stagex/linux-headers . /
|
||||
COPY --from=stagex/util-linux . /
|
||||
COPY --from=stagex/autoconf . /
|
||||
COPY --from=stagex/automake . /
|
||||
COPY --from=stagex/busybox . /
|
||||
COPY --from=stagex/musl . /
|
||||
COPY --from=stagex/gcc . /
|
||||
COPY --from=stagex/binutils . /
|
||||
COPY --from=stagex/make . /
|
||||
COPY --from=stagex/e2fsprogs . /
|
||||
COPY --from=stagex/python . /
|
||||
COPY --from=stagex/openldap . /
|
||||
COPY --from=stagex/libtool . /
|
||||
COPY --from=stagex/openssl . /
|
||||
COPY --from=stagex/groff . /
|
||||
COPY --from=stagex/busybox . /
|
||||
COPY --from=stagex/perl . /
|
||||
COPY --from=stagex/autoconf . /
|
||||
COPY --from=stagex/automake . /
|
||||
COPY --from=stagex/musl . /
|
||||
COPY --from=stagex/gcc . /
|
||||
COPY --from=stagex/binutils . /
|
||||
COPY --from=stagex/make . /
|
||||
COPY --from=stagex/libedit . /
|
||||
COPY --from=stagex/python . /
|
||||
COPY --from=stagex/libevent . /
|
||||
COPY --from=stagex/pkgconf . /
|
||||
RUN tar -xf $SRC_FILE
|
||||
WORKDIR libverto-${VERSION}
|
||||
RUN --network=none <<-EOF
|
||||
set -eux
|
||||
./configure \
|
||||
--build=${ARCH}-linux-musl \
|
||||
--host=${ARCH}-linux-musl \
|
||||
--prefix=/usr \
|
||||
--localstatedir=/var/lib \
|
||||
--with-libdev \
|
||||
--with-libevent
|
||||
make -j "$(nproc)"
|
||||
EOF
|
||||
|
||||
FROM build AS install
|
||||
RUN make DESTDIR=/rootfs install
|
||||
RUN find /rootfs -exec touch -hcd "@0" "{}" +
|
||||
RUN mv /rootfs/usr/lib/libverto-libevent.so.* /rootfs/usr/lib/
|
||||
|
||||
FROM stagex/filesystem AS package
|
||||
COPY --from=install /rootfs/. /
|
56
packages/linux-pam/Containerfile
Normal file
56
packages/linux-pam/Containerfile
Normal file
|
@ -0,0 +1,56 @@
|
|||
FROM scratch AS base
|
||||
ARG ARCH=x86_64
|
||||
ENV VERSION=1.6.1
|
||||
ENV SRC_HASH=f8923c740159052d719dbfc2a2f81942d68dd34fcaf61c706a02c9b80feeef8e
|
||||
ENV SRC_FILE=Linux-PAM-${VERSION}.tar.xz
|
||||
ENV SRC_SITE=https://github.com/linux-pam/linux-pam/releases/download/v${VERSION}/${SRC_FILE}
|
||||
|
||||
FROM base AS fetch
|
||||
ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE}
|
||||
|
||||
FROM fetch AS build
|
||||
COPY --from=stagex/musl . /
|
||||
COPY --from=stagex/gcc . /
|
||||
COPY --from=stagex/busybox . /
|
||||
COPY --from=stagex/binutils . /
|
||||
COPY --from=stagex/make . /
|
||||
COPY --from=stagex/bison . /
|
||||
COPY --from=stagex/cmake . /
|
||||
COPY --from=stagex/perl . /
|
||||
COPY --from=stagex/autoconf . /
|
||||
COPY --from=stagex/automake . /
|
||||
COPY --from=stagex/linux-headers . /
|
||||
COPY --from=stagex/utmps . /
|
||||
COPY --from=stagex/libtool . /
|
||||
COPY --from=stagex/gettext . /
|
||||
COPY --from=stagex/flex . /
|
||||
COPY --from=stagex/pkgconf . /
|
||||
RUN tar -xf ${SRC_FILE}
|
||||
WORKDIR Linux-PAM-${VERSION}
|
||||
RUN --network=none <<-EOF
|
||||
set -eux
|
||||
export CFLAGS="-flto=auto $(pkg-config --cflags utmps)"
|
||||
export LDFLAGS=$(pkg-config --libs utmps)
|
||||
./configure \
|
||||
--build=${ARCH}-linux-musl \
|
||||
--host=${ARCH}-linux-musl \
|
||||
--prefix=/usr \
|
||||
--libdir=/usr/lib \
|
||||
--sysconfdir=/etc \
|
||||
--mandir=/usr/share/man \
|
||||
--infodir=/usr/share/info \
|
||||
--localstatedir=/var \
|
||||
--disable-nls \
|
||||
--disable-db \
|
||||
--disable-examples \
|
||||
--sbindir=/usr/sbin \
|
||||
--enable-securedir=/usr/lib/security
|
||||
make -j "$(nproc)"
|
||||
EOF
|
||||
|
||||
FROM build AS install
|
||||
RUN make DESTDIR=/rootfs install
|
||||
RUN find /rootfs -exec touch -hcd "@0" "{}" +
|
||||
|
||||
FROM stagex/filesystem AS package
|
||||
COPY --from=install /rootfs/. /
|
|
@ -26,15 +26,15 @@ COPY --from=stagex/gcc /usr/lib64/* /usr/lib/
|
|||
RUN tar -xf ${SRC_FILE}
|
||||
WORKDIR llvm-project-${VERSION}.src
|
||||
RUN set -eux; \
|
||||
cmake \
|
||||
-S lld \
|
||||
-B build \
|
||||
-G Ninja \
|
||||
-Wno-dev \
|
||||
cmake \
|
||||
-S lld \
|
||||
-B build \
|
||||
-G Ninja \
|
||||
-Wno-dev \
|
||||
-DCMAKE_BUILD_TYPE=Release \
|
||||
-DCMAKE_INSTALL_PREFIX=/usr/ \
|
||||
-DCMAKE_INSTALL_RPATH=/usr/ \
|
||||
-DLLVM_ENABLE_ZLIB=FORCE_ON; \
|
||||
-DLLVM_ENABLE_ZLIB=FORCE_ON; \
|
||||
cmake --build build
|
||||
|
||||
FROM build AS install
|
||||
|
|
34
packages/lmdb/Containerfile
Normal file
34
packages/lmdb/Containerfile
Normal file
|
@ -0,0 +1,34 @@
|
|||
FROM scratch AS base
|
||||
ARG ARCH=x86_64
|
||||
ENV VERSION=0.9.31
|
||||
ENV SRC_HASH=f7aecdd1bcc69fb32bb33d8544cfe50f8e9e916f366d598a268e1f43ee9c7603
|
||||
ENV SRC_FILE=openldap-LMDB_${VERSION}.tar.gz
|
||||
ENV SRC_SITE=https://git.openldap.org/openldap/openldap/-/archive/LMDB_${VERSION}/${SRC_FILE}
|
||||
|
||||
FROM base AS fetch
|
||||
ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE}
|
||||
|
||||
FROM fetch AS build
|
||||
COPY --from=stagex/musl . /
|
||||
COPY --from=stagex/gcc . /
|
||||
COPY --from=stagex/bash . /
|
||||
COPY --from=stagex/busybox . /
|
||||
COPY --from=stagex/binutils . /
|
||||
COPY --from=stagex/make . /
|
||||
COPY --from=stagex/openssl . /
|
||||
RUN tar -xf ${SRC_FILE}
|
||||
WORKDIR openldap-LMDB_${VERSION}/libraries/liblmdb
|
||||
COPY *.patch .
|
||||
RUN --network=none <<-EOF
|
||||
set -eux \
|
||||
patch -p1 lmdb-make.patch
|
||||
export CFLAGS="-O2 -fPIC"
|
||||
make -j "$(nproc)"
|
||||
EOF
|
||||
|
||||
FROM build AS install
|
||||
RUN make DESTDIR=/rootfs install
|
||||
RUN find /rootfs -exec touch -hcd "@0" "{}" +
|
||||
|
||||
FROM stagex/filesystem AS package
|
||||
COPY --from=install /rootfs/. /
|
83
packages/lmdb/lmdb-make.patch
Normal file
83
packages/lmdb/lmdb-make.patch
Normal file
|
@ -0,0 +1,83 @@
|
|||
diff --git a/Makefile b/Makefile
|
||||
index f254511..949d9ae 100644
|
||||
--- a/Makefile
|
||||
+++ b/Makefile
|
||||
@@ -26,6 +26,10 @@ OPT = -O2 -g
|
||||
CFLAGS = $(THREADS) $(OPT) $(W) $(XCFLAGS)
|
||||
LDLIBS =
|
||||
SOLIBS =
|
||||
+SOVER_MAJ = 0
|
||||
+SOVER_MIN = 0
|
||||
+SOVER_PATCH = 0
|
||||
+SOVERSION = $(SOVER_MAJ).$(SOVER_MIN).$(SOVER_PATCH)
|
||||
SOEXT = .so
|
||||
prefix = /usr/local
|
||||
exec_prefix = $(prefix)
|
||||
@@ -38,7 +42,7 @@ mandir = $(datarootdir)/man
|
||||
########################################################################
|
||||
|
||||
IHDRS = lmdb.h
|
||||
-ILIBS = liblmdb.a liblmdb$(SOEXT)
|
||||
+ILIBS = liblmdb$(SOEXT) liblmdb$(SOEXT).$(SOVERSION) liblmdb$(SOEXT).$(SOVER_MAJ)
|
||||
IPROGS = mdb_stat mdb_copy mdb_dump mdb_load
|
||||
IDOCS = mdb_stat.1 mdb_copy.1 mdb_dump.1 mdb_load.1
|
||||
PROGS = $(IPROGS) mtest mtest2 mtest3 mtest4 mtest5
|
||||
@@ -49,13 +53,13 @@ install: $(ILIBS) $(IPROGS) $(IHDRS)
|
||||
mkdir -p $(DESTDIR)$(libdir)
|
||||
mkdir -p $(DESTDIR)$(includedir)
|
||||
mkdir -p $(DESTDIR)$(mandir)/man1
|
||||
- for f in $(IPROGS); do cp $$f $(DESTDIR)$(bindir); done
|
||||
- for f in $(ILIBS); do cp $$f $(DESTDIR)$(libdir); done
|
||||
- for f in $(IHDRS); do cp $$f $(DESTDIR)$(includedir); done
|
||||
- for f in $(IDOCS); do cp $$f $(DESTDIR)$(mandir)/man1; done
|
||||
+ for f in $(IPROGS); do cp -a $$f $(DESTDIR)$(bindir); done
|
||||
+ for f in $(ILIBS); do cp -a $$f $(DESTDIR)$(libdir); done
|
||||
+ for f in $(IHDRS); do cp -a $$f $(DESTDIR)$(includedir); done
|
||||
+ for f in $(IDOCS); do cp -a $$f $(DESTDIR)$(mandir)/man1; done
|
||||
|
||||
clean:
|
||||
- rm -rf $(PROGS) *.[ao] *.[ls]o *~ testdb
|
||||
+ rm -rf $(PROGS) *.[ao] *.[ls]o* *~ testdb
|
||||
|
||||
test: all
|
||||
rm -rf testdb && mkdir testdb
|
||||
@@ -64,21 +68,25 @@ test: all
|
||||
liblmdb.a: mdb.o midl.o
|
||||
$(AR) rs $@ mdb.o midl.o
|
||||
|
||||
-liblmdb$(SOEXT): mdb.lo midl.lo
|
||||
+liblmdb$(SOEXT) liblmdb$(SOEXT).$(SOVER_MAJ): liblmdb$(SOEXT).$(SOVERSION)
|
||||
+ rm -f $@
|
||||
+ ln -s $< $@
|
||||
+
|
||||
+liblmdb$(SOEXT).$(SOVERSION): mdb.lo midl.lo
|
||||
# $(CC) $(LDFLAGS) -pthread -shared -Wl,-Bsymbolic -o $@ mdb.o midl.o $(SOLIBS)
|
||||
- $(CC) $(LDFLAGS) -pthread -shared -o $@ mdb.lo midl.lo $(SOLIBS)
|
||||
-
|
||||
-mdb_stat: mdb_stat.o liblmdb.a
|
||||
-mdb_copy: mdb_copy.o liblmdb.a
|
||||
-mdb_dump: mdb_dump.o liblmdb.a
|
||||
-mdb_load: mdb_load.o liblmdb.a
|
||||
-mtest: mtest.o liblmdb.a
|
||||
-mtest2: mtest2.o liblmdb.a
|
||||
-mtest3: mtest3.o liblmdb.a
|
||||
-mtest4: mtest4.o liblmdb.a
|
||||
-mtest5: mtest5.o liblmdb.a
|
||||
-mtest6: mtest6.o liblmdb.a
|
||||
-mplay: mplay.o liblmdb.a
|
||||
+ $(CC) $(LDFLAGS) -pthread -shared -Wl,-soname,liblmdb$(SOEXT).$(SOVER_MAJ) -o $@ mdb.lo midl.lo $(SOLIBS)
|
||||
+
|
||||
+mdb_stat: mdb_stat.o liblmdb.so
|
||||
+mdb_copy: mdb_copy.o liblmdb.so
|
||||
+mdb_dump: mdb_dump.o liblmdb.so
|
||||
+mdb_load: mdb_load.o liblmdb.so
|
||||
+mtest: mtest.o liblmdb.so
|
||||
+mtest2: mtest2.o liblmdb.so
|
||||
+mtest3: mtest3.o liblmdb.so
|
||||
+mtest4: mtest4.o liblmdb.so
|
||||
+mtest5: mtest5.o liblmdb.so
|
||||
+mtest6: mtest6.o liblmdb.so
|
||||
+mplay: mplay.o liblmdb.so
|
||||
|
||||
mdb.o: mdb.c lmdb.h midl.h
|
||||
$(CC) $(CFLAGS) $(CPPFLAGS) -c mdb.c
|
39
packages/lzo/Containerfile
Normal file
39
packages/lzo/Containerfile
Normal file
|
@ -0,0 +1,39 @@
|
|||
FROM scratch AS base
|
||||
ENV VERSION=2.10
|
||||
ENV SRC_HASH=c0f892943208266f9b6543b3ae308fab6284c5c90e627931446fb49b4221a072
|
||||
ENV SRC_FILE=lzo-${VERSION}.tar.gz
|
||||
ENV SRC_SITE=https://www.oberhumer.com/opensource/lzo/download/${SRC_FILE}
|
||||
|
||||
FROM base AS fetch
|
||||
ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} .
|
||||
|
||||
FROM fetch AS build
|
||||
COPY --from=stagex/busybox . /
|
||||
COPY --from=stagex/binutils . /
|
||||
COPY --from=stagex/linux-headers . /
|
||||
COPY --from=stagex/cmake . /
|
||||
COPY --from=stagex/ninja . /
|
||||
COPY --from=stagex/musl . /
|
||||
COPY --from=stagex/gcc . /
|
||||
COPY --from=stagex/openssl . /
|
||||
COPY --from=stagex/gcc . /
|
||||
COPY --from=stagex/zlib . /
|
||||
|
||||
RUN tar -xf ${SRC_FILE}
|
||||
WORKDIR lzo-${VERSION}
|
||||
RUN <<-EOF
|
||||
set -eux
|
||||
cmake -B build -G Ninja \
|
||||
-DBUILD_TESTING=ON \
|
||||
-DCMAKE_INSTALL_PREFIX=/usr \
|
||||
-DCMAKE_INSTALL_LIBDIR=lib \
|
||||
-DCMAKE_BUILD_TYPE=Release \
|
||||
-DENABLE_SHARED=ON
|
||||
cmake --build build
|
||||
EOF
|
||||
|
||||
FROM build AS install
|
||||
RUN --network=none DESTDIR="/rootfs" cmake --install build
|
||||
|
||||
FROM stagex/filesystem AS package
|
||||
COPY --from=install /rootfs/. /
|
35
packages/numactl/Containerfile
Normal file
35
packages/numactl/Containerfile
Normal file
|
@ -0,0 +1,35 @@
|
|||
FROM scratch AS base
|
||||
ENV VERSION=2.0.18
|
||||
ENV SRC_HASH=b4fc0956317680579992d7815bc43d0538960dc73aa1dd8ca7e3806e30bc1274
|
||||
ENV SRC_FILE=numactl-${VERSION}.tar.gz
|
||||
ENV SRC_SITE=https://github.com/numactl/numactl/releases/download/v${VERSION}/${SRC_FILE}
|
||||
|
||||
FROM base AS fetch
|
||||
ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} .
|
||||
|
||||
FROM fetch AS build
|
||||
COPY --from=stagex/busybox . /
|
||||
COPY --from=stagex/binutils . /
|
||||
COPY --from=stagex/musl . /
|
||||
COPY --from=stagex/linux-headers . /
|
||||
COPY --from=stagex/make . /
|
||||
COPY --from=stagex/gcc . /
|
||||
COPY --from=stagex/gperf . /
|
||||
|
||||
RUN --network=none tar -xf ${SRC_FILE}
|
||||
WORKDIR numactl-${VERSION}
|
||||
RUN --network=none <<EOF
|
||||
set -eux
|
||||
./configure \
|
||||
--build=x86_64-linux-musl \
|
||||
--host=x86_64-linux-musl \
|
||||
--prefix=/usr \
|
||||
--mandir=/usr/share/man
|
||||
make -j "$(nproc)"
|
||||
EOF
|
||||
|
||||
FROM build AS install
|
||||
RUN --network=none DESTDIR=/rootfs make install
|
||||
|
||||
FROM stagex/filesystem AS package
|
||||
COPY --from=install /rootfs/. /
|
44
packages/nuspell/Containerfile
Normal file
44
packages/nuspell/Containerfile
Normal file
|
@ -0,0 +1,44 @@
|
|||
FROM scratch AS base
|
||||
ARG ARCH=x86_64
|
||||
ENV VERSION=5.1.4
|
||||
ENV SRC_HASH=bdf344c5adbcc6797940f8f8cb75cb59f5a3794eb21b9547751a11782a792ef7
|
||||
ENV SRC_FILE=nuspell-${VERSION}.tar.gz
|
||||
ENV SRC_SITE=https://github.com/nuspell/nuspell/archive/refs/tags/v${VERSION}.tar.gz
|
||||
|
||||
FROM base AS fetch
|
||||
ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} .
|
||||
|
||||
FROM fetch AS build
|
||||
COPY --from=stagex/busybox . /
|
||||
COPY --from=stagex/perl . /
|
||||
COPY --from=stagex/binutils . /
|
||||
COPY --from=stagex/cmake . /
|
||||
COPY --from=stagex/ninja . /
|
||||
COPY --from=stagex/samurai . /
|
||||
COPY --from=stagex/musl . /
|
||||
COPY --from=stagex/openssl . /
|
||||
COPY --from=stagex/icu . /
|
||||
COPY --from=stagex/make . /
|
||||
COPY --from=stagex/m4 . /
|
||||
COPY --from=stagex/gcc . /
|
||||
RUN tar -xf v${VERSION}.tar.gz
|
||||
WORKDIR nuspell-${VERSION}
|
||||
RUN --network=none <<-EOF
|
||||
set -ex
|
||||
CXXFLAGS="$CXXFLAGS -flto=auto" \
|
||||
cmake -B build -G Ninja \
|
||||
-DCMAKE_INSTALL_PREFIX=/usr \
|
||||
-DCMAKE_INSTALL_LIBDIR=lib \
|
||||
-DBUILD_SHARED_LIBS=True \
|
||||
-DCMAKE_BUILD_TYPE=None \
|
||||
-DBUILD_TESTING="$(want_check && echo ON || echo OFF)" \
|
||||
-DBUILD_DOCS=OFF
|
||||
cmake --build build
|
||||
EOF
|
||||
|
||||
FROM build AS install
|
||||
RUN --network=none DESTDIR="/rootfs" cmake --install build
|
||||
RUN find /rootfs -exec touch -hcd "@0" "{}" +
|
||||
|
||||
FROM stagex/filesystem AS package
|
||||
COPY --from=install /rootfs/. /
|
58
packages/openldap/Containerfile
Normal file
58
packages/openldap/Containerfile
Normal file
|
@ -0,0 +1,58 @@
|
|||
FROM scratch AS base
|
||||
ARG ARCH=x86_64
|
||||
ENV VERSION=2.5.17
|
||||
ENV SRC_HASH=d706a34b348ae38a9e3e4eb0d2cd5afeb939f2b2db95e6ae3d410d6a75e90e3c
|
||||
ENV SRC_FILE=openldap-${VERSION}.tgz
|
||||
ENV SRC_SITE=https://www.openldap.org/software/download/OpenLDAP/openldap-release/${SRC_FILE}
|
||||
|
||||
FROM base AS fetch
|
||||
ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE}
|
||||
|
||||
FROM fetch AS build
|
||||
COPY --from=stagex/perl . /
|
||||
COPY --from=stagex/bash . /
|
||||
COPY --from=stagex/m4 . /
|
||||
COPY --from=stagex/autoconf . /
|
||||
COPY --from=stagex/automake . /
|
||||
COPY --from=stagex/busybox . /
|
||||
COPY --from=stagex/musl . /
|
||||
COPY --from=stagex/gcc . /
|
||||
COPY --from=stagex/binutils . /
|
||||
COPY --from=stagex/make . /
|
||||
COPY --from=stagex/libtool . /
|
||||
COPY --from=stagex/unixodbc . /
|
||||
COPY --from=stagex/libedit . /
|
||||
COPY --from=stagex/libevent . /
|
||||
COPY --from=stagex/openssl . /
|
||||
COPY --from=stagex/argon2 . /
|
||||
COPY --from=stagex/groff . /
|
||||
RUN tar -xf $SRC_FILE
|
||||
WORKDIR openldap-${VERSION}
|
||||
ENV SOURCE_DATE_EPOCH=1
|
||||
RUN --network=none <<-EOF
|
||||
set -eux
|
||||
./configure \
|
||||
--enable-slapd \
|
||||
--enable-modules \
|
||||
--enable-dnssrv=mod \
|
||||
--enable-ldap=mod \
|
||||
--enable-mdb=mod \
|
||||
--enable-meta=mod \
|
||||
--enable-asyncmeta=mod \
|
||||
--enable-null=mod \
|
||||
--enable-passwd=mod \
|
||||
--enable-relay=mod \
|
||||
--enable-sock=mod \
|
||||
--enable-sql=mod \
|
||||
--enable-overlays=mod \
|
||||
--enable-balancer=mod \
|
||||
--enable-argon2
|
||||
make -j "$(nproc)"
|
||||
EOF
|
||||
|
||||
FROM build AS install
|
||||
RUN make DESTDIR=/rootfs install
|
||||
RUN find /rootfs -exec touch -hcd "@0" "{}" +
|
||||
|
||||
FROM stagex/filesystem AS package
|
||||
COPY --from=install /rootfs/. /
|
58
packages/pcre2/Containerfile
Normal file
58
packages/pcre2/Containerfile
Normal file
|
@ -0,0 +1,58 @@
|
|||
FROM scratch AS base
|
||||
ARG ARCH=x86_64
|
||||
ENV VERSION=10.43
|
||||
ENV SRC_HASH=f0048e26b02bdfaf43b8cec75030a9c2fe28552bf5caa693d3ccbf4d886fa930
|
||||
ENV SRC_FILE=pcre2-${VERSION}.tar.gz
|
||||
ENV SRC_SITE=https://github.com/PCRE2Project/pcre2/archive/refs/tags/${SRC_FILE}
|
||||
|
||||
FROM base AS fetch
|
||||
ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE}
|
||||
|
||||
FROM fetch AS build
|
||||
COPY --from=stagex/zlib . /
|
||||
COPY --from=stagex/gawk . /
|
||||
COPY --from=stagex/bzip2 . /
|
||||
COPY --from=stagex/readline . /
|
||||
COPY --from=stagex/libzstd . /
|
||||
COPY --from=stagex/perl . /
|
||||
COPY --from=stagex/autoconf . /
|
||||
COPY --from=stagex/automake . /
|
||||
COPY --from=stagex/busybox . /
|
||||
COPY --from=stagex/linux-headers . /
|
||||
COPY --from=stagex/musl . /
|
||||
COPY --from=stagex/gcc . /
|
||||
COPY --from=stagex/binutils . /
|
||||
COPY --from=stagex/make . /
|
||||
COPY --from=stagex/libtool . /
|
||||
COPY --from=stagex/m4 . /
|
||||
COPY --from=stagex/libedit . /
|
||||
COPY --from=stagex/ncurses . /
|
||||
RUN tar -xf $SRC_FILE
|
||||
WORKDIR pcre2-pcre2-${VERSION}
|
||||
RUN --network=none <<-EOF
|
||||
set -eux
|
||||
./autogen.sh
|
||||
./configure \
|
||||
CFLAGS="-O3" \
|
||||
--disable-shared \
|
||||
--build=${ARCH}-unknown-linux-musl \
|
||||
--host=${ARCH}-unknown-linux-musl \
|
||||
--prefix=/usr \
|
||||
--docdir=/usr/share/doc/pcre2-10.43 \
|
||||
--htmldir=/usr/share/doc/pcre2-10.43/html \
|
||||
--enable-pcre2-16 \
|
||||
--enable-pcre2-32 \
|
||||
--enable-pcre2grep-libz \
|
||||
--enable-pcre2test-libedit \
|
||||
# --enable-jit
|
||||
make -j "$(nproc)"
|
||||
EOF
|
||||
|
||||
FROM build AS install
|
||||
RUN make DESTDIR=/rootfs install
|
||||
RUN find /rootfs -exec touch -hcd "@0" "{}" +
|
||||
|
||||
FROM stagex/filesystem AS package
|
||||
COPY --from=install /rootfs/. /
|
||||
|
||||
|
35
packages/perl-dbi/Containerfile
Normal file
35
packages/perl-dbi/Containerfile
Normal file
|
@ -0,0 +1,35 @@
|
|||
FROM scratch AS base
|
||||
ARG ARCH=x86_64
|
||||
ENV VERSION=1.643
|
||||
ENV SRC_HASH=8a2b993db560a2c373c174ee976a51027dd780ec766ae17620c20393d2e836fa
|
||||
ENV SRC_FILE=DBI-${VERSION}.tar.gz
|
||||
ENV SRC_SITE=https://cpan.metacpan.org/authors/id/T/TI/TIMB/${SRC_FILE}
|
||||
|
||||
FROM base AS fetch
|
||||
ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE}
|
||||
|
||||
FROM fetch AS build
|
||||
COPY --from=stagex/musl . /
|
||||
COPY --from=stagex/gcc . /
|
||||
COPY --from=stagex/bash . /
|
||||
COPY --from=stagex/busybox . /
|
||||
COPY --from=stagex/binutils . /
|
||||
COPY --from=stagex/pkgconf . /
|
||||
COPY --from=stagex/perl . /
|
||||
COPY --from=stagex/make . /
|
||||
RUN tar -xf ${SRC_FILE}
|
||||
WORKDIR DBI-${VERSION}
|
||||
ENV SOURCE_DATE_EPOCH=1
|
||||
RUN --network=none <<-EOF
|
||||
set -eux
|
||||
perl Makefile.PL
|
||||
PERL_MM_USE_DEFAULT="1 perl -I. Makefile.PL INSTALLDIRS=vendor"
|
||||
make -j "$(nproc)"
|
||||
EOF
|
||||
|
||||
FROM build AS install
|
||||
RUN make DESTDIR=/rootfs install
|
||||
RUN find /rootfs -exec touch -hcd "@0" "{}" +
|
||||
|
||||
FROM stagex/filesystem AS package
|
||||
COPY --from=install /rootfs/. /
|
34
packages/perl-yaml-syck/Containerfile
Normal file
34
packages/perl-yaml-syck/Containerfile
Normal file
|
@ -0,0 +1,34 @@
|
|||
FROM scratch AS base
|
||||
ARG ARCH=x86_64
|
||||
ENV VERSION=1.34
|
||||
ENV SRC_HASH=cc9156ccaebda798ebfe2f31b619e806577f860ed1704262f17ffad3c6e34159
|
||||
ENV SRC_FILE=YAML-Syck-${VERSION}.tar.gz
|
||||
ENV SRC_SITE=https://cpan.metacpan.org/authors/id/T/TO/TODDR/${SRC_FILE}
|
||||
|
||||
FROM base AS fetch
|
||||
ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE}
|
||||
|
||||
FROM fetch AS build
|
||||
COPY --from=stagex/perl . /
|
||||
COPY --from=stagex/musl . /
|
||||
COPY --from=stagex/gcc . /
|
||||
COPY --from=stagex/busybox . /
|
||||
COPY --from=stagex/binutils . /
|
||||
COPY --from=stagex/make . /
|
||||
|
||||
RUN tar -xf ${SRC_FILE}
|
||||
WORKDIR YAML-Syck-${VERSION}
|
||||
ENV SOURCE_DATE_EPOCH=1
|
||||
RUN --network=none <<-EOF
|
||||
set -eux \
|
||||
export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
|
||||
PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL INSTALLDIRS=vendor
|
||||
make -j "$(nproc)"
|
||||
EOF
|
||||
|
||||
FROM build AS install
|
||||
RUN make DESTDIR=/rootfs install
|
||||
RUN find /rootfs -exec touch -hcd "@0" "{}" +
|
||||
|
||||
FROM stagex/filesystem AS package
|
||||
COPY --from=install /rootfs/. /
|
179
packages/php/Containerfile
Normal file
179
packages/php/Containerfile
Normal file
|
@ -0,0 +1,179 @@
|
|||
FROM scratch AS base
|
||||
ARG ARCH=x86_64
|
||||
ENV PKG_NAME=php83
|
||||
ENV VERSION=8.3.4
|
||||
ENV SRC_HASH=4e633d4709afa5301d84d3821471bfb136f281bb71f9acca2fe9d29cc0407d2a
|
||||
ENV SRC_FILE=php-${VERSION}.tar.gz
|
||||
ENV SRC_SITE=https://github.com/php/php-src/archive/refs/tags/${SRC_FILE}
|
||||
|
||||
FROM base AS fetch
|
||||
ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} .
|
||||
|
||||
FROM fetch AS build
|
||||
COPY --from=stagex/libunwind . /
|
||||
COPY --from=stagex/acl . /
|
||||
COPY --from=stagex/automake . /
|
||||
COPY --from=stagex/bash . /
|
||||
COPY --from=stagex/bc . /
|
||||
COPY --from=stagex/busybox . /
|
||||
COPY --from=stagex/libzstd . /
|
||||
COPY --from=stagex/lld . /
|
||||
COPY --from=stagex/binutils . /
|
||||
COPY --from=stagex/llvm . /
|
||||
COPY --from=stagex/curl . /
|
||||
COPY --from=stagex/clang . /
|
||||
COPY --from=stagex/bison . /
|
||||
COPY --from=stagex/gdbm . /
|
||||
COPY --from=stagex/lmdb . /
|
||||
COPY --from=stagex/pkgconf . /
|
||||
COPY --from=stagex/autoconf . /
|
||||
COPY --from=stagex/make . /
|
||||
COPY --from=stagex/gcc . /
|
||||
COPY --from=stagex/gmp . /
|
||||
COPY --from=stagex/icu . /
|
||||
COPY --from=stagex/gettext . /
|
||||
COPY --from=stagex/openssl . /
|
||||
COPY --from=stagex/expat . /
|
||||
COPY --from=stagex/libxml2 . /
|
||||
COPY --from=stagex/re2c . /
|
||||
COPY --from=stagex/musl . /
|
||||
COPY --from=stagex/perl . /
|
||||
COPY --from=stagex/m4 . /
|
||||
COPY --from=stagex/zlib . /
|
||||
COPY --from=stagex/lzip . /
|
||||
COPY --from=stagex/pcre2 . /
|
||||
COPY --from=stagex/bzip2 . /
|
||||
COPY --from=stagex/python . /
|
||||
COPY --from=stagex/libedit . /
|
||||
COPY --from=stagex/linux-headers . /
|
||||
COPY --from=stagex/sqlite3 . /
|
||||
RUN tar -xf php-${VERSION}.tar.gz
|
||||
WORKDIR php-src-php-${VERSION}
|
||||
COPY *.patch .
|
||||
RUN --network=none <<-EOF
|
||||
set -eux
|
||||
export CFLAGS="-O2"
|
||||
export CXXFLAGS="-O2"
|
||||
patch -p1 fix-lfs64-2.patch
|
||||
patch -p1 fix-tests-devserver.patch
|
||||
patch -p1 includedir.patch
|
||||
patch -p1 install-pear.patch
|
||||
patch -p1 php83-fpm-verison-suffix.patch
|
||||
patch -p1 phpinfo-avif.patch
|
||||
patch -p1 sharedir.patch
|
||||
export CC=clang-18
|
||||
export CXX=clang++-18
|
||||
./buildconf --force
|
||||
EXTENSION_DIR=/usr/lib/modules ./configure \
|
||||
--build=x86_64-linux-musl \
|
||||
--host=x86_64-linux-musl \
|
||||
--prefix=/usr \
|
||||
--program-suffix=php83#php \
|
||||
--libdir=/usr/lib \
|
||||
--datadir=/usr/share/php83 \
|
||||
--sysconfdir=/etc/php83 \
|
||||
--localstatedir=/var \
|
||||
--with-layout=GNU \
|
||||
--with-pic \
|
||||
--with-config-file-path=/etc/php83 \
|
||||
--with-config-file-scan-dir=/etc/php83/conf.d \
|
||||
--disable-rpath \
|
||||
--disable-short-tags \
|
||||
\
|
||||
--disable-all \
|
||||
--enable-bcmath=shared \
|
||||
--with-bz2=shared \
|
||||
--enable-calendar=shared \
|
||||
--enable-ctype=shared \
|
||||
--with-curl=shared \
|
||||
# --enable-dba=shared \
|
||||
# --with-dbmaker=shared \
|
||||
# --with-gdbm \
|
||||
# --with-lmdb \
|
||||
# --enable-dom=shared \
|
||||
# --with-enchant=shared \
|
||||
# --enable-exif=shared \
|
||||
# --with-ffi=shared \
|
||||
# --enable-fileinfo=shared \
|
||||
# --enable-ftp=shared \
|
||||
# --enable-gd=shared \
|
||||
# --with-avif \
|
||||
# --with-freetype \
|
||||
# --with-jpeg \
|
||||
# --with-webp \
|
||||
# --with-xpm \
|
||||
# --disable-gd-jis-conv \
|
||||
# --with-gettext=shared \
|
||||
# --with-gmp=shared \
|
||||
# --with-iconv=shared \
|
||||
# --with-imap=shared \
|
||||
# --with-imap-ssl \
|
||||
# --enable-intl=shared \
|
||||
# --with-ldap=shared \
|
||||
# --with-ldap-sasl \
|
||||
# --with-libedit \
|
||||
# --with-libxml \
|
||||
# --enable-mbstring=shared \
|
||||
# --with-mysqli=shared \
|
||||
# --with-mysql-sock=/run/mysqld/mysqld.sock \
|
||||
# --enable-mysqlnd=shared \
|
||||
# --enable-opcache=shared \
|
||||
# --with-openssl=shared \
|
||||
# --with-kerberos \
|
||||
# --with-system-ciphers \
|
||||
# --with-password-argon2 \
|
||||
# --enable-pcntl=shared \
|
||||
# --with-external-pcre \
|
||||
# #$without_pcre_jit \
|
||||
# --enable-pdo=shared \
|
||||
# --with-pdo-dblib=shared,/usr \
|
||||
# --with-pdo-mysql=shared,mysqlnd \
|
||||
# --with-pdo-odbc=shared,unixODBC,/usr \
|
||||
# --with-pdo-pgsql=shared \
|
||||
# --with-pdo-sqlite=shared \
|
||||
# --with-pgsql=shared \
|
||||
# --enable-phar=shared \
|
||||
# --enable-posix=shared \
|
||||
# --with-pspell=shared \
|
||||
# --without-readline \
|
||||
# --enable-session=shared \
|
||||
# --enable-shmop=shared \
|
||||
# --enable-simplexml=shared \
|
||||
# --with-snmp=shared \
|
||||
# --enable-soap=shared \
|
||||
# --with-sodium=shared \
|
||||
# --enable-sockets=shared \
|
||||
# --with-sqlite3=shared \
|
||||
# --enable-sysvmsg=shared \
|
||||
# --enable-sysvsem=shared \
|
||||
# --enable-sysvshm=shared \
|
||||
# --with-tidy=shared \
|
||||
# --enable-tokenizer=shared \
|
||||
# --with-unixODBC=shared,/usr \
|
||||
# --enable-xml=shared \
|
||||
# --enable-xmlreader=shared \
|
||||
# --enable-xmlwriter=shared \
|
||||
# --with-xsl=shared \
|
||||
# --with-zip=shared \
|
||||
# --with-zlib \
|
||||
# --enable-zend-test=shared \
|
||||
"$@"
|
||||
make -j "$(nproc)"
|
||||
EOF
|
||||
|
||||
FROM build AS install
|
||||
RUN --network=none make INSTALL_ROOT=/rootfs install
|
||||
|
||||
FROM build AS test
|
||||
RUN /bin/sh -c 'set -eux; \
|
||||
if ! make TEST_PHP_ARGS=-j$(nproc) test; then \
|
||||
echo "PHP test failed"; \
|
||||
exit 1; \
|
||||
fi'
|
||||
|
||||
FROM stagex/filesystem AS package
|
||||
COPY --from=stagex/busybox . /
|
||||
USER root
|
||||
RUN rm -rf /var/run
|
||||
RUN mkdir -p /var && mkdir -p /var/run && chown -R root:root /var/run && chmod -R 755 /var/run
|
||||
COPY --from=install /rootfs/. /
|
39
packages/php/fix-lfs64-2.patch
Normal file
39
packages/php/fix-lfs64-2.patch
Normal file
|
@ -0,0 +1,39 @@
|
|||
Patch-Source: https://github.com/php/php-src/commit/577b8ae4226368e66fee7a9b5c58f9e2428372fc
|
||||
From 577b8ae4226368e66fee7a9b5c58f9e2428372fc Mon Sep 17 00:00:00 2001
|
||||
From: Arnaud Le Blanc <arnaud.lb@gmail.com>
|
||||
Date: Mon, 8 Apr 2024 14:58:12 +0200
|
||||
Subject: [PATCH] Fix cookie_seek_function_t signature under musl (#13890)
|
||||
|
||||
Fixes GH-11678
|
||||
---
|
||||
main/streams/cast.c | 10 +++-------
|
||||
1 file changed, 3 insertions(+), 7 deletions(-)
|
||||
|
||||
diff --git a/main/streams/cast.c b/main/streams/cast.c
|
||||
index 3bad65fbac1f5..8d9f4a9d2d54b 100644
|
||||
--- a/main/streams/cast.c
|
||||
+++ b/main/streams/cast.c
|
||||
@@ -104,6 +104,9 @@ static ssize_t stream_cookie_writer(void *cookie, const char *buffer, size_t siz
|
||||
|
||||
# ifdef COOKIE_SEEKER_USES_OFF64_T
|
||||
static int stream_cookie_seeker(void *cookie, off64_t *position, int whence)
|
||||
+# else
|
||||
+static int stream_cookie_seeker(void *cookie, off_t *position, int whence)
|
||||
+# endif
|
||||
{
|
||||
|
||||
*position = php_stream_seek((php_stream *)cookie, (zend_off_t)*position, whence);
|
||||
@@ -113,13 +116,6 @@ static int stream_cookie_seeker(void *cookie, off64_t *position, int whence)
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
-# else
|
||||
-static int stream_cookie_seeker(void *cookie, zend_off_t position, int whence)
|
||||
-{
|
||||
-
|
||||
- return php_stream_seek((php_stream *)cookie, position, whence);
|
||||
-}
|
||||
-# endif
|
||||
|
||||
static int stream_cookie_closer(void *cookie)
|
||||
{
|
22
packages/php/fix-tests-devserver.patch
Normal file
22
packages/php/fix-tests-devserver.patch
Normal file
|
@ -0,0 +1,22 @@
|
|||
From: Jakub Jirutka <jakub@jirutka.cz>
|
||||
Date: Mon, 01 May 2017 01:33:00 +0200
|
||||
Subject: [PATCH] Fix tests failing due to extra message from built-in web server
|
||||
|
||||
Remove messages like:
|
||||
|
||||
PHP 7.1.4 Development Server started at Mon May 1 00:42:39 2017
|
||||
|
||||
from test outputs, because tests do not expect them. I have no clue what
|
||||
happens here...
|
||||
|
||||
--- a/run-tests.php
|
||||
+++ b/run-tests.php
|
||||
@@ -2563,6 +2563,9 @@
|
||||
// Does the output match what is expected?
|
||||
$output = preg_replace("/\r\n/", "\n", trim($out));
|
||||
|
||||
+ // Remove message from built-in development server.
|
||||
+ $output = preg_replace("/^PHP [0-9.]+ Development Server started at .*\n\n?/m", "", $output);
|
||||
+
|
||||
/* when using CGI, strip the headers from the output */
|
||||
$headers = []
|
40
packages/php/includedir.patch
Normal file
40
packages/php/includedir.patch
Normal file
|
@ -0,0 +1,40 @@
|
|||
--- a/scripts/Makefile.frag
|
||||
+++ b/scripts/Makefile.frag
|
||||
@@ -2,7 +2,7 @@
|
||||
# Build environment install
|
||||
#
|
||||
|
||||
-phpincludedir = $(includedir)/php
|
||||
+phpincludedir = $(includedir)/php83
|
||||
phpbuilddir = $(libdir)/build
|
||||
|
||||
BUILD_FILES = \
|
||||
--- a/ext/pdo/Makefile.frag
|
||||
+++ b/ext/pdo/Makefile.frag
|
||||
@@ -1,4 +1,4 @@
|
||||
-phpincludedir=$(prefix)/include/php
|
||||
+phpincludedir=$(prefix)/include/php83
|
||||
|
||||
PDO_HEADER_FILES= \
|
||||
php_pdo.h \
|
||||
--- a/scripts/php-config.in
|
||||
+++ b/scripts/php-config.in
|
||||
@@ -6,7 +6,7 @@
|
||||
exec_prefix="@exec_prefix@"
|
||||
version="@PHP_VERSION@"
|
||||
vernum="@PHP_VERSION_ID@"
|
||||
-include_dir="@includedir@/php"
|
||||
+include_dir="@includedir@/php83"
|
||||
includes="-I$include_dir -I$include_dir/main -I$include_dir/TSRM -I$include_dir/Zend -I$include_dir/ext -I$include_dir/ext/date/lib"
|
||||
ldflags="@PHP_LDFLAGS@"
|
||||
libs="@EXTRA_LIBS@"
|
||||
--- a/scripts/phpize.in
|
||||
+++ b/scripts/phpize.in
|
||||
@@ -5,7 +5,7 @@
|
||||
datarootdir='@datarootdir@'
|
||||
exec_prefix="`eval echo @exec_prefix@`"
|
||||
phpdir="`eval echo @libdir@`/build"
|
||||
-includedir="`eval echo @includedir@`/php"
|
||||
+includedir="`eval echo @includedir@`/php83"
|
||||
builddir="`pwd`"
|
||||
SED="@SED@"
|
14
packages/php/install-pear.patch
Normal file
14
packages/php/install-pear.patch
Normal file
|
@ -0,0 +1,14 @@
|
|||
--- ./pear/Makefile.frag.orig 2013-04-12 07:02:27.041602514 +0000
|
||||
+++ ./pear/Makefile.frag 2013-04-12 07:04:09.065836822 +0000
|
||||
@@ -1,7 +1,10 @@
|
||||
peardir=$(PEAR_INSTALLDIR)
|
||||
|
||||
+# help the built php to find xml extension so we can install pear
|
||||
+PEAR_INSTALL_XML_FLAGS = -d extension="$(top_builddir)/modules/xml.so" -d extension="$(top_builddir)/modules/phar.so"
|
||||
+
|
||||
# Skip all php.ini files altogether
|
||||
-PEAR_INSTALL_FLAGS = -n -dshort_open_tag=0 -dopen_basedir= -derror_reporting=1803 -dmemory_limit=-1 -ddetect_unicode=0
|
||||
+PEAR_INSTALL_FLAGS = -n -dshort_open_tag=0 -dopen_basedir= -derror_reporting=1803 -dmemory_limit=-1 -ddetect_unicode=0 $(PEAR_INSTALL_XML_FLAGS)
|
||||
|
||||
WGET = `which wget 2>/dev/null`
|
||||
FETCH = `which fetch 2>/dev/null`
|
245
packages/php/loongarch64-support-for-fibers.patch
Normal file
245
packages/php/loongarch64-support-for-fibers.patch
Normal file
|
@ -0,0 +1,245 @@
|
|||
Patch-Source: https://github.com/php/php-src/commit/0766ac6e357282eafb51cbdc5383345e7487260b
|
||||
From 0766ac6e357282eafb51cbdc5383345e7487260b Mon Sep 17 00:00:00 2001
|
||||
From: qiangxuhui <qiangxuhui@loongson.cn>
|
||||
Date: Mon, 1 Apr 2024 07:16:47 +0000
|
||||
Subject: [PATCH] loongarch64 support for fibers
|
||||
|
||||
Add loongarch64 assembly files from Boost, needed for fibers support,
|
||||
and hook up loongarch64 fibers support during configure.
|
||||
|
||||
Close GH-13914
|
||||
---
|
||||
Zend/asm/jump_loongarch64_sysv_elf_gas.S | 121 +++++++++++++++++++++++
|
||||
Zend/asm/make_loongarch64_sysv_elf_gas.S | 72 ++++++++++++++
|
||||
configure.ac | 2 +
|
||||
3 files changed, 195 insertions(+)
|
||||
create mode 100644 Zend/asm/jump_loongarch64_sysv_elf_gas.S
|
||||
create mode 100644 Zend/asm/make_loongarch64_sysv_elf_gas.S
|
||||
|
||||
diff --git a/Zend/asm/jump_loongarch64_sysv_elf_gas.S b/Zend/asm/jump_loongarch64_sysv_elf_gas.S
|
||||
new file mode 100644
|
||||
index 0000000000..74c081e07f
|
||||
--- /dev/null
|
||||
+++ b/Zend/asm/jump_loongarch64_sysv_elf_gas.S
|
||||
@@ -0,0 +1,121 @@
|
||||
+/*******************************************************
|
||||
+ * *
|
||||
+ * ------------------------------------------------- *
|
||||
+ * | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | *
|
||||
+ * ------------------------------------------------- *
|
||||
+ * | 0 | 8 | 16 | 24 | *
|
||||
+ * ------------------------------------------------- *
|
||||
+ * | FS0 | FS1 | FS2 | FS3 | *
|
||||
+ * ------------------------------------------------- *
|
||||
+ * ------------------------------------------------- *
|
||||
+ * | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | *
|
||||
+ * ------------------------------------------------- *
|
||||
+ * | 32 | 40 | 48 | 56 | *
|
||||
+ * ------------------------------------------------- *
|
||||
+ * | FS4 | FS5 | FS6 | FS7 | *
|
||||
+ * ------------------------------------------------- *
|
||||
+ * ------------------------------------------------- *
|
||||
+ * | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | *
|
||||
+ * ------------------------------------------------- *
|
||||
+ * | 64 | 72 | 80 | 88 | *
|
||||
+ * ------------------------------------------------- *
|
||||
+ * | S0 | S1 | S2 | S3 | *
|
||||
+ * ------------------------------------------------- *
|
||||
+ * ------------------------------------------------- *
|
||||
+ * | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | *
|
||||
+ * ------------------------------------------------- *
|
||||
+ * | 96 | 100 | 104 | 108 | 112 | 116 | 120 | 124 | *
|
||||
+ * ------------------------------------------------- *
|
||||
+ * | S4 | S5 | S6 | S7 | *
|
||||
+ * ------------------------------------------------- *
|
||||
+ * ------------------------------------------------- *
|
||||
+ * | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | *
|
||||
+ * ------------------------------------------------- *
|
||||
+ * | 128 | 132 | 136 | 140 | 144 | 148 | 152 | 156 | *
|
||||
+ * ------------------------------------------------- *
|
||||
+ * | S8 | FP | RA | PC | *
|
||||
+ * ------------------------------------------------- *
|
||||
+ * *
|
||||
+ * *****************************************************/
|
||||
+
|
||||
+.file "jump_loongarch64_sysv_elf_gas.S"
|
||||
+.text
|
||||
+.globl jump_fcontext
|
||||
+.align 2
|
||||
+.type jump_fcontext,@function
|
||||
+jump_fcontext:
|
||||
+ # reserve space on stack
|
||||
+ addi.d $sp, $sp, -160
|
||||
+
|
||||
+ # save fs0 - fs7
|
||||
+ fst.d $fs0, $sp, 0
|
||||
+ fst.d $fs1, $sp, 8
|
||||
+ fst.d $fs2, $sp, 16
|
||||
+ fst.d $fs3, $sp, 24
|
||||
+ fst.d $fs4, $sp, 32
|
||||
+ fst.d $fs5, $sp, 40
|
||||
+ fst.d $fs6, $sp, 48
|
||||
+ fst.d $fs7, $sp, 56
|
||||
+
|
||||
+ # save s0 - s8, fp, ra
|
||||
+ st.d $s0, $sp, 64
|
||||
+ st.d $s1, $sp, 72
|
||||
+ st.d $s2, $sp, 80
|
||||
+ st.d $s3, $sp, 88
|
||||
+ st.d $s4, $sp, 96
|
||||
+ st.d $s5, $sp, 104
|
||||
+ st.d $s6, $sp, 112
|
||||
+ st.d $s7, $sp, 120
|
||||
+ st.d $s8, $sp, 128
|
||||
+ st.d $fp, $sp, 136
|
||||
+ st.d $ra, $sp, 144
|
||||
+
|
||||
+ # save RA as PC
|
||||
+ st.d $ra, $sp, 152
|
||||
+
|
||||
+ # store SP (pointing to context-data) in A2
|
||||
+ move $a2, $sp
|
||||
+
|
||||
+ # restore SP (pointing to context-data) from A0
|
||||
+ move $sp, $a0
|
||||
+
|
||||
+ # load fs0 - fs7
|
||||
+ fld.d $fs0, $sp, 0
|
||||
+ fld.d $fs1, $sp, 8
|
||||
+ fld.d $fs2, $sp, 16
|
||||
+ fld.d $fs3, $sp, 24
|
||||
+ fld.d $fs4, $sp, 32
|
||||
+ fld.d $fs5, $sp, 40
|
||||
+ fld.d $fs6, $sp, 48
|
||||
+ fld.d $fs7, $sp, 56
|
||||
+
|
||||
+ #load s0 - s7
|
||||
+ ld.d $s0, $sp, 64
|
||||
+ ld.d $s1, $sp, 72
|
||||
+ ld.d $s2, $sp, 80
|
||||
+ ld.d $s3, $sp, 88
|
||||
+ ld.d $s4, $sp, 96
|
||||
+ ld.d $s5, $sp, 104
|
||||
+ ld.d $s6, $sp, 112
|
||||
+ ld.d $s7, $sp, 120
|
||||
+ ld.d $s8, $sp, 128
|
||||
+ ld.d $fp, $sp, 136
|
||||
+ ld.d $ra, $sp, 144
|
||||
+
|
||||
+ # return transfer_t from jump
|
||||
+ # pass transfer_t as first arg in context function
|
||||
+ # a0 == FCTX, a1 == DATA
|
||||
+ move $a0, $a2
|
||||
+
|
||||
+ # load PC
|
||||
+ ld.d $a2, $sp, 152
|
||||
+
|
||||
+ # restore stack
|
||||
+ addi.d $sp, $sp, 160
|
||||
+
|
||||
+ # jump to context
|
||||
+ jr $a2
|
||||
+.size jump_fcontext, .-jump_fcontext
|
||||
+
|
||||
+/* Mark that we don't need executable stack. */
|
||||
+.section .note.GNU-stack,"",%progbits
|
||||
diff --git a/Zend/asm/make_loongarch64_sysv_elf_gas.S b/Zend/asm/make_loongarch64_sysv_elf_gas.S
|
||||
new file mode 100644
|
||||
index 0000000000..55062702f1
|
||||
--- /dev/null
|
||||
+++ b/Zend/asm/make_loongarch64_sysv_elf_gas.S
|
||||
@@ -0,0 +1,72 @@
|
||||
+/*******************************************************
|
||||
+ * *
|
||||
+ * ------------------------------------------------- *
|
||||
+ * | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | *
|
||||
+ * ------------------------------------------------- *
|
||||
+ * | 0 | 8 | 16 | 24 | *
|
||||
+ * ------------------------------------------------- *
|
||||
+ * | FS0 | FS1 | FS2 | FS3 | *
|
||||
+ * ------------------------------------------------- *
|
||||
+ * ------------------------------------------------- *
|
||||
+ * | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | *
|
||||
+ * ------------------------------------------------- *
|
||||
+ * | 32 | 40 | 48 | 56 | *
|
||||
+ * ------------------------------------------------- *
|
||||
+ * | FS4 | FS5 | FS6 | FS7 | *
|
||||
+ * ------------------------------------------------- *
|
||||
+ * ------------------------------------------------- *
|
||||
+ * | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | *
|
||||
+ * ------------------------------------------------- *
|
||||
+ * | 64 | 72 | 80 | 88 | *
|
||||
+ * ------------------------------------------------- *
|
||||
+ * | S0 | S1 | S2 | S3 | *
|
||||
+ * ------------------------------------------------- *
|
||||
+ * ------------------------------------------------- *
|
||||
+ * | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | *
|
||||
+ * ------------------------------------------------- *
|
||||
+ * | 96 | 100 | 104 | 108 | 112 | 116 | 120 | 124 | *
|
||||
+ * ------------------------------------------------- *
|
||||
+ * | S4 | S5 | S6 | S7 | *
|
||||
+ * ------------------------------------------------- *
|
||||
+ * ------------------------------------------------- *
|
||||
+ * | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | *
|
||||
+ * ------------------------------------------------- *
|
||||
+ * | 128 | 132 | 136 | 140 | 144 | 148 | 152 | 156 | *
|
||||
+ * ------------------------------------------------- *
|
||||
+ * | S8 | FP | RA | PC | *
|
||||
+ * ------------------------------------------------- *
|
||||
+ * *
|
||||
+ * *****************************************************/
|
||||
+
|
||||
+.file "make_loongarch64_sysv_elf_gas.S"
|
||||
+.text
|
||||
+.globl make_fcontext
|
||||
+.align 2
|
||||
+.type make_fcontext,@function
|
||||
+make_fcontext:
|
||||
+ # shift address in A0 to lower 16 byte boundary
|
||||
+ bstrins.d $a0, $zero, 3, 0
|
||||
+
|
||||
+ # reserve space for context-data on context-stack
|
||||
+ addi.d $a0, $a0, -160
|
||||
+
|
||||
+ # third arg of make_fcontext() == address of context-function
|
||||
+ st.d $a2, $a0, 152
|
||||
+
|
||||
+ # save address of finish as return-address for context-function
|
||||
+ # will be entered after context-function returns
|
||||
+ la.local $a4, finish
|
||||
+ st.d $a4, $a0, 144
|
||||
+
|
||||
+ # return pointer to context-data
|
||||
+ jr $ra
|
||||
+
|
||||
+finish:
|
||||
+ # exit code is zero
|
||||
+ li.d $a0, 0
|
||||
+ # call _exit(0)
|
||||
+ b %plt(_exit)
|
||||
+
|
||||
+.size make_fcontext, .-make_fcontext
|
||||
+/* Mark that we don't need executable stack. */
|
||||
+.section .note.GNU-stack,"",%progbits
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index 2bf60c434d..da646ac69f 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -1253,6 +1253,7 @@ AS_CASE([$host_cpu],
|
||||
[riscv64*], [fiber_cpu="riscv64"],
|
||||
[sparc64], [fiber_cpu="sparc64"],
|
||||
[s390x*], [fiber_cpu="s390x"],
|
||||
+ [loongarch64*], [fiber_cpu="loongarch64"],
|
||||
[mips64*], [fiber_cpu="mips64"],
|
||||
[mips*], [fiber_cpu="mips32"],
|
||||
[fiber_cpu="unknown"]
|
||||
@@ -1275,6 +1276,7 @@ AS_CASE([$fiber_cpu],
|
||||
[riscv64], [fiber_asm_file_prefix="riscv64_sysv"],
|
||||
[sparc64], [fiber_asm_file_prefix="sparc64_sysv"],
|
||||
[s390x], [fiber_asm_file_prefix="s390x_sysv"],
|
||||
+ [loongarch64], [fiber_asm_file_prefix="loongarch64_sysv"],
|
||||
[mips64], [fiber_asm_file_prefix="mips64_n64"],
|
||||
[mips32], [fiber_asm_file_prefix="mips32_o32"],
|
||||
[fiber_asm_file_prefix="unknown"]
|
||||
--
|
||||
2.44.0
|
79
packages/php/php83-fpm-verson-suffix.patch
Normal file
79
packages/php/php83-fpm-verson-suffix.patch
Normal file
|
@ -0,0 +1,79 @@
|
|||
--- a/sapi/fpm/fpm/fpm_conf.c
|
||||
+++ b/sapi/fpm/fpm/fpm_conf.c
|
||||
@@ -1262,7 +1262,7 @@
|
||||
}
|
||||
|
||||
if (!fpm_global_config.error_log) {
|
||||
- fpm_global_config.error_log = strdup("log/php-fpm.log");
|
||||
+ fpm_global_config.error_log = strdup("log/php83/error.log");
|
||||
}
|
||||
|
||||
#ifdef HAVE_SYSTEMD
|
||||
@@ -1273,7 +1273,7 @@
|
||||
|
||||
#ifdef HAVE_SYSLOG_H
|
||||
if (!fpm_global_config.syslog_ident) {
|
||||
- fpm_global_config.syslog_ident = strdup("php-fpm");
|
||||
+ fpm_global_config.syslog_ident = strdup("php-fpm83");
|
||||
}
|
||||
|
||||
if (fpm_global_config.syslog_facility < 0) {
|
||||
@@ -1777,7 +1777,7 @@
|
||||
if (fpm_globals.prefix == NULL) {
|
||||
spprintf(&tmp, 0, "%s/php-fpm.conf", PHP_SYSCONFDIR);
|
||||
} else {
|
||||
- spprintf(&tmp, 0, "%s/etc/php-fpm.conf", fpm_globals.prefix);
|
||||
+ spprintf(&tmp, 0, "%s/etc/php83/php-fpm.conf", fpm_globals.prefix);
|
||||
}
|
||||
|
||||
if (!tmp) {
|
||||
|
||||
--- a/sapi/fpm/php-fpm.conf.in
|
||||
+++ b/sapi/fpm/php-fpm.conf.in
|
||||
@@ -16,3 +16,3 @@
|
||||
; Default Value: none
|
||||
-;pid = run/php-fpm.pid
|
||||
+;pid = run/php-fpm83.pid
|
||||
|
||||
@@ -22,4 +22,4 @@
|
||||
; Note: the default prefix is @EXPANDED_LOCALSTATEDIR@
|
||||
-; Default Value: log/php-fpm.log
|
||||
-;error_log = log/php-fpm.log
|
||||
+; Default Value: log/php83/error.log
|
||||
+;error_log = log/php83/error.log
|
||||
|
||||
@@ -35,4 +35,4 @@
|
||||
; which must suit common needs.
|
||||
-; Default Value: php-fpm
|
||||
-;syslog.ident = php-fpm
|
||||
+; Default Value: php-fpm83
|
||||
+;syslog.ident = php-fpm83
|
||||
|
||||
--- a/sapi/fpm/www.conf.in
|
||||
+++ b/sapi/fpm/www.conf.in
|
||||
@@ -273,7 +273,7 @@
|
||||
|
||||
; The access log file
|
||||
; Default: not set
|
||||
-;access.log = log/$pool.access.log
|
||||
+;access.log = log/php83/$pool.access.log
|
||||
|
||||
; The access log format.
|
||||
; The following syntax is allowed
|
||||
@@ -337,7 +337,7 @@
|
||||
; The log file for slow requests
|
||||
; Default Value: not set
|
||||
; Note: slowlog is mandatory if request_slowlog_timeout is set
|
||||
-;slowlog = log/$pool.log.slow
|
||||
+;slowlog = log/php83/$pool.slow.log
|
||||
|
||||
; The timeout for serving a single request after which a PHP backtrace will be
|
||||
; dumped to the 'slowlog' file. A value of '0s' means 'off'.
|
||||
@@ -450,6 +450,6 @@
|
||||
; specified at startup with the -d argument
|
||||
;php_admin_value[sendmail_path] = /usr/sbin/sendmail -t -i -f www@my.domain.com
|
||||
;php_flag[display_errors] = off
|
||||
-;php_admin_value[error_log] = /var/log/fpm-php.www.log
|
||||
+;php_admin_value[error_log] = /var/log/php83/$pool.error.log
|
||||
;php_admin_flag[log_errors] = on
|
||||
;php_admin_value[memory_limit] = 32M
|
30
packages/php/phpinfo-avif.patch
Normal file
30
packages/php/phpinfo-avif.patch
Normal file
|
@ -0,0 +1,30 @@
|
|||
Patch-Source: https://github.com/php/php-src/pull/7526
|
||||
From d3402bfd3e9a87b1d4ce3785e393e698746c645c Mon Sep 17 00:00:00 2001
|
||||
From: Andy Postnikov <apostnikov@gmail.com>
|
||||
Date: Tue, 28 Sep 2021 23:35:37 +0300
|
||||
Subject: [PATCH] display libavif version and codecs via phpinfo()
|
||||
|
||||
---
|
||||
ext/gd/gd.c | 9 +++++++++
|
||||
1 file changed, 9 insertions(+)
|
||||
|
||||
diff --git a/ext/gd/gd.c b/ext/gd/gd.c
|
||||
index 880d6dddc7d7..67349e8749bf 100644
|
||||
--- a/ext/gd/gd.c
|
||||
+++ b/ext/gd/gd.c
|
||||
@@ -455,6 +455,15 @@
|
||||
#endif
|
||||
#ifdef HAVE_GD_AVIF
|
||||
php_info_print_table_row(2, "AVIF Support", "enabled");
|
||||
+#ifdef HAVE_GD_BUNDLED
|
||||
+#include <avif/avif.h>
|
||||
+ {
|
||||
+ php_info_print_table_row(2, "AVIF Version", avifVersion());
|
||||
+ char tmp[256];
|
||||
+ avifCodecVersions(tmp);
|
||||
+ php_info_print_table_row(2, "AVIF Codecs", tmp);
|
||||
+ }
|
||||
+#endif
|
||||
#endif
|
||||
#ifdef HAVE_GD_TGA
|
||||
php_info_print_table_row(2, "TGA Read Support", "enabled");
|
11
packages/php/sharedir.patch
Normal file
11
packages/php/sharedir.patch
Normal file
|
@ -0,0 +1,11 @@
|
|||
--- a/php.ini-production
|
||||
+++ b/php.ini-production
|
||||
@@ -742,7 +742,7 @@
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
|
||||
; UNIX: "/path1:/path2"
|
||||
-;include_path = ".:/php/includes"
|
||||
+include_path = ".:/usr/share/php83"
|
||||
;
|
||||
; Windows: "\path1;\path2"
|
||||
;include_path = ".;c:\php\includes"
|
39
packages/py-alabaster/Containerfile
Normal file
39
packages/py-alabaster/Containerfile
Normal file
|
@ -0,0 +1,39 @@
|
|||
FROM scratch AS base
|
||||
ENV VERSION=0.7.16
|
||||
ENV SRC_HASH=75a8b99c28a5dad50dd7f8ccdd447a121ddb3892da9e53d1ca5cca3106d58d65
|
||||
ENV SRC_FILE=alabaster-${VERSION}.tar.gz
|
||||
ENV SRC_SITE=https://files.pythonhosted.org/packages/source/a/alabaster/${SRC_FILE}
|
||||
|
||||
FROM base AS fetch
|
||||
ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} .
|
||||
|
||||
FROM fetch AS build
|
||||
COPY --from=stagex/busybox . /
|
||||
COPY --from=stagex/musl . /
|
||||
COPY --from=stagex/zlib . /
|
||||
COPY --from=stagex/openssl . /
|
||||
COPY --from=stagex/python . /
|
||||
COPY --from=stagex/gcc . /
|
||||
COPY --from=stagex/binutils . /
|
||||
COPY --from=stagex/make . /
|
||||
COPY --from=stagex/cmake . /
|
||||
COPY --from=stagex/libffi . /
|
||||
COPY --from=stagex/py-setuptools . /
|
||||
COPY --from=stagex/py-installer . /
|
||||
COPY --from=stagex/py-packaging . /
|
||||
COPY --from=stagex/py-flit . /
|
||||
COPY --from=stagex/py-wheel . /
|
||||
COPY --from=stagex/py-gpep517 . /
|
||||
RUN tar -xzf ${SRC_FILE}
|
||||
WORKDIR alabaster-${VERSION}
|
||||
RUN gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2
|
||||
|
||||
FROM build AS install
|
||||
RUN --network=none <<-EOF
|
||||
set -eu
|
||||
python -m installer -d /rootfs .dist/*.whl
|
||||
find /rootfs | grep -E "(/__pycache__$|\.pyc$|\.pyo$)" | xargs rm -rf
|
||||
EOF
|
||||
|
||||
FROM stagex/filesystem AS package
|
||||
COPY --from=install /rootfs/. /
|
39
packages/py-babel/Containerfile
Normal file
39
packages/py-babel/Containerfile
Normal file
|
@ -0,0 +1,39 @@
|
|||
FROM scratch AS base
|
||||
ENV VERSION=2.14.0
|
||||
ENV SRC_HASH=6919867db036398ba21eb5c7a0f6b28ab8cbc3ae7a73a44ebe34ae74a4e7d363
|
||||
ENV SRC_FILE=Babel-${VERSION}.tar.gz
|
||||
ENV SRC_SITE=https://files.pythonhosted.org/packages/source/B/Babel/${SRC_FILE}
|
||||
|
||||
FROM base AS fetch
|
||||
ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} .
|
||||
|
||||
FROM fetch AS build
|
||||
COPY --from=stagex/busybox . /
|
||||
COPY --from=stagex/musl . /
|
||||
COPY --from=stagex/zlib . /
|
||||
COPY --from=stagex/openssl . /
|
||||
COPY --from=stagex/python . /
|
||||
COPY --from=stagex/gcc . /
|
||||
COPY --from=stagex/binutils . /
|
||||
COPY --from=stagex/make . /
|
||||
COPY --from=stagex/cmake . /
|
||||
COPY --from=stagex/libffi . /
|
||||
COPY --from=stagex/py-setuptools . /
|
||||
COPY --from=stagex/py-installer . /
|
||||
COPY --from=stagex/py-packaging . /
|
||||
COPY --from=stagex/py-flit . /
|
||||
COPY --from=stagex/py-wheel . /
|
||||
COPY --from=stagex/py-gpep517 . /
|
||||
RUN tar -xzf ${SRC_FILE}
|
||||
WORKDIR Babel-${VERSION}
|
||||
RUN gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2
|
||||
|
||||
FROM build AS install
|
||||
RUN --network=none <<-EOF
|
||||
set -eux
|
||||
python -m installer -d /rootfs .dist/*.whl
|
||||
find /rootfs | grep -E "(/__pycache__$|\.pyc$|\.pyo$)" | xargs rm -rf
|
||||
EOF
|
||||
|
||||
FROM stagex/filesystem AS package
|
||||
COPY --from=install /rootfs/. /
|
|
@ -7,20 +7,25 @@ ENV SRC_SITE=https://files.pythonhosted.org/packages/source/d/docutils/${SRC_FIL
|
|||
FROM base AS fetch
|
||||
ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} .
|
||||
|
||||
FROM fetch AS install
|
||||
FROM fetch AS build
|
||||
COPY --from=stagex/busybox . /
|
||||
COPY --from=stagex/musl . /
|
||||
COPY --from=stagex/python . /
|
||||
COPY --from=stagex/libffi . /
|
||||
COPY --from=stagex/py-flit . /
|
||||
COPY --from=stagex/py-wheel . /
|
||||
COPY --from=stagex/py-installer . /
|
||||
COPY --from=stagex/py-setuptools . /
|
||||
COPY --from=stagex/py-gpep517 . /
|
||||
COPY --from=stagex/zlib . /
|
||||
RUN tar -xzf ${SRC_FILE}
|
||||
WORKDIR docutils-${VERSION}
|
||||
RUN gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2
|
||||
|
||||
FROM build AS install
|
||||
RUN --network=none <<-EOF
|
||||
set -eu
|
||||
sitedir="$(python3 -c 'import site;print(site.getsitepackages()[0])')"
|
||||
mkdir -p "/rootfs/${sitedir}"
|
||||
cp -a docutils "/rootfs/$sitedir"
|
||||
set -eu
|
||||
python -m installer -d /rootfs .dist/*.whl
|
||||
find /rootfs | grep -E "(/__pycache__$|\.pyc$|\.pyo$)" | xargs rm -rf
|
||||
EOF
|
||||
|
||||
|
|
41
packages/py-hatchling/Containerfile
Normal file
41
packages/py-hatchling/Containerfile
Normal file
|
@ -0,0 +1,41 @@
|
|||
FROM scratch AS base
|
||||
ENV VERSION=1.25.0
|
||||
ENV SRC_HASH=7064631a512610b52250a4d3ff1bd81551d6d1431c4eb7b72e734df6c74f4262
|
||||
ENV SRC_FILE=hatchling-${VERSION}.tar.gz
|
||||
ENV SRC_SITE=https://files.pythonhosted.org/packages/source/h/hatchling/${SRC_FILE}
|
||||
|
||||
FROM base AS fetch
|
||||
ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} .
|
||||
|
||||
FROM fetch AS build
|
||||
COPY --from=stagex/busybox . /
|
||||
COPY --from=stagex/musl . /
|
||||
COPY --from=stagex/zlib . /
|
||||
COPY --from=stagex/openssl . /
|
||||
COPY --from=stagex/python . /
|
||||
COPY --from=stagex/gcc . /
|
||||
COPY --from=stagex/binutils . /
|
||||
COPY --from=stagex/make . /
|
||||
COPY --from=stagex/cmake . /
|
||||
COPY --from=stagex/libffi . /
|
||||
COPY --from=stagex/py-installer . /
|
||||
COPY --from=stagex/py-packaging . /
|
||||
COPY --from=stagex/py-trove-classifiers . /
|
||||
COPY --from=stagex/py-pathspec . /
|
||||
COPY --from=stagex/py-pluggy . /
|
||||
COPY --from=stagex/py-flit . /
|
||||
COPY --from=stagex/py-wheel . /
|
||||
COPY --from=stagex/py-gpep517 . /
|
||||
RUN tar -xzf ${SRC_FILE}
|
||||
WORKDIR hatchling-${VERSION}
|
||||
RUN gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2
|
||||
|
||||
FROM build AS install
|
||||
RUN --network=none <<-EOF
|
||||
set -eux
|
||||
python -m installer -d /rootfs .dist/*.whl
|
||||
find /rootfs | grep -E "(/__pycache__$|\.pyc$|\.pyo$)" | xargs rm -rf
|
||||
EOF
|
||||
|
||||
FROM stagex/filesystem AS package
|
||||
COPY --from=install /rootfs/. /
|
39
packages/py-idna/Containerfile
Normal file
39
packages/py-idna/Containerfile
Normal file
|
@ -0,0 +1,39 @@
|
|||
FROM scratch AS base
|
||||
ENV VERSION=3.7
|
||||
ENV SRC_HASH=07017f753632624abaa31aa2c1b243aea6409367256de4183671d95e019f7d70
|
||||
ENV SRC_FILE=v${VERSION}.tar.gz
|
||||
ENV SRC_SITE=https://github.com/kjd/idna/archive/${SRC_FILE}
|
||||
|
||||
FROM base AS fetch
|
||||
ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} .
|
||||
|
||||
FROM fetch AS build
|
||||
COPY --from=stagex/busybox . /
|
||||
COPY --from=stagex/musl . /
|
||||
COPY --from=stagex/zlib . /
|
||||
COPY --from=stagex/openssl . /
|
||||
COPY --from=stagex/python . /
|
||||
COPY --from=stagex/gcc . /
|
||||
COPY --from=stagex/binutils . /
|
||||
COPY --from=stagex/make . /
|
||||
COPY --from=stagex/cmake . /
|
||||
COPY --from=stagex/libffi . /
|
||||
COPY --from=stagex/py-setuptools . /
|
||||
COPY --from=stagex/py-installer . /
|
||||
COPY --from=stagex/py-packaging . /
|
||||
COPY --from=stagex/py-flit . /
|
||||
COPY --from=stagex/py-wheel . /
|
||||
COPY --from=stagex/py-gpep517 . /
|
||||
RUN tar -xzf ${SRC_FILE}
|
||||
WORKDIR idna-${VERSION}
|
||||
RUN gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2
|
||||
|
||||
FROM build AS install
|
||||
RUN --network=none <<-EOF
|
||||
set -eux
|
||||
python -m installer -d /rootfs .dist/*.whl
|
||||
find /rootfs | grep -E "(/__pycache__$|\.pyc$|\.pyo$)" | xargs rm -rf
|
||||
EOF
|
||||
|
||||
FROM stagex/filesystem AS package
|
||||
COPY --from=install /rootfs/. /
|
39
packages/py-imagesize/Containerfile
Normal file
39
packages/py-imagesize/Containerfile
Normal file
|
@ -0,0 +1,39 @@
|
|||
FROM scratch AS base
|
||||
ENV VERSION=1.4.1
|
||||
ENV SRC_HASH=69150444affb9cb0d5cc5a92b3676f0b2fb7cd9ae39e947a5e11a36b4497cd4a
|
||||
ENV SRC_FILE=imagesize-${VERSION}.tar.gz
|
||||
ENV SRC_SITE=https://files.pythonhosted.org/packages/source/i/imagesize/${SRC_FILE}
|
||||
|
||||
FROM base AS fetch
|
||||
ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} .
|
||||
|
||||
FROM fetch AS build
|
||||
COPY --from=stagex/busybox . /
|
||||
COPY --from=stagex/musl . /
|
||||
COPY --from=stagex/zlib . /
|
||||
COPY --from=stagex/openssl . /
|
||||
COPY --from=stagex/python . /
|
||||
COPY --from=stagex/gcc . /
|
||||
COPY --from=stagex/binutils . /
|
||||
COPY --from=stagex/make . /
|
||||
COPY --from=stagex/cmake . /
|
||||
COPY --from=stagex/libffi . /
|
||||
COPY --from=stagex/py-setuptools . /
|
||||
COPY --from=stagex/py-installer . /
|
||||
COPY --from=stagex/py-packaging . /
|
||||
COPY --from=stagex/py-flit . /
|
||||
COPY --from=stagex/py-wheel . /
|
||||
COPY --from=stagex/py-gpep517 . /
|
||||
RUN tar -xzf ${SRC_FILE}
|
||||
WORKDIR imagesize-${VERSION}
|
||||
RUN gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2
|
||||
|
||||
FROM build AS install
|
||||
RUN --network=none <<-EOF
|
||||
set -eux
|
||||
python -m installer -d /rootfs .dist/*.whl
|
||||
find /rootfs | grep -E "(/__pycache__$|\.pyc$|\.pyo$)" | xargs rm -rf
|
||||
EOF
|
||||
|
||||
FROM stagex/filesystem AS package
|
||||
COPY --from=install /rootfs/. /
|
38
packages/py-jinja2/Containerfile
Normal file
38
packages/py-jinja2/Containerfile
Normal file
|
@ -0,0 +1,38 @@
|
|||
FROM scratch AS base
|
||||
ENV VERSION=3.1.4
|
||||
ENV SRC_HASH=4a3aee7acbbe7303aede8e9648d13b8bf88a429282aa6122a993f0ac800cb369
|
||||
ENV SRC_FILE=jinja2-${VERSION}.tar.gz
|
||||
ENV SRC_SITE=https://files.pythonhosted.org/packages/source/j/jinja2/${SRC_FILE}
|
||||
|
||||
FROM base AS fetch
|
||||
ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} .
|
||||
|
||||
FROM fetch AS build
|
||||
COPY --from=stagex/busybox . /
|
||||
COPY --from=stagex/musl . /
|
||||
COPY --from=stagex/zlib . /
|
||||
COPY --from=stagex/openssl . /
|
||||
COPY --from=stagex/python . /
|
||||
COPY --from=stagex/gcc . /
|
||||
COPY --from=stagex/binutils . /
|
||||
COPY --from=stagex/make . /
|
||||
COPY --from=stagex/cmake . /
|
||||
COPY --from=stagex/libffi . /
|
||||
COPY --from=stagex/py-installer . /
|
||||
COPY --from=stagex/py-packaging . /
|
||||
COPY --from=stagex/py-flit . /
|
||||
COPY --from=stagex/py-wheel . /
|
||||
COPY --from=stagex/py-gpep517 . /
|
||||
RUN tar -xzf ${SRC_FILE}
|
||||
WORKDIR jinja2-${VERSION}
|
||||
RUN gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2
|
||||
|
||||
FROM build AS install
|
||||
RUN --network=none <<-EOF
|
||||
set -eu
|
||||
python -m installer -d /rootfs .dist/*.whl
|
||||
find /rootfs | grep -E "(/__pycache__$|\.pyc$|\.pyo$)" | xargs rm -rf
|
||||
EOF
|
||||
|
||||
FROM stagex/filesystem AS package
|
||||
COPY --from=install /rootfs/. /
|
39
packages/py-markupsafe/Containerfile
Normal file
39
packages/py-markupsafe/Containerfile
Normal file
|
@ -0,0 +1,39 @@
|
|||
FROM scratch AS base
|
||||
ENV VERSION=2.1.5
|
||||
ENV SRC_HASH=d283d37a890ba4c1ae73ffadf8046435c76e7bc2247bbb63c00bd1a709c6544b
|
||||
ENV SRC_FILE=MarkupSafe-${VERSION}.tar.gz
|
||||
ENV SRC_SITE=https://files.pythonhosted.org/packages/source/M/MarkupSafe/${SRC_FILE}
|
||||
|
||||
FROM base AS fetch
|
||||
ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} .
|
||||
|
||||
FROM fetch AS build
|
||||
COPY --from=stagex/busybox . /
|
||||
COPY --from=stagex/musl . /
|
||||
COPY --from=stagex/zlib . /
|
||||
COPY --from=stagex/openssl . /
|
||||
COPY --from=stagex/python . /
|
||||
COPY --from=stagex/gcc . /
|
||||
COPY --from=stagex/binutils . /
|
||||
COPY --from=stagex/make . /
|
||||
COPY --from=stagex/cmake . /
|
||||
COPY --from=stagex/libffi . /
|
||||
COPY --from=stagex/py-setuptools . /
|
||||
COPY --from=stagex/py-installer . /
|
||||
COPY --from=stagex/py-packaging . /
|
||||
COPY --from=stagex/py-flit . /
|
||||
COPY --from=stagex/py-wheel . /
|
||||
COPY --from=stagex/py-gpep517 . /
|
||||
RUN tar -xzf ${SRC_FILE}
|
||||
WORKDIR MarkupSafe-${VERSION}
|
||||
RUN gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2
|
||||
|
||||
FROM build AS install
|
||||
RUN --network=none <<-EOF
|
||||
set -eu
|
||||
python -m installer -d /rootfs .dist/*.whl
|
||||
find /rootfs | grep -E "(/__pycache__$|\.pyc$|\.pyo$)" | xargs rm -rf
|
||||
EOF
|
||||
|
||||
FROM stagex/filesystem AS package
|
||||
COPY --from=install /rootfs/. /
|
37
packages/py-pathspec/Containerfile
Normal file
37
packages/py-pathspec/Containerfile
Normal file
|
@ -0,0 +1,37 @@
|
|||
FROM scratch AS base
|
||||
ENV VERSION=0.12.1
|
||||
ENV SRC_HASH=a482d51503a1ab33b1c67a6c3813a26953dbdc71c31dacaef9a838c4e29f5712
|
||||
ENV SRC_FILE=pathspec-${VERSION}.tar.gz
|
||||
ENV SRC_SITE=https://files.pythonhosted.org/packages/source/p/pathspec/${SRC_FILE}
|
||||
|
||||
FROM base AS fetch
|
||||
ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} .
|
||||
|
||||
FROM fetch AS build
|
||||
COPY --from=stagex/busybox . /
|
||||
COPY --from=stagex/musl . /
|
||||
COPY --from=stagex/zlib . /
|
||||
COPY --from=stagex/openssl . /
|
||||
COPY --from=stagex/python . /
|
||||
COPY --from=stagex/gcc . /
|
||||
COPY --from=stagex/binutils . /
|
||||
COPY --from=stagex/make . /
|
||||
COPY --from=stagex/cmake . /
|
||||
COPY --from=stagex/libffi . /
|
||||
COPY --from=stagex/py-installer . /
|
||||
COPY --from=stagex/py-flit . /
|
||||
COPY --from=stagex/py-wheel . /
|
||||
COPY --from=stagex/py-gpep517 . /
|
||||
RUN tar -xzf ${SRC_FILE}
|
||||
WORKDIR pathspec-${VERSION}
|
||||
RUN gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2
|
||||
|
||||
FROM build AS install
|
||||
RUN --network=none <<-EOF
|
||||
set -eu
|
||||
python -m installer -d /rootfs .dist/*.whl
|
||||
find /rootfs | grep -E "(/__pycache__$|\.pyc$|\.pyo$)" | xargs rm -rf
|
||||
EOF
|
||||
|
||||
FROM stagex/filesystem AS package
|
||||
COPY --from=install /rootfs/. /
|
39
packages/py-pluggy/Containerfile
Normal file
39
packages/py-pluggy/Containerfile
Normal file
|
@ -0,0 +1,39 @@
|
|||
FROM scratch AS base
|
||||
ENV VERSION=1.5.0
|
||||
ENV SRC_HASH=2cffa88e94fdc978c4c574f15f9e59b7f4201d439195c3715ca9e2486f1d0cf1
|
||||
ENV SRC_FILE=pluggy-${VERSION}.tar.gz
|
||||
ENV SRC_SITE=https://files.pythonhosted.org/packages/source/p/pluggy/${SRC_FILE}
|
||||
|
||||
FROM base AS fetch
|
||||
ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} .
|
||||
|
||||
FROM fetch AS build
|
||||
COPY --from=stagex/busybox . /
|
||||
COPY --from=stagex/musl . /
|
||||
COPY --from=stagex/zlib . /
|
||||
COPY --from=stagex/openssl . /
|
||||
COPY --from=stagex/python . /
|
||||
COPY --from=stagex/gcc . /
|
||||
COPY --from=stagex/binutils . /
|
||||
COPY --from=stagex/make . /
|
||||
COPY --from=stagex/cmake . /
|
||||
COPY --from=stagex/libffi . /
|
||||
COPY --from=stagex/py-setuptools . /
|
||||
COPY --from=stagex/py-installer . /
|
||||
COPY --from=stagex/py-pathspec . /
|
||||
COPY --from=stagex/py-flit . /
|
||||
COPY --from=stagex/py-wheel . /
|
||||
COPY --from=stagex/py-gpep517 . /
|
||||
RUN tar -xzf ${SRC_FILE}
|
||||
WORKDIR pluggy-${VERSION}
|
||||
RUN gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2
|
||||
|
||||
FROM build AS install
|
||||
RUN --network=none <<-EOF
|
||||
set -eu
|
||||
python -m installer -d /rootfs .dist/*.whl
|
||||
find /rootfs | grep -E "(/__pycache__$|\.pyc$|\.pyo$)" | xargs rm -rf
|
||||
EOF
|
||||
|
||||
FROM stagex/filesystem AS package
|
||||
COPY --from=install /rootfs/. /
|
42
packages/py-pygments/Containerfile
Normal file
42
packages/py-pygments/Containerfile
Normal file
|
@ -0,0 +1,42 @@
|
|||
FROM scratch AS base
|
||||
ENV VERSION=2.18.0
|
||||
ENV SRC_HASH=786ff802f32e91311bff3889f6e9a86e81505fe99f2735bb6d60ae0c5004f199
|
||||
ENV SRC_FILE=pygments-${VERSION}.tar.gz
|
||||
ENV SRC_SITE=https://files.pythonhosted.org/packages/source/P/Pygments/${SRC_FILE}
|
||||
|
||||
FROM base AS fetch
|
||||
ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} .
|
||||
|
||||
FROM fetch AS build
|
||||
COPY --from=stagex/busybox . /
|
||||
COPY --from=stagex/musl . /
|
||||
COPY --from=stagex/zlib . /
|
||||
COPY --from=stagex/openssl . /
|
||||
COPY --from=stagex/python . /
|
||||
COPY --from=stagex/gcc . /
|
||||
COPY --from=stagex/binutils . /
|
||||
COPY --from=stagex/make . /
|
||||
COPY --from=stagex/cmake . /
|
||||
COPY --from=stagex/libffi . /
|
||||
COPY --from=stagex/py-trove-classifiers . /
|
||||
COPY --from=stagex/py-packaging . /
|
||||
COPY --from=stagex/py-installer . /
|
||||
COPY --from=stagex/py-pathspec . /
|
||||
COPY --from=stagex/py-pluggy . /
|
||||
COPY --from=stagex/py-flit . /
|
||||
COPY --from=stagex/py-wheel . /
|
||||
COPY --from=stagex/py-gpep517 . /
|
||||
COPY --from=stagex/py-hatchling . /
|
||||
RUN tar -xzf ${SRC_FILE}
|
||||
WORKDIR pygments-${VERSION}
|
||||
RUN gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2
|
||||
|
||||
FROM build AS install
|
||||
RUN --network=none <<-EOF
|
||||
set -eu
|
||||
python -m installer -d /rootfs .dist/*.whl
|
||||
find /rootfs | grep -E "(/__pycache__$|\.pyc$|\.pyo$)" | xargs rm -rf
|
||||
EOF
|
||||
|
||||
FROM stagex/filesystem AS package
|
||||
COPY --from=install /rootfs/. /
|
39
packages/py-requests/Containerfile
Normal file
39
packages/py-requests/Containerfile
Normal file
|
@ -0,0 +1,39 @@
|
|||
FROM scratch AS base
|
||||
ENV VERSION=2.32.3
|
||||
ENV SRC_HASH=55365417734eb18255590a9ff9eb97e9e1da868d4ccd6402399eaf68af20a760
|
||||
ENV SRC_FILE=requests-${VERSION}.tar.gz
|
||||
ENV SRC_SITE=https://files.pythonhosted.org/packages/source/r/requests/${SRC_FILE}
|
||||
|
||||
FROM base AS fetch
|
||||
ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} .
|
||||
|
||||
FROM fetch AS build
|
||||
COPY --from=stagex/busybox . /
|
||||
COPY --from=stagex/musl . /
|
||||
COPY --from=stagex/zlib . /
|
||||
COPY --from=stagex/openssl . /
|
||||
COPY --from=stagex/python . /
|
||||
COPY --from=stagex/gcc . /
|
||||
COPY --from=stagex/binutils . /
|
||||
COPY --from=stagex/make . /
|
||||
COPY --from=stagex/cmake . /
|
||||
COPY --from=stagex/libffi . /
|
||||
COPY --from=stagex/py-setuptools . /
|
||||
COPY --from=stagex/py-installer . /
|
||||
COPY --from=stagex/py-packaging . /
|
||||
COPY --from=stagex/py-flit . /
|
||||
COPY --from=stagex/py-wheel . /
|
||||
COPY --from=stagex/py-gpep517 . /
|
||||
RUN tar -xzf ${SRC_FILE}
|
||||
WORKDIR requests-${VERSION}
|
||||
RUN gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2
|
||||
|
||||
FROM build AS install
|
||||
RUN --network=none <<-EOF
|
||||
set -eu
|
||||
python -m installer -d /rootfs .dist/*.whl
|
||||
find /rootfs | grep -E "(/__pycache__$|\.pyc$|\.pyo$)" | xargs rm -rf
|
||||
EOF
|
||||
|
||||
FROM stagex/filesystem AS package
|
||||
COPY --from=install /rootfs/. /
|
39
packages/py-snowballstemmer/Containerfile
Normal file
39
packages/py-snowballstemmer/Containerfile
Normal file
|
@ -0,0 +1,39 @@
|
|||
FROM scratch AS base
|
||||
ENV VERSION=2.2.0
|
||||
ENV SRC_HASH=09b16deb8547d3412ad7b590689584cd0fe25ec8db3be37788be3810cbf19cb1
|
||||
ENV SRC_FILE=snowballstemmer-${VERSION}.tar.gz
|
||||
ENV SRC_SITE=https://files.pythonhosted.org/packages/source/s/snowballstemmer/${SRC_FILE}
|
||||
|
||||
FROM base AS fetch
|
||||
ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} .
|
||||
|
||||
FROM fetch AS build
|
||||
COPY --from=stagex/busybox . /
|
||||
COPY --from=stagex/musl . /
|
||||
COPY --from=stagex/zlib . /
|
||||
COPY --from=stagex/openssl . /
|
||||
COPY --from=stagex/python . /
|
||||
COPY --from=stagex/gcc . /
|
||||
COPY --from=stagex/binutils . /
|
||||
COPY --from=stagex/make . /
|
||||
COPY --from=stagex/cmake . /
|
||||
COPY --from=stagex/libffi . /
|
||||
COPY --from=stagex/py-setuptools . /
|
||||
COPY --from=stagex/py-installer . /
|
||||
COPY --from=stagex/py-packaging . /
|
||||
COPY --from=stagex/py-flit . /
|
||||
COPY --from=stagex/py-wheel . /
|
||||
COPY --from=stagex/py-gpep517 . /
|
||||
RUN tar -xzf ${SRC_FILE}
|
||||
WORKDIR snowballstemmer-${VERSION}
|
||||
RUN gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2
|
||||
|
||||
FROM build AS install
|
||||
RUN --network=none <<-EOF
|
||||
set -eu
|
||||
python -m installer -d /rootfs .dist/*.whl
|
||||
find /rootfs | grep -E "(/__pycache__$|\.pyc$|\.pyo$)" | xargs rm -rf
|
||||
EOF
|
||||
|
||||
FROM stagex/filesystem AS package
|
||||
COPY --from=install /rootfs/. /
|
31
packages/py-sphinx/Containerfile
Normal file
31
packages/py-sphinx/Containerfile
Normal file
|
@ -0,0 +1,31 @@
|
|||
FROM scratch AS base
|
||||
ENV VERSION=7.2.6
|
||||
ENV SRC_HASH=b41c04543148937b887097f396d7b2b54ae49d0597b68625f06ffdf702d4d917
|
||||
|
||||
ENV SRC_FILE=v${VERSION}.tar.gz
|
||||
ENV SRC_SITE=https://github.com/sphinx-doc/sphinx/archive/${SRC_FILE}
|
||||
|
||||
FROM base AS fetch
|
||||
ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} .
|
||||
|
||||
FROM fetch AS build
|
||||
COPY --from=stagex/busybox . /
|
||||
COPY --from=stagex/musl . /
|
||||
COPY --from=stagex/python . /
|
||||
COPY --from=stagex/py-flit . /
|
||||
COPY --from=stagex/py-gpep517 . /
|
||||
COPY --from=stagex/py-installer . /
|
||||
COPY --from=stagex/zlib . /
|
||||
RUN tar -xzf ${SRC_FILE}
|
||||
WORKDIR sphinx-${VERSION}
|
||||
RUN gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2
|
||||
|
||||
FROM build AS install
|
||||
RUN --network=none <<-EOF
|
||||
set -eu
|
||||
python -m installer -d /rootfs .dist/*.whl
|
||||
find /rootfs | grep -E "(/__pycache__$|\.pyc$|\.pyo$)" | xargs rm -rf
|
||||
EOF
|
||||
|
||||
FROM stagex/filesystem AS package
|
||||
COPY --from=install /rootfs/. /
|
33
packages/py-sphinx_rtd_theme/Containerfile
Normal file
33
packages/py-sphinx_rtd_theme/Containerfile
Normal file
|
@ -0,0 +1,33 @@
|
|||
FROM scratch AS base
|
||||
ENV VERSION=2.0.0
|
||||
ENV SRC_HASH=40446e6789dd34deb4e9814e379bae0aa74057b6fb43de4b343a48c84fc0f8db
|
||||
ENV SRC_FILE=${VERSION}.tar.gz
|
||||
ENV SRC_SITE=https://github.com/readthedocs/sphinx_rtd_theme/archive/${SRC_FILE}
|
||||
|
||||
FROM base AS fetch
|
||||
ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} .
|
||||
|
||||
FROM fetch AS build
|
||||
COPY --from=stagex/busybox . /
|
||||
COPY --from=stagex/musl . /
|
||||
COPY --from=stagex/python . /
|
||||
COPY --from=stagex/libffi . /
|
||||
COPY --from=stagex/py-flit . /
|
||||
COPY --from=stagex/py-gpep517 . /
|
||||
COPY --from=stagex/py-installer . /
|
||||
COPY --from=stagex/py-setuptools . /
|
||||
COPY --from=stagex/py-wheel . /
|
||||
COPY --from=stagex/zlib . /
|
||||
RUN tar -xzf ${SRC_FILE}
|
||||
WORKDIR sphinx_rtd_theme-${VERSION}
|
||||
RUN gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2
|
||||
|
||||
FROM build AS install
|
||||
RUN --network=none <<-EOF
|
||||
set -eu
|
||||
python -m installer -d /rootfs .dist/*.whl
|
||||
find /rootfs | grep -E "(/__pycache__$|\.pyc$|\.pyo$)" | xargs rm -rf
|
||||
EOF
|
||||
|
||||
FROM stagex/filesystem AS package
|
||||
COPY --from=install /rootfs/. /
|
33
packages/py-sphinxcontrib-applehelp/Containerfile
Normal file
33
packages/py-sphinxcontrib-applehelp/Containerfile
Normal file
|
@ -0,0 +1,33 @@
|
|||
FROM scratch AS base
|
||||
ENV VERSION=1.0.4
|
||||
ENV SRC_HASH=828f867945bbe39817c210a1abfd1bc4895c8b73fcaade56d45357a348a07d7e
|
||||
ENV SRC_FILE=sphinxcontrib-applehelp-${VERSION}.tar.gz
|
||||
ENV SRC_SITE=https://files.pythonhosted.org/packages/source/s/sphinxcontrib-applehelp/${SRC_FILE}
|
||||
|
||||
FROM base AS fetch
|
||||
ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} .
|
||||
|
||||
FROM fetch AS build
|
||||
COPY --from=stagex/busybox . /
|
||||
COPY --from=stagex/musl . /
|
||||
COPY --from=stagex/libffi . /
|
||||
COPY --from=stagex/python . /
|
||||
COPY --from=stagex/py-flit . /
|
||||
COPY --from=stagex/py-gpep517 . /
|
||||
COPY --from=stagex/py-installer . /
|
||||
COPY --from=stagex/py-setuptools . /
|
||||
COPY --from=stagex/py-wheel . /
|
||||
COPY --from=stagex/zlib . /
|
||||
RUN tar -xzf ${SRC_FILE}
|
||||
WORKDIR sphinxcontrib-applehelp-${VERSION}
|
||||
RUN gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2
|
||||
|
||||
FROM build AS install
|
||||
RUN --network=none <<-EOF
|
||||
set -eu
|
||||
python -m installer -d /rootfs .dist/*.whl
|
||||
find /rootfs | grep -E "(/__pycache__$|\.pyc$|\.pyo$)" | xargs rm -rf
|
||||
EOF
|
||||
|
||||
FROM stagex/filesystem AS package
|
||||
COPY --from=install /rootfs/. /
|
33
packages/py-sphinxcontrib-devhelp/Containerfile
Normal file
33
packages/py-sphinxcontrib-devhelp/Containerfile
Normal file
|
@ -0,0 +1,33 @@
|
|||
FROM scratch AS base
|
||||
ENV VERSION=1.0.5
|
||||
ENV SRC_HASH=e2b24fcee87da8fb6a3826ba072c8369cdbffee116bd38bcfaa0302b279dc844
|
||||
ENV SRC_FILE=${VERSION}.tar.gz
|
||||
ENV SRC_SITE=https://github.com/sphinx-doc/sphinxcontrib-devhelp/archive/refs/tags/${SRC_FILE}
|
||||
|
||||
FROM base AS fetch
|
||||
ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} .
|
||||
|
||||
FROM fetch AS build
|
||||
COPY --from=stagex/busybox . /
|
||||
COPY --from=stagex/musl . /
|
||||
COPY --from=stagex/libffi . /
|
||||
COPY --from=stagex/python . /
|
||||
COPY --from=stagex/py-flit . /
|
||||
COPY --from=stagex/py-gpep517 . /
|
||||
COPY --from=stagex/py-installer . /
|
||||
COPY --from=stagex/py-setuptools . /
|
||||
COPY --from=stagex/py-wheel . /
|
||||
COPY --from=stagex/zlib . /
|
||||
RUN tar -xzf ${SRC_FILE}
|
||||
WORKDIR sphinxcontrib-devhelp-${VERSION}
|
||||
RUN gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2
|
||||
|
||||
FROM build AS install
|
||||
RUN --network=none <<-EOF
|
||||
set -eu
|
||||
python -m installer -d /rootfs .dist/*.whl
|
||||
find /rootfs | grep -E "(/__pycache__$|\.pyc$|\.pyo$)" | xargs rm -rf
|
||||
EOF
|
||||
|
||||
FROM stagex/filesystem AS package
|
||||
COPY --from=install /rootfs/. /
|
33
packages/py-sphinxcontrib-htmlhelp/Containerfile
Normal file
33
packages/py-sphinxcontrib-htmlhelp/Containerfile
Normal file
|
@ -0,0 +1,33 @@
|
|||
FROM scratch AS base
|
||||
ENV VERSION=2.0.1
|
||||
ENV SRC_HASH=0cbdd302815330058422b98a113195c9249825d681e18f11e8b1f78a2f11efff
|
||||
ENV SRC_FILE=sphinxcontrib-htmlhelp-${VERSION}.tar.gz
|
||||
ENV SRC_SITE=https://files.pythonhosted.org/packages/source/s/sphinxcontrib-htmlhelp/${SRC_FILE}
|
||||
|
||||
FROM base AS fetch
|
||||
ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} .
|
||||
|
||||
FROM fetch AS build
|
||||
COPY --from=stagex/busybox . /
|
||||
COPY --from=stagex/musl . /
|
||||
COPY --from=stagex/libffi . /
|
||||
COPY --from=stagex/python . /
|
||||
COPY --from=stagex/py-flit . /
|
||||
COPY --from=stagex/py-gpep517 . /
|
||||
COPY --from=stagex/py-installer . /
|
||||
COPY --from=stagex/py-setuptools . /
|
||||
COPY --from=stagex/py-wheel . /
|
||||
COPY --from=stagex/zlib . /
|
||||
RUN tar -xzf ${SRC_FILE}
|
||||
WORKDIR sphinxcontrib-htmlhelp-${VERSION}
|
||||
RUN gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2
|
||||
|
||||
FROM build AS install
|
||||
RUN --network=none <<-EOF
|
||||
set -eu
|
||||
python -m installer -d /rootfs .dist/*.whl
|
||||
find /rootfs | grep -E "(/__pycache__$|\.pyc$|\.pyo$)" | xargs rm -rf
|
||||
EOF
|
||||
|
||||
FROM stagex/filesystem AS package
|
||||
COPY --from=install /rootfs/. /
|
33
packages/py-sphinxcontrib-jquery/Containerfile
Normal file
33
packages/py-sphinxcontrib-jquery/Containerfile
Normal file
|
@ -0,0 +1,33 @@
|
|||
FROM scratch AS base
|
||||
ENV VERSION=4.1
|
||||
ENV SRC_HASH=f6a7578b00a8458e5edd38431d3ea4037b928a21ba1f82469ec2015127955c34
|
||||
ENV SRC_FILE=v${VERSION}.tar.gz
|
||||
ENV SRC_SITE=https://github.com/sphinx-contrib/jquery/archive/refs/tags/${SRC_FILE}
|
||||
|
||||
FROM base AS fetch
|
||||
ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} .
|
||||
|
||||
FROM fetch AS build
|
||||
COPY --from=stagex/busybox . /
|
||||
COPY --from=stagex/musl . /
|
||||
COPY --from=stagex/libffi . /
|
||||
COPY --from=stagex/python . /
|
||||
COPY --from=stagex/py-flit . /
|
||||
COPY --from=stagex/py-gpep517 . /
|
||||
COPY --from=stagex/py-installer . /
|
||||
COPY --from=stagex/py-setuptools . /
|
||||
COPY --from=stagex/py-wheel . /
|
||||
COPY --from=stagex/zlib . /
|
||||
RUN tar -xzf ${SRC_FILE}
|
||||
WORKDIR jquery-${VERSION}
|
||||
RUN gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2
|
||||
|
||||
FROM build AS install
|
||||
RUN --network=none <<-EOF
|
||||
set -eu
|
||||
python -m installer -d /rootfs .dist/*.whl
|
||||
find /rootfs | grep -E "(/__pycache__$|\.pyc$|\.pyo$)" | xargs rm -rf
|
||||
EOF
|
||||
|
||||
FROM stagex/filesystem AS package
|
||||
COPY --from=install /rootfs/. /
|
33
packages/py-sphinxcontrib-qthelp/Containerfile
Normal file
33
packages/py-sphinxcontrib-qthelp/Containerfile
Normal file
|
@ -0,0 +1,33 @@
|
|||
FROM scratch AS base
|
||||
ENV VERSION=1.0.6
|
||||
ENV SRC_HASH=a7bd74c400fc84fadbd0bd74c6c48b1a12465dc950af335b59ee5e62e082fce3
|
||||
ENV SRC_FILE=${VERSION}.tar.gz
|
||||
ENV SRC_SITE=https://github.com/sphinx-doc/sphinxcontrib-qthelp/archive/refs/tags/${SRC_FILE}
|
||||
|
||||
FROM base AS fetch
|
||||
ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} .
|
||||
|
||||
FROM fetch AS build
|
||||
COPY --from=stagex/busybox . /
|
||||
COPY --from=stagex/musl . /
|
||||
COPY --from=stagex/libffi . /
|
||||
COPY --from=stagex/python . /
|
||||
COPY --from=stagex/py-flit . /
|
||||
COPY --from=stagex/py-gpep517 . /
|
||||
COPY --from=stagex/py-installer . /
|
||||
COPY --from=stagex/py-setuptools . /
|
||||
COPY --from=stagex/py-wheel . /
|
||||
COPY --from=stagex/zlib . /
|
||||
RUN tar -xzf ${SRC_FILE}
|
||||
WORKDIR sphinxcontrib-qthelp-${VERSION}
|
||||
RUN gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2
|
||||
|
||||
FROM build AS install
|
||||
RUN --network=none <<-EOF
|
||||
set -eu
|
||||
python -m installer -d /rootfs .dist/*.whl
|
||||
find /rootfs | grep -E "(/__pycache__$|\.pyc$|\.pyo$)" | xargs rm -rf
|
||||
EOF
|
||||
|
||||
FROM stagex/filesystem AS package
|
||||
COPY --from=install /rootfs/. /
|
33
packages/py-sphinxcontrib-serializinghtml/Containerfile
Normal file
33
packages/py-sphinxcontrib-serializinghtml/Containerfile
Normal file
|
@ -0,0 +1,33 @@
|
|||
FROM scratch AS base
|
||||
ENV VERSION=1.1.9
|
||||
ENV SRC_HASH=8ff6f82f0b7876eaaf258cb90d2ddfdc26ae069552bf6db6ae5eb534ae689c19
|
||||
ENV SRC_FILE=${VERSION}.tar.gz
|
||||
ENV SRC_SITE=https://github.com/sphinx-doc/sphinxcontrib-serializinghtml/archive/refs/tags/${SRC_FILE}
|
||||
|
||||
FROM base AS fetch
|
||||
ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} .
|
||||
|
||||
FROM fetch AS build
|
||||
COPY --from=stagex/busybox . /
|
||||
COPY --from=stagex/musl . /
|
||||
COPY --from=stagex/libffi . /
|
||||
COPY --from=stagex/python . /
|
||||
COPY --from=stagex/py-flit . /
|
||||
COPY --from=stagex/py-gpep517 . /
|
||||
COPY --from=stagex/py-installer . /
|
||||
COPY --from=stagex/py-setuptools . /
|
||||
COPY --from=stagex/py-wheel . /
|
||||
COPY --from=stagex/zlib . /
|
||||
RUN tar -xzf ${SRC_FILE}
|
||||
WORKDIR sphinxcontrib-serializinghtml-${VERSION}
|
||||
RUN gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2
|
||||
|
||||
FROM build AS install
|
||||
RUN --network=none <<-EOF
|
||||
set -eu
|
||||
python -m installer -d /rootfs .dist/*.whl
|
||||
find /rootfs | grep -E "(/__pycache__$|\.pyc$|\.pyo$)" | xargs rm -rf
|
||||
EOF
|
||||
|
||||
FROM stagex/filesystem AS package
|
||||
COPY --from=install /rootfs/. /
|
38
packages/py-trove-classifiers/Containerfile
Normal file
38
packages/py-trove-classifiers/Containerfile
Normal file
|
@ -0,0 +1,38 @@
|
|||
FROM scratch AS base
|
||||
ENV VERSION=2024.5.17
|
||||
ENV SRC_HASH=5d0a143e5977e5c32a34265f803fcdbf064c57940ce95492fe6c559622f7497c
|
||||
ENV SRC_FILE=py3-trove-classifiers-${VERSION}.tar.gz
|
||||
ENV SRC_SITE=https://github.com/pypa/trove-classifiers/archive/${VERSION}/${SRC_FILE}
|
||||
|
||||
FROM base AS fetch
|
||||
ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} .
|
||||
|
||||
FROM fetch AS build
|
||||
COPY --from=stagex/busybox . /
|
||||
COPY --from=stagex/musl . /
|
||||
COPY --from=stagex/zlib . /
|
||||
COPY --from=stagex/openssl . /
|
||||
COPY --from=stagex/python . /
|
||||
COPY --from=stagex/gcc . /
|
||||
COPY --from=stagex/binutils . /
|
||||
COPY --from=stagex/make . /
|
||||
COPY --from=stagex/cmake . /
|
||||
COPY --from=stagex/libffi . /
|
||||
COPY --from=stagex/py-installer . /
|
||||
COPY --from=stagex/py-setuptools . /
|
||||
COPY --from=stagex/py-flit . /
|
||||
COPY --from=stagex/py-wheel . /
|
||||
COPY --from=stagex/py-gpep517 . /
|
||||
RUN tar -xzf ${SRC_FILE}
|
||||
WORKDIR trove-classifiers-${VERSION}
|
||||
RUN gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2
|
||||
|
||||
FROM build AS install
|
||||
RUN --network=none <<-EOF
|
||||
set -eu
|
||||
python -m installer -d /rootfs .dist/*.whl
|
||||
find /rootfs | grep -E "(/__pycache__$|\.pyc$|\.pyo$)" | xargs rm -rf
|
||||
EOF
|
||||
|
||||
FROM stagex/filesystem AS package
|
||||
COPY --from=install /rootfs/. /
|
179
packages/qemu/Containerfile
Normal file
179
packages/qemu/Containerfile
Normal file
|
@ -0,0 +1,179 @@
|
|||
FROM scratch AS base
|
||||
ENV VERSION=9.0.2
|
||||
ENV SRC_HASH=a8c3f596aece96da3b00cafb74baafa0d14515eafb8ed1ee3f7f5c2d0ebf02b6
|
||||
ENV SRC_FILE=qemu-${VERSION}.tar.xz
|
||||
ENV SRC_SITE=https://download.qemu.org/${SRC_FILE}
|
||||
|
||||
FROM base AS fetch
|
||||
ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} .
|
||||
|
||||
FROM fetch AS build
|
||||
COPY --from=stagex/busybox . /
|
||||
COPY --from=stagex/bash . /
|
||||
COPY --from=stagex/gzip . /
|
||||
COPY --from=stagex/gcc . /
|
||||
COPY --from=stagex/binutils . /
|
||||
COPY --from=stagex/python . /
|
||||
COPY --from=stagex/py-docutils . /
|
||||
COPY --from=stagex/py-pygments . /
|
||||
COPY --from=stagex/py-babel . /
|
||||
COPY --from=stagex/py-packaging . /
|
||||
COPY --from=stagex/py-sphinx . /
|
||||
COPY --from=stagex/py-sphinx_rtd_theme . /
|
||||
COPY --from=stagex/py-sphinxcontrib-applehelp . /
|
||||
COPY --from=stagex/py-sphinxcontrib-devhelp . /
|
||||
COPY --from=stagex/py-sphinxcontrib-htmlhelp . /
|
||||
COPY --from=stagex/py-sphinxcontrib-qthelp . /
|
||||
COPY --from=stagex/py-sphinxcontrib-serializinghtml . /
|
||||
COPY --from=stagex/py-sphinxcontrib-jquery . /
|
||||
COPY --from=stagex/py-jinja2 . /
|
||||
COPY --from=stagex/py-markupsafe . /
|
||||
COPY --from=stagex/py-snowballstemmer . /
|
||||
COPY --from=stagex/py-imagesize . /
|
||||
COPY --from=stagex/py-requests . /
|
||||
COPY --from=stagex/py-urllib3 . /
|
||||
COPY --from=stagex/py-idna . /
|
||||
COPY --from=stagex/py-certifi . /
|
||||
COPY --from=stagex/py-alabaster . /
|
||||
COPY --from=stagex/make . /
|
||||
COPY --from=stagex/bison . /
|
||||
COPY --from=stagex/meson . /
|
||||
COPY --from=stagex/ninja . /
|
||||
COPY --from=stagex/libtool . /
|
||||
COPY --from=stagex/openssl . /
|
||||
COPY --from=stagex/git . /
|
||||
COPY --from=stagex/zlib . /
|
||||
COPY --from=stagex/libffi . /
|
||||
COPY --from=stagex/libaio . /
|
||||
COPY --from=stagex/libzstd . /
|
||||
COPY --from=stagex/libseccomp . /
|
||||
COPY --from=stagex/libcap-ng . /
|
||||
COPY --from=stagex/alsa-lib . /
|
||||
COPY --from=stagex/ncurses . /
|
||||
COPY --from=stagex/curl . /
|
||||
COPY --from=stagex/flex . /
|
||||
COPY --from=stagex/openssh . /
|
||||
COPY --from=stagex/perl . /
|
||||
COPY --from=stagex/pcre2 . /
|
||||
COPY --from=stagex/glib . /
|
||||
COPY --from=stagex/lzo . /
|
||||
COPY --from=stagex/dtc . /
|
||||
COPY --from=stagex/autoconf . /
|
||||
COPY --from=stagex/automake . /
|
||||
COPY --from=stagex/pkgconf . /
|
||||
COPY --from=stagex/gettext . /
|
||||
COPY --from=stagex/numactl . /
|
||||
COPY --from=stagex/m4 . /
|
||||
COPY --from=stagex/argp-standalone . /
|
||||
COPY --from=stagex/musl . /
|
||||
COPY --from=stagex/musl-fts . /
|
||||
COPY --from=stagex/musl-obstack . /
|
||||
COPY --from=stagex/linux-headers . /
|
||||
RUN tar -xf ${SRC_FILE}
|
||||
WORKDIR qemu-${VERSION}
|
||||
ADD *.patch .
|
||||
ENV SOURCE_DATE_EPOCH=1
|
||||
ENV LDFLAGS=" \
|
||||
-Wl,-O1 -Wl,--sort-common -Wl,--as-needed -Wl,-z,relro \
|
||||
-Wl,-z,now -Wl,-z,pack-relative-relocs"
|
||||
ENV CFLAGS=" \
|
||||
-march=x86-64 -mtune=generic -O2 -pipe -fno-plt -fexceptions \
|
||||
-Wp,-D_FORTIFY_SOURCE=3 -Wformat -Werror=format-security \
|
||||
-fstack-clash-protection -fcf-protection \
|
||||
-fno-omit-frame-pointer -mno-omit-leaf-frame-pointer"
|
||||
ENV CXXFLAGS="$CFLAGS -Wp,-D_GLIBCXX_ASSERTIONS"
|
||||
ENV LTOFLAGS="-flto=auto"
|
||||
RUN --network=none <<-EOF
|
||||
set -eux
|
||||
./configure \
|
||||
--build="x86_64-linux-musl" \
|
||||
--host="x86_64-linux-musl" \
|
||||
--prefix=/usr \
|
||||
--sysconfdir=/etc \
|
||||
--localstatedir=/var \
|
||||
--libexecdir=/usr/lib/qemu \
|
||||
--docdir=/usr/share/doc/qemu \
|
||||
--python=/usr/bin/python \
|
||||
--cc=gcc \
|
||||
--audio-drv-list=oss,alsa \
|
||||
--enable-curses \
|
||||
--enable-modules \
|
||||
--enable-tpm \
|
||||
--disable-docs \
|
||||
--disable-sdl \
|
||||
--disable-gtk \
|
||||
--disable-bpf \
|
||||
--disable-capstone \
|
||||
--disable-glusterfs \
|
||||
--disable-debug-info \
|
||||
--disable-opengl \
|
||||
--disable-bsd-user \
|
||||
--disable-werror \
|
||||
--disable-libnfs \
|
||||
--disable-libssh \
|
||||
--disable-snappy \
|
||||
--disable-spice \
|
||||
--disable-usb-redir \
|
||||
--disable-vde \
|
||||
--disable-vhost-net \
|
||||
--disable-virglrenderer \
|
||||
--disable-virtfs \
|
||||
--disable-vnc \
|
||||
--disable-vnc-jpeg \
|
||||
--disable-xen
|
||||
make ARFLAGS="rc"
|
||||
EOF
|
||||
|
||||
FROM build AS install
|
||||
RUN --network=none <<-EOF
|
||||
make DESTDIR=/rootfs install
|
||||
rm -rf /rootfs/var/run
|
||||
strip /rootfs/usr/bin/qemu-*
|
||||
# These are not currently deterministic so we can't release them yet
|
||||
rm -rf /rootfs/usr/bin/qemu-aarch64
|
||||
rm -rf /rootfs/usr/bin/qemu-aarch64_be
|
||||
rm -rf /rootfs/usr/bin/qemu-arm
|
||||
rm -rf /rootfs/usr/bin/qemu-armeb
|
||||
rm -rf /rootfs/usr/bin/qemu-hexagon
|
||||
rm -rf /rootfs/usr/bin/qemu-hppa
|
||||
rm -rf /rootfs/usr/bin/qemu-loongarch64
|
||||
rm -rf /rootfs/usr/bin/qemu-microblaze
|
||||
rm -rf /rootfs/usr/bin/qemu-microblazeel
|
||||
rm -rf /rootfs/usr/bin/qemu-mips
|
||||
rm -rf /rootfs/usr/bin/qemu-mips64
|
||||
rm -rf /rootfs/usr/bin/qemu-mips64el
|
||||
rm -rf /rootfs/usr/bin/qemu-mipsel
|
||||
rm -rf /rootfs/usr/bin/qemu-mipsn32
|
||||
rm -rf /rootfs/usr/bin/qemu-mipsn32el
|
||||
rm -rf /rootfs/usr/bin/qemu-or1k
|
||||
rm -rf /rootfs/usr/bin/qemu-ppc
|
||||
rm -rf /rootfs/usr/bin/qemu-ppc64
|
||||
rm -rf /rootfs/usr/bin/qemu-ppc64le
|
||||
rm -rf /rootfs/usr/bin/qemu-riscv32
|
||||
rm -rf /rootfs/usr/bin/qemu-riscv64
|
||||
rm -rf /rootfs/usr/bin/qemu-sparc
|
||||
rm -rf /rootfs/usr/bin/qemu-sparc32plus
|
||||
rm -rf /rootfs/usr/bin/qemu-sparc64
|
||||
rm -rf /rootfs/usr/bin/qemu-system-aarch64
|
||||
rm -rf /rootfs/usr/bin/qemu-system-arm
|
||||
rm -rf /rootfs/usr/bin/qemu-system-avr
|
||||
rm -rf /rootfs/usr/bin/qemu-system-hppa
|
||||
rm -rf /rootfs/usr/bin/qemu-system-loongarch64
|
||||
rm -rf /rootfs/usr/bin/qemu-system-microblaze
|
||||
rm -rf /rootfs/usr/bin/qemu-system-microblazeel
|
||||
rm -rf /rootfs/usr/bin/qemu-system-mips
|
||||
rm -rf /rootfs/usr/bin/qemu-system-mips64
|
||||
rm -rf /rootfs/usr/bin/qemu-system-mips64el
|
||||
rm -rf /rootfs/usr/bin/qemu-system-mipsel
|
||||
rm -rf /rootfs/usr/bin/qemu-system-or1k
|
||||
rm -rf /rootfs/usr/bin/qemu-system-ppc
|
||||
rm -rf /rootfs/usr/bin/qemu-system-ppc64
|
||||
rm -rf /rootfs/usr/bin/qemu-system-riscv32
|
||||
rm -rf /rootfs/usr/bin/qemu-system-riscv64
|
||||
rm -rf /rootfs/usr/bin/qemu-system-rx
|
||||
rm -rf /rootfs/usr/bin/qemu-system-sparc
|
||||
rm -rf /rootfs/usr/bin/qemu-system-sparc64
|
||||
EOF
|
||||
|
||||
FROM stagex/filesystem AS package
|
||||
COPY --from=install /rootfs/. /
|
37
packages/re2c/Containerfile
Normal file
37
packages/re2c/Containerfile
Normal file
|
@ -0,0 +1,37 @@
|
|||
FROM scratch AS base
|
||||
ENV VERSION=3.1
|
||||
ENV SRC_HASH=087c44de0400fb15caafde09fd72edc7381e688a35ef505ee65e0e3d2fac688b
|
||||
ENV SRC_FILE=${VERSION}.tar.gz
|
||||
ENV SRC_SITE=https://github.com/skvadrik/re2c/archive/refs/tags/${SRC_FILE}
|
||||
|
||||
FROM base AS fetch
|
||||
ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} .
|
||||
|
||||
FROM fetch AS build
|
||||
COPY --from=stagex/autoconf . /
|
||||
COPY --from=stagex/automake . /
|
||||
COPY --from=stagex/binutils . /
|
||||
COPY --from=stagex/busybox . /
|
||||
COPY --from=stagex/libtool . /
|
||||
COPY --from=stagex/perl . /
|
||||
COPY --from=stagex/python . /
|
||||
COPY --from=stagex/gcc . /
|
||||
COPY --from=stagex/make . /
|
||||
COPY --from=stagex/m4 . /
|
||||
COPY --from=stagex/musl . /
|
||||
RUN tar -xvf $SRC_FILE
|
||||
WORKDIR re2c-${VERSION}
|
||||
RUN --network=none <<-EOF
|
||||
set -eux
|
||||
autoreconf -i -W all
|
||||
./configure \
|
||||
--prefix=/usr
|
||||
make -j "$(nproc)"
|
||||
EOF
|
||||
|
||||
FROM build AS install
|
||||
RUN make DESTDIR=/rootfs install
|
||||
RUN find /rootfs -exec touch -hcd "@0" "{}" +
|
||||
|
||||
FROM stagex/filesystem AS package
|
||||
COPY --from=install /rootfs/. /
|
36
packages/rhash/Containerfile
Normal file
36
packages/rhash/Containerfile
Normal file
|
@ -0,0 +1,36 @@
|
|||
FROM scratch AS base
|
||||
ARG ARCH=x86_64
|
||||
ENV VERSION=1.4.4
|
||||
ENV SRC_HASH=8e7d1a8ccac0143c8fe9b68ebac67d485df119ea17a613f4038cda52f84ef52a
|
||||
ENV SRC_FILE=v${VERSION}.tar.gz
|
||||
ENV SRC_SITE=https://github.com/rhash/RHash/archive/refs/tags/${SRC_FILE}
|
||||
|
||||
FROM base AS fetch
|
||||
ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE}
|
||||
|
||||
FROM fetch AS build
|
||||
COPY --from=stagex/musl . /
|
||||
COPY --from=stagex/gcc . /
|
||||
COPY --from=stagex/bash . /
|
||||
COPY --from=stagex/busybox . /
|
||||
COPY --from=stagex/binutils . /
|
||||
COPY --from=stagex/make . /
|
||||
COPY --from=stagex/openssl . /
|
||||
RUN tar -xf ${SRC_FILE}
|
||||
WORKDIR RHash-${VERSION}
|
||||
RUN --network=none <<-EOF
|
||||
set -eux
|
||||
./configure \
|
||||
--prefix=/usr \
|
||||
--sysconfdir=/etc \
|
||||
--enable-openssl \
|
||||
--disable-openssl-runtime
|
||||
make -j "$(nproc)"
|
||||
EOF
|
||||
|
||||
FROM build AS install
|
||||
RUN make DESTDIR=/rootfs install
|
||||
RUN find /rootfs -exec touch -hcd "@0" "{}" +
|
||||
|
||||
FROM stagex/filesystem AS package
|
||||
COPY --from=install /rootfs/. /
|
29
packages/samurai/CVE-2021-30218.patch
Normal file
29
packages/samurai/CVE-2021-30218.patch
Normal file
|
@ -0,0 +1,29 @@
|
|||
From e84b6d99c85043fa1ba54851ee500540ec206918 Mon Sep 17 00:00:00 2001
|
||||
From: Michael Forney <mforney@mforney.org>
|
||||
Date: Fri, 2 Apr 2021 17:27:48 -0700
|
||||
Subject: [PATCH] util: Check for NULL string in writefile
|
||||
|
||||
This check was there previously, but was removed in f549b757 with
|
||||
the addition of a check during parse that every rule has rspfile
|
||||
if and only if it has rspfile_content. However, this fails to
|
||||
consider the possibility of those variables coming from the edge
|
||||
or global environment. So, re-add the check.
|
||||
|
||||
Fixes #67.
|
||||
---
|
||||
util.c | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/util.c b/util.c
|
||||
index ea5c3ce..2a59881 100644
|
||||
--- a/util.c
|
||||
+++ b/util.c
|
||||
@@ -258,7 +258,7 @@ writefile(const char *name, struct string *s)
|
||||
return -1;
|
||||
}
|
||||
ret = 0;
|
||||
- if (fwrite(s->s, 1, s->n, f) != s->n || fflush(f) != 0) {
|
||||
+ if (s && (fwrite(s->s, 1, s->n, f) != s->n || fflush(f) != 0)) {
|
||||
warn("write %s:", name);
|
||||
ret = -1;
|
||||
}
|
26
packages/samurai/CVE-2021-30219.patch
Normal file
26
packages/samurai/CVE-2021-30219.patch
Normal file
|
@ -0,0 +1,26 @@
|
|||
From d2af3bc375e2a77139c3a28d6128c60cd8d08655 Mon Sep 17 00:00:00 2001
|
||||
From: Michael Forney <mforney@mforney.org>
|
||||
Date: Sun, 4 Apr 2021 03:50:09 -0700
|
||||
Subject: [PATCH] parse: Check for non-empty command/rspfile/rspfile_content
|
||||
|
||||
This matches ninja behavior and prevents the possibility of a rule
|
||||
with an empty (NULL) command string.
|
||||
|
||||
Fixes #68.
|
||||
---
|
||||
parse.c | 2 ++
|
||||
1 file changed, 2 insertions(+)
|
||||
|
||||
diff --git a/parse.c b/parse.c
|
||||
index f79a5ee..b4b98a1 100644
|
||||
--- a/parse.c
|
||||
+++ b/parse.c
|
||||
@@ -42,6 +42,8 @@ parserule(struct scanner *s, struct environment *env)
|
||||
var = scanname(s);
|
||||
parselet(s, &val);
|
||||
ruleaddvar(r, var, val);
|
||||
+ if (!val)
|
||||
+ continue;
|
||||
if (strcmp(var, "command") == 0)
|
||||
hascommand = true;
|
||||
else if (strcmp(var, "rspfile") == 0)
|
33
packages/samurai/Containerfile
Normal file
33
packages/samurai/Containerfile
Normal file
|
@ -0,0 +1,33 @@
|
|||
FROM scratch AS base
|
||||
ARG ARCH=x86_64
|
||||
ENV VERSION=1.2
|
||||
ENV SRC_HASH=3b8cf51548dfc49b7efe035e191ff5e1963ebc4fe8f6064a5eefc5343eaf78a5
|
||||
ENV SRC_FILE=samurai-${VERSION}.tar.gz
|
||||
ENV SRC_SITE=https://github.com/michaelforney/samurai/releases/download/${VERSION}/${SRC_FILE}
|
||||
|
||||
FROM base AS fetch
|
||||
ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE}
|
||||
|
||||
FROM fetch AS build
|
||||
COPY --from=stagex/musl . /
|
||||
COPY --from=stagex/gcc . /
|
||||
COPY --from=stagex/busybox . /
|
||||
COPY --from=stagex/binutils . /
|
||||
COPY --from=stagex/make . /
|
||||
COPY --from=stagex/pkgconf . /
|
||||
RUN tar -xf ${SRC_FILE}
|
||||
WORKDIR samurai-${VERSION}
|
||||
COPY *.patch .
|
||||
RUN --network=none <<-EOF
|
||||
set -eux
|
||||
patch -p1 CVE-2021-30218.patch
|
||||
patch -p1 CVE-2021-30219.patch
|
||||
make CFLAGS="-O2" CC=gcc -j "$(nproc)"
|
||||
EOF
|
||||
|
||||
FROM build AS install
|
||||
RUN make DESTDIR=/rootfs install
|
||||
RUN find /rootfs -exec touch -hcd "@0" "{}" +
|
||||
|
||||
FROM stagex/filesystem AS package
|
||||
COPY --from=install /rootfs/. /
|
30
packages/scdoc/Containerfile
Normal file
30
packages/scdoc/Containerfile
Normal file
|
@ -0,0 +1,30 @@
|
|||
FROM scratch AS base
|
||||
ARG ARCH=x86_64
|
||||
ENV VERSION=1.11.3
|
||||
ENV SRC_HASH=4c5c6136540384e5455b250f768e7ca11b03fdba1a8efc2341ee0f1111e57612
|
||||
ENV SRC_FILE=${VERSION}.tar.gz
|
||||
ENV SRC_SITE=https://git.sr.ht/~sircmpwn/scdoc/archive/${SRC_FILE}
|
||||
|
||||
FROM base AS fetch
|
||||
ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE}
|
||||
|
||||
FROM fetch AS build
|
||||
COPY --from=stagex/musl . /
|
||||
COPY --from=stagex/gcc . /
|
||||
COPY --from=stagex/busybox . /
|
||||
COPY --from=stagex/binutils . /
|
||||
COPY --from=stagex/make . /
|
||||
RUN tar -xf ${SRC_FILE}
|
||||
WORKDIR scdoc-${VERSION}
|
||||
RUN --network=none <<-EOF
|
||||
set -eux
|
||||
make PREFIX="/usr" -j "$(nproc)"
|
||||
EOF
|
||||
|
||||
FROM build AS install
|
||||
RUN make DESTDIR=/rootfs install
|
||||
RUN find /rootfs -exec touch -hcd "@0" "{}" +
|
||||
|
||||
FROM stagex/filesystem AS package
|
||||
COPY --from=install /rootfs/. /
|
||||
|
34
packages/skalibs/Containerfile
Normal file
34
packages/skalibs/Containerfile
Normal file
|
@ -0,0 +1,34 @@
|
|||
FROM scratch AS base
|
||||
ARG ARCH=x86_64
|
||||
ENV VERSION=2.14.1.1
|
||||
ENV SRC_HASH=b6b79b816f4ba0b6801676b0ed4179b59c8c7809eeffe26db672e404636befc3
|
||||
ENV SRC_FILE=skalibs-${VERSION}.tar.gz
|
||||
ENV SRC_SITE=https://skarnet.org/software/skalibs/${SRC_FILE}
|
||||
|
||||
FROM base AS fetch
|
||||
ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE}
|
||||
|
||||
FROM fetch AS build
|
||||
COPY --from=stagex/musl . /
|
||||
COPY --from=stagex/gcc . /
|
||||
COPY --from=stagex/busybox . /
|
||||
COPY --from=stagex/binutils . /
|
||||
COPY --from=stagex/make . /
|
||||
RUN tar -xf ${SRC_FILE}
|
||||
WORKDIR skalibs-${VERSION}
|
||||
RUN --network=none <<-EOF
|
||||
set -eux
|
||||
./configure \
|
||||
--enable-shared \
|
||||
--enable-static \
|
||||
--prefix=/usr \
|
||||
--libdir=/usr/lib
|
||||
make -j "$(nproc)"
|
||||
EOF
|
||||
|
||||
FROM build AS install
|
||||
RUN make DESTDIR=/rootfs install
|
||||
RUN find /rootfs -exec touch -hcd "@0" "{}" +
|
||||
|
||||
FROM stagex/filesystem AS package
|
||||
COPY --from=install /rootfs/. /
|
46
packages/unixodbc/Containerfile
Normal file
46
packages/unixodbc/Containerfile
Normal file
|
@ -0,0 +1,46 @@
|
|||
FROM scratch AS base
|
||||
ARG ARCH=x86_64
|
||||
ENV VERSION=2.3.12
|
||||
ENV SRC_HASH=f210501445ce21bf607ba51ef8c125e10e22dffdffec377646462df5f01915ec
|
||||
ENV SRC_FILE=unixODBC-${VERSION}.tar.gz
|
||||
ENV SRC_SITE=https://www.unixodbc.org/${SRC_FILE}
|
||||
|
||||
FROM base AS fetch
|
||||
ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE}
|
||||
|
||||
FROM fetch AS build
|
||||
COPY --from=stagex/perl . /
|
||||
COPY --from=stagex/bash . /
|
||||
COPY --from=stagex/m4 . /
|
||||
COPY --from=stagex/autoconf . /
|
||||
COPY --from=stagex/automake . /
|
||||
COPY --from=stagex/busybox . /
|
||||
COPY --from=stagex/musl . /
|
||||
COPY --from=stagex/gcc . /
|
||||
COPY --from=stagex/binutils . /
|
||||
COPY --from=stagex/make . /
|
||||
COPY --from=stagex/libtool . /
|
||||
COPY --from=stagex/postgresql . /
|
||||
RUN tar -xf $SRC_FILE
|
||||
WORKDIR unixODBC-${VERSION}
|
||||
RUN --network=none <<-EOF
|
||||
set -eux
|
||||
./configure \
|
||||
--build=${ARCH}-linux-musl \
|
||||
--host=${ARCH}-linux-musl \
|
||||
--prefix=/usr \
|
||||
--sysconfdir=/etc \
|
||||
--mandir=/usr/share/man \
|
||||
--infodir=/usr/share/info \
|
||||
--disable-nls \
|
||||
--enable-gui=no \
|
||||
--enable-static
|
||||
make -j "$(nproc)"
|
||||
EOF
|
||||
|
||||
FROM build AS install
|
||||
RUN make DESTDIR=/rootfs install
|
||||
RUN find /rootfs -exec touch -hcd "@0" "{}" +
|
||||
|
||||
FROM stagex/filesystem AS package
|
||||
COPY --from=install /rootfs/. /
|
37
packages/util-macros/Containerfile
Normal file
37
packages/util-macros/Containerfile
Normal file
|
@ -0,0 +1,37 @@
|
|||
FROM scratch AS base
|
||||
ARG ARCH=x86_64
|
||||
ENV VERSION=1.20.0
|
||||
ENV SRC_HASH=0b86b262dbe971edb4ff233bc370dfad9f241d09f078a3f6d5b7f4b8ea4430db
|
||||
ENV SRC_FILE=util-macros-${VERSION}.tar.xz
|
||||
ENV SRC_SITE=https://www.x.org/releases/individual/util/${SRC_FILE}
|
||||
|
||||
FROM base AS fetch
|
||||
ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE}
|
||||
|
||||
FROM fetch AS build
|
||||
COPY --from=stagex/musl . /
|
||||
COPY --from=stagex/gcc . /
|
||||
COPY --from=stagex/busybox . /
|
||||
COPY --from=stagex/bash . /
|
||||
COPY --from=stagex/binutils . /
|
||||
COPY --from=stagex/make . /
|
||||
COPY --from=stagex/pkgconf . /
|
||||
COPY --from=stagex/m4 . /
|
||||
COPY --from=stagex/gawk . /
|
||||
RUN tar -xf ${SRC_FILE}
|
||||
WORKDIR util-macros-${VERSION}
|
||||
RUN --network=none <<-EOF
|
||||
set -eux
|
||||
./configure \
|
||||
--build=${ARCH}-linux-musl \
|
||||
--host=${ARCH}-linux-musl \
|
||||
--prefix=/usr
|
||||
make -j "$(nproc)"
|
||||
EOF
|
||||
|
||||
FROM build AS install
|
||||
RUN make DESTDIR=/rootfs install
|
||||
RUN find /rootfs -exec touch -hcd "@0" "{}" +
|
||||
|
||||
FROM stagex/filesystem AS package
|
||||
COPY --from=install /rootfs/. /
|
39
packages/utmps/Containerfile
Normal file
39
packages/utmps/Containerfile
Normal file
|
@ -0,0 +1,39 @@
|
|||
FROM scratch AS base
|
||||
ARG ARCH=x86_64
|
||||
ENV VERSION=0.1.2.2
|
||||
ENV SRC_HASH=f7ffa3714c65973bb95fbcf1501c06fc0478d93a51cea1b373ec6811c2425f52
|
||||
ENV SRC_FILE=utmps-${VERSION}.tar.gz
|
||||
ENV SRC_SITE=https://skarnet.org/software/utmps/${SRC_FILE}
|
||||
|
||||
FROM base AS fetch
|
||||
ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE}
|
||||
|
||||
FROM fetch AS build
|
||||
COPY --from=stagex/musl . /
|
||||
COPY --from=stagex/gcc . /
|
||||
COPY --from=stagex/busybox . /
|
||||
COPY --from=stagex/binutils . /
|
||||
COPY --from=stagex/make . /
|
||||
COPY --from=stagex/skalibs . /
|
||||
RUN tar -xf ${SRC_FILE}
|
||||
WORKDIR utmps-${VERSION}
|
||||
RUN --network=none <<-EOF
|
||||
set -eux
|
||||
./configure \
|
||||
--enable-shared \
|
||||
--enable-static \
|
||||
--prefix=/usr \
|
||||
--disable-allstatic \
|
||||
--libdir=/usr/lib \
|
||||
--libexecdir=/lib/utmps \
|
||||
--with-lib=/usr/lib \
|
||||
--with-dynlib=/lib
|
||||
make -j "$(nproc)"
|
||||
EOF
|
||||
|
||||
FROM build AS install
|
||||
RUN make DESTDIR=/rootfs install
|
||||
RUN find /rootfs -exec touch -hcd "@0" "{}" +
|
||||
|
||||
FROM stagex/filesystem AS package
|
||||
COPY --from=install /rootfs/. /
|
49
packages/xmlto/Containerfile
Normal file
49
packages/xmlto/Containerfile
Normal file
|
@ -0,0 +1,49 @@
|
|||
FROM scratch AS base
|
||||
ARG ARCH=x86_64
|
||||
ENV VERSION=0.0.29
|
||||
ENV SRC_HASH=40504db68718385a4eaa9154a28f59e51e59d006d1aa14f5bc9d6fded1d6017a
|
||||
ENV SRC_FILE=xmlto-${VERSION}.tar.gz
|
||||
ENV SRC_SITE=https://www.pagure.io/xmlto/archive/${VERSION}/${SRC_FILE}
|
||||
|
||||
FROM base AS fetch
|
||||
ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE}
|
||||
|
||||
FROM fetch AS build
|
||||
COPY --from=stagex/perl . /
|
||||
COPY --from=stagex/glib . /
|
||||
COPY --from=stagex/bash . /
|
||||
COPY --from=stagex/gettext . /
|
||||
COPY --from=stagex/musl . /
|
||||
COPY --from=stagex/automake . /
|
||||
COPY --from=stagex/autoconf . /
|
||||
COPY --from=stagex/gcc . /
|
||||
COPY --from=stagex/libxslt . /
|
||||
COPY --from=stagex/docbook-xsl . /
|
||||
COPY --from=stagex/busybox . /
|
||||
COPY --from=stagex/zlib . /
|
||||
COPY --from=stagex/perl-pod-parser . /
|
||||
COPY --from=stagex/perl-yaml-syck . /
|
||||
COPY --from=stagex/libtool . /
|
||||
COPY --from=stagex/binutils . /
|
||||
COPY --from=stagex/m4 . /
|
||||
COPY --from=stagex/libxml2 . /
|
||||
COPY --from=stagex/make . /
|
||||
RUN tar -xf ${SRC_FILE}
|
||||
WORKDIR xmlto-${VERSION}
|
||||
RUN --network=none <<-EOF
|
||||
set -eux
|
||||
autoreconf -vfi
|
||||
./configure \
|
||||
--build=${ARCH}-linux-musl \
|
||||
--host=${ARCH}-linux-musl \
|
||||
--prefix=/usr \
|
||||
--mandir=/usr/share/man
|
||||
make -j "$(nproc)"
|
||||
EOF
|
||||
|
||||
FROM build AS install
|
||||
RUN make DESTDIR=/rootfs install
|
||||
RUN find /rootfs -exec touch -hcd "@0" "{}" +
|
||||
|
||||
FROM stagex/filesystem AS package
|
||||
COPY --from=install /rootfs/. /
|
1350
src/packages.mk
1350
src/packages.mk
File diff suppressed because it is too large
Load diff
Loading…
Reference in a new issue