diff options
author | davidovski <david@davidovski.xyz> | 2023-02-02 14:10:02 +0000 |
---|---|---|
committer | davidovski <david@davidovski.xyz> | 2023-02-02 14:10:02 +0000 |
commit | f29d569cd33a73da5ad675f43a34ad53c5cc9bc6 (patch) | |
tree | 76fe6267f8307e7630fc6f53ff99a9767ad40de0 | |
parent | 05d004dfe0c9a9d898fac8a4a0292ca2a74ca391 (diff) |
Work
446 files changed, 5072 insertions, 1597 deletions
diff --git a/auto/create.sh b/auto/create.sh index ef6cf4e..2809557 100755 --- a/auto/create.sh +++ b/auto/create.sh @@ -2,14 +2,14 @@ read -p "package name> " name read -p "package version> " version read -p "description> " desc -deps=$(find repo -type d -maxdepth 1 -mindepth 1 | sed 's/.*\///g' | rev | cut -f1 -d/ | rev |fzf -m --prompt="dependencies> " | tr '\n' ' ') +makedeps=$(find repo -type d -maxdepth 1 -mindepth 1 | sed 's/.*\///g' | rev | cut -f1 -d/ | rev |fzf -m --prompt="dependencies> " | tr '\n' ' ') read -p "source url> " url read -p "additional urls> " additional type=$(find ./templates -type f | sed "s/.xibuild//g" | rev | cut -f1 -d/ | rev | fzf --prompt="build type> ") clear echo Name: $name -echo Deps: $deps +echo Make Deps: $makedeps echo Desc: $desc echo Vers: $version echo Sour: $url @@ -25,7 +25,6 @@ buildfile=$package/$name.xibuild mkdir -p $package url=$(echo $url | sed "s/$version/\$PKG_VER/g" | sed "s/pkgver/PKG_VER/g") -makedeps="" case $type in make|configure) @@ -49,7 +48,6 @@ NAME="$name" DESC="$desc" MAKEDEPS="$makedeps" -DEPS="$deps" PKG_VER=$version SOURCE="$url" diff --git a/repo/a52dec/a52dec.xibuild b/repo/a52dec/a52dec.xibuild index 2093040..d116394 100644 --- a/repo/a52dec/a52dec.xibuild +++ b/repo/a52dec/a52dec.xibuild @@ -27,10 +27,6 @@ build() { make } -check() { - make check -} - package() { make DESTDIR="$PKG_DEST" install install -m644 liba52/a52_internal.h "$PKG_DEST"/usr/include/a52dec/ diff --git a/repo/amb-plugins/amb-plugins.xibuild b/repo/amb-plugins/amb-plugins.xibuild new file mode 100644 index 0000000..528d0d4 --- /dev/null +++ b/repo/amb-plugins/amb-plugins.xibuild @@ -0,0 +1,19 @@ +#!/bin/sh + +NAME="amb-plugins" +DESC="A set of LADSPA ambisonics plugins" + +MAKEDEPS="make ladspa " + +PKG_VER=0.8.1 +SOURCE="https://kokkinizita.linuxaudio.org/linuxaudio/downloads/AMB-plugins-${PKG_VER}.tar.bz2" + +build () { + make PREFIX=/usr +} + +package () { + for p in *.so; do + install -Dm755 $p "${PKG_DEST}/usr/lib/ladspa/" + done +} diff --git a/repo/ardour/ardour.xibuild b/repo/ardour/ardour.xibuild index 96e030e..755fa58 100644 --- a/repo/ardour/ardour.xibuild +++ b/repo/ardour/ardour.xibuild @@ -3,7 +3,7 @@ NAME="ardour" DESC="professional-grade digital audio workstation" -MAKEDEPS="alsa-lib atkmm aubio boost fftw gtk2 gtkmm3 itstool jack libarchive libexecinfo liblo libpng libsamplerate libsigc++ libsndfile lilv lrdf lv2 pulseaudio python readline redland rubberband serd sratom taglib vamp-sdk fluidsynth hidapi soundtouch gtkmm2" +MAKEDEPS="alsa-lib atkmm aubio boost fftw gtk2 gtkmm3 itstool jack libarchive libexecinfo liblo libpng libsamplerate libsigc++ libsndfile lilv lrdf lv2 pulseaudio python readline redland rubberband serd sratom taglib vamp-sdk fluidsynth hidapi soundtouch gtkmm2 itstool" PKG_VER=6.9.0 SOURCE="https://dev.alpinelinux.org/archive/ardour/Ardour-$PKG_VER.tar.bz2" diff --git a/repo/atkmm/atkmm.xibuild b/repo/atkmm/atkmm.xibuild index 42278b0..e5eea9b 100644 --- a/repo/atkmm/atkmm.xibuild +++ b/repo/atkmm/atkmm.xibuild @@ -3,21 +3,19 @@ NAME="atkmm" DESC="C++ bindings for atk" -MAKEDEPS="make " -DEPS="atk glib glibmm libsigc++ musl " +MAKEDEPS="make atk glib glibmm libsigc++ musl mm-common" -PKG_VER=2.28.3 +PKG_VER=2.36.2 SOURCE="https://download.gnome.org/sources/atkmm/${PKG_VER%.*}/atkmm-$PKG_VER.tar.xz" build () { - ./configure \ - --prefix=/usr \ - --bindir=/usr/bin \ - --sysconfdir=/etc \ - --disable-static - make + mkdir build && + cd build && + meson --prefix=/usr \ + .. && + ninja } package () { - make DESTDIR=$PKG_DEST install + DESTDIR=$PKG_DEST ninja install } diff --git a/repo/botan/botan.xibuild b/repo/botan/botan.xibuild index 86286ec..71ba43c 100644 --- a/repo/botan/botan.xibuild +++ b/repo/botan/botan.xibuild @@ -3,8 +3,7 @@ NAME="botan" DESC="Crypto and TLS for C++11" -MAKEDEPS="make boost bzip2 openssl sqlite3 xz zlib" -DEPS="musl libstdc++ libgcc" +MAKEDEPS="make boost bzip2 openssl sqlite3 xz zlib musl libstdc++ libgcc python-pygments python-babel python-markupsafe python-imagesize python-sphinx python-requests" PKG_VER=2.19.2 SOURCE="https://botan.randombit.net/releases/Botan-$PKG_VER.tar.xz" @@ -19,7 +18,6 @@ build () { --with-bzip2 \ --with-lzma \ --with-openmp \ - --with-openssl \ --with-sqlite3 \ --with-zlib \ --with-os-feature=getrandom \ diff --git a/repo/brotli/brotli.xibuild b/repo/brotli/brotli.xibuild index d45bb4b..e48768c 100644 --- a/repo/brotli/brotli.xibuild +++ b/repo/brotli/brotli.xibuild @@ -3,7 +3,7 @@ MAKEDEPS="cmake make " DEPS="musl" -SOURCE=https://github.com/google/brotli +SOURCE=https://github.com/google/brotli.git DESC="A generic-purpose lossless compression algorithm" prepare () { diff --git a/repo/bsd-utils/bsd-utils.xibuild b/repo/bsd-utils/bsd-utils.xibuild new file mode 100644 index 0000000..064aae4 --- /dev/null +++ b/repo/bsd-utils/bsd-utils.xibuild @@ -0,0 +1,22 @@ +#!/bin/sh + +NAME="bsd-utils" +DESC="BSD coreutils is a port of many utilities from BSD to Linux and macOS." + +MAKEDEPS="cmake openssl" + +PKG_VER=master +SOURCE="https://github.com/DiegoMagdaleno/BSDCoreUtils.git" + +build () { + cmake -B build \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DCMAKE_INSTALL_LIBDIR=/usr/lib \ + -DBUILD_SHARED_LIBS=True \ + -DBUILD_STATIC_LIBS=OFF + cmake --build build +} + +package () { + DESTDIR="$PKG_DEST" cmake --install build +} diff --git a/repo/cabal/cabal.project.freeze b/repo/cabal/cabal.project.freeze deleted file mode 100644 index f4c0bd7..0000000 --- a/repo/cabal/cabal.project.freeze +++ /dev/null @@ -1,68 +0,0 @@ -active-repositories: hackage.haskell.org:merge -constraints: any.Cabal ==3.8.1.0, - any.Cabal-syntax ==3.8.1.0, - any.HTTP ==4000.4.1, - HTTP -conduit10 +network-uri -warn-as-error -warp-tests, - any.array ==0.5.4.0, - any.async ==2.2.4, - async -bench, - any.base ==4.15.1.0, - any.base-orphans ==0.8.7, - any.base16-bytestring ==1.0.2.0, - any.base64-bytestring ==1.2.1.0, - any.binary ==0.8.8.0, - any.bytestring ==0.10.12.1, - cabal-install +lukko +native-dns, - any.cabal-install-solver ==3.8.1.0, - cabal-install-solver -debug-conflict-sets -debug-expensive-assertions -debug-tracetree, - any.containers ==0.6.4.1, - any.cryptohash-sha256 ==0.11.102.1, - cryptohash-sha256 -exe +use-cbits, - any.deepseq ==1.4.5.0, - any.directory ==1.3.6.2, - any.echo ==0.1.4, - echo -example, - any.ed25519 ==0.0.5.0, - ed25519 +no-donna +test-doctests +test-hlint +test-properties, - any.edit-distance ==0.2.2.1, - any.exceptions ==0.10.4, - any.filepath ==1.4.2.1, - any.ghc-bignum ==1.1, - any.ghc-boot-th ==9.0.2, - any.ghc-prim ==0.7.0, - any.hackage-security ==0.6.2.2, - hackage-security +base48 -cabal-syntax +lukko -mtl21 -old-directory +use-network-uri, - any.hashable ==1.4.1.0, - hashable +containers +integer-gmp -random-initial-seed, - any.hsc2hs ==0.68.8, - hsc2hs -in-ghc-tree, - any.lukko ==0.1.1.3, - lukko +ofd-locking, - any.mtl ==2.2.2, - any.network ==3.1.2.7, - network -devel, - any.network-uri ==2.6.4.1, - any.parsec ==3.1.14.0, - any.pretty ==1.1.3.6, - any.process ==1.6.15.0, - any.random ==1.2.1.1, - any.regex-base ==0.94.0.2, - any.regex-posix ==0.96.0.1, - regex-posix -_regex-posix-clib, - any.resolv ==0.1.2.0, - any.rts ==1.0.2, - any.safe-exceptions ==0.1.7.3, - any.splitmix ==0.1.0.4, - splitmix -optimised-mixer, - any.stm ==2.5.0.0, - any.tar ==0.5.1.1, - tar -old-bytestring -old-time, - any.template-haskell ==2.17.0.0, - any.text ==1.2.5.0, - any.th-compat ==0.1.4, - any.time ==1.9.3, - any.transformers ==0.5.6.2, - any.unix ==2.7.2.2, - any.zlib ==0.6.3.0, - zlib -bundled-c-zlib -non-blocking-ffi -pkg-config -index-state: hackage.haskell.org 2022-08-16T18:13:49Z diff --git a/repo/cabal/cabal.xibuild b/repo/cabal/cabal.xibuild deleted file mode 100644 index 64bcd18..0000000 --- a/repo/cabal/cabal.xibuild +++ /dev/null @@ -1,60 +0,0 @@ -#!/bin/sh - -NAME="cabal" -DESC="The Haskell Cabal" - -MAKEDEPS="ghc gmp libffi zlib cabal-bootstrap" - -PKG_VER=3.8.1.0 -SOURCE="https://hackage.haskell.org/package/cabal-install-$PKG_VER/cabal-install-$PKG_VER.tar.gz" - -ADDITIONAL=" -cabal.project.freeze -" - -cabal_update() { - cd $BUILD_ROOT - # Build a freeze file to make the build reproducible. - # This freeze file is stored in $source and thus tracked in Git. - HOME="$_cabal_home" cabal v2-update --allow-newer - ( - cd "$BUILD_ROOT" - HOME="$_cabal_home" cabal v2-freeze \ - --allow-newer --shadow-installed-packages - mv cabal.project.freeze "$startdir/" - ) -} - -prepare() { - apply_patches - ln -sf "$BUILD_ROOT/cabal.project.freeze" \ - "$BUILD_ROOT/cabal.project.freeze" -} - -build() { - HOME="$_cabal_home" cabal v2-update - HOME="$_cabal_home" cabal v2-build all \ - --allow-newer \ - --jobs=${JOBS:-1} \ - --prefix=/usr \ - --docdir=/usr/share/doc/cabal \ - --sysconfdir=/etc -} - -package() { - # With v2- cabal no longer wants us to separate v2-build and - # v2-install, however, we don't want to build everything in a - # fakeroot. We work around this by copying binaries build in the - # previous step manually. - # - # See https://github.com/haskell/cabal/issues/6919#issuecomment-761563498 - HOME="$_cabal_home" cabal list-bin --allow-newer all:exes | \ - xargs install -Dm755 -t "$PKG_DEST"/usr/bin - - mkdir -p "$PKG_DEST"/usr/share/man/man1 - HOME="$_cabal_home" cabal man --raw \ - > "$PKG_DEST"/usr/share/man/man1/cabal.1 - - install -Dm644 LICENSE "$PKG_DEST/usr/share/licenses/cabal/LICENSE" -} - diff --git a/repo/cairomm/cairomm.xibuild b/repo/cairomm/cairomm.xibuild index 3d98220..28c5b3f 100644 --- a/repo/cairomm/cairomm.xibuild +++ b/repo/cairomm/cairomm.xibuild @@ -3,10 +3,9 @@ NAME="cairomm" DESC="C++ bindings to Cairo vector graphics library" -MAKEDEPS="meson ninja " -DEPS="cairo libsigc++ " +MAKEDEPS="meson ninja mm-common cairo libsigc++ " -PKG_VER=1.14.3 +PKG_VER=1.16.2 SOURCE="https://www.cairographics.org/releases/cairomm-$PKG_VER.tar.xz" build () { diff --git a/repo/caps/caps.xibuild b/repo/caps/caps.xibuild new file mode 100644 index 0000000..7e08c48 --- /dev/null +++ b/repo/caps/caps.xibuild @@ -0,0 +1,29 @@ +#!/bin/sh + +NAME="caps" +DESC="The LADSPA C* Audio Plugin Suite" + +MAKEDEPS="make ladspa " + +PKG_VER=0.9.26 +SOURCE="http://quitte.de/dsp/caps_${PKG_VER}.tar.bz2" +ADDITIONAL=" +fix-cstdint-missing.patch +" + +prepare () { + apply_patches +} + +build () { + ./configure \ + --prefix=/usr \ + --bindir=/usr/bin \ + --sysconfdir=/etc \ + --disable-static + make +} + +package () { + make PREFIX=$PKG_DEST/usr install +} diff --git a/repo/caps/fix-cstdint-missing.patch b/repo/caps/fix-cstdint-missing.patch new file mode 100644 index 0000000..1cb69fd --- /dev/null +++ b/repo/caps/fix-cstdint-missing.patch @@ -0,0 +1,33 @@ +--- build/basics.h 2023-01-28 14:09:49.976317796 +0000 ++++ build.orig/basics.h 2023-01-28 14:08:45.279312604 +0000 +@@ -38,6 +38,7 @@ + #define _ISOC99_SOURCE 1 + #define _ISOC9X_SOURCE 1 + ++#include <cstdint> + #include <stdlib.h> + #include <string.h> + +@@ -50,14 +49,14 @@ + + #include "ladspa.h" + +-typedef __int8_t int8; +-typedef __uint8_t uint8; +-typedef __int16_t int16; +-typedef __uint16_t uint16; +-typedef __int32_t int32; +-typedef __uint32_t uint32; +-typedef __int64_t int64; +-typedef __uint64_t uint64; ++typedef int8_t int8; ++typedef uint8_t uint8; ++typedef int16_t int16; ++typedef uint16_t uint16; ++typedef int32_t int32; ++typedef uint32_t uint32; ++typedef int64_t int64; ++typedef uint64_t uint64; + + #define MIN_GAIN 1e-6 /* -120 dB */ + /* smallest non-denormal 32 bit IEEE float is 1.18e-38 */ diff --git a/repo/cbindgen/cbindgen.xibuild b/repo/cbindgen/cbindgen.xibuild index ae10722..23887b0 100644 --- a/repo/cbindgen/cbindgen.xibuild +++ b/repo/cbindgen/cbindgen.xibuild @@ -3,16 +3,20 @@ NAME="cbindgen" DESC="Tool to generate C bindings from Rust code" -MAKEDEPS="" -DEPS="gcc " +MAKEDEPS="cargo" -PKG_VER=0.23.0 +PKG_VER=0.24.3 SOURCE="https://crates.io/api/v1/crates/cbindgen/$PKG_VER/download" -build () { - cargo build --release --locked --verbose +prepare() { + cargo fetch --locked } -package () { - install -Dm0755 target/release/cbindgen "$PKG_DEST/usr/bin/cbindgen" +build() { + cargo build --release --frozen } + +package() { + install -Dm0755 target/release/cbindgen -t "$PKG_DEST"/usr/bin +} + diff --git a/repo/chromium/chromium.xibuild b/repo/chromium/chromium.xibuild index a97458a..819a6f5 100644 --- a/repo/chromium/chromium.xibuild +++ b/repo/chromium/chromium.xibuild @@ -3,10 +3,9 @@ NAME="chromium" DESC="Chromium webbrowser (ungoogled)" -MAKEDEPS="meson ninja hwids lld pciutils" -DEPS="alsa-lib at-spi2-atk at-spi2-core atk cairo dbus eudev expat ffmpeg4 flac font-opensans fontconfig freetype2 glib gtk3 harfbuzz lcms2 libdrm libevent libjpeg-turbo libpng pulseaudio libwebp libx11 libxcb libxcomposite libxdamage libxext libxfixes libxkbcommon libxml2 libxrandr libxslt mesa musl nspr nss opus pango re2 snappy wayland xdg-utils nodejs" +MAKEDEPS="meson ninja hwids lld pciutils alsa-lib at-spi2-atk at-spi2-core atk cairo dbus eudev expat ffmpeg4 flac font-opensans fontconfig freetype2 glib gtk3 harfbuzz lcms2 libdrm libevent libjpeg-turbo libpng pulseaudio libwebp libx11 libxcb libxcomposite libxdamage libxext libxfixes libxkbcommon libxml2 libxrandr libxslt mesa musl nspr nss opus pango re2 snappy wayland xdg-utils nodejs libexecinfo" -PKG_VER=100.0.4896.127 +PKG_VER=108.0.5359.124 SOURCE="https://commondatastorage.googleapis.com/chromium-browser-official/chromium-$PKG_VER.tar.xz" @@ -18,7 +17,6 @@ https://chromium-fonts.storage.googleapis.com/$fonts_package chromium-VirtualCursor-standard-layout.patch chromium-revert-drop-of-system-java.patch -chromium-use-alpine-target.patch chromium.conf chromium-launcher.sh chromium.desktop @@ -45,7 +43,6 @@ no-getcontext.patch no-mallinfo.patch quiche-arena-size.patch resolver.patch -revert-use-ffile-compilation-dir.patch scoped-file.patch system-opus.patch use-deprecated-ffmpeg-api.patch @@ -101,7 +98,6 @@ prepare () { # added benefit of not having to list all the remaining libraries local use_system=" - ffmpeg flac fontconfig freetype @@ -128,23 +124,31 @@ prepare () { python build/linux/unbundle/replace_gn_files.py \ --system-libraries ${use_system} python third_party/libaddressinput/chromium/tools/update-strings.py + + # avoid errors like error: unknown type name 'ssize_t' + sed -i "1i#include <sys/types.h>" base/third_party/symbolize/symbolize.h + + # this header is missing for some reason? + sed -i "1i#include <cstdint>" net/third_party/quiche/src/quiche/http2/adapter/window_manager.h + } build () { - export CC=clang - export CXX=clang++ - export LD=clang++ - #export AR=ar - #export NM=nm - #export LDFLAGS="-stdlib=libstdc++" + export cc=gcc + export cxx=g++ + export ld=ld + export ar=ar + export nm=nm + #export ldflags="-stdlib=libstdc++" flags=" +is_clang=false custom_toolchain=\"//build/toolchain/linux/unbundle:default\" host_toolchain=\"//build/toolchain/linux/unbundle:default\" enable_nacl=false use_sysroot=false gold_path=\"/usr/bin/ld.gold\" -use_custom_libcxx=true +use_custom_libcxx=false use_gold=false is_debug=false blink_symbol_level=0 @@ -154,6 +158,7 @@ use_allocator=\"none\" use_allocator_shim=false enable_widevine=true use_system_harfbuzz=false +use_system_libffi=true use_system_wayland_scanner=true use_cups=false use_gnome_keyring=false @@ -163,7 +168,7 @@ use_pulseaudio=true link_pulseaudio=true rtc_use_pipewire=true proprietary_codecs=false -ffmpeg_branding=\"Chrome\" +ffmpeg_branding=\"chrome\" fatal_linker_warnings=false disable_fieldtrial_testing_config=true is_official_build=true @@ -173,19 +178,25 @@ use_cfi_icall=false chrome_pgo_phase=0 " - # Append ungoogled chromium flags to _flags array + # append ungoogled chromium flags to _flags array flags="$flags - $(cat "ungoogled-chromium-$PKG_VER-1/flags.gn") + $(cat "ungoogled-chromium-$pkg_ver-1/flags.gn") + enable_mse_mpeg2ts_stream_parser=false " # Facilitate deterministic builds (taken from build/config/compiler/BUILD.gn) - CFLAGS="$CFLAGS -Wno-builtin-macro-redefined" - CXXFLAGS="$CXXFLAGS -Wno-builtin-macro-redefined" - CPPFLAGS="$CPPFLAGS -D__DATE__= -D__TIME__= -D__TIMESTAMP__=" - # Do not warn about unknown warning options - CFLAGS="$CFLAGS -Wno-unknown-warning-option" - CXXFLAGS="$CXXFLAGS -Wno-unknown-warning-option" + # these don't work on gcc build + #CFLAGS="$CFLAGS -WNO-BUILTIN-MACRO-REDEFINED" + #CXXFLAGS="$CXXFLAGS -WNO-BUILTIN-MACRO-REDEFINED" + + # avoid redefining + #CPPFLAGS="$CPPFLAGS -D__DATE__= -D__TIME__= -D__TIMESTAMP__=" + + + # these don't work on gcc build + #CFLAGS="$CFLAGS -WNO-UNKNOWN-WARNING-OPTION" + #CXXFLAGS="$CXXFLAGS -WNO-UNKNOWN-WARNING-OPTION" python3 tools/gn/bootstrap/bootstrap.py -s -v --skip-generate-buildfiles diff --git a/repo/chromium/no-mallinfo.patch b/repo/chromium/no-mallinfo.patch index 23ce40e..675d5b0 100644 --- a/repo/chromium/no-mallinfo.patch +++ b/repo/chromium/no-mallinfo.patch @@ -1,14 +1,30 @@ ---- ./base/trace_event/malloc_dump_provider.cc.orig -+++ ./base/trace_event/malloc_dump_provider.cc -@@ -212,7 +212,7 @@ +--- a/base/trace_event/malloc_dump_provider.cc ++++ b/base/trace_event/malloc_dump_provider.cc +@@ -185,7 +185,6 @@ + #define MALLINFO2_FOUND_IN_LIBC + struct mallinfo2 info = mallinfo2(); + #endif +-#endif // defined(__GLIBC__) && defined(__GLIBC_PREREQ) + #if !defined(MALLINFO2_FOUND_IN_LIBC) + struct mallinfo info = mallinfo(); + #endif +@@ -205,6 +204,7 @@ + sys_alloc_dump->AddScalar(MemoryAllocatorDump::kNameSize, + MemoryAllocatorDump::kUnitsBytes, info.uordblks); + } ++#endif // defined(__GLIBC__) && defined(__GLIBC_PREREQ) + } + #endif + +@@ -339,7 +340,7 @@ &allocated_objects_count); - #elif defined(OS_FUCHSIA) + #elif BUILDFLAG(IS_FUCHSIA) // TODO(fuchsia): Port, see https://crbug.com/706592. -#else +#elif defined(__GLIBC__) - #if defined(__GLIBC__) && defined(__GLIBC_PREREQ) - #if __GLIBC_PREREQ(2, 33) - #define MALLINFO2_FOUND_IN_LIBC + ReportMallinfoStats(/*pmd=*/nullptr, &total_virtual_size, &resident_size, + &allocated_objects_size, &allocated_objects_count); + #endif --- ./base/process/process_metrics_posix.cc.orig +++ ./base/process/process_metrics_posix.cc @@ -105,7 +105,7 @@ @@ -81,3 +97,14 @@ /* Define to 1 if you have the <malloc.h> header file. */ #define HAVE_MALLOC_H 1 +--- a/base/allocator/partition_allocator/shim/allocator_shim_default_dispatch_to_partition_alloc.cc ++++ b/base/allocator/partition_allocator/shim/allocator_shim_default_dispatch_to_partition_alloc.cc +@@ -717,7 +717,7 @@ + + #endif // !BUILDFLAG(IS_APPLE) && !BUILDFLAG(IS_ANDROID) + +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) ++#if 0 + SHIM_ALWAYS_EXPORT struct mallinfo mallinfo(void) __THROW { + base::SimplePartitionStatsDumper allocator_dumper; + Allocator()->DumpStats("malloc", true, &allocator_dumper); diff --git a/repo/cmt/cmt.xibuild b/repo/cmt/cmt.xibuild new file mode 100644 index 0000000..fff6237 --- /dev/null +++ b/repo/cmt/cmt.xibuild @@ -0,0 +1,23 @@ +#!/bin/sh + +NAME="cmt" +DESC="LADSPA plugins for use with software synthesis and recording packages on Linux" + +MAKEDEPS="make ladspa " + +PKG_VER=1.18 +SOURCE="https://www.ladspa.org/download/cmt_${PKG_VER}.tgz" + +prepare () { + sed -e "s|-O2|${CFLAGS} ${LDFLAGS}|" -i src/Makefile +} + +build () { + cd src + make +} + +package () { + cd .. + install -Dm 755 plugins/cmt.so "${PKG_DEST}/usr/lib/ladspa/" +} diff --git a/repo/cryptsetup/cryptsetup.xibuild b/repo/cryptsetup/cryptsetup.xibuild index b53db4d..5692c15 100644 --- a/repo/cryptsetup/cryptsetup.xibuild +++ b/repo/cryptsetup/cryptsetup.xibuild @@ -26,11 +26,11 @@ build () { package () { make DESTDIR=$PKG_DEST install - install -Dm644 "$srcdir"/dmcrypt.confd "$PKG_DEST"/etc/conf.d/dmcrypt - install -Dm755 "$srcdir"/dmcrypt.initd "$PKG_DEST"/etc/init.d/dmcrypt + install -Dm644 dmcrypt.confd "$PKG_DEST"/etc/conf.d/dmcrypt + install -Dm755 dmcrypt.initd "$PKG_DEST"/etc/init.d/dmcrypt mkdir -p "$PKG_DEST"/usr/share/doc/cryptsetup/ - install -m644 README.md FAQ docs/v$PKG_VER-ReleaseNotes \ + install -m644 README.md docs/v$PKG_VER-ReleaseNotes \ "$PKG_DEST"/usr/share/doc/cryptsetup/ } diff --git a/repo/curl/curl.xibuild b/repo/curl/curl.xibuild index 09699d5..8daa84d 100644 --- a/repo/curl/curl.xibuild +++ b/repo/curl/curl.xibuild @@ -1,7 +1,7 @@ #!/bin/sh -MAKEDEPS="make " -DEPS="openssl zlib zstd libnghttp libpsl cacerts" +MAKEDEPS="make openssl zlib zstd libnghttp libpsl cacerts rtmpdump" +DEPS="cacerts" PKG_VER=7.85.0 SOURCE=https://curl.se/download/curl-$PKG_VER.tar.xz diff --git a/repo/cython/cython.xibuild b/repo/cython/cython.xibuild index 4a85372..18555e0 100644 --- a/repo/cython/cython.xibuild +++ b/repo/cython/cython.xibuild @@ -12,9 +12,6 @@ ADDITIONAL=" cython-test-fix.patch " -prepare () { - apply_patches -} build() { python3 setup.py build diff --git a/repo/dash/dash.xibuild b/repo/dash/dash.xibuild index a63eb4d..b188f4e 100644 --- a/repo/dash/dash.xibuild +++ b/repo/dash/dash.xibuild @@ -3,11 +3,12 @@ MAKEDEPS="make " DEPS="musl" -PKG_VER=0.5.11.5 -SOURCE=http://gondor.apana.org.au/~herbert/dash/files/dash-$PKG_VER.tar.gz +PKG_VER=0.5.12 +SOURCE=https://git.kernel.org/pub/scm/utils/dash/dash.git/snapshot/dash-$PKG_VER.tar.gz DESC="POSIX compliant shell that aims to be as small as possible" build () { + autoreconf -vif ./configure --bindir=/usr/bin --mandir=/usr/share/man && make } diff --git a/repo/ddcutil/ddcutil.xibuild b/repo/ddcutil/ddcutil.xibuild index 03a55d9..f0440b9 100644 --- a/repo/ddcutil/ddcutil.xibuild +++ b/repo/ddcutil/ddcutil.xibuild @@ -3,13 +3,12 @@ NAME="ddcutil" DESC="Query and change Linux monitor settings using DDC/CI and USB" -MAKEDEPS=" linux-headers autoconf automake libtool eudev libusb i2c-tools libxrandr glib kmod" +MAKEDEPS="linux-headers autoconf automake libtool eudev libusb i2c-tools libxrandr glib kmod" PKG_VER=1.3.0 SOURCE="https://github.com/rockowitz/ddcutil/archive/v$PKG_VER.tar.gz" prepare() { - apply_patches NOCONFIGURE=1 ./autogen.sh } diff --git a/repo/dracut/dracut.xibuild b/repo/dracut/dracut.xibuild index ca22f5f..bbc16e7 100644 --- a/repo/dracut/dracut.xibuild +++ b/repo/dracut/dracut.xibuild @@ -1,14 +1,14 @@ #!/bin/sh MAKEDEPS="make asciidoc musl-fts" -DEPS="bash toybox cpio findutils grep gzip kmod pkg-config procps-ng sed util-linux xz" +DEPS="bash toybox cpio findutils grep gzip kmod pkg-config procps-ng sed util-linux xz stty" DESC="An initramfs infastructure aimin gto have as little possible hardcoded into the initramfs" PKG_VER=055 SOURCE=https://mirrors.edge.kernel.org/pub/linux/utils/boot/dracut/dracut-$PKG_VER.tar.xz ADDITIONAL=" - fix-toybox-coreutils.patch + fix-sbase-coreutils.patch " prepare () { diff --git a/repo/dsp/dsp.xibuild b/repo/dsp/dsp.xibuild new file mode 100644 index 0000000..eea855b --- /dev/null +++ b/repo/dsp/dsp.xibuild @@ -0,0 +1,22 @@ +#!/bin/sh + +NAME="dsp" +DESC="audio processing program with an interactive mode" + +MAKEDEPS="ladspa libsndfile ffmpeg fftw libmad libtool libao zita-convolver alsa-lib pulseaudio" + +PKG_VER=1.9 +SOURCE="https://github.com/bmc0/dsp/archive/v$PKG_VER/dsp-$PKG_VER.tar.gz" + +build() { + ./configure --prefix=/usr # not a GNU autoconf + make +} + +package() { + make DESTDIR="$PKG_DEST" install + for script in scripts/*; do + install -Dm755 $script "$PKG_DEST"/usr/bin + done +} + diff --git a/repo/edk2/edk2.xibuild b/repo/edk2/edk2.xibuild index d4deb4a..619461e 100644 --- a/repo/edk2/edk2.xibuild +++ b/repo/edk2/edk2.xibuild @@ -3,7 +3,7 @@ NAME="edk2" DESC="EFI Development Kit II" -MAKEDEPS=" bash python iasl nasm util-linux util-linux-misc" +MAKEDEPS="bash python iasl nasm util-linux" PKG_VER=0.0.202202 _realver=edk2-stable${PKG_VER##*.} diff --git a/repo/efibootmgr/efibootmgr.xibuild b/repo/efibootmgr/efibootmgr.xibuild index 16825ea..dbbc015 100644 --- a/repo/efibootmgr/efibootmgr.xibuild +++ b/repo/efibootmgr/efibootmgr.xibuild @@ -1,7 +1,6 @@ #!/bin/sh -MAKEDEPS="make " -DEPS="efivar popt" +MAKEDEPS="make efivar popt" PKG_VER=18 SOURCE=https://github.com/rhboot/efibootmgr/archive/$PKG_VER/efibootmgr-$PKG_VER.tar.gz @@ -13,6 +12,7 @@ prepare () { } build () { + export CFLAGS="$CFLAGS -Wno-pointer-sign" make EFIDIR=XI EFI_LOADER=grubx64.efi } diff --git a/repo/efivar/efivar.xibuild b/repo/efivar/efivar.xibuild index b2830d1..d47e14f 100644 --- a/repo/efivar/efivar.xibuild +++ b/repo/efivar/efivar.xibuild @@ -1,35 +1,29 @@ #!/bin/sh -MAKEDEPS="make patch" -DEPS="musl" +NAME="efivar" +DESC="Tools and library to manipulate EFI variables" + +MAKEDEPS="popt linux-headers mandoc" PKG_VER=38 -SOURCE=https://github.com/rhboot/efivar/releases/download/$PKG_VER/efivar-$PKG_VER.tar.bz2 +SOURCE="https://github.com/rhboot/efivar/releases/download/$PKG_VER/efivar-$PKG_VER.tar.bz2" ADDITIONAL=" - patches/musl-bswap.patch - patches/efivar-fix-format_guid.patch - patches/efivar-fix-packed.patch - patches/efivar-fix-ucs2.patch +musl-compat.patch " -DESC="Tools and libraries to manupulate EFI variables" - prepare() { - apply_patches - - # remove verbosity in ln commands - for f in Makefile src/Makefile src/test/Makefile docs/Makefile Make.rules; do - echo "patching $f" - sed -i "s@-vfs@-fs@g" $f - sed -i "s@-rfv@-rf@g" $f - done + apply_patches + sed -i 's/#include <sys\/cdefs.h>//g' "$BUILD_ROOT/src/compiler.h" } -build () { - make CFLAGS="-O2 -Wno-stringop-truncation" +build() { + cd "$BUILD_ROOT" + libdir="/usr/lib" make } -package () { - make LIBDIR=/usr/lib DESTDIR=$PKG_DEST install +package() { + cd "$BUILD_ROOT" + libdir="/usr/lib" make DESTDIR="$PKG_DEST" install } + diff --git a/repo/efivar/musl-compat.patch b/repo/efivar/musl-compat.patch new file mode 100644 index 0000000..00229be --- /dev/null +++ b/repo/efivar/musl-compat.patch @@ -0,0 +1,231 @@ +From cece3ffd5be2f8641eb694513f2b73e5eb97ffd3 Mon Sep 17 00:00:00 2001 +From: Natanael Copa <ncopa@alpinelinux.org> +Date: Fri, 28 Jan 2022 12:13:30 +0100 +Subject: [PATCH 1/2] efisecdb: fix build with musl libc + +Refactor code to use POSIX atexit(3) instead of the GNU specific +on_exit(3). + +Resolves: #197 +Resolves: #202 +Signed-off-by: Natanael Copa <ncopa@alpinelinux.org> +--- + src/compiler.h | 2 -- + src/efisecdb.c | 68 +++++++++++++++++++------------------------------- + 2 files changed, 26 insertions(+), 44 deletions(-) + +diff --git a/src/compiler.h b/src/compiler.h +index e2f18f0b..d95fb014 100644 +--- a/src/compiler.h ++++ b/src/compiler.h +@@ -7,8 +7,6 @@ + #ifndef COMPILER_H_ + #define COMPILER_H_ + +-#include <sys/cdefs.h> +- + /* GCC version checking borrowed from glibc. */ + #if defined(__GNUC__) && defined(__GNUC_MINOR__) + # define GNUC_PREREQ(maj,min) \ +diff --git a/src/efisecdb.c b/src/efisecdb.c +index f8823737..6bd5ad90 100644 +--- a/src/efisecdb.c ++++ b/src/efisecdb.c +@@ -25,6 +25,10 @@ + extern char *optarg; + extern int optind, opterr, optopt; + ++static efi_secdb_t *secdb = NULL; ++static list_t infiles; ++static list_t actions; ++ + struct hash_param { + char *name; + efi_secdb_type_t algorithm; +@@ -187,12 +191,11 @@ add_action(list_t *list, action_type_t action_type, const efi_guid_t *owner, + } + + static void +-free_actions(int status UNUSED, void *actionsp) ++free_actions(void) + { +- list_t *actions = (list_t *)actionsp; + list_t *pos, *tmp; + +- for_each_action_safe(pos, tmp, actions) { ++ for_each_action_safe(pos, tmp, &actions) { + action_t *action = list_entry(pos, action_t, list); + + list_del(&action->list); +@@ -202,12 +205,11 @@ free_actions(int status UNUSED, void *actionsp) + } + + static void +-free_infiles(int status UNUSED, void *infilesp) ++free_infiles(void) + { +- list_t *infiles = (list_t *)infilesp; + list_t *pos, *tmp; + +- for_each_ptr_safe(pos, tmp, infiles) { ++ for_each_ptr_safe(pos, tmp, &infiles) { + ptrlist_t *entry = list_entry(pos, ptrlist_t, list); + + list_del(&entry->list); +@@ -216,27 +218,12 @@ free_infiles(int status UNUSED, void *infilesp) + } + + static void +-maybe_free_secdb(int status UNUSED, void *voidp) ++maybe_free_secdb(void) + { +- efi_secdb_t **secdbp = (efi_secdb_t **)voidp; +- +- if (secdbp == NULL || *secdbp == NULL) ++ if (secdb == NULL) + return; + +- efi_secdb_free(*secdbp); +-} +- +-static void +-maybe_do_unlink(int status, void *filep) +-{ +- char **file = (char **)filep; +- +- if (status == 0) +- return; +- if (file == NULL || *file == NULL) +- return; +- +- unlink(*file); ++ efi_secdb_free(secdb); + } + + static void +@@ -323,15 +310,6 @@ parse_input_files(list_t *infiles, char **outfile, efi_secdb_t **secdb, + return status; + } + +-/* +- * These need to be static globals so that they're not on main's stack when +- * on_exit() fires. +- */ +-static efi_secdb_t *secdb = NULL; +-static list_t infiles; +-static list_t actions; +-static char *outfile = NULL; +- + int + main(int argc, char *argv[]) + { +@@ -351,6 +329,7 @@ main(int argc, char *argv[]) + bool do_sort_data = false; + bool sort_descending = false; + int status = 0; ++ char *outfile = NULL; + + const char sopts[] = ":aAc:dfg:h:i:Lo:rs:t:v?"; + const struct option lopts[] = { +@@ -376,10 +355,9 @@ main(int argc, char *argv[]) + INIT_LIST_HEAD(&infiles); + INIT_LIST_HEAD(&actions); + +- on_exit(free_actions, &actions); +- on_exit(free_infiles, &infiles); +- on_exit(maybe_free_secdb, &secdb); +- on_exit(maybe_do_unlink, &outfile); ++ atexit(free_actions); ++ atexit(free_infiles); ++ atexit(maybe_free_secdb); + + /* + * parse the command line. +@@ -587,24 +565,30 @@ main(int argc, char *argv[]) + outfd = open(outfile, flags, 0600); + if (outfd < 0) { + char *tmpoutfile = outfile; +- if (errno == EEXIST) +- outfile = NULL; ++ if (errno != EEXIST) ++ unlink(outfile); + err(1, "could not open \"%s\"", tmpoutfile); + } + + rc = ftruncate(outfd, 0); +- if (rc < 0) ++ if (rc < 0) { ++ unlink(outfile); + err(1, "could not truncate output file \"%s\"", outfile); ++ } + + void *output; + size_t size = 0; + rc = efi_secdb_realize(secdb, &output, &size); +- if (rc < 0) ++ if (rc < 0) { ++ unlink(outfile); + secdb_err(1, "could not realize signature list"); ++ } + + rc = write(outfd, output, size); +- if (rc < 0) ++ if (rc < 0) { ++ unlink(outfile); + err(1, "could not write signature list"); ++ } + + close(outfd); + xfree(output); + +From df09b472419466987f2f30176dd00937e640aa9a Mon Sep 17 00:00:00 2001 +From: Natanael Copa <ncopa@alpinelinux.org> +Date: Fri, 28 Jan 2022 12:29:00 +0100 +Subject: [PATCH 2/2] efisecdb: do not free optarg + +The *outfile passed to parse_input_files can only be either set to +optarg or be NULL. optarg should not be free'd and NULL does not need +to. + +Since we no longer use on_exit to unlink outfile we also don't need to +set *outfile to NULL. + +Fixes commit d91787035bc1 (efisecdb: add efisecdb) + +Signed-off-by: Natanael Copa <ncopa@alpinelinux.org> +--- + src/efisecdb.c | 7 ++----- + 1 file changed, 2 insertions(+), 5 deletions(-) + +diff --git a/src/efisecdb.c b/src/efisecdb.c +index 6bd5ad90..70fa1847 100644 +--- a/src/efisecdb.c ++++ b/src/efisecdb.c +@@ -255,8 +255,7 @@ list_guids(void) + * failure. + */ + static int +-parse_input_files(list_t *infiles, char **outfile, efi_secdb_t **secdb, +- bool dump) ++parse_input_files(list_t *infiles, efi_secdb_t **secdb, bool dump) + { + int status = 0; + list_t *pos, *tmp; +@@ -297,8 +296,6 @@ parse_input_files(list_t *infiles, char **outfile, efi_secdb_t **secdb, + if (!dump) + exit(1); + status = 1; +- xfree(*outfile); +- *outfile = NULL; + break; + } + } +@@ -528,7 +525,7 @@ main(int argc, char *argv[]) + efi_secdb_set_bool(secdb, EFI_SECDB_SORT_DATA, do_sort_data); + efi_secdb_set_bool(secdb, EFI_SECDB_SORT_DESCENDING, sort_descending); + +- status = parse_input_files(&infiles, &outfile, &secdb, dump); ++ status = parse_input_files(&infiles, &secdb, dump); + if (status == 0) { + for_each_action_safe(pos, tmp, &actions) { + action_t *action = list_entry(pos, action_t, list); diff --git a/repo/efivar/patches/efivar-fix-format_guid.patch b/repo/efivar/patches/efivar-fix-format_guid.patch deleted file mode 100644 index f40942f..0000000 --- a/repo/efivar/patches/efivar-fix-format_guid.patch +++ /dev/null @@ -1,56 +0,0 @@ -From b98ba8921010d03f46704a476c69861515deb1ca Mon Sep 17 00:00:00 2001 -From: Peter Jones <pjones@redhat.com> -Date: Mon, 7 Jan 2019 10:30:59 -0500 -Subject: [PATCH] dp.h: make format_guid() handle misaligned guid pointers - safely. - -GCC 9 adds -Werror=address-of-packed-member, which causes us to see the -build error reported at - https://bugzilla.opensuse.org/show_bug.cgi?id=1120862 . - -That bug report shows us the following: - -In file included from dp.c:26: -dp.h: In function 'format_vendor_helper': -dp.h:120:37: error: taking address of packed member of 'struct <anonymous>' may result in an unaligned pointer value [-Werror=address-of-packed-member] - 120 | format_guid(buf, size, off, label, &dp->hw_vendor.vendor_guid); - | ^~~~~~~~~~~~~~~~~~~~~~~~~~ -dp.h:74:25: note: in definition of macro 'format_guid' - 74 | _rc = efi_guid_to_str(guid, &_guidstr); \ - | ^~~~ -cc1: all warnings being treated as errors - -This patch makes format_guid() use a local variable as a bounce buffer -in the case that the guid we're passed is aligned as chaotic neutral. - -Note that this only fixes this instance and there may be others that bz -didn't show because it exited too soon, and I don't have a gcc 9 build -in front of me right now. - -Signed-off-by: Peter Jones <pjones@redhat.com> ---- - src/dp.h | 11 +++++++++-- - 1 file changed, 9 insertions(+), 2 deletions(-) - -diff --git a/src/dp.h b/src/dp.h -index aa4e390..20cb608 100644 ---- a/src/dp.h -+++ b/src/dp.h -@@ -70,8 +70,15 @@ - #define format_guid(buf, size, off, dp_type, guid) ({ \ - int _rc; \ - char *_guidstr = NULL; \ -- \ -- _rc = efi_guid_to_str(guid, &_guidstr); \ -+ efi_guid_t _guid; \ -+ const efi_guid_t * const _guid_p = \ -+ likely(__alignof__(guid) == sizeof(guid)) \ -+ ? guid \ -+ : &_guid; \ -+ \ -+ if (unlikely(__alignof__(guid) == sizeof(guid))) \ -+ memmove(&_guid, guid, sizeof(_guid)); \ -+ _rc = efi_guid_to_str(_guid_p, &_guidstr); \ - if (_rc < 0) { \ - efi_error("could not build %s GUID DP string", \ - dp_type); \ diff --git a/repo/efivar/patches/efivar-fix-packed.patch b/repo/efivar/patches/efivar-fix-packed.patch deleted file mode 100644 index bbb6a99..0000000 --- a/repo/efivar/patches/efivar-fix-packed.patch +++ /dev/null @@ -1,168 +0,0 @@ -From c3c553db85ff10890209d0fe48fb4856ad68e4e0 Mon Sep 17 00:00:00 2001 -From: Peter Jones <pjones@redhat.com> -Date: Thu, 21 Feb 2019 15:20:12 -0500 -Subject: [PATCH] Fix all the places -Werror=address-of-packed-member catches. - -This gets rid of all the places GCC 9's -Werror=address-of-packed-member -flags as problematic. - -Fixes github issue #123 - -Signed-off-by: Peter Jones <pjones@redhat.com> ---- - src/dp-message.c | 6 ++++-- - src/dp.h | 12 ++++-------- - src/guid.c | 2 +- - src/include/efivar/efivar.h | 2 +- - src/ucs2.h | 27 +++++++++++++++++++-------- - 5 files changed, 29 insertions(+), 20 deletions(-) - -diff --git a/src/dp-message.c b/src/dp-message.c -index 3724e5f..9f96466 100644 ---- a/src/dp-message.c -+++ b/src/dp-message.c -@@ -620,11 +620,13 @@ _format_message_dn(char *buf, size_t size, const_efidp dp) - ) / sizeof(efi_ip_addr_t); - format(buf, size, off, "Dns", "Dns("); - for (int i=0; i < end; i++) { -- const efi_ip_addr_t *addr = &dp->dns.addrs[i]; -+ efi_ip_addr_t addr; -+ -+ memcpy(&addr, &dp->dns.addrs[i], sizeof(addr)); - if (i != 0) - format(buf, size, off, "Dns", ","); - format_ip_addr(buf, size, off, "Dns", -- dp->dns.is_ipv6, addr); -+ dp->dns.is_ipv6, &addr); - } - format(buf, size, off, "Dns", ")"); - break; -diff --git a/src/dp.h b/src/dp.h -index 20cb608..1f921d5 100644 ---- a/src/dp.h -+++ b/src/dp.h -@@ -71,13 +71,9 @@ - int _rc; \ - char *_guidstr = NULL; \ - efi_guid_t _guid; \ -- const efi_guid_t * const _guid_p = \ -- likely(__alignof__(guid) == sizeof(guid)) \ -- ? guid \ -- : &_guid; \ -- \ -- if (unlikely(__alignof__(guid) == sizeof(guid))) \ -- memmove(&_guid, guid, sizeof(_guid)); \ -+ const efi_guid_t * const _guid_p = &_guid; \ -+ \ -+ memmove(&_guid, guid, sizeof(_guid)); \ - _rc = efi_guid_to_str(_guid_p, &_guidstr); \ - if (_rc < 0) { \ - efi_error("could not build %s GUID DP string", \ -@@ -86,7 +82,7 @@ - _guidstr = onstack(_guidstr, \ - strlen(_guidstr)+1); \ - _rc = format(buf, size, off, dp_type, "%s", \ -- _guidstr); \ -+ _guidstr); \ - } \ - _rc; \ - }) -diff --git a/src/guid.c b/src/guid.c -index 306c9ff..3156b3b 100644 ---- a/src/guid.c -+++ b/src/guid.c -@@ -31,7 +31,7 @@ - extern const efi_guid_t efi_guid_zero; - - int NONNULL(1, 2) PUBLIC --efi_guid_cmp(const efi_guid_t *a, const efi_guid_t *b) -+efi_guid_cmp(const void * const a, const void * const b) - { - return memcmp(a, b, sizeof (efi_guid_t)); - } -diff --git a/src/include/efivar/efivar.h b/src/include/efivar/efivar.h -index 316891c..ad6449d 100644 ---- a/src/include/efivar/efivar.h -+++ b/src/include/efivar/efivar.h -@@ -128,7 +128,7 @@ extern int efi_symbol_to_guid(const char *symbol, efi_guid_t *guid) - - extern int efi_guid_is_zero(const efi_guid_t *guid); - extern int efi_guid_is_empty(const efi_guid_t *guid); --extern int efi_guid_cmp(const efi_guid_t *a, const efi_guid_t *b); -+extern int efi_guid_cmp(const void * const a, const void * const b); - - /* import / export functions */ - typedef struct efi_variable efi_variable_t; -diff --git a/src/ucs2.h b/src/ucs2.h -index dbb5900..edd8367 100644 ---- a/src/ucs2.h -+++ b/src/ucs2.h -@@ -23,16 +23,21 @@ - (((val) & ((mask) << (shift))) >> (shift)) - - static inline size_t UNUSED --ucs2len(const uint16_t * const s, ssize_t limit) -+ucs2len(const void *vs, ssize_t limit) - { - ssize_t i; -- for (i = 0; i < (limit >= 0 ? limit : i+1) && s[i] != (uint16_t)0; i++) -+ const uint16_t *s = vs; -+ const uint8_t *s8 = vs; -+ -+ for (i = 0; -+ i < (limit >= 0 ? limit : i+1) && s8[0] != 0 && s8[1] != 0; -+ i++, s8 += 2, s++) - ; - return i; - } - - static inline size_t UNUSED --ucs2size(const uint16_t * const s, ssize_t limit) -+ucs2size(const void *s, ssize_t limit) - { - size_t rc = ucs2len(s, limit); - rc *= sizeof (uint16_t); -@@ -69,10 +74,11 @@ utf8size(uint8_t *s, ssize_t limit) - } - - static inline unsigned char * UNUSED --ucs2_to_utf8(const uint16_t * const chars, ssize_t limit) -+ucs2_to_utf8(const void * const voidchars, ssize_t limit) - { - ssize_t i, j; - unsigned char *ret; -+ const uint16_t * const chars = voidchars; - - if (limit < 0) - limit = ucs2len(chars, -1); -@@ -124,10 +130,12 @@ ucs2_to_utf8(const uint16_t * const chars, ssize_t limit) - } - - static inline ssize_t UNUSED NONNULL(4) --utf8_to_ucs2(uint16_t *ucs2, ssize_t size, int terminate, uint8_t *utf8) -+utf8_to_ucs2(void *ucs2void, ssize_t size, int terminate, uint8_t *utf8) - { - ssize_t req; - ssize_t i, j; -+ uint16_t *ucs2 = ucs2void; -+ uint16_t val16; - - if (!ucs2 && size > 0) { - errno = EINVAL; -@@ -162,10 +170,13 @@ utf8_to_ucs2(uint16_t *ucs2, ssize_t size, int terminate, uint8_t *utf8) - val = utf8[i] & 0x7f; - i += 1; - } -- ucs2[j] = val; -+ val16 = val; -+ ucs2[j] = val16; -+ } -+ if (terminate) { -+ val16 = 0; -+ ucs2[j++] = val16; - } -- if (terminate) -- ucs2[j++] = (uint16_t)0; - return j; - }; - diff --git a/repo/efivar/patches/efivar-fix-ucs2.patch b/repo/efivar/patches/efivar-fix-ucs2.patch deleted file mode 100644 index 594da61..0000000 --- a/repo/efivar/patches/efivar-fix-ucs2.patch +++ /dev/null @@ -1,59 +0,0 @@ -From fdb803402fb32fa6d020bac57a40c7efe4aabb7d Mon Sep 17 00:00:00 2001 -From: Javier Martinez Canillas <javierm@redhat.com> -Date: Tue, 5 Mar 2019 17:23:24 +0100 -Subject: [PATCH] ucs2.h: remove unused variable - -The const uint16_t pointer is not used since now the two bytes of the -UCS-2 chars are checked to know if is the termination of the string. - -Signed-off-by: Javier Martinez Canillas <javierm@redhat.com> ---- - src/ucs2.h | 3 +-- - 1 file changed, 1 insertion(+), 2 deletions(-) - -diff --git a/src/ucs2.h b/src/ucs2.h -index edd8367..e0390c3 100644 ---- a/src/ucs2.h -+++ b/src/ucs2.h -@@ -26,12 +26,11 @@ static inline size_t UNUSED - ucs2len(const void *vs, ssize_t limit) - { - ssize_t i; -- const uint16_t *s = vs; - const uint8_t *s8 = vs; - - for (i = 0; - i < (limit >= 0 ? limit : i+1) && s8[0] != 0 && s8[1] != 0; -- i++, s8 += 2, s++) -+ i++, s8 += 2) - ; - return i; - } -From 4e04afc2df9bbc26e5ab524b53a6f4f1e61d7c9e Mon Sep 17 00:00:00 2001 -From: Javier Martinez Canillas <javierm@redhat.com> -Date: Tue, 5 Mar 2019 17:23:32 +0100 -Subject: [PATCH] ucs2.h: fix logic that checks for UCS-2 string termination - -Currently the loop to count the lenght of the UCS-2 string ends if either -of the two bytes are 0, but 0 is a valid value for UCS-2 character codes. - -So only break the loop when 0 is the value for both UCS-2 char bytes. - -Signed-off-by: Javier Martinez Canillas <javierm@redhat.com> ---- - src/ucs2.h | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/src/ucs2.h b/src/ucs2.h -index e0390c3..fd8b056 100644 ---- a/src/ucs2.h -+++ b/src/ucs2.h -@@ -29,7 +29,7 @@ ucs2len(const void *vs, ssize_t limit) - const uint8_t *s8 = vs; - - for (i = 0; -- i < (limit >= 0 ? limit : i+1) && s8[0] != 0 && s8[1] != 0; -+ i < (limit >= 0 ? limit : i+1) && !(s8[0] == 0 && s8[1] == 0); - i++, s8 += 2) - ; - return i; diff --git a/repo/efivar/patches/musl-bswap.patch b/repo/efivar/patches/musl-bswap.patch deleted file mode 100644 index 8b86d9a..0000000 --- a/repo/efivar/patches/musl-bswap.patch +++ /dev/null @@ -1,33 +0,0 @@ -From c9b54ee2cd504542cac4ed95fa7842bd14b39f9c Mon Sep 17 00:00:00 2001 -From: "A. Wilcox" <AWilcox@Wilcox-Tech.com> -Date: Fri, 18 Aug 2017 20:36:03 -0500 -Subject: [PATCH] makeguids: Ensure compatibility with other libcs - -The musl libc does not provide __bswap_constant_XX. -If <endian.h> does not provide these macros, use our own. - -This fixes issue #84. ---- - src/makeguids.c | 9 +++++++++ - 1 file changed, 9 insertions(+) - -diff --git a/src/makeguids.c b/src/makeguids.c -index ec75a86..6b0d80e 100644 ---- a/src/makeguids.c -+++ b/src/makeguids.c -@@ -152,6 +152,15 @@ main(int argc, char *argv[]) - fprintf(symout, "#include <efivar/efivar.h>\n"); - fprintf(symout, "#include <endian.h>\n"); - fprintf(symout, """\n\ -+#ifndef __bswap_constant_16\n\ -+#define __bswap_constant_16(x)\\\n\ -+ ((unsigned short int) ((((x) >> 8) & 0xff) | (((x) & 0xff) << 8)))\n\ -+#endif\n\ -+#ifndef __bswap_constant_32\n\ -+#define __bswap_constant_32(x)\\\n\ -+ ((((x) & 0xff000000) >> 24) | (((x) & 0x00ff0000) >> 8) | \\\n\ -+ (((x) & 0x0000ff00) << 8) | (((x) & 0x000000ff) << 24))\n\ -+#endif\n\ - #if BYTE_ORDER == BIG_ENDIAN\n\ - #define cpu_to_be32(n) (n)\n\ - #define cpu_to_be16(n) (n)\n\ diff --git a/repo/elogind/elogind.xibuild b/repo/elogind/elogind.xibuild index c9fa661..9823abd 100644 --- a/repo/elogind/elogind.xibuild +++ b/repo/elogind/elogind.xibuild @@ -1,6 +1,6 @@ #!/bin/sh -MAKEDEPS="make docbook4-xml docbook-xsl docbook-dtd libxslt util-linux glib acl m4 ubase" +MAKEDEPS="make docbook4-xml docbook-xsl docbook-dtd libxslt util-linux glib acl m4 util-linux" DEPS="pam gperf eudev" PKG_VER=246.10 diff --git a/repo/enchant2/enchant2.xibuild b/repo/enchant2/enchant2.xibuild index 25f39bf..607e25f 100644 --- a/repo/enchant2/enchant2.xibuild +++ b/repo/enchant2/enchant2.xibuild @@ -16,10 +16,6 @@ build() { make } -check() { - make check -} - package() { make DESTDIR="$PKG_DEST" pkgdatadir=/usr/share/enchant-2 install } diff --git a/repo/extremetuxracer/extremetuxracer.xibuild b/repo/extremetuxracer/extremetuxracer.xibuild index 91689b5..21e45b5 100644 --- a/repo/extremetuxracer/extremetuxracer.xibuild +++ b/repo/extremetuxracer/extremetuxracer.xibuild @@ -3,8 +3,7 @@ NAME="extremetuxracer" DESC="Downhill racing game starring Tux" -MAKEDEPS="make " -DEPS="glu mesa musl sfml " +MAKEDEPS="make glu mesa musl sfml " PKG_VER=0.8.2 SOURCE="https://downloads.sourceforge.net/extremetuxracer/etr-$PKG_VER.tar.xz" diff --git a/repo/ffmpeg/ffmpeg.xibuild b/repo/ffmpeg/ffmpeg.xibuild index 6d7f960..e4e5c88 100644 --- a/repo/ffmpeg/ffmpeg.xibuild +++ b/repo/ffmpeg/ffmpeg.xibuild @@ -3,8 +3,7 @@ NAME="ffmpeg" DESC="Complete and free Internet live audio and video broadcasting solution for Linux/Unix" -MAKEDEPS="make " -DEPS="alsa-lib aom gnutls libass bzip2 dav1d libdrm pulseaudio librist libsrt libtheora libva libvorbis libvpx libwebp libx11 libxcb musl opus sdl2 v4l-utils vidstab x264 x265 xvidcore zlib lame soxr" +MAKEDEPS="make alsa-lib aom gnutls libass bzip2 dav1d libdrm pulseaudio librist libsrt libtheora libva libvorbis libvpx libwebp libx11 libxcb musl opus sdl2 v4l-utils vidstab x264 x265 xvidcore zlib lame soxr" PKG_VER=5.0.1 SOURCE="https://ffmpeg.org/releases/ffmpeg-$PKG_VER.tar.xz" diff --git a/repo/ffmpeg4/ffmpeg4.xibuild b/repo/ffmpeg4/ffmpeg4.xibuild index a697c03..6a5d1ad 100644 --- a/repo/ffmpeg4/ffmpeg4.xibuild +++ b/repo/ffmpeg4/ffmpeg4.xibuild @@ -3,10 +3,9 @@ NAME="ffmpeg4" DESC="Complete and free Internet live audio and video broadcasting solution for Linux/Unix" -MAKEDEPS="make " -DEPS="alsa-lib aom gnutls libass bzip2 dav1d libdrm pulseaudio librist libsrt libtheora libva libvorbis libvpx libwebp libx11 libxcb musl opus sdl2 v4l-utils vidstab x264 x265 xvidcore zlib lame soxr" +MAKEDEPS="make alsa-lib aom gnutls libass bzip2 dav1d libdrm pulseaudio librist libsrt libtheora libva libvorbis libvpx libwebp libx11 libxcb musl opus sdl2 v4l-utils vidstab x264 x265 xvidcore zlib lame soxr yasm" -PKG_VER=4.4.2 +PKG_VER=4.4.1 SOURCE="https://ffmpeg.org/releases/ffmpeg-$PKG_VER.tar.xz" ADDITIONAL=" 0001-ffbuild-libversion.sh-add-shebang.patch @@ -20,7 +19,6 @@ prepare () { build () { ./configure \ --prefix=/usr \ - --enable-avresample \ --enable-avfilter \ --enable-gnutls \ --enable-gpl \ @@ -52,8 +50,7 @@ build () { --enable-libwebp \ --enable-vaapi \ --enable-vdpau \ - --enable-libdrm - + --enable-libdrm && make } diff --git a/repo/fftw/fftw.xibuild b/repo/fftw/fftw.xibuild index 41dd124..94e7814 100644 --- a/repo/fftw/fftw.xibuild +++ b/repo/fftw/fftw.xibuild @@ -46,6 +46,13 @@ build () { done } +check () { + for i in $precisions; do + cd $BUILD_ROOT/$i/fftw-$PKG_VER + make check + done +} + package () { for i in $precisions; do cd $BUILD_ROOT/$i/fftw-$PKG_VER diff --git a/repo/fil-plugins/fil-plugins.xibuild b/repo/fil-plugins/fil-plugins.xibuild new file mode 100644 index 0000000..15611b7 --- /dev/null +++ b/repo/fil-plugins/fil-plugins.xibuild @@ -0,0 +1,17 @@ +#!/bin/sh + +NAME="fil-plugins" +DESC="LADSPA four-band parametric equaliser plugins" + +MAKEDEPS="make ladspa " + +PKG_VER=0.3.0 +SOURCE="https://kokkinizita.linuxaudio.org/linuxaudio/downloads/FIL-plugins-$PKG_VER.tar.bz2" + +build () { + make +} + +package () { + install -Dm 755 filters.so "${PKG_DEST}/usr/lib/ladspa/filters.so" +} diff --git a/repo/freetds/fix-includes.patch b/repo/freetds/fix-includes.patch new file mode 100644 index 0000000..ecef5e9 --- /dev/null +++ b/repo/freetds/fix-includes.patch @@ -0,0 +1,13 @@ +Upstream: No +Reason: Missing include + +--- a/src/apps/fisql/fisql.c ++++ b/src/apps/fisql/fisql.c +@@ -25,6 +25,7 @@ + #include <unistd.h> + #include <setjmp.h> + #include <signal.h> ++#include <sys/stat.h> + #ifdef HAVE_READLINE + #include <readline/readline.h> + #include <readline/history.h> diff --git a/repo/freetds/freetds.xibuild b/repo/freetds/freetds.xibuild new file mode 100644 index 0000000..e5b445e --- /dev/null +++ b/repo/freetds/freetds.xibuild @@ -0,0 +1,35 @@ +#!/bin/sh + +NAME="freetds" +DESC="Tabular Datastream Library" + +MAKEDEPS="openssl linux-headers readline unixodbc" + +PKG_VER=1.3.13 +SOURCE="https://www.freetds.org/files/stable/freetds-$PKG_VER.tar.bz2" + +ADDITIONAL=" +fix-includes.patch +" + +prepare () { + apply_patches +} + +build() { + ./configure \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --infodir=/usr/share/info \ + --enable-msdblib \ + --with-openssl=/usr \ + --enable-odbc \ + --with-unixodbc=/usr + make +} + +package() { + make -j1 DESTDIR="$PKG_DEST" install +} + diff --git a/repo/fuse/fuse.xibuild b/repo/fuse/fuse.xibuild index 4b4a351..7d89da0 100644 --- a/repo/fuse/fuse.xibuild +++ b/repo/fuse/fuse.xibuild @@ -12,9 +12,9 @@ ADDITIONAL=" fix-realpath.patch " -prepare () { - apply_patches -} +#prepare () { +# apply_patches +#} build() { UDEV_RULES_PATH='/lib/udev/rules.d' ./configure \ @@ -30,6 +30,6 @@ build() { package() { make DESTDIR="$PKG_DEST" install - rm -r "$PKG_DEST"/dev "$PKG_DEST"/etc/init.d + #rm -r "$PKG_DEST"/dev "$PKG_DEST"/etc/init.d } diff --git a/repo/g2reverb/g2reverb.xibuild b/repo/g2reverb/g2reverb.xibuild new file mode 100644 index 0000000..a74299d --- /dev/null +++ b/repo/g2reverb/g2reverb.xibuild @@ -0,0 +1,17 @@ +#!/bin/sh + +NAME="g2reverb" +DESC="LADSPA stereo reverb plugin based on greverb" + +MAKEDEPS="make ladspa " + +PKG_VER=0.7.1 +SOURCE="https://kokkinizita.linuxaudio.org/linuxaudio/downloads/g2reverb-${PKG_VER}.tar.bz2" + +build () { + make +} + +package () { + install -Dm 755 "g2reverb.so" "$PKG_DEST/usr/lib/ladspa/g2reverb.so" +} diff --git a/repo/gawk/gawk.xibuild b/repo/gawk/gawk.xibuild index a8ff339..1b60f3b 100644 --- a/repo/gawk/gawk.xibuild +++ b/repo/gawk/gawk.xibuild @@ -1,9 +1,8 @@ #!/bin/sh -MAKEDEPS="make " -DEPS="sh musl mpfr" +MAKEDEPS="make sh musl mpfr" -PKG_VER=5.2.0 +PKG_VER=5.2.1 SOURCE=https://ftp.gnu.org/gnu/gawk/gawk-$PKG_VER.tar.xz DESC="GNU's awk" diff --git a/repo/gegl/gegl.xibuild b/repo/gegl/gegl.xibuild index 46f9482..ad28101 100644 --- a/repo/gegl/gegl.xibuild +++ b/repo/gegl/gegl.xibuild @@ -5,8 +5,7 @@ DESC="Graph based image processing framework" # TODO onlly install the fonts actually needed -MAKEDEPS="encodings font-adobe-utopia-type1 font-alias font-bh-ttf font-bh-type1 fontconfig font-ibm-type1 font-misc-ethiopic font-util font-xfree86-type1 meson ninja graphviz libexecinfo" -DEPS="babl cairo ffmpeg4 gdk-pixbuf glib json-glib lcms2 intltool libjpeg-turbo libpng libraw librsvg libwebp musl pango tiff libexecinfo" +MAKEDEPS="encodings font-adobe-utopia-type1 font-alias font-bh-ttf font-bh-type1 fontconfig font-ibm-type1 font-misc-ethiopic font-util font-xfree86-type1 meson ninja graphviz libexecinfo babl cairo ffmpeg4 gdk-pixbuf glib json-glib lcms2 intltool libjpeg-turbo libpng libraw librsvg libwebp musl pango tiff libexecinfo" PKG_VER=0.4.36 SOURCE="https://download.gimp.org/pub/gegl/${PKG_VER%.*}/gegl-${PKG_VER}.tar.xz" diff --git a/repo/gexiv2/gexiv2.xibuild b/repo/gexiv2/gexiv2.xibuild index d18f579..6d4fc72 100644 --- a/repo/gexiv2/gexiv2.xibuild +++ b/repo/gexiv2/gexiv2.xibuild @@ -3,8 +3,7 @@ NAME="gexiv2" DESC="GObject-based wrapper around the Exiv2 library" -MAKEDEPS="meson ninja python-gobject" -DEPS="exiv2 glib " +MAKEDEPS="meson ninja python-gobject exiv2 glib " PKG_VER=0.14.0 SOURCE="https://download.gnome.org/sources/gexiv2/${PKG_VER%.*}/gexiv2-$PKG_VER.tar.xz" diff --git a/repo/gimp/gimp.xibuild b/repo/gimp/gimp.xibuild index b11e920..435bff9 100644 --- a/repo/gimp/gimp.xibuild +++ b/repo/gimp/gimp.xibuild @@ -3,8 +3,7 @@ NAME="gimp" DESC="GNU Image Manipulation Program" -MAKEDEPS="make gettext" -DEPS="babl cairo fontconfig freetype2 gdk-pixbuf gexiv2 glib gtk2 harfbuzz json-glib lcms2 bzip2 libexecinfo intltool libjpeg-turbo libmypaint mypaint-brushes libpng librsvg libwebp libx11 libxext libxfixes libxmu libxpm musl pango poppler-glib gegl tiff xz zlib python glib-networking poppler-data" +MAKEDEPS="make gettext babl cairo fontconfig freetype2 gdk-pixbuf gexiv2 glib gtk2 harfbuzz json-glib lcms2 bzip2 libexecinfo intltool libjpeg-turbo libmypaint mypaint-brushes libpng librsvg libwebp libx11 libxext libxfixes libxmu libxpm musl pango poppler-glib gegl tiff xz zlib python glib-networking poppler-data" PKG_VER=2.10.28 SOURCE="https://download.gimp.org/pub/gimp/v${PKG_VER%.*}/gimp-$PKG_VER.tar.bz2" diff --git a/repo/glib/glib.xibuild b/repo/glib/glib.xibuild index f92f62c..7dc30a6 100644 --- a/repo/glib/glib.xibuild +++ b/repo/glib/glib.xibuild @@ -5,7 +5,7 @@ DESC="Common C routines used by Gtk+ and other libs" MAKEDEPS=" bzip2 docbook-xml docbook-xsl gettext libxml2 libxslt python pcre2 meson zlib libffi util-linux" -PKG_VER=2.74.0 +PKG_VER=2.75.1 SOURCE="https://download.gnome.org/sources/glib/${PKG_VER%.*}/glib-$PKG_VER.tar.xz" ADDITIONAL=" @@ -16,7 +16,7 @@ gparamspec.patch " prepare () { - apply_patches + apply_patches || true } build() { diff --git a/repo/glibmm/glibmm.xibuild b/repo/glibmm/glibmm.xibuild index 4638567..68ec03b 100644 --- a/repo/glibmm/glibmm.xibuild +++ b/repo/glibmm/glibmm.xibuild @@ -3,15 +3,17 @@ NAME="glibmm" DESC="C++ wrapper for the GLib toolkit" -MAKEDEPS="meson ninja " -DEPS="glib libgcc libsigc++ musl" +MAKEDEPS="meson ninja glib libgcc libsigc++ musl mm-common" -PKG_VER=2.66.4 +PKG_VER=2.74.0 SOURCE="https://download.gnome.org/sources/glibmm/${PKG_VER%.*}/glibmm-$PKG_VER.tar.xz" build () { + mkdir build cd build && meson --prefix=/usr \ + -Db_lto=true \ + -Dbuild-documentation=true \ .. && ninja } diff --git a/repo/graphviz/graphviz.xibuild b/repo/graphviz/graphviz.xibuild index 256580a..66da1db 100644 --- a/repo/graphviz/graphviz.xibuild +++ b/repo/graphviz/graphviz.xibuild @@ -1,9 +1,8 @@ #!/bin/sh -MAKEDEPS="make flex swig m4 libtool libxaw bison lua tcl autoconf automake bash" -DEPS="cairo expat glib libx11 musl pango zlib" +MAKEDEPS="make flex swig m4 libtool libxaw bison lua tcl autoconf automake bash cairo expat glib libx11 musl pango zlib" -PKG_VER=6.0.1 +PKG_VER=7.0.4 SOURCE=https://gitlab.com/api/v4/projects/4207231/packages/generic/graphviz-releases/$PKG_VER/graphviz-$PKG_VER.tar.gz DESC="Graph Visualization Tools" @@ -13,7 +12,7 @@ prepare () { } build () { - CONFIG_SHELL=/bin/bash \ + CONFIG_SHELL=/bin/bash \ LIBPOSTFIX=/ \ LUA=lua \ ./configure \ @@ -53,9 +52,9 @@ package () { pkgconfigdir=/usr/lib/pkgconfig \ install - mkdir -p "$PKG_DEST"/usr/share/doc - mv "$PKG_DEST"/usr/share/graphviz/doc \ - "$PKG_DEST"/usr/share/doc/graphviz + #mkdir -p "$PKG_DEST"/usr/share/doc + #mv "$PKG_DEST"/usr/share/graphviz/doc \ + #"$PKG_DEST"/usr/share/doc/graphviz } diff --git a/repo/grub/grub.xibuild b/repo/grub/grub.xibuild index ac331b3..696055a 100644 --- a/repo/grub/grub.xibuild +++ b/repo/grub/grub.xibuild @@ -1,7 +1,7 @@ #!/bin/sh -MAKEDEPS="make " -DEPS="sh xz gettext efibootmgr freetype2" +MAKEDEPS="make sh xz gettext efibootmgr freetype2" +DEPS="efibootmgr" PKG_VER=2.06 SOURCE=https://ftp.gnu.org/gnu/grub/grub-$PKG_VER.tar.xz @@ -12,20 +12,39 @@ ADDITIONAL=" DESC="GNU GRand Unified Bootloader v2" +flavours="bios efi" + prepare () { - gunzip -c unifont-13.0.06.pcf.gz > $PKG_DEST/usr/share/fonts/unifont/unifont.pcf unset CFLAGS CPPFLAGS CXXFLAGS LDFLAGS + for f in $flavours; do + mkdir $BUILD_ROOT/build-$f + tar -C build-$f -xvf grub-$PKG_VER.tar.xz + done } build () { - ./configure --prefix=/usr --sysconfdir=/etc --disable-werror \ - --disable-efiemu --enable-grub-mkfont --with-platform=efi --with-platform=pc - make + for f in $flavours; do + cd $BUILD_ROOT/build-$f/grub-$PKG_VER + case "$f" in + bios) opts="--with-platform=pc";; + efi) opts="--with-platform=efi --disable-efiemu";; + esac + + ./configure --prefix=/usr --sysconfdir=/etc --disable-werror \ + --enable-grub-mkfont $opts + make + done + } package () { - make DESTDIR=$PKG_DEST install + for f in $flavours; do + cd $BUILD_ROOT/build-$f/grub-$PKG_VER + make DESTDIR=$PKG_DEST install-strip + done + cd $BUILD_ROOT + mkdir -p $PKG_DEST/usr/share/bash-completion/completions mv $PKG_DEST/etc/bash_completion.d/grub $PKG_DEST/usr/share/bash-completion/completions mkdir -p $PKG_DEST/etc/default @@ -40,4 +59,7 @@ GRUB_CMDLINE_LINUX_DEFAULT="" GRUB_CMDLINE_LINUX="" EOF + + mkdir -p $PKG_DEST/usr/share/fonts/unifont + gunzip -c unifont-13.0.06.pcf.gz > $PKG_DEST/usr/share/fonts/unifont/unifont.pcf } diff --git a/repo/gtk2/gtk2.xibuild b/repo/gtk2/gtk2.xibuild index 6f5c5fb..5630f18 100644 --- a/repo/gtk2/gtk2.xibuild +++ b/repo/gtk2/gtk2.xibuild @@ -3,11 +3,11 @@ NAME="gtk2" DESC="The GTK+ Toolkit (v2)" -#MAKEDEPS="meson ninja libpng shared-mime-info atk glib cairo pango gdk-pixbuf" MAKEDEPS=" meson ninja atk at-spi2-atk toybox cairo gobject-introspection fontconfig fribidi gdk-pixbuf glib harfbuzz libepoxy intltool libx11 libxcomposite libxcursor libxdamage libxext libxfixes libxi libxinerama libxkbcommon libxrandr musl pango shared-mime-info wayland libtool" -PKG_VER=2.24.33 -SOURCE="https://download.gnome.org/sources/gtk+/${PKG_VER%.*}/gtk+-$PKG_VER.tar.xz" +MAJ=2 +PKG_VER=24.33 +SOURCE="https://download.gnome.org/sources/gtk+/$MAJ.${PKG_VER%.*}/gtk+-$MAJ.$PKG_VER.tar.xz" prepare () { # don't build demos diff --git a/repo/gtk3/gtk3.xibuild b/repo/gtk3/gtk3.xibuild index 80d1db0..c6c805c 100644 --- a/repo/gtk3/gtk3.xibuild +++ b/repo/gtk3/gtk3.xibuild @@ -6,8 +6,9 @@ DESC="The GTK+ Toolkit (v3)" MAKEDEPS="meson ninja gtk2 docbook-dtd gtk-doc" DEPS="atk at-spi2-atk toybox cairo gobject-introspection fontconfig fribidi gdk-pixbuf glib harfbuzz libepoxy intltool libx11 libxcomposite libxcursor libxdamage libxext libxfixes libxi libxinerama libxkbcommon libxrandr musl pango shared-mime-info wayland adwaita-icon-theme gsettings-desktop-schemas" -PKG_VER=3.24.34 -SOURCE="https://download.gnome.org/sources/gtk+/${PKG_VER%.*}/gtk+-$PKG_VER.tar.xz" +MAJ=3 +PKG_VER=24.34 +SOURCE="https://download.gnome.org/sources/gtk+/$MAJ.${PKG_VER%.*}/gtk+-$MAJ.$PKG_VER.tar.xz" build () { mkdir build && diff --git a/repo/gtkmm2/gtkmm2.xibuild b/repo/gtkmm2/gtkmm2.xibuild index 8ba6f90..2ee15d5 100644 --- a/repo/gtkmm2/gtkmm2.xibuild +++ b/repo/gtkmm2/gtkmm2.xibuild @@ -5,8 +5,9 @@ DESC="C++ wrappers for GTK+" MAKEDEPS="atkmm glibmm pangomm intltool gtk2" -PKG_VER=2.24.5 -SOURCE="https://download.gnome.org/sources/gtkmm/${PKG_VER%.*}/gtkmm-$PKG_VER.tar.xz" +MAJ=2 +PKG_VER=24.5 +SOURCE="https://download.gnome.org/sources/gtkmm/$MAJ.${PKG_VER%.*}/gtkmm-$MAJ.$PKG_VER.tar.xz" build() { CXXFLAGS="$CXXFLAGS -std=c++11" \ diff --git a/repo/gtkmm3/gtkmm3.xibuild b/repo/gtkmm3/gtkmm3.xibuild index 4f359a4..3295830 100644 --- a/repo/gtkmm3/gtkmm3.xibuild +++ b/repo/gtkmm3/gtkmm3.xibuild @@ -3,13 +3,17 @@ NAME="gtkmm3" DESC="C++ wrappers for GTK+" -MAKEDEPS="meson ninja " -DEPS="atkmm cairomm gdk-pixbuf glib glibmm gtk3 libsigc++ musl pangomm " +MAKEDEPS="meson ninja atkmm cairomm gdk-pixbuf glib glibmm gtk3 libsigc++ musl pangomm " -PKG_VER=4.0.2 -SOURCE="https://download.gnome.org/sources/gtkmm/${PKG_VER%.*}/gtkmm-$PKG_VER.tar.xz" +MAJ=3 +PKG_VER=24.7 +SOURCE="https://download.gnome.org/sources/gtkmm/$MAJ.${PKG_VER%.*}/gtkmm-$MAJ.$PKG_VER.tar.xz" build () { + #CXXFLAGS="$CXXFLAGS -std=c++11" \ + #./configure \ + # --prefix=/usr + #make cd build && meson --prefix=/usr \ -Dbuild-demos=false \ diff --git a/repo/gtksourceview/gtksourceview.xibuild b/repo/gtksourceview/gtksourceview.xibuild index 2da0538..a717d90 100644 --- a/repo/gtksourceview/gtksourceview.xibuild +++ b/repo/gtksourceview/gtksourceview.xibuild @@ -5,13 +5,9 @@ DESC="A text widget adding syntax highlighting and more to GNOME" MAKEDEPS="gtk3 libxml2 gobject-introspection automake autoconf libtool gtk2" -PKG_VER=5.5.1 -SOURCE="https://download.gnome.org/sources/gtksourceview/${PKG_VER%.*}/gtksourceview-$PKG_VER.tar.xz" - -prepare() { - apply_patches - autoreconf -fi -} +MAJ=3 +PKG_VER=24.11 +SOURCE="https://download.gnome.org/sources/gtksourceview/$MAJ.${PKG_VER%.*}/gtksourceview-$MAJ.$PKG_VER.tar.xz" build() { ./configure \ @@ -23,5 +19,5 @@ build() { } package() { - make DESTDIR="$PKG_DEST" install + make DESTDIR="$PKG_DEST" install } diff --git a/repo/hwloc/hwloc.xibuild b/repo/hwloc/hwloc.xibuild new file mode 100644 index 0000000..4a5759f --- /dev/null +++ b/repo/hwloc/hwloc.xibuild @@ -0,0 +1,22 @@ +#!/bin/sh + +NAME="hwloc" +DESC="Portable abstraction of hierarchical hardware architectures" + +MAKEDEPS=" cairo eudev libxml2 ncurses numactl" + +PKG_VER=2.8.0 +SOURCE="https://www.open-mpi.org/software/hwloc/v${PKG_VER%.*}/downloads/hwloc-$PKG_VER.tar.bz2" + +build() { + ./configure \ + --prefix=/usr \ + --sbindir=/usr/bin \ + --mandir=/usr/share/man \ + --localstatedir=/var + make +} + +package() { + make -C "$BUILD_ROOT" DESTDIR="$PKG_DEST" install +} diff --git a/repo/imap/1006_openssl1.1_autoverify.patch b/repo/imap/1006_openssl1.1_autoverify.patch new file mode 100644 index 0000000..087e747 --- /dev/null +++ b/repo/imap/1006_openssl1.1_autoverify.patch @@ -0,0 +1,58 @@ +Description: Support OpenSSL 1.1 + When building with OpenSSL 1.1 and newer, use the new built-in + hostname verification instead of code that doesn't compile due to + structs having been made opaque. +Bug-Debian: https://bugs.debian.org/828589 + +--- a/src/osdep/unix/ssl_unix.c ++++ b/src/osdep/unix/ssl_unix.c +@@ -227,8 +227,16 @@ static char *ssl_start_work (SSLSTREAM * + /* disable certificate validation? */ + if (flags & NET_NOVALIDATECERT) + SSL_CTX_set_verify (stream->context,SSL_VERIFY_NONE,NIL); +- else SSL_CTX_set_verify (stream->context,SSL_VERIFY_PEER,ssl_open_verify); ++ else { ++#if OPENSSL_VERSION_NUMBER >= 0x10100000 ++ X509_VERIFY_PARAM *param = SSL_CTX_get0_param(stream->context); ++ X509_VERIFY_PARAM_set_hostflags(param, X509_CHECK_FLAG_NO_PARTIAL_WILDCARDS); ++ X509_VERIFY_PARAM_set1_host(param, host, 0); ++#endif ++ ++ SSL_CTX_set_verify (stream->context,SSL_VERIFY_PEER,ssl_open_verify); + /* set default paths to CAs... */ ++ } + SSL_CTX_set_default_verify_paths (stream->context); + /* ...unless a non-standard path desired */ + if (s = (char *) mail_parameters (NIL,GET_SSLCAPATH,NIL)) +@@ -266,6 +274,7 @@ static char *ssl_start_work (SSLSTREAM * + if (SSL_write (stream->con,"",0) < 0) + return ssl_last_error ? ssl_last_error : "SSL negotiation failed"; + /* need to validate host names? */ ++#if OPENSSL_VERSION_NUMBER < 0x10100000 + if (!(flags & NET_NOVALIDATECERT) && + (err = ssl_validate_cert (cert = SSL_get_peer_certificate (stream->con), + host))) { +@@ -275,6 +284,7 @@ static char *ssl_start_work (SSLSTREAM * + sprintf (tmp,"*%.128s: %.255s",err,cert ? cert->name : "???"); + return ssl_last_error = cpystr (tmp); + } ++#endif + return NIL; + } + +@@ -313,6 +323,7 @@ static int ssl_open_verify (int ok,X509_ + * Returns: NIL if validated, else string of error message + */ + ++#if OPENSSL_VERSION_NUMBER < 0x10100000 + static char *ssl_validate_cert (X509 *cert,char *host) + { + int i,n; +@@ -342,6 +353,7 @@ static char *ssl_validate_cert (X509 *ce + else ret = "Unable to locate common name in certificate"; + return ret; + } ++#endif + + /* Case-independent wildcard pattern match + * Accepts: base string diff --git a/repo/imap/2014_openssl1.1.1_sni.patch b/repo/imap/2014_openssl1.1.1_sni.patch new file mode 100644 index 0000000..af2bf99 --- /dev/null +++ b/repo/imap/2014_openssl1.1.1_sni.patch @@ -0,0 +1,40 @@ +Bug-Debian: https://bugs.debian.org/916041 +Bug-Ubuntu: https://bugs.launchpad.net/bugs/1834340 +Description: + Google IMAP servers require SNI if TLSv1.3 is used, + otherwise it sends a self-signed certificate which + fails validation. + + OpenSSL support/versions: + - TLSv1.3 on 1.1.1, + - a2i_IPADDRESS() on 0.9.8'ish, + - SSL_set_tlsext_host_name() on 0.9.8'ish/1.0.0; + per 'git blame/describe' and the CHANGES file. + + So check for TLSv1.3 support / OpenSSL 1.1.1 + not to incur behavior changes on pre-TLSv1.3, + and set host_name to 'host' (ssl_open_verify() + validates this, via 'ssl_last_host' variable) + + This patch just combines these two patches: + - BTS#916041 (message #5) by Ed Spiridonov, + - LP#916041 (comment #6) by David Zuelke. +Author: Mauricio Faria de Oliveira <mfo@canonical.com> + +--- a/src/osdep/unix/ssl_unix.c ++++ b/src/osdep/unix/ssl_unix.c +@@ -266,6 +266,14 @@ static char *ssl_start_work (SSLSTREAM * + /* create connection */ + if (!(stream->con = (SSL *) SSL_new (stream->context))) + return "SSL connection failed"; ++#if OPENSSL_VERSION_NUMBER >= 0x10101000 ++ /* Use SNI in case server requires it with TLSv1.3. ++ * Literal IP addresses not permitted per RFC 6066. */ ++ if (!a2i_IPADDRESS(host)) { ++ ERR_clear_error(); ++ SSL_set_tlsext_host_name(stream->con,host); ++ } ++#endif + bio = BIO_new_socket (stream->tcpstream->tcpsi,BIO_NOCLOSE); + SSL_set_bio (stream->con,bio,bio); + SSL_set_connect_state (stream->con); diff --git a/repo/imap/c-client-2006k_KOLAB_Annotations.patch b/repo/imap/c-client-2006k_KOLAB_Annotations.patch new file mode 100644 index 0000000..8eec02d --- /dev/null +++ b/repo/imap/c-client-2006k_KOLAB_Annotations.patch @@ -0,0 +1,448 @@ +Provides get/set ANNOTATIONS support to the c-client library. [Version: 2006k] + +diff -r 217555555c77 src/c-client/imap4r1.c +--- a/src/c-client/imap4r1.c Thu Feb 21 17:37:37 2008 +0100 ++++ b/src/c-client/imap4r1.c Thu Feb 21 17:38:15 2008 +0100 +@@ -135,7 +135,8 @@ typedef struct imap_argument { + #define MULTIAPPEND 13 + #define SNLIST 14 + #define MULTIAPPENDREDO 15 +- ++#define QLIST 16 ++#define QSTRING 17 + + /* Append data */ + +@@ -205,12 +206,15 @@ void imap_gc_body (BODY *body); + void imap_gc_body (BODY *body); + void imap_capability (MAILSTREAM *stream); + long imap_acl_work (MAILSTREAM *stream,char *command,IMAPARG *args[]); ++long imap_annotation_work (MAILSTREAM *stream,char *command,IMAPARG *args[]); + + IMAPPARSEDREPLY *imap_send (MAILSTREAM *stream,char *cmd,IMAPARG *args[]); + IMAPPARSEDREPLY *imap_sout (MAILSTREAM *stream,char *tag,char *base,char **s); + long imap_soutr (MAILSTREAM *stream,char *string); + IMAPPARSEDREPLY *imap_send_astring (MAILSTREAM *stream,char *tag,char **s, + SIZEDTEXT *as,long wildok,char *limit); ++IMAPPARSEDREPLY *imap_send_qstring (MAILSTREAM *stream,char *tag,char **s, ++ SIZEDTEXT *as,char *limit); + IMAPPARSEDREPLY *imap_send_literal (MAILSTREAM *stream,char *tag,char **s, + STRING *st); + IMAPPARSEDREPLY *imap_send_spgm (MAILSTREAM *stream,char *tag,char *base, +@@ -2753,6 +2757,84 @@ long imap_getacl (MAILSTREAM *stream,cha + args[0] = &ambx; args[1] = NIL; + return imap_acl_work (stream,"GETACL",args); + } ++ ++/* IMAP set annotation ++ * Accepts: mail stream ++ * annotation struct ++ * Returns: T on success, NIL on failure ++ */ ++ ++long imap_setannotation (MAILSTREAM *stream,ANNOTATION *annotation) ++{ ++ IMAPARG *args[4],ambx,apth,aval; ++ long ret; ++ ++ ambx.type = ASTRING; ++ ambx.text = (void *) annotation->mbox; ++ args[0] = &ambx; ++ ++ apth.type = QSTRING; ++ apth.text = (void *) annotation->entry; ++ args[1] = &apth; ++ ++ STRINGLIST *st,*l; ++ ANNOTATION_VALUES *v; ++ ++ l = st = mail_newstringlist(); ++ v = annotation->values; ++ while(v){ ++ l->text.size = strlen((char *) (l->text.data = (unsigned char*)cpystr(v->attr))); ++ l->next = mail_newstringlist(); ++ l = l->next; ++ l->text.size = strlen((char *) (l->text.data = (unsigned char*)cpystr(v->value))); ++ if(v->next){ ++ l->next = mail_newstringlist(); ++ l = l->next; ++ } ++ v = v->next; ++ } ++ ++ aval.type = QLIST; ++ aval.text = (void *)st; ++ args[2] = &aval; ++ args[3] = NIL; ++ ++ ret = imap_annotation_work(stream, "SETANNOTATION",args); ++ mail_free_stringlist(&st); ++ return ret; ++} ++ ++ ++ ++/* IMAP get annotation ++ * Accepts: mail stream ++ * mailbox name ++ * annotation entry list ++ * annotation attribute list ++ * Returns: T on success with data returned via callback, NIL on failure ++ */ ++ ++long imap_getannotation (MAILSTREAM *stream,char *mailbox,STRINGLIST *entries, STRINGLIST *attributes) ++{ ++ IMAPARG *args[4],ambx,apth,aattr; ++ long ret; ++ ambx.type = ASTRING; ++ ambx.text = (void*) mailbox; ++ args[0] = &ambx; ++ ++ ++ apth.type = QLIST; ++ apth.text = (void*) entries; ++ args[1] = &apth; ++ ++ aattr.type = QLIST; ++ aattr.text = (void*) attributes; ++ args[2] = &aattr; ++ ++ args[3] = NIL; ++ ret = imap_annotation_work(stream, "GETANNOTATION",args); ++ return ret; ++} + + /* IMAP list rights + * Accepts: mail stream +@@ -2805,6 +2887,16 @@ long imap_acl_work (MAILSTREAM *stream,c + else mm_log ("ACL not available on this IMAP server",ERROR); + return ret; + } ++ long imap_annotation_work(MAILSTREAM *stream, char *command,IMAPARG *args[]) ++{ ++ long ret = NIL; ++ IMAPPARSEDREPLY *reply; ++ if (imap_OK (stream,reply = imap_send (stream,command,args))) ++ ret = LONGT; ++ else mm_log (reply->text,ERROR); ++ return ret; ++} ++ + + /* IMAP set quota + * Accepts: mail stream +@@ -2937,6 +3029,11 @@ IMAPPARSEDREPLY *imap_send (MAILSTREAM * + if (reply = imap_send_astring (stream,tag,&s,&st,NIL,CMDBASE+MAXCOMMAND)) + return reply; + break; ++ case QSTRING: /* atom or string, must be literal? */ ++ st.size = strlen ((char *) (st.data = (unsigned char *) arg->text)); ++ if (reply = imap_send_qstring (stream,tag,&s,&st,CMDBASE+MAXCOMMAND)) ++ return reply; ++ break; + case LITERAL: /* literal, as a stringstruct */ + if (reply = imap_send_literal (stream,tag,&s,arg->text)) return reply; + break; +@@ -2947,6 +3044,18 @@ IMAPPARSEDREPLY *imap_send (MAILSTREAM * + do { /* for each list item */ + *s++ = c; /* write prefix character */ + if (reply = imap_send_astring (stream,tag,&s,&list->text,NIL, ++ CMDBASE+MAXCOMMAND)) return reply; ++ c = ' '; /* prefix character for subsequent strings */ ++ } ++ while (list = list->next); ++ *s++ = ')'; /* close list */ ++ break; ++ case QLIST: /* list of strings */ ++ list = (STRINGLIST *) arg->text; ++ c = '('; /* open paren */ ++ do { /* for each list item */ ++ *s++ = c; /* write prefix character */ ++ if (reply = imap_send_qstring (stream,tag,&s,&list->text, + CMDBASE+MAXCOMMAND)) return reply; + c = ' '; /* prefix character for subsequent strings */ + } +@@ -3119,6 +3228,32 @@ IMAPPARSEDREPLY *imap_send (MAILSTREAM * + reply = imap_sout (stream,tag,CMDBASE,&s); + mail_unlock (stream); /* unlock stream */ + return reply; ++} ++ ++/* IMAP send quoted-string ++ * Accepts: MAIL stream ++ * reply tag ++ * pointer to current position pointer of output bigbuf ++ * atom-string to output ++ * maximum to write as atom or qstring ++ * Returns: error reply or NIL if success ++ */ ++ ++IMAPPARSEDREPLY *imap_send_qstring (MAILSTREAM *stream,char *tag,char **s, ++ SIZEDTEXT *as,char *limit) ++{ ++ unsigned long j; ++ char c; ++ STRING st; ++ /* in case needed */ ++ INIT (&st,mail_string,(void *) as->data,as->size); ++ /* always write literal if no space */ ++ if ((*s + as->size) > limit) return imap_send_literal (stream,tag,s,&st); ++ ++ *(*s)++ = '"'; /* write open quote */ ++ for (j = 0; j < as->size; j++) *(*s)++ = as->data[j]; ++ *(*s)++ = '"'; /* write close quote */ ++ return NIL; + } + + /* IMAP send atom-string +@@ -4049,6 +4184,50 @@ void imap_parse_unsolicited (MAILSTREAM + } + } + ++ else if (!strcmp (reply->key,"ANNOTATION") && (s = reply->text)){ ++ char * mbox; ++ /* response looks like ANNOTATION "mailbox" "entry" ("attr" "value" ["attr" "value"]) ["entry" ("attr "value" ["attr" "value"] )]*/ ++ getannotation_t an = (getannotation_t) mail_parameters (NIL,GET_ANNOTATION,NIL); ++ ++ mbox = imap_parse_astring (stream, &s, reply,NIL); ++ ++ while(*s){ ++ ANNOTATION * al = mail_newannotation(); ++ al->mbox = cpystr(mbox); ++ t = imap_parse_astring (stream, &s, reply,NIL); ++ al->entry = t; ++ STRINGLIST *strlist; ++ if (s){while (*s == ' ')s++;} ++ ++ strlist = imap_parse_stringlist(stream, &s,reply); ++ ++ ANNOTATION_VALUES *vlIter, *vlBegin; ++ vlIter = vlBegin = NIL; ++ if (strlist) { ++ while(strlist){ ++ if(vlIter){ ++ vlIter->next = mail_newannotationvalue(); ++ vlIter = vlIter->next; ++ }else{ ++ vlIter = mail_newannotationvalue(); ++ vlBegin = vlIter; ++ } ++ if ( strlist->text.size ) ++ vlIter->attr = cpystr (strlist->text.data); ++ strlist = strlist->next; ++ if(!strlist) continue; ++ if ( strlist->text.size ) ++ vlIter->value = cpystr (strlist->text.data); ++ strlist = strlist->next; ++ } ++ } ++ al->values = vlBegin; ++ if (an) ++ (*an) (stream,al); ++ mail_free_annotation(&al); ++ } ++ fs_give ((void **)&mbox); ++ } + else if (!strcmp (reply->key,"ACL") && (s = reply->text) && + (t = imap_parse_astring (stream,&s,reply,NIL))) { + getacl_t ar = (getacl_t) mail_parameters (NIL,GET_ACL,NIL); +diff -r 217555555c77 src/c-client/imap4r1.h +--- a/src/c-client/imap4r1.h Thu Feb 21 17:37:37 2008 +0100 ++++ b/src/c-client/imap4r1.h Thu Feb 21 17:38:15 2008 +0100 +@@ -279,3 +279,5 @@ long imap_setquota (MAILSTREAM *stream,c + long imap_setquota (MAILSTREAM *stream,char *qroot,STRINGLIST *limits); + long imap_getquota (MAILSTREAM *stream,char *qroot); + long imap_getquotaroot (MAILSTREAM *stream,char *mailbox); ++long imap_getannotation (MAILSTREAM *stream,char *mailbox,STRINGLIST *entries,STRINGLIST *attributes); ++long imap_setannotation (MAILSTREAM *stream,ANNOTATION *annotation); +diff -r 217555555c77 src/c-client/mail.c +--- a/src/c-client/mail.c Thu Feb 21 17:37:37 2008 +0100 ++++ b/src/c-client/mail.c Thu Feb 21 17:38:15 2008 +0100 +@@ -69,6 +69,7 @@ static newsrcquery_t mailnewsrcquery = N + static newsrcquery_t mailnewsrcquery = NIL; + /* ACL results callback */ + static getacl_t mailaclresults = NIL; ++static getannotation_t mailannotationresults = NIL; + /* list rights results callback */ + static listrights_t maillistrightsresults = NIL; + /* my rights results callback */ +@@ -598,6 +599,11 @@ void *mail_parameters (MAILSTREAM *strea + ret = (void *) (debugsensitive ? VOIDT : NIL); + break; + ++ case SET_ANNOTATION: ++ mailannotationresults = (getannotation_t) value; ++ case GET_ANNOTATION: ++ ret = (void *) mailannotationresults; ++ break; + case SET_ACL: + mailaclresults = (getacl_t) value; + case GET_ACL: +@@ -5701,7 +5707,15 @@ ACLLIST *mail_newacllist (void) + return (ACLLIST *) memset (fs_get (sizeof (ACLLIST)),0,sizeof (ACLLIST)); + } + +- ++ANNOTATION *mail_newannotation (void) ++{ ++ return (ANNOTATION *) memset (fs_get (sizeof (ANNOTATION)),0,sizeof(ANNOTATION)); ++} ++ ++ANNOTATION_VALUES *mail_newannotationvalue (void) ++{ ++ return (ANNOTATION_VALUES *) memset (fs_get (sizeof (ANNOTATION_VALUES)),0,sizeof(ANNOTATION_VALUES)); ++} + /* Mail instantiate new quotalist + * Returns: new quotalist + */ +@@ -6024,6 +6038,25 @@ void mail_free_acllist (ACLLIST **al) + } + } + ++static void mail_free_annotation_values(ANNOTATION_VALUES **val) ++{ ++ if (*val) { ++ if ((*val)->attr) fs_give ((void**) &(*val)->attr); ++ if ((*val)->value) fs_give ((void**) &(*val)->value); ++ mail_free_annotation_values (&(*val)->next); ++ fs_give ((void **) val); ++ } ++} ++void mail_free_annotation(ANNOTATION **al) ++{ ++ if (*al) { ++ if((*al)->mbox) fs_give ((void**) &(*al)->mbox); ++ if((*al)->entry) fs_give ((void**) &(*al)->entry); ++ if((*al)->values) ++ mail_free_annotation_values(&(*al)->values); ++ fs_give ((void **) al); ++ } ++} + + /* Mail garbage collect quotalist + * Accepts: pointer to quotalist pointer +diff -r 217555555c77 src/c-client/mail.h +--- a/src/c-client/mail.h Thu Feb 21 17:37:37 2008 +0100 ++++ b/src/c-client/mail.h Thu Feb 21 17:38:15 2008 +0100 +@@ -351,6 +351,8 @@ + #define SET_SCANCONTENTS (long) 573 + #define GET_MHALLOWINBOX (long) 574 + #define SET_MHALLOWINBOX (long) 575 ++#define GET_ANNOTATION (long) 576 ++#define SET_ANNOTATION (long) 577 + + /* Driver flags */ + +@@ -1043,6 +1045,24 @@ ACLLIST { + char *identifier; /* authentication identifier */ + char *rights; /* access rights */ + ACLLIST *next; ++}; ++ ++/* ANNOTATION Response */ ++ ++#define ANNOTATION_VALUES struct annotation_value_list ++ ++ANNOTATION_VALUES { ++ char *attr; ++ char *value; ++ ANNOTATION_VALUES *next; ++}; ++ ++#define ANNOTATION struct annotation ++ ++ANNOTATION { ++ char *mbox; ++ char *entry; ++ ANNOTATION_VALUES * values; + }; + + /* Quota resource list */ +@@ -1353,6 +1373,7 @@ typedef void (*logouthook_t) (void *data + typedef void (*logouthook_t) (void *data); + typedef char *(*sslclientcert_t) (void); + typedef char *(*sslclientkey_t) (void); ++typedef void (*getannotation_t) (MAILSTREAM *stream,ANNOTATION* annot); + + /* Globals */ + +@@ -1771,7 +1792,10 @@ SORTPGM *mail_newsortpgm (void); + SORTPGM *mail_newsortpgm (void); + THREADNODE *mail_newthreadnode (SORTCACHE *sc); + ACLLIST *mail_newacllist (void); ++ANNOTATION* mail_newannotation(void); ++ANNOTATION_VALUES* mail_newannotationvalue(void); + QUOTALIST *mail_newquotalist (void); ++void mail_free_annotation(ANNOTATION **a); + void mail_free_body (BODY **body); + void mail_free_body_data (BODY *body); + void mail_free_body_parameter (PARAMETER **parameter); +diff -r 217555555c77 src/mtest/mtest.c +--- a/src/mtest/mtest.c Thu Feb 21 17:37:37 2008 +0100 ++++ b/src/mtest/mtest.c Thu Feb 21 17:38:15 2008 +0100 +@@ -145,6 +145,8 @@ int main () + #endif + return NIL; + } ++ ++void mm_annotation (MAILSTREAM *stream, ANNOTATION *a); + + /* MM command loop + * Accepts: MAIL stream +@@ -195,6 +197,28 @@ void mm (MAILSTREAM *stream,long debug) + mail_setflag (stream,arg,"\\DELETED"); + else puts ("?Bad message number"); + break; ++ case 'A': ++ { ++ char parms[MAILTMPLEN]; ++ prompt("Annotation: ",parms); ++ if (parms) { ++ mail_parameters(stream,SET_ANNOTATION,mm_annotation); ++ STRINGLIST *entries = mail_newstringlist(); ++ STRINGLIST *cur = entries; ++ cur->text.size = strlen((char *) (cur->text.data = (unsigned char*)cpystr (parms))); ++ cur->next = NIL; ++ ++ STRINGLIST *attributes = mail_newstringlist(); ++ cur = attributes; ++ cur->text.size = strlen((char *) (cur->text.data = (unsigned char*)cpystr ("*"))); ++ cur->next = NIL; ++ ++ imap_getannotation(stream,"INBOX",entries,attributes); ++ mail_free_stringlist(&entries); ++ mail_free_stringlist(&attributes); ++ } ++ } ++ break; + case 'E': /* Expunge command */ + mail_expunge (stream); + last = 0; +@@ -347,7 +371,7 @@ void mm (MAILSTREAM *stream,long debug) + case '?': /* ? command */ + puts ("Body, Check, Delete, Expunge, Find, GC, Headers, Literal,"); + puts (" MailboxStatus, New Mailbox, Overview, Ping, Quit, Send, Type,"); +- puts ("Undelete, Xit, +, -, or <RETURN> for next message"); ++ puts ("Undelete, Xit,Annotation, +, -, or <RETURN> for next message"); + break; + default: /* bogus command */ + printf ("?Unrecognized command: %s\n",cmd); +@@ -600,6 +624,18 @@ void prompt (char *msg,char *txt) + + /* Interfaces to C-client */ + ++void mm_annotation (MAILSTREAM *stream, ANNOTATION *a) ++{ ++ if(a){ ++ fprintf(stderr,"mailbox: %s\nentry: %s\n",a->mbox,a->entry); ++ ANNOTATION_VALUES * v = a->values; ++ while(v){ ++ fprintf(stderr,"attr: %s, value: %s\n",v->attr,v->value); ++ v = v->next; ++ } ++ } ++} ++ + + void mm_searched (MAILSTREAM *stream,unsigned long number) + { diff --git a/repo/imap/fix-linking.patch b/repo/imap/fix-linking.patch new file mode 100644 index 0000000..8933c2d --- /dev/null +++ b/repo/imap/fix-linking.patch @@ -0,0 +1,33 @@ +diff --git a/src/osdep/unix/Makefile b/src/osdep/unix/Makefile +index 78913ac..9eb9c9c 100644 +--- a/src/osdep/unix/Makefile ++++ b/src/osdep/unix/Makefile +@@ -962,21 +962,24 @@ os_sol.h: + + # Once-only environment setup + +-once: onceenv ckp$(PASSWDTYPE) ssl$(SSLTYPE) osdep.c ++once: ssl$(SSLTYPE) onceenv ckp$(PASSWDTYPE) osdep.c + + onceenv: + @echo Once-only environment setup... + echo $(CC) > CCTYPE +- echo $(BASECFLAGS) '$(EXTRACFLAGS)' -DCHUNKSIZE=$(CHUNKSIZE) > CFLAGS +- echo -DCREATEPROTO=$(CREATEPROTO) -DEMPTYPROTO=$(EMPTYPROTO) \ ++ echo `$(CAT) CFLAGS` $(BASECFLAGS) '$(EXTRACFLAGS)' -DCHUNKSIZE=$(CHUNKSIZE) > CFLAGS ++ echo `$(CAT) OSCFLAGS` -DCREATEPROTO=$(CREATEPROTO) -DEMPTYPROTO=$(EMPTYPROTO) \ + -DMD5ENABLE=\"$(MD5PWD)\" -DMAILSPOOL=\"$(MAILSPOOL)\" \ + -DANONYMOUSHOME=\"$(MAILSPOOL)/anonymous\" \ + -DACTIVEFILE=\"$(ACTIVEFILE)\" -DNEWSSPOOL=\"$(NEWSSPOOL)\" \ + -DRSHPATH=\"$(RSHPATH)\" -DLOCKPGM=\"$(LOCKPGM)\" \ + -DLOCKPGM1=\"$(LOCKPGM1)\" -DLOCKPGM2=\"$(LOCKPGM2)\" \ + -DLOCKPGM3=\"$(LOCKPGM3)\" > OSCFLAGS +- echo $(BASELDFLAGS) $(EXTRALDFLAGS) > LDFLAGS ++ echo `$(CAT) LDFLAGS` -lcrypt $(BASELDFLAGS) $(EXTRALDFLAGS) > LDFLAGS + echo "$(ARRC) $(ARCHIVE) $(BINARIES);$(RANLIB) $(ARCHIVE)" > ARCHIVE ++ echo "`$(CAT) CCTYPE` `$(CAT) CFLAGS` `$(CAT) OSFLAGS` -shared \ ++ -Wl,-soname,libc-client.so.1 -o libc-client.so.1.0.0 $(BINARIES) `$(CAT) LDFLAGS`" \ ++ >> ARCHIVE + echo $(OS) > OSTYPE + ./drivers $(EXTRADRIVERS) $(DEFAULTDRIVERS) dummy + ./mkauths $(EXTRAAUTHENTICATORS) $(DEFAULTAUTHENTICATORS) diff --git a/repo/imap/imap.xibuild b/repo/imap/imap.xibuild new file mode 100644 index 0000000..96c5b17 --- /dev/null +++ b/repo/imap/imap.xibuild @@ -0,0 +1,52 @@ +#!/bin/sh + +NAME="imap" +DESC="An IMAP/POP server" + +MAKEDEPS="openssl" + +PKG_VER=2007f +SOURCE="http://ftp.ntua.gr/pub/net/mail/imap/imap-$PKG_VER.tar.gz" + +ADDITIONAL=" +1006_openssl1.1_autoverify.patch +2014_openssl1.1.1_sni.patch +c-client-2006k_KOLAB_Annotations.patch +fix-linking.patch +" + +prepare() { + apply_patches + sed -e "s:-g -fno-omit-frame-pointer -O6:\${CFLAGS}:" \ + -e "s:SSLDIR=/usr/local/ssl:SSLDIR=/usr:" \ + -e "s:SSLCERTS=\$(SSLDIR)/certs:SSLCERTS=/etc/ssl/certs:" \ + -e "s:^CC=.*:CC=${CC:-cc}:" \ + -i src/osdep/unix/Makefile +} + +build() { + cd $BUILD_ROOT + export GCCCFLAGS="$CFLAGS" + yes "y" | make slx SPECIALAUTHENTICATORS=ssl SSLTYPE=unix \ + EXTRACFLAGS="$CFLAGS -fPIC" \ + EXTRALDFLAGS="$LDFLAGS" +} + +package() { + cd $BUILD_ROOT + mkdir -p $PKG_DEST/usr/sbin + install -D -m755 imapd/imapd $PKG_DEST/usr/sbin/imapd + install -D -m755 ipopd/ipop2d $PKG_DEST/usr/sbin/ipop2d + install -D -m755 ipopd/ipop3d $PKG_DEST/usr/sbin/ipop3d + for i in c-client mail imap4r1 rfc822 linkage misc smtp nntp osdep \ + env_unix env fs ftl nl tcp sslio utf8 utf8aux; do + install -D -m644 c-client/$i.h \ + "$PKG_DEST"/usr/include/imap/$i.h + done + install -m644 c-client/linkage.c "$PKG_DEST"/usr/include/imap/linkage.c + + install -Dm755 c-client/libc-client.so.1.0.0 \ + "$PKG_DEST"/usr/lib/libc-client.so.1.0.0 + ln -s libc-client.so.1.0.0 "$PKG_DEST"/usr/lib/libc-client.so.1 + ln -s libc-client.so.1.0.0 "$PKG_DEST"/usr/lib/libc-client.so +} diff --git a/repo/imlib2/imlib2.xibuild b/repo/imlib2/imlib2.xibuild index 82b5bf6..1ab4db3 100644 --- a/repo/imlib2/imlib2.xibuild +++ b/repo/imlib2/imlib2.xibuild @@ -11,12 +11,11 @@ build () { ./configure --prefix=/usr --disable-static && make + # build docs + make -C doc } package () { make DESTDIR=$PKG_DEST install - install -m755 -d /usr/share/doc/imlib2-$PKG_VER && - install -m644 doc/index.html /usr/share/doc/imlib2-$PKG_VER - install -m644 doc/*.gif /usr/share/doc/imlib2-$PKG_VER } diff --git a/repo/iptables/fix-u_int16_t.patch b/repo/iptables/fix-u_int16_t.patch new file mode 100644 index 0000000..37b3950 --- /dev/null +++ b/repo/iptables/fix-u_int16_t.patch @@ -0,0 +1,163 @@ +From f319389525b066b7dc6d389c88f16a0df3b8f189 Mon Sep 17 00:00:00 2001 +From: Nick Hainke <vincent@systemli.org> +Date: Mon, 16 May 2022 18:16:41 +0200 +Subject: treewide: use uint* instead of u_int* + +Gcc complains about missing types. Some commits introduced u_int* instead +of uint*. Use uint treewide. + +Fixes errors in the form of: +In file included from xtables-legacy-multi.c:5: +xshared.h:83:56: error: unknown type name 'u_int16_t'; did you mean 'uint16_t'? + 83 | set_option(unsigned int *options, unsigned int option, u_int16_t *invflg, + | ^~~~~~~~~ + | uint16_t +make[6]: *** [Makefile:712: xtables_legacy_multi-xtables-legacy-multi.o] Error 1 + +Avoid libipq API breakage by adjusting libipq.h include accordingly. For +arpt_mangle.h kernel uAPI header, apply same change as in kernel commit +e91ded8db5747 ("uapi: netfilter_arp: use __u8 instead of u_int8_t"). + +Signed-off-by: Nick Hainke <vincent@systemli.org> +Signed-off-by: Phil Sutter <phil@nwl.cc> +--- + extensions/libxt_conntrack.c | 2 +- + include/libipq/libipq.h | 8 ++++---- + include/libiptc/libxtc.h | 2 +- + include/linux/netfilter_arp/arpt_mangle.h | 2 +- + iptables/xshared.c | 2 +- + iptables/xshared.h | 2 +- + libipq/ipq_create_handle.3 | 2 +- + libipq/ipq_set_mode.3 | 2 +- + 8 files changed, 11 insertions(+), 11 deletions(-) + +diff --git a/extensions/libxt_conntrack.c b/extensions/libxt_conntrack.c +index 64018ce1..234085c5 100644 +--- a/extensions/libxt_conntrack.c ++++ b/extensions/libxt_conntrack.c +@@ -778,7 +778,7 @@ matchinfo_print(const void *ip, const struct xt_entry_match *match, int numeric, + + static void + conntrack_dump_ports(const char *prefix, const char *opt, +- u_int16_t port_low, u_int16_t port_high) ++ uint16_t port_low, uint16_t port_high) + { + if (port_high == 0 || port_low == port_high) + printf(" %s%s %u", prefix, opt, port_low); +diff --git a/include/libipq/libipq.h b/include/libipq/libipq.h +index 3cd13292..dd0cb205 100644 +--- a/include/libipq/libipq.h ++++ b/include/libipq/libipq.h +@@ -24,7 +24,7 @@ + #include <errno.h> + #include <unistd.h> + #include <fcntl.h> +-#include <sys/types.h> ++#include <stdint.h> + #include <sys/socket.h> + #include <sys/uio.h> + #include <asm/types.h> +@@ -48,19 +48,19 @@ typedef unsigned long ipq_id_t; + struct ipq_handle + { + int fd; +- u_int8_t blocking; ++ uint8_t blocking; + struct sockaddr_nl local; + struct sockaddr_nl peer; + }; + +-struct ipq_handle *ipq_create_handle(u_int32_t flags, u_int32_t protocol); ++struct ipq_handle *ipq_create_handle(uint32_t flags, uint32_t protocol); + + int ipq_destroy_handle(struct ipq_handle *h); + + ssize_t ipq_read(const struct ipq_handle *h, + unsigned char *buf, size_t len, int timeout); + +-int ipq_set_mode(const struct ipq_handle *h, u_int8_t mode, size_t len); ++int ipq_set_mode(const struct ipq_handle *h, uint8_t mode, size_t len); + + ipq_packet_msg_t *ipq_get_packet(const unsigned char *buf); + +diff --git a/include/libiptc/libxtc.h b/include/libiptc/libxtc.h +index 37010188..a1d16ef9 100644 +--- a/include/libiptc/libxtc.h ++++ b/include/libiptc/libxtc.h +@@ -10,7 +10,7 @@ extern "C" { + #endif + + #ifndef XT_MIN_ALIGN +-/* xt_entry has pointers and u_int64_t's in it, so if you align to ++/* xt_entry has pointers and uint64_t's in it, so if you align to + it, you'll also align to any crazy matches and targets someone + might write */ + #define XT_MIN_ALIGN (__alignof__(struct xt_entry)) +diff --git a/include/linux/netfilter_arp/arpt_mangle.h b/include/linux/netfilter_arp/arpt_mangle.h +index 250f5029..8c2b16a1 100644 +--- a/include/linux/netfilter_arp/arpt_mangle.h ++++ b/include/linux/netfilter_arp/arpt_mangle.h +@@ -13,7 +13,7 @@ struct arpt_mangle + union { + struct in_addr tgt_ip; + } u_t; +- u_int8_t flags; ++ __u8 flags; + int target; + }; + +diff --git a/iptables/xshared.c b/iptables/xshared.c +index a8512d38..9b5e5b5b 100644 +--- a/iptables/xshared.c ++++ b/iptables/xshared.c +@@ -1025,7 +1025,7 @@ static const int inverse_for_options[NUMBER_OF_OPT] = + }; + + void +-set_option(unsigned int *options, unsigned int option, u_int16_t *invflg, ++set_option(unsigned int *options, unsigned int option, uint16_t *invflg, + bool invert) + { + if (*options & option) +diff --git a/iptables/xshared.h b/iptables/xshared.h +index 14568bb0..f8212988 100644 +--- a/iptables/xshared.h ++++ b/iptables/xshared.h +@@ -80,7 +80,7 @@ struct xtables_target; + #define IPT_INV_ARPHRD 0x0800 + + void +-set_option(unsigned int *options, unsigned int option, u_int16_t *invflg, ++set_option(unsigned int *options, unsigned int option, uint16_t *invflg, + bool invert); + + /** +diff --git a/libipq/ipq_create_handle.3 b/libipq/ipq_create_handle.3 +index 11ef95c4..ebe46daa 100644 +--- a/libipq/ipq_create_handle.3 ++++ b/libipq/ipq_create_handle.3 +@@ -24,7 +24,7 @@ ipq_create_handle, ipq_destroy_handle \(em create and destroy libipq handles. + .br + .B #include <libipq.h> + .sp +-.BI "struct ipq_handle *ipq_create_handle(u_int32_t " flags ", u_int32_t " protocol ");" ++.BI "struct ipq_handle *ipq_create_handle(uint32_t " flags ", uint32_t " protocol ");" + .br + .BI "int ipq_destroy_handle(struct ipq_handle *" h ); + .SH DESCRIPTION +diff --git a/libipq/ipq_set_mode.3 b/libipq/ipq_set_mode.3 +index 0edd3c00..e206886c 100644 +--- a/libipq/ipq_set_mode.3 ++++ b/libipq/ipq_set_mode.3 +@@ -24,7 +24,7 @@ ipq_set_mode \(em set the ip_queue queuing mode + .br + .B #include <libipq.h> + .sp +-.BI "int ipq_set_mode(const struct ipq_handle *" h ", u_int8_t " mode ", size_t " range ); ++.BI "int ipq_set_mode(const struct ipq_handle *" h ", uint8_t " mode ", size_t " range ); + .SH DESCRIPTION + The + .B ipq_set_mode +-- +cgit v1.2.3 + diff --git a/repo/iptables/fix-xtables.patch b/repo/iptables/fix-xtables.patch new file mode 100644 index 0000000..657c821 --- /dev/null +++ b/repo/iptables/fix-xtables.patch @@ -0,0 +1,10 @@ +--- a/libxtables/xtables.c 2022-05-13 13:26:26.000000000 +0000 ++++ b/libxtables/xtables.c 2022-05-17 08:56:52.670556393 +0000 +@@ -45,7 +45,6 @@ + + #include <xtables.h> + #include <limits.h> /* INT_MAX in ip_tables.h/ip6_tables.h */ +-#include <linux/if_ether.h> /* ETH_ALEN */ + #include <linux/netfilter_ipv4/ip_tables.h> + #include <linux/netfilter_ipv6/ip6_tables.h> + #include <libiptc/libxtc.h> diff --git a/repo/iptables/iptables.xibuild b/repo/iptables/iptables.xibuild index 0758c95..324a446 100644 --- a/repo/iptables/iptables.xibuild +++ b/repo/iptables/iptables.xibuild @@ -11,6 +11,8 @@ SOURCE="https://www.netfilter.org/projects/iptables/files/iptables-$PKG_VER.tar. ADDITIONAL=" ebtables.confd ebtables.initd +fix-u_int16_t.patch +fix-xtables.patch ip6tables.confd iptables.confd iptables.initd @@ -57,3 +59,4 @@ package() { install -D -m755 "$BUILD_ROOT"/ebtables.initd "$PKG_DEST"/etc/init.d/ebtables install -D -m644 "$BUILD_ROOT"/ebtables.confd "$PKG_DEST"/etc/conf.d/ebtables } + diff --git a/repo/krb5/krb5-server.xibuild b/repo/krb5/krb5-server.xibuild new file mode 100644 index 0000000..e8edb99 --- /dev/null +++ b/repo/krb5/krb5-server.xibuild @@ -0,0 +1,17 @@ +#!/bin/sh + +DESC="The KDC and related programs for Kerberos 5" + +package() { + mkdir -p "$PKG_DEST"/usr/share \ + "$PKG_DEST"/usr/bin + install -d "$PKG_DEST"/var/lib/krb5kdc + mv "$PKG_DEST"/../krb5/usr/sbin "$subpkgdir"/usr/ + + add_from_main usr/bin/sclient + + for i in $BUILD_ROOT/*.initd; do + install -Dm755 $i \ + "$PKG_DEST"/etc/init.d/${i%.initd} + done +} diff --git a/repo/krb5/krb5.xibuild b/repo/krb5/krb5.xibuild index c38416a..92185b9 100644 --- a/repo/krb5/krb5.xibuild +++ b/repo/krb5/krb5.xibuild @@ -1,59 +1,52 @@ #!/bin/sh -MAKEDEPS="make " -DEPS="musl e2fsprogs libldap gdbm" +NAME="krb5" +DESC="The Kerberos network authentication system" + +MAKEDEPS="e2fsprogs libverto libldap openssl keyutils bison flex perl" PKG_VER=1.19.3 -SOURCE=http://kerberos.org/dist/krb5/${PKG_VER%.*}/krb5-${PKG_VER}.tar.gz +maj_min=$PKG_VER +case $PKG_VER in + *.*.*) maj_min=${PKG_VER%.*} ;; +esac + +SOURCE="https://web.mit.edu/kerberos/dist/krb5/$maj_min/krb5-$PKG_VER.tar.gz" ADDITIONAL=" - https://www.linuxfromscratch.org/patches/blfs/svn/mitkrb-${PKG_VER}-openssl3_fixes-1.patch +krb5kadmind.initd +krb5kdc.initd +krb5kpropd.initd +mit-krb5_krb5-config_LDFLAGS.patch " -DESC="The Kerberos network authentication system" - prepare () { - - # fix denial of service vulnerability - sed -i '210a if (sprinc == NULL) {\ - status = "NULL_SERVER";\ - errcode = KRB5KDC_ERR_S_PRINCIPAL_UNKNOWN;\ - goto cleanup;\ - }' src/kdc/do_tgs_req.c - - - cd src && - #these were needed for libressl - #patch -Np0 -i ../patch-plugins_preauth_pkinit_pkinit__crypto__openssl.c - #patch -Np0 -i ../patch-plugins_preauth_pkinit_pkinit__crypto__openssl.h - patch -Np2 -i ../mitkrb-$PKG_VER-openssl3_fixes-1.patch - - - sed -e "/LDFLAGS=/d" -i build-tools/krb5-config.in - sed -i -e 's@\^u}@^u cols 300}@' tests/dejagnu/config/default.exp || true - sed -i -e '/eq 0/{N;s/12 //}' plugins/kdb/db2/libdb2/test/run.test || true - sed -i '/t_iprop.py/d' tests/Makefile.in || true + cd src + mv ../*.patch . + apply_patches } -build () { - # would be ideal to use openssl rather than builtin library - autoreconf - ./configure --prefix=/usr \ - --sysconfdir=/etc \ - --localstatedir=/var/lib \ - --runstatedir=/run \ - --with-system-et \ - --with-system-ss \ - --with-system-verto=no \ - --with-crypto-impl=builtin \ - --enable-dns-for-realm && - - make +build() { + ./configure \ + CPPFLAGS="$CPPFLAGS -fPIC -I/usr/include/et" \ + WARN_CFLAGS= \ + --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 } -package () { - make DESTDIR=$PKG_DEST install - - install -dm755 $PKG_DEST/usr/share/doc/krb5-$PKG_VER && - cp -fr ../doc/* $PKG_DEST/usr/share/doc/krb5-$PKG_VER +package() { + make install DESTDIR="$PKG_DEST" + mkdir -p "$PKG_DEST"/usr/share/doc/krb5 + mv "$PKG_DEST"/usr/share/examples "$PKG_DEST"/usr/share/doc/krb5/ } + diff --git a/repo/krb5/krb5kadmind.initd b/repo/krb5/krb5kadmind.initd new file mode 100644 index 0000000..64622d5 --- /dev/null +++ b/repo/krb5/krb5kadmind.initd @@ -0,0 +1,25 @@ +#!/sbin/openrc-run + +#--------------------------------------------------------------------------- +# This script starts/stops the MIT Kerberos 5 Admin daemon +#--------------------------------------------------------------------------- + +daemon="MIT Kerberos 5 Admin daemon" +exec="/usr/sbin/kadmind" + +depend() { + need krb5kdc + use net +} + +start() { + ebegin "Starting $daemon" + start-stop-daemon --start --quiet --exec ${exec} 1>&2 + eend $? "Error starting $daemon" +} + +stop() { + ebegin "Stopping $daemon" + start-stop-daemon --stop --quiet --exec ${exec} 1>&2 + eend $? "Error stopping $daemon" +} diff --git a/repo/krb5/krb5kdc.initd b/repo/krb5/krb5kdc.initd new file mode 100644 index 0000000..35cac6f --- /dev/null +++ b/repo/krb5/krb5kdc.initd @@ -0,0 +1,24 @@ +#!/sbin/openrc-run + +#--------------------------------------------------------------------------- +# This script starts/stops the MIT Kerberos 5 KDC +#--------------------------------------------------------------------------- + +daemon="MIT Kerberos 5 KDC" +exec="/usr/sbin/krb5kdc" + +depend() { + use net +} + +start() { + ebegin "Starting $daemon" + start-stop-daemon --start --quiet --exec ${exec} 1>&2 + eend $? "Error starting $daemon" +} + +stop() { + ebegin "Stopping $daemon" + start-stop-daemon --stop --quiet --exec ${exec} 1>&2 + eend $? "Error stopping $daemon" +} diff --git a/repo/krb5/krb5kpropd.initd b/repo/krb5/krb5kpropd.initd new file mode 100644 index 0000000..75d2f0d --- /dev/null +++ b/repo/krb5/krb5kpropd.initd @@ -0,0 +1,24 @@ +#!/sbin/openrc-run + +#--------------------------------------------------------------------------- +# This script starts/stops the MIT Kerberos 5 kpropd +#--------------------------------------------------------------------------- + +daemon="MIT Kerberos 5 kpropd" +exec="/usr/sbin/kpropd" + +depend() { + use net krb5kdc krb5kadmind +} + +start() { + ebegin "Starting $daemon" + start-stop-daemon --start --quiet --exec ${exec} -- -S 1>&2 + eend $? "Error starting $daemon" +} + +stop() { + ebegin "Stopping $daemon" + start-stop-daemon --stop --quiet --exec ${exec} 1>&2 + eend $? "Error stopping $daemon" +} diff --git a/repo/krb5/mit-krb5_krb5-config_LDFLAGS.patch b/repo/krb5/mit-krb5_krb5-config_LDFLAGS.patch new file mode 100644 index 0000000..9ae5226 --- /dev/null +++ b/repo/krb5/mit-krb5_krb5-config_LDFLAGS.patch @@ -0,0 +1,12 @@ +Bug #448778 +--- a/build-tools/krb5-config.in ++++ b/build-tools/krb5-config.in +@@ -221,7 +221,7 @@ + -e 's#\$(PROG_RPATH)#'$libdir'#' \ + -e 's#\$(PROG_LIBPATH)#'$libdirarg'#' \ + -e 's#\$(RPATH_FLAG)#'"$RPATH_FLAG"'#' \ +- -e 's#\$(LDFLAGS)#'"$LDFLAGS"'#' \ ++ -e 's#\$(LDFLAGS)##' \ + -e 's#\$(PTHREAD_CFLAGS)#'"$PTHREAD_CFLAGS"'#' \ + -e 's#\$(CFLAGS)##'` + diff --git a/repo/libbluray/libbluray.xibuild b/repo/libbluray/libbluray.xibuild new file mode 100644 index 0000000..39aa361 --- /dev/null +++ b/repo/libbluray/libbluray.xibuild @@ -0,0 +1,28 @@ +#!/bin/sh + +NAME="libbluray" +DESC="Library for Blu-Ray disc playback" + +MAKEDEPS="" + +PKG_VER=1.3.3 +SOURCE="https://download.videolan.org/pub/videolan/libbluray/$PKG_VER/libbluray-$PKG_VER.tar.bz2" + +build() { + ./configure \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --infodir=/usr/share/info \ + --localstatedir=/var \ + --disable-bdjava-jar \ + --without-libxml2 \ + --without-freetype \ + --disable-static + make +} + +package() { + make DESTDIR="$PKG_DEST" install +} + diff --git a/repo/libbpf/libbpf.xibuild b/repo/libbpf/libbpf.xibuild index 0e4993d..93ddac9 100644 --- a/repo/libbpf/libbpf.xibuild +++ b/repo/libbpf/libbpf.xibuild @@ -5,7 +5,7 @@ DESC="A library for interacting with the Linux kernel's Berkeley Packet Filter ( MAKEDEPS="linux-headers elfutils zlib" -PKG_VER=1.0.1 +PKG_VER=1.1.0 SOURCE="https://github.com/libbpf/libbpf/archive/refs/tags/v$PKG_VER.tar.gz" ADDITIONAL=" @@ -14,7 +14,7 @@ ADDITIONAL=" build() { cd src - make NO_PKG_CONFIG=1 + make } check() { diff --git a/repo/libburn/libburn.xibuild b/repo/libburn/libburn.xibuild new file mode 100644 index 0000000..721a39b --- /dev/null +++ b/repo/libburn/libburn.xibuild @@ -0,0 +1,30 @@ +#!/bin/sh + +NAME="libburn" +DESC="Library for reading, mastering and writing optical discs" + +MAKEDEPS=" linux-headers" + +PKG_VER=1.5.4 +_ver=${PKG_VER%_p*} +if [ "$_ver" != "$PKG_VER" ]; then + _pver=".pl${PKG_VER##*_p}" +fi +SOURCE="https://files.libburnia-project.org/releases/libburn-${_ver}$_pver.tar.gz" + +build() { + ./configure \ + + + --prefix=/usr \ + --disable-static + make +} + +check() { + make check +} +package() { + make DESTDIR="$PKG_DEST" install +} + diff --git a/repo/libcddb/libcddb.xibuild b/repo/libcddb/libcddb.xibuild index 482567e..80dc461 100644 --- a/repo/libcddb/libcddb.xibuild +++ b/repo/libcddb/libcddb.xibuild @@ -3,15 +3,11 @@ NAME="libcddb" DESC="Library that implements the different protocols (CDDBP, HTTP, SMTP) to access data on a CDDB server (e.g. http://freedb.org)." -MAKEDEPS="" +MAKEDEPS="make" PKG_VER=1.3.2 SOURCE="https://downloads.sourceforge.net/libcddb/libcddb-$PKG_VER.tar.bz2" -prepare() { - apply_patches -} - build() { ./configure \ --prefix=/usr \ diff --git a/repo/libdaemon/fix-includes.patch b/repo/libdaemon/fix-includes.patch new file mode 100644 index 0000000..51c5133 --- /dev/null +++ b/repo/libdaemon/fix-includes.patch @@ -0,0 +1,13 @@ +--- libdaemon-0.14.orig/examples/testd.c ++++ libdaemon-0.14/examples/testd.c +@@ -21,9 +21,9 @@ + #include <signal.h> + #include <errno.h> + #include <string.h> ++#include <unistd.h> + #include <sys/types.h> + #include <sys/time.h> +-#include <sys/unistd.h> + #include <sys/select.h> + + #include <libdaemon/dfork.h> diff --git a/repo/libdaemon/libdaemon.xibuild b/repo/libdaemon/libdaemon.xibuild new file mode 100644 index 0000000..1a2b731 --- /dev/null +++ b/repo/libdaemon/libdaemon.xibuild @@ -0,0 +1,30 @@ +#!/bin/sh + +NAME="libdaemon" +DESC="A lightweight C library which eases the writing of UNIX daemons" + +MAKEDEPS="" + +PKG_VER=0.14 +SOURCE="https://dev.alpinelinux.org/archive/libdaemon/libdaemon-$PKG_VER.tar.gz" + +ADDITIONAL=" +fix-includes.patch +" + +prepare() { + apply_patches +} + +build() { + ./configure \ + --prefix=/usr \ + --localstatedir=/var \ + --disable-lynx + make +} + +package() { + make DESTDIR="$PKG_DEST" install +} + diff --git a/repo/libebml/libebml.xibuild b/repo/libebml/libebml.xibuild new file mode 100644 index 0000000..b2df189 --- /dev/null +++ b/repo/libebml/libebml.xibuild @@ -0,0 +1,29 @@ +#!/bin/sh + +NAME="libebml" +DESC="C++ library to parse Extensible Binary Meta-Language files" + +MAKEDEPS="cmake ninja" + +PKG_VER=1.4.3 +SOURCE="http://dl.matroska.org/downloads/libebml/libebml-$PKG_VER.tar.xz" + +build() { + if [ "$CBUILD" != "$CHOST" ]; then + CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux" + fi + + 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 \ + $CMAKE_CROSSOPTS + cmake --build build +} + +package() { + DESTDIR="$PKG_DEST" cmake --install build +} + diff --git a/repo/libfm/libfm.xibuild b/repo/libfm/libfm.xibuild index 21661e5..c808057 100644 --- a/repo/libfm/libfm.xibuild +++ b/repo/libfm/libfm.xibuild @@ -3,8 +3,7 @@ NAME="libfm" DESC="Library for file management" -MAKEDEPS="make libtool intltool autoconf automake gtk3" -DEPS="libexif menu-cache" +MAKEDEPS="make libtool intltool autoconf automake gtk3 libexif menu-cache" PKG_VER=1.3.2 SOURCE="https://github.com/lxde/libfm/archive/$PKG_VER.tar.gz" diff --git a/repo/libgcab/libgcab.xibuild b/repo/libgcab/libgcab.xibuild index 7025626..0cc3152 100644 --- a/repo/libgcab/libgcab.xibuild +++ b/repo/libgcab/libgcab.xibuild @@ -8,6 +8,11 @@ MAKEDEPS="meson gobject-introspection glib vala gtk2" PKG_VER=1.5 SOURCE="https://download.gnome.org/sources/gcab/$PKG_VER/gcab-$PKG_VER.tar.xz" +prepare () { + # trick it into thinking its a git repo + git init . +} + build() { meson --prefix=/usr \ output diff --git a/repo/libgit/libgit.xibuild b/repo/libgit/libgit.xibuild index 87fd6f8..8802b20 100644 --- a/repo/libgit/libgit.xibuild +++ b/repo/libgit/libgit.xibuild @@ -28,12 +28,12 @@ build() { make } -check() { - cd "$BUILD_ROOT"/build - ctest -E 'offline|online' -} +#check() { +# cd "$BUILD_ROOT"/build +# ctest -E 'offline|online' +# cd "$BUILD_ROOT" +#} package() { - cd "$BUILD_ROOT" - make -C build DESTDIR="$PKG_DEST" install + make DESTDIR="$PKG_DEST" install } diff --git a/repo/libgphoto2/libgphoto2.pre-install b/repo/libgphoto2/libgphoto2.pre-install new file mode 100644 index 0000000..c696fcd --- /dev/null +++ b/repo/libgphoto2/libgphoto2.pre-install @@ -0,0 +1,5 @@ +#!/bin/sh + +addgroup -S camera 2>/dev/null + +exit 0 diff --git a/repo/libgphoto2/libgphoto2.pre-upgrade b/repo/libgphoto2/libgphoto2.pre-upgrade new file mode 100644 index 0000000..c696fcd --- /dev/null +++ b/repo/libgphoto2/libgphoto2.pre-upgrade @@ -0,0 +1,5 @@ +#!/bin/sh + +addgroup -S camera 2>/dev/null + +exit 0 diff --git a/repo/libgphoto2/libgphoto2.xibuild b/repo/libgphoto2/libgphoto2.xibuild new file mode 100644 index 0000000..b7ba6e6 --- /dev/null +++ b/repo/libgphoto2/libgphoto2.xibuild @@ -0,0 +1,34 @@ +#!/bin/sh + +NAME="libgphoto2" +DESC="The core library of gphoto2, designed to allow access to digital camera by external programs" + +MAKEDEPS=" libexif libusb libjpeg-turbo libtool" + +PKG_VER=2.5.30 +SOURCE="https://downloads.sourceforge.net/gphoto/libgphoto2-$PKG_VER.tar.bz2" + +build() { + udevscriptdir=/lib/udev ./configure \ + --prefix=/usr \ + --with-drivers=all \ + --disable-static \ + --disable-rpath + make +} + +check() { + make check +} + +package() { + make DESTDIR="$PKG_DEST" install + rm -f "$PKG_DEST"/usr/lib/libgphoto2/*/*.a \ + "$PKG_DEST"/usr/lib/*.a + + install -m755 -d "$PKG_DEST/lib/udev/rules.d" + LD_LIBRARY_PATH="$PKG_DEST/usr/lib${LD_LIBRARY_PATH:+:}$LD_LIBRARY_PATH" \ + CAMLIBS="$PKG_DEST/usr/lib/libgphoto2/$PKG_VER" \ + "$PKG_DEST/usr/lib/libgphoto2/print-camera-list" udev-rules version 136 group camera mode 0660 > "$PKG_DEST/lib/udev/rules.d/54-gphoto.rules" +} + diff --git a/repo/libisoburn/libisoburn.xibuild b/repo/libisoburn/libisoburn.xibuild new file mode 100644 index 0000000..c893911 --- /dev/null +++ b/repo/libisoburn/libisoburn.xibuild @@ -0,0 +1,26 @@ +#!/bin/sh + +NAME="libisoburn" +DESC="Library to enable creation and expansion of ISO-9660 filesystems" + +MAKEDEPS="libburn libisofs acl zlib libedit" + +PKG_VER=1.5.4 +SOURCE="https://download.nus.edu.sg/mirror/ubuntu/ubuntu/pool/main/libi/libisoburn/libisoburn_$PKG_VER.orig.tar.gz" + + +build() { + ./configure \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --localstatedir=/var \ + --disable-static + make +} + +package() { + make DESTDIR="$PKG_DEST" install + rm "$PKG_DEST"/usr/bin/xorriso-tcltk + ln -s xorriso "$PKG_DEST"/usr/bin/mkisofs +} diff --git a/repo/libisofs/libisofs.xibuild b/repo/libisofs/libisofs.xibuild new file mode 100644 index 0000000..fbc914b --- /dev/null +++ b/repo/libisofs/libisofs.xibuild @@ -0,0 +1,27 @@ +#!/bin/sh + +NAME="libisofs" +DESC="Library to pack up hard disk files and directories into a ISO 9660 disk image" + +MAKEDEPS=" acl zlib" + +PKG_VER=1.5.4 +SOURCE="https://files.libburnia-project.org/releases/libisofs-$PKG_VER.tar.gz" + +build() { + ./configure \ + --prefix=/usr \ + --enable-libacl \ + --enable-xattr \ + --disable-static + make +} + +check() { + make check +} + +package() { + make DESTDIR="$PKG_DEST" install +} + diff --git a/repo/libixion/libixion.xibuild b/repo/libixion/libixion.xibuild index 1061d5b..e966782 100644 --- a/repo/libixion/libixion.xibuild +++ b/repo/libixion/libixion.xibuild @@ -3,20 +3,22 @@ NAME="libixion" DESC="A general purpose formula parser & interpreter" -MAKEDEPS=" boost mdds" +MAKEDEPS="boost mdds" PKG_VER=0.17.0 -SOURCE="https://kohei.us/files/ixion/src/libixion-$PKG_VER.tar.xz" +BRANCH=$PKG_VER +SOURCE="https://gitlab.com/ixion/ixion.git" ADDITIONAL=" fix.patch " -prepare() { - apply_patches -} +#prepare() { + #apply_patches +#} build() { + ./autogen.sh ./configure \ --prefix=/usr \ --sysconfdir=/etc \ diff --git a/repo/libjxl/libjxl.xibuild b/repo/libjxl/libjxl.xibuild index a096e83..0ae32b4 100644 --- a/repo/libjxl/libjxl.xibuild +++ b/repo/libjxl/libjxl.xibuild @@ -5,7 +5,7 @@ DESC="JPEG XL image format reference implementation" MAKEDEPS="asciidoc brotli cmake gdk-pixbuf giflib lcms2 libjpeg-turbo libpng openexr zlib gimp highway gflags" -SOURCE="http://github.com/libjxl/libjxl" +SOURCE="http://github.com/libjxl/libjxl.git" prepare () { ./deps.sh diff --git a/repo/liblinear/liblinear.xibuild b/repo/liblinear/liblinear.xibuild index 5222f8e..85a2631 100644 --- a/repo/liblinear/liblinear.xibuild +++ b/repo/liblinear/liblinear.xibuild @@ -15,6 +15,6 @@ package () { mkdir -p ${PKG_DEST}/usr/include mkdir -p ${PKG_DEST}/usr/lib install -m644 linear.h $PKG_DEST/usr/include && - install -m755 liblinear.so.4 $PKG_DEST/usr/lib && + install -m755 liblinear.so.5 $PKG_DEST/usr/lib && ln -sf liblinear.so.4 $PKG_DEST/usr/lib/liblinear.so } diff --git a/repo/libmodplug/libmodplug.xibuild b/repo/libmodplug/libmodplug.xibuild index 9647bc1..3a8c060 100644 --- a/repo/libmodplug/libmodplug.xibuild +++ b/repo/libmodplug/libmodplug.xibuild @@ -3,7 +3,7 @@ NAME="libmodplug" DESC="A MOD playing library" -MAKEDEPS="" +MAKEDEPS="musl" PKG_VER=0.8.9.0 SOURCE="https://downloads.sourceforge.net/modplug-xmms/libmodplug-$PKG_VER.tar.gz" diff --git a/repo/libmrss/libmrss.xibuild b/repo/libmrss/libmrss.xibuild index c157881..066eeff 100644 --- a/repo/libmrss/libmrss.xibuild +++ b/repo/libmrss/libmrss.xibuild @@ -3,11 +3,17 @@ NAME="libmrss" DESC="mRSS is a C library for parsing, writing and creating RSS files or streams" -MAKEDEPS=" automake autoconf libtool m4 curl libnxml doxygen" +MAKEDEPS="automake autoconf libtool m4 curl libnxml doxygen" PKG_VER=0.19.2 SOURCE="https://github.com/bakulf/libmrss/archive/refs/tags/$PKG_VER.tar.gz" +prepare () { + # this file is required + touch NEWS + autoreconf -vif +} + build() { ./configure --prefix=/usr make diff --git a/repo/libnxml/libnxml.xibuild b/repo/libnxml/libnxml.xibuild index 478711c..71e2970 100644 --- a/repo/libnxml/libnxml.xibuild +++ b/repo/libnxml/libnxml.xibuild @@ -8,6 +8,12 @@ MAKEDEPS="curl" PKG_VER=0.18.3 SOURCE="https://github.com/bakulf/libnxml/archive/refs/tags/$PKG_VER.tar.gz" +prepare () { + # this file is necessary + touch NEWS + autoreconf -vif +} + build() { ./configure --prefix=/usr make diff --git a/repo/liborcus/liborcus.xibuild b/repo/liborcus/liborcus.xibuild index 481b0ac..aefd7b9 100644 --- a/repo/liborcus/liborcus.xibuild +++ b/repo/liborcus/liborcus.xibuild @@ -6,13 +6,15 @@ DESC="Library for processing spreadsheet documents" MAKEDEPS="boost mdds libixion zlib" PKG_VER=0.17.2 -SOURCE="https://kohei.us/files/orcus/src/liborcus-$PKG_VER.tar.xz" +BRANCH=$PKG_VER +SOURCE="https://gitlab.com/orcus/orcus.git" ADDITIONAL=" fix-include.patch " prepare () { + ./autogen.sh apply_patches } @@ -26,9 +28,6 @@ build() { make } -check() { - make check -} package() { make DESTDIR="$PKG_DEST" install diff --git a/repo/libqmi/libqmi.xibuild b/repo/libqmi/libqmi.xibuild index 7439f1f..0cf4f50 100644 --- a/repo/libqmi/libqmi.xibuild +++ b/repo/libqmi/libqmi.xibuild @@ -1,7 +1,6 @@ #!/bin/sh -MAKEDEPS="make gtk-doc glib libgudev " -DEPS="musl libqrtr libmbim " +MAKEDEPS="make gtk-doc glib libgudev musl libqrtr libmbim " PKG_VER=1.30.4 SOURCE=https://www.freedesktop.org/software/libqmi/libqmi-$PKG_VER.tar.xz diff --git a/repo/librsvg/librsvg.xibuild b/repo/librsvg/librsvg.xibuild index b8076c9..aa1aa8a 100644 --- a/repo/librsvg/librsvg.xibuild +++ b/repo/librsvg/librsvg.xibuild @@ -3,8 +3,7 @@ NAME="librsvg" DESC="SAX-based renderer for SVG files into a GdkPixbuf" -MAKEDEPS="make rust cargo vala" -DEPS="cairo gdk-pixbuf glib libxml2 musl pango " +MAKEDEPS="make rust cargo vala cairo gdk-pixbuf glib libxml2 musl pango curl python-docutils" PKG_VER=2.55.1 SOURCE="https://download.gnome.org/sources/librsvg/${PKG_VER%.*}/librsvg-$PKG_VER.tar.xz" diff --git a/repo/libsass/fix-pkgconfig-version.patch b/repo/libsass/fix-pkgconfig-version.patch new file mode 100644 index 0000000..f957de4 --- /dev/null +++ b/repo/libsass/fix-pkgconfig-version.patch @@ -0,0 +1,16 @@ +diff --git a/version.sh b/version.sh +index 281de74..22cd96d 100755 +--- a/version.sh ++++ b/version.sh +@@ -1,10 +1 @@ +-if test "x$LIBSASS_VERSION" = "x"; then +- LIBSASS_VERSION=`git describe --abbrev=4 --dirty --always --tags 2>/dev/null` +-fi +-if test "x$LIBSASS_VERSION" = "x"; then +- LIBSASS_VERSION=`cat VERSION 2>/dev/null` +-fi +-if test "x$LIBSASS_VERSION" = "x"; then +- LIBSASS_VERSION="[na]" +-fi +-echo $LIBSASS_VERSION ++echo 3.6.3 diff --git a/repo/libsass/libsass.xibuild b/repo/libsass/libsass.xibuild new file mode 100644 index 0000000..534219f --- /dev/null +++ b/repo/libsass/libsass.xibuild @@ -0,0 +1,31 @@ +#!/bin/sh + +NAME="libsass" +DESC="C/C++ implementation of a Sass compiler" + +MAKEDEPS="autoconf automake libtool" + +PKG_VER=3.6.5 +SOURCE="https://github.com/sass/libsass/archive/$PKG_VER.tar.gz" + +ADDITIONAL=" +fix-pkgconfig-version.patch +" + +prepare() { + apply_patches + autoreconf -vif +} + +build() { + ./configure \ + --prefix=/usr \ + --disable-static + make +} + +package() { + make install DESTDIR="$PKG_DEST" + rm -f "$PKG_DEST"/usr/lib/*.la +} + diff --git a/repo/libsigc++/libsigc++.xibuild b/repo/libsigc++/libsigc++.xibuild index c314607..e77a689 100644 --- a/repo/libsigc++/libsigc++.xibuild +++ b/repo/libsigc++/libsigc++.xibuild @@ -3,8 +3,7 @@ NAME="libsigc++" DESC="type-safe Signal Framework for C++" -MAKEDEPS="meson ninja " -DEPS="musl " +MAKEDEPS="meson ninja musl " PKG_VER=3.0.4 SOURCE="https://download.gnome.org/sources/libsigc++/${PKG_VER%.*}/libsigc++-$PKG_VER.tar.xz" diff --git a/repo/libverto/libverto.xibuild b/repo/libverto/libverto.xibuild new file mode 100644 index 0000000..93e5eda --- /dev/null +++ b/repo/libverto/libverto.xibuild @@ -0,0 +1,31 @@ +#!/bin/sh + +NAME="libverto" +DESC="Main loop abstraction library" + +MAKEDEPS="glib libevent libev automake autoconf libtool" + +PKG_VER=0.3.2 +SOURCE="https://github.com/latchset/libverto/archive/$PKG_VER.tar.gz" + +prepare() { + cd "$BUILD_ROOT" + autoreconf -i +} + +build() { + ./configure \ + --prefix=/usr \ + --with-libev \ + --with-libevent + make +} + +check() { + make check +} + +package() { + make DESTDIR="$PKG_DEST" install +} + diff --git a/repo/libzip/libzip.xibuild b/repo/libzip/libzip.xibuild new file mode 100644 index 0000000..9cb5af2 --- /dev/null +++ b/repo/libzip/libzip.xibuild @@ -0,0 +1,30 @@ +#!/bin/sh + +NAME="libzip" +DESC="C library for manipulating zip archives" + +MAKEDEPS="bzip2 xz zlib zstd cmake openssl perl ninja" + +PKG_VER=1.9.2 +SOURCE="https://libzip.org/download/libzip-$PKG_VER.tar.xz" + +build() { + cmake -B build -G Ninja \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DCMAKE_INSTALL_LIBDIR=lib \ + -DENABLE_BZIP2=ON \ + -DENABLE_LZMA=ON \ + -DENABLE_OPENSSL=ON \ + -DENABLE_ZSTD=ON \ + -DCMAKE_BUILD_TYPE=MinSizeRel + cmake --build build +} + +check() { + ninja -C build check +} + +package() { + DESTDIR="$PKG_DEST" cmake --install build +} + diff --git a/repo/linux-firmware/linux-firmware.xibuild b/repo/linux-firmware/linux-firmware.xibuild index 0bf7008..3c66638 100644 --- a/repo/linux-firmware/linux-firmware.xibuild +++ b/repo/linux-firmware/linux-firmware.xibuild @@ -3,7 +3,7 @@ MAKEDEPS="" DEPS="linux" -PKG_VER=5.19 +PKG_VER=6.1 SOURCE=https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git BRANCH=02c69863c885db963f8c0121b533f2816ef5be3b diff --git a/repo/linux-headers/linux-headers.xibuild b/repo/linux-headers/linux-headers.xibuild index 4dfb4e3..1c4ece4 100644 --- a/repo/linux-headers/linux-headers.xibuild +++ b/repo/linux-headers/linux-headers.xibuild @@ -3,7 +3,7 @@ MAKEDEPS="make " DESC="Linux kernel headers" -PKG_VER=6.0.12 +PKG_VER=6.1.3 SOURCE=https://cdn.kernel.org/pub/linux/kernel/v${PKG_VER%%.*}.x/linux-$PKG_VER.tar.xz build () { diff --git a/repo/linux-libre/linux-libre.xibuild b/repo/linux-libre/linux-libre.xibuild index 30cf726..9b249d0 100644 --- a/repo/linux-libre/linux-libre.xibuild +++ b/repo/linux-libre/linux-libre.xibuild @@ -1,9 +1,8 @@ #!/bin/sh -MAKEDEPS="make bc linux-headers cpio" -DEPS="toybox kmod" +MAKEDEPS="make bc linux-headers cpio toybox kmod pahole" -PKG_VER=6.0.12 +PKG_VER=6.1.4 #SOURCE=https://cdn.kernel.org/pub/linux/kernel/v${PKG_VER%%.*}.x/linux-$PKG_VER.tar.xz SOURCE=https://linux-libre.fsfla.org/pub/linux-libre/releases/${PKG_VER}-gnu/linux-libre-${PKG_VER}-gnu.tar.xz ADDITIONAL=" @@ -22,6 +21,9 @@ prepare () { make olddefconfig make -s kernelrelease > version echo "Prepared linux version $(cat version)" + + # toybox's dd does not have this option + sed -i 's/status=\S*//g' scripts/link-vmlinux.sh } build () { diff --git a/repo/linux/linux.xibuild b/repo/linux/linux.xibuild index b4dce81..9352484 100644 --- a/repo/linux/linux.xibuild +++ b/repo/linux/linux.xibuild @@ -1,9 +1,8 @@ #!/bin/sh -MAKEDEPS="make bc cpio linux-headers" -DEPS="toybox kmod" +MAKEDEPS="make bc cpio linux-headers toybox kmod" -PKG_VER=6.0.12 +PKG_VER=6.1.4 SOURCE=https://cdn.kernel.org/pub/linux/kernel/v${PKG_VER%%.*}.x/linux-$PKG_VER.tar.xz ADDITIONAL=" config @@ -17,6 +16,10 @@ prepare () { make olddefconfig make -s kernelrelease > version + + # toybox's dd does not have this option + sed -i 's/status=\S*//g' scripts/link-vmlinux.sh + echo "Prepared linux version $(cat version)" } diff --git a/repo/live-media/0001-Add-a-pkg-config-file-for-the-shared-libraries.patch b/repo/live-media/0001-Add-a-pkg-config-file-for-the-shared-libraries.patch new file mode 100644 index 0000000..a2ae1c1 --- /dev/null +++ b/repo/live-media/0001-Add-a-pkg-config-file-for-the-shared-libraries.patch @@ -0,0 +1,66 @@ +From: Benjamin Drung <bdrung@debian.org> +Date: Sat, 16 Sep 2017 11:22:03 +0200 +Subject: Add a pkg-config file for the shared libraries + +This patch was downloaded from Debian +https://sources.debian.org/src/liblivemedia/2018.08.05-1/debian/patches/0002-Add-a-pkg-config-file-for-the-shared-libraries.patch/ + +The local/ part of PREXIX and LIBDIR was removed to fit into buildroot. + +A similar version of this patch is part of the vlc source repo: +http://git.videolan.org/?p=vlc.git;a=blob;f=contrib/src/live555/add-pkgconfig-file.patch;hb=HEAD + +Upstream status: Rejected +http://lists.live555.com/pipermail/live-devel/2013-January/016374.html +http://lists.live555.com/pipermail/live-devel/2013-January/016375.html + +Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de> +--- + Makefile.head | 3 +++ + Makefile.tail | 7 ++++++- + live555.pc.in | 9 +++++++++ + 3 files changed, 18 insertions(+), 1 deletion(-) + create mode 100644 live555.pc.in + +diff --git a/Makefile.head b/Makefile.head +index 458c54c..1571037 100644 +--- a/Makefile.head ++++ b/Makefile.head +@@ -1 +1,4 @@ ++PREFIX = /usr ++LIBDIR = /usr/lib ++VERSION = $(shell grep LIVEMEDIA_LIBRARY_VERSION_STRING liveMedia/include/liveMedia_version.hh | sed 's/.*"\([^"]*\)".*/\1/') + ##### Change the following for your environment: +diff --git a/Makefile.tail b/Makefile.tail +index fc594ea..a20a527 100644 +--- a/Makefile.tail ++++ b/Makefile.tail +@@ -22,7 +22,12 @@ all: + @echo + @echo "For more information about this source code (including your obligations under the LGPL), please see our FAQ at http://live555.com/liveMedia/faq.html" + +-install: ++install_shared_libraries: ++ install -d $(DESTDIR)$(LIBDIR)/pkgconfig ++ sed "s#@PREFIX@#$(PREFIX)#;s#@LIBDIR@#$(LIBDIR)#;s#@VERSION@#$(VERSION)#" live555.pc.in > $(DESTDIR)$(LIBDIR)/pkgconfig/live555.pc ++ chmod 644 $(DESTDIR)$(LIBDIR)/pkgconfig/live555.pc ++ ++install: $(INSTALL2) + cd $(LIVEMEDIA_DIR) ; $(MAKE) install + cd $(GROUPSOCK_DIR) ; $(MAKE) install + cd $(USAGE_ENVIRONMENT_DIR) ; $(MAKE) install +diff --git a/live555.pc.in b/live555.pc.in +new file mode 100644 +index 0000000..3736944 +--- /dev/null ++++ b/live555.pc.in +@@ -0,0 +1,9 @@ ++prefix=@PREFIX@ ++libdir=@LIBDIR@ ++includedir=${prefix}/include ++ ++Name: live555 ++Description: multimedia RTSP streaming library ++Version: @VERSION@ ++Cflags: -I${includedir}/liveMedia -I${includedir}/groupsock -I${includedir}/BasicUsageEnvironment -I${includedir}/UsageEnvironment ++Libs: -L${libdir} -lliveMedia -lgroupsock -lBasicUsageEnvironment -lUsageEnvironment diff --git a/repo/live-media/0003-Link-shared-libraries-with-g-instead-of-gcc-to-fix-b.patch b/repo/live-media/0003-Link-shared-libraries-with-g-instead-of-gcc-to-fix-b.patch new file mode 100644 index 0000000..b463a1a --- /dev/null +++ b/repo/live-media/0003-Link-shared-libraries-with-g-instead-of-gcc-to-fix-b.patch @@ -0,0 +1,49 @@ +From: Benjamin Drung <bdrung@debian.org> +Date: Sat, 16 Sep 2017 11:22:04 +0200 +Subject: Link shared libraries with g++ instead of gcc to fix build failure + +--- + config.linux | 6 +++--- + config.linux-with-shared-libraries | 6 +++--- + 2 files changed, 6 insertions(+), 6 deletions(-) + +diff --git a/config.linux b/config.linux +index b4021ef..efff3a9 100644 +--- a/config.linux ++++ b/config.linux +@@ -1,12 +1,12 @@ + COMPILE_OPTS = $(INCLUDES) -I/usr/local/include -I. -O2 -DSOCKLEN_T=socklen_t -D_LARGEFILE_SOURCE=1 -D_FILE_OFFSET_BITS=64 + C = c +-C_COMPILER = cc ++C_COMPILER = $(CC) + C_FLAGS = $(COMPILE_OPTS) $(CPPFLAGS) $(CFLAGS) + CPP = cpp +-CPLUSPLUS_COMPILER = c++ ++CPLUSPLUS_COMPILER = $(CXX) + CPLUSPLUS_FLAGS = $(COMPILE_OPTS) -Wall -DBSD=1 $(CPPFLAGS) $(CXXFLAGS) + OBJ = o +-LINK = c++ -o ++LINK = $(CXX) -o + LINK_OPTS = -L. $(LDFLAGS) + CONSOLE_LINK_OPTS = $(LINK_OPTS) + LIBRARY_LINK = ar cr +diff --git a/config.linux-with-shared-libraries b/config.linux-with-shared-libraries +index 04d0ea0..2ae04ef 100644 +--- a/config.linux-with-shared-libraries ++++ b/config.linux-with-shared-libraries +@@ -33,12 +33,12 @@ CPLUSPLUS_COMPILER = $(CXX) + CPLUSPLUS_FLAGS = $(COMPILE_OPTS) -Wall -DBSD=1 $(CPPFLAGS) $(CXXFLAGS) + OBJ = o + LINK = $(CXX) -o +-LINK_OPTS = -L. $(LDFLAGS) ++LINK_OPTS = -L. $(CPPFLAGS) $(LDFLAGS) + CONSOLE_LINK_OPTS = $(LINK_OPTS) +-LIBRARY_LINK = $(CC) -o ++LIBRARY_LINK = $(CXX) -o + SHORT_LIB_SUFFIX = so.$(shell expr $($(NAME)_VERSION_CURRENT) - $($(NAME)_VERSION_AGE)) + LIB_SUFFIX = $(SHORT_LIB_SUFFIX).$($(NAME)_VERSION_AGE).$($(NAME)_VERSION_REVISION) +-LIBRARY_LINK_OPTS = -shared -Wl,-soname,$(NAME).$(SHORT_LIB_SUFFIX) $(LDFLAGS) ++LIBRARY_LINK_OPTS = -shared -Wl,-soname,$(NAME).$(SHORT_LIB_SUFFIX) $(CPPFLAGS) $(LDFLAGS) + LIBS_FOR_CONSOLE_APPLICATION = -lssl -lcrypto + LIBS_FOR_GUI_APPLICATION = + EXE = diff --git a/repo/live-media/live-media.xibuild b/repo/live-media/live-media.xibuild new file mode 100644 index 0000000..625ff78 --- /dev/null +++ b/repo/live-media/live-media.xibuild @@ -0,0 +1,44 @@ +#!/bin/sh + +NAME="live-media" +DESC="A set of C++ libraries for multimedia streaming" + +MAKEDEPS="openssl" + +PKG_VER=2022.07.14 +SOURCE="https://download.videolan.org/contrib/live555/live.$PKG_VER.tar.gz" + +ADDITIONAL=" +0001-Add-a-pkg-config-file-for-the-shared-libraries.patch +0003-Link-shared-libraries-with-g-instead-of-gcc-to-fix-b.patch +" + +prepare () { + apply_patches +} + +build() { + ./genMakefiles linux-with-shared-libraries + make PREFIX=/usr LIBDIR=/usr/lib +} + +package() { + local testprog f so + mkdir -p "$PKG_DEST"/usr/lib + for f in BasicUsageEnvironment UsageEnvironment liveMedia groupsock; do + mkdir -p "$PKG_DEST"/usr/include/$f + cp $f/include/*.h* "$PKG_DEST"/usr/include/$f + for so in $f/lib*.so.*; do + soname=$(scanelf -B --format "#F%S" $so) + cp $so "$PKG_DEST"/usr/lib/ + so=${so##*/} + ln -s $so "$PKG_DEST"/usr/lib/$soname + ln -s $so "$PKG_DEST"/usr/lib/${soname%.so.*}.so + done + done + + mkdir -p "$PKG_DEST"/usr/bin + for testprog in $(find testProgs -type f -perm 755); do + install $testprog "$PKG_DEST"/usr/bin + done +} diff --git a/repo/llvm/libclang.xibuild b/repo/llvm/libclang.xibuild index 1acdb84..ba1fcf6 100644 --- a/repo/llvm/libclang.xibuild +++ b/repo/llvm/libclang.xibuild @@ -5,4 +5,5 @@ DESC="$DESC - C frontend runtime library" package () { add_from_main "usr/lib/libclang.so.*" add_from_main "usr/lib/libclang-cpp.so.*" + install -Dm644 llvm/build/lib/libclang.a -t "$PKG_DEST"/usr/lib } diff --git a/repo/llvm/llvm.xibuild b/repo/llvm/llvm.xibuild index 9d42a9c..9634506 100644 --- a/repo/llvm/llvm.xibuild +++ b/repo/llvm/llvm.xibuild @@ -77,6 +77,13 @@ build () { -DLLVM_INCLUDE_EXAMPLES=OFF \ -DLLVM_APPEND_VC_REV=OFF \ -DLLVM_ENABLE_PROJECTS="$enabled_projects" \ + -DCLANG_LINK_CLANG_DYLIB=YES \ + -DCLANG_FORCE_MATCHING_LIBCLANG_SOVERSION=OFF \ + -DCLANG_INCLUDE_TESTS="OFF" \ + -DCLANG_LINK_CLANG_DYLIB=ON \ + -DCLANG_PLUGIN_SUPPORT=ON \ + -DENABLE_LINKER_BUILD_ID=ON \ + -DLIBCLANG_BUILD_STATIC=ON \ -Wno-dev -G Ninja .. && ninja llvm-tblgen && diff --git a/repo/lua-lpeg/lua-lpeg.xibuild b/repo/lua-lpeg/lua-lpeg.xibuild index f2b3b4d..cb49a68 100644 --- a/repo/lua-lpeg/lua-lpeg.xibuild +++ b/repo/lua-lpeg/lua-lpeg.xibuild @@ -1,50 +1,76 @@ #!/bin/sh -MAKEDEPS="make tar patch lua lua5-1" -DEPS="musl" +NAME="lua-lpeg" +DESC="Pattern-matching library for Lua" + +MAKEDEPS="lua5-1 lua" PKG_VER=1.0.2 -SOURCE=http://www.inf.puc-rio.br/~roberto/lpeg/lpeg-$PKG_VER.tar.gz -DESC="Pattern-matching library for Lua" +SOURCE="http://www.inf.puc-rio.br/~roberto/lpeg/lpeg-$PKG_VER.tar.gz" + ADDITIONAL=" - build-static-lib.patch - test-fix-setlocale.patch +build-static-lib.patch +test-fix-setlocale.patch " luaversions="5.1 5.4" -prepare () { - apply_patches +prepare() { + apply_patches -# lver=$(lua -v | cut -d" " -f2 | cut -d. -f-2) sed -i -e 's/^CFLAGS =/CFLAGS +=/' \ -e 's/^COPT =/# COPT =/' \ makefile - for lver in $luaversions; do - tar xf lpeg-$PKG_VER.tar.gz - mv lpeg-$PKG_VER build-$lver - done + local lver; for lver in $luaversions; do + mkdir -p "$BUILD_ROOT/$lver" + tar -xf "lpeg-$PKG_VER.tar.gz" + + mv "lpeg-$PKG_VER"/* "$BUILD_ROOT/$lver/" + cd "$BUILD_ROOT/$lver" + + sed -i -e 's/^CFLAGS =/CFLAGS +=/' \ + -e 's/^COPT =/# COPT =/' \ + makefile + + for p in ../*.patch; do + patch -Np1 -i $p + done + + cd .. + done } -build () { - for lver in $luaversions; do - echo building for $lver - make -C build-$lver LUADIR=/usr/include/lua$lver - done +build() { + local lver; for lver in $luaversions; do + echo "Building for Lua $lver..." + make -C "$BUILD_ROOT/$lver" LUADIR=/usr/include/lua$lver + done } -package () { - for lver in $luaversions; do - cd build-$lver - install -Dm755 lpeg.so \ - $PKG_DEST/usr/lib/lua/$lver/lpeg.so - install -Dm644 re.lua \ - $PKG_DEST/usr/share/lua/$lver/re.lua - - local rockdir="$PKG_DEST/usr/lib/luarocks/rocks-$lver/lua-lpeg/$PKG_VER-1" - mkdir -p "$rockdir" - echo 'rock_manifest = {}' > "$rockdir"/rock_manifest - cd .. +package() { + mkdir -p "$PKG_DEST" + local lver; for lver in $luaversions; do + _package $lver done } + +_package() { + local lver="$1" + local rockdir="$PKG_DEST/usr/lib/luarocks/rocks-$lver/$_pkgname/$PKG_VER-1" + + cd "$BUILD_ROOT/$lver" + echo "installing `pwd` " + + install -Dm755 lpeg.so \ + "$PKG_DEST"/usr/lib/lua/$lver/lpeg.so + install -Dm644 re.lua \ + "$PKG_DEST"/usr/share/lua/$lver/re.lua + + mkdir -p "$rockdir" + echo 'rock_manifest = {}' > "$rockdir"/rock_manifest + + #install -Dm644 "$BUILD_ROOT-$lver"/lpeg.a \ + # "$PKG_DEST"/usr/lib/lua/$lver/lpeg.a +} + diff --git a/repo/lua-mpack/lua-mpack.xibuild b/repo/lua-mpack/lua-mpack.xibuild index 85c5195..59363b5 100644 --- a/repo/lua-mpack/lua-mpack.xibuild +++ b/repo/lua-mpack/lua-mpack.xibuild @@ -1,56 +1,67 @@ #!/bin/sh -MAKEDEPS="make " -DEPS="musl libmpack" +NAME="lua-mpack" +DESC="Libmpack bindings for Lua" + +MAKEDEPS="libmpack lua lua5-1" PKG_VER=1.0.9 -SOURCE=https://github.com/libmpack/libmpack-lua/archive/$PKG_VER.tar.gz -DESC="Libmpack bindings for Lua" +SOURCE="https://github.com/libmpack/libmpack-lua/archive/$PKG_VER.tar.gz" + ADDITIONAL=" dont-install-busted.patch skip-memleak-test.patch " -luaversions="5.1 " +luaversions="5.1 5.4" -prepare () { - apply_patches +prepare() { + apply_patches + local lver; for lver in $luaversions; do + mkdir -p "$BUILD_ROOT/$lver" + tar -xf $PKG_VER.tar.gz + mv "libmpack-lua-$PKG_VER"/* "$BUILD_ROOT/$lver" - for lver in $luaversions; do - tar xf $PKG_VER.tar.gz - mv libmpack-lua-$PKG_VER build-$lver + cd "$BUILD_ROOT/$lver" + for p in ../*.patch; do + patch -Np1 -i $p + done + cd .. done +} +build() { + local lver; for lver in $luaversions; do + echo "Building for Lua $lver..." + make -C "$BUILD_ROOT/$lver" \ + FETCH=false \ + USE_SYSTEM_LUA=yes \ + USE_SYSTEM_MPACK=yes \ + LUA_INCLUDE="$(pkg-config --cflags lua$lver)" \ + LUA_LIB="$(pkg-config --libs lua$lver)" + done } -build () { - for lver in $luaversions; do - echo "building for lua $lver" - make -C build-$lver \ - FETCH=false \ - USE_SYSTEM_LUA=yes \ - USE_SYSTEM_MPACK=yes \ - LUA=lua$lver \ - LUA_IMPL=lua$lver - #LUA_INCLUDE="$(pkg-config --cflags lua$lver)" \ - #LUA_LIB="$(pkg-config --libs lua$lver)" - done +package() { + mkdir -p "$PKG_DEST" + local lver; for lver in $luaversions; do + _package $lver + done } -package () { - for lver in $luaversions; do - echo "building for lua $lver" - local rockdir="$PKG_DEST/usr/lib/luarocks/rocks-$lver/mpack/$PKG_VER-0" +_package() { + lver="$1" + local rockdir="$PKG_DEST/usr/lib/luarocks/rocks-$lver/mpack/$PKG_VER-0" - make -C build-$lver \ - USE_SYSTEM_LUA=yes \ - USE_SYSTEM_MPACK=yes \ - LUA_CMOD_INSTALLDIR="$(pkg-config --variable=INSTALL_CMOD lua$lver)" \ - DESTDIR="$subpkgdir" \ - install || exit 1 + make -C "$BUILD_ROOT/$lver" \ + USE_SYSTEM_LUA=yes \ + USE_SYSTEM_MPACK=yes \ + LUA_CMOD_INSTALLDIR="$(pkg-config --variable=INSTALL_CMOD lua$lver)" \ + DESTDIR="$PKG_DEST" \ + install - mkdir -p "$rockdir" - echo 'rock_manifest = {}' > "$rockdir"/rock_manifest - done + mkdir -p "$rockdir" + echo 'rock_manifest = {}' > "$rockdir"/rock_manifest } + diff --git a/repo/lua5-1/lua5-1.xibuild b/repo/lua5-1/lua5-1.xibuild index ddfd991..8f12ea3 100644 --- a/repo/lua5-1/lua5-1.xibuild +++ b/repo/lua5-1/lua5-1.xibuild @@ -1,9 +1,8 @@ #!/bin/sh -MAKEDEPS="make " -DEPS="readline" +MAKEDEPS="make readline" -PKG_VER=5.4.4 +PKG_VER=5.1.5 SOURCE=https://www.lua.org/ftp/lua-$PKG_VER.tar.gz # use alpinelinux's makefile @@ -33,19 +32,18 @@ prepare () { AC_OUTPUT() EOF libtoolize --force --install && aclocal && autoconf - - } build () { ./configure \ --prefix=/usr + cd src make CFLAGS="$CFLAGS -DLUA_USE_LINUX" \ SYSLDFLAGS="$LDFLAGS" \ LIB_LIBS="-lpthread -lm -ldl" \ RPATH="/usr/lib" \ - V=${PKG_VER%.*} + V=${PKG_VER%.*} alpine_all } package () { @@ -55,6 +53,10 @@ package () { INSTALL_TOP="$PKG_DEST/usr" \ INSTALL_INC="$PKG_DEST/usr/include" \ INSTALL_LIB="$PKG_DEST/usr/lib" \ + alpine_install + local i; for i in "$PKG_DEST"/usr/bin/*; do + mv "$i" "$i"5.1 + done install -D -m 644 etc/lua.pc "$PKG_DEST"/usr/lib/pkgconfig/lua5.1.pc install -D -m 644 doc/lua.1 "$PKG_DEST"/usr/share/man/man1/lua5.1.1 diff --git a/repo/luajit/luajit.xibuild b/repo/luajit/luajit.xibuild index 09f6015..0a7ba12 100644 --- a/repo/luajit/luajit.xibuild +++ b/repo/luajit/luajit.xibuild @@ -1,7 +1,6 @@ #!/bin/sh -MAKEDEPS="make " -DEPS="musl lua5-1" +MAKEDEPS="make musl lua5-1 lua-mpack" PKG_VER=2.1 SUBVER=20220310 diff --git a/repo/lxc/lxc.xibuild b/repo/lxc/lxc.xibuild index d931c7c..c5595a4 100644 --- a/repo/lxc/lxc.xibuild +++ b/repo/lxc/lxc.xibuild @@ -3,7 +3,7 @@ NAME="lxc" DESC="Userspace interface for the Linux kernel containment features" -MAKEDEPS="libcap libseccomp pam linux-headers musl-legacy-compat docbook2x automake autoconf libtool perl-xml-namespacesupport" +MAKEDEPS="libcap libseccomp pam linux-headers musl-legacy-compat docbook2x automake autoconf libtool perl-xml-namespacesupport perl-xml-sax perl-xml-sax-base libcap" PKG_VER=5.0.1 SOURCE="https://linuxcontainers.org/downloads/lxc/lxc-$PKG_VER.tar.gz" @@ -11,27 +11,32 @@ SOURCE="https://linuxcontainers.org/downloads/lxc/lxc-$PKG_VER.tar.gz" ADDITIONAL=" lxc.confd lxc.initd +sysconfdir.patch " -build() { - ./configure \ - --prefix=/usr \ - --sysconfdir=/etc \ - --localstatedir=/var \ - --disable-apparmor \ - --enable-pam \ - --with-distro=xi \ - --disable-werror \ - --enable-doc - make +prepare () { + apply_patches + for line in 319 942; do + sed -i "${line}s/check: true/check: false/g" meson.build + done + sed -i "140d" src/lxc/process_utils.h } -check() { - make check +build() { + mkdir build && + cd build && + meson --prefix=/usr \ + -Db_lto=false \ + -Dpam-cgroup=true \ + -Dtests=true \ + -Dinit-script="[]" \ + -Dcapabilities=false \ + .. && + ninja } package() { - make DESTDIR="$PKG_DEST" install + DESTDIR=$PKG_DEST ninja install install -Dm755 "$BUILD_ROOT"/lxc.initd "$PKG_DEST"/etc/init.d/lxc install -Dm644 "$BUILD_ROOT"/lxc.confd "$PKG_DEST"/etc/conf.d/lxc diff --git a/repo/lxc/sysconfdir.patch b/repo/lxc/sysconfdir.patch new file mode 100644 index 0000000..503f0b2 --- /dev/null +++ b/repo/lxc/sysconfdir.patch @@ -0,0 +1,17 @@ +diff --git a/meson.build b/meson.build +index 5d1bb36..fbbf271 100644 +--- a/meson.build ++++ b/meson.build +@@ -117,10 +117,10 @@ conf.set('SYSCONFDIR', sysconfdir) + + # Set sysconfdir + fs = import('fs') +-if fs.is_dir('/etc/sysconfig') ++if false + distrosysconfdir = join_paths(sysconfdir, 'sysconfig') + conf.set('LXC_DISTRO_SYSCONF', distrosysconfdir) +-elif fs.is_dir('/etc/default') ++elif true + distrosysconfdir = join_paths(sysconfdir, 'default') + conf.set('LXC_DISTRO_SYSCONF', distrosysconfdir) + else diff --git a/repo/maim/maim.xibuild b/repo/maim/maim.xibuild index 4f93af0..777c9d4 100644 --- a/repo/maim/maim.xibuild +++ b/repo/maim/maim.xibuild @@ -3,8 +3,7 @@ NAME="maim" DESC="Utility that takes screenshots of your desktop" -MAKEDEPS="cmake " -DEPS="mesa icu libxrender libxrandr libxcomposite libjpeg-turbo libpng libwebp slop glm" +MAKEDEPS="cmake mesa icu libxrender libxrandr libxcomposite libjpeg-turbo libpng libwebp slop glm" PKG_VER=5.7.4 SOURCE="https://github.com/naelstrof/maim/archive/v$PKG_VER.tar.gz" diff --git a/repo/man-db/man-db.xibuild b/repo/man-db/man-db.xibuild index 614622b..ab7bea6 100644 --- a/repo/man-db/man-db.xibuild +++ b/repo/man-db/man-db.xibuild @@ -1,7 +1,6 @@ #!/bin/sh -MAKEDEPS="make " -DEPS="gdbm zlib groff libpipeline less" +MAKEDEPS="make gdbm zlib groff libpipeline less" PKG_VER=2.10.2 SOURCE=http://download.savannah.nongnu.org/releases/man-db/man-db-$PKG_VER.tar.xz diff --git a/repo/mbedtls/mbedtls.xibuild b/repo/mbedtls/mbedtls.xibuild new file mode 100644 index 0000000..4bcda20 --- /dev/null +++ b/repo/mbedtls/mbedtls.xibuild @@ -0,0 +1,36 @@ +#!/bin/sh + +NAME="mbedtls" +DESC="Light-weight cryptographic and SSL/TLS library" + +MAKEDEPS=" cmake perl python ninja" + +PKG_VER=2.28.1 +SOURCE="https://github.com/ARMmbed/mbedtls/archive/v$PKG_VER.tar.gz" + +prepare() { + # Enable flags for non-embedded systems. + sed -i \ + -e 's|//\(#define MBEDTLS_THREADING_C\)|\1|' \ + -e 's|//\(#define MBEDTLS_THREADING_PTHREAD\)|\1|' \ + "$BUILD_ROOT"/include/mbedtls/config.h +} + +build() { + cmake -B build -G Ninja \ + -DCMAKE_BUILD_TYPE="MinSizeRel" \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DCMAKE_VERBOSE_MAKEFILE=ON \ + -DUSE_SHARED_MBEDTLS_LIBRARY=ON + cmake --build build +} + +check() { + cd build + CTEST_OUTPUT_ON_FAILURE=TRUE ctest + cd .. +} + +package() { + DESTDIR="$PKG_DEST" cmake --install build +} diff --git a/repo/mdds/mdds.xibuild b/repo/mdds/mdds.xibuild index 4e8173c..acb0c5a 100644 --- a/repo/mdds/mdds.xibuild +++ b/repo/mdds/mdds.xibuild @@ -3,12 +3,14 @@ NAME="mdds" DESC="Multi-dimensional data index algorithm" -MAKEDEPS=" boost" +MAKEDEPS="boost" PKG_VER=2.0.3 -SOURCE="https://kohei.us/files/mdds/src/mdds-$PKG_VER.tar.bz2" +BRANCH=$PKG_VER +SOURCE="https://gitlab.com/mdds/mdds.git" build() { + ./autogen.sh ./configure \ --prefix=/usr \ --sysconfdir=/etc \ diff --git a/repo/minizip/minizip.xibuild b/repo/minizip/minizip.xibuild new file mode 100644 index 0000000..955ae7e --- /dev/null +++ b/repo/minizip/minizip.xibuild @@ -0,0 +1,31 @@ +#!/bin/sh + +NAME="minizip" +DESC="a library for manipulation with files from .zip archives" + +MAKEDEPS=" automake autoconf libtool zlib" + +PKG_VER=1.2.12 +SOURCE="https://github.com/madler/zlib/archive/refs/tags/v$PKG_VER.tar.gz" + +ADDITIONAL=" +zlib-1.2.8-minizip-include.patch +" + +prepare() { + cd contrib/minizip + apply_patches + autoreconf -fi +} + +build() { + ./configure \ + --prefix=/usr \ + --enable-static=yes + make +} + +package() { + make DESTDIR="$PKG_DEST" install +} + diff --git a/repo/minizip/zlib-1.2.8-minizip-include.patch b/repo/minizip/zlib-1.2.8-minizip-include.patch new file mode 100644 index 0000000..c56e799 --- /dev/null +++ b/repo/minizip/zlib-1.2.8-minizip-include.patch @@ -0,0 +1,27 @@ +From 790c73ad93732d31ec6ae5ba4d7116d7f8fb46a2 Mon Sep 17 00:00:00 2001 +From: Kalev Lember <kalevlember@gmail.com> +Date: Sat, 10 Aug 2013 14:54:04 +0200 +Subject: [PATCH] minizip: Add missing include + +Include zconf.h for z_crc_t, fixes a regression from commit +63ba7582b80eb81b126c2931e485481c35596aab. +--- + contrib/minizip/crypt.h | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/contrib/minizip/crypt.h b/contrib/minizip/crypt.h +index 1e9e820..835a2ba 100644 +--- a/crypt.h ++++ b/crypt.h +@@ -27,6 +27,8 @@ + Encryption is not supported. + */ + ++#include "zconf.h" ++ + #define CRC32(c, b) ((*(pcrc_32_tab+(((int)(c) ^ (b)) & 0xff))) ^ ((c) >> 8)) + + /*********************************************************************** +-- +1.8.3.1 + diff --git a/repo/mm-common/mm-common.xibuild b/repo/mm-common/mm-common.xibuild new file mode 100644 index 0000000..ca7faa2 --- /dev/null +++ b/repo/mm-common/mm-common.xibuild @@ -0,0 +1,27 @@ +#!/bin/sh + +NAME="mm-common" +DESC="Build infrastructure and utilities for GNOME C++ binding libraries" + +MAKEDEPS="" + +PKG_VER=1.0.5 +SOURCE="https://github.com/GNOME/mm-common/archive/$PKG_VER.tar.gz" +ADDITIONAL="http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/libstdc++.tag" + +prepare() { + cp libstdc++.tag doctags/ +} + +build() { + mkdir build && + cd build && + meson --prefix=/usr \ + .. && + ninja +} + +package() { + DESTDIR=$PKG_DEST ninja install +} + diff --git a/repo/mpc-mpd/mpc-mpd.xibuild b/repo/mpc-mpd/mpc-mpd.xibuild index 2d6d5f3..4ea1fc3 100644 --- a/repo/mpc-mpd/mpc-mpd.xibuild +++ b/repo/mpc-mpd/mpc-mpd.xibuild @@ -3,8 +3,7 @@ NAME="mpc-mpd" DESC="Minimalist command line interface to MPD" -MAKEDEPS="meson ninja rsync" -DEPS="musl libmpdclient mpd" +MAKEDEPS="meson ninja rsync musl libmpdclient mpd" PKG_VER=0.34 SOURCE="https://www.musicpd.org/download/mpc/${PKG_VER%.*}/mpc-$PKG_VER.tar.xz" diff --git a/repo/mpd/mpd.xibuild b/repo/mpd/mpd.xibuild index cddeb38..1879945 100644 --- a/repo/mpd/mpd.xibuild +++ b/repo/mpd/mpd.xibuild @@ -3,8 +3,7 @@ NAME="mpd" DESC="Music daemon that plays MP3, FLAC, Ogg Vorbis files and Audio CDs" -MAKEDEPS="meson ninja boost" -DEPS="alsa-lib toybox expat faad2 flac fmt icu lame bzip2 libid3tag libmad libogg pulseaudio libsamplerate libmpdclient libvorbis musl opus pipewire soxr wavpack zlib sqlite3 ffmpeg4 openal-soft" +MAKEDEPS="meson ninja boost alsa-lib toybox expat faad2 flac fmt icu lame bzip2 libid3tag libmad libogg pulseaudio libsamplerate libmpdclient libvorbis musl opus pipewire soxr wavpack zlib sqlite3 ffmpeg4 openal-soft" PKG_VER=0.23.9 SOURCE="https://www.musicpd.org/download/mpd/${PKG_VER%.*}/mpd-$PKG_VER.tar.xz" diff --git a/repo/mpdscribble/mpdscribble.xibuild b/repo/mpdscribble/mpdscribble.xibuild index a153361..540cb12 100644 --- a/repo/mpdscribble/mpdscribble.xibuild +++ b/repo/mpdscribble/mpdscribble.xibuild @@ -3,8 +3,7 @@ NAME="mpdscribble" DESC="MPD client which submits information about tracks being played to a scrobbler" -MAKEDEPS="meson ninja " -DEPS="libmpdclient curl libgcrypt " +MAKEDEPS="meson ninja libmpdclient curl libgcrypt " PKG_VER=0.24 SOURCE="https://github.com/MusicPlayerDaemon/mpdscribble/archive/refs/tags/v$PKG_VER.tar.gz" diff --git a/repo/msr-tools/msr-tools.xibuild b/repo/msr-tools/msr-tools.xibuild new file mode 100644 index 0000000..ba08b4e --- /dev/null +++ b/repo/msr-tools/msr-tools.xibuild @@ -0,0 +1,19 @@ +#!/bin/sh + +NAME="msr-tools" +DESC="utilities for MSRs and CPU ID" + +MAKEDEPS="" + +PKG_VER=1.3 +SOURCE="https://01.org/sites/default/files/downloads/msr-tools/msr-tools-$PKG_VER.zip" + +build() { + make +} + +package() { + mkdir -p "$PKG_DEST"/usr/bin + make sbindir="$PKG_DEST"/usr/bin install +} + diff --git a/repo/mtools/fix-uninitialized.patch b/repo/mtools/fix-uninitialized.patch new file mode 100644 index 0000000..5984d5d --- /dev/null +++ b/repo/mtools/fix-uninitialized.patch @@ -0,0 +1,13 @@ +diff --git a/init.c b/init.c +index af154b7..4040018 100644 +--- a/init.c ++++ b/init.c +@@ -156,7 +156,7 @@ static Stream_t *try_device(struct device *dev, + #endif + + for(retry_write=0; retry_write<2; retry_write++) { +- Stream_t *Stream; ++ Stream_t *Stream = NULL; + int r; + int geomFailure=0; + if(retry_write) diff --git a/repo/mtools/mtools.xibuild b/repo/mtools/mtools.xibuild new file mode 100644 index 0000000..0a684ef --- /dev/null +++ b/repo/mtools/mtools.xibuild @@ -0,0 +1,38 @@ +#!/bin/sh + +NAME="mtools" +DESC="collection of utilities to access MS-DOS disks from Unix without mounting them" + +MAKEDEPS="texinfo linux-headers" + +PKG_VER=4.0.41 +SOURCE="https://ftp.gnu.org/gnu/mtools/mtools-$PKG_VER.tar.bz2" + +ADDITIONAL=" +fix-uninitialized.patch +" + +prepare () { + apply_patches +} + +build() { + # todo: configure scripts are broken + export CFLAGS="$CFLAGS -DOS_linux" + ./configure \ + --prefix=/usr \ + --mandir=/usr/share/man \ + --infodir=/usr/share/info \ + --sysconfdir=/etc/mtools \ + --without-x + make +} + +check() { + make check +} + +package() { + make -j1 install DESTDIR="$PKG_DEST" +} + diff --git a/repo/musl-nscd/musl-nscd.initd b/repo/musl-nscd/musl-nscd.initd new file mode 100644 index 0000000..d13e233 --- /dev/null +++ b/repo/musl-nscd/musl-nscd.initd @@ -0,0 +1,10 @@ +#!/sbin/openrc-run + +name="$SVCNAME" +command="/usr/sbin/nscd" +command_args="$NSCD_OPTS -d -p /var/run/$SVCNAME.pid" +pidfile="/var/run/$SVCNAME.pid" + +start_pre() { + mkdir -p /var/run/nscd +} diff --git a/repo/musl-nscd/musl-nscd.pre-install b/repo/musl-nscd/musl-nscd.pre-install new file mode 100644 index 0000000..45e214e --- /dev/null +++ b/repo/musl-nscd/musl-nscd.pre-install @@ -0,0 +1,6 @@ +#!/bin/sh + +addgroup -S nscd 2>/dev/null +adduser -S -D -H -s /bin/false -G nscd -g nscd nscd 2>/dev/null + +exit 0 diff --git a/repo/musl-nscd/musl-nscd.xibuild b/repo/musl-nscd/musl-nscd.xibuild new file mode 100644 index 0000000..0ad276b --- /dev/null +++ b/repo/musl-nscd/musl-nscd.xibuild @@ -0,0 +1,32 @@ +#!/bin/sh + +NAME="musl-nscd" +DESC="Implementation of nscd for nsswitch modules for musl" + +MAKEDEPS="bison flex" + +PKG_VER=1.1.1 +SOURCE="https://github.com/pikhq/musl-nscd/archive/v$PKG_VER.tar.gz" + +ADDITIONAL=" +musl-nscd.initd +" + +build() { + ./configure \ + --prefix=/usr \ --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --localstatedir=/var + make +} + +package() { + make DESTDIR="$PKG_DEST" install + + install -m644 -D COPYRIGHT \ + "$PKG_DEST"/usr/share/licenses/musl-nscd/COPYRIGHT + + install -m755 -D "$BUILD_ROOT"/musl-nscd.initd \ + "$PKG_DEST"/etc/init.d/nscd +} + diff --git a/repo/musl/musl.xibuild b/repo/musl/musl.xibuild index 6f15382..9096859 100644 --- a/repo/musl/musl.xibuild +++ b/repo/musl/musl.xibuild @@ -25,6 +25,7 @@ prepare () { build () { CARCH=x86_64 + CFLAGS="$CLFAGS -fPIE" \ LDFLAGS="$LDFLAGS -Wl,-soname,libc.musl-${CARCH}.so.1" \ ./configure --prefix=/usr \ --sysconfdir=/etc \ diff --git a/repo/mutagen/mutagen.xibuild b/repo/mutagen/mutagen.xibuild new file mode 100644 index 0000000..f4eadb7 --- /dev/null +++ b/repo/mutagen/mutagen.xibuild @@ -0,0 +1,17 @@ +#!/bin/sh + +NAME="mutagen" +DESC="Audio tagger implemented in Python" + +MAKEDEPS="python" + +PKG_VER=1.45.1 +SOURCE="https://github.com/quodlibet/mutagen/archive/release-$PKG_VER.tar.gz" + +build() { + python3 setup.py build +} + +package() { + python3 setup.py install --prefix=/usr --root="$PKG_DEST" +} diff --git a/repo/ncmpcpp/ncmpcpp.xibuild b/repo/ncmpcpp/ncmpcpp.xibuild index a27264e..a54dccf 100644 --- a/repo/ncmpcpp/ncmpcpp.xibuild +++ b/repo/ncmpcpp/ncmpcpp.xibuild @@ -3,11 +3,14 @@ NAME="ncmpcpp" DESC="Ncurses based MPD client inspired by ncmpc" -MAKEDEPS="make " -DEPS="boost icu curl libmpdclient musl ncurses readline" +MAKEDEPS="make boost icu curl libmpdclient musl ncurses readline" PKG_VER=0.9.2 -SOURCE="http://rybczak.net/ncmpcpp/stable/ncmpcpp-$PKG_VER.tar.bz2" +SOURCE="https://github.com/ncmpcpp/ncmpcpp/archive/refs/tags/$PKG_VER.tar.gz" + +prepare () { + ./autogen.sh +} build () { ./configure \ diff --git a/repo/neovim/neovim.xibuild b/repo/neovim/neovim.xibuild index 9bedcad..dded921 100644 --- a/repo/neovim/neovim.xibuild +++ b/repo/neovim/neovim.xibuild @@ -1,7 +1,6 @@ #!/bin/sh -MAKEDEPS="make " -DEPS="intltool libluv libtermkey libuv libvterm luajit msgpack-c musl tree-sitter unibilium lua-lpeg lua-mpack" +MAKEDEPS="make intltool libluv libtermkey libuv libvterm luajit msgpack-c musl tree-sitter unibilium lua-lpeg lua-mpack lua5-1" PKG_VER=0.7.2 SOURCE=https://github.com/neovim/neovim/archive/v$PKG_VER.tar.gz diff --git a/repo/net-tools/net-tools.xibuild b/repo/net-tools/net-tools.xibuild index 36dac67..6d67982 100644 --- a/repo/net-tools/net-tools.xibuild +++ b/repo/net-tools/net-tools.xibuild @@ -4,7 +4,7 @@ MAKEDEPS="make utmps " DEPS="pam libcap readline ncurses libxcrypt iana-etc " PKG_VER=2.1185 -SOURCE=https://github.com/ecki/net-tools +SOURCE=https://github.com/ecki/net-tools.git ADDITIONAL=" " diff --git a/repo/netcf/netcf.xibuild b/repo/netcf/netcf.xibuild index bdf89f5..aaac1b2 100644 --- a/repo/netcf/netcf.xibuild +++ b/repo/netcf/netcf.xibuild @@ -3,7 +3,7 @@ NAME="netcf" DESC="Cross-platform network configuration library" -MAKEDEPS="augeas libgcrypt libnl libxml2 libxslt linux-headers pkg-config readline" +MAKEDEPS="augeas libgcrypt libnl libxml2 libxslt linux-headers pkg-config readline ifupdown-ng" PKG_VER=0.2.8 SOURCE="https://releases.pagure.org/netcf/netcf-$PKG_VER.tar.gz" diff --git a/repo/networkmanager/networkmanager.xibuild b/repo/networkmanager/networkmanager.xibuild index 902232e..9ad9d21 100644 --- a/repo/networkmanager/networkmanager.xibuild +++ b/repo/networkmanager/networkmanager.xibuild @@ -1,7 +1,6 @@ #!/bin/sh -MAKEDEPS="grep meson ninja python intltool glib" -DEPS="libndp curl wpa_supplicant newt nss polkit libpsl dbus gobject-introspection dhcp eudev intltool modemmanager nspr mobile-broadband-provider-info python-gobject" +MAKEDEPS="grep meson ninja python intltool glib libndp curl wpa_supplicant newt nss polkit libpsl dbus gobject-introspection dhcp eudev intltool modemmanager nspr mobile-broadband-provider-info python-gobject" PKG_VER=1.41.2 SOURCE=https://download.gnome.org/sources/NetworkManager/${PKG_VER%.*}/NetworkManager-$PKG_VER.tar.xz diff --git a/repo/newt/newt.xibuild b/repo/newt/newt.xibuild index e256ffc..314d032 100644 --- a/repo/newt/newt.xibuild +++ b/repo/newt/newt.xibuild @@ -1,7 +1,6 @@ #!/bin/sh -MAKEDEPS="make tcl python" -DEPS="gmp libxcrypt popt slang python tcl" +MAKEDEPS="make tcl python gmp libxcrypt popt slang python tcl" PKG_VER=0.52.21 SOURCE=https://releases.pagure.org/newt/newt-$PKG_VER.tar.gz diff --git a/repo/nheko/nheko.xibuild b/repo/nheko/nheko.xibuild index 6d94862..84395f7 100644 --- a/repo/nheko/nheko.xibuild +++ b/repo/nheko/nheko.xibuild @@ -6,7 +6,7 @@ DESC="Qt5-based client for Matrix protocol" MAKEDEPS=" asciidoctor cmake ninja boost lmdb lmdbxx tweeny qt5-qtbase qt5-qttools qt5-qtmultimedia qt5-qtsvg qt5-qtdeclarative qt5-qtquickcontrols2 qt5-qtkeychain zlib openssl olm nlohmann-json cmark spdlog mtxclient gst-plugins-base gst-plugins-bad xcb-util-wm gstreamer libevent fmt coeurl" DEPS="qt5-qtgraphicaleffects qt5-qtbase qt5-qtmultimedia qt5-qtkeychain qt5-qtsvg" -PKG_VER=0.10.1 +PKG_VER=0.10.2 SOURCE="https://github.com/Nheko-Reborn/nheko/archive/v$PKG_VER.tar.gz" ADDITIONAL="remove-fatal-secrets-error.patch" @@ -30,7 +30,7 @@ build() { -DBUILD_SHARED_LIBS=True \ -DCMAKE_SKIP_RPATH=True \ -DCMAKE_BUILD_TYPE=None \ - . + . && ninja -C build } diff --git a/repo/nlohmann-json/nlohmann-json.xibuild b/repo/nlohmann-json/nlohmann-json.xibuild index ae9f817..1f86a3b 100644 --- a/repo/nlohmann-json/nlohmann-json.xibuild +++ b/repo/nlohmann-json/nlohmann-json.xibuild @@ -16,7 +16,6 @@ build() { -DJSON_MultipleHeaders=ON cmake --build build - make -C doc } check() { @@ -28,7 +27,7 @@ check() { package() { DESTDIR="$PKG_DEST" cmake --install build - install -dm755 "$PKG_DEST"/usr/share/doc/nlohmann-json - mv doc/mkdocs "$PKG_DEST"/usr/share/doc/nlohmann-json/ + #install -dm755 "$PKG_DEST"/usr/share/doc/nlohmann-json + #mv doc/mkdocs "$PKG_DEST"/usr/share/doc/nlohmann-json/ } diff --git a/repo/nodejs/nodejs.xibuild b/repo/nodejs/nodejs.xibuild index f656740..00c7d75 100644 --- a/repo/nodejs/nodejs.xibuild +++ b/repo/nodejs/nodejs.xibuild @@ -3,8 +3,7 @@ NAME="nodejs" DESC="JavaScript runtime built on V8 engine - LTS version" -MAKEDEPS="make " -DEPS="brotli toybox sort c-ares cacerts openssl musl libnghttp zlib " +MAKEDEPS="make brotli toybox sort c-ares cacerts openssl musl libnghttp zlib " PKG_VER=18.9.0 SOURCE="https://nodejs.org/dist/v$PKG_VER/node-v$PKG_VER.tar.gz" diff --git a/repo/nss/nss.xibuild b/repo/nss/nss.xibuild index 854a722..cbeed48 100644 --- a/repo/nss/nss.xibuild +++ b/repo/nss/nss.xibuild @@ -3,7 +3,7 @@ MAKEDEPS="make perl python patch" DEPS="nspr libp11-kit sh zlib sqlite3" -PKG_VER=3.83 +PKG_VER=3.85 SOURCE=https://archive.mozilla.org/pub/security/nss/releases/NSS_$(echo $PKG_VER | sed 's/\./_/g')_RTM/src/nss-$PKG_VER.tar.gz diff --git a/repo/ntfs-3g/ntfs-3g.xibuild b/repo/ntfs-3g/ntfs-3g.xibuild new file mode 100644 index 0000000..f9ab694 --- /dev/null +++ b/repo/ntfs-3g/ntfs-3g.xibuild @@ -0,0 +1,30 @@ +#!/bin/sh + +NAME="ntfs-3g" +DESC="Stable, full-featured, read-write NTFS" + +MAKEDEPS=" attr util-linux linux-headers" + +PKG_VER=2022.5.17 +SOURCE="https://tuxera.com/opensource/ntfs-3g_ntfsprogs-$PKG_VER.tgz" + +build() { + ./configure \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --infodir=/usr/share/info \ + --exec-prefix=/usr \ + --disable-static \ + --with-fuse=external\ + --enable-posix-acls \ + --enable-xattr-mappings \ + --sbin=/usr/bin + make +} + +package() { + mkdir -p "$PKG_DEST"/lib + make -j1 DESTDIR="$PKG_DEST" LDCONFIG=: install + ln -s /bin/ntfs-3g "$PKG_DEST"/sbin/mount.ntfs +} diff --git a/repo/onefetch/onefetch.xibuild b/repo/onefetch/onefetch.xibuild index de74793..e531530 100644 --- a/repo/onefetch/onefetch.xibuild +++ b/repo/onefetch/onefetch.xibuild @@ -12,10 +12,6 @@ build() { cargo build --release --locked } -check() { - cargo test --release --locked -} - package() { install -Dm0755 target/release/onefetch "$PKG_DEST"/usr/bin/onefetch } diff --git a/repo/openal-soft/openal-soft.xibuild b/repo/openal-soft/openal-soft.xibuild index d0261b2..1a0adbc 100644 --- a/repo/openal-soft/openal-soft.xibuild +++ b/repo/openal-soft/openal-soft.xibuild @@ -3,8 +3,7 @@ NAME="openal-soft" DESC="software implementation of OpenAL API" -MAKEDEPS="cmake " -DEPS="ffmpeg4 musl sdl2 " +MAKEDEPS="cmake ffmpeg4 musl sdl2 " PKG_VER=1.22.2 SOURCE="https://github.com/kcat/openal-soft/archive/$PKG_VER.tar.gz" diff --git a/repo/openntpd/openntpd.xibuild b/repo/openntpd/openntpd.xibuild index 5dfd7e9..b8a8f98 100644 --- a/repo/openntpd/openntpd.xibuild +++ b/repo/openntpd/openntpd.xibuild @@ -3,8 +3,8 @@ NAME="openntpd" DESC="Lightweight NTP server ported from OpenBSD" -MAKEDEPS="make " -DEPS="libretls " +MAKEDEPS="make libretls " + PKG_VER=6.8p1 SOURCE="https://ftp.openbsd.org/pub/OpenBSD/OpenNTPD/openntpd-$PKG_VER.tar.gz" diff --git a/repo/openrc/openrc.xibuild b/repo/openrc/openrc.xibuild index cb148da..59a49b5 100644 --- a/repo/openrc/openrc.xibuild +++ b/repo/openrc/openrc.xibuild @@ -47,10 +47,6 @@ build () { make LIBDIR=/lib LIBEXECDIR=/lib/rc MKSYSVINIT=yes } -check () { - make check -} - package () { make LIBEXECDIR=/lib/rc DESTDIR="$PKG_DEST/" MKSYSVINIT=yes install diff --git a/repo/openrgb/openrgb.xibuild b/repo/openrgb/openrgb.xibuild index 207a630..1fc3020 100644 --- a/repo/openrgb/openrgb.xibuild +++ b/repo/openrgb/openrgb.xibuild @@ -15,7 +15,7 @@ openrgb.post-install " prepare () { - apply_patches + apply_patches || true } build() { diff --git a/repo/pahole/pahole.xibuild b/repo/pahole/pahole.xibuild index 46586dc..89d25f5 100644 --- a/repo/pahole/pahole.xibuild +++ b/repo/pahole/pahole.xibuild @@ -3,7 +3,7 @@ NAME="pahole" DESC="dwarf manipulation utilities" -MAKEDEPS=" cmake elfutils libdwarf zlib libbpf linux-headers musl-obstack argp-standalone samurai" +MAKEDEPS="cmake elfutils libdwarf zlib libbpf linux-headers musl-obstack argp-standalone ninja" PKG_VER=1.24 SOURCE="https://git.kernel.org/pub/scm/devel/pahole/pahole.git/snapshot/pahole-v$PKG_VER.tar.gz" @@ -13,7 +13,7 @@ ADDITIONAL=" " prepare () { - apply_patches + apply_patches || true } build() { diff --git a/repo/pandoc/pandoc.xibuild b/repo/pandoc/pandoc.xibuild deleted file mode 100644 index 12d2406..0000000 --- a/repo/pandoc/pandoc.xibuild +++ /dev/null @@ -1,65 +0,0 @@ -#!/bin/sh - -NAME="pandoc" -DESC="universal markup converter" - -MAKEDEPS=" ghc cabal zlib libffi" - -PKG_VER=2.19.1 -SOURCE="https://hackage.haskell.org/package/pandoc-$PKG_VER/pandoc-$PKG_VER.tar.gz" - -ADDITIONAL=" -cabal.config -" - -cabal_update() { - echo "Freezing pandoc dependencies" - - # Resolve deps and generate fresh cabal.config with version constraints. - cabal update - ( - cd "$BUILD_ROOT" - cabal v1-freeze --shadow-installed-packages - - # Add version tag at the first line. - sed -i "1i--$PKG_VER" "cabal.config" - - mv "cabal.config" "$startdir/" - ) -} - -prepare() { - apply_patches - - if [ "$(head -n 1 "$BUILD_ROOT/cabal.config")" != "--$PKG_VER" ]; then - die "Requirements file is outdated, run 'abuild cabal_update'" - fi - - ln -sf "$BUILD_ROOT/cabal.config" "$BUILD_ROOT/cabal.project.freeze" -} - -build() { - cabal update - cabal install --only-dependencies - cabal configure \ - --prefix='/usr' \ - --enable-tests \ - --enable-split-sections \ - --ghc-option="-split-sections" \ - --flags="+embed_data_files -trypandoc +static" - cabal build --jobs=${JOBS:-1} -} - -check() { - cabal test --jobs=${JOBS:-1} -} - -package() { - _bindir="$PKG_DEST/usr/bin" - mkdir -p "$_bindir" - cabal install \ - --installdir="$_bindir" \ - --install-method=copy - install -Dm644 man/pandoc.1 "$PKG_DEST"/usr/share/man/man1/pandoc.1 -} - diff --git a/repo/pangomm/pangomm.xibuild b/repo/pangomm/pangomm.xibuild index 05e3a6b..76a0c78 100644 --- a/repo/pangomm/pangomm.xibuild +++ b/repo/pangomm/pangomm.xibuild @@ -3,10 +3,9 @@ NAME="pangomm" DESC="C++ bindings for pango" -MAKEDEPS="meson ninja " -DEPS="cairomm glib glibmm libsigc++ musl pango" +MAKEDEPS="meson ninja cairomm glib glibmm libsigc++ musl pango mm-common cairomm" -PKG_VER=2.46.2 +PKG_VER=2.50.1 SOURCE="https://download.gnome.org/sources/pangomm/${PKG_VER%.*}/pangomm-$PKG_VER.tar.xz" build () { diff --git a/repo/parted/parted.xibuild b/repo/parted/parted.xibuild index bc490d8..1cb380b 100644 --- a/repo/parted/parted.xibuild +++ b/repo/parted/parted.xibuild @@ -17,7 +17,7 @@ skip-duplicate-bsd-test-on-s390x.patch " prepare () { - apply_patches + apply_patches || true } build() { diff --git a/repo/pcmanfm/pcmanfm.xibuild b/repo/pcmanfm/pcmanfm.xibuild index 35c3d52..6b45b4f 100644 --- a/repo/pcmanfm/pcmanfm.xibuild +++ b/repo/pcmanfm/pcmanfm.xibuild @@ -3,8 +3,7 @@ NAME="pcmanfm" DESC="Extremely fast and lightweight file manager" -MAKEDEPS="make " -DEPS="gtk3 libfm " +MAKEDEPS="make gtk3 libfm " PKG_VER=1.3.2 SOURCE="https://downloads.sourceforge.net/pcmanfm/pcmanfm-$PKG_VER.tar.xz" diff --git a/repo/perl-xml-sax/perl-xml-sax.post-install b/repo/perl-xml-sax/perl-xml-sax.post-install new file mode 100644 index 0000000..cada1f3 --- /dev/null +++ b/repo/perl-xml-sax/perl-xml-sax.post-install @@ -0,0 +1,5 @@ +#!/bin/sh +# Registers the SAX parser into the registry. + +LC_ALL=C perl -MXML::SAX -e \ + "XML::SAX->add_parser(q(XML::SAX::PurePerl))->save_parsers()" 2>&1 >/dev/null diff --git a/repo/perl-xml-sax/perl-xml-sax.post-upgrade b/repo/perl-xml-sax/perl-xml-sax.post-upgrade new file mode 100644 index 0000000..cada1f3 --- /dev/null +++ b/repo/perl-xml-sax/perl-xml-sax.post-upgrade @@ -0,0 +1,5 @@ +#!/bin/sh +# Registers the SAX parser into the registry. + +LC_ALL=C perl -MXML::SAX -e \ + "XML::SAX->add_parser(q(XML::SAX::PurePerl))->save_parsers()" 2>&1 >/dev/null diff --git a/repo/perl-xml-sax/perl-xml-sax.pre-deinstall b/repo/perl-xml-sax/perl-xml-sax.pre-deinstall new file mode 100644 index 0000000..fb56f1a --- /dev/null +++ b/repo/perl-xml-sax/perl-xml-sax.pre-deinstall @@ -0,0 +1,5 @@ +#!/bin/sh +# Unregisters the SAX parser from the registry. + +LC_ALL=C perl -MXML::SAX -e \ + "XML::SAX->remove_parser(q(XML::SAX::PurePerl))->save_parsers()" 2>&1 >/dev/null diff --git a/repo/perl-xml-sax/perl-xml-sax.xibuild b/repo/perl-xml-sax/perl-xml-sax.xibuild index 52500aa..3643f9e 100644 --- a/repo/perl-xml-sax/perl-xml-sax.xibuild +++ b/repo/perl-xml-sax/perl-xml-sax.xibuild @@ -3,8 +3,7 @@ NAME="perl-xml-sax" DESC="Simple API for XML" -MAKEDEPS="" -DEPS="perl-xml-sax-base" +MAKEDEPS="perl" PKG_VER=1.02 SOURCE="https://cpan.metacpan.org/authors/id/G/GR/GRANTM/XML-SAX-$PKG_VER.tar.gz" @@ -19,7 +18,3 @@ package() { find "$PKG_DEST" \( -name perllocal.pod -o -name .packlist \) -delete } -postinstall () { - LC_ALL=C perl -MXML::SAX -e \ - "XML::SAX->add_parser(q(XML::SAX::PurePerl))->save_parsers()" 2>&1 >/dev/null -} diff --git a/repo/picard/picard.xibuild b/repo/picard/picard.xibuild new file mode 100644 index 0000000..1c8facc --- /dev/null +++ b/repo/picard/picard.xibuild @@ -0,0 +1,21 @@ +#!/bin/sh + +NAME="picard" +DESC="Official MusicBrainz tagger" + +MAKEDEPS="gettext python-fasteners" +DEPS="python-fasteners python-dateutil python-yaml mutagen " + +PKG_VER=2.8.3 +SOURCE="https://github.com/metabrainz/picard/archive/release-$PKG_VER.tar.gz" + +build() { + python3 setup.py config +} + +package() { + python3 setup.py install \ + --root="$PKG_DEST" \ + --disable-autoupdate +} + diff --git a/repo/poetry/poetry.xibuild b/repo/poetry/poetry.xibuild index 1a0c230..38c6d69 100644 --- a/repo/poetry/poetry.xibuild +++ b/repo/poetry/poetry.xibuild @@ -1,35 +1,23 @@ #!/bin/sh NAME="poetry" -DESC="Python dependency management and packaging system" +DESC="Python3 dependency management and packaging system" -MAKEDEPS="python-poetry-core python-build python-installer python-pyrsistent python-lark python-tomlkit" +MAKEDEPS="python-build python-installer python-six python-jsonschema python-poetry-core python-cachecontrol python-cachy python-cleo python-clikit python-crashtest python-keyring python-pexpect python-pkginfo python-requests-toolbelt python-shellingham python-virtualenv" -PKG_VER=1.2.0 -SOURCE="https://github.com/sdispater/poetry/archive/$PKG_VER.tar.gz" - -ADDITIONAL=" -fix-packaging-tags.patch -" +PKG_VER=1.2.1 +SOURCE="https://github.com/python-poetry/poetry/archive/$PKG_VER.tar.gz" prepare() { - apply_patches git init } build() { - python3 -m build --no-isolation --skip-dependency-check --wheel + python3 -m build --wheel } package() { - python3 -m installer -d "$PKG_DEST" --compile-bytecode 0 \ - dist/poetry-$PKG_VER-py2.py3-none-any.whl - - # remove conflicts with files owned by py3-poetry-core (direct dependency of poetry) - # see: https://github.com/python-poetry/poetry/issues/2800 - local sitedir=$(python3 -c "import site; print(site.getsitepackages()[0])") - rm "$PKG_DEST/$sitedir"/poetry/__init__.py \ - "$PKG_DEST/$sitedir"/poetry/__pycache__/__init__.cpython-*.pyc \ - "$PKG_DEST/$sitedir"/poetry/json/schemas/poetry-schema.json + python3 -m installer -d "$PKG_DEST" \ + dist/poetry-$PKG_VER-py3-none-any.whl } diff --git a/repo/polybar/polybar.xibuild b/repo/polybar/polybar.xibuild index 20a46dc..72a8ed4 100644 --- a/repo/polybar/polybar.xibuild +++ b/repo/polybar/polybar.xibuild @@ -3,8 +3,7 @@ NAME="polybar" DESC="fast and easy-to-use tool for creating status bars" -MAKEDEPS="cmake " -DEPS="alsa-lib toybox cairo fontconfig freetype2 jsoncpp curl libmpdclient pulseaudio libuv musl libxcb xcb-util-cursor xcb-util-wm " +MAKEDEPS="cmake alsa-lib toybox cairo fontconfig freetype2 jsoncpp curl libmpdclient pulseaudio libuv musl libxcb xcb-util-cursor xcb-util-wm xcb-proto" PKG_VER=3.6.3 SOURCE="https://github.com/polybar/polybar/archive/$PKG_VER.tar.gz" diff --git a/repo/proxychains-ng/proxychains-ng.xibuild b/repo/proxychains-ng/proxychains-ng.xibuild new file mode 100644 index 0000000..92b953b --- /dev/null +++ b/repo/proxychains-ng/proxychains-ng.xibuild @@ -0,0 +1,24 @@ +#!/bin/sh + +NAME="proxychains-ng" +DESC="This tool provides proxy server support to any app." + +MAKEDEPS="musl" + +PKG_VER=4.16 +SOURCE="https://github.com/rofl0r/proxychains-ng/archive/v$PKG_VER.zip" + +build() { + cd "$BUILD_ROOT" + ./configure \ + --prefix=/usr \ + --sysconfdir=/etc/proxychains + make +} + +package() { + cd "$BUILD_ROOT" + make DESTDIR="$PKG_DEST" install install-config + ln -s proxychains4 "$PKG_DEST"/usr/bin/proxychains +} + diff --git a/repo/pvoc/fix-cstdint-missing.patch b/repo/pvoc/fix-cstdint-missing.patch new file mode 100644 index 0000000..785288c --- /dev/null +++ b/repo/pvoc/fix-cstdint-missing.patch @@ -0,0 +1,33 @@ +--- build.orig/basics.h 2023-01-28 23:45:55.808091774 +0000 ++++ build/basics.h 2023-01-28 23:47:00.731096985 +0000 +@@ -38,6 +38,7 @@ + #define _ISOC99_SOURCE 1 + #define _ISOC9X_SOURCE 1 + ++#include <cstdint> + #include <malloc.h> + #include <stdlib.h> + #include <string.h> +@@ -77,14 +78,14 @@ + #define MIN_GAIN .000001 /* -120 dB */ + #define NOISE_FLOOR .00000000000005 /* -266 dB */ + +-typedef __int8_t int8; +-typedef __uint8_t uint8; +-typedef __int16_t int16; +-typedef __uint16_t uint16; +-typedef __int32_t int32; +-typedef __uint32_t uint32; +-typedef __int64_t int64; +-typedef __uint64_t uint64; ++typedef int8_t int8; ++typedef uint8_t uint8; ++typedef int16_t int16; ++typedef uint16_t uint16; ++typedef int32_t int32; ++typedef uint32_t uint32; ++typedef int64_t int64; ++typedef uint64_t uint64; + + typedef struct { + const char * name; diff --git a/repo/pvoc/pvoc.xibuild b/repo/pvoc/pvoc.xibuild new file mode 100644 index 0000000..133ead0 --- /dev/null +++ b/repo/pvoc/pvoc.xibuild @@ -0,0 +1,22 @@ +#!/bin/sh + +NAME="pvoc" +DESC="LADSPLA plugins and a tool for time compression/expansion using phase-vocoding" + +MAKEDEPS="make fftw libsndfile ladspa " + +PKG_VER=0.1.12 +SOURCE="http://quitte.de/dsp/pvoc_${PKG_VER}.tar.gz" +ADDITIONAL="fix-cstdint-missing.patch" + +prepare () { + apply_patches +} + +build () { + make PREFIX=/usr +} + +package () { + make PREFIX=$PKG_DEST/usr install +} diff --git a/repo/python-aiorpcx/python-aiorpcx.xibuild b/repo/python-aiorpcx/python-aiorpcx.xibuild index 5641540..38e88bc 100644 --- a/repo/python-aiorpcx/python-aiorpcx.xibuild +++ b/repo/python-aiorpcx/python-aiorpcx.xibuild @@ -4,14 +4,14 @@ MAKEDEPS="python" DEPS="python-websockets" PKG_VER=0.22.1 -SOURCE=https://files.pythonhosted.org/packages/source/a/aiorpcx/aiorpcx-$PKG_VER.tar.gz +SOURCE=https://files.pythonhosted.org/packages/source/a/aiorpcX/aiorpcX-$PKG_VER.tar.gz MAKEDEPS="python" DESC="Generic async RPC implementation, including JSON-RPC" build() { - python setup.py build + python -m build --no-isolation --wheel } package () { - python setup.py install --root="$PKG_DEST" --optimize=1 + python -m installer -d "$PKG_DEST" dist/aiorpcX-$PKG_VER-py3-none-any.whl } diff --git a/repo/python-cachecontrol/python-cachecontrol.xibuild b/repo/python-cachecontrol/python-cachecontrol.xibuild new file mode 100644 index 0000000..26c15ce --- /dev/null +++ b/repo/python-cachecontrol/python-cachecontrol.xibuild @@ -0,0 +1,18 @@ +#!/bin/sh + +MAKEDEPS="python" + + +PKG_VER=0.12.11 +SOURCE=https://files.pythonhosted.org/packages/source/C/CacheControl/CacheControl-$PKG_VER.tar.gz +MAKEDEPS="python" +DEPS="python-msgpack" +DESC="httplib2 caching for requests" + +build() { + python -m build --no-isolation --wheel +} + +package () { + python -m installer -d "$PKG_DEST" dist/CacheControl-$PKG_VER-py2.py3-none-any.whl +} diff --git a/repo/python-cachy/python-cachy.xibuild b/repo/python-cachy/python-cachy.xibuild new file mode 100644 index 0000000..a48f1c1 --- /dev/null +++ b/repo/python-cachy/python-cachy.xibuild @@ -0,0 +1,17 @@ +#!/bin/sh + +MAKEDEPS="python" + + +PKG_VER=0.3.0 +SOURCE=https://files.pythonhosted.org/packages/source/c/cachy/cachy-$PKG_VER.tar.gz +MAKEDEPS="python" +DESC="Cachy provides a simple yet effective caching library." + +build() { + python setup.py build +} + +package () { + python setup.py install --root="$PKG_DEST" --optimize=1 +} diff --git a/repo/python-cleo/python-cleo.xibuild b/repo/python-cleo/python-cleo.xibuild new file mode 100644 index 0000000..dd2c1f0 --- /dev/null +++ b/repo/python-cleo/python-cleo.xibuild @@ -0,0 +1,18 @@ +#!/bin/sh + +MAKEDEPS="python" + + +PKG_VER=2.0.1 +SOURCE=https://files.pythonhosted.org/packages/source/c/cleo/cleo-$PKG_VER.tar.gz +MAKEDEPS="python" +DEPS="rapidfuzz" +DESC="Cleo allows you to create beautiful and testable command-line interfaces." + +build() { + python setup.py build +} + +package () { + python setup.py install --root="$PKG_DEST" --optimize=1 +} diff --git a/repo/python-click-default-group/python-click-default-group.xibuild b/repo/python-click-default-group/python-click-default-group.xibuild new file mode 100644 index 0000000..3341ee6 --- /dev/null +++ b/repo/python-click-default-group/python-click-default-group.xibuild @@ -0,0 +1,17 @@ +#!/bin/sh + +MAKEDEPS="python" + + +PKG_VER=1.2.2 +SOURCE=https://files.pythonhosted.org/packages/source/c/click-default-group/click-default-group-$PKG_VER.tar.gz +MAKEDEPS="python" +DESC="Extends click.Group to invoke a command without explicit subcommand name" + +build() { + python setup.py build +} + +package () { + python setup.py install --root="$PKG_DEST" --optimize=1 +} diff --git a/repo/python-clikit/python-clikit.xibuild b/repo/python-clikit/python-clikit.xibuild new file mode 100644 index 0000000..bbff336 --- /dev/null +++ b/repo/python-clikit/python-clikit.xibuild @@ -0,0 +1,18 @@ +#!/bin/sh + +MAKEDEPS="python" + + +PKG_VER=0.6.2 +SOURCE=https://files.pythonhosted.org/packages/source/c/clikit/clikit-$PKG_VER.tar.gz +MAKEDEPS="python" +DEPS="pastel pylev" +DESC="CliKit is a group of utilities to build beautiful and testable command line interfaces." + +build() { + python setup.py build +} + +package () { + python setup.py install --root="$PKG_DEST" --optimize=1 +} diff --git a/repo/python-crashtest/python-crashtest.xibuild b/repo/python-crashtest/python-crashtest.xibuild new file mode 100644 index 0000000..b453250 --- /dev/null +++ b/repo/python-crashtest/python-crashtest.xibuild @@ -0,0 +1,17 @@ +#!/bin/sh + +MAKEDEPS="python" + + +PKG_VER=0.4.1 +SOURCE=https://files.pythonhosted.org/packages/source/c/crashtest/crashtest-$PKG_VER.tar.gz +MAKEDEPS="python" +DESC="Manage Python errors with ease" + +build() { + python setup.py build +} + +package () { + python setup.py install --root="$PKG_DEST" --optimize=1 +} diff --git a/repo/python-dateutil/python-dateutil.xibuild b/repo/python-dateutil/python-dateutil.xibuild new file mode 100644 index 0000000..ff82141 --- /dev/null +++ b/repo/python-dateutil/python-dateutil.xibuild @@ -0,0 +1,32 @@ +#!/bin/sh + +NAME="python-dateutil" +DESC="Python3 extensions for datetime module" + +MAKEDEPS="" + +PKG_VER=2.8.2 +SOURCE="https://files.pythonhosted.org/packages/source/p/python-dateutil/python-dateutil-$PKG_VER.tar.gz" + +prepare() { + apply_patches + + # Generate _version.py ourselves since we don't use setuptools_scm + cat <<- EOF >dateutil/_version.py + # coding: utf-8 + version = '$PKG_VER' + version_tuple = (2, 8, 2) + EOF + + sed -e '/setuptools_scm/d' -i setup.cfg + sed -e "s/setup(/setup(\n version='$PKG_VER',/" -i setup.py +} + +build() { + python3 setup.py build +} + +package() { + python3 setup.py install --prefix=/usr --root="$PKG_DEST" +} + diff --git a/repo/python-distlib/python-distlib.xibuild b/repo/python-distlib/python-distlib.xibuild new file mode 100644 index 0000000..e7aa0de --- /dev/null +++ b/repo/python-distlib/python-distlib.xibuild @@ -0,0 +1,16 @@ +#!/bin/sh + +MAKEDEPS="python python-pep517" + +PKG_VER=0.3.6 +SOURCE=https://files.pythonhosted.org/packages/source/d/distlib/distlib-$PKG_VER.tar.gz +MAKEDEPS="python" +DESC="Distribution utilities" + +build() { + python -m build --no-isolation --wheel +} + +package () { + python -m installer -d "$PKG_DEST" dist/distlib-$PKG_VER-py2.py3-none-any.whl +} diff --git a/repo/python-docutils/python-docutils.xibuild b/repo/python-docutils/python-docutils.xibuild index cd1c45a..2721f46 100644 --- a/repo/python-docutils/python-docutils.xibuild +++ b/repo/python-docutils/python-docutils.xibuild @@ -3,8 +3,8 @@ MAKEDEPS="python" DEPS="" -PKG_VER=0.18.1 -SOURCE=https://files.pythonhosted.org/packages/57/b1/b880503681ea1b64df05106fc7e3c4e3801736cf63deffc6fa7fc5404cf5/docutils-$PKG_VER.tar.gz +PKG_VER=0.19 +SOURCE=https://files.pythonhosted.org/packages/source/d/docutils/docutils-$PKG_VER.tar.gz DESC="Docutils -- Python Documentation Utilities" build() { diff --git a/repo/python-editables/python-editables.xibuild b/repo/python-editables/python-editables.xibuild new file mode 100644 index 0000000..13dab76 --- /dev/null +++ b/repo/python-editables/python-editables.xibuild @@ -0,0 +1,17 @@ +#!/bin/sh + +MAKEDEPS="python" + + +PKG_VER=0.3 +SOURCE=https://files.pythonhosted.org/packages/source/e/editables/editables-$PKG_VER.tar.gz +MAKEDEPS="python" +DESC="Editable installations" + +build() { + python setup.py build +} + +package () { + python setup.py install --root="$PKG_DEST" --optimize=1 +} diff --git a/repo/python-fasteners/python-fasteners.xibuild b/repo/python-fasteners/python-fasteners.xibuild new file mode 100644 index 0000000..ff56baf --- /dev/null +++ b/repo/python-fasteners/python-fasteners.xibuild @@ -0,0 +1,22 @@ +#!/bin/sh + +NAME="python-fasteners" +DESC="A python package that provides useful locks" + +MAKEDEPS="python" + +PKG_VER=0.16.3 +SOURCE="https://files.pythonhosted.org/packages/source/f/fasteners/fasteners-$PKG_VER.tar.gz" + +build() { + python3 setup.py build +} + +check() { + python3 setup.py check +} + +package() { + python3 setup.py install --prefix=/usr --root="$PKG_DEST" +} + diff --git a/repo/python-flit-core/python-flit-core.xibuild b/repo/python-flit-core/python-flit-core.xibuild index 2a95e8c..f11f83f 100644 --- a/repo/python-flit-core/python-flit-core.xibuild +++ b/repo/python-flit-core/python-flit-core.xibuild @@ -3,7 +3,7 @@ NAME="python-flit-core" DESC="simple packaging tool for simple packages (core)" -MAKEDEPS="python-installer python-testpath" +MAKEDEPS="python-installer python-pytest python-attrs python-pluggy python-py python-iniconfig" PKG_VER=3.7.1 SOURCE="https://files.pythonhosted.org/packages/source/f/flit/flit-$PKG_VER.tar.gz" @@ -13,10 +13,6 @@ build() { python3 build_dists.py } -check() { - python3 -m pytest -} - package() { python3 -m installer -d "$PKG_DEST" \ dist/flit_core-$PKG_VER-py3-none-any.whl diff --git a/repo/python-flit/python-flit.xibuild b/repo/python-flit/python-flit.xibuild new file mode 100644 index 0000000..f67c571 --- /dev/null +++ b/repo/python-flit/python-flit.xibuild @@ -0,0 +1,27 @@ +#!/bin/sh + +NAME="python-flit" +DESC="simple packaging tool for simple packages" + +MAKEDEPS="python-installer python-flit-core python-tomli-w" +DEPS="python-tomli-w" + +PKG_VER=3.7.1 +SOURCE="https://files.pythonhosted.org/packages/source/f/flit/flit-$PKG_VER.tar.gz" + + +build() { + # temp hack to not pull in all of py3-build + mkdir dist + python3 - <<-EOF + import flit_core.buildapi as buildapi + name = buildapi.build_wheel('./dist') + print(name) + EOF +} + +package() { + python3 -m installer -d "$PKG_DEST" \ + dist/flit-$PKG_VER-py3-none-any.whl +} + diff --git a/repo/python-flit/tests-use-python3.patch b/repo/python-flit/tests-use-python3.patch new file mode 100644 index 0000000..ab4a3bb --- /dev/null +++ b/repo/python-flit/tests-use-python3.patch @@ -0,0 +1,18 @@ +diff --git a/tests/test_find_python_executable.py b/tests/test_find_python_executable.py +index 161dc7a..c6f0ebc 100644 +--- a/tests/test_find_python_executable.py ++++ b/tests/test_find_python_executable.py +@@ -16,11 +16,11 @@ def test_self(): + + + def test_abs(): +- assert find_python_executable("/usr/bin/python") == "/usr/bin/python" ++ assert find_python_executable("/usr/bin/python3") == "/usr/bin/python3" + + + def test_find_in_path(): +- assert os.path.isabs(find_python_executable("python")) ++ assert os.path.isabs(find_python_executable("python3")) + + + @pytest.mark.parametrize("bad_python_name", ["pyhton", "ls", "."]) diff --git a/repo/python-gobject/python-gobject.xibuild b/repo/python-gobject/python-gobject.xibuild index 7256af3..a05674f 100644 --- a/repo/python-gobject/python-gobject.xibuild +++ b/repo/python-gobject/python-gobject.xibuild @@ -12,6 +12,7 @@ build() { cd build meson \ + -Dprefix=/usr \ -Dpython=python3 \ .. diff --git a/repo/python-gpep517/gpep517 b/repo/python-gpep517/gpep517 new file mode 100644 index 0000000..b8b10c0 --- /dev/null +++ b/repo/python-gpep517/gpep517 @@ -0,0 +1,6 @@ +#!/usr/bin/python3 +# -*- coding: utf-8 -*- +import sys +from gpep517.__main__ import main +if __name__ == "__main__": + sys.exit(main()) diff --git a/repo/python-gpep517/python-gpep517.xibuild b/repo/python-gpep517/python-gpep517.xibuild new file mode 100644 index 0000000..a46f3b9 --- /dev/null +++ b/repo/python-gpep517/python-gpep517.xibuild @@ -0,0 +1,26 @@ +#!/bin/sh + +NAME="python-gpep517" +DESC="Minimal backend script to aid installing Python packages through PEP 517-compliant build systems" + +MAKEDEPS="python" + +PKG_VER=9 +SOURCE="https://github.com/mgorny/gpep517/archive/v$PKG_VER/gpep517-v$PKG_VER.tar.gz" + +ADDITIONAL=" +gpep517 +" +check() { + python3 -m gpep517 --help +} + +package() { + local sitedir="$(python3 -c 'import site;print(site.getsitepackages()[0])')" + mkdir -p "$PKG_DEST/$sitedir" + cp -a gpep517 "$PKG_DEST/$sitedir" + + mkdir -p "$PKG_DEST/usr/bin" + cp -a gpep517 "$PKG_DEST"/usr/bin +} + diff --git a/repo/python-hatch-vcs/python-hatch-vcs.xibuild b/repo/python-hatch-vcs/python-hatch-vcs.xibuild new file mode 100644 index 0000000..f14763e --- /dev/null +++ b/repo/python-hatch-vcs/python-hatch-vcs.xibuild @@ -0,0 +1,15 @@ +#!/bin/sh + +MAKEDEPS="python python-hatchling" + +PKG_VER=0.3.0 +SOURCE=https://files.pythonhosted.org/packages/source/h/hatch-vcs/hatch_vcs-$PKG_VER.tar.gz +DESC="Hatch plugin for versioning with your preferred VCS" + +build() { + python -m build --skip-dependency-check --no-isolation --wheel . +} + +package () { + python -m installer -d "$PKG_DEST" dist/hatch_vcs-$PKG_VER-py3-none-any.whl +} diff --git a/repo/python-hatchling/python-hatchling.xibuild b/repo/python-hatchling/python-hatchling.xibuild new file mode 100644 index 0000000..0520517 --- /dev/null +++ b/repo/python-hatchling/python-hatchling.xibuild @@ -0,0 +1,17 @@ +#!/bin/sh + +MAKEDEPS="python python-editables python-pathspec" + +PKG_VER=1.11.1 +SOURCE=https://files.pythonhosted.org/packages/source/h/hatchling/hatchling-$PKG_VER.tar.gz + +MAKEDEPS="python" +DESC="Modern, extensible Python build backend" + +build() { + python -m build --no-isolation --wheel +} + +package () { + python -m installer -d "$PKG_DEST" dist/hatchling-$PKG_VER-py3-none-any.whl +} diff --git a/repo/python-keyring/python-keyring.xibuild b/repo/python-keyring/python-keyring.xibuild new file mode 100644 index 0000000..b229200 --- /dev/null +++ b/repo/python-keyring/python-keyring.xibuild @@ -0,0 +1,18 @@ +#!/bin/sh + +MAKEDEPS="python" + + +PKG_VER=23.13.1 +SOURCE=https://files.pythonhosted.org/packages/source/k/keyring/keyring-$PKG_VER.tar.gz +MAKEDEPS="python" +DEPS="python-secretstorage" +DESC="Store and access your passwords safely." + +build() { + python -m build --no-isolation --wheel +} + +package () { + python -m installer -d "$PKG_DEST" dist/keyring-$PKG_VER-py3-none-any.whl +} diff --git a/repo/python-mock/python-mock.xibuild b/repo/python-mock/python-mock.xibuild new file mode 100644 index 0000000..e26278b --- /dev/null +++ b/repo/python-mock/python-mock.xibuild @@ -0,0 +1,17 @@ +#!/bin/sh + +NAME="python-mock" +DESC="Python3 Mocking and Patching Library for Testing" + +MAKEDEPS="python-setuptools" + +PKG_VER=4.0.3 +SOURCE="https://files.pythonhosted.org/packages/source/m/mock/mock-$PKG_VER.tar.gz" + +build() { + python3 setup.py build +} + +package() { + python3 setup.py install --prefix=/usr --root="$PKG_DEST" +} diff --git a/repo/python-nio/python-nio.xibuild b/repo/python-nio/python-nio.xibuild index 93bdead..d817df4 100644 --- a/repo/python-nio/python-nio.xibuild +++ b/repo/python-nio/python-nio.xibuild @@ -5,6 +5,7 @@ MAKEDEPS="python" PKG_VER=3.4.2 SOURCE=https://files.pythonhosted.org/packages/source/n/nio/nio-$PKG_VER.tar.gz MAKEDEPS="python" +DEPS="python-safepickle" DESC="A framework for building blocks and modules for the nio Platform" prepare () { diff --git a/repo/python-parsing/python-parsing.xibuild b/repo/python-parsing/python-parsing.xibuild new file mode 100644 index 0000000..70ccca8 --- /dev/null +++ b/repo/python-parsing/python-parsing.xibuild @@ -0,0 +1,17 @@ +#!/bin/sh + +MAKEDEPS="python" + + +PKG_VER=2.0.0 +SOURCE=https://files.pythonhosted.org/packages/source/p/parsing/parsing-$PKG_VER.tar.gz +MAKEDEPS="python" +DESC="A pure-Python module that implements an LR(1) parser generator, as well as CFSM and GLR parser drivers." + +build() { + python setup.py build +} + +package () { + python setup.py install --root="$PKG_DEST" --optimize=1 +} diff --git a/repo/python-pastel/python-pastel.xibuild b/repo/python-pastel/python-pastel.xibuild new file mode 100644 index 0000000..014c274 --- /dev/null +++ b/repo/python-pastel/python-pastel.xibuild @@ -0,0 +1,17 @@ +#!/bin/sh + +MAKEDEPS="python" + + +PKG_VER=0.2.1 +SOURCE=https://files.pythonhosted.org/packages/source/p/pastel/pastel-$PKG_VER.tar.gz +MAKEDEPS="python" +DESC="Bring colors to your terminal." + +build() { + python setup.py build +} + +package () { + python setup.py install --root="$PKG_DEST" --optimize=1 +} diff --git a/repo/python-pathspec/python-pathspec.xibuild b/repo/python-pathspec/python-pathspec.xibuild new file mode 100644 index 0000000..d714aa9 --- /dev/null +++ b/repo/python-pathspec/python-pathspec.xibuild @@ -0,0 +1,17 @@ +#!/bin/sh + +MAKEDEPS="python" + + +PKG_VER=0.10.3 +SOURCE=https://files.pythonhosted.org/packages/source/p/pathspec/pathspec-$PKG_VER.tar.gz +MAKEDEPS="python" +DESC="Utility library for gitignore style pattern matching of file paths." + +build() { + python setup.py build +} + +package () { + python setup.py install --root="$PKG_DEST" --optimize=1 +} diff --git a/repo/python-pep517/python-pep517.xibuild b/repo/python-pep517/python-pep517.xibuild index f82ad58..dbb28c1 100644 --- a/repo/python-pep517/python-pep517.xibuild +++ b/repo/python-pep517/python-pep517.xibuild @@ -3,14 +3,14 @@ MAKEDEPS="python" DEPS="python python-tomli" -PKG_VER=0.12.0 -SOURCE="https://files.pythonhosted.org/packages/source/p/pep517/pep517-$PKG_VER.tar.gz" +PKG_VER=0.13.0 +SOURCE="https://files.pythonhosted.org/packages/4d/19/e11fcc88288f68ae48e3aa9cf5a6fd092a88e629cb723465666c44d487a0/pep517-$PKG_VER.tar.gz" DESC="Correct PEP517 package builder" build() { - python setup.py build + python -m build --no-isolation --wheel } package () { - python setup.py install --root="$PKG_DEST" --optimize=1 + python -m installer -d "$PKG_DEST" dist/pep517-$PKG_VER-py3-none-any.whl } diff --git a/repo/python-pexpect/python-pexpect.xibuild b/repo/python-pexpect/python-pexpect.xibuild new file mode 100644 index 0000000..2420b9b --- /dev/null +++ b/repo/python-pexpect/python-pexpect.xibuild @@ -0,0 +1,17 @@ +#!/bin/sh + +MAKEDEPS="python" + + +PKG_VER=4.8.0 +SOURCE=https://files.pythonhosted.org/packages/source/p/pexpect/pexpect-$PKG_VER.tar.gz +MAKEDEPS="python" +DESC="Pexpect allows easy control of interactive console applications." + +build() { + python setup.py build +} + +package () { + python setup.py install --root="$PKG_DEST" --optimize=1 +} diff --git a/repo/python-pillow/python-pillow.xibuild b/repo/python-pillow/python-pillow.xibuild index c7253e8..707176e 100644 --- a/repo/python-pillow/python-pillow.xibuild +++ b/repo/python-pillow/python-pillow.xibuild @@ -4,7 +4,7 @@ MAKEDEPS="python" DEPS="python-olefile python-sphinx python-sphinx-python-copybutton python-sphinx-python-issues python-sphinx-python-removed-python-in python-sphinx-python-rtd-python-theme python-sphinxext-python-opengraph python-check-python-manifest python-coverage python-defusedxml python-markdown2 python-olefile python-packaging python-pyroma python-pytest python-pytest-python-cov python-pytest-python-timeout" PKG_VER=9.1.1 -SOURCE=https://files.pythonhosted.org/packages/source/p/pillow/pillow-$PKG_VER.tar.gz +SOURCE=https://files.pythonhosted.org/packages/source/P/Pillow/Pillow-$PKG_VER.tar.gz MAKEDEPS="python" DESC="Python Imaging Library (Fork)" diff --git a/repo/python-pkginfo/python-pkginfo.xibuild b/repo/python-pkginfo/python-pkginfo.xibuild new file mode 100644 index 0000000..bf27af1 --- /dev/null +++ b/repo/python-pkginfo/python-pkginfo.xibuild @@ -0,0 +1,17 @@ +#!/bin/sh + +MAKEDEPS="python" + + +PKG_VER=1.9.2 +SOURCE=https://files.pythonhosted.org/packages/source/p/pkginfo/pkginfo-$PKG_VER.tar.gz +MAKEDEPS="python" +DESC="Query metadatdata from sdists / bdists / installed packages." + +build() { + python setup.py build +} + +package () { + python setup.py install --root="$PKG_DEST" --optimize=1 +} diff --git a/repo/python-platformdirs/python-platformdirs.xibuild b/repo/python-platformdirs/python-platformdirs.xibuild new file mode 100644 index 0000000..2b9ac5e --- /dev/null +++ b/repo/python-platformdirs/python-platformdirs.xibuild @@ -0,0 +1,16 @@ +#!/bin/sh + +MAKEDEPS="python python-hatchling python-hatch-vcs" + + +PKG_VER=2.6.0 +SOURCE=https://files.pythonhosted.org/packages/source/p/platformdirs/platformdirs-$PKG_VER.tar.gz +DESC="A small Python package for determining appropriate platform-specific dirs, e.g. a 'user data dir'." + +build() { + python -m build --wheel --no-isolation +} + +package () { + python -m installer -d "$PKG_DEST" dist/platformdirs-$PKG_VER-py3-none-any.whl +} diff --git a/repo/python-ply/no-py3-six.patch b/repo/python-ply/no-py3-six.patch new file mode 100644 index 0000000..5a4c665 --- /dev/null +++ b/repo/python-ply/no-py3-six.patch @@ -0,0 +1,13 @@ +diff --git a/test/testcpp.py b/test/testcpp.py +index 2e98edd..7134244 100644 +--- a/test/testcpp.py ++++ b/test/testcpp.py +@@ -1,7 +1,7 @@ + from unittest import TestCase, main + + from multiprocessing import Process, Queue +-from six.moves.queue import Empty ++from queue import Empty + + import sys + diff --git a/repo/python-ply/python-ply.xibuild b/repo/python-ply/python-ply.xibuild index f977f12..791b2c2 100644 --- a/repo/python-ply/python-ply.xibuild +++ b/repo/python-ply/python-ply.xibuild @@ -1,17 +1,23 @@ #!/bin/sh -MAKEDEPS="python" +NAME="python-ply" +DESC="Python Lex & Yacc" +MAKEDEPS="python" PKG_VER=3.11 -SOURCE=https://files.pythonhosted.org/packages/source/p/ply/ply-$PKG_VER.tar.gz -MAKEDEPS="python" -DESC="Python Lex DESC="%desc%" Yacc" +SOURCE="https://github.com/dabeaz/ply/archive/$PKG_VER.tar.gz" + +ADDITIONAL=" +no-py3-six.patch +" build() { - python setup.py build + python3 setup.py build } -package () { - python setup.py install --root="$PKG_DEST" --optimize=1 + +package() { + python3 setup.py install --prefix=/usr --root="$PKG_DEST" } + diff --git a/repo/python-poetry-core/python-poetry-core.xibuild b/repo/python-poetry-core/python-poetry-core.xibuild index 2dbc39b..4f32131 100644 --- a/repo/python-poetry-core/python-poetry-core.xibuild +++ b/repo/python-poetry-core/python-poetry-core.xibuild @@ -3,28 +3,22 @@ NAME="python-poetry-core" DESC="PEP 517 build backend implementation for Poetry" -MAKEDEPS="python-pep517 python-build python-installer " +MAKEDEPS="python-build python-installer" -PKG_VER=1.1.0 +PKG_VER=1.4.0 SOURCE="https://github.com/python-poetry/poetry-core/archive/$PKG_VER.tar.gz" build() { - # poetry-core excludes files specified in .gitignore - # fixed by setting GIT_DIR away from the aports tree's top-level directory - GIT_DIR="$PWD" python3 -m build --no-isolation --skip-dependency-check --wheel + GIT_DIR="$PWD" python3 -m build --wheel } + package() { python3 -m installer -d "$PKG_DEST" \ - dist/poetry_core-$PKG_VER-py2.py3-none-any.whl + dist/poetry_core-$PKG_VER-py3-none-any.whl # remove vendored versions of installed modules local sitedir=$(python3 -c "import site; print(site.getsitepackages()[0])") rm -r "$PKG_DEST/$sitedir"/poetry/core/_vendor - - install -Dm644 poetry/core/json/schemas/poetry-schema.json \ - "$PKG_DEST/$sitedir"/poetry/core/json/schemas/poetry-schema.json - install -Dm644 poetry/core/spdx/data/licenses.json \ - "$PKG_DEST/$sitedir"/poetry/core/spdx/data/licenses.json } diff --git a/repo/python-ptyprocess/python-ptyprocess.xibuild b/repo/python-ptyprocess/python-ptyprocess.xibuild new file mode 100644 index 0000000..3a9e281 --- /dev/null +++ b/repo/python-ptyprocess/python-ptyprocess.xibuild @@ -0,0 +1,17 @@ +#!/bin/sh + +MAKEDEPS="python" + + +PKG_VER=0.7.0 +SOURCE=https://files.pythonhosted.org/packages/source/p/ptyprocess/ptyprocess-$PKG_VER.tar.gz +MAKEDEPS="python" +DESC="Run a subprocess in a pseudo terminal" + +build() { + python setup.py build +} + +package () { + python setup.py install --root="$PKG_DEST" --optimize=1 +} diff --git a/repo/python-pygments/python-pygments.xibuild b/repo/python-pygments/python-pygments.xibuild index 3a8d13a..c4218be 100644 --- a/repo/python-pygments/python-pygments.xibuild +++ b/repo/python-pygments/python-pygments.xibuild @@ -1,6 +1,6 @@ #!/bin/sh -MAKEDEPS="python " +MAKEDEPS="python python-setuptools" DEPS="" PKG_VER=2.13.0 diff --git a/repo/python-pylev/python-pylev.xibuild b/repo/python-pylev/python-pylev.xibuild new file mode 100644 index 0000000..b84245d --- /dev/null +++ b/repo/python-pylev/python-pylev.xibuild @@ -0,0 +1,17 @@ +#!/bin/sh + +MAKEDEPS="python" + + +PKG_VER=1.4.0 +SOURCE=https://files.pythonhosted.org/packages/source/p/pylev/pylev-$PKG_VER.tar.gz +MAKEDEPS="python" +DESC="A pure Python Levenshtein implementation that's not freaking GPL'd." + +build() { + python setup.py build +} + +package () { + python setup.py install --root="$PKG_DEST" --optimize=1 +} diff --git a/repo/python-pyopenssl/python-pyopenssl.xibuild b/repo/python-pyopenssl/python-pyopenssl.xibuild index 1aca160..40d9b19 100644 --- a/repo/python-pyopenssl/python-pyopenssl.xibuild +++ b/repo/python-pyopenssl/python-pyopenssl.xibuild @@ -4,7 +4,7 @@ MAKEDEPS="python" DEPS="python-cryptography python-sphinx python-sphinx-python-rtd-python-theme python-flaky python-pretend python-pytest" PKG_VER=22.0.0 -SOURCE=https://files.pythonhosted.org/packages/source/p/pyopenssl/pyopenssl-$PKG_VER.tar.gz +SOURCE=https://files.pythonhosted.org/packages/source/p/pyOpenSSL/pyOpenSSL-$PKG_VER.tar.gz MAKEDEPS="python" DESC="Python wrapper module around the OpenSSL library" diff --git a/repo/python-pyparsing/python-pyparsing.xibuild b/repo/python-pyparsing/python-pyparsing.xibuild index a2772b3..beb20ba 100644 --- a/repo/python-pyparsing/python-pyparsing.xibuild +++ b/repo/python-pyparsing/python-pyparsing.xibuild @@ -1,6 +1,6 @@ #!/bin/sh -MAKEDEPS="python " +MAKEDEPS="python python-gpep517 python-flit" DEPS="" PKG_VER=3.0.9 @@ -8,9 +8,15 @@ SOURCE=https://github.com/pyparsing/pyparsing/archive/pyparsing_$PKG_VER.tar.gz DESC="General parsing module for Python" build() { - python setup.py build + mkdir -p dist + local backend="$(python3 -m gpep517 get-backend)" + python3 -m gpep517 build-wheel \ + --wheel-dir dist \ + --backend "$backend" \ + --output-fd 1 } -package () { - python setup.py install --root="$PKG_DEST" --optimize=1 +package() { + python3 -m installer -d "$PKG_DEST" \ + dist/pyparsing-$PKG_VER-py3-none-any.whl } diff --git a/repo/python-pyqt5/python-pyqt5.xibuild b/repo/python-pyqt5/python-pyqt5.xibuild index e4cee15..55cba33 100644 --- a/repo/python-pyqt5/python-pyqt5.xibuild +++ b/repo/python-pyqt5/python-pyqt5.xibuild @@ -1,7 +1,7 @@ #!/bin/sh -MAKEDEPS="python python-sip" -DEPS="pyqt5-sip" +MAKEDEPS="python python-sip python-pyqt-builder" +DEPS="pyqt5-sip " PKG_VER=5.15.7 SOURCE=https://pypi.python.org/packages/source/P/PyQt5/PyQt5-$PKG_VER.tar.gz diff --git a/repo/python-pyrsistent/python-pyrsistent.xibuild b/repo/python-pyrsistent/python-pyrsistent.xibuild index 610a9c3..7a46cdb 100644 --- a/repo/python-pyrsistent/python-pyrsistent.xibuild +++ b/repo/python-pyrsistent/python-pyrsistent.xibuild @@ -17,10 +17,6 @@ build() { python3 setup.py build } -check() { - python3 setup.py test -} - package() { python3 setup.py install --prefix=/usr --root="$PKG_DEST" } diff --git a/repo/python-rapidfuzz/python-rapidfuzz.xibuild b/repo/python-rapidfuzz/python-rapidfuzz.xibuild new file mode 100644 index 0000000..8159fe7 --- /dev/null +++ b/repo/python-rapidfuzz/python-rapidfuzz.xibuild @@ -0,0 +1,17 @@ +#!/bin/sh + +MAKEDEPS="python" + + +PKG_VER=2.13.7 +SOURCE=https://files.pythonhosted.org/packages/source/r/rapidfuzz/rapidfuzz-$PKG_VER.tar.gz +MAKEDEPS="python" +DESC="rapid fuzzy string matching" + +build() { + python setup.py build +} + +package () { + python setup.py install --root="$PKG_DEST" --optimize=1 +} diff --git a/repo/python-redit/python-redit.xibuild b/repo/python-redit/python-redit.xibuild new file mode 100644 index 0000000..80148ad --- /dev/null +++ b/repo/python-redit/python-redit.xibuild @@ -0,0 +1,17 @@ +#!/bin/sh + +MAKEDEPS="python" + + +PKG_VER=1.0.2 +SOURCE=https://files.pythonhosted.org/packages/source/r/redit/redit-$PKG_VER.tar.gz +MAKEDEPS="python" +DESC="Preview recently edited notes and launch editor" + +build() { + python setup.py build +} + +package () { + python setup.py install --root="$PKG_DEST" --optimize=1 +} diff --git a/repo/python-requests-toolbelt/python-requests-toolbelt.xibuild b/repo/python-requests-toolbelt/python-requests-toolbelt.xibuild new file mode 100644 index 0000000..20f0955 --- /dev/null +++ b/repo/python-requests-toolbelt/python-requests-toolbelt.xibuild @@ -0,0 +1,17 @@ +#!/bin/sh + +MAKEDEPS="python" + + +PKG_VER=0.10.1 +SOURCE=https://files.pythonhosted.org/packages/source/r/requests-toolbelt/requests-toolbelt-$PKG_VER.tar.gz +MAKEDEPS="python" +DESC="A utility belt for advanced users of python-requests" + +build() { + python setup.py build +} + +package () { + python setup.py install --root="$PKG_DEST" --optimize=1 +} diff --git a/repo/python-safepickle/python-safepickle.xibuild b/repo/python-safepickle/python-safepickle.xibuild new file mode 100644 index 0000000..02a5752 --- /dev/null +++ b/repo/python-safepickle/python-safepickle.xibuild @@ -0,0 +1,17 @@ +#!/bin/sh + +MAKEDEPS="python" + + +PKG_VER=0.2.0 +SOURCE=https://files.pythonhosted.org/packages/source/s/safepickle/safepickle-$PKG_VER.tar.gz +MAKEDEPS="python" +DESC="An alternative to using Python's pickle" + +build() { + python setup.py build +} + +package () { + python setup.py install --root="$PKG_DEST" --optimize=1 +} diff --git a/repo/python-secretstorage/python-secretstorage.xibuild b/repo/python-secretstorage/python-secretstorage.xibuild new file mode 100644 index 0000000..21a4db8 --- /dev/null +++ b/repo/python-secretstorage/python-secretstorage.xibuild @@ -0,0 +1,15 @@ +#!/bin/sh + +MAKEDEPS="python" + +PKG_VER=3.3.3 +SOURCE=https://files.pythonhosted.org/packages/source/S/SecretStorage/SecretStorage-$PKG_VER.tar.gz +DESC="Python bindings to FreeDesktop.org Secret Service API" + +build() { + python setup.py build +} + +package () { + python setup.py install --root="$PKG_DEST" --optimize=1 +} diff --git a/repo/python-setuptools-bootstrap/python-setuptools-bootstrap.xibuild b/repo/python-setuptools-bootstrap/python-setuptools-bootstrap.xibuild new file mode 100644 index 0000000..987f90e --- /dev/null +++ b/repo/python-setuptools-bootstrap/python-setuptools-bootstrap.xibuild @@ -0,0 +1,51 @@ +#!/bin/sh + +NAME="python-setuptools-bootstrap" +DESC="Bootstrap of python setuptools" + +MAKEDEPS="python" + +PKG_VER=65.6.3 +SOURCE="https://github.com/pypa/setuptools.git" +BRANCH=v$PKG_VER + +#prepare() { + + # Unbundle + # rm -rf pkg_resources/extern pkg_resources/_vendor \ + # setuptools/extern setuptools/_vendor + + # Upstream devendoring logic is badly broken, see: + # https://bugs.archlinux.org/task/58670 + # https://github.com/pypa/pip/issues/5429 + # https://github.com/pypa/setuptools/issues/1383 + # The simplest fix is to simply rewrite import paths to use the canonical + # location in the first place + # for _module in setuptools pkg_resources '' ; do + # find . -name \*.py -exec sed -i \ + # -e 's/from '$_module.extern' import/import/' \ + # -e 's/from '$_module.extern'./from /' \ + # -e 's/import '$_module.extern'./import /' \ + # -e "s/__import__('$_module.extern./__import__('/" \ + # {} + + # done + + # Fix post-release tag + #sed -e '/tag_build = .post/d' \ + #-e '/tag_date = 1/d' \ + #-i setup.cfg +#} + +build() { + python3 bootstrap.py + python3 setup.py build +} + +package() { + # Otherwise it complains that build/scripts-3.10 cannot be found + # no other changes noted + mkdir -p build/scripts-3.10 + + python3 setup.py install --root="$PKG_DEST" --skip-build +} + diff --git a/repo/python-setuptools/python-setuptools.xibuild b/repo/python-setuptools/python-setuptools.xibuild index f0e396a..44dea83 100644 --- a/repo/python-setuptools/python-setuptools.xibuild +++ b/repo/python-setuptools/python-setuptools.xibuild @@ -3,10 +3,11 @@ NAME="python-setuptools" DESC="Collection of enhancements to the Python3 distutils" -MAKEDEPS="python" +MAKEDEPS="python-setuptools-bootstrap" -PKG_VER=65.3.0 +PKG_VER=65.6.3 SOURCE="https://github.com/pypa/setuptools.git" +BRANCH=v$PKG_VER #prepare() { diff --git a/repo/python-shellingham/python-shellingham.xibuild b/repo/python-shellingham/python-shellingham.xibuild new file mode 100644 index 0000000..20c3301 --- /dev/null +++ b/repo/python-shellingham/python-shellingham.xibuild @@ -0,0 +1,17 @@ +#!/bin/sh + +MAKEDEPS="python" + + +PKG_VER=1.5.0 +SOURCE=https://files.pythonhosted.org/packages/source/s/shellingham/shellingham-$PKG_VER.tar.gz +MAKEDEPS="python" +DESC="Tool to Detect Surrounding Shell" + +build() { + python setup.py build +} + +package () { + python setup.py install --root="$PKG_DEST" --optimize=1 +} diff --git a/repo/python-sip/python-sip.xibuild b/repo/python-sip/python-sip.xibuild index 9ec9c0d..898dc98 100644 --- a/repo/python-sip/python-sip.xibuild +++ b/repo/python-sip/python-sip.xibuild @@ -1,7 +1,7 @@ #!/bin/sh -MAKEDEPS="python" -DEPS="python-packaging python-ply python-setuptools python-toml" +MAKEDEPS="python-packaging python-ply python-setuptools python-toml python-ply" +DEPS="python-packaging python-ply python-setuptools python-toml python-ply" PKG_VER=6.6.2 SOURCE=https://files.pythonhosted.org/packages/source/s/sip/sip-$PKG_VER.tar.gz diff --git a/repo/python-sphinx-rtd-theme/python-sphinx-rtd-theme.xibuild b/repo/python-sphinx-rtd-theme/python-sphinx-rtd-theme.xibuild index 3b5c934..c2b942d 100644 --- a/repo/python-sphinx-rtd-theme/python-sphinx-rtd-theme.xibuild +++ b/repo/python-sphinx-rtd-theme/python-sphinx-rtd-theme.xibuild @@ -1,7 +1,7 @@ #!/bin/sh MAKEDEPS="python" -DEPS="python-sphinx python-docutils python-transifex-python-client python-sphinxcontrib-python-httpdomain python-bump2version" +DEPS="python-sphinx python-docutils python-transifex-python-client python-sphinxcontrib-python-httpdomain python-bump2version docutils" PKG_VER=1.0.0 SOURCE=https://files.pythonhosted.org/packages/source/s/sphinx_rtd_theme/sphinx_rtd_theme-$PKG_VER.tar.gz diff --git a/repo/python-sphinx/python-sphinx.xibuild b/repo/python-sphinx/python-sphinx.xibuild index 1bfaf8c..9c6b034 100644 --- a/repo/python-sphinx/python-sphinx.xibuild +++ b/repo/python-sphinx/python-sphinx.xibuild @@ -1,16 +1,17 @@ #!/bin/sh -MAKEDEPS="python python-setuptools" -DEPS="python-sphinxcontrib-applehelp python-sphinxcontrib-devhelp python-sphinxcontrib-htmlhelp python-sphinxcontrib-serializinghtml python-sphinxcontrib-qthelp python-Jinja2 python-docutils python-snowballstemmer python-babel python-alabaster python-imagesize python-requests python-packaging python-html5lib python-setuptools" +MAKEDEPS="python python-gpep517" +DEPS="python-sphinxcontrib python-sphinxcontrib python-sphinxcontrib python-sphinxcontrib python-sphinxcontrib python-sphinxcontrib python-Jinja2 python-Pygments python-docutils python-snowballstemmer python-babel python-alabaster python-imagesize python-requests python-packaging python-importlib python-colorama python-sphinxcontrib python-flake8 python-flake8 python-flake8 python-flake8 python-isort python-mypy python-sphinx python-docutils python-types python-types python-pytest python-html5lib python-typed_ast python-cython" -PKG_VER=4.4.0 -SOURCE=https://files.pythonhosted.org/packages/c9/08/c2932e66460cfbc8973928d276dc82ccde2d24b365055eeda9f0afc1951e/Sphinx-$PKG_VER.tar.gz +PKG_VER=5.3.0 +SOURCE="https://github.com/sphinx-doc/sphinx/archive/v$PKG_VER/sphinx-$PKG_VER.tar.gz" DESC="Python documentation generator" build() { - python setup.py build + mkdir dist + python -m gpep517 build-wheel --wheel-dir dist --output-fd 1 } package () { - python setup.py install --root="$PKG_DEST" --optimize=1 + python -m installer -d "$PKG_DEST" dist/sphinx-*.whl } diff --git a/repo/python-tomli-w/python-tomli-w.xibuild b/repo/python-tomli-w/python-tomli-w.xibuild new file mode 100644 index 0000000..24bc5f2 --- /dev/null +++ b/repo/python-tomli-w/python-tomli-w.xibuild @@ -0,0 +1,15 @@ +#!/bin/sh + + +PKG_VER=1.0.0 +SOURCE=https://files.pythonhosted.org/packages/49/05/6bf21838623186b91aedbda06248ad18f03487dc56fbc20e4db384abde6c/tomli_w-$PKG_VER.tar.gz +MAKEDEPS="python" +DESC="A lil' TOML writer" + +build() { + python -m build --no-isolation --wheel +} + +package () { + python -m installer -d "$PKG_DEST" dist/tomli_w-1.0.0-py3-none-any.whl +} diff --git a/repo/python-yaml/python-yaml.xibuild b/repo/python-yaml/python-yaml.xibuild new file mode 100644 index 0000000..07bc59b --- /dev/null +++ b/repo/python-yaml/python-yaml.xibuild @@ -0,0 +1,22 @@ +#!/bin/sh + +NAME="python-yaml" +DESC="Python3 bindings for YAML" + +MAKEDEPS="python yaml " + +PKG_VER=6.0 +SOURCE="https://github.com/yaml/pyyaml/archive/$PKG_VER.tar.gz" + +build() { + python3 setup.py build +} + +check() { + python3 setup.py test +} + +package() { + python3 setup.py install --prefix=/usr --root="$PKG_DEST" +} + diff --git a/repo/python/python.xibuild b/repo/python/python.xibuild index 5444667..01b6729 100644 --- a/repo/python/python.xibuild +++ b/repo/python/python.xibuild @@ -2,7 +2,7 @@ MAKEDEPS="make autoconf automake autoconf-archive sqlite3 expat bzip2 gdbm libffi libnsl libxcrypt openssl zlib grep lv2" -PKG_VER=3.10.7 +PKG_VER=3.10.9 SOURCE=https://www.python.org/ftp/python/$PKG_VER/Python-$PKG_VER.tgz DESC="The Python development environment" ADDITIONAL=" diff --git a/repo/qemu/qemu.xibuild b/repo/qemu/qemu.xibuild index 25906d6..33720d9 100644 --- a/repo/qemu/qemu.xibuild +++ b/repo/qemu/qemu.xibuild @@ -46,7 +46,6 @@ build() { --enable-usb-redir \ --enable-vhost-net \ --enable-virtfs \ - --enable-vnc-png\ --audio-drv-list=alsa,sdl,jack,pa \ --enable-opengl \ --enable-pa \ diff --git a/repo/re2/re2.xibuild b/repo/re2/re2.xibuild index 4dd0e5d..7fd75b1 100644 --- a/repo/re2/re2.xibuild +++ b/repo/re2/re2.xibuild @@ -10,9 +10,10 @@ PKG_VER=2022.04.01 SOURCE="https://github.com/google/re2/archive/$(echo $PKG_VER | sed "s/\./-/g").tar.gz" build () { - make PREFIX=/usr + make prefix=/usr } package () { - make PREFIX=/usr DESTDIR=$PKG_DEST install + make prefix=/usr DESTDIR=$PKG_DEST install } + diff --git a/repo/ronn/ronn.xibuild b/repo/ronn/ronn.xibuild index 50e700e..996470e 100644 --- a/repo/ronn/ronn.xibuild +++ b/repo/ronn/ronn.xibuild @@ -3,7 +3,7 @@ NAME="ronn" DESC="Convert Markdown files to manpages" -MAKEDEPS="" +MAKEDEPS="ruby" PKG_VER=0.9.1 _gemname=ronn-ng @@ -23,10 +23,6 @@ build() { gem build $_gemname.gemspec } -check() { - rake test -} - package() { local gemdir="$PKG_DEST/$(ruby -e 'puts Gem.default_dir')" local geminstdir="$gemdir/gems/$_gemname-$PKG_VER" diff --git a/repo/ruby-mustache/ruby-mustache.xibuild b/repo/ruby-mustache/ruby-mustache.xibuild index 6cc5c05..38fd371 100644 --- a/repo/ruby-mustache/ruby-mustache.xibuild +++ b/repo/ruby-mustache/ruby-mustache.xibuild @@ -22,9 +22,6 @@ build() { gem build $_gemname.gemspec } -check() { - rake test -} package() { local gemdir="$PKG_DEST/$(ruby -e 'puts Gem.default_dir')" diff --git a/repo/ruby-nokogiri/ruby-nokogiri.xibuild b/repo/ruby-nokogiri/ruby-nokogiri.xibuild index 75e6d95..f8003b3 100644 --- a/repo/ruby-nokogiri/ruby-nokogiri.xibuild +++ b/repo/ruby-nokogiri/ruby-nokogiri.xibuild @@ -3,7 +3,7 @@ NAME="ruby-nokogiri" DESC="An HTML, XML, SAX, and Reader parser" -MAKEDEPS="libxml2 libxslt ruby ruby-mini_portile2" +MAKEDEPS="libxml2 libxslt ruby" _gemname=${NAME#ruby-} @@ -57,6 +57,6 @@ package() { cd "$BUILD_ROOT"/dist mkdir -p "$gemdir" - cp -r bin extensions gems specifications "$gemdir"/ + cp -r ../bin extensions gems specifications "$gemdir"/ } diff --git a/repo/ruby/ruby.xibuild b/repo/ruby/ruby.xibuild index 6184e18..bcf17cb 100644 --- a/repo/ruby/ruby.xibuild +++ b/repo/ruby/ruby.xibuild @@ -3,8 +3,7 @@ NAME="ruby" DESC="An object-oriented language for quick and easy programming" -MAKEDEPS="make " -DEPS="toybox cacerts gmp libucontext musl zlib " +MAKEDEPS="make toybox cacerts gmp libucontext musl zlib " PKG_VER=3.1.2 SOURCE="https://cache.ruby-lang.org/pub/ruby/${PKG_VER%.*}/ruby-$PKG_VER.tar.gz" diff --git a/skip/rust/0006-Prefer-libgcc_eh-over-libunwind-for-musl.patch b/repo/rust/0006-Prefer-libgcc_eh-over-libunwind-for-musl.patch index 30cb66f..30cb66f 100644 --- a/skip/rust/0006-Prefer-libgcc_eh-over-libunwind-for-musl.patch +++ b/repo/rust/0006-Prefer-libgcc_eh-over-libunwind-for-musl.patch diff --git a/skip/rust/0007-do-not-install-libunwind-source.patch b/repo/rust/0007-do-not-install-libunwind-source.patch index e8ff8b7..e8ff8b7 100644 --- a/skip/rust/0007-do-not-install-libunwind-source.patch +++ b/repo/rust/0007-do-not-install-libunwind-source.patch diff --git a/skip/rust/alpine-move-py-scripts-to-share.patch b/repo/rust/alpine-move-py-scripts-to-share.patch index 21be36f..21be36f 100644 --- a/skip/rust/alpine-move-py-scripts-to-share.patch +++ b/repo/rust/alpine-move-py-scripts-to-share.patch diff --git a/skip/rust/alpine-target.patch b/repo/rust/alpine-target.patch index 2392cdd..2392cdd 100644 --- a/skip/rust/alpine-target.patch +++ b/repo/rust/alpine-target.patch diff --git a/skip/rust/cargo.xibuild b/repo/rust/cargo.xibuild index 8a9f47e..8a9f47e 100644 --- a/skip/rust/cargo.xibuild +++ b/repo/rust/cargo.xibuild diff --git a/skip/rust/check-rustc b/repo/rust/check-rustc index d4b85be..d4b85be 100644 --- a/skip/rust/check-rustc +++ b/repo/rust/check-rustc diff --git a/skip/rust/install-template-shebang.patch b/repo/rust/install-template-shebang.patch index e81b579..e81b579 100644 --- a/skip/rust/install-template-shebang.patch +++ b/repo/rust/install-template-shebang.patch diff --git a/skip/rust/link-musl-dynamically.patch b/repo/rust/link-musl-dynamically.patch index 55d02a3..55d02a3 100644 --- a/skip/rust/link-musl-dynamically.patch +++ b/repo/rust/link-musl-dynamically.patch diff --git a/skip/rust/musl-fix-linux_musl_base.patch b/repo/rust/musl-fix-linux_musl_base.patch index 1771ffe..1771ffe 100644 --- a/skip/rust/musl-fix-linux_musl_base.patch +++ b/repo/rust/musl-fix-linux_musl_base.patch diff --git a/skip/rust/need-rpath.patch b/repo/rust/need-rpath.patch index 5ab8377..5ab8377 100644 --- a/skip/rust/need-rpath.patch +++ b/repo/rust/need-rpath.patch diff --git a/skip/rust/need-ssp_nonshared.patch b/repo/rust/need-ssp_nonshared.patch index f1adf20..f1adf20 100644 --- a/skip/rust/need-ssp_nonshared.patch +++ b/repo/rust/need-ssp_nonshared.patch diff --git a/skip/rust/rust.xibuild b/repo/rust/rust.xibuild index 1fb6930..8b95956 100644 --- a/skip/rust/rust.xibuild +++ b/repo/rust/rust.xibuild @@ -3,7 +3,7 @@ MAKEDEPS="cmake libclang clang llvm curl" DEPS="libssh2 openssl" -PKG_VER=1.63.0 +PKG_VER=1.66.0 SOURCE=https://static.rust-lang.org/dist/rustc-$PKG_VER-src.tar.gz DESC="Systems programming language focused on safety, speed and concurrency" @@ -24,7 +24,7 @@ prepare () { } build () { - export CFLAGS="$CFLAGS -fPIE" + export CFLAGS="$CFLAGS -fPIE -fPIC" export CXXFLAGS="$CFLAGS" target=x86_64-unknown-linux-musl build=x86_64-unknown-linux-musl diff --git a/repo/rxvt-unicode/rxvt-unicode.xibuild b/repo/rxvt-unicode/rxvt-unicode.xibuild index ddae254..649ecb0 100644 --- a/repo/rxvt-unicode/rxvt-unicode.xibuild +++ b/repo/rxvt-unicode/rxvt-unicode.xibuild @@ -1,7 +1,6 @@ #!/bin/sh -MAKEDEPS="make ncurses" -DEPS="libxft perl startup-notification libnsl libptytty" +MAKEDEPS="make ncurses libxft perl startup-notification libnsl libptytty" DESC="Unicode fork of rxvt terminal emulator" diff --git a/repo/sassc/sassc.xibuild b/repo/sassc/sassc.xibuild new file mode 100644 index 0000000..1045d4e --- /dev/null +++ b/repo/sassc/sassc.xibuild @@ -0,0 +1,33 @@ +#!/bin/sh + +NAME="sassc" +DESC="Libsass command line driver" + +MAKEDEPS="libsass autoconf automake libtool" + +PKG_VER=3.6.2 +SOURCE="https://github.com/sass/sassc/archive/$PKG_VER.tar.gz" + +prepare() { + cat <<- __EOF__ > version.sh + echo $PKG_VER + __EOF__ + + autoreconf -vif +} + +build() { + ./configure \ + --prefix=/usr \ + --disable-static + make +} + +check() { + ./sassc --help > /dev/null +} + +package() { + make DESTDIR="$PKG_DEST" install +} + diff --git a/repo/sbc/sbc.xibuild b/repo/sbc/sbc.xibuild index 3a28ea3..952be4a 100644 --- a/repo/sbc/sbc.xibuild +++ b/repo/sbc/sbc.xibuild @@ -8,13 +8,6 @@ MAKEDEPS="libsndfile linux-headers flac libvorbis libogg opus" PKG_VER=2.0 SOURCE="https://www.kernel.org/pub/linux/bluetooth/sbc-$PKG_VER.tar.xz" -ADDITIONAL=" -fix-build-on-non-x86.patch -" -prepare () { - apply_patches -} - build() { ./configure \ --prefix=/usr \ diff --git a/repo/sdl2-ttf/sdl2-ttf.xibuild b/repo/sdl2-ttf/sdl2-ttf.xibuild index 12cdba8..335d1f6 100644 --- a/repo/sdl2-ttf/sdl2-ttf.xibuild +++ b/repo/sdl2-ttf/sdl2-ttf.xibuild @@ -5,13 +5,11 @@ DESC="A library which allows you to use TrueType fonts in your SDL applications" MAKEDEPS="freetype2 mesa sdl2" -PKG_VER=2.0.18 +PKG_VER=2.20.1 SOURCE="https://www.libsdl.org/projects/SDL_ttf/release/SDL2_ttf-$PKG_VER.tar.gz" build() { ./configure \ - - --prefix=/usr \ --enable-static make diff --git a/repo/slock/slock.xibuild b/repo/slock/slock.xibuild index 57b7eb2..d7c317d 100644 --- a/repo/slock/slock.xibuild +++ b/repo/slock/slock.xibuild @@ -3,11 +3,10 @@ NAME="slock" DESC="simple X display locker utility" -MAKEDEPS="make " -DEPS="libx11 " +MAKEDEPS="make libx11 " PKG_VER= -SOURCE="https://git.suckless.org/slock" +SOURCE="git://git.suckless.org/slock" build () { make PREFIX=/usr diff --git a/repo/slop/slop.xibuild b/repo/slop/slop.xibuild index 263118b..73bbb60 100644 --- a/repo/slop/slop.xibuild +++ b/repo/slop/slop.xibuild @@ -3,8 +3,7 @@ NAME="slop" DESC="Application that queries for a selection from the user and prints the region to stdout" -MAKEDEPS="cmake " -DEPS="icu libice libsm libx11 libxext libxrender glm glew" +MAKEDEPS="cmake icu libice libsm libx11 libxext libxrender glm glew" PKG_VER=7.6 SOURCE="https://github.com/naelstrof/slop/archive/v$PKG_VER.tar.gz" diff --git a/repo/snes9x/snes9x.xibuild b/repo/snes9x/snes9x.xibuild index d82f9ec..2e5f724 100644 --- a/repo/snes9x/snes9x.xibuild +++ b/repo/snes9x/snes9x.xibuild @@ -3,7 +3,7 @@ NAME="snes9x" DESC="Super NES Emulator" -MAKEDEPS=" alsa-lib glib gtk+3.0 gtkmm3 libepoxy libpng libxrandr libxv meson minizip portaudio sdl2 wayland zlib" +MAKEDEPS="alsa-lib glib gtk3 gtkmm3 libepoxy libpng libxrandr libxv meson minizip portaudio sdl2 wayland zlib" glslang=bcf6a2430e99e8fc24f9f266e99316905e6d5134 spirv=1458bae62ec67ea7d12c5a13b740e23ed4bb226c diff --git a/repo/stty/stty.xibuild b/repo/stty/stty.xibuild index 8fd431d..12b57b6 100644 --- a/repo/stty/stty.xibuild +++ b/repo/stty/stty.xibuild @@ -4,7 +4,7 @@ MAKEDEPS="make sort" DEPS="musl sh" SOURCE=https://xi.davidovski.xyz/git/other/stty.git -DESC="Stty forked" +DESC="bsd stty modified to work with gnu options" build () { meson --prefix=/usr build diff --git a/repo/supertux/supertux.xibuild b/repo/supertux/supertux.xibuild index 3e16205..f45766c 100644 --- a/repo/supertux/supertux.xibuild +++ b/repo/supertux/supertux.xibuild @@ -4,7 +4,6 @@ NAME="supertux" DESC="Open-source classic 2D jump'n run sidescroller game" MAKEDEPS="boost cmake curl freetype2 glew libpng libvorbis openal-soft physfs sdl2 glm sdl2-image" -DEPS="sdl2-image physfs" PKG_VER=0.6.3 SOURCE="https://github.com/SuperTux/supertux/releases/download/v$PKG_VER/SuperTux-v$PKG_VER-Source.tar.gz" diff --git a/repo/sysconfigs/consolecolor b/repo/sysconfigs/consolecolor new file mode 100755 index 0000000..1b55bb6 --- /dev/null +++ b/repo/sysconfigs/consolecolor @@ -0,0 +1,32 @@ +#!/sbin/openrc-run +description="Sets a color for the consoles." + +depend() +{ + need termencoding + after hotplug bootmisc modules + keyword -docker -lxc -openvz -prefix -systemd-nspawn -uml -vserver -xenu +} + +start() +{ + for tty in /dev/tty*; do { + printf "\033]P0191919" + printf "\033]P1A54242" + printf "\033]P28C9440" + printf "\033]P3DE935F" + printf "\033]P45F819D" + printf "\033]P585678F" + printf "\033]P65E8D87" + printf "\033]P7707880" + printf "\033]P8373B41" + printf "\033]P9CC6666" + printf "\033]PAB5BD68" + printf "\033]PBF0C674" + printf "\033]PC81A2BE" + printf "\033]PDB294BB" + printf "\033]PEB4D6D1" + printf "\033]PFFEFEFE" + printf "\033[2J" + } > $tty; done +} diff --git a/repo/sysconfigs/sysconfigs.xibuild b/repo/sysconfigs/sysconfigs.xibuild index c3723c1..85f7f28 100644 --- a/repo/sysconfigs/sysconfigs.xibuild +++ b/repo/sysconfigs/sysconfigs.xibuild @@ -1,11 +1,13 @@ #!/bin/sh -MAKEDEPS="" -DEPS="sh" +MAKEDEPS="sh" +DEPS="mksh" PKG_VER=N/A DESC="Default system configs for xilinux" +ADDITIONAL="consolecolor" + package () { mkdir -p $PKG_DEST/etc/ mkdir -p $PKG_DEST/etc/sysconfig @@ -93,5 +95,25 @@ SUPPORT_URL="https://xi.davidovski.xyz" BUG_REPORT_URL="https://xi.davidovski.xyz" LOGO=xilinux-logo EOF + cat > $PKG_DEST/etc/default/useradd << "EOF" +GROUP=999 +HOME=/home +INACTIVE=-1 +EXPIRE= +SHELL=/bin/mksh +SKEL=/etc/skel +CREATE_MAIL_SPOOL=yes +LOG_INIT=yes +EOF + + mkdir -p $PKG_DEST/etc/init.d + install -m755 consolecolor $PKG_DEST/etc/init.d/ + + mkdir -p $PKG_DEST/etc/runlevels/boot + ln -s /etc/init.d/consolecolor $PKG_DEST/etc/runlevels/boot/consolecolor + + cat > $PKG_DEST/etc/shells << "EOF" + /bin/sh +EOF } diff --git a/repo/tcsh/tcsh.xibuild b/repo/tcsh/tcsh.xibuild index c6bc9e3..f6a33d9 100644 --- a/repo/tcsh/tcsh.xibuild +++ b/repo/tcsh/tcsh.xibuild @@ -17,7 +17,7 @@ tcsh.post-install " prepare() { - apply_patches + apply_patches || true } build() { diff --git a/repo/testdisk/testdisk.xibuild b/repo/testdisk/testdisk.xibuild new file mode 100644 index 0000000..0a470b6 --- /dev/null +++ b/repo/testdisk/testdisk.xibuild @@ -0,0 +1,30 @@ +#!/bin/sh + +NAME="testdisk" +DESC="A data recovery suite" + +MAKEDEPS=" e2fsprogs ntfs-3g ncurses zlib libjpeg-turbo" + +PKG_VER=7.1 +SOURCE="https://www.cgsecurity.org/testdisk-$PKG_VER.tar.bz2" + +build() { + cd "$BUILD_ROOT" + ./configure \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --infodir=/usr/share/info + make +} + +check() { + cd "$BUILD_ROOT" + make check +} + +package() { + cd "$BUILD_ROOT" + make DESTDIR="$PKG_DEST" install +} + diff --git a/repo/thunderbird/fix-webrtc-glibcisms.patch b/repo/thunderbird/fix-webrtc-glibcisms.patch deleted file mode 100644 index 7533d94..0000000 --- a/repo/thunderbird/fix-webrtc-glibcisms.patch +++ /dev/null @@ -1,20 +0,0 @@ ---- ./third_party/libwebrtc/webrtc/system_wrappers/source/cpu_features_linux.c.orig 2018-05-09 23:48:44.677389171 +0200 -+++ ./third_party/libwebrtc/webrtc/system_wrappers/source/cpu_features_linux.c 2018-05-09 23:48:56.254373557 +0200 -@@ -14,7 +14,7 @@ - #ifndef __GLIBC_PREREQ - #define __GLIBC_PREREQ(a, b) 0 - #endif --#if __GLIBC_PREREQ(2, 16) -+#if !__GLIBC__ || __GLIBC_PREREQ(2, 16) - #include <sys/auxv.h> - #else - #include <fcntl.h> -@@ -32,7 +32,7 @@ - int architecture = 0; - unsigned long hwcap = 0; - const char* platform = NULL; --#if __GLIBC_PREREQ(2, 16) -+#if !__GLIBC__ || __GLIBC_PREREQ(2, 16) - hwcap = getauxval(AT_HWCAP); - platform = (const char*)getauxval(AT_PLATFORM); - #else diff --git a/repo/thunderbird/sandbox-sched_setscheduler.patch b/repo/thunderbird/sandbox-sched_setscheduler.patch deleted file mode 100644 index 1db645a..0000000 --- a/repo/thunderbird/sandbox-sched_setscheduler.patch +++ /dev/null @@ -1,23 +0,0 @@ -upstream bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1657849 -diff --git a/security/sandbox/linux/SandboxFilter.cpp b/security/sandbox/linux/SandboxFilter.cpp -index 27da4e7..5a607a4 100644 ---- a/security/sandbox/linux/SandboxFilter.cpp -+++ b/security/sandbox/linux/SandboxFilter.cpp -@@ -1455,6 +1455,7 @@ class GMPSandboxPolicy : public SandboxPolicyCommon { - return Trap(OpenTrap, mFiles); - - case __NR_brk: -+ case __NR_sched_setscheduler: - // Because Firefox on glibc resorts to the fallback implementation - // mentioned in bug 1576006, we must explicitly allow the get*id() - // functions in order to use NSS in the clearkey CDM. -@@ -1467,8 +1468,7 @@ class GMPSandboxPolicy : public SandboxPolicyCommon { - case __NR_sched_get_priority_max: - return Allow(); - case __NR_sched_getparam: -- case __NR_sched_getscheduler: -- case __NR_sched_setscheduler: { -+ case __NR_sched_getscheduler: { - Arg<pid_t> pid(0); - return If(pid == 0, Allow()).Else(Trap(SchedTrap, nullptr)); - } diff --git a/repo/thunderbird/thunderbird.xibuild b/repo/thunderbird/thunderbird.xibuild deleted file mode 100644 index 20a8edc..0000000 --- a/repo/thunderbird/thunderbird.xibuild +++ /dev/null @@ -1,169 +0,0 @@ -#!/bin/sh - -NAME="thunderbird" -DESC="Thunderbird email client" - -MAKEDEPS=" alsa-lib automake botan cargo cbindgen clang dbus-glib gettext gtk3 icu json-c libevent libffi libjpeg-turbo libnotify libogg libtheora libtool libvorbis libvpx libwebp libxcomposite libxt llvm m4 mesa nasm nodejs nspr nss pipewire pulseaudio python sed wireless-tools zip" - -PKG_VER=91.13.0 -SOURCE="https://ftp.mozilla.org/pub/thunderbird/releases/$PKG_VER/source/thunderbird-$PKG_VER.source.tar.xz" - -ADDITIONAL=" -allow-custom-rust-vendor.patch -avoid-redefinition.patch -disable-moz-stackwalk.patch -disable-neon-in-aom.patch -fix-fortify-system-wrappers.patch -fix-rust-target.patch -fix-tools.patch -fix-webrtc-glibcisms.patch -mallinfo.patch -sandbox-fork.patch -sandbox-largefile.patch -sandbox-sched_setscheduler.patch -stab.h -thunderbird.desktop -" - -mozappdir=/usr/lib/thunderbird - -_clear_vendor_checksums() { - sed -i 's/\("files":{\)[^}]*/\1/' third_party/rust/$1/.cargo-checksum.json -} - -prepare() { - apply_patches - cp "$BUILD_ROOT"/stab.h toolkit/crashreporter/google-breakpad/src/ - - _clear_vendor_checksums audio_thread_priority - _clear_vendor_checksums target-lexicon-0.9.0 -} - -build() { - mkdir -p "$BUILD_ROOT"/objdir - cd "$BUILD_ROOT"/objdir - - export SHELL=/bin/sh - export BUILD_OFFICIAL=1 - export MOZILLA_OFFICIAL=1 - export USE_SHORT_LIBNAME=1 - export MACH_USE_SYSTEM_PYTHON=1 - export MOZBUILD_STATE_PATH="$BUILD_ROOT"/mozbuild - # Build with Clang, takes less RAM - export CC="clang" - export CXX="clang++" - - # set rpath so linker finds the libs - export LDFLAGS="$LDFLAGS -Wl,-rpath,$mozappdir" - - ../mach configure \ - --prefix=/usr \ - --disable-elf-hack \ - --enable-rust-simd \ - \ - --disable-crashreporter \ - --disable-gold \ - --disable-install-strip \ - --disable-jemalloc \ - --disable-profiling \ - --disable-strip \ - --disable-tests \ - --disable-updater \ - \ - --enable-alsa \ - --enable-application=comm/mail \ - --enable-dbus \ - --enable-default-toolkit=cairo-gtk3-wayland \ - --enable-ffmpeg \ - --enable-hardening \ - --enable-necko-wifi \ - --enable-official-branding \ - --enable-openpgp \ - --enable-optimize="$CFLAGS -O2" \ - --enable-pulseaudio \ - --enable-release \ - --enable-smoosh \ - --enable-system-ffi \ - --enable-system-pixman \ - \ - --with-system-botan \ - --with-system-ffi \ - --with-system-icu \ - --with-system-jpeg \ - --with-system-jsonc \ - --with-system-libevent \ - --with-system-libvpx \ - --with-system-nspr \ - --with-system-nss \ - --with-system-pixman \ - --with-system-png \ - --with-system-webp \ - --with-system-zlib \ - --with-libclang-path=/usr/lib - ../mach build -} - -package() { - cd "$BUILD_ROOT"/objdir - - DESTDIR="$PKG_DEST" MOZ_MAKE_FLAGS="$MAKEOPTS" ../mach install - - install -m755 -d "$PKG_DEST"/usr/share/applications - install -m755 -d "$PKG_DEST"/usr/share/pixmaps - - local _png - for _png in "$BUILD_ROOT"/comm/mail/branding/thunderbird/default*.png; do - local i=${_png%.png} - i=${i##*/default} - install -D -m644 "$_png" "$PKG_DEST"/usr/share/icons/hicolor/"$i"x"$i"/apps/thunderbird.png - done - - install -Dm644 "$BUILD_ROOT"/comm/mail/branding/thunderbird/TB-symbolic.svg \ - "$PKG_DEST/usr/share/icons/hicolor/symbolic/apps/thunderbird-symbolic.svg" - install -Dm644 "$BUILD_ROOT"/comm/mail/branding/thunderbird/default48.png \ - $PKG_DEST/usr/share/pixmaps/thunderbird.png - - install -m644 "$BUILD_ROOT"/thunderbird.desktop "$PKG_DEST"/usr/share/applications/thunderbird.desktop - - # Add StartupWMClass=firefox on the .desktop files so Desktop Environments - # correctly associate the window with their icon, the correct fix is to have - # thunderbird sets its own AppID but this will work for the meantime - # See: https://bugzilla.mozilla.org/show_bug.cgi?id=1607399 - echo "StartupWMClass=thunderbird" >> "$PKG_DEST"/usr/share/applications/thunderbird.desktop - - # install our vendor prefs - install -d "$PKG_DEST"/$mozappdir/defaults/preferences - - cat >> "$PKG_DEST"/$mozappdir/defaults/preferences/vendor.js <<- EOF - // Use LANG environment variable to choose locale - pref("intl.locale.requested", ""); - - // Use system-provided dictionaries - pref("spellchecker.dictionary_path", "/usr/share/hunspell"); - - // Disable default mailer checking. - pref("mail.shell.checkDefaultMail", false); - - // Don't disable our bundled extensions in the application directory - pref("extensions.autoDisableScopes", 11); - pref("extensions.shownSelectionUI", true); - EOF - - install -d "$PKG_DEST"/$mozappdir/distribution - - cat >> "$PKG_DEST"/$mozappdir/distribution/distribution.ini <<- EOF - [Global] - id=xilinux - version=1.0 - about=Mozilla Thunderbird for XiLinux - - [Preferences] - app.distributor=xilinux - app.distributor.channel=thunderbird - EOF - - # Replace duplicate binary with wrapper - # https://bugzilla.mozilla.org/show_bug.cgi?id=658850 - ln -sf thunderbird "$PKG_DEST/$mozappdir/thunderbird-bin" -} - diff --git a/repo/tidyhtml/tidyhtml.xibuild b/repo/tidyhtml/tidyhtml.xibuild new file mode 100644 index 0000000..6352cd4 --- /dev/null +++ b/repo/tidyhtml/tidyhtml.xibuild @@ -0,0 +1,31 @@ +#!/bin/sh + +NAME="tidyhtml" +DESC="Tool to tidy down your HTML code to a clean style" + +MAKEDEPS=" cmake libxslt" + +PKG_VER=5.8.0 +SOURCE="https://github.com/htacg/tidy-html5/archive/$PKG_VER.tar.gz" + +build() { + cmake -B build \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DBUILD_SHARED_LIBS=True \ + -DCMAKE_BUILD_TYPE=None \ + -DSUPPORT_LOCALIZATIONS=OFF \ + -DTIDY_CONSOLE_SHARED=ON \ + $CMAKE_CROSSOPTS . + cmake --build build +} + +check() { + cd build + ./tidy --help > /dev/null +} + +package() { + cd .. + DESTDIR="$PKG_DEST" cmake --install build +} + diff --git a/repo/torsocks/torsocks.xibuild b/repo/torsocks/torsocks.xibuild index 0a215e1..b284926 100644 --- a/repo/torsocks/torsocks.xibuild +++ b/repo/torsocks/torsocks.xibuild @@ -3,7 +3,7 @@ NAME="torsocks" DESC="Wrapper to safely torify applications" -MAKEDEPS=" autoconf automake libtool" +MAKEDEPS="autoconf automake libtool" PKG_VER=2.4.0 SOURCE="https://gitlab.torproject.org/tpo/core/torsocks/-/archive/v$PKG_VER/torsocks-v$PKG_VER.tar.gz" diff --git a/repo/toybox/toybox.xibuild b/repo/toybox/toybox.xibuild index c6be8f4..5eb27ad 100644 --- a/repo/toybox/toybox.xibuild +++ b/repo/toybox/toybox.xibuild @@ -14,7 +14,7 @@ ADDITIONAL=" config " -tools=" install basename cat chgrp chown chmod cksum crc32 cmp comm cp mv cpio cut date df dirname du echo env expand false find file getconf head iconv id groups logname whoami kill killall5 link ln logger ls mkdir mkfifo nice nl nohup od paste printf top iotop pwd renice rm rmdir sed sleep sort split strings tail tar tee test time touch true tty ulimit arch uname uniq unlink uudecode uuencode wc who xargs ascii unicode base32 fstype blockdev chroot count dos2unix unix2dos factor fmt hexedit printenv readlink realpath rev sha3sum shred stat tac nproc taskset timeout truncate usleep uuidgen w which md5sum sha1sum sha224sum sha256sum sha384sum sha512sum mknod mktemp seq sync " +tools=" install basename cat chgrp chown chmod cksum cmp comm cp mv cut date diff df dirname du echo env expand false find file getconf head iconv id groups logname whoami kill killall5 link ln ls mkdir mkfifo nice nl nohup od paste printf iotop pwd rm rmdir sed sleep sort split strings tail tee test time touch true tty ulimit arch uname uniq unlink uudecode uuencode wc who xargs ascii unicode base32 fstype blockdev chroot dos2unix unix2dos factor fmt hexedit printenv readlink realpath sha3sum shred stat tac nproc timeout truncate usleep w which md5sum sha1sum sha224sum sha256sum sha384sum sha512sum mknod mktemp seq sync tr dd" prepare () { make defconfig @@ -37,7 +37,7 @@ build() { package() { for tool in $tools; do install -Dm755 $tool $PKG_DEST/usr/bin/$tool || return 1 - install -Dm755 $tool $PKG_DEST/usr/share/man/man1/$tool.1 || return 1 + #install -Dm755 $tool $PKG_DEST/usr/share/man/man1/$tool.1 || return 1 done } diff --git a/repo/vigra/vigra.xibuild b/repo/vigra/vigra.xibuild index 0fd1c60..3138d22 100644 --- a/repo/vigra/vigra.xibuild +++ b/repo/vigra/vigra.xibuild @@ -6,7 +6,7 @@ DESC="An image processing and analysis library" MAKEDEPS=" tiff libjpeg-turbo libpng boost cmake doxygen" PKG_VER=1.11.267 -SOURCE="https://github.com/ukoethe/vigra" +SOURCE="https://github.com/ukoethe/vigra.git" build() { cmake . \ diff --git a/repo/virt-manager/virt-manager.xibuild b/repo/virt-manager/virt-manager.xibuild index 6050b75..5593e5a 100644 --- a/repo/virt-manager/virt-manager.xibuild +++ b/repo/virt-manager/virt-manager.xibuild @@ -14,9 +14,9 @@ fix-latest-libvirt-xml-output.patch tests-remove-sgio-unfiltered.patch " -prepare () { - apply_patches -} +#prepare () { + #apply_patches +#} build() { python3 setup.py build diff --git a/repo/vlc/vlc.xibuild b/repo/vlc/vlc.xibuild index f9a2c95..1fbc023 100644 --- a/repo/vlc/vlc.xibuild +++ b/repo/vlc/vlc.xibuild @@ -3,7 +3,7 @@ NAME="vlc" DESC="A multi-platform MPEG, VCD/DVD, and DivX player" -MAKEDEPS="a52dec alsa-lib automake autoconf avahi bison libtool dav1d dbus faad2 ffmpeg4 flac flex freetype2 gtk3 libbluray libavc1394 libcddb libdc1394 libdvbpsi libdvdnav libdvdread libgcrypt libice libmad libmatroska libmpeg2 libnotify libogg libraw1394 librsvg libshout libsm libsrt libtheora libva libvdpau libvorbis libvpx libx11 libxext libxinerama libxml2 libxpm libxv live-media lua mesa ncurses opus pkgconfig qt5-qtbase qt5-qtsvg qt5-qtx11extras sdl2 speex speexdsp sysfsutils taglib eudev v4l-utils wayland-protocols x264 x265 xcb-util-renderutil xcb-util-keysyms xdg-utils samba gnutls pulseaudio" +MAKEDEPS="a52dec alsa-lib automake autoconf bison libtool dav1d dbus faad2 ffmpeg4 flac flex freetype2 gtk3 libbluray libavc1394 libcddb libdc1394 libdvbpsi libdvdnav libdvdread libgcrypt libice libmad libmatroska libmpeg2 libnotify libogg libraw1394 librsvg libshout libsm libsrt libtheora libva libvdpau libvorbis libvpx libx11 libxext libxinerama libxml2 libxpm libxv live-media lua mesa ncurses opus pkg-config qt5-qtbase qt5-qtsvg qt5-qtx11extras sdl2 speex speexdsp sysfsutils taglib eudev v4l-utils wayland-protocols x264 x265 xcb-util-renderutil xcb-util-keysyms xdg-utils gnutls pulseaudio gzip tar" PKG_VER=3.0.17.4 SOURCE="https://download.videolan.org/vlc/$PKG_VER/vlc-$PKG_VER.tar.xz" @@ -89,6 +89,4 @@ package() { rm -rf "$PKG_DEST"/usr/share/kde4 } -check() { - make check -} + diff --git a/repo/x265/x265.xibuild b/repo/x265/x265.xibuild index b297936..33fe264 100644 --- a/repo/x265/x265.xibuild +++ b/repo/x265/x265.xibuild @@ -3,8 +3,7 @@ NAME="x265" DESC="Open Source H265/HEVC video encoder" -MAKEDEPS="cmake " -DEPS="musl " +MAKEDEPS="cmake pkg-config" #PKG_VER=3.5 SOURCE="https://bitbucket.org/multicoreware/x265_git.git" diff --git a/repo/xipkg/xilinux-installer.xibuild b/repo/xipkg/xilinux-installer.xibuild index edd6327..138c4ff 100644 --- a/repo/xipkg/xilinux-installer.xibuild +++ b/repo/xipkg/xilinux-installer.xibuild @@ -4,5 +4,5 @@ DESC="Installer for xilinux" DEPS="xilib xiutils xipkg curl util-linux dosfstools xichroot xitui" package () { - install -Dm755 scripts/installer.sh $PKG_DEST/usr/bin/xilinux-install + install -Dm755 iso/root/installer.sh $PKG_DEST/usr/bin/xilinux-install } diff --git a/repo/xipkg/xipkg.xibuild b/repo/xipkg/xipkg.xibuild index 8fd1e97..8d25a5e 100644 --- a/repo/xipkg/xipkg.xibuild +++ b/repo/xipkg/xipkg.xibuild @@ -3,7 +3,7 @@ MAKEDEPS="make shmk" DEPS="toybox openssl curl dash findutils diffutils sed xichroot grep base64 hbar parseconf xiutils tsort" -PKG_VER=1.7.5 +PKG_VER=1.7.7 SOURCE=https://git.davidovski.xyz/xilinux/xipkg.git BRANCH="v$PKG_VER" diff --git a/repo/xiutils/xiutils.xibuild b/repo/xiutils/xiutils.xibuild index 59338e6..a137304 100644 --- a/repo/xiutils/xiutils.xibuild +++ b/repo/xiutils/xiutils.xibuild @@ -3,7 +3,7 @@ MAKEDEPS="make gcc libunistring" DEPS="musl sh" -PKG_VER=1.8 +PKG_VER=1.8.2 SOURCE=https://git.davidovski.xyz/xilinux/xiutils.git BRANCH="v$PKG_VER" diff --git a/repo/zeromq/zeromq.xibuild b/repo/zeromq/zeromq.xibuild index 7ff5563..ebec431 100644 --- a/repo/zeromq/zeromq.xibuild +++ b/repo/zeromq/zeromq.xibuild @@ -24,7 +24,8 @@ build() { --sysconfdir=/etc \ --mandir=/usr/share/man \ --infodir=/usr/share/info \ - --with-libsodium + --with-libsodium \ + --disable-Werror make } diff --git a/repo/zlib/zlib.xibuild b/repo/zlib/zlib.xibuild index 1c9823e..0814cd7 100644 --- a/repo/zlib/zlib.xibuild +++ b/repo/zlib/zlib.xibuild @@ -4,7 +4,7 @@ MAKEDEPS="make " DEPS="musl" PKG_VER=1.2.12 -SOURCE=https://github.com/madler/zlib/archive/refs/tags/v$PKG_VER.tar.gz +SOURCE="https://github.com/madler/zlib/archive/refs/tags/v$PKG_VER.tar.gz" DESC="compression and decompression routines used by some programs" diff --git a/skip/apache2/alpine.layout b/skip/apache2/alpine.layout new file mode 100644 index 0000000..e9c948f --- /dev/null +++ b/skip/apache2/alpine.layout @@ -0,0 +1,22 @@ +<Layout Alpine> + prefix: /usr + exec_prefix: ${prefix} + bindir: ${prefix}/bin + sbindir: ${prefix}/sbin + libdir: ${prefix}/lib + libexecdir: ${prefix}/lib+ + mandir: ${prefix}/share/man + sysconfdir: /etc+ + datadir: ${prefix}/share+ + installbuilddir: ${datadir}/build + errordir: ${datadir}/error + iconsdir: ${datadir}/icons + htdocsdir: /var/www/localhost/htdocs + manualdir: /usr/share/doc/apache2/manual + cgidir: /var/www/localhost/cgi-bin + includedir: /usr/include+ + localstatedir: /var + runtimedir: /run+ + logfiledir: ${localstatedir}/log+ + proxycachedir: ${localstatedir}/cache+ +</Layout> diff --git a/skip/apache2/apache2-ssl.post-install b/skip/apache2/apache2-ssl.post-install new file mode 100644 index 0000000..1e8478a --- /dev/null +++ b/skip/apache2/apache2-ssl.post-install @@ -0,0 +1,30 @@ +#!/bin/sh + +ssldir=/etc/ssl/apache2 +sslkey=$ssldir/server.key +sslcert=$ssldir/server.pem + +umask 077 + +[ -f $sslkey ] || openssl genrsa 2048 > $sslkey 2>/dev/null + +FQDN=`hostname -f` +if [ "x${FQDN}" = "x" ]; then + FQDN=localhost.localdomain +fi + +if [ ! -f ${sslcert} ] ; then +cat << EOF | openssl req -new -key ${sslkey} \ + -x509 -days 365 -set_serial $RANDOM \ + -out ${sslcert} 2>/dev/null +-- +SomeState +SomeCity +SomeOrganization +SomeOrganizationalUnit +${FQDN} +root@${FQDN} +EOF +fi + + diff --git a/skip/apache2/apache2.confd b/skip/apache2/apache2.confd new file mode 100644 index 0000000..aeb3222 --- /dev/null +++ b/skip/apache2/apache2.confd @@ -0,0 +1,54 @@ +# /etc/conf.d/apache2: config file for /etc/init.d/apache2 + +# +# The default processing model (MPM) is the process-based +# 'prefork' model. A thread-based model, 'worker', is also +# available, but does not work with some modules (such as PHP). +# +#HTTPD=/usr/sbin/httpd.worker + +HTTPD="/usr/sbin/httpd" + +# +# To pass additional options (for instance, -D definitions) to the +# httpd binary at startup, set HTTPD_OPTS here. +# +HTTPD_OPTS= + +# Extended options for advanced uses of Apache ONLY +# You don't need to edit these unless you are doing crazy Apache stuff +# As not having them set correctly, or feeding in an incorrect configuration +# via them will result in Apache failing to start +# YOU HAVE BEEN WARNED. + +# PID file +#PIDFILE=/run/apache2/httpd.pid + +# timeout for startup/shutdown checks +#TIMEOUT=10 + +# ServerRoot setting +#SERVERROOT=/var/www + +# Configuration file location +# - If this does NOT start with a '/', then it is treated relative to +# $SERVERROOT by Apache +#CONFIGFILE=/etc/apache2/httpd.conf + +# Location to log startup errors to +# They are normally dumped to your terminal. +#STARTUPERRORLOG="/var/log/apache2/startuperror.log" + +# A command that outputs a formatted text version of the HTML at the URL +# of the command line. Designed for lynx, however other programs may work. +#LYNX="lynx -dump" + +# The URL to your server's mod_status status page. +# Required for status and fullstatus +#STATUSURL="http://localhost/server-status" + +# Method to use when reloading the server +# Valid options are 'restart' and 'graceful' +# See http://httpd.apache.org/docs/2.2/stopping.html for information on +# what they do and how they differ. +#RELOAD_TYPE="graceful" diff --git a/skip/apache2/apache2.initd b/skip/apache2/apache2.initd new file mode 100755 index 0000000..2975e7a --- /dev/null +++ b/skip/apache2/apache2.initd @@ -0,0 +1,154 @@ +#!/sbin/openrc-run + +extra_commands="configdump configtest modules virtualhosts" +extra_started_commands="fullstatus graceful gracefulstop reload" + +depend() { + need net + use mysql dns logger netmount postgresql + after sshd firewall +} + +configtest() { + ebegin "Checking ${SVCNAME} configuration" + checkconfig + eend $? +} + +checkconfd() { + PIDFILE="${PIDFILE:-/run/apache2/httpd.pid}" + TIMEOUT=${TIMEOUT:-10} + + SERVERROOT="${SERVERROOT:-/var/www}" + if [ ! -d ${SERVERROOT} ]; then + eerror "SERVERROOT does not exist: ${SERVERROOT}" + return 1 + fi + + CONFIGFILE="${CONFIGFILE:-/etc/apache2/httpd.conf}" + [ "${CONFIGFILE#/}" = "${CONFIGFILE}" ] && CONFIGFILE="${SERVERROOT}/${CONFIGFILE}" + if [ ! -r "${CONFIGFILE}" ]; then + eerror "Unable to read configuration file: ${CONFIGFILE}" + return 1 + fi + + HTTPD_OPTS="${HTTPD_OPTS} -d ${SERVERROOT}" + HTTPD_OPTS="${HTTPD_OPTS} -f ${CONFIGFILE}" + [ -n "${STARTUPERRORLOG}" ] && HTTPD_OPTS="${HTTPD_OPTS} -E ${STARTUPERRORLOG}" + return 0 + +} + +checkconfig() { + checkconfd || return 1 + + ${HTTPD} ${HTTPD_OPTS} -t 1>/dev/null 2>&1 + ret=$? + if [ $ret -ne 0 ]; then + eerror "${SVCNAME} has detected an error in your setup:" + ${HTTPD} ${HTTPD_OPTS} -t + fi + + return $ret +} + +start() { + checkconfig || return 1 + checkpath --directory $(dirname $PIDFILE) + + [ -f /var/log/apache2/ssl_scache ] && rm /var/log/apache2/ssl_scache + + ebegin "Starting ${SVCNAME}" + start-stop-daemon --start \ + --pidfile ${PIDFILE} \ + --exec ${HTTPD} \ + -- ${HTTPD_OPTS} -k start + eend $? +} + +stop() { + checkconfd || return 1 + + ebegin "Stopping ${SVCNAME}" + start-stop-daemon --stop --pidfile ${PIDFILE} --exec ${HTTPD} \ + --retry ${TIMEOUT} + eend $? +} + +reload() { + RELOAD_TYPE="${RELOAD_TYPE:-graceful}" + + checkconfig || return 1 + service_started "${SVCNAME}" || return + + if [ "${RELOAD_TYPE}" = "restart" ]; then + ebegin "Restarting ${SVCNAME}" + ${HTTPD} ${HTTPD_OPTS} -k restart + eend $? + elif [ "${RELOAD_TYPE}" = "graceful" ]; then + ebegin "Gracefully restarting ${SVCNAME}" + ${HTTPD} ${HTTPD_OPTS} -k graceful + eend $? + else + eerror "${RELOAD_TYPE} is not a valid RELOAD_TYPE. Please edit /etc/conf.d/${SVCNAME}" + fi +} + +graceful() { + checkconfig || return 1 + service_started "${SVCNAME}" || return + ebegin "Gracefully restarting ${SVCNAME}" + ${HTTPD} ${HTTPD_OPTS} -k graceful + eend $? +} + +gracefulstop() { + checkconfig || return 1 + ebegin "Gracefully stopping ${SVCNAME}" + start-stop-daemon --stop --pidfile ${PIDFILE} --exec ${HTTPD} \ + --retry SIGWINCH/${TIMEOUT} + eend $? +} + +modules() { + checkconfig || return 1 + + ${HTTPD} ${HTTPD_OPTS} -M 2>&1 +} + +fullstatus() { + LYNX="${LYNX:-lynx -dump}" + STATUSURL="${STATUSURL:-http://localhost/server-status}" + + if ! service_started "${SVCNAME}"; then + eerror "${SVCNAME} not started" + elif ! type -p $(set -- ${LYNX}; echo $1) 2>&1 >/dev/null; then + eerror "lynx not installed!" + else + ${LYNX} ${STATUSURL} + fi +} + +virtualhosts() { + checkconfd || return 1 + ${HTTPD} ${HTTPD_OPTS} -S +} + +configdump() { + LYNX="${LYNX:-lynx -dump}" + INFOURL="${INFOURL:-http://localhost/server-info}" + + checkconfd || return 1 + + if ! service_started "${SVCNAME}"; then + eerror "${SVCNAME} not started" + elif ! type -p $(set -- ${LYNX}; echo $1) 2>&1 >/dev/null; then + eerror "lynx not installed!" + else + echo "${HTTPD} started with '${HTTPD_OPTS}'" + for i in config server list; do + ${LYNX} "${INFOURL}/?${i}" | sed '/Apache Server Information/d;/^[[:space:]]\+[_]\+$/Q' + done + fi +} + diff --git a/skip/apache2/apache2.logrotate b/skip/apache2/apache2.logrotate new file mode 100644 index 0000000..b50fb71 --- /dev/null +++ b/skip/apache2/apache2.logrotate @@ -0,0 +1,10 @@ +/var/log/apache2/*log { + missingok + notifempty + sharedscripts + delaycompress + postrotate + /etc/init.d/apache2 --quiet --ifstarted reload > /dev/null 2>/dev/null || true + endscript +} + diff --git a/skip/apache2/apache2.pre-install b/skip/apache2/apache2.pre-install new file mode 100644 index 0000000..d4ede74 --- /dev/null +++ b/skip/apache2/apache2.pre-install @@ -0,0 +1,8 @@ +#!/bin/sh + +addgroup -S -g 82 www-data 2>/dev/null +addgroup -S apache 2>/dev/null +adduser -S -D -H -h /var/www -s /sbin/nologin -G apache -g apache apache 2>/dev/null +addgroup apache www-data 2>/dev/null + +exit 0 diff --git a/skip/apache2/apache2.pre-upgrade b/skip/apache2/apache2.pre-upgrade new file mode 100644 index 0000000..d4ede74 --- /dev/null +++ b/skip/apache2/apache2.pre-upgrade @@ -0,0 +1,8 @@ +#!/bin/sh + +addgroup -S -g 82 www-data 2>/dev/null +addgroup -S apache 2>/dev/null +adduser -S -D -H -h /var/www -s /sbin/nologin -G apache -g apache apache 2>/dev/null +addgroup apache www-data 2>/dev/null + +exit 0 diff --git a/skip/apache2/apache2.xibuild b/skip/apache2/apache2.xibuild new file mode 100644 index 0000000..f2de5a4 --- /dev/null +++ b/skip/apache2/apache2.xibuild @@ -0,0 +1,119 @@ +#!/bin/sh + +NAME="apache2" +DESC="A high performance Unix-based HTTP server" + +MAKEDEPS=" apr apr-util autoconf automake brotli libxml2 lua nghttp2 openssl-dev>3 pcre sed zlib" + +_pkgreal=httpd + +PKG_VER=2.4.54 +SOURCE="https://dlcdn.apache.org/$_pkgreal/$_pkgreal-$PKG_VER.tar.bz2" + +ADDITIONAL=" +alpine.layout +apache2-ssl.post-install +apache2.confd +apache2.initd +apache2.logrotate +apache2.pre-install +apache2.pre-upgrade +conf +" + +prepare() { + for i in $source; do + case $i in + *.patch) echo $i; patch -p1 -i "$BUILD_ROOT"/$(basename $i);; + esac + done + + cat "$BUILD_ROOT/alpine.layout" >> config.layout +} + +build() { + ./configure \ + --prefix=/usr \ + --enable-so \ + --enable-suexec \ + --with-suexec-caller=apache \ + --with-suexec-docroot=/var/www \ + --with-suexec-logfile=/var/log/apache2/suexec.log \ + --with-suexec-bin=/usr/sbin/suexec \ + --with-suexec-uidmin=99 \ + --with-suexec-gidmin=99 \ + --with-apr=/usr/bin/apr-1-config \ + --with-apr-util=/usr/bin/apu-1-config \ + --with-pcre=/usr \ + --enable-mods-shared=all \ + --enable-mpms-shared=all \ + --with-mpm=prefork \ + --enable-ssl \ + --with-ssl \ + --enable-proxy \ + --enable-cache \ + --enable-disk-cache \ + --enable-mem-cache \ + --enable-file-cache \ + --enable-ldap \ + --enable-authnz-ldap \ + --enable-cgid \ + --enable-cgi \ + --enable-authn-anon \ + --enable-authn-alias \ + --disable-imagemap \ + --enable-proxy-connect \ + --enable-proxy-http \ + --enable-proxy-ftp \ + --enable-deflate \ + --enable-dbd \ + --enable-exception-hook \ + --enable-dav \ + --enable-dav-fs \ + --enable-dav-lock + make +} + +package() { + make -j1 DESTDIR="$PKG_DEST" install + + # config + rm -r "$PKG_DEST"/etc/apache2/extra/httpd-vhosts.conf \ + "$PKG_DEST"/etc/apache2/original + mv "$PKG_DEST"/etc/apache2/extra "$PKG_DEST"/etc/apache2/conf.d + for file in "$PKG_DEST"/etc/apache2/conf.d/httpd-*; do + mv "$file" \ + "$(dirname $file)/${file#$PKG_DEST/etc/apache2/conf.d/httpd-}" + done + sed -Ei \ + 's:^(\t?#?LoadModule .+ )lib/apache2/:\1modules/:;ta;b;:a;s/^#?LoadModule (dav.*|lbmethod_.+|.*ldap|lua|proxy.*|ssl|xml2enc)_module //;tb;b;:b;d' \ + "$PKG_DEST"/etc/apache2/httpd.conf + + # init scripts and logrotate + install -D -m755 "$BUILD_ROOT"/apache2.initd \ + "$PKG_DEST"/etc/init.d/apache2 + install -D -m644 "$BUILD_ROOT"/apache2.logrotate \ + "$PKG_DEST"/etc/logrotate.d/apache2 + install -D -m644 "$BUILD_ROOT"/apache2.confd \ + "$PKG_DEST"/etc/conf.d/apache2 + + install -d "$PKG_DEST"/var/www + install -d -m 2750 -g wheel "$PKG_DEST"/var/log/apache2 + ln -fs /var/log/apache2 "$PKG_DEST"/var/www/logs + ln -fs /run/apache2 "$PKG_DEST"/var/www/run + ln -fs /usr/lib/apache2 "$PKG_DEST"/var/www/modules + rm -fr "$PKG_DEST"/run + + # verify all MPMs are built + # ref #2866 + for i in prefork event worker; do + if ! [ -e "$PKG_DEST"/usr/lib/apache2/mod_mpm_$i.so ]; then + error "$i MPM was not built" + fi + done + + # create the run directory + # ref #9982 + mkdir -p "$PKG_DEST"/run/apache2 +} + diff --git a/repo/avahi/CVE-2021-3468.patch b/skip/avahi/CVE-2021-3468.patch index 3e0725a..3e0725a 100644 --- a/repo/avahi/CVE-2021-3468.patch +++ b/skip/avahi/CVE-2021-3468.patch diff --git a/repo/avahi/CVE-2021-36217.patch b/skip/avahi/CVE-2021-36217.patch index 7b0449a..7b0449a 100644 --- a/repo/avahi/CVE-2021-36217.patch +++ b/skip/avahi/CVE-2021-36217.patch diff --git a/repo/avahi/avahi.pre-install b/skip/avahi/avahi.pre-install index 89b2fd4..89b2fd4 100644 --- a/repo/avahi/avahi.pre-install +++ b/skip/avahi/avahi.pre-install diff --git a/repo/avahi/avahi.xibuild b/skip/avahi/avahi.xibuild index d1e53f4..d1e53f4 100644 --- a/repo/avahi/avahi.xibuild +++ b/skip/avahi/avahi.xibuild diff --git a/skip/cabal/cabal.project.freeze b/skip/cabal/cabal.project.freeze index 07c927e..f4c0bd7 100644 --- a/skip/cabal/cabal.project.freeze +++ b/skip/cabal/cabal.project.freeze @@ -1,65 +1,68 @@ active-repositories: hackage.haskell.org:merge -constraints: any.Cabal ==3.6.2.0, - Cabal -bundled-binary-generic, - any.HTTP ==4000.3.16, - HTTP -conduit10 -mtl1 +network-uri -warn-as-error -warp-tests, +constraints: any.Cabal ==3.8.1.0, + any.Cabal-syntax ==3.8.1.0, + any.HTTP ==4000.4.1, + HTTP -conduit10 +network-uri -warn-as-error -warp-tests, any.array ==0.5.4.0, any.async ==2.2.4, async -bench, - any.base ==4.15.0.0, - any.base-orphans ==0.8.6, + any.base ==4.15.1.0, + any.base-orphans ==0.8.7, any.base16-bytestring ==1.0.2.0, any.base64-bytestring ==1.2.1.0, any.binary ==0.8.8.0, any.bytestring ==0.10.12.1, - cabal-install -debug-conflict-sets -debug-expensive-assertions -debug-tracetree +lukko +native-dns, + cabal-install +lukko +native-dns, + any.cabal-install-solver ==3.8.1.0, + cabal-install-solver -debug-conflict-sets -debug-expensive-assertions -debug-tracetree, any.containers ==0.6.4.1, any.cryptohash-sha256 ==0.11.102.1, cryptohash-sha256 -exe +use-cbits, any.deepseq ==1.4.5.0, - any.directory ==1.3.6.1, + any.directory ==1.3.6.2, any.echo ==0.1.4, echo -example, any.ed25519 ==0.0.5.0, ed25519 +no-donna +test-doctests +test-hlint +test-properties, any.edit-distance ==0.2.2.1, + any.exceptions ==0.10.4, any.filepath ==1.4.2.1, - any.ghc-bignum ==1.0, - any.ghc-bignum-orphans ==0.1.1, - any.ghc-boot-th ==9.0.1, + any.ghc-bignum ==1.1, + any.ghc-boot-th ==9.0.2, any.ghc-prim ==0.7.0, - any.hackage-security ==0.6.0.1, - hackage-security +base48 +lukko -mtl21 -old-directory +use-network-uri, - any.hashable ==1.4.0.0, + any.hackage-security ==0.6.2.2, + hackage-security +base48 -cabal-syntax +lukko -mtl21 -old-directory +use-network-uri, + any.hashable ==1.4.1.0, hashable +containers +integer-gmp -random-initial-seed, any.hsc2hs ==0.68.8, hsc2hs -in-ghc-tree, any.lukko ==0.1.1.3, lukko +ofd-locking, any.mtl ==2.2.2, - any.network ==3.1.2.5, + any.network ==3.1.2.7, network -devel, any.network-uri ==2.6.4.1, any.parsec ==3.1.14.0, any.pretty ==1.1.3.6, - any.process ==1.6.11.0, - any.random ==1.2.1, + any.process ==1.6.15.0, + any.random ==1.2.1.1, any.regex-base ==0.94.0.2, any.regex-posix ==0.96.0.1, regex-posix -_regex-posix-clib, any.resolv ==0.1.2.0, - any.rts ==1.0, + any.rts ==1.0.2, + any.safe-exceptions ==0.1.7.3, any.splitmix ==0.1.0.4, splitmix -optimised-mixer, any.stm ==2.5.0.0, any.tar ==0.5.1.1, tar -old-bytestring -old-time, any.template-haskell ==2.17.0.0, - any.text ==1.2.4.1, - any.th-compat ==0.1.3, + any.text ==1.2.5.0, + any.th-compat ==0.1.4, any.time ==1.9.3, any.transformers ==0.5.6.2, any.unix ==2.7.2.2, - any.zlib ==0.6.2.3, + any.zlib ==0.6.3.0, zlib -bundled-c-zlib -non-blocking-ffi -pkg-config -index-state: hackage.haskell.org 2021-11-17T20:47:55Z +index-state: hackage.haskell.org 2022-08-16T18:13:49Z diff --git a/skip/cabal/cabal.xibuild b/skip/cabal/cabal.xibuild index 501b0e3..64bcd18 100644 --- a/skip/cabal/cabal.xibuild +++ b/skip/cabal/cabal.xibuild @@ -3,24 +3,37 @@ NAME="cabal" DESC="The Haskell Cabal" -MAKEDEPS="cabal-stage0" -DEPS="gmp libffi musl zlib " +MAKEDEPS="ghc gmp libffi zlib cabal-bootstrap" -PKG_VER=3.6.2.0 +PKG_VER=3.8.1.0 SOURCE="https://hackage.haskell.org/package/cabal-install-$PKG_VER/cabal-install-$PKG_VER.tar.gz" -ADDITIONAL="cabal.project.freeze " +ADDITIONAL=" +cabal.project.freeze +" + +cabal_update() { + cd $BUILD_ROOT + # Build a freeze file to make the build reproducible. + # This freeze file is stored in $source and thus tracked in Git. + HOME="$_cabal_home" cabal v2-update --allow-newer + ( + cd "$BUILD_ROOT" + HOME="$_cabal_home" cabal v2-freeze \ + --allow-newer --shadow-installed-packages + mv cabal.project.freeze "$startdir/" + ) +} -prepare () { - export cabal_home="$BUILD_ROOT/dist" - - ln -sf cabal.project.freeze \ - "cabal.project.freeze" +prepare() { + apply_patches + ln -sf "$BUILD_ROOT/cabal.project.freeze" \ + "$BUILD_ROOT/cabal.project.freeze" } -build () { - HOME="$cabal_home" cabal v2-update - HOME="$cabal_home" cabal v2-build all \ +build() { + HOME="$_cabal_home" cabal v2-update + HOME="$_cabal_home" cabal v2-build all \ --allow-newer \ --jobs=${JOBS:-1} \ --prefix=/usr \ @@ -28,13 +41,20 @@ build () { --sysconfdir=/etc } -package () { - HOME="$cabal_home" cabal list-bin --allow-newer all:exes | \ - xargs install -Dm755 -t "$PKG_DEST"/usr/bin +package() { + # With v2- cabal no longer wants us to separate v2-build and + # v2-install, however, we don't want to build everything in a + # fakeroot. We work around this by copying binaries build in the + # previous step manually. + # + # See https://github.com/haskell/cabal/issues/6919#issuecomment-761563498 + HOME="$_cabal_home" cabal list-bin --allow-newer all:exes | \ + xargs install -Dm755 -t "$PKG_DEST"/usr/bin mkdir -p "$PKG_DEST"/usr/share/man/man1 - HOME="$cabal_home" cabal man --raw \ + HOME="$_cabal_home" cabal man --raw \ > "$PKG_DEST"/usr/share/man/man1/cabal.1 install -Dm644 LICENSE "$PKG_DEST/usr/share/licenses/cabal/LICENSE" } + diff --git a/repo/dino/dino.xibuild b/skip/dino/dino.xibuild index 8f40781..8f40781 100644 --- a/repo/dino/dino.xibuild +++ b/skip/dino/dino.xibuild diff --git a/repo/dino/mobile-ui.patch b/skip/dino/mobile-ui.patch index f274acf..f274acf 100644 --- a/repo/dino/mobile-ui.patch +++ b/skip/dino/mobile-ui.patch diff --git a/repo/docbook2x/01_fix_static_datadir_evaluation.patch b/skip/docbook2x/01_fix_static_datadir_evaluation.patch index 5241dc3..5241dc3 100644 --- a/repo/docbook2x/01_fix_static_datadir_evaluation.patch +++ b/skip/docbook2x/01_fix_static_datadir_evaluation.patch diff --git a/repo/docbook2x/02_fix_418703_dont_use_abbreviated_sfnet_address.patch b/skip/docbook2x/02_fix_418703_dont_use_abbreviated_sfnet_address.patch index 681047a..681047a 100644 --- a/repo/docbook2x/02_fix_418703_dont_use_abbreviated_sfnet_address.patch +++ b/skip/docbook2x/02_fix_418703_dont_use_abbreviated_sfnet_address.patch diff --git a/repo/docbook2x/03_fix_420153_filename_whitespace_handling.patch b/skip/docbook2x/03_fix_420153_filename_whitespace_handling.patch index 26cdf8e..26cdf8e 100644 --- a/repo/docbook2x/03_fix_420153_filename_whitespace_handling.patch +++ b/skip/docbook2x/03_fix_420153_filename_whitespace_handling.patch diff --git a/repo/docbook2x/04_fix_442782_preprocessor_declaration_syntax.patch b/skip/docbook2x/04_fix_442782_preprocessor_declaration_syntax.patch index b6ddbfa..b6ddbfa 100644 --- a/repo/docbook2x/04_fix_442782_preprocessor_declaration_syntax.patch +++ b/skip/docbook2x/04_fix_442782_preprocessor_declaration_syntax.patch diff --git a/repo/docbook2x/05_fix_439214_error_on_missing_refentry.patch b/skip/docbook2x/05_fix_439214_error_on_missing_refentry.patch index b8a493b..b8a493b 100644 --- a/repo/docbook2x/05_fix_439214_error_on_missing_refentry.patch +++ b/skip/docbook2x/05_fix_439214_error_on_missing_refentry.patch diff --git a/repo/docbook2x/06_fix_man_typo.patch b/skip/docbook2x/06_fix_man_typo.patch index 5be21bd..5be21bd 100644 --- a/repo/docbook2x/06_fix_man_typo.patch +++ b/skip/docbook2x/06_fix_man_typo.patch diff --git a/repo/docbook2x/docbook2x.xibuild b/skip/docbook2x/docbook2x.xibuild index 22a1f11..cb4d112 100644 --- a/repo/docbook2x/docbook2x.xibuild +++ b/skip/docbook2x/docbook2x.xibuild @@ -6,7 +6,7 @@ DESC="DocBook converter to UNIX manpage and GNU Texinfo format" MAKEDEPS="autoconf automake perl-xml-sax" PKG_VER=0.8.8 -SOURCE="https://downloads.sourceforge.net/docbook2x/docbook2X-$PKG_VER.tar.gz" +SOURCE="https://sourceforge.net/projects/docbook2x/files/docbook2x/$PKG_VER/docbook2X-$PKG_VER.tar.gz/download" ADDITIONAL=" 01_fix_static_datadir_evaluation.patch @@ -17,23 +17,23 @@ ADDITIONAL=" 06_fix_man_typo.patch " -prepare() { +prepare () { apply_patches - autoreconf --install } build() { + autoreconf --install ./configure \ --prefix=/usr \ --sysconfdir=/etc \ --mandir=/usr/share/man \ --infodir=/usr/share/info \ --localstatedir=/var \ - --program-transform-name 's/docbook2/docbook2x-/' \ + --program-transform-name 's/docbook2/docbook2x-/' make } package() { - make DESTDIR="$PKG_DEST" install || return 1 + make DESTDIR="$PKG_DEST" install } diff --git a/repo/electrum/0001-apk-add-instead-of-apt-get-install.patch b/skip/electrum/0001-apk-add-instead-of-apt-get-install.patch index 29d2201..29d2201 100644 --- a/repo/electrum/0001-apk-add-instead-of-apt-get-install.patch +++ b/skip/electrum/0001-apk-add-instead-of-apt-get-install.patch diff --git a/repo/electrum/electrum.xibuild b/skip/electrum/electrum.xibuild index dd21511..dd21511 100644 --- a/repo/electrum/electrum.xibuild +++ b/skip/electrum/electrum.xibuild diff --git a/repo/elvish/elvish.xibuild b/skip/elvish/elvish.xibuild index dd97671..dd97671 100644 --- a/repo/elvish/elvish.xibuild +++ b/skip/elvish/elvish.xibuild diff --git a/repo/execline/execline.xibuild b/skip/execline/execline.xibuild index 5e0454f..5e0454f 100644 --- a/repo/execline/execline.xibuild +++ b/skip/execline/execline.xibuild diff --git a/repo/ext-dump/ext-dump.xibuild b/skip/ext-dump/ext-dump.xibuild index d4f12a3..fa8e285 100644 --- a/repo/ext-dump/ext-dump.xibuild +++ b/skip/ext-dump/ext-dump.xibuild @@ -3,12 +3,24 @@ NAME="ext-dump" DESC="ext2 dump and restore utilities" -MAKEDEPS="make " -DEPS="musl " +MAKEDEPS="make musl " PKG_VER=0.4b47 SOURCE="https://sourceforge.net/projects/dump/files/dump/$PKG_VER/dump-$PKG_VER.tar.gz/download" +prepare () { + + for f in \ + compat/include/compatglob.h \ + compat/include/compaterr.h \ + compat/lib/compaterr.c; + do + + sed -i 's/__BEGIN_DECLS/#ifdef __cplusplus\nextern "C" {\n#endif/g' $f + sed -i 's/__END_DECLS/#ifdef __cplusplus\n}\n#endif/g' $f + done +} + build () { ./configure \ --prefix=/usr \ diff --git a/repo/firefox/allow-custom-rust-vendor.patch b/skip/firefox/allow-custom-rust-vendor.patch index 218650f..218650f 100644 --- a/repo/firefox/allow-custom-rust-vendor.patch +++ b/skip/firefox/allow-custom-rust-vendor.patch diff --git a/repo/firefox/avoid-redefinition.patch b/skip/firefox/avoid-redefinition.patch index af11c50..af11c50 100644 --- a/repo/firefox/avoid-redefinition.patch +++ b/skip/firefox/avoid-redefinition.patch diff --git a/repo/firefox/disable-moz-stackwalk.patch b/skip/firefox/disable-moz-stackwalk.patch index b6bc756..b6bc756 100644 --- a/repo/firefox/disable-moz-stackwalk.patch +++ b/skip/firefox/disable-moz-stackwalk.patch diff --git a/repo/firefox/disable-neon-in-aom.patch b/skip/firefox/disable-neon-in-aom.patch index 6df05a1..6df05a1 100644 --- a/repo/firefox/disable-neon-in-aom.patch +++ b/skip/firefox/disable-neon-in-aom.patch diff --git a/repo/firefox/firefox-safe.desktop b/skip/firefox/firefox-safe.desktop index 1538fc6..1538fc6 100644 --- a/repo/firefox/firefox-safe.desktop +++ b/skip/firefox/firefox-safe.desktop diff --git a/repo/firefox/firefox.desktop b/skip/firefox/firefox.desktop index d048ce4..d048ce4 100644 --- a/repo/firefox/firefox.desktop +++ b/skip/firefox/firefox.desktop diff --git a/repo/firefox/firefox.xibuild b/skip/firefox/firefox.xibuild index 7d345f0..f5c8bc2 100644 --- a/repo/firefox/firefox.xibuild +++ b/skip/firefox/firefox.xibuild @@ -6,7 +6,7 @@ DESC="Firefox web browser" MAKEDEPS="make rust cbindgen" DEPS="libseccomp nodejs alsa-lib atk cairo dbus ffmpeg fontconfig freetype2 gdk-pixbuf glib gtk3 icu libevent libffi libpng libvpx libwebp libx11 libxcb libxcomposite libxdamage libxext libxfixes libxrandr musl nspr nss pango pixman zlib dbus-glib" -PKG_VER=100.0.2 +PKG_VER=108.0.1 SOURCE="https://ftp.mozilla.org/pub/firefox/releases/$PKG_VER/source/firefox-$PKG_VER.source.tar.xz" ADDITIONAL=" @@ -17,13 +17,16 @@ disable-neon-in-aom.patch firefox-safe.desktop firefox.desktop fix-fortify-system-wrappers.patch +fix-neon-aom.patch fix-rust-target.patch fix-webrtc-glibcisms.patch mallinfo.patch +no-ccache-stats.patch sandbox-fork.patch sandbox-largefile.patch sandbox-sched_setscheduler.patch stab.h +zstandard.patch " prepare () { @@ -32,7 +35,7 @@ prepare () { cp stab.h toolkit/crashreporter/google-breakpad/src/ sed -i 's/\("files":{\)[^}]*/\1/' third_party/rust/audio_thread_priority/.cargo-checksum.json - sed -i 's/\("files":{\)[^}]*/\1/' third_party/rust/target-lexicon-0.9.0/.cargo-checksum.json + #sed -i 's/\("files":{\)[^}]*/\1/' third_party/rust/target-lexicon-*/.cargo-checksum.json } build () { @@ -71,7 +74,6 @@ build () { --enable-alsa \ --enable-dbus \ --enable-default-toolkit=cairo-gtk3-wayland \ - --enable-dom-streams \ --enable-ffmpeg \ --enable-hardening \ --enable-necko-wifi \ diff --git a/repo/firefox/fix-fortify-system-wrappers.patch b/skip/firefox/fix-fortify-system-wrappers.patch index 17cf7e3..17cf7e3 100644 --- a/repo/firefox/fix-fortify-system-wrappers.patch +++ b/skip/firefox/fix-fortify-system-wrappers.patch diff --git a/skip/firefox/fix-neon-aom.patch b/skip/firefox/fix-neon-aom.patch new file mode 100644 index 0000000..7ea16e7 --- /dev/null +++ b/skip/firefox/fix-neon-aom.patch @@ -0,0 +1,13 @@ +diff --git a/media/libaom/moz.build b/media/libaom/moz.build +index fd8c7f2..db3f9ca 100644 +--- a/media/libaom/moz.build ++++ b/media/libaom/moz.build +@@ -55,7 +55,7 @@ elif CONFIG['CPU_ARCH'] == 'arm': + + for f in SOURCES: + if f.endswith('neon.c'): +- SOURCES[f].flags += CONFIG['VPX_ASFLAGS'] ++ SOURCES[f].flags += CONFIG['NEON_FLAGS'] + + if CONFIG['OS_TARGET'] == 'Android': + # For cpu-features.h diff --git a/repo/firefox/fix-rust-target.patch b/skip/firefox/fix-rust-target.patch index 9342063..9342063 100644 --- a/repo/firefox/fix-rust-target.patch +++ b/skip/firefox/fix-rust-target.patch diff --git a/repo/firefox/fix-webrtc-glibcisms.patch b/skip/firefox/fix-webrtc-glibcisms.patch index 4f9043b..4f9043b 100644 --- a/repo/firefox/fix-webrtc-glibcisms.patch +++ b/skip/firefox/fix-webrtc-glibcisms.patch diff --git a/repo/firefox/mallinfo.patch b/skip/firefox/mallinfo.patch index 7916a20..7916a20 100644 --- a/repo/firefox/mallinfo.patch +++ b/skip/firefox/mallinfo.patch diff --git a/skip/firefox/no-ccache-stats.patch b/skip/firefox/no-ccache-stats.patch new file mode 100644 index 0000000..8ef8049 --- /dev/null +++ b/skip/firefox/no-ccache-stats.patch @@ -0,0 +1,11 @@ +prevents a call to ccache +--- a/python/mozbuild/mozbuild/controller/building.py ++++ b/python/mozbuild/mozbuild/controller/building.py +@@ -586,6 +586,7 @@ + ) + + def ccache_stats(self): ++ return None + ccache_stats = None + + ccache = mozfile.which("ccache") diff --git a/repo/firefox/sandbox-fork.patch b/skip/firefox/sandbox-fork.patch index c7222ab..c7222ab 100644 --- a/repo/firefox/sandbox-fork.patch +++ b/skip/firefox/sandbox-fork.patch diff --git a/repo/firefox/sandbox-largefile.patch b/skip/firefox/sandbox-largefile.patch index f1cf28b..f1cf28b 100644 --- a/repo/firefox/sandbox-largefile.patch +++ b/skip/firefox/sandbox-largefile.patch diff --git a/repo/firefox/sandbox-sched_setscheduler.patch b/skip/firefox/sandbox-sched_setscheduler.patch index 3163c9e..3163c9e 100644 --- a/repo/firefox/sandbox-sched_setscheduler.patch +++ b/skip/firefox/sandbox-sched_setscheduler.patch diff --git a/repo/firefox/stab.h b/skip/firefox/stab.h index 6f70af3..6f70af3 100644 --- a/repo/firefox/stab.h +++ b/skip/firefox/stab.h diff --git a/skip/firefox/zstandard.patch b/skip/firefox/zstandard.patch new file mode 100644 index 0000000..ae6266d --- /dev/null +++ b/skip/firefox/zstandard.patch @@ -0,0 +1,8 @@ +--- a/python/sites/mach.txt ++++ b/python/sites/mach.txt +@@ -134,4 +134,4 @@ + # We aren't (yet) able to pin packages in automation, so we have to + # support down to the oldest locally-installed version (5.4.2). + pypi-optional:psutil>=5.4.2,<=5.8.0:telemetry will be missing some data +-pypi-optional:zstandard>=0.11.1,<=0.17.0:zstd archives will not be possible to extract ++pypi-optional:zstandard>=0.11.1,<=0.18.0:zstd archives will not be possible to extract diff --git a/skip/guitarix/guitarix-0.43.1-glib2.patch b/skip/guitarix/guitarix-0.43.1-glib2.patch new file mode 100644 index 0000000..41ae018 --- /dev/null +++ b/skip/guitarix/guitarix-0.43.1-glib2.patch @@ -0,0 +1,15 @@ +diff -ruN a/src/headers/gx_system.h b/src/headers/gx_system.h +--- a/src/headers/gx_system.h 2021-12-10 18:53:33.000000000 +0100 ++++ b/src/headers/gx_system.h 2022-04-28 11:23:16.176694581 +0200 +@@ -112,7 +112,11 @@ + } + + inline bool atomic_compare_and_exchange(volatile int *p, int oldv, int newv) { ++#if (GLIB_MAJOR_VERSION == 2 && GLIB_MINOR_VERSION < 68 && GLIB_MICRO_VERSION < 1) + return g_atomic_int_compare_and_exchange(p, oldv, newv); ++#else ++ return g_atomic_int_compare_and_exchange(const_cast<int*>(p), oldv, newv); ++#endif + } + + template <class T> diff --git a/skip/guitarix/guitarix.xibuild b/skip/guitarix/guitarix.xibuild new file mode 100644 index 0000000..ece8baa --- /dev/null +++ b/skip/guitarix/guitarix.xibuild @@ -0,0 +1,27 @@ +#!/bin/sh + +NAME="guitarix" +DESC="A simple mono guitar amplifier and FX for JACK using Faust" + +MAKEDEPS="make atkmm cairo cairomm glibmm gtkmm3 libsigc++ libx11 pangomm lv2 fftw gperf gtk3 intltool liblo lilv waf " + +PKG_VER=0.44.1 +SOURCE="https://download.sourceforge.net/project/guitarix/guitarix/guitarix2-$PKG_VER.tar.xz" +ADDITIONAL="guitarix-0.43.1-glib2.patch " + +build () { + waf configure \ + --prefix=/usr \ + --enable-nls \ + --ladspa \ + --new-ladspa \ + --shared-lib \ + --lib-dev \ + --cxxflags='-flto' \ + --ldflags="$LDFLAGS" + waf build -vv +} + +package () { + waf install --destdir="$PKG_DEST" +} diff --git a/repo/heimdal/005_all_heimdal-suid_fix.patch b/skip/heimdal/005_all_heimdal-suid_fix.patch index 0524db6..0524db6 100644 --- a/repo/heimdal/005_all_heimdal-suid_fix.patch +++ b/skip/heimdal/005_all_heimdal-suid_fix.patch diff --git a/repo/heimdal/CVE-2018-16860.patch b/skip/heimdal/CVE-2018-16860.patch index 6424b9e..6424b9e 100644 --- a/repo/heimdal/CVE-2018-16860.patch +++ b/skip/heimdal/CVE-2018-16860.patch diff --git a/repo/heimdal/autoconf-270.patch b/skip/heimdal/autoconf-270.patch index 05cdc09..05cdc09 100644 --- a/repo/heimdal/autoconf-270.patch +++ b/skip/heimdal/autoconf-270.patch diff --git a/repo/heimdal/heimdal-kadmind.initd b/skip/heimdal/heimdal-kadmind.initd index 73f2381..73f2381 100755 --- a/repo/heimdal/heimdal-kadmind.initd +++ b/skip/heimdal/heimdal-kadmind.initd diff --git a/repo/heimdal/heimdal-kdc.initd b/skip/heimdal/heimdal-kdc.initd index 32288c4..32288c4 100755 --- a/repo/heimdal/heimdal-kdc.initd +++ b/skip/heimdal/heimdal-kdc.initd diff --git a/repo/heimdal/heimdal-kpasswdd.initd b/skip/heimdal/heimdal-kpasswdd.initd index 5fc21e0..5fc21e0 100755 --- a/repo/heimdal/heimdal-kpasswdd.initd +++ b/skip/heimdal/heimdal-kpasswdd.initd diff --git a/repo/heimdal/heimdal.xibuild b/skip/heimdal/heimdal.xibuild index 6d0e31c..0fcba4b 100644 --- a/repo/heimdal/heimdal.xibuild +++ b/skip/heimdal/heimdal.xibuild @@ -1,7 +1,7 @@ #!/bin/sh NAME="heimdal" -DESC="Iplementation of Kerberos 5" +DESC="Implementation of Kerberos 5" MAKEDEPS="xipkg openssl e2fsprogs autoconf automake bash gawk libtool ncurses perl readline sqlite3 texinfo perl-json gdbm " diff --git a/repo/heimdal/heimdal_missing-include.patch b/skip/heimdal/heimdal_missing-include.patch index 8cca906..8cca906 100644 --- a/repo/heimdal/heimdal_missing-include.patch +++ b/skip/heimdal/heimdal_missing-include.patch diff --git a/repo/heimdal/silence-include-headers-redirect-warnings.patch b/skip/heimdal/silence-include-headers-redirect-warnings.patch index 4505096..4505096 100644 --- a/repo/heimdal/silence-include-headers-redirect-warnings.patch +++ b/skip/heimdal/silence-include-headers-redirect-warnings.patch diff --git a/repo/leveldb/leveldb.xibuild b/skip/leveldb/leveldb.xibuild index 0f9519b..d3805c9 100644 --- a/repo/leveldb/leveldb.xibuild +++ b/skip/leveldb/leveldb.xibuild @@ -3,7 +3,7 @@ NAME="leveldb" DESC="A fast and lightweight key/value database library by Google" -MAKEDEPS=" cmake snappy" +MAKEDEPS="cmake snappy" PKG_VER=1.23 SOURCE="https://github.com/google/leveldb/archive/$PKG_VER.tar.gz" @@ -20,10 +20,6 @@ build() { make } -check() { - make test -} - package() { make DESTDIR="$PKG_DEST" install mkdir -p "$PKG_DEST"/usr/share/doc diff --git a/repo/libetonyek/libetonyek.xibuild b/skip/libetonyek/libetonyek.xibuild index 5df35af..5df35af 100644 --- a/repo/libetonyek/libetonyek.xibuild +++ b/skip/libetonyek/libetonyek.xibuild diff --git a/repo/liblangtag/liblangtag.xibuild b/skip/liblangtag/liblangtag.xibuild index 5151d91..48bec7b 100644 --- a/repo/liblangtag/liblangtag.xibuild +++ b/skip/liblangtag/liblangtag.xibuild @@ -5,7 +5,11 @@ DESC="Interface library to access/deal with tags for identifying languages" MAKEDEPS="glib gobject-introspection libtool libxml2 gtk-doc" -SOURCE="git://bitbucket.org/tagoh/liblangtag.git" +SOURCE="http://bitbucket.org/tagoh/liblangtag.git" + +prepare () { + autoreconf -vif +} build() { ./configure --prefix=/usr diff --git a/repo/libreoffice/autoconf-boost-macros.patch b/skip/libreoffice/autoconf-boost-macros.patch index 41dda98..41dda98 100644 --- a/repo/libreoffice/autoconf-boost-macros.patch +++ b/skip/libreoffice/autoconf-boost-macros.patch diff --git a/repo/libreoffice/disable-liborcus-unittest.patch b/skip/libreoffice/disable-liborcus-unittest.patch index 318d508..318d508 100644 --- a/repo/libreoffice/disable-liborcus-unittest.patch +++ b/skip/libreoffice/disable-liborcus-unittest.patch diff --git a/repo/libreoffice/fix-execinfo.patch b/skip/libreoffice/fix-execinfo.patch index 84f3687..84f3687 100644 --- a/repo/libreoffice/fix-execinfo.patch +++ b/skip/libreoffice/fix-execinfo.patch diff --git a/repo/libreoffice/libreoffice-base.xibuild b/skip/libreoffice/libreoffice-base.xibuild index b38a445..b38a445 100644 --- a/repo/libreoffice/libreoffice-base.xibuild +++ b/skip/libreoffice/libreoffice-base.xibuild diff --git a/repo/libreoffice/libreoffice-calc.xibuild b/skip/libreoffice/libreoffice-calc.xibuild index c7bc5b2..c7bc5b2 100644 --- a/repo/libreoffice/libreoffice-calc.xibuild +++ b/skip/libreoffice/libreoffice-calc.xibuild diff --git a/repo/libreoffice/libreoffice-common.xibuild b/skip/libreoffice/libreoffice-common.xibuild index b726db5..b726db5 100644 --- a/repo/libreoffice/libreoffice-common.xibuild +++ b/skip/libreoffice/libreoffice-common.xibuild diff --git a/repo/libreoffice/libreoffice-draw.xibuild b/skip/libreoffice/libreoffice-draw.xibuild index cc73569..cc73569 100644 --- a/repo/libreoffice/libreoffice-draw.xibuild +++ b/skip/libreoffice/libreoffice-draw.xibuild diff --git a/repo/libreoffice/libreoffice-impress.xibuild b/skip/libreoffice/libreoffice-impress.xibuild index 482203c..482203c 100644 --- a/repo/libreoffice/libreoffice-impress.xibuild +++ b/skip/libreoffice/libreoffice-impress.xibuild diff --git a/repo/libreoffice/libreoffice-math.xibuild b/skip/libreoffice/libreoffice-math.xibuild index 8b4d0a4..8b4d0a4 100644 --- a/repo/libreoffice/libreoffice-math.xibuild +++ b/skip/libreoffice/libreoffice-math.xibuild diff --git a/repo/libreoffice/libreoffice-postgres.xibuild b/skip/libreoffice/libreoffice-postgres.xibuild index 2cac487..2cac487 100644 --- a/repo/libreoffice/libreoffice-postgres.xibuild +++ b/skip/libreoffice/libreoffice-postgres.xibuild diff --git a/repo/libreoffice/libreoffice-sdk.xibuild b/skip/libreoffice/libreoffice-sdk.xibuild index 2106fb0..2106fb0 100644 --- a/repo/libreoffice/libreoffice-sdk.xibuild +++ b/skip/libreoffice/libreoffice-sdk.xibuild diff --git a/repo/libreoffice/libreoffice-writer.xibuild b/skip/libreoffice/libreoffice-writer.xibuild index e2c1b74..e2c1b74 100644 --- a/repo/libreoffice/libreoffice-writer.xibuild +++ b/skip/libreoffice/libreoffice-writer.xibuild diff --git a/repo/libreoffice/libreoffice.xibuild b/skip/libreoffice/libreoffice.xibuild index 2cdf242..2cdf242 100644 --- a/repo/libreoffice/libreoffice.xibuild +++ b/skip/libreoffice/libreoffice.xibuild diff --git a/repo/libreoffice/linux-musl.patch b/skip/libreoffice/linux-musl.patch index 9e192bc..9e192bc 100644 --- a/repo/libreoffice/linux-musl.patch +++ b/skip/libreoffice/linux-musl.patch diff --git a/repo/libreoffice/musl-libintl.patch b/skip/libreoffice/musl-libintl.patch index ceaaaff..ceaaaff 100644 --- a/repo/libreoffice/musl-libintl.patch +++ b/skip/libreoffice/musl-libintl.patch diff --git a/repo/libreoffice/musl-stacksize.patch b/skip/libreoffice/musl-stacksize.patch index 5e72205..5e72205 100644 --- a/repo/libreoffice/musl-stacksize.patch +++ b/skip/libreoffice/musl-stacksize.patch diff --git a/repo/libreoffice/pld-skia-patches.patch b/skip/libreoffice/pld-skia-patches.patch index b54dfe4..b54dfe4 100644 --- a/repo/libreoffice/pld-skia-patches.patch +++ b/skip/libreoffice/pld-skia-patches.patch diff --git a/repo/libreoffice/poppler-22.03.patch b/skip/libreoffice/poppler-22.03.patch index daa16a2..daa16a2 100644 --- a/repo/libreoffice/poppler-22.03.patch +++ b/skip/libreoffice/poppler-22.03.patch diff --git a/repo/libreoffice/remove-backtrace.patch b/skip/libreoffice/remove-backtrace.patch index f4eda53..f4eda53 100644 --- a/repo/libreoffice/remove-backtrace.patch +++ b/skip/libreoffice/remove-backtrace.patch diff --git a/repo/libreoffice/skia-freetype2.11.diff b/skip/libreoffice/skia-freetype2.11.diff index 97be7f2..97be7f2 100644 --- a/repo/libreoffice/skia-freetype2.11.diff +++ b/skip/libreoffice/skia-freetype2.11.diff diff --git a/skip/lsp-plugins/lsp-plugins.xibuild b/skip/lsp-plugins/lsp-plugins.xibuild new file mode 100644 index 0000000..6f494b9 --- /dev/null +++ b/skip/lsp-plugins/lsp-plugins.xibuild @@ -0,0 +1,32 @@ +#!/bin/sh + +NAME="lsp-plugins" +DESC="Collection of free plugins compatible with LADSPA, LV2 and LinuxVST" + +MAKEDEPS="cairo jack ladspa libsndfile libxrandr lv2 mesa" + +PKG_VER=1.2.3 +SOURCE="https://github.com/sadko4u/lsp-plugins/releases/download/$PKG_VER/lsp-plugins-src-$PKG_VER.tar.gz" + +ADDITIONAL=" +null.patch +" + +prepare () { + apply_patches +} + +build() { + export CFLAGS="$CFLAGS -O2 -flto=auto -Wno-alloc-size-larger-than" + export CXXFLAGS="$CFLAGS -O2 -flto=auto -Wno-alloc-size-larger-than" + make \ + PREFIX=/usr \ + ADD_FEATURES=xdg \ + config + make PREFIX=/usr +} + +package() { + make DESTDIR="$PKG_DEST" PREFIX=/usr install +} + diff --git a/skip/lsp-plugins/null.patch b/skip/lsp-plugins/null.patch new file mode 100644 index 0000000..6521e1f --- /dev/null +++ b/skip/lsp-plugins/null.patch @@ -0,0 +1,13 @@ +diff --git a/modules/lsp-plugin-fw/include/lsp-plug.in/plug-fw/wrap/common/libpath.h b/modules/lsp-plugin-fw/include/lsp-plug.in/plug-fw/wrap/common/libpath.h +index 9571a2e..2c484df 100644 +--- a/modules/lsp-plugin-fw/include/lsp-plug.in/plug-fw/wrap/common/libpath.h ++++ b/modules/lsp-plugin-fw/include/lsp-plug.in/plug-fw/wrap/common/libpath.h +@@ -241,7 +241,7 @@ namespace lsp + // Open file for reading + FILE *fd = fopen("/proc/self/maps", "r"); + if (fd == NULL) +- return NULL; ++ return false; + + char *line = NULL; + ssize_t len = 0; diff --git a/repo/luakit/luakit.xibuild b/skip/luakit/luakit.xibuild index 25d4b13..25d4b13 100644 --- a/repo/luakit/luakit.xibuild +++ b/skip/luakit/luakit.xibuild diff --git a/skip/mingw-w64-gcc/0020-libgomp-Don-t-hard-code-MS-printf-attributes.patch b/skip/mingw-w64-gcc/0020-libgomp-Don-t-hard-code-MS-printf-attributes.patch new file mode 100644 index 0000000..fc60b54 --- /dev/null +++ b/skip/mingw-w64-gcc/0020-libgomp-Don-t-hard-code-MS-printf-attributes.patch @@ -0,0 +1,53 @@ +From 05b0bb43124b041da360ba9adcbaab8430be6d18 Mon Sep 17 00:00:00 2001 +From: Liu Hao <lh_mouse@126.com> +Date: Wed, 6 May 2020 21:49:18 +0800 +Subject: [PATCH] libgomp: Don't hard-code MS printf attributes + +--- + libgomp/libgomp.h | 13 ++++++++++--- + 1 file changed, 10 insertions(+), 3 deletions(-) + +diff --git a/libgomp/libgomp.h b/libgomp/libgomp.h +index c98c1452bd4..0cc8443f6c2 100644 +--- a/libgomp/libgomp.h ++++ b/libgomp/libgomp.h +@@ -69,6 +69,13 @@ + # endif + #endif + ++#include <stdio.h> ++#ifdef __MINGW_PRINTF_FORMAT ++#define PRINTF_FORMAT __MINGW_PRINTF_FORMAT ++#else ++#define PRINTF_FORMAT printf ++#endif ++ + #ifdef HAVE_ATTRIBUTE_VISIBILITY + # pragma GCC visibility push(hidden) + #endif +@@ -180,7 +187,7 @@ extern void gomp_aligned_free (void *); + + extern void gomp_vdebug (int, const char *, va_list); + extern void gomp_debug (int, const char *, ...) +- __attribute__ ((format (printf, 2, 3))); ++ __attribute__ ((format (PRINTF_FORMAT, 2, 3))); + #define gomp_vdebug(KIND, FMT, VALIST) \ + do { \ + if (__builtin_expect (gomp_debug_var, 0)) \ +@@ -193,11 +200,11 @@ extern void gomp_debug (int, const char *, ...) + } while (0) + extern void gomp_verror (const char *, va_list); + extern void gomp_error (const char *, ...) +- __attribute__ ((format (printf, 1, 2))); ++ __attribute__ ((format (PRINTF_FORMAT, 1, 2))); + extern void gomp_vfatal (const char *, va_list) + __attribute__ ((noreturn)); + extern void gomp_fatal (const char *, ...) +- __attribute__ ((noreturn, format (printf, 1, 2))); ++ __attribute__ ((noreturn, format (PRINTF_FORMAT, 1, 2))); + + struct gomp_task; + struct gomp_taskgroup; +-- +2.26.2 + diff --git a/skip/mingw-w64-gcc/mingw-w64-gcc.xibuild b/skip/mingw-w64-gcc/mingw-w64-gcc.xibuild new file mode 100644 index 0000000..285a7cb --- /dev/null +++ b/skip/mingw-w64-gcc/mingw-w64-gcc.xibuild @@ -0,0 +1,72 @@ +#!/bin/sh + +NAME="mingw-w64-gcc" +DESC="Cross GCC for the MinGW-w64 cross-compiler" + +MAKEDEPS=" zlib mpc1 gmp mpfr" + +PKG_VER=12.2.0 +SOURCE="https://ftp.gnu.org/gnu/gcc/gcc-$PKG_VER/gcc-$PKG_VER.tar.xz" + +islver=0.25 + +ADDITIONAL=" +http://libisl.sourceforge.io/isl-$islver.tar.bz2 +0020-libgomp-Don-t-hard-code-MS-printf-attributes.patch +" +target="x86_64-w64-mingw32" + +prepare() { + apply_patches + + # link isl for in-tree builds + tar xf isl-$islver.tar.bz2 + ln -sf isl-$islver isl + + mkdir -p "$_gccdir" +} + +build() { + export CFLAGS="$CFLAGS -O2" + export CXXFLAGS="$CXXFLAGS -O2" + export CPPFLAGS="$CPPFLAGS -O2" + "$BUILD_ROOT"/configure \ + --prefix=/usr \ + --target=$target \ + --libexecdir=/usr/libexec \ + --disable-dw2-exceptions \ + --disable-multilib \ + --disable-nls \ + --disable-sjlj-exceptions \ + --disable-werror \ + --enable-checking=release \ + --enable-cloog-backend=isl \ + --enable-fully-dynamic-string \ + --enable-languages=c,lto,c++ \ + --enable-libgomp \ + --enable-libstdcxx-time=yes \ + --enable-lto \ + --enable-shared \ + --enable-static \ + --enable-threads=posix \ + --with-system-zlib + make +} + +package() { + cd "$_gccdir" + make DESTDIR="$PKG_DEST" install + + #$target-strip "$PKG_DEST"/usr/$target/lib/*.dll + + ln -s $target-gcc "$PKG_DEST"/usr/bin/$target-cc + + # Move DLLs + mkdir -p "$PKG_DEST"/usr/$target/bin + mv "$PKG_DEST"/usr/$target/lib/*.dll "$PKG_DEST"/usr/$target/bin + + # Unnecessary files + rm -rf "$PKG_DEST"/usr/share + rm "$PKG_DEST"/usr/lib/libcc1.* +} + diff --git a/repo/pandoc/cabal.config b/skip/pandoc/cabal.config index 19f0515..19f0515 100644 --- a/repo/pandoc/cabal.config +++ b/skip/pandoc/cabal.config diff --git a/skip/pandoc/cabal.project.freeze b/skip/pandoc/cabal.project.freeze deleted file mode 100644 index c532ee0..0000000 --- a/skip/pandoc/cabal.project.freeze +++ /dev/null @@ -1,249 +0,0 @@ -active-repositories: hackage.haskell.org:merge -constraints: any.Cabal ==3.4.0.0, - any.Diff ==0.4.0, - any.Glob ==0.10.2, - any.HsYAML ==0.2.1.0, - HsYAML -exe, - any.JuicyPixels ==3.3.6, - JuicyPixels -mmap, - any.OneTuple ==0.3.1, - any.QuickCheck ==2.14.2, - QuickCheck -old-random +templatehaskell, - any.SHA ==1.6.4.4, - SHA -exe, - any.StateVar ==1.2.2, - any.aeson ==2.0.2.0, - aeson -bytestring-builder -cffi +ordered-keymap, - any.aeson-pretty ==0.8.9, - aeson-pretty -lib-only, - any.ansi-terminal ==0.11.1, - ansi-terminal -example, - any.ansi-wl-pprint ==0.6.9, - ansi-wl-pprint -example, - any.appar ==0.1.8, - any.array ==0.5.4.0, - any.asn1-encoding ==0.9.6, - any.asn1-parse ==0.9.5, - any.asn1-types ==0.3.4, - any.assoc ==1.0.2, - any.async ==2.2.4, - async -bench, - any.attoparsec ==0.14.3, - attoparsec -developer, - any.base ==4.15.0.0, - any.base-compat ==0.12.1, - any.base-compat-batteries ==0.12.1, - any.base-orphans ==0.8.6, - any.base16-bytestring ==1.0.2.0, - any.base64-bytestring ==1.2.1.0, - any.basement ==0.0.12, - any.bifunctors ==5.5.11, - bifunctors +semigroups +tagged, - any.binary ==0.8.8.0, - any.blaze-builder ==0.4.2.2, - any.blaze-html ==0.9.1.2, - any.blaze-markup ==0.8.2.8, - any.byteorder ==1.0.4, - any.bytestring ==0.10.12.1, - any.cabal-doctest ==1.0.9, - any.call-stack ==0.4.0, - any.case-insensitive ==1.2.1.0, - any.cereal ==0.5.8.2, - cereal -bytestring-builder, - any.citeproc ==0.6, - citeproc -executable -icu, - any.clock ==0.8.2, - clock -llvm, - any.cmdargs ==0.10.21, - cmdargs +quotation -testprog, - any.colour ==2.3.6, - any.commonmark ==0.2.1.1, - any.commonmark-extensions ==0.2.2.1, - any.commonmark-pandoc ==0.2.1.1, - any.comonad ==5.0.8, - comonad +containers +distributive +indexed-traversable, - any.conduit ==1.3.4.2, - any.conduit-extra ==1.3.5, - any.connection ==0.3.1, - any.containers ==0.6.4.1, - any.contravariant ==1.5.5, - contravariant +semigroups +statevar +tagged, - any.cookie ==0.4.5, - any.cryptonite ==0.29, - cryptonite -check_alignment +integer-gmp -old_toolchain_inliner +support_aesni +support_deepseq -support_pclmuldq +support_rdrand -support_sse +use_target_attributes, - any.data-default ==0.7.1.1, - any.data-default-class ==0.1.2.0, - any.data-default-instances-containers ==0.0.1, - any.data-default-instances-dlist ==0.0.1, - any.data-default-instances-old-locale ==0.0.1, - any.data-fix ==0.3.2, - any.deepseq ==1.4.5.0, - any.digest ==0.0.1.3, - digest -bytestring-in-base, - any.directory ==1.3.6.1, - any.distributive ==0.6.2.1, - distributive +semigroups +tagged, - any.dlist ==1.0, - dlist -werror, - any.doclayout ==0.3.1.1, - any.doctemplates ==0.10.0.1, - any.emojis ==0.1.2, - any.errors ==2.3.0, - any.exceptions ==0.10.4, - any.file-embed ==0.0.15.0, - any.filepath ==1.4.2.1, - any.ghc-bignum ==1.0, - any.ghc-bignum-orphans ==0.1.1, - any.ghc-boot-th ==9.0.1, - any.ghc-prim ==0.7.0, - any.haddock-library ==1.10.0, - any.happy ==1.20.0, - any.hashable ==1.4.0.1, - hashable +containers +integer-gmp -random-initial-seed, - any.haskell-lexer ==1.1, - any.hourglass ==0.2.12, - any.hsc2hs ==0.68.8, - hsc2hs -in-ghc-tree, - any.hslua ==2.0.1, - any.hslua-classes ==2.0.0, - any.hslua-core ==2.0.0.2, - any.hslua-marshalling ==2.0.1, - any.hslua-module-path ==1.0.0, - any.hslua-module-system ==1.0.0, - any.hslua-module-text ==1.0.0, - any.hslua-module-version ==1.0.0, - any.hslua-objectorientation ==2.0.1, - any.hslua-packaging ==2.0.0, - any.http-client ==0.7.9, - http-client +network-uri, - any.http-client-tls ==0.3.5.3, - any.http-types ==0.12.3, - any.indexed-traversable ==0.1.2, - any.indexed-traversable-instances ==0.1.1, - any.integer-gmp ==1.1, - any.integer-logarithms ==1.0.3.1, - integer-logarithms -check-bounds +integer-gmp, - any.iproute ==1.7.12, - any.ipynb ==0.1.0.2, - any.jira-wiki-markup ==1.4.0, - any.libyaml ==0.1.2, - libyaml -no-unicode -system-libyaml, - any.lpeg ==1.0.1, - lpeg -rely-on-shared-lpeg-library, - any.lua ==2.0.2, - lua +allow-unsafe-gc -apicheck +export-dynamic +hardcode-reg-keys -lua_32bits -pkg-config -system-lua, - any.memory ==0.16.0, - memory +support_basement +support_bytestring +support_deepseq +support_foundation, - any.mime-types ==0.1.0.9, - any.mono-traversable ==1.0.15.3, - any.mtl ==2.2.2, - any.network ==3.1.2.5, - network -devel, - any.network-uri ==2.6.4.1, - any.old-locale ==1.0.0.7, - any.optparse-applicative ==0.16.1.0, - optparse-applicative +process, - pandoc +embed_data_files -trypandoc, - any.pandoc-types ==1.22.1, - any.parsec ==3.1.14.0, - any.pem ==0.2.4, - any.pretty ==1.1.3.6, - any.pretty-show ==1.10, - any.primitive ==0.7.3.0, - any.process ==1.6.11.0, - any.random ==1.2.1, - any.resourcet ==1.2.4.3, - any.rts ==1.0, - any.safe ==0.3.19, - any.scientific ==0.3.7.0, - scientific -bytestring-builder -integer-simple, - any.semialign ==1.2.0.1, - semialign +semigroupoids, - any.semigroupoids ==5.3.6, - semigroupoids +comonad +containers +contravariant +distributive +tagged +unordered-containers, - any.skylighting ==0.12.1, - skylighting -executable, - any.skylighting-core ==0.12.1, - skylighting-core -executable, - any.socks ==0.6.1, - any.split ==0.2.3.4, - any.splitmix ==0.1.0.4, - splitmix -optimised-mixer, - any.stm ==2.5.0.0, - any.streaming-commons ==0.2.2.3, - streaming-commons -use-bytestring-builder, - any.strict ==0.4.0.1, - strict +assoc, - any.syb ==0.7.2.1, - any.tagged ==0.8.6.1, - tagged +deepseq +transformers, - any.tagsoup ==0.14.8, - any.tasty ==1.4.2.1, - tasty +clock +unix, - any.tasty-bench ==0.3.1, - tasty-bench -debug +tasty, - any.tasty-golden ==2.3.4, - tasty-golden -build-example, - any.tasty-hunit ==0.10.0.3, - any.tasty-lua ==1.0.0, - any.tasty-quickcheck ==0.10.2, - any.template-haskell ==2.17.0.0, - any.temporary ==1.3, - any.texmath ==0.12.3.2, - texmath -executable +network-uri, - any.text ==1.2.4.1, - any.text-conversions ==0.3.1, - any.text-short ==0.1.4, - text-short -asserts, - any.th-abstraction ==0.4.3.0, - any.th-compat ==0.1.3, - any.th-lift ==0.8.2, - any.th-lift-instances ==0.1.18, - any.these ==1.1.1.1, - these +assoc, - any.time ==1.9.3, - any.time-compat ==1.9.6.1, - time-compat -old-locale, - any.tls ==1.5.5, - tls +compat -hans +network, - any.transformers ==0.5.6.2, - any.transformers-compat ==0.7.1, - transformers-compat -five +five-three -four +generic-deriving +mtl -three -two, - any.typed-process ==0.2.8.0, - any.unbounded-delays ==0.1.1.1, - any.unicode-collation ==0.1.3.1, - unicode-collation -doctests -executable, - any.unicode-data ==0.1.0.1, - unicode-data -ucd2haskell, - any.unicode-transforms ==0.3.8, - unicode-transforms -bench-show -dev -has-icu -has-llvm -use-gauge, - any.uniplate ==1.6.13, - any.unix ==2.7.2.2, - any.unix-compat ==0.5.3, - unix-compat -old-time, - any.unliftio-core ==0.2.0.1, - any.unordered-containers ==0.2.16.0, - unordered-containers -debug, - any.utf8-string ==1.0.2, - any.uuid-types ==1.0.5, - any.vector ==0.12.3.1, - vector +boundschecks -internalchecks -unsafechecks -wall, - any.vector-algorithms ==0.8.0.4, - vector-algorithms +bench +boundschecks -internalchecks -llvm +properties -unsafechecks, - any.wcwidth ==0.0.2, - wcwidth -cli +split-base, - any.witherable ==0.4.2, - any.x509 ==1.7.5, - any.x509-store ==1.6.7, - any.x509-system ==1.6.6, - any.x509-validation ==1.6.11, - any.xml ==1.3.14, - any.xml-conduit ==1.9.1.1, - any.xml-types ==0.3.8, - any.yaml ==0.11.7.0, - yaml +no-examples +no-exe, - any.zip-archive ==0.4.1, - zip-archive -executable, - any.zlib ==0.6.2.3, - zlib -bundled-c-zlib -non-blocking-ffi -pkg-config -index-state: hackage.haskell.org 2021-12-11T21:58:01Z diff --git a/skip/pandoc/pandoc.xibuild b/skip/pandoc/pandoc.xibuild index fd6988c..12d2406 100644 --- a/skip/pandoc/pandoc.xibuild +++ b/skip/pandoc/pandoc.xibuild @@ -3,36 +3,63 @@ NAME="pandoc" DESC="universal markup converter" -MAKEDEPS="cabal" -DEPS="gmp libffi musl zlib " +MAKEDEPS=" ghc cabal zlib libffi" -PKG_VER=2.16.2 +PKG_VER=2.19.1 SOURCE="https://hackage.haskell.org/package/pandoc-$PKG_VER/pandoc-$PKG_VER.tar.gz" -ADDITIONAL="cabal.project.freeze " -prepare () { - cp "$srcdir/cabal.project.freeze" . +ADDITIONAL=" +cabal.config +" + +cabal_update() { + echo "Freezing pandoc dependencies" + + # Resolve deps and generate fresh cabal.config with version constraints. + cabal update + ( + cd "$BUILD_ROOT" + cabal v1-freeze --shadow-installed-packages + + # Add version tag at the first line. + sed -i "1i--$PKG_VER" "cabal.config" + + mv "cabal.config" "$startdir/" + ) +} + +prepare() { + apply_patches + + if [ "$(head -n 1 "$BUILD_ROOT/cabal.config")" != "--$PKG_VER" ]; then + die "Requirements file is outdated, run 'abuild cabal_update'" + fi + + ln -sf "$BUILD_ROOT/cabal.config" "$BUILD_ROOT/cabal.project.freeze" +} + +build() { cabal update + cabal install --only-dependencies cabal configure \ --prefix='/usr' \ --enable-tests \ --enable-split-sections \ --ghc-option="-split-sections" \ - --ghc-option="-j" \ - --ghc-option="-O1" \ --flags="+embed_data_files -trypandoc +static" + cabal build --jobs=${JOBS:-1} } -build () { - cabal install --only-dependencies - cabal build --jobs=${JOBS:-1} +check() { + cabal test --jobs=${JOBS:-1} } -package () { - bindir="$PKG_DEST/usr/bin" - mkdir -p "$bindir" +package() { + _bindir="$PKG_DEST/usr/bin" + mkdir -p "$_bindir" cabal install \ - --installdir="$bindir" \ + --installdir="$_bindir" \ --install-method=copy install -Dm644 man/pandoc.1 "$PKG_DEST"/usr/share/man/man1/pandoc.1 } + diff --git a/repo/php8/.php8.xibuild.swp b/skip/php8/.php8.xibuild.swp Binary files differindex ffdb8e4..ffdb8e4 100644 --- a/repo/php8/.php8.xibuild.swp +++ b/skip/php8/.php8.xibuild.swp diff --git a/repo/php8/atomic-lsapi.patch b/skip/php8/atomic-lsapi.patch index 39cf182..39cf182 100644 --- a/repo/php8/atomic-lsapi.patch +++ b/skip/php8/atomic-lsapi.patch diff --git a/repo/php8/disabled-tests.list b/skip/php8/disabled-tests.list index 6b6540f..6b6540f 100644 --- a/repo/php8/disabled-tests.list +++ b/skip/php8/disabled-tests.list diff --git a/repo/php8/fix-tests-devserver.patch b/skip/php8/fix-tests-devserver.patch index 5447980..5447980 100644 --- a/repo/php8/fix-tests-devserver.patch +++ b/skip/php8/fix-tests-devserver.patch diff --git a/repo/php8/includedir.patch b/skip/php8/includedir.patch index a835815..a835815 100644 --- a/repo/php8/includedir.patch +++ b/skip/php8/includedir.patch diff --git a/repo/php8/install-pear.patch b/skip/php8/install-pear.patch index 1c9f07f..1c9f07f 100644 --- a/repo/php8/install-pear.patch +++ b/skip/php8/install-pear.patch diff --git a/repo/php8/php8-fpm-version-suffix.patch b/skip/php8/php8-fpm-version-suffix.patch index 50e1345..50e1345 100644 --- a/repo/php8/php8-fpm-version-suffix.patch +++ b/skip/php8/php8-fpm-version-suffix.patch diff --git a/repo/php8/php8-fpm.initd b/skip/php8/php8-fpm.initd index f498581..f498581 100644 --- a/repo/php8/php8-fpm.initd +++ b/skip/php8/php8-fpm.initd diff --git a/repo/php8/php8-fpm.logrotate b/skip/php8/php8-fpm.logrotate index 10b5bf3..10b5bf3 100644 --- a/repo/php8/php8-fpm.logrotate +++ b/skip/php8/php8-fpm.logrotate diff --git a/repo/php8/php8-module.conf b/skip/php8/php8-module.conf index 2ffe005..2ffe005 100644 --- a/repo/php8/php8-module.conf +++ b/skip/php8/php8-module.conf diff --git a/repo/php8/php8.xibuild b/skip/php8/php8.xibuild index c505207..535c340 100644 --- a/repo/php8/php8.xibuild +++ b/skip/php8/php8.xibuild @@ -3,7 +3,7 @@ NAME="php8" DESC="The PHP8 language runtime engine" -MAKEDEPS="autoconf pcre2 re2c apache2 argon2 aspell bison bzip2 curl enchant2 freetds freetype gdbm gettext gmp icu imap krb5 libedit libical libjpeg-turbo libpng libpq lmdb oniguruma libsodium libwebp libxml2 libxpm libxslt libzip net-snmp openldap sqlite tidyhtml unixodbc zlib" +MAKEDEPS="autoconf pcre2 re2c apache2 argon2 aspell bison bzip2 curl enchant2 freetds freetype2 gdbm gettext gmp icu imap krb5 libedit libical libjpeg-turbo libpng libpq lmdb oniguruma libsodium libwebp libxml2 libxpm libxslt libzip net-snmp libldap sqlite3 tidyhtml unixodbc zlib" PKG_VER=8.1.10 suffix=8 diff --git a/repo/php8/sharedir.patch b/skip/php8/sharedir.patch index 7d5c104..7d5c104 100644 --- a/repo/php8/sharedir.patch +++ b/skip/php8/sharedir.patch diff --git a/repo/php8/xfail-openssl-1.1-test.patch b/skip/php8/xfail-openssl-1.1-test.patch index f607cc1..f607cc1 100644 --- a/repo/php8/xfail-openssl-1.1-test.patch +++ b/skip/php8/xfail-openssl-1.1-test.patch diff --git a/repo/python-pyqtwebengine/python-pyqtwebengine.xibuild b/skip/python-pyqtwebengine/python-pyqtwebengine.xibuild index cbc2bf8..cbc2bf8 100644 --- a/repo/python-pyqtwebengine/python-pyqtwebengine.xibuild +++ b/skip/python-pyqtwebengine/python-pyqtwebengine.xibuild diff --git a/skip/python-pyside2/python-3.10.patch b/skip/python-pyside2/python-3.10.patch new file mode 100644 index 0000000..0e8b0f2 --- /dev/null +++ b/skip/python-pyside2/python-3.10.patch @@ -0,0 +1,119 @@ +# Based on: +# https://github.com/pyside/pyside-setup/commit/81e9cff884d6 +# https://github.com/pyside/pyside-setup/commit/2530cb3f165a + +diff -upr pyside-setup-opensource-src-5.15.2.orig/build_scripts/config.py pyside-setup-opensource-src-5.15.2/build_scripts/config.py +--- pyside-setup-opensource-src-5.15.2.orig/build_scripts/config.py 2020-11-11 14:51:30.000000000 +0200 ++++ pyside-setup-opensource-src-5.15.2/build_scripts/config.py 2021-12-01 15:15:52.323808457 +0200 +@@ -93,6 +93,7 @@ class Config(object): + 'Programming Language :: Python :: 3.7', + 'Programming Language :: Python :: 3.8', + 'Programming Language :: Python :: 3.9', ++ 'Programming Language :: Python :: 3.10', + ] + + self.setup_script_dir = None +diff -upr pyside-setup-opensource-src-5.15.2.orig/sources/shiboken2/libshiboken/pep384impl.cpp pyside-setup-opensource-src-5.15.2/sources/shiboken2/libshiboken/pep384impl.cpp +--- pyside-setup-opensource-src-5.15.2.orig/sources/shiboken2/libshiboken/pep384impl.cpp 2020-11-11 14:51:30.000000000 +0200 ++++ pyside-setup-opensource-src-5.15.2/sources/shiboken2/libshiboken/pep384impl.cpp 2021-12-01 15:17:21.444888977 +0200 +@@ -751,14 +751,14 @@ _Pep_PrivateMangle(PyObject *self, PyObj + #endif // IS_PY2 + Shiboken::AutoDecRef privateobj(PyObject_GetAttr( + reinterpret_cast<PyObject *>(Py_TYPE(self)), Shiboken::PyMagicName::name())); +-#ifndef Py_LIMITED_API +- return _Py_Mangle(privateobj, name); +-#else +- // For some reason, _Py_Mangle is not in the Limited API. Why? +- size_t plen = PyUnicode_GET_LENGTH(privateobj); ++ ++ // PYSIDE-1436: _Py_Mangle is no longer exposed; implement it always. ++ // The rest of this function is our own implementation of _Py_Mangle. ++ // Please compare the original function in compile.c . ++ size_t plen = PyUnicode_GET_LENGTH(privateobj.object()); + /* Strip leading underscores from class name */ + size_t ipriv = 0; +- while (PyUnicode_READ_CHAR(privateobj, ipriv) == '_') ++ while (PyUnicode_READ_CHAR(privateobj.object(), ipriv) == '_') + ipriv++; + if (ipriv == plen) { + Py_INCREF(name); +@@ -787,7 +787,6 @@ _Pep_PrivateMangle(PyObject *self, PyObj + if (amount > big_stack) + free(resbuf); + return result; +-#endif // else Py_LIMITED_API + } + + /***************************************************************************** +diff -upr pyside-setup-opensource-src-5.15.2.orig/sources/shiboken2/libshiboken/pep384impl.h pyside-setup-opensource-src-5.15.2/sources/shiboken2/libshiboken/pep384impl.h +--- pyside-setup-opensource-src-5.15.2.orig/sources/shiboken2/libshiboken/pep384impl.h 2020-11-11 14:51:30.000000000 +0200 ++++ pyside-setup-opensource-src-5.15.2/sources/shiboken2/libshiboken/pep384impl.h 2021-12-01 15:13:58.899521842 +0200 +@@ -40,6 +40,11 @@ + #ifndef PEP384IMPL_H + #define PEP384IMPL_H + ++// PYSIDE-1436: Adapt to Python 3.10 ++#if PY_VERSION_HEX < 0x030900A4 ++# define Py_SET_REFCNT(obj, refcnt) ((Py_REFCNT(obj) = (refcnt)), (void)0) ++#endif ++ + extern "C" + { + +@@ -327,7 +332,7 @@ LIBSHIBOKEN_API PyObject *PyRun_String(c + // But this is no problem as we check it's validity for every version. + + #define PYTHON_BUFFER_VERSION_COMPATIBLE (PY_VERSION_HEX >= 0x03030000 && \ +- PY_VERSION_HEX < 0x0309FFFF) ++ PY_VERSION_HEX < 0x030AFFFF) + #if !PYTHON_BUFFER_VERSION_COMPATIBLE + # error Please check the buffer compatibility for this python version! + #endif +diff -upr pyside-setup-opensource-src-5.15.2.orig/sources/shiboken2/libshiboken/sbkstring.cpp pyside-setup-opensource-src-5.15.2/sources/shiboken2/libshiboken/sbkstring.cpp +--- pyside-setup-opensource-src-5.15.2.orig/sources/shiboken2/libshiboken/sbkstring.cpp 2020-11-11 14:51:30.000000000 +0200 ++++ pyside-setup-opensource-src-5.15.2/sources/shiboken2/libshiboken/sbkstring.cpp 2021-12-01 15:14:47.703201473 +0200 +@@ -247,7 +247,7 @@ static void finalizeStaticStrings() + { + auto &set = staticStrings(); + for (PyObject *ob : set) { +- Py_REFCNT(ob) = 1; ++ Py_SET_REFCNT(ob, 1); + Py_DECREF(ob); + } + set.clear(); +diff -upr pyside-setup-opensource-src-5.15.2.orig/sources/shiboken2/shibokenmodule/files.dir/shibokensupport/signature/mapping.py pyside-setup-opensource-src-5.15.2/sources/shiboken2/shibokenmodule/files.dir/shibokensupport/signature/mapping.py +--- pyside-setup-opensource-src-5.15.2.orig/sources/shiboken2/shibokenmodule/files.dir/shibokensupport/signature/mapping.py 2020-11-11 14:51:30.000000000 +0200 ++++ pyside-setup-opensource-src-5.15.2/sources/shiboken2/shibokenmodule/files.dir/shibokensupport/signature/mapping.py 2021-12-01 15:15:14.560100869 +0200 +@@ -300,6 +300,7 @@ type_map.update({ + "zero(object)": None, + "zero(str)": "", + "zero(typing.Any)": None, ++ "zero(Any)": None, + }) + + type_map.update({ +diff -upr pyside-setup-opensource-src-5.15.2.orig/sources/shiboken2/shibokenmodule/files.dir/shibokensupport/signature/parser.py pyside-setup-opensource-src-5.15.2/sources/shiboken2/shibokenmodule/files.dir/shibokensupport/signature/parser.py +--- pyside-setup-opensource-src-5.15.2.orig/sources/shiboken2/shibokenmodule/files.dir/shibokensupport/signature/parser.py 2020-11-11 14:51:30.000000000 +0200 ++++ pyside-setup-opensource-src-5.15.2/sources/shiboken2/shibokenmodule/files.dir/shibokensupport/signature/parser.py 2021-12-01 15:25:43.267843740 +0200 +@@ -43,10 +43,11 @@ import sys + import re + import warnings + import types ++import typing + import keyword + import functools + from shibokensupport.signature.mapping import (type_map, update_mapping, +- namespace, typing, _NotCalled, ResultVariable, ArrayLikeVariable) ++ namespace, _NotCalled, ResultVariable, ArrayLikeVariable) + from shibokensupport.signature.lib.tool import (SimpleNamespace, + build_brace_pattern) + +@@ -222,7 +223,7 @@ def _resolve_arraytype(thing, line): + def to_string(thing): + if isinstance(thing, str): + return thing +- if hasattr(thing, "__name__"): ++ if hasattr(thing, "__name__") and thing.__module__ != "typing": + dot = "." in str(thing) + name = get_name(thing) + return thing.__module__ + "." + name if dot else name diff --git a/skip/python-pyside2/python-pyside2.xibuild b/skip/python-pyside2/python-pyside2.xibuild new file mode 100644 index 0000000..d2652e8 --- /dev/null +++ b/skip/python-pyside2/python-pyside2.xibuild @@ -0,0 +1,39 @@ +#!/bin/sh + +NAME="python-pyside2" +DESC="Enables the use of Qt5 APIs in Python applications" + +MAKEDEPS=" cmake libshiboken2 qt5-qt3d qt5-qtbase qt5-qtcharts qt5-qtdatavis3d qt5-qtdeclarative qt5-qtlocation qt5-qtmultimedia qt5-qtquickcontrols2 qt5-qtremoteobjects qt5-qtscript qt5-qtscxml qt5-qtsensors qt5-qtserialport qt5-qtspeech qt5-qtsvg qt5-qttools qt5-qtwebchannel qt5-qtwebsockets qt5-qtx11extras qt5-qtxmlpatterns shiboken2 py3-setuptools qt5-qtwebengine" + +PKG_VER=5.15.2 +SOURCE="https://download.qt.io/official_releases/QtForPython/pyside2/PySide2-$PKG_VER-src/pyside-setup-opensource-src-$PKG_VER.tar.xz" + +ADDITIONAL=" +python-3.10.patch +" + +prepare () { + apply_patches +} + +build() { + cmake -B build \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DBUILD_SHARED_LIBS=True \ + -DCMAKE_BUILD_TYPE=None \ + -DPYTHON_EXECUTABLE=/usr/bin/python3 \ + -DBUILD_TESTS=OFF \ + sources/pyside2 + cmake --build build +} + +package() { + DESTDIR="$PKG_DEST" cmake --install build + + # Install egg info + export PATH="/usr/lib/qt5/bin:$PATH" + python3 setup.py egg_info --build-type=pyside2 + pythonpath="$(python3 -c "from sysconfig import get_path; print(get_path('platlib'))")" + cp -r PySide2.egg-info "$PKG_DEST/$pythonpath" +} + diff --git a/skip/qt5-qt3d/qt5-qt3d.xibuild b/skip/qt5-qt3d/qt5-qt3d.xibuild new file mode 100644 index 0000000..538eefc --- /dev/null +++ b/skip/qt5-qt3d/qt5-qt3d.xibuild @@ -0,0 +1,35 @@ +#!/bin/sh + +NAME="qt5-qt3d" +DESC="C++ and QML APIs for easy inclusion of 3D graphics" + +MAKEDEPS=" qt5-qtbase qt5-qtdeclarative vulkan-headers" + +PKG_VER=5.15.5_git20220617 +_commit="3cc801c4ae41ff3f155258c4bf7e21bb5b3f6a3d" +SOURCE="https://invent.kde.org/qt/qt/qt3d/-/archive/$_commit/qt3d-$_commit.tar.gz" + +prepare() { + apply_patches + + # We need to make the build system think we're running in a git repository + # so it correctly symlinks during the build + mkdir .git +} + +build() { + qmake-qt5 + make +} + +check() { + make check +} + +package() { + make INSTALL_ROOT="$PKG_DEST" install + + # Drop QMAKE_PRL_BUILD_DIR because reference the build dir + find "$PKG_DEST/usr/lib" -type f -name '*.prl' \ + -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \; +} diff --git a/repo/qt5-qtwebengine/0001-pretend-to-stay-at-5.15.3.patch b/skip/qt5-qtwebengine/0001-pretend-to-stay-at-5.15.3.patch index 4b2d9fa..a67a399 100644 --- a/repo/qt5-qtwebengine/0001-pretend-to-stay-at-5.15.3.patch +++ b/skip/qt5-qtwebengine/0001-pretend-to-stay-at-5.15.3.patch @@ -4,5 +4,5 @@ load(qt_build_config) CONFIG += warning_clean --MODULE_VERSION = 5.15.10 +-MODULE_VERSION = 5.15.11 +MODULE_VERSION = 5.15.3 diff --git a/repo/qt5-qtwebengine/0010-chromium-musl-Match-syscalls-to-match-musl.patch b/skip/qt5-qtwebengine/0010-chromium-musl-Match-syscalls-to-match-musl.patch index 524d75d..524d75d 100644 --- a/repo/qt5-qtwebengine/0010-chromium-musl-Match-syscalls-to-match-musl.patch +++ b/skip/qt5-qtwebengine/0010-chromium-musl-Match-syscalls-to-match-musl.patch diff --git a/repo/qt5-qtwebengine/default-pthread-stacksize.patch b/skip/qt5-qtwebengine/default-pthread-stacksize.patch index e0ca792..e0ca792 100644 --- a/repo/qt5-qtwebengine/default-pthread-stacksize.patch +++ b/skip/qt5-qtwebengine/default-pthread-stacksize.patch diff --git a/repo/qt5-qtwebengine/ffmpeg5.patch b/skip/qt5-qtwebengine/ffmpeg5.patch index ea721d1..ea721d1 100644 --- a/repo/qt5-qtwebengine/ffmpeg5.patch +++ b/skip/qt5-qtwebengine/ffmpeg5.patch diff --git a/repo/qt5-qtwebengine/fix-chromium-build.patch b/skip/qt5-qtwebengine/fix-chromium-build.patch index 8b26238..8b26238 100644 --- a/repo/qt5-qtwebengine/fix-chromium-build.patch +++ b/skip/qt5-qtwebengine/fix-chromium-build.patch diff --git a/repo/qt5-qtwebengine/fix-strncpy-error.patch b/skip/qt5-qtwebengine/fix-strncpy-error.patch index 11294de..11294de 100644 --- a/repo/qt5-qtwebengine/fix-strncpy-error.patch +++ b/skip/qt5-qtwebengine/fix-strncpy-error.patch diff --git a/repo/qt5-qtwebengine/musl-hacks.patch b/skip/qt5-qtwebengine/musl-hacks.patch index 3c94b19..3c94b19 100644 --- a/repo/qt5-qtwebengine/musl-hacks.patch +++ b/skip/qt5-qtwebengine/musl-hacks.patch diff --git a/repo/qt5-qtwebengine/musl-sandbox.patch b/skip/qt5-qtwebengine/musl-sandbox.patch index ad01ea8..ad01ea8 100644 --- a/repo/qt5-qtwebengine/musl-sandbox.patch +++ b/skip/qt5-qtwebengine/musl-sandbox.patch diff --git a/repo/qt5-qtwebengine/nasm.patch b/skip/qt5-qtwebengine/nasm.patch index 1d58af6..1d58af6 100644 --- a/repo/qt5-qtwebengine/nasm.patch +++ b/skip/qt5-qtwebengine/nasm.patch diff --git a/repo/qt5-qtwebengine/qt-chromium-python3.patch b/skip/qt5-qtwebengine/qt-chromium-python3.patch index 41fcb7e..41fcb7e 100644 --- a/repo/qt5-qtwebengine/qt-chromium-python3.patch +++ b/skip/qt5-qtwebengine/qt-chromium-python3.patch diff --git a/repo/qt5-qtwebengine/qt-musl-crashpad.patch b/skip/qt5-qtwebengine/qt-musl-crashpad.patch index 0dd9789..0dd9789 100644 --- a/repo/qt5-qtwebengine/qt-musl-crashpad.patch +++ b/skip/qt5-qtwebengine/qt-musl-crashpad.patch diff --git a/repo/qt5-qtwebengine/qt-musl-dispatch_to_musl.patch b/skip/qt5-qtwebengine/qt-musl-dispatch_to_musl.patch index a58a688..a58a688 100644 --- a/repo/qt5-qtwebengine/qt-musl-dispatch_to_musl.patch +++ b/skip/qt5-qtwebengine/qt-musl-dispatch_to_musl.patch diff --git a/repo/qt5-qtwebengine/qt-musl-elf-arm.patch b/skip/qt5-qtwebengine/qt-musl-elf-arm.patch index 9253c41..9253c41 100644 --- a/repo/qt5-qtwebengine/qt-musl-elf-arm.patch +++ b/skip/qt5-qtwebengine/qt-musl-elf-arm.patch diff --git a/repo/qt5-qtwebengine/qt-musl-execinfo.patch b/skip/qt5-qtwebengine/qt-musl-execinfo.patch index 01a5c94..01a5c94 100644 --- a/repo/qt5-qtwebengine/qt-musl-execinfo.patch +++ b/skip/qt5-qtwebengine/qt-musl-execinfo.patch diff --git a/repo/qt5-qtwebengine/qt-musl-mallinfo.patch b/skip/qt5-qtwebengine/qt-musl-mallinfo.patch index c7b7f27..c7b7f27 100644 --- a/repo/qt5-qtwebengine/qt-musl-mallinfo.patch +++ b/skip/qt5-qtwebengine/qt-musl-mallinfo.patch diff --git a/repo/qt5-qtwebengine/qt-musl-off_t.patch b/skip/qt5-qtwebengine/qt-musl-off_t.patch index 6b44789..6b44789 100644 --- a/repo/qt5-qtwebengine/qt-musl-off_t.patch +++ b/skip/qt5-qtwebengine/qt-musl-off_t.patch diff --git a/repo/qt5-qtwebengine/qt-musl-pread-pwrite.patch b/skip/qt5-qtwebengine/qt-musl-pread-pwrite.patch index 623f609..623f609 100644 --- a/repo/qt5-qtwebengine/qt-musl-pread-pwrite.patch +++ b/skip/qt5-qtwebengine/qt-musl-pread-pwrite.patch diff --git a/repo/qt5-qtwebengine/qt-musl-pvalloc.patch b/skip/qt5-qtwebengine/qt-musl-pvalloc.patch index d5caf38..d5caf38 100644 --- a/repo/qt5-qtwebengine/qt-musl-pvalloc.patch +++ b/skip/qt5-qtwebengine/qt-musl-pvalloc.patch diff --git a/repo/qt5-qtwebengine/qt-musl-resolve.patch b/skip/qt5-qtwebengine/qt-musl-resolve.patch index 386062e..386062e 100644 --- a/repo/qt5-qtwebengine/qt-musl-resolve.patch +++ b/skip/qt5-qtwebengine/qt-musl-resolve.patch diff --git a/repo/qt5-qtwebengine/qt-musl-siginfo_t.patch b/skip/qt5-qtwebengine/qt-musl-siginfo_t.patch index b071563..b071563 100644 --- a/repo/qt5-qtwebengine/qt-musl-siginfo_t.patch +++ b/skip/qt5-qtwebengine/qt-musl-siginfo_t.patch diff --git a/repo/qt5-qtwebengine/qt-musl-stackstart.patch b/skip/qt5-qtwebengine/qt-musl-stackstart.patch index 2214af4..2214af4 100644 --- a/repo/qt5-qtwebengine/qt-musl-stackstart.patch +++ b/skip/qt5-qtwebengine/qt-musl-stackstart.patch diff --git a/repo/qt5-qtwebengine/qt-musl-sysreg-for__WORDSIZE.patch b/skip/qt5-qtwebengine/qt-musl-sysreg-for__WORDSIZE.patch index de9377e..de9377e 100644 --- a/repo/qt5-qtwebengine/qt-musl-sysreg-for__WORDSIZE.patch +++ b/skip/qt5-qtwebengine/qt-musl-sysreg-for__WORDSIZE.patch diff --git a/repo/qt5-qtwebengine/qt-musl-thread-stacksize.patch b/skip/qt5-qtwebengine/qt-musl-thread-stacksize.patch index 80c3d34..80c3d34 100644 --- a/repo/qt5-qtwebengine/qt-musl-thread-stacksize.patch +++ b/skip/qt5-qtwebengine/qt-musl-thread-stacksize.patch diff --git a/repo/qt5-qtwebengine/qt-musl-tid-caching.patch b/skip/qt5-qtwebengine/qt-musl-tid-caching.patch index acbee25..acbee25 100644 --- a/repo/qt5-qtwebengine/qt-musl-tid-caching.patch +++ b/skip/qt5-qtwebengine/qt-musl-tid-caching.patch diff --git a/repo/qt5-qtwebengine/qt5-qtwebengine.xibuild b/skip/qt5-qtwebengine/qt5-qtwebengine.xibuild index 1404ce4..99a440f 100644 --- a/repo/qt5-qtwebengine/qt5-qtwebengine.xibuild +++ b/skip/qt5-qtwebengine/qt5-qtwebengine.xibuild @@ -3,12 +3,11 @@ NAME="qt5-qtwebengine" DESC="Qt5 - QtWebEngine components" -MAKEDEPS="ffmpeg glib gst-plugins-base gstreamer icu libxcomposite libxext libxkbcommon libxkbfile libxrender libxslt mesa ninja alsa-lib bison musl-legacy-compat flex fontconfig gperf gzip harfbuzz jsoncpp libevent libjpeg-turbo libpng libsrtp libvpx libwebp libxcursor libxi libxml2 libxrandr libxslt libxtst linux-headers nodejs nss opus pcre protobuf pulseaudio sndio qt5-qtbase qt5-qtdeclarative qt5-qtwebchannel re2 ruby snappy sqlite3 yasm zlib python" +MAKEDEPS=" ffmpeg glib gst-plugins-base gstreamer icu libxcomposite libxext libxkbcommon libxkbfile libxrender libxslt mesa ninja alsa-lib bison flex fontconfig gperf gzip harfbuzz jsoncpp libevent libjpeg-turbo libpng libsrtp libvpx libwebp libxcursor libxi libxml2 libxrandr libxslt libxtst linux-headers nodejs nss opus pcre protobuf pulseaudio sndio qt5-qtbase qt5-qtdeclarative qt5-qtwebchannel re2 ruby snappy sqlite3 yasm zlib python" -PKG_VER= -_commit="56260bb605a74fabdfc74cef3bf890394af88b3d" -_chromium_commit="d13d0924c4e18ecc4b79adf0fec142ee9a9eaa14" -# commit of catapult version with python3 support +PKG_VER=5.15.11 +_commit="c107eb20a25157836fcf3be91566d8ea38490f40" +_chromium_commit="9d42f3a5802d427c0e9358b2a0469f18285558c0" _catapult_commit="5eedfe23148a234211ba477f76fc2ea2e8529189" SOURCE="https://invent.kde.org/qt/qt/qtwebengine/-/archive/$_commit.tar.gz" @@ -38,14 +37,15 @@ qt-musl-stackstart.patch qt-musl-sysreg-for__WORDSIZE.patch qt-musl-thread-stacksize.patch qt-musl-tid-caching.patch +qt5-webengine-gcc12.patch remove-glibc-check.patch sndio.patch support-python3.patch -fix-strncpy-error.patch " prepare() { - tar xf *.tar.gz + tar xf $_chromium_commit.tar.gz + tar xf catapult-$_catapult_commit.tar.gz rmdir "$BUILD_ROOT/src/3rdparty" mv "$BUILD_ROOT/qtwebengine-chromium-$_chromium_commit" "$BUILD_ROOT/src/3rdparty" mkdir "$BUILD_ROOT"/.git "$BUILD_ROOT/src/3rdparty/chromium/.git" @@ -58,7 +58,7 @@ prepare() { } build() { - qmake-qt5 QMAKE_EXTRA_ARGS="-webengine-sndio -system-ffmpeg -system-opus -system-webp -proprietary-codecs" CONFIG=force_debug_info + qmake-qt5 QMAKE_EXTRA_ARGS+="-webengine-sndio -system-ffmpeg -system-opus -system-webp -proprietary-codecs" CONFIG+=force_debug_info make } diff --git a/skip/qt5-qtwebengine/qt5-webengine-gcc12.patch b/skip/qt5-qtwebengine/qt5-webengine-gcc12.patch new file mode 100644 index 0000000..c86351e --- /dev/null +++ b/skip/qt5-qtwebengine/qt5-webengine-gcc12.patch @@ -0,0 +1,13 @@ +diff --git a/chromium/third_party/skia/src/utils/SkParseColor.cpp b/chromium/third_party/skia/src/utils/SkParseColor.cpp +index 7260365b2c6..b5a6aae3596 100644 +--- a/src/3rdparty/chromium/third_party/skia/src/utils/SkParseColor.cpp ++++ b/src/3rdparty/chromium/third_party/skia/src/utils/SkParseColor.cpp +@@ -8,6 +8,8 @@ + + #include "include/utils/SkParse.h" + ++#include <iterator> ++ + static constexpr const char* gColorNames[] = { + "aliceblue", + "antiquewhite", diff --git a/repo/qt5-qtwebengine/remove-glibc-check.patch b/skip/qt5-qtwebengine/remove-glibc-check.patch index 1d94b6b..1d94b6b 100644 --- a/repo/qt5-qtwebengine/remove-glibc-check.patch +++ b/skip/qt5-qtwebengine/remove-glibc-check.patch diff --git a/repo/qt5-qtwebengine/sndio.patch b/skip/qt5-qtwebengine/sndio.patch index 771e630..771e630 100644 --- a/repo/qt5-qtwebengine/sndio.patch +++ b/skip/qt5-qtwebengine/sndio.patch diff --git a/repo/qt5-qtwebengine/support-python3.patch b/skip/qt5-qtwebengine/support-python3.patch index cc5e457..cc5e457 100644 --- a/repo/qt5-qtwebengine/support-python3.patch +++ b/skip/qt5-qtwebengine/support-python3.patch diff --git a/skip/ripgrep/minimize-size.patch b/skip/ripgrep/minimize-size.patch new file mode 100644 index 0000000..dbb008b --- /dev/null +++ b/skip/ripgrep/minimize-size.patch @@ -0,0 +1,28 @@ +From: Jakub Jirutka <jakub@jirutka.cz> +Date: Tue, 6 Apr 2021 00:24:00 +0200 +Subject: [PATCH] Reduce size of the binary + +Reduce size of the resulting binary: 4.6 -> 3.0 MiB (on x86_64). + +`opt-level="s"` provides the best size/performance ratio; the performance +is close to the default opt-level (according to the benchmark), but the +binary is significantly smaller. + +NOTE: ripgrep uses jemalloc allocator when building on musl libc. +It adds about 200 kiB to the binary size, but provides 2x performance; +so better keep it as-is. + +--- a/Cargo.toml ++++ b/Cargo.toml +@@ -78,7 +78,10 @@ + pcre2 = ["grep/pcre2"] + + [profile.release] +-debug = 1 ++lto = true ++codegen-units = 1 ++panic = "abort" ++opt-level = "s" + + [package.metadata.deb] + features = ["pcre2"] diff --git a/skip/ripgrep/ripgrep.xibuild b/skip/ripgrep/ripgrep.xibuild new file mode 100644 index 0000000..8820a83 --- /dev/null +++ b/skip/ripgrep/ripgrep.xibuild @@ -0,0 +1,35 @@ +#!/bin/sh + +NAME="ripgrep" +DESC="ripgrep combines the usability of The Silver Searcher with the raw speed of grep" + +MAKEDEPS=" cargo asciidoc jemalloc pcre2" + +PKG_VER=13.0.0 +SOURCE="https://github.com/BurntSushi/ripgrep/archive/$PKG_VER/ripgrep-$PKG_VER.tar.gz" + +ADDITIONAL=" +minimize-size.patch +" + +prepare () { + apply_patches +} + +build() { + cargo build --release --locked --features 'pcre2' +} + +check() { + cargo test --release --locked --features 'pcre2' +} + +package() { + install -Dm755 "target/release/rg" "$PKG_DEST/usr/bin/rg" + install -Dm644 "target/release/build/ripgrep-"*/out/rg.1 \ + "$PKG_DEST/usr/share/man/man1/rg.1" + + install -Dm644 "$BUILD_ROOT"/target/release/build/ripgrep-*/out/rg.fish \ + -t "$PKG_DEST"/usr/share/fish/completions +} + diff --git a/repo/ruby-kramdown/gemspec.patch b/skip/ruby-kramdown/gemspec.patch index f90f36b..f90f36b 100644 --- a/repo/ruby-kramdown/gemspec.patch +++ b/skip/ruby-kramdown/gemspec.patch diff --git a/repo/ruby-kramdown/ruby-kramdown.xibuild b/skip/ruby-kramdown/ruby-kramdown.xibuild index b1d216b..10885f9 100644 --- a/repo/ruby-kramdown/ruby-kramdown.xibuild +++ b/skip/ruby-kramdown/ruby-kramdown.xibuild @@ -4,24 +4,23 @@ NAME="ruby-kramdown" _gemname=kramdown DESC="A fast, pure Ruby Markdown superset converter" -MAKEDEPS=" ruby-rake" +MAKEDEPS="ruby-rake" -PKG_VER=2.3.634 -SOURCE="https://github.com/gettalong/kramdown" +PKG_VER=2.3.2 +ver=REL_$(echo $PKG_VER | sed 's/\./_/g') +SOURCE="https://github.com/gettalong/kramdown/archive/$ver/ruby-kramdown-$PKG_VER.tar.gz" ADDITIONAL=" gemspec.patch " prepare() { - apply_patches - - # Remove tests that require gem "stringex" (we don't have it in aports yet). + apply_patches && rm test/testcases/block/04_header/with_auto_ids.* } build() { - rake gemspec + rake gemspec && gem build $_gemname.gemspec } diff --git a/repo/samba/add_missing___compar_fn_t.patch b/skip/samba/add_missing___compar_fn_t.patch index 96b65e6..96b65e6 100644 --- a/repo/samba/add_missing___compar_fn_t.patch +++ b/skip/samba/add_missing___compar_fn_t.patch diff --git a/repo/samba/getpwent_r.patch b/skip/samba/getpwent_r.patch index 0ba5fcc..0ba5fcc 100644 --- a/repo/samba/getpwent_r.patch +++ b/skip/samba/getpwent_r.patch diff --git a/repo/samba/missing-headers.patch b/skip/samba/missing-headers.patch index 58c26ae..58c26ae 100644 --- a/repo/samba/missing-headers.patch +++ b/skip/samba/missing-headers.patch diff --git a/repo/samba/musl_rm_unistd_incl.patch b/skip/samba/musl_rm_unistd_incl.patch index 1f4aae2..1f4aae2 100644 --- a/repo/samba/musl_rm_unistd_incl.patch +++ b/skip/samba/musl_rm_unistd_incl.patch diff --git a/repo/samba/musl_uintptr.patch b/skip/samba/musl_uintptr.patch index de7f285..de7f285 100644 --- a/repo/samba/musl_uintptr.patch +++ b/skip/samba/musl_uintptr.patch diff --git a/repo/samba/netapp.patch b/skip/samba/netapp.patch index fea413c..fea413c 100644 --- a/repo/samba/netapp.patch +++ b/skip/samba/netapp.patch diff --git a/repo/samba/netdb-defines.patch b/skip/samba/netdb-defines.patch index d7d6446..d7d6446 100644 --- a/repo/samba/netdb-defines.patch +++ b/skip/samba/netdb-defines.patch diff --git a/repo/samba/pidl.patch b/skip/samba/pidl.patch index 60359e5..60359e5 100644 --- a/repo/samba/pidl.patch +++ b/skip/samba/pidl.patch diff --git a/repo/samba/samba-bgqd-include-signal-h.patch b/skip/samba/samba-bgqd-include-signal-h.patch index c066223..c066223 100644 --- a/repo/samba/samba-bgqd-include-signal-h.patch +++ b/skip/samba/samba-bgqd-include-signal-h.patch diff --git a/repo/samba/samba.confd b/skip/samba/samba.confd index 902cb1a..902cb1a 100644 --- a/repo/samba/samba.confd +++ b/skip/samba/samba.confd diff --git a/repo/samba/samba.initd b/skip/samba/samba.initd index 71c7fb2..71c7fb2 100644 --- a/repo/samba/samba.initd +++ b/skip/samba/samba.initd diff --git a/repo/samba/samba.logrotate b/skip/samba/samba.logrotate index 88abb90..88abb90 100644 --- a/repo/samba/samba.logrotate +++ b/skip/samba/samba.logrotate diff --git a/repo/samba/samba.xibuild b/skip/samba/samba.xibuild index f860cb6..6b5354b 100644 --- a/repo/samba/samba.xibuild +++ b/skip/samba/samba.xibuild @@ -3,7 +3,7 @@ NAME="samba" DESC="Tools to access a server's filespace and printers via SMB" -MAKEDEPS="acl bind cups dbus docbook-xsl e2fsprogs fuse gnutls iniparser jansson ldb libarchive libcap libtirpc liburing linux-pam musl-nscd ncurses openldap perl perl-parse-yapp popt python-tdb python-tevent python3 rpcgen subunit talloc tdb tevent zlib python-dnspython python-markdown tdb" +MAKEDEPS="acl bind cups dbus docbook-xsl e2fsprogs fuse gnutls iniparser jansson ldb libarchive libcap libtirpc liburing pam musl-nscd ncurses libldap perl perl-parse-yapp popt python-tdb python-tevent python rpcgen subunit talloc tdb tevent zlib python-dnspython python-markdown tdb" PKG_VER=4.17.0 SOURCE=" @@ -29,6 +29,10 @@ winbind.pre-install winbind.pre-upgrade " +prepare () { + apply_patches +} + build() { local _idmap_modules=idmap_ad,idmap_rid,idmap_adex,idmap_hash,idmap_tdb2 local _pdb_modules=pdb_tdbsam,pdb_ldap,pdb_ads,pdb_smbpasswd,pdb_wbc_sam,pdb_samba4 diff --git a/repo/samba/winbind.post-install b/skip/samba/winbind.post-install index 59abe0f..59abe0f 100644 --- a/repo/samba/winbind.post-install +++ b/skip/samba/winbind.post-install diff --git a/repo/samba/winbind.post-upgrade b/skip/samba/winbind.post-upgrade index 59abe0f..59abe0f 100644 --- a/repo/samba/winbind.post-upgrade +++ b/skip/samba/winbind.post-upgrade diff --git a/repo/samba/winbind.pre-install b/skip/samba/winbind.pre-install index ac4df3f..ac4df3f 100644 --- a/repo/samba/winbind.pre-install +++ b/skip/samba/winbind.pre-install diff --git a/repo/samba/winbind.pre-upgrade b/skip/samba/winbind.pre-upgrade index ac4df3f..ac4df3f 100644 --- a/repo/samba/winbind.pre-upgrade +++ b/skip/samba/winbind.pre-upgrade diff --git a/repo/thunderbird/allow-custom-rust-vendor.patch b/skip/thunderbird/allow-custom-rust-vendor.patch index 218650f..218650f 100644 --- a/repo/thunderbird/allow-custom-rust-vendor.patch +++ b/skip/thunderbird/allow-custom-rust-vendor.patch diff --git a/repo/thunderbird/avoid-redefinition.patch b/skip/thunderbird/avoid-redefinition.patch index af11c50..af11c50 100644 --- a/repo/thunderbird/avoid-redefinition.patch +++ b/skip/thunderbird/avoid-redefinition.patch diff --git a/skip/thunderbird/cbindgen-0.24.patch b/skip/thunderbird/cbindgen-0.24.patch new file mode 100644 index 0000000..3011e8a --- /dev/null +++ b/skip/thunderbird/cbindgen-0.24.patch @@ -0,0 +1,17 @@ +Description: Remove an extra constant definition that is now being generated by newer versions of cbindgen (0.24), and causing build failures because it is defined in several places. +Author: Olivier Tilloy <olivier.tilloy@canonical.com> +Bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1773259 +Forwarded: not-needed + +--- a/gfx/webrender_bindings/webrender_ffi.h ++++ b/gfx/webrender_bindings/webrender_ffi.h +@@ -73,8 +73,6 @@ struct WrPipelineInfo; + struct WrPipelineIdAndEpoch; + using WrPipelineIdEpochs = nsTArray<WrPipelineIdAndEpoch>; + +-const uint64_t ROOT_CLIP_CHAIN = ~0; +- + } // namespace wr + } // namespace mozilla + + diff --git a/repo/thunderbird/disable-moz-stackwalk.patch b/skip/thunderbird/disable-moz-stackwalk.patch index b6bc756..b6bc756 100644 --- a/repo/thunderbird/disable-moz-stackwalk.patch +++ b/skip/thunderbird/disable-moz-stackwalk.patch diff --git a/repo/thunderbird/disable-neon-in-aom.patch b/skip/thunderbird/disable-neon-in-aom.patch index 6df05a1..6df05a1 100644 --- a/repo/thunderbird/disable-neon-in-aom.patch +++ b/skip/thunderbird/disable-neon-in-aom.patch diff --git a/repo/thunderbird/distribution.ini b/skip/thunderbird/distribution.ini index 22cedba..22cedba 100644 --- a/repo/thunderbird/distribution.ini +++ b/skip/thunderbird/distribution.ini diff --git a/repo/thunderbird/fix-fortify-system-wrappers.patch b/skip/thunderbird/fix-fortify-system-wrappers.patch index 17cf7e3..17cf7e3 100644 --- a/repo/thunderbird/fix-fortify-system-wrappers.patch +++ b/skip/thunderbird/fix-fortify-system-wrappers.patch diff --git a/skip/thunderbird/fix-libresolv-path.patch b/skip/thunderbird/fix-libresolv-path.patch new file mode 100644 index 0000000..a164922 --- /dev/null +++ b/skip/thunderbird/fix-libresolv-path.patch @@ -0,0 +1,17 @@ +diff --git a/comm/mail/modules/DNS.jsm b/comm/mail/modules/DNS.jsm +index c63972b6a8..32769c1de6 100644 +--- a/comm/mail/modules/DNS.jsm ++++ b/comm/mail/modules/DNS.jsm +@@ -44,11 +44,7 @@ load_libresolv.prototype = { + } else if (os == "OpenBSD") { + candidates = [{ name: "c", suffix: "" }]; + } else { +- candidates = [ +- { name: "resolv.9", suffix: "" }, +- { name: "resolv", suffix: ".2" }, +- { name: "resolv", suffix: "" }, +- ]; ++ candidates = [{ name: "c", suffix: "" }]; + } + let tried = []; + for (let candidate of candidates) { diff --git a/repo/thunderbird/fix-rust-target.patch b/skip/thunderbird/fix-rust-target.patch index 9342063..9342063 100644 --- a/repo/thunderbird/fix-rust-target.patch +++ b/skip/thunderbird/fix-rust-target.patch diff --git a/repo/thunderbird/fix-tools.patch b/skip/thunderbird/fix-tools.patch index 245d694..245d694 100644 --- a/repo/thunderbird/fix-tools.patch +++ b/skip/thunderbird/fix-tools.patch diff --git a/skip/thunderbird/fix-webrtc-glibcisms.patch b/skip/thunderbird/fix-webrtc-glibcisms.patch new file mode 100644 index 0000000..4f9043b --- /dev/null +++ b/skip/thunderbird/fix-webrtc-glibcisms.patch @@ -0,0 +1,20 @@ +--- a/third_party/libwebrtc/system_wrappers/source/cpu_features_linux.cc ++++ b/third_party/libwebrtc/system_wrappers/source/cpu_features_linux.cc +@@ -18,7 +18,7 @@ + #define WEBRTC_GLIBC_PREREQ(a, b) 0 + #endif + +-#if WEBRTC_GLIBC_PREREQ(2, 16) ++#if !__GLIBC__ || WEBRTC_GLIBC_PREREQ(2, 16) + #include <sys/auxv.h> + #else + #include <errno.h> +@@ -40,7 +40,7 @@ + int architecture = 0; + uint64_t hwcap = 0; + const char* platform = NULL; +-#if WEBRTC_GLIBC_PREREQ(2, 16) ++#if !__GLIBC__ || WEBRTC_GLIBC_PREREQ(2, 16) + hwcap = getauxval(AT_HWCAP); + platform = (const char*)getauxval(AT_PLATFORM); + #else diff --git a/repo/thunderbird/mallinfo.patch b/skip/thunderbird/mallinfo.patch index 7916a20..7916a20 100644 --- a/repo/thunderbird/mallinfo.patch +++ b/skip/thunderbird/mallinfo.patch diff --git a/repo/thunderbird/metainfo.patch b/skip/thunderbird/metainfo.patch index bb9730e..bb9730e 100644 --- a/repo/thunderbird/metainfo.patch +++ b/skip/thunderbird/metainfo.patch diff --git a/skip/thunderbird/psutil.patch b/skip/thunderbird/psutil.patch new file mode 100644 index 0000000..b49e11e --- /dev/null +++ b/skip/thunderbird/psutil.patch @@ -0,0 +1,9 @@ +--- a/python/sites/mach.txt ++++ b/python/sites/mach.txt +@@ -133,5 +133,5 @@ + # Mach gracefully handles the case where `psutil` is unavailable. + # We aren't (yet) able to pin packages in automation, so we have to + # support down to the oldest locally-installed version (5.4.2). +-pypi-optional:psutil>=5.4.2,<=5.8.0:telemetry will be missing some data ++pypi-optional:psutil>=5.4.2,<=5.10.0:telemetry will be missing some data + pypi-optional:zstandard>=0.11.1,<=0.17.0:zstd archives will not be possible to extract diff --git a/repo/thunderbird/sandbox-fork.patch b/skip/thunderbird/sandbox-fork.patch index c7222ab..c7222ab 100644 --- a/repo/thunderbird/sandbox-fork.patch +++ b/skip/thunderbird/sandbox-fork.patch diff --git a/repo/thunderbird/sandbox-largefile.patch b/skip/thunderbird/sandbox-largefile.patch index f1cf28b..f1cf28b 100644 --- a/repo/thunderbird/sandbox-largefile.patch +++ b/skip/thunderbird/sandbox-largefile.patch diff --git a/skip/thunderbird/sandbox-sched_setscheduler.patch b/skip/thunderbird/sandbox-sched_setscheduler.patch new file mode 100644 index 0000000..3163c9e --- /dev/null +++ b/skip/thunderbird/sandbox-sched_setscheduler.patch @@ -0,0 +1,16 @@ +upstream bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1657849 +--- a/security/sandbox/linux/SandboxFilter.cpp ++++ b/security/sandbox/linux/SandboxFilter.cpp +@@ -1694,10 +1694,10 @@ + return Allow(); + case __NR_sched_get_priority_min: + case __NR_sched_get_priority_max: ++ case __NR_sched_setscheduler: + return Allow(); + case __NR_sched_getparam: +- case __NR_sched_getscheduler: +- case __NR_sched_setscheduler: { ++ case __NR_sched_getscheduler: { + Arg<pid_t> pid(0); + return If(pid == 0, Allow()).Else(Trap(SchedTrap, nullptr)); + } diff --git a/repo/thunderbird/stab.h b/skip/thunderbird/stab.h index 6f70af3..6f70af3 100644 --- a/repo/thunderbird/stab.h +++ b/skip/thunderbird/stab.h diff --git a/repo/thunderbird/thunderbird.desktop b/skip/thunderbird/thunderbird.desktop index 210859d..210859d 100644 --- a/repo/thunderbird/thunderbird.desktop +++ b/skip/thunderbird/thunderbird.desktop diff --git a/skip/thunderbird/thunderbird.xibuild b/skip/thunderbird/thunderbird.xibuild new file mode 100644 index 0000000..05b3f5a --- /dev/null +++ b/skip/thunderbird/thunderbird.xibuild @@ -0,0 +1,204 @@ +#!/bin/sh + +NAME="thunderbird" +DESC="Thunderbird email client" + +MAKEDEPS=" alsa-lib automake botan cargo cbindgen llvm libclang clang dbus-glib gettext gtk3 icu json-c libevent libffi libjpeg-turbo libnotify libogg libtheora libtool libvorbis libvpx libwebp libxcomposite libxt llvm m4 mesa nasm nodejs nspr nss pipewire pulseaudio python sed wireless-tools zip" + +PKG_VER=102.6.1 +SOURCE="https://ftp.mozilla.org/pub/thunderbird/releases/$PKG_VER/source/thunderbird-$PKG_VER.source.tar.xz" + +ADDITIONAL=" +allow-custom-rust-vendor.patch +avoid-redefinition.patch +cbindgen-0.24.patch +disable-moz-stackwalk.patch +disable-neon-in-aom.patch +distribution.ini +fix-fortify-system-wrappers.patch +fix-libresolv-path.patch +fix-rust-target.patch +fix-tools.patch +fix-webrtc-glibcisms.patch +mallinfo.patch +metainfo.patch +psutil.patch +sandbox-fork.patch +sandbox-largefile.patch +sandbox-sched_setscheduler.patch +stab.h +thunderbird.desktop +vendor-prefs.js +zstandard.patch +" + +mozappdir=/usr/lib/thunderbird + +_clear_vendor_checksums() { + sed -i 's/\("files":{\)[^}]*/\1/' third_party/rust/$1/.cargo-checksum.json +} + +export CC="gcc" +export CXX="g++" + +export SHELL=/bin/sh +export BUILD_OFFICIAL=1 +export MOZILLA_OFFICIAL=1 +export USE_SHORT_LIBNAME=1 +export MACH_BUILD_PYTHON_NATIVE_PACKAGE_SOURCE=none +export MOZBUILD_STATE_PATH="$srcdir"/mozbuild +# disable desktop notifications +export MOZ_NOSPAM=1 + +# set rpath so linker finds the libs +export LDFLAGS="$LDFLAGS -Wl,-rpath,$_mozappdir" + +# let firefox do this itself. +unset CARGO_PROFILE_RELEASE_OPT_LEVEL +unset CARGO_PROFILE_RELEASE_LTO + +export CFLAGS="$CFLAGS -O2 -fno-plt" +export CXXFLAGS="$CXXFLAGS -O2 -fno-plt" + +prepare() { + + apply_patches + + cp "$BUILD_ROOT"/stab.h toolkit/crashreporter/google-breakpad/src/ + + _clear_vendor_checksums audio_thread_priority + _clear_vendor_checksums packed_simd_2 + _clear_vendor_checksums target-lexicon-0.9.0 + + cat > base-mozconfig <<-EOF + # disable unwanted things + ac_add_options --disable-bootstrap + ac_add_options --disable-cargo-incremental + ac_add_options --disable-crashreporter + ac_add_options --disable-debug + ac_add_options --disable-debug-symbols + ac_add_options --disable-install-strip + ac_add_options --disable-jemalloc + ac_add_options --disable-strip + ac_add_options --disable-tests + ac_add_options --disable-updater + + # features + ac_add_options --enable-alsa + ac_add_options --enable-application=comm/mail + ac_add_options --enable-dbus + ac_add_options --enable-default-toolkit=cairo-gtk3-wayland + ac_add_options --enable-ffmpeg + ac_add_options --enable-hardening + ac_add_options --enable-linker=lld + ac_add_options --enable-necko-wifi + ac_add_options --enable-official-branding + ac_add_options --enable-optimize="$CFLAGS" + ac_add_options --enable-pulseaudio + ac_add_options --enable-release + ac_add_options --enable-update-channel=release + + # system libs + ac_add_options --enable-system-pixman + ac_add_options --with-system-ffi + ac_add_options --with-system-icu + ac_add_options --with-system-jpeg + ac_add_options --with-system-libevent + ac_add_options --with-system-libvpx + ac_add_options --with-system-nspr + ac_add_options --with-system-nss + ac_add_options --with-system-png + ac_add_options --with-system-webp + ac_add_options --with-system-zlib + + # misc + ac_add_options --prefix=/usr + ac_add_options --with-libclang-path=/usr/lib + ac_add_options --with-unsigned-addon-scopes=app,system + ac_add_options --without-wasm-sandboxed-libraries + + # objdir + mk_add_options MOZ_OBJDIR="$BUILD_ROOT/obj" + + ac_add_options --enable-sandbox + ac_add_options --disable-elf-hack + + mk_add_options AUTOCLOBBER=1 + ac_add_options --host=x86_64-unknown-linux-musl + EOF +} + +build() { + cat > .mozconfig base-mozconfig + + export MOZ_BUILD_DATE="$(date ${SOURCE_DATE_EPOCH:+ -d@${SOURCE_DATE_EPOCH}} "+%Y%m%d%H%M%S")" + + # for lto + ulimit -n 4096 + + ./mach build +} + +package() { + + DESTDIR="$PKG_DEST" MOZ_MAKE_FLAGS="$MAKEOPTS" ./mach install + + install -m755 -d "$PKG_DEST"/usr/share/applications + install -m755 -d "$PKG_DEST"/usr/share/pixmaps + + local _png + for _png in "$BUILD_ROOT"/comm/mail/branding/thunderbird/default*.png; do + local i=${_png%.png} + i=${i##*/default} + install -D -m644 "$_png" "$PKG_DEST"/usr/share/icons/hicolor/"$i"x"$i"/apps/thunderbird.png + done + + install -Dm644 "$BUILD_ROOT"/comm/mail/branding/thunderbird/TB-symbolic.svg \ + "$PKG_DEST/usr/share/icons/hicolor/symbolic/apps/thunderbird-symbolic.svg" + install -Dm644 "$BUILD_ROOT"/comm/mail/branding/thunderbird/default48.png \ + $PKG_DEST/usr/share/pixmaps/thunderbird.png + + install -m644 "$BUILD_ROOT"/thunderbird.desktop "$PKG_DEST"/usr/share/applications/thunderbird.desktop + + # Add StartupWMClass=firefox on the .desktop files so Desktop Environments + # correctly associate the window with their icon, the correct fix is to have + # thunderbird sets its own AppID but this will work for the meantime + # See: https://bugzilla.mozilla.org/show_bug.cgi?id=1607399 + echo "StartupWMClass=thunderbird" >> "$PKG_DEST"/usr/share/applications/thunderbird.desktop + + # install our vendor prefs + install -d "$PKG_DEST"/$mozappdir/defaults/preferences + + cat >> "$PKG_DEST"/$mozappdir/defaults/preferences/vendor.js <<- EOF + // Use LANG environment variable to choose locale + pref("intl.locale.requested", ""); + + // Use system-provided dictionaries + pref("spellchecker.dictionary_path", "/usr/share/hunspell"); + + // Disable default mailer checking. + pref("mail.shell.checkDefaultMail", false); + + // Don't disable our bundled extensions in the application directory + pref("extensions.autoDisableScopes", 11); + pref("extensions.shownSelectionUI", true); + EOF + + install -d "$PKG_DEST"/$mozappdir/distribution + + cat >> "$PKG_DEST"/$mozappdir/distribution/distribution.ini <<- EOF + [Global] + id=xilinux + version=1.0 + about=Mozilla Thunderbird for XiLinux + + [Preferences] + app.distributor=xilinux + app.distributor.channel=thunderbird + EOF + + # Replace duplicate binary with wrapper + # https://bugzilla.mozilla.org/show_bug.cgi?id=658850 + ln -sf thunderbird "$PKG_DEST/$mozappdir/thunderbird-bin" +} + diff --git a/repo/thunderbird/vendor-prefs.js b/skip/thunderbird/vendor-prefs.js index 5aeeb1b..5aeeb1b 100644 --- a/repo/thunderbird/vendor-prefs.js +++ b/skip/thunderbird/vendor-prefs.js diff --git a/skip/thunderbird/zstandard.patch b/skip/thunderbird/zstandard.patch new file mode 100644 index 0000000..e6b7811 --- /dev/null +++ b/skip/thunderbird/zstandard.patch @@ -0,0 +1,8 @@ +--- a/python/sites/mach.txt ++++ b/python/sites/mach.txt +@@ -134,4 +134,4 @@ + # We aren't (yet) able to pin packages in automation, so we have to + # support down to the oldest locally-installed version (5.4.2). + pypi-optional:psutil>=5.4.2,<=5.10.0:telemetry will be missing some data +-pypi-optional:zstandard>=0.11.1,<=0.17.0:zstd archives will not be possible to extract ++pypi-optional:zstandard>=0.11.1,<=0.18.0:zstd archives will not be possible to extract diff --git a/repo/webkit2gtk/webkit2gtk.xibuild b/skip/webkit2gtk/webkit2gtk.xibuild index 2d1667e..2d1667e 100644 --- a/repo/webkit2gtk/webkit2gtk.xibuild +++ b/skip/webkit2gtk/webkit2gtk.xibuild diff --git a/repo/wine/rpath.patch b/skip/wine/rpath.patch index 68b2558..68b2558 100644 --- a/repo/wine/rpath.patch +++ b/skip/wine/rpath.patch diff --git a/repo/wine/wine.xibuild b/skip/wine/wine.xibuild index 88c16ef..20ce9f4 100644 --- a/repo/wine/wine.xibuild +++ b/skip/wine/wine.xibuild @@ -3,7 +3,7 @@ NAME="wine" DESC="A compatibility layer for running Windows programs" -MAKEDEPS=" alsa-lib autoconf automake bison cups dbus flex fontconfig freetype giflib gnutls gstreamer gst-plugins-base krb5 libgphoto2 libpcap libusb libxcomposite libxcursor libxdamage libxi libxinerama libxrandr libxrender mesa mingw-w64-gcc mpg123 ncurses openal-soft opencl sane sdl2 udisks2 v4l-utils vkd3d vulkan-loader" +MAKEDEPS=" alsa-lib autoconf automake bison cups dbus flex fontconfig freetype2 giflib gnutls gstreamer gst-plugins-base krb5 libgphoto2 libpcap libusb libxcomposite libxcursor libxdamage libxi libxinerama libxrandr libxrender mesa mingw-w64-gcc mpg123 ncurses openal-soft opencl sane sdl2 udisks2 v4l-utils vkd3d vulkan-loader" PKG_VER=7.18 SOURCE="https://dl.winehq.org/wine/source/7.x/wine-$PKG_VER.tar.xz" |