diff --git a/.editorconfig b/.editorconfig new file mode 100644 index 0000000..1d8a5be --- /dev/null +++ b/.editorconfig @@ -0,0 +1,8 @@ +root = true +[*] +insert_final_newline = true +trim_trailing_whitespace = true + +[*.{c,h,sh}] +indent_style = tab +tab_width = 4 diff --git a/INSTALL.md b/INSTALL.md new file mode 100644 index 0000000..a260c10 --- /dev/null +++ b/INSTALL.md @@ -0,0 +1,70 @@ +# Iglunix Installation Guide + +## Getting an installation image +There are two ways of getting hold of an install image: From the releases tab on +GitHub and with [iglunix-autobuild](https://github.com/iglunix/iglunix-autobuild). + +### Using Autobuild +``` +git clone https://github.com/iglunix/iglunix-autobuild +cd iglunix-autobuild +./autobuild.sh +./chroot.sh +./img.sh +``` + +### Writing the image +Write the image to a USB to boot on the target computer. +Make sure to triple check which disk you're writing to. +``` +dd if=build/iglunix.img of=/dev/sdX bs=64M +``` + +## Disk Partitioning +Iglunix recommends a two partition layout with an MBR partition table, a FAT +formatted boot partition and an EXT4 formated root partition. The following +is a guide on how to do it where `/dev/disk` is the target install disk. +``` +fdisk /dev/disk +>o +>n +>p +>1 +>2048 +>+512M +>t +>ef +>n +>p +>2 +> +> +>w + +mkfs.vfat -n BOOT /dev/disk1 +mkfs.ext4 -L ROOT /dev/disk2 +mkdir /install_root +mount /dev/disk2 /install_root +mkdir /install_root/boot +mount /dev/disk1 /install_root/boot +``` + +## Extracting Packages +For any packages you want to install +``` +tar -I zstd -xf /mnt/..tar.zst -C /install_root +``` + +## The init system +Use https://github.com/iglunix/iglunix/tree/main/init not https://github.com/iglunix/init + +## Installing Bootloaders + +``` +limine-deploy /dev/disk +cp /usr/share/limine/limine.sys /install_root/boot +# If the oslo package wasn't installed earlier and you want UEFI support +cp /usr/share/limine/BOOTX64.EFI /install_root/boot/efi/boot/bootx64.efi +``` +Edit `/install_root/boot/efi/oslo/entries.ini` and `/install_root/boot/limine.cfg` +accordingly diff --git a/README.md b/README.md index 8a61608..eaf52ce 100644 --- a/README.md +++ b/README.md @@ -3,12 +3,24 @@ Unix like software distribution with no GNU components All build scripts are 0BSD Licensed. - To create an ISO from a non-iglunix OS please see https://github.com/iglunix/iglunix-autobuild +## Is this GNU/Linux +No, GNU currently contributes roughly 10 MiB of code in the base system whilst, +LLVM and Linux both contribute approximately 1 GiB each. Instead we suggest that +one should refer to Igluinx running on the Linux kernel as LLVM/Musl/Linux. +LLVM and Linux because they are the two largest packages and make up the +majority of the base system, and Musl to be explicit about the C library, +target triple and to differentiate it from any system using LLVM's libc +(which will may very well likely use in the future). + +## Instalation +See [INSTALL.md](INSTALL.md) + ## Discord Join us at [link](https://discord.gg/NKB9qD2bMx) + ## Web Browsers -Iglunix doesn't currently have any working web browsers yet however we do have -a WIP WebKit port (WPM or WebKit Platform for Minimal systems). Currently -WebKit builds with all our work and we're currently working on exposing an API -to use it. JavaScriptCore API works perfectly and example programs run with no -issue. +Iglunix has Firefox ESR packaged requiring 2 extra GNU packages: `gm4` and +`autoconf`. Iglunix may switch to using a patched version of webkit gtk with +openssl and maybe ffmpeg replacing gstreamer. -## TODO - - Wayland Compositors - Velox works fine for now - - LLVM (Work out how to split packages) - - Init system (currently we're just leaving this up to the user) - - QEMU for multiarch (need lots of work on glibr to get this to build) +## Replacements LUT + +|standard tool | iglunix tool | use | +|--------------|--------------------|----------------------------------| +|glibc | musl | libc | +|glibc | libexecinfo | Backtrace functions | +|libstdc++ | libc++ | C++ standard library | +|libgcc | libunwind | Stack unwinding | +|libgcc | compiler-rt | Compiler builtins | +|bison | byacc | POSIX yacc | +|coreutils | toybox+busybox | POSIX utilities | +|gcc | clang | C++ compiler | +|zlib | zlib-ng | Compression library | +|gmake | bmake, others | POSIX Make implementation | +|ninja | samurai | Ninja build implementation | +|GNU M4 | OpenBSD M4 | POSIX M4 implementation | +|ncurses | netbsd-curses | X/Open Curses implementation | +|bash | mksh | Shell | +|Linux PAM | Open PAM | Pluggable Authentication Modules | +|sudo | doas | Privilege escalation | +|pkg-config | pkgconf | Package configuration tool | +|e2fsprogs | make_ext4fs | Make an ext4 file system | diff --git a/bad/README.md b/bad/README.md new file mode 100644 index 0000000..7412a30 --- /dev/null +++ b/bad/README.md @@ -0,0 +1,7 @@ +# Bad Packages +Bad packages are packages included that we want +to remove our dependency on. All of these packages +should eventually be removed. + + - `autoconf` is required for building `firefox` + - `gmake` is required for building a number of packages diff --git a/bad/autoconf/autoconf.sh.patch b/bad/autoconf/autoconf.sh.patch new file mode 100644 index 0000000..6be3138 --- /dev/null +++ b/bad/autoconf/autoconf.sh.patch @@ -0,0 +1,23 @@ +--- a/autoconf.sh ++++ b/autoconf.sh +@@ -115,13 +115,14 @@ + # Use the frozen version of Autoconf if available. + r= f= + # Some non-GNU m4's don't reject the --help option, so give them /dev/null. +-case `$M4 --help < /dev/null 2>&1` in +-*reload-state*) test -r $AC_MACRODIR/autoconf.m4f && { r=--reload f=f; } ;; +-*traditional*) ;; +-*) echo Autoconf requires GNU m4 1.1 or later >&2; rm -f $tmpin; exit 1 ;; +-esac ++# case `$M4 --help < /dev/null 2>&1` in ++# *reload-state*) test -r $AC_MACRODIR/autoconf.m4f && { r=--reload f=f; } ;; ++# *traditional*) ;; ++# *) echo Autoconf requires GNU m4 1.1 or later >&2; rm -f $tmpin; exit 1 ;; ++# esac + +-$M4 -I$AC_MACRODIR $use_localdir $r autoconf.m4$f $infile > $tmpout || ++# $M4 -I$AC_MACRODIR $use_localdir $r autoconf.m4$f $infile > $tmpout || ++$M4 -g -D__GNU__ -I$AC_MACRODIR $use_localdir autoconf.m4 $infile -> $tmpout || + { rm -f $tmpin $tmpout; exit 2; } + + # You could add your own prefixes to pattern if you wanted to check for diff --git a/bad/autoconf/autoheader.sh.patch b/bad/autoconf/autoheader.sh.patch new file mode 100644 index 0000000..599293a --- /dev/null +++ b/bad/autoconf/autoheader.sh.patch @@ -0,0 +1,11 @@ +--- autoconf-2.13/autoheader.sh ++++ old/autoheader.sh +@@ -122,7 +122,7 @@ + # Extract assignments of SYMS, TYPES, FUNCS, HEADERS, and LIBS from the + # modified autoconf processing of the input file. The sed hair is + # necessary to win for multi-line macro invocations. +-eval "`$M4 -I$AC_MACRODIR $use_localdir $r autoheader.m4$f $infile | ++eval "`$M4 -g -D__gnu__ -I$AC_MACRODIR $use_localdir autoheader.m4 $infile | + sed -n -e ' + : again + /^@@@.*@@@$/s/^@@@\(.*\)@@@$/\1/p diff --git a/bad/autoconf/build.sh b/bad/autoconf/build.sh new file mode 100644 index 0000000..a9a60ef --- /dev/null +++ b/bad/autoconf/build.sh @@ -0,0 +1,31 @@ +pkgname=autoconf +pkgver=2.13 + +fetch() { + curl "https://ftp.gnu.org/gnu/autoconf/autoconf-$pkgver.tar.gz" -o $pkgname-$pkgver.tar.gz + tar -xf $pkgname-$pkgver.tar.gz + cd $pkgname-$pkgver + patch -p1 < ../../makefile-m4f.patch + patch -p1 < ../../autoconf.sh.patch + patch -p1 < ../../autoheader.sh.patch +} + +build() { + cd $pkgname-$pkgver + ./configure \ + --prefix=/usr/bad/autoconf/ \ + --build=$TRIPLE \ + --host=$TRIPLE + + make +} + +package() { + cd $pkgname-$pkgver + make install DESTDIR=$pkgdir +} + +license() { + cd $pkgname-$pkgver + cat COPYING +} diff --git a/bad/autoconf/makefile-m4f.patch b/bad/autoconf/makefile-m4f.patch new file mode 100644 index 0000000..1de0172 --- /dev/null +++ b/bad/autoconf/makefile-m4f.patch @@ -0,0 +1,70 @@ +--- src/autoconf-2.13/Makefile.in ++++ Makefile.in +@@ -33,8 +33,8 @@ + # Programs that are ALWAYS installed (and are created in the build dir). + ASCRIPTS = autoconf autoheader autoreconf autoupdate ifnames + +-# M4 input that is frozen. +-M4FROZEN = autoconf.m4f autoheader.m4f ++# Don't freeze anything with OpenBSD m4 ++M4FROZEN = + + # All programs, including those only installed if you have perl. + SCRIPTS = $(ASCRIPTS) @SCRIPTS@ +--- a/Makefile.in ++++ b/Makefile.in +@@ -137,23 +137,23 @@ + cd testsuite && ${MAKE} AUTOCONF=${bindir}/autoconf $@ + + installdirs: +- $(SHELL) ${srcdir}/mkinstalldirs $(bindir) $(infodir) $(acdatadir) ++ $(SHELL) ${srcdir}/mkinstalldirs $(DESTDIR)/$(bindir) $(DESTDIR)/$(acdatadir) + + install: all $(M4FILES) acconfig.h installdirs install-info + for p in $(ASCRIPTS); do \ +- $(INSTALL_PROGRAM) $$p $(bindir)/`echo $$p|sed '$(transform)'`; \ ++ $(INSTALL_PROGRAM) $$p $(DESTDIR)/$(bindir)/`echo $$p|sed '$(transform)'`; \ + done + for i in $(M4FROZEN); do \ +- $(INSTALL_DATA) $$i $(acdatadir)/$$i; \ ++ $(INSTALL_DATA) $$i $(DESTDIR)/$(acdatadir)/$$i; \ + done + for i in $(M4FILES) acconfig.h; do \ +- $(INSTALL_DATA) $(srcdir)/$$i $(acdatadir)/$$i; \ ++ $(INSTALL_DATA) $(srcdir)/$$i $(DESTDIR)/$(acdatadir)/$$i; \ + done + -if test -f autoscan; then \ +- $(INSTALL_PROGRAM) autoscan $(bindir)/`echo autoscan|sed '$(transform)'`; \ ++ $(INSTALL_PROGRAM) autoscan $(DESTDIR)/$(bindir)/`echo autoscan|sed '$(transform)'`; \ + for i in acfunctions acheaders acidentifiers acprograms \ + acmakevars; do \ +- $(INSTALL_DATA) $(srcdir)/$$i $(acdatadir)/$$i; \ ++ $(INSTALL_DATA) $(srcdir)/$$i $(DESTDIR)/$(acdatadir)/$$i; \ + done; \ + else :; fi + +@@ -161,11 +161,11 @@ + install-info: info installdirs + if test -f autoconf.info; then \ + for i in *.info*; do \ +- $(INSTALL_DATA) $$i $(infodir)/$$i; \ ++ $(INSTALL_DATA) $$i $(DESTDIR)/$(infodir)/$$i; \ + done; \ + else \ + for i in $(srcdir)/*.info*; do \ +- $(INSTALL_DATA) $$i $(infodir)/`echo $$i | sed 's|^$(srcdir)/||'`; \ ++ $(INSTALL_DATA) $$i $(DESTDIR)/$(infodir)/`echo $$i | sed 's|^$(srcdir)/||'`; \ + done; \ + fi + +--- a/Makefile.in ++++ b/Makefile.in +@@ -139,7 +139,7 @@ + installdirs: + $(SHELL) ${srcdir}/mkinstalldirs $(DESTDIR)/$(bindir) $(DESTDIR)/$(infodir) $(DESTDIR)/$(acdatadir) + +-install: all $(M4FILES) acconfig.h installdirs install-info ++install: all $(M4FILES) acconfig.h installdirs + for p in $(ASCRIPTS); do \ + $(INSTALL_PROGRAM) $$p $(DESTDIR)/$(bindir)/`echo $$p|sed '$(transform)'`; \ + done diff --git a/bad/bad/build.sh b/bad/bad/build.sh new file mode 100644 index 0000000..7a64565 --- /dev/null +++ b/bad/bad/build.sh @@ -0,0 +1,28 @@ +pkgname=bad +pkgver=main + +fetch() { + curl -L "https://github.com/iglunix/bad/archive/refs/heads/main.tar.gz" -o $pkgname-$pkgver.tar.gz + tar -xf $pkgname-$pkgver.tar.gz +} + +build() { + cd $pkgname-$pkgver + [ -z "$WITH_CROSS" ] || export CFLAGS="$CFLAGS --target=$TRIPLE --sysroot=$WITH_CROSS_DIR" + make +} + +package() { + cd $pkgname-$pkgver + make install DESTDIR=$pkgdir PREFIX=/usr +} + +license() { + cd $pkgname-$pkgver + cat LICENSE +# cat COPYING +} + +backup() { + return +} diff --git a/bad/gm4/build.sh b/bad/gm4/build.sh new file mode 100644 index 0000000..ca90051 --- /dev/null +++ b/bad/gm4/build.sh @@ -0,0 +1,31 @@ +pkgname=gm4 +pkgver=1.4.19 + +fetch() { + curl "http://ftp.gnu.org/pub/gnu/m4/m4-$pkgver.tar.xz" -o $pkgname-$pkgver.tar.xz + tar -xf $pkgname-$pkgver.tar.xz + mv m4-$pkgver gm4-$pkgver +} + +build() { + cd $pkgname-$pkgver + ./configure \ + --prefix=/usr \ + --build=$TRIPLE \ + --program-prefix=g \ + --host=$TRIPLE \ + --disable-nls + + make +} + +package() { + cd $pkgname-$pkgver + make install DESTDIR=$pkgdir +} + +license() { + cd $pkgname-$pkgver + cat LICENSE +# cat COPYING +} diff --git a/bad/gmake/build.sh b/bad/gmake/build.sh new file mode 100644 index 0000000..eb9ab3c --- /dev/null +++ b/bad/gmake/build.sh @@ -0,0 +1,54 @@ +pkgver=4.3 +pkgname=gmake +pkgrel=1 +deps="musl" +bad="gmake" +ext="doc:dev" +auto_cross + +fetch() { + curl "https://ftp.gnu.org/gnu/make/make-$pkgver.tar.gz" -o $pkgname-$pkgver.tar.gz + tar -xf $pkgname-$pkgver.tar.gz + mv make-$pkgver $pkgname-$pkgver +} + +build() { + cd $pkgname-$pkgver + ./configure \ + --prefix=/usr/bad/gmake \ + --program-prefix=g \ + --disable-nls \ + --build=$HOST_TRIPLE \ + --host=$TRIPLE + make +} + +package() { + cd $pkgname-$pkgver + make install DESTDIR=$pkgdir + rm -r $pkgdir/usr/bad/gmake/share + rm -r $pkgdir/usr/bad/gmake/include +} + +package_doc() { + cd $pkgname-$pkgver + make install DESDIR=$pkgdir + rm -r $pkgdir/usr/bad/gmake/bin + rm -r $pkgdir/usr/bad/gmake/share/info + rm -r $pkgdir/usr/bad/gmake/include +} +package_dev() { + cd $pkgname-$pkgver + make install DESTDIR=$pkgdir + rm -r $pkgdir/usr/bad/gmake/bin + rm -r $pkgdir/usr/bad/gmake/share +} + +license() { + cd $pkgname-$pkgver + cat COPYING +} + +backup() { + return +} diff --git a/base/README.md b/base/README.md new file mode 100644 index 0000000..5561118 --- /dev/null +++ b/base/README.md @@ -0,0 +1,3 @@ +# Base Packages +These packages make up the base Iglunix system and are +included in all kernels diff --git a/pkgs/bmake/build.sh b/base/bmake/build.sh similarity index 54% rename from pkgs/bmake/build.sh rename to base/bmake/build.sh index 6106ab9..0b393a5 100644 --- a/pkgs/bmake/build.sh +++ b/base/bmake/build.sh @@ -1,7 +1,8 @@ -pkgver=20210420 +pkgver=20220303 pkgname=bmake -bad="musl" -ext="doc" +mkdeps="" +deps="" +auto_cross fetch() { curl http://www.crufty.net/ftp/pub/sjg/bmake-$pkgver.tar.gz -o $pkgname-$pkgver.tar.gz @@ -14,20 +15,20 @@ fetch() { build() { cd $pkgname-$pkgver - ./configure --prefix=/usr --with-default-sys-path=/usr/share/mk - sh ./make-bootstrap.sh + ./configure --prefix=/usr --with-default-sys-path=/usr/share/mk --build=$HOST_TRIPLE --host=$ARCH-linux-musl --with-machine-arch=$ARCH + MANTARGET=man sh ./make-bootstrap.sh } package() { cd $pkgname-$pkgver - ./bmake -m ./mk install DESTDIR=$pkgdir - ln -sr $pkgdir/usr/bin/bmake $pkgdir/usr/bin/make - rm -r $pkgdir/usr/share/man + bmake -m ./mk install -f Makefile DESTDIR=$pkgdir MANTARGET=man prefix=/usr/ BINDIR=/usr/bin + ln -s bmake $pkgdir/usr/bin/make + rm -rf $pkgdir/usr/share/man/cat1 + install -Dm644 ./bmake.1 $pkgdir/usr/share/man/man1 } -package_doc() { - cd $pkgname-$pkgver - install -Dm644 ./bmake.1 $pkgdir/usr/share/man/man1/bmake.1 +backup() { + return } license() { diff --git a/pkgs/bmake/install.patch b/base/bmake/install.patch similarity index 100% rename from pkgs/bmake/install.patch rename to base/bmake/install.patch diff --git a/base/bmake/no-test.patch b/base/bmake/no-test.patch new file mode 100644 index 0000000..afbf474 --- /dev/null +++ b/base/bmake/no-test.patch @@ -0,0 +1,11 @@ +--- a/boot-strap ++++ b/boot-strap +@@ -420,7 +420,7 @@ + + op_test() { + [ -x bmake ] || op_build +- Bmake test "$@" || exit 1 ++ #Bmake test "$@" || exit 1 + } + + op_clean() { diff --git a/pkgs/byacc/build.sh b/base/byacc/build.sh similarity index 58% rename from pkgs/byacc/build.sh rename to base/byacc/build.sh index ea637da..fe75624 100644 --- a/pkgs/byacc/build.sh +++ b/base/byacc/build.sh @@ -1,12 +1,13 @@ -pkgver=20210328 +pkgver=20220128 pkgname=byacc deps="musl" +mkdeps="bmake" bad="" -ext="doc" +auto_cross fetch() { - curl https://invisible-island.net/datafiles/release/byacc.tar.gz -o $pkgname-$pkgver.tar.gz - tar -xf $pkgname-$pkgver.tar.gz + curl "ftp://ftp.invisible-island.net/byacc/byacc-$pkgver.tgz" -O + tar -xf $pkgname-$pkgver.tgz # Merged upstream; Don't need # cp ../reader-mesa.patch . } @@ -16,7 +17,9 @@ build() { ./configure \ --prefix=/usr \ --program-prefix=b \ - --enable-btyacc + --enable-btyacc \ + --build=$HOST_TRIPLE \ + --host=$TRIPLE # patch -p1 < ../reader-mesa.patch make } @@ -25,13 +28,10 @@ package() { cd $pkgname-$pkgver make install DESTDIR=$pkgdir ln -sr $pkgdir/usr/bin/byacc $pkgdir/usr/bin/yacc - rm -r $pkgdir/usr/share } -package_doc() { - cd $pkgname-$pkgver - make install DESTDIR=$pkgdir - rm -r $pkgdir/usr/bin +backup() { + return } license() { diff --git a/pkgs/byacc/reader-mesa.patch b/base/byacc/reader-mesa.patch similarity index 100% rename from pkgs/byacc/reader-mesa.patch rename to base/byacc/reader-mesa.patch diff --git a/base/cmake/build.sh b/base/cmake/build.sh new file mode 100644 index 0000000..1fd5001 --- /dev/null +++ b/base/cmake/build.sh @@ -0,0 +1,59 @@ +pkgver=3.23.1 +pkgname=cmake +pkgrel=1 +mkdeps="samurai" +deps="" +bad="" +ext="" + +fetch() { + curl "https://cmake.org/files/v3.23/cmake-$pkgver.tar.gz" -o $pkgname-$pkgver.tar.gz + tar -xf $pkgname-$pkgver.tar.gz +} + +build() { + cd $pkgname-$pkgver + if [ -z "$WITH_CROSS" ]; then + ./bootstrap \ + --prefix=/usr \ + --mandir=/share/man \ + --datadir=/share/$pkgname \ + --docdir=/share/doc/$pkgname \ + --generator=Ninja \ + --no-system-libs + else + mkdir -p build + cd build + cmake -G Ninja .. \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DCMAKE_SYSTEM_NAME=Linux \ + -DCMAKE_SYSROOT=$WITH_CROSS_DIR \ + -DCMAKE_C_COMPILER_TARGET=$TRIPLE \ + -DCMAKE_CXX_COMPILER_TARGET=$TRIPLE \ + -DCMAKE_ASM_COMPILER_TARGET=$TRIPLE \ + -DHAVE_POLL_FINE_EXITCODE=OFF \ + -DHAVE_POLL_FINE_EXITCODE__TRYRUN_OUTPUT=OFF \ + -DCMAKE_PREFIX_PATH=$WITH_CROSS_DIR \ + -DBUILD_CursesDialog=OFF + fi + + samu +} + +package() { + cd $pkgname-$pkgver + if [ ! -z "$WITH_CROSS" ]; then + cd build + fi + DESTDIR=$pkgdir samu install + +} + +backup() { + return +} + +license() { + cd $pkgname-$pkgver + cat Copyright.txt +} diff --git a/base/compiler-rt/build.sh b/base/compiler-rt/build.sh new file mode 100644 index 0000000..e0299eb --- /dev/null +++ b/base/compiler-rt/build.sh @@ -0,0 +1,71 @@ +pkgname=compiler-rt +pkgver=14.0.1 +deps=linux + +fetch() { + curl -L "https://github.com/llvm/llvm-project/releases/download/llvmorg-$pkgver/compiler-rt-$pkgver.src.tar.xz" -o $pkgname-$pkgver.tar.xz + # for c++ headers + # curl -L "https://github.com/llvm/llvm-project/releases/download/llvmorg-$pkgver/libcxx-$pkgver.src.tar.xz" -o libcxx-$pkgver.tar.xz + # musl required for C headers + curl -O "http://musl.libc.org/releases/musl-1.2.2.tar.gz" + tar -xf $pkgname-$pkgver.tar.xz + mv $pkgname-$pkgver.src $pkgname-$pkgver + # tar -xf libcxx-$pkgver.tar.xz + # mv libcxx-$pkgver.src libcxx-$pkgver + # cp ../__config_site libcxx-$pkgver/include + mkdir $pkgname-$pkgver/build + tar -xf musl-1.2.2.tar.gz + cd musl-1.2.2 + CFLAGS="--sysroot=/usr/$ARCH-linux-musl --target=$TRIPLE" ./configure --prefix=$(pwd)/../libc --target=$TRIPLE + bad --gmake gmake install-headers +} + + +build() { + cd $pkgname-$pkgver + cd build + cmake -G Ninja ../ \ + -DCMAKE_BUILD_TYPE=Release \ + -DCMAKE_INSTALL_PREFIX=/usr/lib/clang/$pkgver/ \ + -DCMAKE_INSTALL_LIBDIR=lib \ + -DCMAKE_C_COMPILER_TARGET=$TRIPLE \ + -DCMAKE_CXX_COMPILER_TARGET=$TRIPLE \ + -DCMAKE_ASM_COMPILER_TARGET=$TRIPLE \ + -DCMAKE_C_COMPILER_WORKS=ON \ + -DCMAKE_CXX_COMPILER_WORKS=ON \ + -DCMAKE_SYSROOT=/usr/$ARCH-linux-musl \ + -DCMAKE_C_FLAGS_INIT="-I $(pwd)/../../libc/include " \ + -DCMAKE_C_FLAGS="-I $(pwd)/../../libc/include" \ + -DCMAKE_CXX_FLAGS_INIT="-I $(pwd)/../../libc/include" \ + -DCMAKE_CXX_FLAGS="-I $(pwd)/../../libc/include" \ + -DCOMPILER_RT_USE_BUILTINS_LIBRARY=OFF \ + -DCOMPILER_RT_DEFAULT_TARGET_ONLY=OFF \ + -DCOMPILER_RT_INCLUDE_TESTS=OFF \ + -DCOMPILER_RT_BUILD_SANITIZERS=OFF \ + -DCOMPILER_RT_BUILD_XRAY=OFF \ + -DCOMPILER_RT_BUILD_MEMPROF=OFF \ + -DCOMPILER_RT_BUILD_ORC=OFF \ + -DCOMPILER_RT_INCLUDE_TESTS=OFF \ + -DCOMPILER_RT_BUILD_LIBFUZZER=OFF \ + -DCOMPILER_RT_DEFAULT_TARGET_ONLY=ON \ + -DCOMPILER_RT_BUILD_PROFILE=OFF \ + -DCAN_TARGET_$ARCH=ON \ + -DCMAKE_SIZEOF_VOID_P=8 + + samu +} + +package() { + cd $pkgname-$pkgver + cd build + DESTDIR=$pkgdir samu install +} + +backup() { + return +} + +license() { + cd $pkgname-$pkgver + cat LICENSE.TXT +} diff --git a/base/curl/build.sh b/base/curl/build.sh new file mode 100644 index 0000000..1a1e6e7 --- /dev/null +++ b/base/curl/build.sh @@ -0,0 +1,36 @@ +pkgver=7.81.0 +pkg_ver=$(echo $pkgver | tr '.' '_') +pkgname=curl +pkgrel=1 +mkdeps="" +deps="openssl" +bad="" +auto_cross + +fetch() { + curl -L "https://github.com/curl/curl/releases/download/curl-$pkg_ver/curl-$pkgver.tar.xz" -o $pkgname-$pkgver.tar.gz + tar -xf $pkgname-$pkgver.tar.gz +} + +build() { + cd $pkgname-$pkgver + ./configure --prefix=/usr \ + --build=$HOST_TRIPLE \ + --host=$TRIPLE \ + --with-openssl + make +} + +package() { + cd $pkgname-$pkgver + make DESTDIR=$pkgdir install +} + +backup() { + return +} + +license() { + cd $pkgname-$pkgver + cat COPYING +} diff --git a/pkgs/doas/build.ninja b/base/doas/build.ninja similarity index 100% rename from pkgs/doas/build.ninja rename to base/doas/build.ninja diff --git a/pkgs/doas/build.sh b/base/doas/build.sh similarity index 50% rename from pkgs/doas/build.sh rename to base/doas/build.sh index d8aa530..77a35ca 100644 --- a/pkgs/doas/build.sh +++ b/base/doas/build.sh @@ -3,9 +3,10 @@ pkgname=doas pkgrel=1 bad="gmake" ext="doc" +auto_cross fetch() { - curl -L "https://github.com/Duncaen/OpenDoas/releases/download/v6.8/opendoas-$pkgver.tar.xz" -o $pkgname-$pkgver.tar.xz + curl -L "https://github.com/Duncaen/OpenDoas/releases/download/v$pkgver/opendoas-$pkgver.tar.xz" -o $pkgname-$pkgver.tar.xz tar -xf $pkgname-$pkgver.tar.xz mv opendoas-$pkgver $pkgname-$pkgver cp ../build.ninja $pkgname-$pkgver @@ -13,26 +14,23 @@ fetch() { build() { cd $pkgname-$pkgver - ./configure --prefix=/usr - gmake + ./configure --prefix=/usr \ + --without-pam + bad --gmake gmake } package() { cd $pkgname-$pkgver install -d $pkgdir/usr/bin - install -Dm4755 doas $pkgdir/usr/bin -} - -package_doc() { - cd $pkgname-$pkgver - install -d $pkgdir/usr/share/man/ - install -d $pkgdir/usr/share/man/man1 - install -d $pkgdir/usr/share/man/man5 - install -Dm644 doas.1 $pkgdir/usr/share/man/man1 - install -Dm644 doas.conf.5 $pkgdir/usr/share/man/man5 + install -Dm755 doas $pkgdir/usr/bin + chmod u+s $pkgdir/usr/bin/doas } license() { cd $pkgname-$pkgver cat LICENSE } + +backup() { + return +} diff --git a/pkgs/expat/build.sh b/base/expat/build.sh similarity index 57% rename from pkgs/expat/build.sh rename to base/expat/build.sh index ab76860..4225483 100644 --- a/pkgs/expat/build.sh +++ b/base/expat/build.sh @@ -1,7 +1,10 @@ pkgver=2.2.10 pkgname=expat bad="" +mkdeps="bmake" +deps="" ext="dev" +auto_cross fetch() { pkgver_r=$(echo $pkgver | tr '.' '_') @@ -12,30 +15,22 @@ fetch() { build() { cd $pkgname-$pkgver ./configure \ - --prefix=/usr + --prefix=/usr \ + --build=$HOST_TRIPLE \ + --host=$TRIPLE make } package() { cd $pkgname-$pkgver make install DESTDIR=$pkgdir - rm $pkgdir/usr/lib/*.a - rm $pkgdir/usr/lib/*.la - rm -r $pkgdir/usr/include - rm -r $pkgdir/usr/lib/pkgconfig - rm -r $pkgdir/usr/share -} - -package_dev() { - cd $pkgname-$pkgver - make install DESTDIR=$pkgdir - rm -r $pkgdir/usr/bin - rm -r $pkgdir/usr/share - rm $pkgdir/usr/lib/*.so - rm $pkgdir/usr/lib/*.so.* } license() { cd $pkgname-$pkgver cat COPYING } + +backup() { + return +} diff --git a/base/fakeroot/build.sh b/base/fakeroot/build.sh new file mode 100644 index 0000000..efaeb56 --- /dev/null +++ b/base/fakeroot/build.sh @@ -0,0 +1,30 @@ +pkgname=fakeroot +pkgver=1.26 + +fetch() { + curl "https://deb.debian.org/debian/pool/main/f/fakeroot/fakeroot_$pkgver.orig.tar.gz" -o $pkgname-$pkgver.tar.xz + tar -xf $pkgname-$pkgver.tar.xz + patch -p1 < ../../no64.patch + patch -p1 < ../../stdint.patch +} + +build() { + cd $pkgname-$pkgver + ./configure \ + --prefix=/usr \ + --build=$TRIPLE \ + --host=$TRIPLE + + bad --gmake gmake +} + +package() { + cd $pkgname-$pkgver + bad --gmake gmake install DESTDIR=$pkgdir +} + +license() { + cd $pkgname-$pkgver + cat LICENSE +# cat COPYING +} diff --git a/base/fakeroot/no64.patch b/base/fakeroot/no64.patch new file mode 100644 index 0000000..ff95f96 --- /dev/null +++ b/base/fakeroot/no64.patch @@ -0,0 +1,17 @@ +--- a/libfakeroot.c ++++ b/libfakeroot.c +@@ -81,12 +81,14 @@ + #define SEND_STAT64(a,b,c) send_stat64(a,b,c) + #define SEND_GET_STAT(a,b) send_get_stat(a,b) + #define SEND_GET_STAT64(a,b) send_get_stat64(a,b) ++#define SEND_GET_XATTR(a,b,c) send_get_xattr(a,b,c) + #define SEND_GET_XATTR64(a,b,c) send_get_xattr64(a,b,c) + #else + #define SEND_STAT(a,b,c) send_stat(a,b) + #define SEND_STAT64(a,b,c) send_stat64(a,b) + #define SEND_GET_STAT(a,b) send_get_stat(a) + #define SEND_GET_STAT64(a,b) send_get_stat64(a) ++#define SEND_GET_XATTR(a,b,c) send_get_xattr(a,b) + #define SEND_GET_XATTR64(a,b,c) send_get_xattr64(a,b) + #endif + diff --git a/base/fakeroot/stdint.patch b/base/fakeroot/stdint.patch new file mode 100644 index 0000000..efe227d --- /dev/null +++ b/base/fakeroot/stdint.patch @@ -0,0 +1,34 @@ +--- a/faked.c ++++ b/faked.c +@@ -514,11 +514,11 @@ + + #ifdef FAKEROOT_DB_PATH + if (find_path(i->buf.dev, i->buf.ino, roots, path)) +- fprintf(f,"mode=%llo,uid=%llu,gid=%llu,nlink=%llu,rdev=%llu %s\n", ++ fprintf(f,"mode=%"PRIo64",uid=%"PRIu64",gid=%"PRIu64",nlink=%"PRIu64",rdev=%"PRIu64" %s\n", + (uint64_t) i->buf.mode,(uint64_t) i->buf.uid,(uint64_t) i->buf.gid, + (uint64_t) i->buf.nlink,(uint64_t) i->buf.rdev,path); + #else +- fprintf(f,"dev=%llx,ino=%llu,mode=%llo,uid=%llu,gid=%llu,nlink=%llu,rdev=%llu\n", ++ fprintf(f,"dev=%"PRIx64",ino=%"PRIu64",mode=%"PRIo64",uid=%"PRIu64",gid=%"PRIu64",nlink=%"PRIu64",rdev=%"PRIu64"\n", + (uint64_t) i->buf.dev,(uint64_t) i->buf.ino,(uint64_t) i->buf.mode, + (uint64_t) i->buf.uid,(uint64_t) i->buf.gid,(uint64_t) i->buf.nlink, + (uint64_t) i->buf.rdev); +@@ -544,7 +544,7 @@ + + while(1){ + #ifdef FAKEROOT_DB_PATH +- r=scanf("mode=%llo,uid=%llu,gid=%llu,nlink=%llu,rdev=%llu "DB_PATH_SCAN"\n", ++ r=scanf("mode=%"PRIo64",uid=%"PRIu64",gid=%"PRIu64",nlink=%"PRIu64",rdev=%"PRIu64" "DB_PATH_SCAN"\n", + &stmode, &stuid, &stgid, &stnlink, &strdev, &path); + if (r != 6) + break; +@@ -559,7 +559,7 @@ + stdev = path_st.st_dev; + stino = path_st.st_ino; + #else +- r=scanf("dev=%llx,ino=%llu,mode=%llo,uid=%llu,gid=%llu,nlink=%llu,rdev=%llu\n", ++ r=scanf("dev=%"PRIx64",ino=%"PRIu64",mode=%"PRIo64",uid=%"PRIu64",gid=%"PRIu64",nlink=%"PRIu64",rdev=%"PRIu64"\n", + &stdev, &stino, &stmode, &stuid, &stgid, &stnlink, &strdev); + if (r != 7) + break; diff --git a/base/flex/build.sh b/base/flex/build.sh new file mode 100644 index 0000000..ecc66f3 --- /dev/null +++ b/base/flex/build.sh @@ -0,0 +1,36 @@ +pkgname=flex +pkgver=2.6.4 +auto_cross + +fetch() { + curl -L "https://github.com/westes/flex/releases/download/v2.6.4/flex-$pkgver.tar.gz" -o $pkgname-$pkgver.tar.gz + tar -xf $pkgname-$pkgver.tar.gz +} + +build() { + cd $pkgname-$pkgver + [ -z "$WITH_CROSS" ] || extra_flags=--disable-bootstrap + + ./configure \ + --prefix=/usr \ + --build=$HOST_TRIPLE \ + --host=$TRIPLE \ + $extra_flags + + make +} + +package() { + cd $pkgname-$pkgver + make install DESTDIR=$pkgdir + ln -sr $pkgdir/usr/bin/flex $pkgdir/usr/bin/lex +} + +license() { + cd $pkgname-$pkgver + cat COPYING +} + +backup() { + return +} diff --git a/pkgs/gettext-tiny/build.sh b/base/gettext-tiny/build.sh similarity index 73% rename from pkgs/gettext-tiny/build.sh rename to base/gettext-tiny/build.sh index cae3da1..a219bf6 100644 --- a/pkgs/gettext-tiny/build.sh +++ b/base/gettext-tiny/build.sh @@ -1,5 +1,7 @@ pkgname=gettext-tiny pkgver=master +deps="" +auto_cross fetch() { curl -L "https://github.com/sabotage-linux/gettext-tiny/archive/master.tar.gz" -o $pkgname-$pkgver.tar.gz @@ -8,12 +10,12 @@ fetch() { build() { cd $pkgname-$pkgver - ckati + bad --gmake gmake } package() { cd $pkgname-$pkgver - ckati install DESTDIR=$pkgdir prefix=/usr + bad --gmake gmake install DESTDIR=$pkgdir prefix=/usr } license() { @@ -21,3 +23,7 @@ license() { cat LICENSE # cat COPYING } + +backup() { + return +} diff --git a/base/git/build.sh b/base/git/build.sh new file mode 100644 index 0000000..f97627a --- /dev/null +++ b/base/git/build.sh @@ -0,0 +1,38 @@ +pkgver=2.32.0 +pkgname=git +pkgrel=1 +mkdeps="zlib-ng-dev:curl-dev:gmake" +deps="zlib-ng:curl" +bad="gmake" +ext="doc" + +fetch() { + curl "https://mirrors.edge.kernel.org/pub/software/scm/git/git-$pkgver.tar.xz" -o $pkgname-$pkgver.tar.xz + tar -xf $pkgname-$pkgver.tar.xz +} + +build() { + cd $pkgname-$pkgver + # gmake NO_PERL=1 NO_REGEX=NeedsStartEnd NO_TCLTK=1 NO_MSGFMT_EXTENDED_OPTIONS=1 prefix=/usr gitexecdir=lib/gitcore INSTALL_SYMLINKS=1 + bad --gmake gmake NO_REGEX=NeedsStartEnd NO_TCLTK=1 NO_MSGFMT_EXTENDED_OPTIONS=1 prefix=/usr gitexecdir=lib/gitcore INSTALL_SYMLINKS=1 + # Need to run twice for it to work ¯\_(ツ)_/¯ + # Some issue with `msgfmt` 'cause I'm using gettext-tiny but idk why it works on the second run + # gmake NO_PERL=1 NO_REGEX=NeedsStartEnd NO_TCLTK=1 NO_MSGFMT_EXTENDED_OPTIONS=1 prefix=/usr gitexecdir=lib/gitcore INSTALL_SYMLINKS=1 + bad --gmake gmake NO_REGEX=NeedsStartEnd NO_TCLTK=1 NO_MSGFMT_EXTENDED_OPTIONS=1 prefix=/usr gitexecdir=lib/gitcore INSTALL_SYMLINKS=1 +} + +package() { + cd $pkgname-$pkgver + # gmake NO_PERL=1 NO_REGEX=NeedsStartEnd NO_TCLTK=1 NO_MSGFMT_EXTENDED_OPTIONS=1 install prefix=/usr gitexecdir=lib/gitcore DESTDIR=$pkgdir INSTALL_SYMLINKS=1 + bad --gmake gmake NO_REGEX=NeedsStartEnd NO_TCLTK=1 NO_MSGFMT_EXTENDED_OPTIONS=1 install prefix=/usr gitexecdir=lib/gitcore DESTDIR=$pkgdir INSTALL_SYMLINKS=1 +} + +package_doc() { + # gmake NO_PERL=1 NO_REGEX=NeedsStartEnd NO_TCLTK=1 NO_MSGFMT_EXTENDED_OPTIONS=1 install-man prefix=/usr DESTDIR=$pkgdir INSTALL_SYMLINKS=1 + bad --gmake gmake NO_REGEX=NeedsStartEnd NO_TCLTK=1 NO_MSGFMT_EXTENDED_OPTIONS=1 install-man prefix=/usr DESTDIR=$pkgdir INSTALL_SYMLINKS=1 +} + +license() { + cd $pkgname-$pkgver + cat COPYING +} diff --git a/pkgs/iglunix/build.sh b/base/iglunix/build.sh similarity index 92% rename from pkgs/iglunix/build.sh rename to base/iglunix/build.sh index 2def90b..8b47a4c 100644 --- a/pkgs/iglunix/build.sh +++ b/base/iglunix/build.sh @@ -10,8 +10,8 @@ fetch() { cp ../profile.sh . cp ../motd . cd $pkgname-$pkgver - cp ../../../../iglu*.sh . - cp ../../../../iglu.8 . + cp ../../../../scripts/iglu*.sh . + cp ../../../../man/iglu.8 . cp ../../../../LICENSE . } diff --git a/pkgs/iglunix/motd b/base/iglunix/motd similarity index 100% rename from pkgs/iglunix/motd rename to base/iglunix/motd diff --git a/pkgs/iglunix/profile.sh b/base/iglunix/profile.sh similarity index 100% rename from pkgs/iglunix/profile.sh rename to base/iglunix/profile.sh diff --git a/base/iglupkg/build.sh b/base/iglupkg/build.sh new file mode 100644 index 0000000..8739c5c --- /dev/null +++ b/base/iglupkg/build.sh @@ -0,0 +1,25 @@ +pkgname=iglupkg +pkgver=main + +fetch() { + curl -L "https://github.com/iglunix/iglupkg/archive/refs/heads/main.tar.gz" -o $pkgname-$pkgver.tar.xz + tar -xf $pkgname-$pkgver.tar.xz +} + +build() { + return +} + +package() { + cd $pkgname-$pkgver + make install DESTDIR=$pkgdir PREFIX=/usr +} + +license() { + cd $pkgname-$pkgver + return +} + +backup() { + return +} diff --git a/pkgs/kakoune/build.sh b/base/kakoune/build.sh similarity index 69% rename from pkgs/kakoune/build.sh rename to base/kakoune/build.sh index 88f609b..26edf8c 100644 --- a/pkgs/kakoune/build.sh +++ b/base/kakoune/build.sh @@ -1,4 +1,4 @@ -pkgver=builtin-terminal-ui +pkgver=master pkgname=kakoune pkgrel=1 deps="musl:llvm" @@ -6,18 +6,18 @@ bad="" ext="doc" fetch() { - curl -L "https://github.com/mawww/kakoune/archive/builtin-terminal-ui.tar.gz" -o $pkgname-$pkgver.tar.xz + curl -L "https://github.com/mawww/kakoune/archive/master.tar.gz" -o $pkgname-$pkgver.tar.xz tar -xf $pkgname-$pkgver.tar.xz } build() { cd $pkgname-$pkgver - ckati + bad --gmake gmake } package() { cd $pkgname-$pkgver - ckati install DESTDIR=$pkgdir PREFIX=/usr + bad --gmake gmake install DESTDIR=$pkgdir PREFIX=/usr rm -r $pkgdir/usr/share/doc rm -r $pkgdir/usr/share/man rm -r $pkgdir/usr/libexec @@ -35,3 +35,7 @@ license() { cd $pkgname-$pkgver cat UNLICENSE } + +backup() { + return +} diff --git a/pkgs/kati/build.sh b/base/kati/build.sh similarity index 95% rename from pkgs/kati/build.sh rename to base/kati/build.sh index 0530753..c64348d 100644 --- a/pkgs/kati/build.sh +++ b/base/kati/build.sh @@ -9,7 +9,7 @@ fetch() { build() { cd $pkgname-$pkgver - gmake + bad --gmake gmake } package() { diff --git a/pkgs/lc-make/build.sh b/base/lc-make/build.sh similarity index 95% rename from pkgs/lc-make/build.sh rename to base/lc-make/build.sh index bf10b97..9540ddb 100644 --- a/pkgs/lc-make/build.sh +++ b/base/lc-make/build.sh @@ -1,5 +1,7 @@ pkgname=lc-make pkgver=main +mkdeps="rust" +deps="" fetch() { curl -L "https://github.com/LightningCreations/lc-make/archive/refs/heads/main.tar.gz" -o $pkgname-$pkgver.tar.xz diff --git a/base/libcxx/build.sh b/base/libcxx/build.sh new file mode 100644 index 0000000..31a577f --- /dev/null +++ b/base/libcxx/build.sh @@ -0,0 +1,63 @@ +pkgver=14.0.1 +pkgname=libcxx +bad="" +ext="dev" + +fetch() { + curl -L "https://github.com/llvm/llvm-project/releases/download/llvmorg-$pkgver/llvm-project-$pkgver.src.tar.xz" -o $pkgname-$pkgver.tar.xz + tar -xf $pkgname-$pkgver.tar.xz + mv llvm-project-$pkgver.src $pkgname-$pkgver +} + +build() { + cd $pkgname-$pkgver + PREFIX=/usr + [ -z "$FOR_CROSS" ] || PREFIX=$FOR_CROSS_DIR + [ -z "$WITH_CROSS" ] || cmake_extra_flags=-DCMAKE_SYSROOT=$WITH_CROSS_DIR + + mkdir -p build + cd build + cmake -G Ninja -Wno-dev \ + -DLLVM_ENABLE_RUNTIMES="libcxx;libcxxabi" \ + -DLIBCXX_ENABLE_FILESYSTEM=ON \ + -DLIBCXX_USE_COMPILER_RT=ON \ + -DLIBCXX_HAS_MUSL_LIBC=ON \ + -DLIBCXXABI_USE_COMPILER_RT=ON \ + -DLIBCXXABI_USE_LLVM_UNWINDER=ON \ + -DLIBCXX_ENABLE_STATIC=OFF \ + -DLIBCXX_HAS_ATOMIC_LIB=OFF \ + -DCMAKE_C_COMPILER=$CC \ + -DCMAKE_CXX_COMPILER=$CXX \ + -DCMAKE_C_COMPILER_TARGET=$ARCH-linux-musl \ + -DCMAKE_CXX_COMPILER_TARGET=$ARCH-linux-musl \ + -DCMAKE_C_FLAGS="$CFLAGS" \ + -DCMAKE_CXX_FLAGS="$CXXFLAGS" \ + $cmake_extra_flags \ + -DCMAKE_INSTALL_PREFIX=$PREFIX \ + -DCMAKE_CXX_COMPILER_WORKS=1 \ + -DCMAKE_SKIP_BUILD_RPATH=0 \ + -DCMAKE_BUILD_WITH_INSTALL_RPATH=1 \ + -DCMAKE_INSTALL_RPATH='${ORIGIN}/../lib' \ + ../runtimes + + samu -j$JOBS +} + +package() { + cd $pkgname-$pkgver + cd build + DESTDIR=$pkgdir samu install +} + +backup() { + return +} + +package_dev() { + echo "No... Shut" +} + +license() { + cd $pkgname-$pkgver + cat */LICENSE.TXT +} diff --git a/base/libelf/build.sh b/base/libelf/build.sh new file mode 100644 index 0000000..c8334da --- /dev/null +++ b/base/libelf/build.sh @@ -0,0 +1,47 @@ +pkgname=libelf +pkgver=0.186 +auto_cross + +fetch() { + curl -LO "https://sourceware.org/elfutils/ftp/$pkgver/elfutils-$pkgver.tar.bz2" + tar -xf elfutils-$pkgver.tar.bz2 + cd elfutils-$pkgver + patch -p1 < ../../musl.patch +} + +if [ -z "$FOR_CROSS" ]; then + PREFIX=/usr +else + PREFIX=$FOR_CROSS_DIR +fi + +build() { + cd elfutils-$pkgver + export CFLAGS="$CFLAGS -Wno-error" + ./configure \ + --prefix=$PREFIX \ + --sysconfdir=/etc \ + --build=$HOST_TRIPLE \ + --host=$TRIPLE \ + --disable-symbol-versioning \ + --disable-debuginfod \ + --disable-libdebuginfod \ + --disable-nls \ + ac_cv_c99=yes + + bad --gmake gmake -C lib + bad --gmake gmake -C libelf +} + +package() { + cd elfutils-$pkgver + bad --gmake gmake -C libelf install DESTDIR=$pkgdir +} + +backup() { + return +} + +license() { + return +} diff --git a/base/libelf/musl.patch b/base/libelf/musl.patch new file mode 100644 index 0000000..a37912f --- /dev/null +++ b/base/libelf/musl.patch @@ -0,0 +1,59 @@ +diff --git a/configure b/configure +index d03dab4..7fc88bd 100755 +--- a/configure ++++ b/configure +@@ -7758,7 +7758,7 @@ LIBS="$saved_LIBS" + case "$ac_cv_search_argp_parse" in + no) { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 + $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +-as_fn_error $? "failed to find argp_parse ++: $? "failed to find argp_parse + See \`config.log' for more details" "$LINENO" 5; } ;; + -l*) argp_LDADD="$ac_cv_search_argp_parse" ;; + *) argp_LDADD= ;; +@@ -7826,7 +7826,7 @@ LIBS="$saved_LIBS" + case "$ac_cv_search_fts_close" in + no) { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 + $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +-as_fn_error $? "failed to find fts_close ++: $? "failed to find fts_close + See \`config.log' for more details" "$LINENO" 5; } ;; + -l*) fts_LIBS="$ac_cv_search_fts_close" ;; + *) fts_LIBS= ;; +@@ -7894,7 +7894,7 @@ LIBS="$saved_LIBS" + case "$ac_cv_search__obstack_free" in + no) { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 + $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +-as_fn_error $? "failed to find _obstack_free ++: $? "failed to find _obstack_free + See \`config.log' for more details" "$LINENO" 5; } ;; + -l*) obstack_LIBS="$ac_cv_search__obstack_free" ;; + *) obstack_LIBS= ;; +diff --git a/lib/Makefile.in b/lib/Makefile.in +index 41ff5f7..0c81496 100644 +--- a/lib/Makefile.in ++++ b/lib/Makefile.in +@@ -117,8 +117,8 @@ libeu_a_AR = $(AR) $(ARFLAGS) + libeu_a_LIBADD = + am_libeu_a_OBJECTS = xasprintf.$(OBJEXT) xstrdup.$(OBJEXT) \ + xstrndup.$(OBJEXT) xmalloc.$(OBJEXT) next_prime.$(OBJEXT) \ +- crc32.$(OBJEXT) crc32_file.$(OBJEXT) color.$(OBJEXT) \ +- error.$(OBJEXT) printversion.$(OBJEXT) ++ crc32.$(OBJEXT) crc32_file.$(OBJEXT) \ ++ error.$(OBJEXT) + libeu_a_OBJECTS = $(am_libeu_a_OBJECTS) + AM_V_P = $(am__v_P_@AM_V@) + am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) +@@ -406,10 +406,10 @@ textrel_check = if $(READELF) -d $@ | fgrep -q TEXTREL; then $(textrel_found); f + noinst_LIBRARIES = libeu.a + libeu_a_SOURCES = xasprintf.c xstrdup.c xstrndup.c xmalloc.c next_prime.c \ + crc32.c crc32_file.c \ +- color.c error.c printversion.c ++ error.c + + noinst_HEADERS = fixedsizehash.h libeu.h system.h dynamicsizehash.h list.h \ +- eu-config.h color.h printversion.h bpf.h \ ++ eu-config.h bpf.h \ + atomics.h stdatomic-fbsd.h dynamicsizehash_concurrent.h + + EXTRA_DIST = dynamicsizehash.c dynamicsizehash_concurrent.c diff --git a/pkgs/libffi/build.sh b/base/libffi/build.sh similarity index 63% rename from pkgs/libffi/build.sh rename to base/libffi/build.sh index 80f9484..2be4125 100644 --- a/pkgs/libffi/build.sh +++ b/base/libffi/build.sh @@ -2,6 +2,7 @@ pkgver=3.3 pkgname=libffi bad="gmake" ext="dev" +auto_cross fetch() { curl -L "https://github.com/libffi/libffi/releases/download/v3.3/libffi-3.3.tar.gz" -o $pkgname-$pkgver.tar.gz @@ -10,21 +11,27 @@ fetch() { build() { cd $pkgname-$pkgver - ./configure --prefix=/usr - gmake + ./configure --prefix=$PREFIX \ + --build=$HOST_TRIPLE \ + --host=$TRIPLE + bad --gmake gmake } package() { cd $pkgname-$pkgver - gmake install DESTDIR=$pkgdir + bad --gmake gmake install DESTDIR=$pkgdir } package_dev() { cd $pkgname-$pkgver - gmake install DESTDIR=$pkgdir + bad --gmake gmake install DESTDIR=$pkgdir } license() { cd $pkgname-$pkgver cat LICENSE } + +backup() { + return +} diff --git a/pkgs/libnl-tiny/build.sh b/base/libnl-tiny/build.sh similarity index 79% rename from pkgs/libnl-tiny/build.sh rename to base/libnl-tiny/build.sh index 4620f55..30702f9 100644 --- a/pkgs/libnl-tiny/build.sh +++ b/base/libnl-tiny/build.sh @@ -9,12 +9,12 @@ fetch() { build() { cd $pkgname-$pkgver - gmake prefix=/usr all CC=cc + bad --gmake gmake prefix=/usr all CC=cc } package() { cd $pkgname-$pkgver - gmake prefix=/usr DESTDIR=$pkgdir install + bad --gmake gmake prefix=/usr DESTDIR=$pkgdir install } license() { diff --git a/pkgs/libnl-tiny/cmake-no-extra-errs.patch b/base/libnl-tiny/cmake-no-extra-errs.patch similarity index 100% rename from pkgs/libnl-tiny/cmake-no-extra-errs.patch rename to base/libnl-tiny/cmake-no-extra-errs.patch diff --git a/base/libunwind/build.sh b/base/libunwind/build.sh new file mode 100644 index 0000000..bbb26be --- /dev/null +++ b/base/libunwind/build.sh @@ -0,0 +1,70 @@ +pkgver=14.0.1 +pkgname=libunwind +bad="" +ext="dev" + +fetch() { + curl -L "https://github.com/llvm/llvm-project/releases/download/llvmorg-$pkgver/llvm-project-$pkgver.src.tar.xz" -o $pkgname-$pkgver.tar.xz + tar -xf $pkgname-$pkgver.tar.xz + mv llvm-project-$pkgver.src $pkgname-$pkgver +} + +build() { + cd $pkgname-$pkgver + + PREFIX=/usr + + [ -z "$FOR_CROSS" ] || PREFIX=$FOR_CROSS_DIR + + if [ ! -z "$WITH_CROSS" ]; then + cmake_extra_flags=-DCMAKE_SYSROOT=$WITH_CROSS_DIR + fi + + mkdir -p build + cd build + cmake -G Ninja -Wno-dev \ + -DLLVM_ENABLE_RUNTIMES="libunwind" \ + -DLIBUNWIND_USE_COMPILER_RT=ON \ + -DLIBUNWIND_SUPPORTS_FNO_EXCEPTIONS_FLAG=1 \ + -DLIBCXXABI_USE_LLVM_UNWINDER=YES \ + -DLIBCXX_HAS_MUSL_LIBC=ON \ + -DCMAKE_ASM_COMPILER=$CC \ + -DCMAKE_C_COMPILER=$CC \ + -DCMAKE_CXX_COMPILER=$CXX \ + -DCMAKE_ASM_COMPILER_TARGET=$ARCH-linux-musl \ + -DCMAKE_C_COMPILER_TARGET=$ARCH-linux-musl \ + -DCMAKE_CXX_COMPILER_TARGET=$ARCH-linux-musl \ + -DCMAKE_C_FLAGS="$CFLAGS" \ + -DCMAKE_CXX_FLAGS="$CXXFLAGS" \ + -DCMAKE_ASM_FLAGS="$CFLAGS" \ + -DCMAKE_SHARED_LINKER_FLAGS="$LDFLAGS -unwindlib=none" \ + $cmake_extra_flags \ + -DCMAKE_INSTALL_PREFIX=$PREFIX \ + -DCMAKE_C_COMPILER_WORKS=1 \ + -DCMAKE_CXX_COMPILER_WORKS=1 \ + -DCMAKE_SKIP_BUILD_RPATH=0 \ + -DCMAKE_BUILD_WITH_INSTALL_RPATH=1 \ + -DCMAKE_INSTALL_RPATH='${ORIGIN}/../lib' \ + ../runtimes + + samu -j$JOBS +} + +package() { + cd $pkgname-$pkgver + cd build + DESTDIR=$pkgdir samu install +} + +backup() { + return +} + +package_dev() { + echo "No... Shut" +} + +license() { + cd $pkgname-$pkgver + cat */LICENSE.TXT +} diff --git a/base/llvm/build.sh b/base/llvm/build.sh new file mode 100644 index 0000000..a5fbb82 --- /dev/null +++ b/base/llvm/build.sh @@ -0,0 +1,150 @@ +pkgver=14.0.1 +pkgname=llvm +bad="" +ext="dev" + +fetch() { + curl -L "https://github.com/llvm/llvm-project/releases/download/llvmorg-$pkgver/llvm-project-$pkgver.src.tar.xz" -o $pkgname-$pkgver.tar.gz + tar -xf $pkgname-$pkgver.tar.gz + mv llvm-project-$pkgver.src $pkgname-$pkgver + + cd $pkgname-$pkgver + patch -p1 < ../../riscv-relax.patch +} + +build() { + cd $pkgname-$pkgver + + if [ ! -z "$WITH_CROSS" ]; then + EXTRA_ARGS="-DCMAKE_SYSROOT=$WITH_CROSS_DIR \ + -DCMAKE_C_COMPILER_WORKS=ON \ + -DCMAKE_CXX_COMPILER_WORKS=ON \ + -DCMAKE_SYSTEM_NAME=Linux \ + -DLLVM_TABLEGEN=$(pwd)/host-build/bin/llvm-tblgen \ + -DCLANG_TABLEGEN=$(pwd)/host-build/bin/clang-tblgen \ + -DLLVM_CONFIG_PATH=/usr/bin/llvm-config \ + -DCMAKE_FIND_ROOT_PATH_MODE_PROGRAM=NEVER \ + -DCMAKE_FIND_ROOT_PATH_MODE_LIBRARY=ONLY \ + -DCMAKE_FIND_ROOT_PATH_MODE_INCLUDE=ONLY" + mkdir -p host-build + cd host-build + cmake -G Ninja -Wno-dev \ + -DLLVM_ENABLE_PROJECTS='clang' \ + -DCMAKE_C_COMPILER=cc \ + -DCMAKE_CXX_COMPILER=c++ \ + ../llvm + + samu llvm-tblgen clang-tblgen + + cd .. + fi + + mkdir -p build + cd build + cmake -G Ninja -Wno-dev \ + -DCMAKE_C_COMPILER_TARGET=$TRIPLE \ + -DCMAKE_CXX_COMPILER_TARGET=$TRIPLE \ + -DCMAKE_C_COMPILER=$CC \ + -DCMAKE_CXX_COMPILER=$CXX \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DCMAKE_BUILD_TYPE=Release \ + -DLLVM_VERSION_SUFFIX="" \ + -DLLVM_APPEND_VC_REV=OFF \ + -DLLVM_ENABLE_PROJECTS="llvm;lld;clang" \ + -DLLVM_ENABLE_LLD=ON \ + -DLLVM_TARGETS_TO_BUILD="all" \ + -DLLVM_INSTALL_BINUTILS_SYMLINKS=ON \ + -DLLVM_INSTALL_CCTOOLS_SYMLINKS=ON \ + -DLLVM_INCLUDE_EXAMPLES=OFF \ + -DLLVM_ENABLE_PIC=ON \ + -DLLVM_ENABLE_LTO=OFF \ + -DLLVM_INCLUDE_GO_TESTS=OFF \ + -DLLVM_INCLUDE_TESTS=OFF \ + -DLLVM_HOST_TRIPLE=$TRIPLE \ + -DLLVM_DEFAULT_TARGET_TRIPLE=$TRIPLE \ + -DLLVM_ENABLE_LIBXML2=OFF \ + -DLLVM_ENABLE_ZLIB=OFF\ + -DLLVM_BUILD_LLVM_DYLIB=ON \ + -DLLVM_LINK_LLVM_DYLIB=ON \ + -DLLVM_OPTIMIZED_TABLEGEN=ON \ + -DLLVM_INCLUDE_BENCHMARKS=OFF \ + -DLLVM_INCLUDE_DOCS=ON \ + -DLLVM_TOOL_LLVM_ITANIUM_DEMANGLE_FUZZER_BUILD=OFF \ + -DLLVM_TOOL_LLVM_MC_ASSEMBLE_FUZZER_BUILD=OFF \ + -DLLVM_TOOL_LLVM_MC_DISASSEMBLE_FUZZER_BUILD=OFF \ + -DLLVM_TOOL_LLVM_OPT_FUZZER_BUILD=OFF \ + -DLLVM_TOOL_LLVM_MICROSOFT_DEMANGLE_FUZZER_BUILD=OFF \ + -DLLVM_TOOL_LLVM_GO_BUILD=OFF \ + -DLLVM_INSTALL_UTILS=ON \ + -DLLVM_ENABLE_LIBCXX=ON \ + -DLLVM_STATIC_LINK_CXX_STDLIB=ON \ + -DLLVM_ENABLE_LIBEDIT=OFF \ + -DLLVM_ENABLE_TERMINFO=OFF \ + -DLIBCXX_ENABLE_FILESYSTEM=ON \ + -DLIBCXX_USE_COMPILER_RT=ON \ + -DLIBCXX_HAS_MUSL_LIBC=ON \ + -DLIBCXX_ENABLE_STATIC_ABI_LIBRARY=ON \ + -DLIBCXX_STATICALLY_LINK_ABI_IN_SHARED_LIBRARY=ON \ + -DLIBCXX_STATICALLY_LINK_ABI_IN_STATIC_LIBRARY=ON \ + -DLIBCXX_INSTALL_LIBRARY=ON \ + -DLIBCXXABI_ENABLE_ASSERTIONS=ON \ + -DLIBCXXABI_USE_COMPILER_RT=ON \ + -DLIBCXXABI_USE_LLVM_UNWINDER=ON \ + -DLIBCXXABI_ENABLE_STATIC_UNWINDER=ON \ + -DLIBCXXABI_STATICALLY_LINK_UNWINDER_IN_SHARED_LIBRARY=YES \ + -DLIBCXXABI_ENABLE_SHARED=OFF \ + -DLIBCXXABI_ENABLE_STATIC=ON \ + -DLIBCXXABI_INSTALL_LIBRARY=ON \ + -DLIBUNWIND_ENABLE_SHARED=ON \ + -DLIBUNWIND_ENABLE_STATIC=ON \ + -DLIBUNWIND_INSTALL_LIBRARY=ON \ + -DLIBUNWIND_USE_COMPILER_RT=ON \ + -DCLANG_DEFAULT_LINKER=lld \ + -DCLANG_DEFAULT_CXX_STDLIB='libc++' \ + -DCLANG_DEFAULT_RTLIB=compiler-rt \ + -DCLANG_DEFAULT_UNWINDLIB=libunwind \ + -DCLANG_VENDOR="Iglunix" \ + -DCLANG_ENABLE_STATIC_ANALYZER=OFF \ + -DCLANG_ENABLE_ARCMT=OFF \ + -DCLANG_LINK_CLANG_DYLIB=OFF \ + -DCLANG_TOOLING_BUILD_AST_INTROSPECTION=OFF \ + -DCOMPILER_RT_USE_BUILTINS_LIBRARY=OFF \ + -DCOMPILER_RT_DEFAULT_TARGET_ONLY=OFF \ + -DCOMPILER_RT_INCLUDE_TESTS=OFF \ + -DCOMPILER_RT_BUILD_SANITIZERS=OFF \ + -DCOMPILER_RT_BUILD_XRAY=OFF \ + -DCOMPILER_RT_BUILD_MEMPROF=OFF \ + -DCOMPILER_RT_INCLUDE_TESTS=OFF \ + -DCOMPILER_RT_BUILD_LIBFUZZER=OFF \ + -DENABLE_EXPERIMENTAL_NEW_PASS_MANAGER=TRUE \ + $EXTRA_ARGS \ + -DHAVE_CXX_ATOMICS_WITHOUT_LIB=ON \ + -DHAVE_CXX_ATOMICS64_WITHOUT_LIB=ON \ + ../llvm + + samu -j$JOBS +} + +package() { + cd $pkgname-$pkgver + cd build + DESTDIR=$pkgdir samu install + ln -s clang $pkgdir/usr/bin/cc + ln -s clang $pkgdir/usr/bin/c89 + ln -s clang $pkgdir/usr/bin/c99 + ln -s clang++ $pkgdir/usr/bin/c++ + ln -s ld.lld $pkgdir/usr/bin/ld +} + +backup() { + return +} + +package_dev() { + echo "No... Shut" +} + +license() { + cd $pkgname-$pkgver + cat */LICENSE.TXT +} diff --git a/pkgs/llvm/default.llvm.conf b/base/llvm/default.llvm.conf similarity index 100% rename from pkgs/llvm/default.llvm.conf rename to base/llvm/default.llvm.conf diff --git a/base/llvm/riscv-relax.patch b/base/llvm/riscv-relax.patch new file mode 100644 index 0000000..b7db049 --- /dev/null +++ b/base/llvm/riscv-relax.patch @@ -0,0 +1,17 @@ +diff --git a/clang/lib/Driver/ToolChains/Arch/RISCV.cpp b/clang/lib/Driver/ToolChains/Arch/RISCV.cpp +index 8c343b869..65c357e86 100644 +--- a/clang/lib/Driver/ToolChains/Arch/RISCV.cpp ++++ b/clang/lib/Driver/ToolChains/Arch/RISCV.cpp +@@ -426,11 +426,7 @@ void riscv::getRISCVTargetFeatures(const Driver &D, const llvm::Triple &Triple, + if (Args.hasArg(options::OPT_ffixed_x31)) + Features.push_back("+reserve-x31"); + +- // -mrelax is default, unless -mno-relax is specified. +- if (Args.hasFlag(options::OPT_mrelax, options::OPT_mno_relax, true)) +- Features.push_back("+relax"); +- else +- Features.push_back("-relax"); ++ Features.push_back("-relax"); + + // GCC Compatibility: -mno-save-restore is default, unless -msave-restore is + // specified... diff --git a/pkgs/man-pages-posix/build.sh b/base/man-pages-posix/build.sh similarity index 92% rename from pkgs/man-pages-posix/build.sh rename to base/man-pages-posix/build.sh index 0559329..ad0139c 100644 --- a/pkgs/man-pages-posix/build.sh +++ b/base/man-pages-posix/build.sh @@ -7,8 +7,7 @@ fetch() { } build() { - cd $pkgname-$pkgver - make + return } package() { @@ -16,6 +15,10 @@ package() { make install DESTDIR=$pkgdir } +backup() { + return +} + license() { cd $pkgname-$pkgver cat POSIX-COPYRIGHT diff --git a/pkgs/meson/build.sh b/base/meson/build.sh similarity index 89% rename from pkgs/meson/build.sh rename to base/meson/build.sh index b33a2e6..9f1a025 100644 --- a/pkgs/meson/build.sh +++ b/base/meson/build.sh @@ -1,8 +1,7 @@ -pkgver=0.58.0 +pkgver=0.60.2 pkgname=meson deps=python bad="" -ext="doc" fetch() { curl -L "https://github.com/mesonbuild/meson/releases/download/$pkgver/meson-$pkgver.tar.gz" -o $pkgname-$pkgver.tar.gz @@ -22,8 +21,8 @@ package() { python setup.py install --prefix=/usr --root=$pkgdir } -package_doc() { - echo $pkgdir +backup() { + return } license() { diff --git a/pkgs/meson/not-darwin.patch b/base/meson/not-darwin.patch similarity index 100% rename from pkgs/meson/not-darwin.patch rename to base/meson/not-darwin.patch diff --git a/pkgs/mksh/build.sh b/base/mksh/build.sh similarity index 62% rename from pkgs/mksh/build.sh rename to base/mksh/build.sh index 96e180e..6c7f7f1 100644 --- a/pkgs/mksh/build.sh +++ b/base/mksh/build.sh @@ -5,7 +5,7 @@ bad="" ext="doc" fetch() { - curl https://www.mirbsd.org/MirOS/dist/mir/mksh/mksh-R59c.tgz -o $pkgname-$pkgver.tar.gz + curl http://www.mirbsd.org/MirOS/dist/mir/mksh/mksh-R59c.tgz -o $pkgname-$pkgver.tar.gz tar -xf $pkgname-$pkgver.tar.gz } @@ -24,11 +24,8 @@ package() { ln -sr $pkgdir/bin/lksh $pkgdir/bin/sh } -package_doc() { - cd $pkgname - install -d $pkgdir/usr/share/man/man1 - install -Dm 644 ./mksh.1 $pkgdir/usr/share/man/man1 - install -Dm 644 ./lksh.1 $pkgdir/usr/share/man/man1 +backup() { + return } license() { diff --git a/base/netbsd-curses/build.sh b/base/netbsd-curses/build.sh new file mode 100644 index 0000000..a56b681 --- /dev/null +++ b/base/netbsd-curses/build.sh @@ -0,0 +1,32 @@ +pkgver=master +pkgname=netbsd-curses +bad="gmake" +deps="musl" +ext="doc:dev" +auto_cross + +fetch() { + curl -L "https://github.com/sabotage-linux/netbsd-curses/archive/master.tar.gz" -o $pkgname-$pkgver.tar.gz + tar -xf $pkgname-$pkgver.tar.gz + cd $pkgname-$pkgver + patch -p1 < ../../cross.patch +} + +build() { + cd $pkgname-$pkgver + bad --gmake gmake PREFIX=/usr HOSTCC=cc CROSSCOMPILING=1 LDFLAGS_HOST= CFLAGS_HOST= +} + +package() { + cd $pkgname-$pkgver + bad --gmake gmake install DESTDIR=$pkgdir PREFIX=/usr HOSTCC=cc CROSSCOMPILING=1 LDFLAGS_HOST= CFLAGS_HOST= +} + +backup() { + return +} + +license() { + cd $pkgname-$pkgver + cat COPYING +} diff --git a/base/netbsd-curses/cross.patch b/base/netbsd-curses/cross.patch new file mode 100644 index 0000000..895700a --- /dev/null +++ b/base/netbsd-curses/cross.patch @@ -0,0 +1,47 @@ +--- a/GNUmakefile ++++ b/GNUmakefile +@@ -477,7 +477,7 @@ + $(RANLIB) $@ + + $(TI_LIBSO): $(TI_LOBJS) +- $(CC) -shared -o $@ $^ -Wl,-soname=$(notdir $@) ++ $(CC) $(LDFLAGS) -shared -o $@ $^ -Wl,-soname=$(notdir $@) + + libterminfo/hash.c: libterminfo/genhash libterminfo/term.h + @echo "Generating terminfo hash" +@@ -514,7 +514,7 @@ + + $(CU_LIBSO): $(TI_LIBSO) + $(CU_LIBSO): $(CU_LOBJS) +- $(CC) -shared -o $@ $^ -Wl,-soname=$(notdir $@) ++ $(CC) $(LDFLAGS) -shared -o $@ $^ -Wl,-soname=$(notdir $@) + + libcurses/fileio.h: libcurses/shlib_version libcurses/genfileioh.awk + $(AWK) -f ./genfileioh.awk < ./shlib_version > ./fileio.h +@@ -526,7 +526,7 @@ + + $(PA_LIBSO): $(CU_LIBSO) + $(PA_LIBSO): $(PA_LOBJS) +- $(CC) -shared -o $@ $^ -Wl,-soname=$(notdir $@) ++ $(CC) $(LDFLAGS) -shared -o $@ $^ -Wl,-soname=$(notdir $@) + + $(ME_LIBA): $(ME_OBJS) + rm -f $@ +@@ -535,7 +535,7 @@ + + $(ME_LIBSO): $(CU_LIBSO) + $(ME_LIBSO): $(ME_LOBJS) +- $(CC) -shared -o $@ $^ -Wl,-soname=$(notdir $@) ++ $(CC) $(LDFLAGS) -shared -o $@ $^ -Wl,-soname=$(notdir $@) + + $(FO_LIBA): $(FO_OBJS) + rm -f $@ +@@ -544,7 +544,7 @@ + + $(FO_LIBSO): $(CU_LIBSO) + $(FO_LIBSO): $(FO_LOBJS) +- $(CC) -shared -o $@ $^ -Wl,-soname=$(notdir $@) ++ $(CC) $(LDFLAGS) -shared -o $@ $^ -Wl,-soname=$(notdir $@) + + # Allow terminfo descriptions to be compiled into libterminfo + ${TERMINFODIR}/terminfo.cdb: $(TOOL_TIC) ${TERMINFODIR}/terminfo diff --git a/pkgs/om4/build.sh b/base/om4/build.sh similarity index 78% rename from pkgs/om4/build.sh rename to base/om4/build.sh index e3334a7..d7c01cc 100644 --- a/pkgs/om4/build.sh +++ b/base/om4/build.sh @@ -4,16 +4,20 @@ pkgrel=1 deps="musl" bad="" ext="doc" +auto_cross fetch() { curl -L "https://github.com/ibara/m4/releases/download/om4-6.7/om4-6.7.tar.gz" -o $pkgname-$pkgver.tar.xz tar -xf $pkgname-$pkgver.tar.xz + cd $pkgname-$pkgver + patch -p1 < ../../m4-hand-written-lexer.patch + patch -p1 < ../../configure.patch } build() { cd $pkgname-$pkgver ./configure --prefix=/ - make + make -j1 } package() { @@ -24,7 +28,7 @@ package() { } package_doc() { - cd $pkgname-$pkgver + cd $pkgname-$pkgver install -d $pkgdir/usr/share/man/man1 install -Dm644 m4.1 $pkgdir/usr/share/man/man1 } @@ -33,3 +37,7 @@ license() { cd $pkgname-$pkgver echo "Source are a combination of BSD and ISC licensed files" } + +backup() { + return +} diff --git a/base/om4/configure.patch b/base/om4/configure.patch new file mode 100644 index 0000000..4c1dbac --- /dev/null +++ b/base/om4/configure.patch @@ -0,0 +1,21 @@ +--- a/configure ++++ b/configure +@@ -10,16 +10,8 @@ + EOF + $CC -o conftest conftest.c > /dev/null 2>&1 + if [ $? -eq 0 ] ; then ++ cc="$CC" ++ return 0 +- ./conftest +- if [ $? -eq 0 ] ; then +- rm -f conftest conftest.c +- cc="$CC" +- return 0 +- else +- echo "could not build working executables" +- echo "Please ensure your C compiler is a native compiler" +- exit 1 +- fi + else + rm -f conftest conftest.c + fi diff --git a/base/om4/m4-hand-written-lexer.patch b/base/om4/m4-hand-written-lexer.patch new file mode 100644 index 0000000..307cf10 --- /dev/null +++ b/base/om4/m4-hand-written-lexer.patch @@ -0,0 +1,327 @@ +From edf250c633bef40e7e37dafc9fc393dd2ad9074f Mon Sep 17 00:00:00 2001 +From: Michael Forney +Date: Tue, 10 Apr 2018 13:37:14 -0700 +Subject: [PATCH] m4: Use hand-written lexer to avoid cycle in bootstrap + +--- + tokenizer.c | 191 +++++++++++++++++++++++++++++++++++++++++ + tokenizer.l | 109 ----------------------- + 2 files changed, 191 insertions(+), 109 deletions(-) + create mode 100644 tokenizer.c + delete mode 100644 tokenizer.l + +diff --git a/tokenizer.c b/tokenizer.c +new file mode 100644 +index 00000000000..fa19fc65035 +--- /dev/null ++++ b/tokenizer.c +@@ -0,0 +1,191 @@ ++/* $OpenBSD: tokenizer.l,v 1.10 2017/06/17 01:55:16 bcallah Exp $ */ ++/* ++ * Copyright (c) 2004 Marc Espie ++ * ++ * Permission to use, copy, modify, and distribute this software for any ++ * purpose with or without fee is hereby granted, provided that the above ++ * copyright notice and this permission notice appear in all copies. ++ * ++ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES ++ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF ++ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ++ * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES ++ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ++ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF ++ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. ++ */ ++#include "parser.h" ++#include ++#include ++#include ++#include ++#include ++#include ++#include ++#include ++ ++extern void m4_warnx(const char *, ...); ++extern int mimic_gnu; ++extern int32_t yylval; ++static const char *yypos; ++ ++void ++yy_scan_string(const char *s) ++{ ++ yypos = s; ++} ++ ++static int32_t ++number(const char *yytext, size_t yylen) ++{ ++ long l; ++ ++ errno = 0; ++ l = strtol(yytext, NULL, 0); ++ if (((l == LONG_MAX || l == LONG_MIN) && errno == ERANGE) || ++ l > INT32_MAX || l < INT32_MIN) ++ m4_warnx("numeric overflow in expr: %.*s", (int)yylen, yytext); ++ return l; ++} ++ ++static int32_t ++parse_radix(const char *yytext, size_t yylen) ++{ ++ long base; ++ char *next; ++ long l; ++ int d; ++ ++ l = 0; ++ base = strtol(yytext+2, &next, 0); ++ if (base > 36 || next == NULL) { ++ m4_warnx("error in number %.*s", (int)yylen, yytext); ++ } else { ++ next++; ++ while (*next != 0) { ++ if (*next >= '0' && *next <= '9') ++ d = *next - '0'; ++ else if (*next >= 'a' && *next <= 'z') ++ d = *next - 'a' + 10; ++ else { ++ assert(*next >= 'A' && *next <= 'Z'); ++ d = *next - 'A' + 10; ++ } ++ if (d >= base) { ++ m4_warnx("error in number %.*s", (int)yylen, yytext); ++ return 0; ++ } ++ l = base * l + d; ++ next++; ++ } ++ } ++ return l; ++} ++ ++static int ++isodigit(int c) ++{ ++ return c >= '0' && c <= '7'; ++} ++ ++int yylex(void) ++{ ++ const char *start; ++ ++next: ++ start = yypos; ++ switch (*yypos) { ++ case ' ': ++ case '\t': ++ case '\n': ++ ++yypos; ++ goto next; ++ case '<': ++ switch (yypos[1]) { ++ case '=': ++ yypos += 2; ++ return LE; ++ case '<': ++ yypos += 2; ++ return LSHIFT; ++ } ++ break; ++ case '>': ++ switch (yypos[1]) { ++ case '=': ++ yypos += 2; ++ return GE; ++ case '>': ++ yypos += 2; ++ return RSHIFT; ++ } ++ break; ++ case '=': ++ if (yypos[1] != '=') ++ break; ++ yypos += 2; ++ return EQ; ++ case '!': ++ if (yypos[1] != '=') ++ break; ++ yypos += 2; ++ return NE; ++ case '&': ++ if (yypos[1] != '&') ++ break; ++ yypos += 2; ++ return LAND; ++ case '|': ++ if (yypos[1] != '|') ++ break; ++ yypos += 2; ++ return LOR; ++ case '*': ++ if (!mimic_gnu || yypos[1] != '*') ++ break; ++ yypos += 2; ++ return EXPONENT; ++ case '0': ++ switch (*++yypos) { ++ case 'x': ++ case 'X': ++ if (!isxdigit(*++yypos)) ++ return ERROR; ++ do ++yypos; ++ while (isxdigit(*yypos)); ++ break; ++ case 'r': ++ case 'R': ++ if (!mimic_gnu) ++ break; ++ if (!isdigit(*++yypos)) ++ return ERROR; ++ do ++yypos; ++ while (isdigit(*yypos)); ++ if (*yypos != ':') ++ return ERROR; ++ if (!isalnum(*++yypos)) ++ return ERROR; ++ do ++yypos; ++ while (isalnum(*yypos)); ++ yylval = parse_radix(start, yypos - start); ++ return NUMBER; ++ default: ++ do ++yypos; ++ while (isodigit(*yypos)); ++ break; ++ } ++ yylval = number(start, yypos - start); ++ return NUMBER; ++ case '\0': ++ return '\0'; ++ } ++ if (isdigit(*yypos)) { ++ do ++yypos; ++ while (isdigit(*yypos)); ++ yylval = number(start, yypos - start); ++ return NUMBER; ++ } ++ ++ return *yypos++; ++} +diff --git a/tokenizer.l b/tokenizer.l +deleted file mode 100644 +index 94f02fb6085..00000000000 +--- a/tokenizer.l ++++ /dev/null +@@ -1,109 +0,0 @@ +-%{ +-/* $OpenBSD: tokenizer.l,v 1.10 2017/06/17 01:55:16 bcallah Exp $ */ +-/* +- * Copyright (c) 2004 Marc Espie +- * +- * Permission to use, copy, modify, and distribute this software for any +- * purpose with or without fee is hereby granted, provided that the above +- * copyright notice and this permission notice appear in all copies. +- * +- * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +- * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +- * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +- * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +- * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +- * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF +- * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. +- */ +-#include "parser.h" +-#include +-#include +-#include +-#include +-#include +- +-extern void m4_warnx(const char *, ...); +-extern int mimic_gnu; +-extern int32_t yylval; +- +-int32_t number(void); +-int32_t parse_radix(void); +-%} +- +-delim [ \t\n] +-ws {delim}+ +-hex 0[xX][0-9a-fA-F]+ +-oct 0[0-7]* +-dec [1-9][0-9]* +-radix 0[rR][0-9]+:[0-9a-zA-Z]+ +- +-%option noyywrap +- +-%% +-{ws} {/* just skip it */} +-{hex}|{oct}|{dec} { yylval = number(); return(NUMBER); } +-{radix} { if (mimic_gnu) { +- yylval = parse_radix(); return(NUMBER); +- } else { +- return(ERROR); +- } +- } +-"<=" { return(LE); } +-">=" { return(GE); } +-"<<" { return(LSHIFT); } +-">>" { return(RSHIFT); } +-"==" { return(EQ); } +-"!=" { return(NE); } +-"&&" { return(LAND); } +-"||" { return(LOR); } +-"**" { if (mimic_gnu) { return (EXPONENT); } } +-. { return yytext[0]; } +-%% +- +-int32_t +-number() +-{ +- long l; +- +- errno = 0; +- l = strtol(yytext, NULL, 0); +- if (((l == LONG_MAX || l == LONG_MIN) && errno == ERANGE) || +- l > INT32_MAX || l < INT32_MIN) +- m4_warnx("numeric overflow in expr: %s", yytext); +- return l; +-} +- +-int32_t +-parse_radix() +-{ +- long base; +- char *next; +- long l; +- int d; +- +- l = 0; +- base = strtol(yytext+2, &next, 0); +- if (base > 36 || next == NULL) { +- m4_warnx("error in number %s", yytext); +- } else { +- next++; +- while (*next != 0) { +- if (*next >= '0' && *next <= '9') +- d = *next - '0'; +- else if (*next >= 'a' && *next <= 'z') +- d = *next - 'a' + 10; +- else { +- assert(*next >= 'A' && *next <= 'Z'); +- d = *next - 'A' + 10; +- } +- if (d >= base) { +- m4_warnx("error in number %s", yytext); +- return 0; +- } +- l = base * l + d; +- next++; +- } +- } +- return l; +-} +- +-- +2.17.0 + diff --git a/pkgs/openssh/build.sh b/base/openssh/build.sh similarity index 81% rename from pkgs/openssh/build.sh rename to base/openssh/build.sh index 155094a..aa7d761 100644 --- a/pkgs/openssh/build.sh +++ b/base/openssh/build.sh @@ -1,5 +1,5 @@ pkgname=openssh -pkgver=8.6p1 +pkgver=8.8p1 fetch() { curl "https://cdn.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-$pkgver.tar.gz" -o $pkgname-$pkgver.tar.xz @@ -10,8 +10,8 @@ build() { cd $pkgname-$pkgver ./configure \ --prefix=/usr \ - --build=x86_64-unknown-linux-musl \ - --host=x86_64-unknown-linux-musl \ + --build=$TRIPLE \ + --host=$TRIPLE \ --libexecdir=/usr/lib make @@ -22,6 +22,10 @@ package() { make install DESTDIR=$pkgdir } +backup() { + return +} + license() { cd $pkgname-$pkgver cat LICENCE diff --git a/base/openssl/build.sh b/base/openssl/build.sh new file mode 100644 index 0000000..1be2319 --- /dev/null +++ b/base/openssl/build.sh @@ -0,0 +1,55 @@ +pkgname=openssl +pkgver=3.0.0 +ext="dev" +auto_cross + +fetch() { + curl "https://www.openssl.org/source/openssl-$pkgver.tar.gz" -o $pkgname-$pkgver.tar.xz + tar -xf $pkgname-$pkgver.tar.xz +} + +PREFIX=/usr +[ -z "$FOR_CROSS" ] || PREFIX=$FOR_CROSS_DIR + +build() { + cd $pkgname-$pkgver + ./Configure \ + --prefix=/$PREFIX \ + --openssldir=/etc/ssl \ + --libdir=lib \ + linux-generic64 \ + shared no-zlib no-async \ + no-comp no-idea no-mdc2 \ + no-rc5 no-ec2m no-sm2 \ + no-sm4 -no-ssl2 no-ssl3 \ + no-seed no-weak-ssl-ciphers \ + -Wa,--noexecstack + + make +} + +package() { + cd $pkgname-$pkgver + make install_sw DESTDIR=$pkgdir + if [ -z "$FOR_CROSS" ]; then + install -d $pkgdir/usr/sbin + install -Dm755 ../../update-ca.sh $pkgdir/usr/sbin/update-ca + else + rm -rf $pkgdir/$PREFIX/bin + fi +} + +backup() { + return +} + +license() { + cd $pkgname-$pkgver + + echo 'Copyright 20xx-20yy The OpenSSL Project Authors. All Rights Reserved.' + echo + echo 'Licensed under the Apache License 2.0 (the "License"). You may not use' + echo 'this file except in compliance with the License. You can obtain a copy' + echo 'in the file LICENSE in the source distribution or at' + echo 'https://www.openssl.org/source/license.html' +} diff --git a/base/openssl/update-ca.sh b/base/openssl/update-ca.sh new file mode 100755 index 0000000..040c441 --- /dev/null +++ b/base/openssl/update-ca.sh @@ -0,0 +1,2 @@ +#!/bin/sh +curl -L https://curl.haxx.se/ca/cacert.pem -o /etc/ssl/cert.pem diff --git a/base/oslo/build.sh b/base/oslo/build.sh new file mode 100644 index 0000000..947c8f9 --- /dev/null +++ b/base/oslo/build.sh @@ -0,0 +1,39 @@ +pkgname=oslo +pkgver=main + +fetch() { + curl -L "https://github.com/iglunix/oslo/archive/refs/heads/main.tar.gz" -o $pkgname-$pkgver.tar.gz + tar -xf $pkgname-$pkgver.tar.gz +} + +build() { + cd $pkgname-$pkgver + make ARCH=$ARCH +} + +case $ARCH in + aarch64) + _a=aa64 + ;; + x86_64) + _a=x64 + ;; + *) + exit 1 + ;; +esac + +package() { + cd $pkgname-$pkgver + install -Dm755 oslo.efi $pkgdir/boot/efi/boot/boot$_a.efi + install -Dm644 efi/oslo/entries.ini $pkgdir/boot/efi/oslo/entries.ini +} + +license() { + cd $pkgname-$pkgver + cat license.txt +} + +backup() { + echo boot/efi/oslo/entries.ini +} diff --git a/pkgs/perl/build.sh b/base/perl/build.sh similarity index 87% rename from pkgs/perl/build.sh rename to base/perl/build.sh index b5c85ec..19fd417 100644 --- a/pkgs/perl/build.sh +++ b/base/perl/build.sh @@ -1,8 +1,8 @@ pkgname=perl -pkgver=5.32.1 +pkgver=5.34.0 fetch() { - curl "https://www.cpan.org/src/5.0/perl-5.32.1.tar.gz" -o $pkgname-$pkgver.tar.xz + curl "https://www.cpan.org/src/5.0/perl-$pkgver.tar.gz" -o $pkgname-$pkgver.tar.xz tar -xf $pkgname-$pkgver.tar.xz } @@ -44,6 +44,11 @@ build() { package() { cd $pkgname-$pkgver make install DESTDIR=$pkgdir + rm -rf $pkgdir/usr/share/man +} + +backup() { + return } license() { diff --git a/pkgs/pkgconf/build.sh b/base/pkgconf/build.sh similarity index 100% rename from pkgs/pkgconf/build.sh rename to base/pkgconf/build.sh diff --git a/pkgs/python-mako/build.sh b/base/python-mako/build.sh similarity index 100% rename from pkgs/python-mako/build.sh rename to base/python-mako/build.sh diff --git a/base/python/build.sh b/base/python/build.sh new file mode 100644 index 0000000..dcff112 --- /dev/null +++ b/base/python/build.sh @@ -0,0 +1,55 @@ +pkgname=python +pkgver=3.10.4 +bad="" +ext="doc" +auto_cross + +fetch() { + curl "https://www.python.org/ftp/python/$pkgver/Python-$pkgver.tar.xz" -o $pkgname-$pkgver.tar.xz + tar -xf $pkgname-$pkgver.tar.xz + mv Python-$pkgver $pkgname-$pkgver +} + +build() { + cd $pkgname-$pkgver + ./configure \ + --prefix=/usr \ + --build=$HOST_TRIPLE \ + --host=$TRIPLE \ + --with-system-ffi=true \ + --with-ssl-default-suites=openssl \ + --without-ensure-pip \ + ax_cv_c_float_words_bigendian=no \ + ac_cv_buggy_getaddrinfo=no \ + ac_cv_file__dev_ptmx=yes \ + ac_cv_file__dev_ptc=no + make +} + +package() { + cd $pkgname-$pkgver + make install DESTDIR=$pkgdir + rm -r $pkgdir/usr/lib/python3.10/test + rm -r $pkgdir/usr/lib/python3.10/ctypes/test + rm -r $pkgdir/usr/lib/python3.10/distutils/tests + rm -r $pkgdir/usr/lib/python3.10/idlelib/idle_test + rm -r $pkgidr/usr/lib/python3.10/lib2to3/tests + rm -r $pkgidr/usr/lib/python3.10/sqlite3/test + rm -r $pkgdir/usr/lib/python3.10/tkinter/test + rm -r $pkgdir/usr/lib/python3.10/unittest/test + rm -r $pkgdir/usr/share + ln -sr $pkgdir/usr/bin/python3 $pkgdir/usr/bin/python +} + +package_doc() { + cd $pkgname-$pkgver + make install DESTDIR=$pkgdir + rm -r $pkgdir/lib + rm -r $pkgdir/bin + rm -r $pkgdir/include +} + +license() { + cd $pkgname-$pkgver + cat LICENSE +} diff --git a/pkgs/samurai/build.sh b/base/samurai/build.sh similarity index 87% rename from pkgs/samurai/build.sh rename to base/samurai/build.sh index 283208a..2e89749 100644 --- a/pkgs/samurai/build.sh +++ b/base/samurai/build.sh @@ -1,6 +1,7 @@ pkgver=1.2 pkgname=samurai pkgrel=1 +auto_cross fetch() { curl -L "http://github.com/michaelforney/samurai/releases/download/1.2/$pkgname-$pkgver.tar.gz" -o $pkgname-$pkgver.tar.gz @@ -9,7 +10,7 @@ fetch() { build() { cd $pkgname-$pkgver - samu + make LDFLAGS="$LDFLAGS" } package() { @@ -22,3 +23,7 @@ license() { cd $pkgname-$pkgver cat LICENSE } + +backup() { + return +} diff --git a/base/toybox/build.sh b/base/toybox/build.sh new file mode 100644 index 0000000..884e915 --- /dev/null +++ b/base/toybox/build.sh @@ -0,0 +1,51 @@ +pkgver=0.8.7 +pkgname=toybox +pkgrel=1 +deps="musl" + +fetch() { + curl -O "https://landley.net/toybox/downloads/toybox-$pkgver.tar.gz" + tar -xf $pkgname-$pkgver.tar.gz + curl "https://pci-ids.ucw.cz/v2.2/pci.ids" -o pci.ids + cd $pkgname-$pkgver + patch -p1 < ../../ls-colour.patch + patch -p1 < ../../mksh.patch + patch -p1 < ../../xxd-i.patch +} + +build() { + cd $pkgname-$pkgver + CPUS=1 bad --gmake gmake defconfig + sed 's|# CONFIG_SH is not set|CONFIG_SH=y|' .config > /tmp/_ + mv /tmp/_ .config + CPUS=1 bad --gmake gmake +} + +backup() { + return +} + +package() { + install -d $pkgdir/usr/share/misc + install -Dm 644 pci.ids $pkgdir/usr/share/misc + + cd $pkgname-$pkgver + bad --gmake gmake PREFIX=$pkgdir install + + # Provided by NetBSD Curses + rm $pkgdir/usr/bin/clear + rm $pkgdir/usr/bin/reset + + # LLVM Provides this + rm $pkgdir/usr/bin/readelf +# rm $pkgdir/usr/bin/tar + + # MKSH provides this + rm $pkgdir/bin/sh + rm $pkgdir/bin/bash +} + +license() { + cd $pkgname-$pkgver + cat LICENSE +} diff --git a/pkgs/toybox/ls-colour.patch b/base/toybox/ls-colour.patch similarity index 100% rename from pkgs/toybox/ls-colour.patch rename to base/toybox/ls-colour.patch diff --git a/base/toybox/lspci-fix-ids.patch b/base/toybox/lspci-fix-ids.patch new file mode 100644 index 0000000..04694a8 --- /dev/null +++ b/base/toybox/lspci-fix-ids.patch @@ -0,0 +1,55 @@ +--- a/toys/other/lspci.c ++++ b/toys/other/lspci.c +@@ -78,18 +78,45 @@ + + fseek(TT.db, 0, SEEK_SET); + while (!vbig || !dbig) { ++ int tc = 0; // tab count + s = p; + if (!fgets(s, sizeof(toybuf)-(p-toybuf)-1, TT.db)) break; +- while (isspace(*s)) s++; ++ while (*s == ' ') s++; + if (*s == '#') continue; +- if (vbig && s == p) break; +- if (strstart(&s, vbig ? device : vendor)) { +- if (vbig) dbig = s+2; +- else vbig = s+2; +- s += strlen(s); +- s[-1] = 0; // trim ending newline +- p = s + 1; ++ while (*s == '\t') { s++; tc++; } ++ switch (tc) { ++ case 0: ++ if (strstart(&s, vendor)) { ++ vbig = s + 2; ++ s += strlen(s); ++ s[-1] = 0; ++ p = s + 1; ++ } ++ break; ++ case 1: ++ if (vbig && strstart(&s, device)) { ++ dbig = s + 2; ++ s += strlen(s); ++ s[-1] = 0; ++ p = s + 1; ++ } ++ break; ++ case 2: ++ if (strstart(&s, vendor)) { ++ s+=5; ++ if (strstart(&s, device)) ++ printf("subven: %s\n", s); ++ } ++ break; + } ++ ++ // if (strstart(&s, vbig ? device : vendor)) { ++ // if (vbig) dbig = s+2; ++ // else vbig = s+2; ++ // s += strlen(s); ++ // s[-1] = 0; // trim ending newline ++ // p = s + 1; ++ // } + } + } diff --git a/base/toybox/mksh.patch b/base/toybox/mksh.patch new file mode 100644 index 0000000..16fe711 --- /dev/null +++ b/base/toybox/mksh.patch @@ -0,0 +1,35 @@ +--- a/scripts/genconfig.sh ++++ b/scripts/genconfig.sh +@@ -16,7 +16,7 @@ + # Symbol name is first argument, flags second, feed C file to stdin + probesymbol() + { +- probecc "${@:2}" 2>/dev/null && DEFAULT=y || DEFAULT=n ++ probecc "$2" 2>/dev/null && DEFAULT=y || DEFAULT=n + rm a.out 2>/dev/null + echo -e "config $1\n\tbool\n\tdefault $DEFAULT\n" || exit 1 + } +--- a/scripts/portability.sh ++++ b/scripts/portability.sh +@@ -35,7 +35,7 @@ + fi + + # Centos 7 bug workaround, EOL June 30 2024. TODO +-DASHN=-n; wait -n 2>/dev/null; [ $? -eq 2 ] && unset DASHN ++# DASHN=-n; wait -n 2>/dev/null; [ $? -eq 2 ] && unset DASHN + + # If the build is using gnu tools, make them behave less randomly. + export LANG=c +--- a/scripts/make.sh ++++ b/scripts/make.sh +@@ -76,8 +76,8 @@ + echo -e "\$BUILD lib/*.c $TOYFILES \$LINK -o $OUTNAME" + } + +-if ! cmp -s <(genbuildsh 2>/dev/null | head -n 5) \ +- <(head -n 5 "$GENDIR"/build.sh 2>/dev/null | $SED '5s/ -o .*//') ++if [ "$(genbuildsh 2>/dev/null | head -n 5)" != \ ++ "$(head -n 5 "$GENDIR"/build.sh 2>/dev/null | $SED '5s/ -o .*//')" ] + then + echo -n "Library probe" + diff --git a/base/toybox/xxd-i.patch b/base/toybox/xxd-i.patch new file mode 100644 index 0000000..fb1bc77 --- /dev/null +++ b/base/toybox/xxd-i.patch @@ -0,0 +1,46 @@ +--- a/toys/other/xxd.c ++++ b/toys/other/xxd.c +@@ -77,11 +77,13 @@ static void do_xxd(int fd, char *name) + + static void do_xxd_include(int fd, char *name) + { ++ long long total = 0; + int c = 1, i, len; + + // The original xxd outputs a header/footer if given a filename (not stdin). + // We don't, which means that unlike the original we can implement -ri. + while ((len = read(fd, toybuf, sizeof(toybuf))) > 0) { ++ total += len; + for (i = 0; i < len; ++i) { + printf("%s%#.02x", c > 1 ? ", " : " ", toybuf[i]); + if (c++ == TT.c) { +--- a/toys/other/xxd.c ++++ b/toys/other/xxd.c +@@ -80,7 +80,12 @@ + int c = 1, i, len; + + // The original xxd outputs a header/footer if given a filename (not stdin). +- // We don't, which means that unlike the original we can implement -ri. ++ // We don't, which means that unlike the original we can implement -ri ++ printf("unsigned char %s", isdigit(name[0]) ? "__": ""); ++ for (char *n = name; *n; n++) ++ putchar(*n == '.' ? '_' : *n); ++ puts("[] = {"); ++ + while ((len = read(fd, toybuf, sizeof(toybuf))) > 0) { + total += len; + for (i = 0; i < len; ++i) { +@@ -91,6 +96,13 @@ + } + } + } ++ puts("};"); ++ printf("unsigned int %s", isdigit(name[0]) ? "__": ""); ++ for (char *n = name; *n; n++) ++ putchar(*n == '.' ? '_' : *n); ++ ++ printf("_len = %lld;\n", total); ++ + if (len < 0) perror_msg_raw(name); + if (c > 1) xputc('\n'); + } diff --git a/pkgs/wpa_supplicant/build.sh b/base/wpa_supplicant/build.sh similarity index 94% rename from pkgs/wpa_supplicant/build.sh rename to base/wpa_supplicant/build.sh index 1eb62b0..c2efaf7 100644 --- a/pkgs/wpa_supplicant/build.sh +++ b/base/wpa_supplicant/build.sh @@ -25,7 +25,7 @@ build() { package() { cd $pkgname-$pkgver cd $pkgname - gmake install DESTDIR=$pkgdir BINDIR=/usr/sbin + bad --gmake gmake install DESTDIR=$pkgdir BINDIR=/usr/sbin } license() { diff --git a/pkgs/wpa_supplicant/config b/base/wpa_supplicant/config similarity index 100% rename from pkgs/wpa_supplicant/config rename to base/wpa_supplicant/config diff --git a/base/zlib-ng/build.sh b/base/zlib-ng/build.sh new file mode 100644 index 0000000..3193081 --- /dev/null +++ b/base/zlib-ng/build.sh @@ -0,0 +1,44 @@ +pkgname=zlib-ng +pkgver=2.0.5 + +fetch() { + curl -L "https://github.com/zlib-ng/zlib-ng/archive/refs/tags/$pkgver.tar.gz" -o $pkgname-$pkgver.tar.xz + tar -xf $pkgname-$pkgver.tar.xz + mkdir $pkgname-$pkgver/build +} + +build() { + cd $pkgname-$pkgver + cd build + + PREFIX=/usr + + [ -z "$WITH_CROSS" ] || cmake_extra_flags="-DCMAKE_CROSSCOMPILING=ON \ + -DCMAKE_SYSROOT=$WITH_CROSS_DIR \ + -DCMAKE_C_COMPILER_TARGET=$ARCH-linux-musl" + [ -z "$FOR_CROSS" ] || PREFIX=$FOR_CROSS_DIR + + cmake -G Ninja ../ \ + -DCMAKE_BUILD_TYPE=Release \ + -DCMAKE_INSTALL_PREFIX=$PREFIX \ + -DCMAKE_INSTALL_LIBDIR=lib \ + -DZLIB_COMPAT=ON \ + $cmake_extra_flags + + samu +} + +package() { + cd $pkgname-$pkgver + cd build + DESTDIR=$pkgdir samu install +} + +license() { + cd $pkgname-$pkgver + cat LICENSE.md +} + +backup() { + return +} diff --git a/pkgs/zstd/build.sh b/base/zstd/build.sh similarity index 72% rename from pkgs/zstd/build.sh rename to base/zstd/build.sh index f0872bb..fd9e28d 100644 --- a/pkgs/zstd/build.sh +++ b/base/zstd/build.sh @@ -1,5 +1,6 @@ pkgname=zstd -pkgver=1.5.0 +pkgver=1.5.2 +auto_cross fetch() { curl -L "https://github.com/facebook/zstd/releases/download/v$pkgver/zstd-$pkgver.tar.gz" -o $pkgname-$pkgver.tar.xz @@ -9,12 +10,12 @@ fetch() { build() { cd $pkgname-$pkgver - gmake + bad --gmake gmake } package() { cd $pkgname-$pkgver - gmake install PREFIX=/usr DESTDIR=$pkgdir + bad --gmake gmake install PREFIX=/usr DESTDIR=$pkgdir } license() { @@ -22,3 +23,7 @@ license() { cat LICENSE # cat COPYING } + +backup() { + return +} diff --git a/bootstrap/README.md b/bootstrap/README.md new file mode 100644 index 0000000..36853bf --- /dev/null +++ b/bootstrap/README.md @@ -0,0 +1,3 @@ +# Bootstrap +These packages are not meant to be used in a complete Iglunix system but are +ment as a stepping stone to build the full packages. diff --git a/bootstrap/rust/build.sh b/bootstrap/rust/build.sh new file mode 100644 index 0000000..1a08efd --- /dev/null +++ b/bootstrap/rust/build.sh @@ -0,0 +1,33 @@ +pkgname=rust +pkgver=beta + +fetch() { + curl "https://static.rust-lang.org/dist/rust-$pkgver-$ARCH-unknown-linux-musl.tar.gz" -o rust.tar.gz + tar -xf rust.tar.gz +} + +build() { + [ -f libgcc_s.so ] \ + || clang -shared -o libgcc_s.so \ + -Wl,--allow-multiple-definition -Wl,--whole-archive \ + $(clang -print-libgcc-file-name) -lunwind +} + +package() { + [ -f $pkgdir/opt/rust/lib/rustlib/uninstall.sh ] \ + || ./rust-$pkgver-$ARCH-unknown-linux-musl/install.sh \ + --disable-ldconfig \ + --destdir=$pkgdir \ + --prefix=/opt/rust + + [ -f $pkgdir/opt/rust/lib/libgcc_s.so.1 ] \ + || cp ./libgcc_s.so $pkgdir/opt/rust/lib/libgcc_s.so.1 +} + +backup() { + return +} + +license() { + return +} diff --git a/example.build.sh b/example.build.sh deleted file mode 100644 index a49db48..0000000 --- a/example.build.sh +++ /dev/null @@ -1,22 +0,0 @@ -fetch() { - # in ./src - # for fetching and patching source files -} - -build() { - # in ./src - # configure and build - ./configure --prefix=/ - # make is bmake - make -} - -package() { - # in ./src - # make is bmake - make install DESTDIR=$pkgdir - # samurai is the default ninja implementation - DESTDIR=$pkgdir samu install - # for rust programs we just do this - install -Dm755 target/release/$pkgname $pkgdir/bin -} diff --git a/pkgs/alsa-lib/build.sh b/extra/alsa-lib/build.sh similarity index 100% rename from pkgs/alsa-lib/build.sh rename to extra/alsa-lib/build.sh diff --git a/extra/autossh/build.sh b/extra/autossh/build.sh new file mode 100644 index 0000000..a4473d3 --- /dev/null +++ b/extra/autossh/build.sh @@ -0,0 +1,34 @@ +pkgname=autossh +pkgver=1.4g + +fetch() { + curl "https://www.harding.motd.ca/autossh/autossh-$pkgver.tgz" -LO + tar -xf $pkgname-$pkgver.tgz +} + +build() { + cd $pkgname-$pkgver + ./configure \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --build=$TRIPLE \ + --host=$TRIPLE + + make +} + +package() { + cd $pkgname-$pkgver + make install DESTDIR=$pkgdir +} + +backup() { + return +} + +license() { + cd $pkgname-$pkgver + cat LICENSE +# cat COPYING +} diff --git a/pkgs/bat/build.sh b/extra/bat/build.sh similarity index 100% rename from pkgs/bat/build.sh rename to extra/bat/build.sh diff --git a/pkgs/brotli/build.sh b/extra/brotli/build.sh similarity index 100% rename from pkgs/brotli/build.sh rename to extra/brotli/build.sh diff --git a/extra/bzip2/build.sh b/extra/bzip2/build.sh new file mode 100644 index 0000000..faba4c3 --- /dev/null +++ b/extra/bzip2/build.sh @@ -0,0 +1,52 @@ +pkgname=bzip2 +pkgver=1.0.8 +ext=dev + +fetch() { + curl "https://sourceware.org/pub/bzip2/$pkgname-$pkgver.tar.gz" -o $pkgname-$pkgver.tar.xz + tar -xf $pkgname-$pkgver.tar.xz +} + +build() { + cd $pkgname-$pkgver + + make -f Makefile-libbz2_so CC=cc +} + +package() { + cd $pkgname-$pkgver + install -d $pkgdir/usr/lib/ + install -Dm755 ./libbz2.so.$pkgver $pkgdir/usr/lib/ + ln -sr $pkgdir/usr/lib/libbz2.so.$pkgver $pkgdir/usr/lib/libbz2.so + ln -sr $pkgdir/usr/lib/libbz2.so.$pkgver $pkgdir/usr/lib/libbz2.so.1 + ln -sr $pkgdir/usr/lib/libbz2.so.$pkgver $pkgdir/usr/lib/libbz2.so.1.0 +} + +package_dev() { + cd $pkgname-$pkgver + install -d $pkgdir/usr/include/ + install -Dm644 ./bzlib.h $pkgdir/usr/include/ + install -d $pkgdir/usr/share/pkgconfig/ + + cat > $pkgdir/usr/share/pkgconfig/bzip2.pc << EOF +prefix=/usr +exec_prefix=/usr +bindir=${exec_prefix}/bin +libdir=${exec_prefix}/lib +includedir=${prefix}/include + +Name: bzip2 +Description: A file compression library +Version: @VERSION@ +Libs: -L${libdir} -lbz2 +Cflags: -I${includedir} +EOF + + +} + +license() { + cd $pkgname-$pkgver + cat LICENSE +# cat COPYING +} diff --git a/extra/cbindgen/build.sh b/extra/cbindgen/build.sh new file mode 100644 index 0000000..ee4302c --- /dev/null +++ b/extra/cbindgen/build.sh @@ -0,0 +1,30 @@ +pkgname=cbindgen +pkgver=0.20.0 + +_clear_vendor_checksums() { + sed -i 's/\("files":{\)[^}]*/\1/' vendor/$1/.cargo-checksum.json +} + +fetch() { + curl -L "https://github.com/eqrion/cbindgen/archive/refs/tags/v$pkgver.tar.gz" -o $pkgname-$pkgver.tar.xz + tar -xf $pkgname-$pkgver.tar.xz + cd $pkgname-$pkgver + mkdir -p .cargo + cargo vendor > .cargo/config +} + +build() { + cd $pkgname-$pkgver + cargo build --release --locked --all-features +} + +package() { + cd $pkgname-$pkgver + install -Dm755 target/release/$pkgname $pkgdir/usr/bin/$pkgname +} + +license() { + cd $pkgname-$pkgver + cat LICENSE +# cat COPYING +} diff --git a/pkgs/ccache/build.sh b/extra/ccache/build.sh similarity index 100% rename from pkgs/ccache/build.sh rename to extra/ccache/build.sh diff --git a/pkgs/distcc/build.sh b/extra/distcc/build.sh similarity index 92% rename from pkgs/distcc/build.sh rename to extra/distcc/build.sh index 8a82dd2..eddca3e 100644 --- a/pkgs/distcc/build.sh +++ b/extra/distcc/build.sh @@ -15,12 +15,12 @@ build() { --host=x86_64-unknown-linux-musl \ --without-libiberty - gmake + bad --gmake gmake } package() { cd $pkgname-$pkgver - gmake install DESTDIR=$pkgdir + bad --gmake gmake install DESTDIR=$pkgdir install -d $pkgdir/usr/lib/distcc ln -sr $pkgdir/usr/bin/distcc $pkgdir/usr/lib/distcc/cc diff --git a/extra/editorconfig-core-c/build.sh b/extra/editorconfig-core-c/build.sh new file mode 100644 index 0000000..17c6e5e --- /dev/null +++ b/extra/editorconfig-core-c/build.sh @@ -0,0 +1,30 @@ +pkgname=editorconfig-core-c +pkgver=0.12.5 + +fetch() { + curl -L "https://github.com/editorconfig/editorconfig-core-c/archive/refs/tags/v$pkgver.tar.gz" -o $pkgname-$pkgver.tar.xz + tar -xf $pkgname-$pkgver.tar.xz + mkdir $pkgname-$pkgver/build +} + +build() { + cd $pkgname-$pkgver + cd build + cmake -G Ninja ../ \ + -DCMAKE_BUILD_TYPE=Release \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DCMAKE_INSTALL_LIBDIR=lib + samu +} + +package() { + cd $pkgname-$pkgver + cd build + DESTDIR=$pkgdir samu install +} + +license() { + cd $pkgname-$pkgver + cat LICENSE +# cat COPYING +} diff --git a/pkgs/exa/build.sh b/extra/exa/build.sh similarity index 100% rename from pkgs/exa/build.sh rename to extra/exa/build.sh diff --git a/pkgs/extra-cmake-modules/build.sh b/extra/extra-cmake-modules/build.sh similarity index 70% rename from pkgs/extra-cmake-modules/build.sh rename to extra/extra-cmake-modules/build.sh index 7d64ce3..af0cc3f 100644 --- a/pkgs/extra-cmake-modules/build.sh +++ b/extra/extra-cmake-modules/build.sh @@ -1,8 +1,9 @@ pkgname=extra-cmake-modules -pkgver=5.82.0 +_ver_maj_min=5.82 +pkgver=$_ver_maj_min.0 fetch() { - curl -L "https://download.kde.org/stable/frameworks/5.81/extra-cmake-modules-5.81.0.tar.xz" -o $pkgname-$pkgver.tar.xz + curl -L "https://download.kde.org/stable/frameworks/$_ver_maj_min/extra-cmake-modules-$pkgver.tar.xz" -o $pkgname-$pkgver.tar.xz tar -xf $pkgname-$pkgver.tar.xz mkdir $pkgname-$pkgver/build } diff --git a/pkgs/fish/build.sh b/extra/fish/build.sh similarity index 100% rename from pkgs/fish/build.sh rename to extra/fish/build.sh diff --git a/pkgs/fish/git_version_gen.patch b/extra/fish/git_version_gen.patch similarity index 100% rename from pkgs/fish/git_version_gen.patch rename to extra/fish/git_version_gen.patch diff --git a/pkgs/fish/output_tputs_cast.patch b/extra/fish/output_tputs_cast.patch similarity index 100% rename from pkgs/fish/output_tputs_cast.patch rename to extra/fish/output_tputs_cast.patch diff --git a/pkgs/glow/build.sh b/extra/glow/build.sh similarity index 100% rename from pkgs/glow/build.sh rename to extra/glow/build.sh diff --git a/pkgs/go/build.sh b/extra/go/build.sh similarity index 100% rename from pkgs/go/build.sh rename to extra/go/build.sh diff --git a/extra/gyp/build.sh b/extra/gyp/build.sh new file mode 100644 index 0000000..eb76430 --- /dev/null +++ b/extra/gyp/build.sh @@ -0,0 +1,23 @@ +pkgname=gyp +pkgver=master + +fetch() { + curl -L "https://github.com/chromium/gyp/archive/refs/heads/master.tar.gz" -o $pkgname-$pkgver.tar.xz + tar -xf $pkgname-$pkgver.tar.xz +} + +build() { + cd $pkgname-$pkgver + python setup.py build +} + +package() { + cd $pkgname-$pkgver + python setup.py install --root=$pkgdir +} + +license() { + cd $pkgname-$pkgver + cat LICENSE +# cat COPYING +} diff --git a/pkgs/heirloom-doctools/build.sh b/extra/heirloom-doctools/build.sh similarity index 84% rename from pkgs/heirloom-doctools/build.sh rename to extra/heirloom-doctools/build.sh index d38e9d0..bece1b7 100644 --- a/pkgs/heirloom-doctools/build.sh +++ b/extra/heirloom-doctools/build.sh @@ -15,18 +15,18 @@ fetch() { build() { cd $pkgname-$pkgver ./configure - gmake + bad --gmake gmake } package() { cd $pkgname-$pkgver - gmake install ROOT=$pkgdir + bad --gmake gmake install ROOT=$pkgdir rm -r $pkgdir/usr/share } package_doc() { cd $pkgname-$pkgver - gmake install ROOT=$pkgdir + bad --gmake gmake install ROOT=$pkgdir rm -r $pkgdir/usr/lib rm -r $pkgdir/usr/bin } diff --git a/pkgs/heirloom-doctools/mk.config b/extra/heirloom-doctools/mk.config similarity index 100% rename from pkgs/heirloom-doctools/mk.config rename to extra/heirloom-doctools/mk.config diff --git a/extra/json-c/build.sh b/extra/json-c/build.sh new file mode 100644 index 0000000..5a15c94 --- /dev/null +++ b/extra/json-c/build.sh @@ -0,0 +1,30 @@ +pkgname=json-c +pkgver=0.15 + +fetch() { + curl -L "https://s3.amazonaws.com/json-c_releases/releases/json-c-$pkgver.tar.gz" -o $pkgname-$pkgver.tar.xz + tar -xf $pkgname-$pkgver.tar.xz + mkdir $pkgname-$pkgver/build +} + +build() { + cd $pkgname-$pkgver + cd build + cmake -G Ninja ../ \ + -DCMAKE_BUILD_TYPE=Release \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DCMAKE_INSTALL_LIBDIR=lib + samu +} + +package() { + cd $pkgname-$pkgver + cd build + DESTDIR=$pkgdir samu install +} + +license() { + cd $pkgname-$pkgver + cat LICENSE +# cat COPYING +} diff --git a/extra/kak-lsp/build.sh b/extra/kak-lsp/build.sh new file mode 100644 index 0000000..5b5f296 --- /dev/null +++ b/extra/kak-lsp/build.sh @@ -0,0 +1,24 @@ +pkgname=kak-lsp +pkgver=9.0.0 + +fetch() { + curl -L "https://github.com/kak-lsp/kak-lsp/archive/v$pkgver.tar.gz" -o $pkgname-$pkgver.tar.xz + tar -xf $pkgname-$pkgver.tar.xz +} + +build() { + cd $pkgname-$pkgver + cargo build --release --locked --all-features +} + +package() { + cd $pkgname-$pkgver + install -Dm755 target/release/$pkgname $pkgdir/usr/bin/ + install -Dm644 rc/lsp.kak $pkgdir/usr/share/kak-lsp/rc/ + install -Dm644 kak-lsp.toml $pkgdir/usr/share/kak-lsp/examples/ +} + +license() { + cd $pkgname-$pkgver + cat UNLICENSE +} diff --git a/extra/libarchive/build.sh b/extra/libarchive/build.sh new file mode 100644 index 0000000..f0520e2 --- /dev/null +++ b/extra/libarchive/build.sh @@ -0,0 +1,28 @@ +pkgname=libarchive +pkgver=3.5.1 + +fetch() { + curl "http://libarchive.org/downloads/libarchive-$pkgver.tar.xz" -o $pkgname-$pkgver.tar.xz + tar -xf $pkgname-$pkgver.tar.xz +} + +build() { + cd $pkgname-$pkgver + ./configure \ + --prefix=/usr \ + --build=$TRIPLE \ + --host=$TRIPLE + + make +} + +package() { + cd $pkgname-$pkgver + make install DESTDIR=$pkgdir +} + +license() { + cd $pkgname-$pkgver + cat LICENSE +# cat COPYING +} diff --git a/extra/libevent/build.sh b/extra/libevent/build.sh new file mode 100644 index 0000000..f4b80b0 --- /dev/null +++ b/extra/libevent/build.sh @@ -0,0 +1,29 @@ +pkgname=libevent +pkgver=2.1.12 + +fetch() { + curl -L "https://github.com/libevent/libevent/releases/download/release-$pkgver-stable/libevent-$pkgver-stable.tar.gz" -o $pkgname-$pkgver.tar.xz + tar -xf $pkgname-$pkgver.tar.xz + mv libevent-$pkgver-stable $pkgname-$pkgver +} + +build() { + cd $pkgname-$pkgver + ./configure \ + --prefix=/usr \ + --build=$TRIPLE \ + --host=$TRIPLE + + make +} + +package() { + cd $pkgname-$pkgver + make install DESTDIR=$pkgdir +} + +license() { + cd $pkgname-$pkgver + cat LICENSE +# cat COPYING +} diff --git a/pkgs/libexecinfo/build.sh b/extra/libexecinfo/build.sh similarity index 100% rename from pkgs/libexecinfo/build.sh rename to extra/libexecinfo/build.sh diff --git a/pkgs/librespot/build.sh b/extra/librespot/build.sh similarity index 100% rename from pkgs/librespot/build.sh rename to extra/librespot/build.sh diff --git a/pkgs/libxml2/build.sh b/extra/libxml2/build.sh similarity index 78% rename from pkgs/libxml2/build.sh rename to extra/libxml2/build.sh index e92fd15..ce6120b 100644 --- a/pkgs/libxml2/build.sh +++ b/extra/libxml2/build.sh @@ -11,17 +11,17 @@ fetch() { build() { cd $pkgname-$pkgver ./configure --prefix=/usr --without-python - gmake + bad --gmake gmake } package() { cd $pkgname-$pkgver - gmake install DESTDIR=$pkgdir + bad --gmake gmake install DESTDIR=$pkgdir } package_dev() { cd $pkgname-$pkgver - gmake install DESTDIR=$pkgdir + bad --gmake gmake install DESTDIR=$pkgdir } license() { diff --git a/extra/lua/build.sh b/extra/lua/build.sh new file mode 100644 index 0000000..a15858a --- /dev/null +++ b/extra/lua/build.sh @@ -0,0 +1,28 @@ +pkgname=lua +pkgver=5.4.3 + +fetch() { + curl "http://www.lua.org/ftp/lua-$pkgver.tar.gz" -o $pkgname-$pkgver.tar.gz + tar -xf $pkgname-$pkgver.tar.gz +} + +build() { + cd $pkgname-$pkgver + ./configure \ + --prefix=/usr \ + --build=$TRIPLE \ + --host=$TRIPLE + + make CC=cc +} + +package() { + cd $pkgname-$pkgver + make install INSTALL_TOP=$pkgdir/usr +} + +license() { + cd $pkgname-$pkgver + cat LICENSE +# cat COPYING +} diff --git a/pkgs/lynx/build.sh b/extra/lynx/build.sh similarity index 88% rename from pkgs/lynx/build.sh rename to extra/lynx/build.sh index dad99b4..5f0f2d6 100644 --- a/pkgs/lynx/build.sh +++ b/extra/lynx/build.sh @@ -16,12 +16,12 @@ build() { --build=x86_64-unknown-linux-musl \ --host=x86_64-unknown-linux-musl - gmake + bad --gmake gmake } package() { cd $pkgname-$pkgver - gmake install DESTDIR=$pkgdir + bad --gmake gmake install DESTDIR=$pkgdir } license() { diff --git a/pkgs/mold/build.sh b/extra/mold/build.sh similarity index 87% rename from pkgs/mold/build.sh rename to extra/mold/build.sh index 38e0d09..8e42f09 100644 --- a/pkgs/mold/build.sh +++ b/extra/mold/build.sh @@ -11,12 +11,12 @@ fetch() { build() { cd $pkgname-$pkgver - gmake + bad --gmake gmake } package() { cd $pkgname-$pkgver - gmake install DESTDIR=$pkgdir + bad --gmake gmake install DESTDIR=$pkgdir ln -sr $pkgdir/usr/bin/mold $pkgdir/usr/bin/ld.mold } diff --git a/pkgs/mold/musl.patch b/extra/mold/musl.patch similarity index 100% rename from pkgs/mold/musl.patch rename to extra/mold/musl.patch diff --git a/pkgs/ncspot/build.sh b/extra/ncspot/build.sh similarity index 99% rename from pkgs/ncspot/build.sh rename to extra/ncspot/build.sh index 5840834..b634376 100644 --- a/pkgs/ncspot/build.sh +++ b/extra/ncspot/build.sh @@ -1,5 +1,5 @@ pkgname=ncspot -pkgver=0.7.3 +pkgver=0.8.1 _clear_vendor_checksums() { sed -i 's/\("files":{\)[^}]*/\1/' vendor/$1/.cargo-checksum.json diff --git a/pkgs/ncspot/cursive_ptr.patch b/extra/ncspot/cursive_ptr.patch similarity index 100% rename from pkgs/ncspot/cursive_ptr.patch rename to extra/ncspot/cursive_ptr.patch diff --git a/extra/nodejs/build.sh b/extra/nodejs/build.sh new file mode 100644 index 0000000..8e54976 --- /dev/null +++ b/extra/nodejs/build.sh @@ -0,0 +1,38 @@ +pkgname=nodejs +pkgver=16.6.1 + +fetch() { + curl -L "https://nodejs.org/dist/v$pkgver/node-v$pkgver.tar.gz" -o $pkgname-$pkgver.tar.xz + tar -xf $pkgname-$pkgver.tar.xz + mv node-v$pkgver $pkgname-$pkgver + cd $pkgname-$pkgver + sed -i 's/-latomic//' node.gyp +} + +build() { + cd $pkgname-$pkgver + ./configure \ + --shared-zlib \ + --shared-openssl \ + --with-intl=none \ + --without-etw \ + --without-dtrace \ + --without-report \ + --without-node-snapshot \ + --without-node-code-cache \ + --ninja + + samu -C out/Release +} + +package() { + cd $pkgname-$pkgver + + ./tools/install.py install $pkgdir /usr +} + +license() { + cd $pkgname-$pkgver + cat LICENSE +# cat COPYING +} diff --git a/extra/nodejs/remove-latomic.patch b/extra/nodejs/remove-latomic.patch new file mode 100644 index 0000000..81e2f69 --- /dev/null +++ b/extra/nodejs/remove-latomic.patch @@ -0,0 +1,27 @@ +From 8dbc49deefb50f4af05710d3e6ad1ca7ff6dbfac Mon Sep 17 00:00:00 2001 +From: Ishimoto Shinobu +Date: Sun, 21 Feb 2021 09:43:21 +0900 +Subject: [PATCH] remove -latomic library + +Signed-off-by: Ishimoto Shinobu +--- + node.gyp | 3 --- + 1 file changed, 3 deletions(-) + +diff --git a/node.gyp b/node.gyp +index 131461de..051d2816 100644 +--- a/node.gyp ++++ b/node.gyp +@@ -343,9 +343,6 @@ + '-Wl,-bnoerrmsg', + ], + }], +- ['OS == "linux" and llvm_version != "0.0"', { +- 'libraries': ['-latomic'], +- }], + ], + }, + +-- +2.29.2 + diff --git a/extra/nss/build.sh b/extra/nss/build.sh new file mode 100644 index 0000000..231f624 --- /dev/null +++ b/extra/nss/build.sh @@ -0,0 +1,86 @@ +pkgname=nss +pkgver=3.69 + +fetch() { + curl "https://ftp.mozilla.org/pub/security/nss/releases/NSS_3_69_RTM/src/nss-3.69-with-nspr-4.32.tar.gz" -o $pkgname-$pkgver.tar.xz + tar -xf $pkgname-$pkgver.tar.xz +} + +build() { + cd $pkgname-$pkgver + cd $pkgname + + sed -i '/-no-integrated-as/d' ./lib/freebl/Makefile + sed -i '/-no-integrated-as/d' ./lib/freebl/freebl.gyp + sed -i '/-no-integrated-as/d' ./lib/freebl/freebl_base.gypi + + sed -i 's/bash/zsh/g' build.sh + ./build.sh --opt --disable-tests + +} + +package() { + srcdir=$(pwd)/.. + cd $pkgname-$pkgver + + install -m755 -d "$pkgdir"/usr/lib/pkgconfig + install -m755 -d "$pkgdir"/usr/bin + install -m755 -d "$pkgdir"/usr/include/nss/private + + NSS_VMAJOR=$(awk '/#define.*NSS_VMAJOR/ {print $3}' nss/lib/nss/nss.h) + NSS_VMINOR=$(awk '/#define.*NSS_VMINOR/ {print $3}' nss/lib/nss/nss.h) + NSS_VPATCH=$(awk '/#define.*NSS_VPATCH/ {print $3}' nss/lib/nss/nss.h) + + # pkgconfig files + local _pc; for _pc in nss.pc nss-util.pc nss-softokn.pc; do + sed "$srcdir"/$_pc.in \ + -e "s,%libdir%,/usr/lib,g" \ + -e "s,%prefix%,/usr,g" \ + -e "s,%exec_prefix%,/usr/bin,g" \ + -e "s,%includedir%,/usr/include/nss,g" \ + -e "s,%SOFTOKEN_VERSION%,$pkgver,g" \ + -e "s,%NSPR_VERSION%,$pkgver,g" \ + -e "s,%NSS_VERSION%,$pkgver,g" \ + -e "s,%NSSUTIL_VERSION%,$pkgver,g" \ + > "$pkgdir"/usr/lib/pkgconfig/$_pc + done + ln -sf nss.pc "$pkgdir"/usr/lib/pkgconfig/mozilla-nss.pc + chmod 644 "$pkgdir"/usr/lib/pkgconfig/*.pc + + # nss-config + sed "$srcdir"/nss-config.in \ + -e "s,@libdir@,/usr/lib,g" \ + -e "s,@prefix@,/usr/bin,g" \ + -e "s,@exec_prefix@,/usr/bin,g" \ + -e "s,@includedir@,/usr/include/nss,g" \ + -e "s,@MOD_MAJOR_VERSION@,${NSS_VMAJOR},g" \ + -e "s,@MOD_MINOR_VERSION@,${NSS_VMINOR},g" \ + -e "s,@MOD_PATCH_VERSION@,${NSS_VPATCH},g" \ + > "$pkgdir"/usr/bin/nss-config + chmod 755 "$pkgdir"/usr/bin/nss-config + local minor=${pkgver#*.} + minor=${minor%.*} + for file in $(find dist/Release/lib -name "*.so"); do + install -m755 $file \ + "$pkgdir"/usr/lib/${file##*/}.$minor + ln -s ${file##*/}.$minor "$pkgdir"/usr/lib/${file##*/} + done + install -m644 dist/Release/lib/*.a "$pkgdir"/usr/lib/ + install -m644 dist/Release/lib/*.chk "$pkgdir"/usr/lib/ + + for file in certutil cmsutil crlutil modutil pk12util shlibsign \ + signtool signver ssltap; do + install -m755 dist/Release/bin/$file "$pkgdir"/usr/bin/ + done + install -m644 dist/public/nss/*.h "$pkgdir"/usr/include/nss/ + install -m644 dist/private/nss/blapi.h dist/private/nss/alghmac.h "$pkgdir"/usr/include/nss/private/ + + + +} + +license() { + cd $pkgname-$pkgver + cat LICENSE +# cat COPYING +} diff --git a/extra/nss/nss-config.in b/extra/nss/nss-config.in new file mode 100644 index 0000000..2daf038 --- /dev/null +++ b/extra/nss/nss-config.in @@ -0,0 +1,144 @@ +#!/bin/sh + +prefix=@prefix@ + +major_version=@MOD_MAJOR_VERSION@ +minor_version=@MOD_MINOR_VERSION@ +patch_version=@MOD_PATCH_VERSION@ + +usage() +{ + cat <&2 +fi + +lib_ssl=yes +lib_smime=yes +lib_nss=yes +lib_nssutil=yes + +while test $# -gt 0; do + case "$1" in + -*=*) optarg=`echo "$1" | sed 's/[-_a-zA-Z0-9]*=//'` ;; + *) optarg= ;; + esac + + case $1 in + --prefix=*) + prefix=$optarg + ;; + --prefix) + echo_prefix=yes + ;; + --exec-prefix=*) + exec_prefix=$optarg + ;; + --exec-prefix) + echo_exec_prefix=yes + ;; + --includedir=*) + includedir=$optarg + ;; + --includedir) + echo_includedir=yes + ;; + --libdir=*) + libdir=$optarg + ;; + --libdir) + echo_libdir=yes + ;; + --version) + echo ${major_version}.${minor_version}.${patch_version} + ;; + --cflags) + echo_cflags=yes + ;; + --libs) + echo_libs=yes + ;; + ssl) + lib_ssl=yes + ;; + smime) + lib_smime=yes + ;; + nss) + lib_nss=yes + ;; + nssutil) + lib_nssutil=yes + ;; + *) + usage 1 1>&2 + ;; + esac + shift +done + +# Set variables that may be dependent upon other variables +if test -z "$exec_prefix"; then + exec_prefix=`pkg-config --variable=exec_prefix nss` +fi +if test -z "$includedir"; then + includedir=`pkg-config --variable=includedir nss` +fi +if test -z "$libdir"; then + libdir=`pkg-config --variable=libdir nss` +fi + +if test "$echo_prefix" = "yes"; then + echo $prefix +fi + +if test "$echo_exec_prefix" = "yes"; then + echo $exec_prefix +fi + +if test "$echo_includedir" = "yes"; then + echo $includedir +fi + +if test "$echo_libdir" = "yes"; then + echo $libdir +fi + +if test "$echo_cflags" = "yes"; then + echo -I$includedir +fi + +if test "$echo_libs" = "yes"; then + libdirs="-Wl,-rpath-link,$libdir -L$libdir" + if test -n "$lib_ssl"; then + libdirs="$libdirs -lssl${major_version}" + fi + if test -n "$lib_smime"; then + libdirs="$libdirs -lsmime${major_version}" + fi + if test -n "$lib_nss"; then + libdirs="$libdirs -lnss${major_version}" + fi + if test -n "$lib_nssutil"; then + libdirs="$libdirs -lnssutil${major_version}" + fi + echo $libdirs +fi diff --git a/extra/nss/nss-softokn.pc.in b/extra/nss/nss-softokn.pc.in new file mode 100644 index 0000000..50485ac --- /dev/null +++ b/extra/nss/nss-softokn.pc.in @@ -0,0 +1,11 @@ +prefix=%prefix% +exec_prefix=%exec_prefix% +libdir=%libdir% +includedir=%includedir% + +Name: NSS-SOFTOKN +Description: Network Security Services Softoken PKCS #11 Module +Version: %SOFTOKEN_VERSION% +Requires: nspr >= %NSPR_VERSION%, nss-util >= %NSSUTIL_VERSION% +Libs: -lfreebl3 -lnssdbm3 -lsoftokn3 +Cflags: -I${includedir}/private diff --git a/extra/nss/nss-util.pc.in b/extra/nss/nss-util.pc.in new file mode 100644 index 0000000..e2b4551 --- /dev/null +++ b/extra/nss/nss-util.pc.in @@ -0,0 +1,10 @@ +_prefix=%exec_prefix% +libdir=%libdir% +includedir=%includedir% + +Name: NSS-UTIL +Description: Network Security Services Utility Library +Version: %NSSUTIL_VERSION% +Requires: nspr >= %NSPR_VERSION% +Libs: -L${libdir} -lnssutil3 +Cflags: -I${includedir} diff --git a/extra/nss/nss.pc.in b/extra/nss/nss.pc.in new file mode 100644 index 0000000..a171e22 --- /dev/null +++ b/extra/nss/nss.pc.in @@ -0,0 +1,10 @@ +prefix=%exec_prefix% +libdir=%libdir% +includedir=%includedir% + +Name: NSS +Description: Network Security Services +Version: %NSS_VERSION% +Requires: nspr >= %NSPR_VERSION% +Libs: -lssl3 -lsmime3 -lnss3 -lnssutil3 +Cflags: -I${includedir} diff --git a/pkgs/openpam/build.sh b/extra/openpam/build.sh similarity index 100% rename from pkgs/openpam/build.sh rename to extra/openpam/build.sh diff --git a/pkgs/flex/build.sh b/extra/pcre/build.sh similarity index 67% rename from pkgs/flex/build.sh rename to extra/pcre/build.sh index 39472bb..52b52e2 100644 --- a/pkgs/flex/build.sh +++ b/extra/pcre/build.sh @@ -1,8 +1,8 @@ -pkgname=flex -pkgver=2.6.4 +pkgname=pcre +pkgver=8.45 fetch() { - curl -L "https://github.com/westes/flex/releases/download/v2.6.4/flex-$pkgver.tar.gz" -o $pkgname-$pkgver.tar.gz + curl "https://ftp.pcre.org/pub/pcre/pcre-$pkgver.tar.gz" -o $pkgname-$pkgver.tar.gz tar -xf $pkgname-$pkgver.tar.gz } @@ -21,6 +21,10 @@ package() { make install DESTDIR=$pkgdir } +backup() { + return +} + license() { cd $pkgname-$pkgver cat LICENSE diff --git a/extra/pcre2/build.sh b/extra/pcre2/build.sh new file mode 100644 index 0000000..c853b18 --- /dev/null +++ b/extra/pcre2/build.sh @@ -0,0 +1,31 @@ +pkgname=pcre2 +pkgver=10.39 + +fetch() { + curl -L "https://github.com/PhilipHazel/pcre2/releases/download/pcre2-10.39/pcre2-$pkgver.tar.bz2" -o $pkgname-$pkgver.tar.gz + tar -xf $pkgname-$pkgver.tar.gz +} + +build() { + cd $pkgname-$pkgver + ./configure \ + --prefix=/usr \ + --build=$TRIPLE \ + --host=$TRIPLE + + make +} + +package() { + cd $pkgname-$pkgver + make install DESTDIR=$pkgdir +} + +backup() { + return +} + +license() { + cd $pkgname-$pkgver + cat COPYING +} diff --git a/extra/pfetch/build.sh b/extra/pfetch/build.sh new file mode 100644 index 0000000..b9c1a0c --- /dev/null +++ b/extra/pfetch/build.sh @@ -0,0 +1,22 @@ +pkgname=pfetch +pkgver=master + +fetch() { + curl -L "https://github.com/dylanaraps/pfetch/archive/refs/heads/$pkgver.tar.gz" -o $pkgname-$pkgver.tar.gz + tar -xf $pkgname-$pkgver.tar.gz +} + +build() { + cd $pkgname-$pkgver + echo "Nothing to do" +} + +package() { + cd $pkgname-$pkgver + install -Dm755 pfetch $pkgdir/usr/bin/ +} + +license() { + cd $pkgname-$pkgver + cat LICENSE.md +} diff --git a/pkgs/rust/alpine-crt.patch b/extra/rust/alpine-crt.patch similarity index 100% rename from pkgs/rust/alpine-crt.patch rename to extra/rust/alpine-crt.patch diff --git a/extra/rust/build.sh b/extra/rust/build.sh new file mode 100644 index 0000000..035774d --- /dev/null +++ b/extra/rust/build.sh @@ -0,0 +1,100 @@ +# Based on Abyss OS phase1/devel/rust APKBUILD: +# +# Copyright (c) 2019 by the Abyss Authors +# +# Permission to use, copy, modify, and/or distribute this software for any +# purpose with or without fee is hereby granted, provided that the above +# copyright notice and this permission notice appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF +# OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +pkgname=rust +pkgver=beta + +_clear_vendor_checksums() { + sed -i 's/\("files":{\)[^}]*/\1/' vendor/$1/.cargo-checksum.json +} + +export RUSTROOT="/opt/rust/" + +fetch() { + curl "https://static.rust-lang.org/dist/rustc-$pkgver-src.tar.gz" -o $pkgname-$pkgver.tar.xz + tar -xf $pkgname-$pkgver.tar.xz + + mv rustc-$pkgver-src $pkgname-$pkgver + + + cp ../*.patch . + cd $pkgname-$pkgver + patch -p1 < ../alpine-crt.patch + patch -p1 < ../libexec.patch + patch -p1 < ../fix-curl.patch + + sed -i /LD_LIBRARY_PATH/d src/bootstrap/bootstrap.py + _clear_vendor_checksums curl + _clear_vendor_checksums curl-sys +} + +build() { + cd $pkgname-$pkgver + # --tools="cargo,rls,rustfmt,src" \ + OPENSSL_LIB_DIR=/usr/lib/ ./configure \ + --build="$TRIPLE" \ + --host="$TRIPLE" \ + --target="$TRIPLE" \ + --prefix="/usr" \ + --musl-root="/usr" \ + --release-channel="nightly" \ + --enable-local-rust \ + --local-rust-root=$RUSTROOT \ + --disable-docs \ + --enable-extended \ + --tools="cargo,rustfmt,rls,src" \ + --enable-vendor \ + --disable-locked-deps \ + --enable-option-checking \ + --python="python" \ + --llvm-root="/usr" \ + --llvm-libunwind="system" \ + --enable-llvm-link-shared \ + --set="target.$TRIPLE.llvm-config=/usr/bin/llvm-config" \ + --set="rust.musl-root=/usr" \ + --set="target.$TRIPLE.musl-root=/usr" \ + --set="target.$TRIPLE.crt-static=false" \ + --set="target.$TRIPLE.cc=cc" \ + --set="target.$TRIPLE.cxx=c++" \ + --set="target.$TRIPLE.ar=ar" \ + --set="target.$TRIPLE.linker=cc" \ + --set="target.$TRIPLE.crt-static=false" \ + --set="target.$TRIPLE.cc=cc" \ + --set="target.$TRIPLE.cxx=c++" \ + --set="target.$TRIPLE.ar=ar" \ + --set="target.$TRIPLE.linker=cc" \ + --disable-llvm-static-stdcpp + + sed 's/#deny-warnings = .*/deny-warnings = false/' -i config.toml +# sed 's|deny(warnings,|deny(|' -i src/bootstrap/lib.rs + + ./x.py build +} + +package() { + cd $pkgname-$pkgver + DESTDIR="$pkgdir" ./x.py install +} + +backup() { + return +} + +license() { + cd $pkgname-$pkgver + cat LICENSE-MIT +# cat COPYING +} diff --git a/extra/rust/fix-curl.patch b/extra/rust/fix-curl.patch new file mode 100644 index 0000000..3e9e182 --- /dev/null +++ b/extra/rust/fix-curl.patch @@ -0,0 +1,13 @@ +diff --git a/vendor/curl-sys/build.rs b/vendor/curl-sys/build.rs +index 24475cc..3249440 100644 +--- a/vendor/curl-sys/build.rs ++++ b/vendor/curl-sys/build.rs +@@ -111,6 +111,8 @@ fn main() { + .include("curl/lib") + .include("curl/include") + .define("BUILDING_LIBCURL", None) ++ .define("CURL_CA_BUNDLE", "\"/etc/ssl/cert.pem\"") ++ .define("CURL_CA_PATH", "\"/etc/ssl/certs\"") + .define("CURL_DISABLE_DICT", None) + .define("CURL_DISABLE_GOPHER", None) + .define("CURL_DISABLE_IMAP", None) diff --git a/pkgs/rust/libexec.patch b/extra/rust/libexec.patch similarity index 100% rename from pkgs/rust/libexec.patch rename to extra/rust/libexec.patch diff --git a/pkgs/rust/llvm_crt.patch b/extra/rust/llvm_crt.patch similarity index 74% rename from pkgs/rust/llvm_crt.patch rename to extra/rust/llvm_crt.patch index c0a8854..07788cd 100644 --- a/pkgs/rust/llvm_crt.patch +++ b/extra/rust/llvm_crt.patch @@ -1,18 +1,14 @@ --- a/src/bootstrap/compile.rs +++ b/src/bootstrap/compile.rs -@@ -197,12 +197,6 @@ - DependencyType::TargetSelfContained, - ); - } -- for &obj in &["crtbegin.o", "crtbeginS.o", "crtend.o", "crtendS.o"] { -- let src = compiler_file(builder, builder.cc(target), target, obj); -- let target = libdir_self_contained.join(obj); -- builder.copy(&src, &target); -- target_deps.push((target, DependencyType::TargetSelfContained)); -- } - } else if target.ends_with("-wasi") { - let srcdir = builder - .wasi_root(target) +@@ -185,7 +185,7 @@ + // to using gcc from a glibc-targeting toolchain for linking. + // To do that we have to distribute musl startup objects as a part of Rust toolchain + // and link with them manually in the self-contained mode. +- if target.contains("musl") { ++ if false { + let srcdir = builder.musl_libdir(target).unwrap_or_else(|| { + panic!("Target {:?} does not have a \"musl-libdir\" key", target.triple) + }); --- a/compiler/rustc_target/src/spec/crt_objects.rs +++ b/compiler/rustc_target/src/spec/crt_objects.rs @@ -64,24 +64,17 @@ diff --git a/pkgs/rust/unfreeze.patch b/extra/rust/unfreeze.patch similarity index 100% rename from pkgs/rust/unfreeze.patch rename to extra/rust/unfreeze.patch diff --git a/pkgs/sqlite/build.sh b/extra/sqlite/build.sh similarity index 100% rename from pkgs/sqlite/build.sh rename to extra/sqlite/build.sh diff --git a/pkgs/tbb/build.sh b/extra/tbb/build.sh similarity index 100% rename from pkgs/tbb/build.sh rename to extra/tbb/build.sh diff --git a/pkgs/tbb/musl-malloc-proxy.patch b/extra/tbb/musl-malloc-proxy.patch similarity index 100% rename from pkgs/tbb/musl-malloc-proxy.patch rename to extra/tbb/musl-malloc-proxy.patch diff --git a/pkgs/tbb/musl-rtld.patch b/extra/tbb/musl-rtld.patch similarity index 100% rename from pkgs/tbb/musl-rtld.patch rename to extra/tbb/musl-rtld.patch diff --git a/pkgs/xxhash/build.sh b/extra/xxhash/build.sh similarity index 80% rename from pkgs/xxhash/build.sh rename to extra/xxhash/build.sh index 62d3a88..76758b3 100644 --- a/pkgs/xxhash/build.sh +++ b/extra/xxhash/build.sh @@ -10,12 +10,12 @@ fetch() { build() { cd $pkgname-$pkgver - gmake PREFIX=/usr + bad --gmake gmake PREFIX=/usr } package() { cd $pkgname-$pkgver - gmake install PREFIX=/usr DESTDIR=$pkgdir + bad --gmake gmake install PREFIX=/usr DESTDIR=$pkgdir } license() { diff --git a/extra/yasm/build.sh b/extra/yasm/build.sh new file mode 100644 index 0000000..5c7e6bd --- /dev/null +++ b/extra/yasm/build.sh @@ -0,0 +1,32 @@ +pkgname=yasm +pkgver=1.3.0 + +fetch() { + curl -L "https://github.com/yasm/yasm/releases/download/v$pkgver/yasm-$pkgver.tar.gz" -o $pkgname-$pkgver.tar.xz + tar -xf $pkgname-$pkgver.tar.xz +} + +build() { + cd $pkgname-$pkgver + ./configure \ + --prefix=/usr \ + --sysconfdir=/etc \ + # --build=$TRIPLE \ + # --host=$TRIPLE + + make +} + +package() { + cd $pkgname-$pkgver + make install DESTDIR=$pkgdir +} + +backup() { + return +} + +license() { + cd $pkgname-$pkgver + cat COPYING +} diff --git a/pkgs/youtube-dl/build.sh b/extra/youtube-dl/build.sh similarity index 100% rename from pkgs/youtube-dl/build.sh rename to extra/youtube-dl/build.sh diff --git a/pkgs/zig/build.sh b/extra/zig/build.sh similarity index 100% rename from pkgs/zig/build.sh rename to extra/zig/build.sh diff --git a/pkgs/zig/llvm-req-arch.patch b/extra/zig/llvm-req-arch.patch similarity index 100% rename from pkgs/zig/llvm-req-arch.patch rename to extra/zig/llvm-req-arch.patch diff --git a/extra/zip/build.sh b/extra/zip/build.sh new file mode 100644 index 0000000..f641c3b --- /dev/null +++ b/extra/zip/build.sh @@ -0,0 +1,29 @@ +pkgname=zip +pkgver=30 + +fetch() { + curl "https://fossies.org/linux/misc/zip$pkgver.tar.gz" -o $pkgname-$pkgver.tar.xz + tar -xf $pkgname-$pkgver.tar.xz + mv zip$pkgver $pkgname-$pkgver +} + +build() { + cd $pkgname-$pkgver + + make -f unix/Makefile generic +} + +package() { + cd $pkgname-$pkgver + make -f unix/Makefile install prefix=$pkgdir/usr +} + +backup() { + return +} + +license() { + cd $pkgname-$pkgver + cat LICENSE +# cat COPYING +} diff --git a/pkgs/zsh-autosuggestions/build.sh b/extra/zsh-autosuggestions/build.sh similarity index 100% rename from pkgs/zsh-autosuggestions/build.sh rename to extra/zsh-autosuggestions/build.sh diff --git a/pkgs/zsh-syntax-highlighting/build.sh b/extra/zsh-syntax-highlighting/build.sh similarity index 100% rename from pkgs/zsh-syntax-highlighting/build.sh rename to extra/zsh-syntax-highlighting/build.sh diff --git a/pkgs/zsh/build.sh b/extra/zsh/build.sh similarity index 88% rename from pkgs/zsh/build.sh rename to extra/zsh/build.sh index 0bff3f0..603e766 100644 --- a/pkgs/zsh/build.sh +++ b/extra/zsh/build.sh @@ -12,8 +12,8 @@ build() { cd $pkgname-$pkgver ./configure \ --prefix=/usr \ - --build=x86_64-unknown-linux-musl \ - --host=x86_64-unknown-linux-musl + --build=$TRIPLE \ + --host=$TRIPLE make } diff --git a/pkgs/zsh/zprofile.zsh b/extra/zsh/zprofile.zsh similarity index 100% rename from pkgs/zsh/zprofile.zsh rename to extra/zsh/zprofile.zsh diff --git a/gnome/atk/build.sh b/gnome/atk/build.sh new file mode 100644 index 0000000..1ce45d4 --- /dev/null +++ b/gnome/atk/build.sh @@ -0,0 +1,36 @@ +pkgname=atk +_pkgver=2.36 +pkgver=$_pkgver.0 + +fetch() { + curl -L "https://download.gnome.org/sources/atk/$_pkgver/atk-$pkgver.tar.xz" -o $pkgname-$pkgver.tar.xz + tar -xf $pkgname-$pkgver.tar.xz + mkdir $pkgname-$pkgver/build +} + +build() { + cd $pkgname-$pkgver + cd build + meson .. \ + --buildtype=release \ + --prefix=/usr \ + --libexecdir=lib \ + -Dintrospection=false \ + -Ddocs=false + samu +} + +package() { + cd $pkgname-$pkgver + cd build + DESTDIR=$pkgdir samu install +} + +backup() { + return +} + +license() { + cd $pkgname-$pkgver + cat COPYING +} diff --git a/gnome/dbus-glib/build.sh b/gnome/dbus-glib/build.sh new file mode 100644 index 0000000..e271505 --- /dev/null +++ b/gnome/dbus-glib/build.sh @@ -0,0 +1,36 @@ +pkgname=dbus-glib +pkgver=0.112 + +fetch() { + curl "https://dbus.freedesktop.org/releases/dbus-glib/dbus-glib-$pkgver.tar.gz" -o $pkgname-$pkgver.tar.gz + tar -xf $pkgname-$pkgver.tar.gz + mkdir $pkgname-$pkgver/build +} + +build() { + cd $pkgname-$pkgver + ./configure \ + --prefix=/usr \ + --sysconfdir=/etc \ + --build=$TRIPLE \ + --host=$TRIPLE + + bad --gmake gmake +} + +package() { + cd $pkgname-$pkgver + bad --gmake gmake install DESTDIR=$pkgdir + rm -rf $pkgdir/etc + rm -rf $pkgdir/usr/libexec + rm -rf $pkgdir/usr/share/gtk-doc +} + +license() { + cd $pkgname-$pkgver + cat COPYING +} + +backup() { + return +} diff --git a/gnome/gdk-pixbuf/build.sh b/gnome/gdk-pixbuf/build.sh new file mode 100644 index 0000000..cd5f891 --- /dev/null +++ b/gnome/gdk-pixbuf/build.sh @@ -0,0 +1,45 @@ +pkgname=gdk-pixbuf +_pkgver=2.42 +pkgver=$_pkgver.6 + +fetch() { + curl -L "https://download.gnome.org/sources/gdk-pixbuf/$_pkgver/gdk-pixbuf-$pkgver.tar.xz" -o $pkgname-$pkgver.tar.xz + tar -xf $pkgname-$pkgver.tar.xz + mkdir $pkgname-$pkgver/build + rm $pkgdir-$pkgver/subprojects/*.wrap +} + +build() { + cd $pkgname-$pkgver + cd build + meson .. \ + --buildtype=release \ + --prefix=/usr \ + --libexecdir=lib \ + -Ddebug=false \ + -Djpeg=true \ + -Dpng=true \ + -Dtiff=false \ + -Ddocs=false \ + -Dman=false \ + -Dgio_sniffing=false \ + -Dinstalled_tests=false \ + -Dbuiltin_loaders=all + samu +} + +package() { + cd $pkgname-$pkgver + cd build + DESTDIR=$pkgdir samu install +} + +backup() { + return +} + +license() { + cd $pkgname-$pkgver + cat LICENSE +# cat COPYING +} diff --git a/gnome/glib/build.sh b/gnome/glib/build.sh new file mode 100644 index 0000000..d088f4a --- /dev/null +++ b/gnome/glib/build.sh @@ -0,0 +1,38 @@ +pkgname=glib +_pkgver=2.68 +pkgver=$_pkgver.4 + +fetch() { + curl -L "https://download.gnome.org/sources/glib/$_pkgver/glib-$pkgver.tar.xz" -o $pkgname-$pkgver.tar.xz + tar -xf $pkgname-$pkgver.tar.xz + mkdir $pkgname-$pkgver/build +} + +build() { + cd $pkgname-$pkgver + cd build + meson .. \ + --buildtype=release \ + --prefix=/usr \ + --libexecdir=lib \ + -Dtests=false \ + -Dnls=disabled + samu +} + +package() { + cd $pkgname-$pkgver + cd build + DESTDIR=$pkgdir samu install + + rm -rf $pkgdir/usr/share/bash-completion + rm -rf $pkgdir/usr/share/gdb + + rm -rf $pkgdir/usr/bin/gdbus* +} + +license() { + cd $pkgname-$pkgver + cat LICENSE +# cat COPYING +} diff --git a/gnome/gtk+/build.sh b/gnome/gtk+/build.sh new file mode 100644 index 0000000..d31e729 --- /dev/null +++ b/gnome/gtk+/build.sh @@ -0,0 +1,62 @@ +pkgname=gtk+ +_pkgver=3.24 +pkgver=$_pkgver.31 + +fetch() { + curl -L "https://download.gnome.org/sources/gtk+/$_pkgver/gtk%2B-$pkgver.tar.xz" -o $pkgname-$pkgver.tar.xz + tar -xf $pkgname-$pkgver.tar.xz + mkdir -p $pkgname-$pkgver/build + cd $pkgname-$pkgver + patch -p1 < ../../no-fribidi.patch + + # Remove 'atk-bridge' dependency which removes the 'dbus' dependency. + sed '/atkbridge_dep/d;/atk-bridge-2.0/d' meson.build > _ + mv -f _ meson.build + sed '/atkbridge_dep,/d' gtk/meson.build > _ + mv -f _ gtk/meson.build + + sed '//d;/atk_bridge_adaptor_init/d' \ + gtk/a11y/gtkaccessibility.c > _ + mv -f _ gtk/a11y/gtkaccessibility.c + +} + +build() { + cd $pkgname-$pkgver + cd build + meson .. \ + --buildtype=release \ + --prefix=/usr \ + --libexecdir=lib \ + --localstatedir=/var \ + -Dx11_backend=false \ + -Dprint_backends=auto \ + -Dwayland_backend=true \ + -Dwin32_backend=false \ + -Dquartz_backend=false \ + -Dcolord=no \ + -Ddemos=false \ + -Dexamples=false \ + -Dtests=false \ + -Dinstalled_tests=false \ + -Dgtk_doc=false \ + -Dintrospection=false + + samu +} + +package() { + cd $pkgname-$pkgver + cd build + DESTDIR=$pkgdir samu install +} + +backup() { + return +} + +license() { + cd $pkgname-$pkgver + cat LICENSE +# cat COPYING +} diff --git a/gnome/gtk+/no-fribidi.patch b/gnome/gtk+/no-fribidi.patch new file mode 100644 index 0000000..360c378 --- /dev/null +++ b/gnome/gtk+/no-fribidi.patch @@ -0,0 +1,60 @@ +diff --git a/gdk/gdk.c b/gdk/gdk.c +index f0869a6..2f3c039 100644 +--- a/gdk/gdk.c ++++ b/gdk/gdk.c +@@ -44,7 +44,6 @@ + #include + #include + +-#include + + + /** +@@ -1118,17 +1117,6 @@ gdk_disable_multidevice (void) + PangoDirection + gdk_unichar_direction (gunichar ch) + { +- FriBidiCharType fribidi_ch_type; +- +- G_STATIC_ASSERT (sizeof (FriBidiChar) == sizeof (gunichar)); +- +- fribidi_ch_type = fribidi_get_bidi_type (ch); +- +- if (!FRIBIDI_IS_STRONG (fribidi_ch_type)) +- return PANGO_DIRECTION_NEUTRAL; +- else if (FRIBIDI_IS_RTL (fribidi_ch_type)) +- return PANGO_DIRECTION_RTL; +- else + return PANGO_DIRECTION_LTR; + } + +diff --git a/gtk/gtkpango.c b/gtk/gtkpango.c +index aaac4cc..a76ad57 100644 +--- a/gtk/gtkpango.c ++++ b/gtk/gtkpango.c +@@ -25,7 +25,6 @@ + #include "config.h" + #include "gtkpango.h" + #include +-#include + #include "gtkintl.h" + + #define GTK_TYPE_FILL_LAYOUT_RENDERER (_gtk_fill_layout_renderer_get_type()) +@@ -1326,17 +1325,6 @@ _gtk_pango_attr_list_merge (PangoAttrList *into, + PangoDirection + _gtk_pango_unichar_direction (gunichar ch) + { +- FriBidiCharType fribidi_ch_type; +- +- G_STATIC_ASSERT (sizeof (FriBidiChar) == sizeof (gunichar)); +- +- fribidi_ch_type = fribidi_get_bidi_type (ch); +- +- if (!FRIBIDI_IS_STRONG (fribidi_ch_type)) +- return PANGO_DIRECTION_NEUTRAL; +- else if (FRIBIDI_IS_RTL (fribidi_ch_type)) +- return PANGO_DIRECTION_RTL; +- else + return PANGO_DIRECTION_LTR; + } + diff --git a/pkgs/fontconfig/build.sh b/gnome/pango/build.sh similarity index 63% rename from pkgs/fontconfig/build.sh rename to gnome/pango/build.sh index d1f9608..2e0721b 100644 --- a/pkgs/fontconfig/build.sh +++ b/gnome/pango/build.sh @@ -1,10 +1,10 @@ -pkgname=fontconfig -pkgver=2.13.93 +pkgname=pango +_pkgver=1.49 +pkgver=$_pkgver.1 fetch() { - curl "https://www.freedesktop.org/software/fontconfig/release/fontconfig-2.13.93.tar.gz" -o $pkgname-$pkgver.tar.xz + curl -L "https://download.gnome.org/sources/pango/$_pkgver/pango-$pkgver.tar.xz" -o $pkgname-$pkgver.tar.xz tar -xf $pkgname-$pkgver.tar.xz - cp ../fcobjshash.h $pkgname-$pkgver/src mkdir $pkgname-$pkgver/build } diff --git a/gui/README.md b/gui/README.md new file mode 100644 index 0000000..c20a815 --- /dev/null +++ b/gui/README.md @@ -0,0 +1,3 @@ +# GUI Packages +These packages provide anything specific to a graphical system focusing +mainly on the desktop. diff --git a/gui/alsa-sndio/build.sh b/gui/alsa-sndio/build.sh new file mode 100644 index 0000000..8691e24 --- /dev/null +++ b/gui/alsa-sndio/build.sh @@ -0,0 +1,23 @@ +pkgname=alsa-sndio +pkgver=0.2 + +fetch() { + curl -L "https://github.com/Duncaen/alsa-sndio/archive/refs/tags/$pkgver.tar.gz" -o $pkgname-$pkgver.tar.gz + tar -xf $pkgname-$pkgver.tar.gz +} + +build() { + cd $pkgname-$pkgver + bad --gmake gmake PREFIX=/usr +} + +package() { + cd $pkgname-$pkgver + bad --gmake gmake install DESTDIR=$pkgdir PREFIX=/usr +} + +license() { + cd $pkgname-$pkgver + cat LICENSE +# cat COPYING +} diff --git a/pkgs/anthy/build.sh b/gui/anthy/build.sh similarity index 100% rename from pkgs/anthy/build.sh rename to gui/anthy/build.sh diff --git a/gui/autotiling-rs/build.sh b/gui/autotiling-rs/build.sh new file mode 100644 index 0000000..b789ec9 --- /dev/null +++ b/gui/autotiling-rs/build.sh @@ -0,0 +1,30 @@ +pkgname=autotiling-rs +pkgver=0.1.3 + +_clear_vendor_checksums() { + sed -i 's/\("files":{\)[^}]*/\1/' vendor/$1/.cargo-checksum.json +} + +fetch() { + curl -L "https://github.com/ammgws/autotiling-rs/archive/refs/tags/v$pkgver.tar.gz" -o $pkgname-$pkgver.tar.xz + tar -xf $pkgname-$pkgver.tar.xz + cd $pkgname-$pkgver + mkdir -p .cargo + /usr/src/rust-bootstrap/build/rust-root/bin/cargo vendor > .cargo/config +} + +build() { + cd $pkgname-$pkgver + cargo build --release --locked --all-features +} + +package() { + cd $pkgname-$pkgver + install -Dm755 target/release/$pkgname $pkgdir/usr/bin/$pkgname +} + +license() { + cd $pkgname-$pkgver + cat LICENSE +# cat COPYING +} diff --git a/pkgs/cairo/build.sh b/gui/cairo/build.sh similarity index 92% rename from pkgs/cairo/build.sh rename to gui/cairo/build.sh index daa9a82..5108112 100644 --- a/pkgs/cairo/build.sh +++ b/gui/cairo/build.sh @@ -14,7 +14,7 @@ build() { --buildtype=release \ --prefix=/usr \ --libexecdir=lib \ - -Dglib=disabled + -Dglib=enabled samu } @@ -24,6 +24,10 @@ package() { DESTDIR=$pkgdir samu install } +backup() { + return +} + license() { cd $pkgname-$pkgver cat COPYING* diff --git a/pkgs/ffmpeg/build.sh b/gui/ffmpeg/build.sh similarity index 64% rename from pkgs/ffmpeg/build.sh rename to gui/ffmpeg/build.sh index ab59d34..15e98e7 100644 --- a/pkgs/ffmpeg/build.sh +++ b/gui/ffmpeg/build.sh @@ -2,7 +2,7 @@ pkgname=ffmpeg pkgver=4.4 fetch() { - curl "https://ffmpeg.org/releases/ffmpeg-4.3.2.tar.xz" -o $pkgname-$pkgver.tar.xz + curl "https://ffmpeg.org/releases/ffmpeg-$pkgver.tar.xz" -o $pkgname-$pkgver.tar.xz tar -xf $pkgname-$pkgver.tar.xz } @@ -13,12 +13,12 @@ build() { --enable-openssl \ --cc=cc - gmake + bad --gmake gmake } package() { cd $pkgname-$pkgver - gmake install DESTDIR=$pkgdir + bad --gmake gmake install DESTDIR=$pkgdir } license() { diff --git a/gui/firefox/avoid-redefinition.patch b/gui/firefox/avoid-redefinition.patch new file mode 100644 index 0000000..af11c50 --- /dev/null +++ b/gui/firefox/avoid-redefinition.patch @@ -0,0 +1,15 @@ +Author: Rasmus Thomsen +Reason: FF is mixing userspace net headers (net/if.h) and kernelspace ones +(linux/if.h), leading to redefinitions. We need to include net/if.h before +linux/if.h because linux/if.h has redifinition guards whereas net/if.h doesnt +Upstream: No +--- a/dom/media/webrtc/transport/third_party/nICEr/src/stun/addrs-netlink.c.orig 2020-07-28 19:24:32.359751046 +0200 ++++ b/dom/media/webrtc/transport/third_party/nICEr/src/stun/addrs-netlink.c 2020-07-28 19:24:37.856343751 +0200 +@@ -31,6 +31,7 @@ + */ + + #if defined(LINUX) ++#include + #include "addrs-netlink.h" + #include + #include diff --git a/gui/firefox/build.sh b/gui/firefox/build.sh new file mode 100644 index 0000000..9f141b5 --- /dev/null +++ b/gui/firefox/build.sh @@ -0,0 +1,95 @@ +pkgname=firefox +pkgver=101.0 +mkdeps="cbindgen:rust" + +fetch() { + #curl "https://ftp.mozilla.org/pub/firefox/releases/${pkgver}esr/source/firefox-${pkgver}esr.source.tar.xz" -o $pkgname-$pkgver.tar.xz + #curl "https://hg.mozilla.org/mozilla-unified/archive/26726cd430955db041e5de33d9792bb816c57608.zip" -o $pkgname-$pkgver.zip + curl "https://archive.mozilla.org/pub/firefox/releases/${pkgver}b3/source/firefox-${pkgver}b3.source.tar.xz" -o $pkgname-$pkgver.tar.xz + tar -xf $pkgname-$pkgver.tar.xz + cd $pkgname-$pkgver + # patch -p1 < ../../no-x11.patch + # patch -p1 < ../../fix-clang-as.patch + patch -p1 < ../../avoid-redefinition.patch + patch -p1 < ../../libcxx.patch + patch -p1 < ../../grefptr.patch + patch -p1 < ../../sandbox-allow-select.patch + # patch -p1 < ../../sandbox-fork.patch + # patch -p1 < ../../sandbox-sched.patch +} + +build() { + cd $pkgname-$pkgver + ulimit -n 4096 + + + export MACH_USE_SYSTEM_PYTHON=1 + export CXXSTDLIB=c++ + export LDFLAGS="$LDFLAGS -Wl,-rpath=/usr/lib/firefox/,--enable-new-dtags" + + cat > .mozconfig << EOF +ac_add_options --enable-default-toolkit=cairo-gtk3-wayland +ac_add_options --prefix=/usr +ac_add_options --libdir=/usr/lib +ac_add_options --disable-alsa +ac_add_options --enable-dbus +ac_add_options --enable-strip +ac_add_options --enable-release +ac_add_options --enable-rust-simd +ac_add_options --enable-install-strip +ac_add_options --enable-official-branding +ac_add_options --enable-application=browser +ac_add_options --enable-optimize="-O3 -w" +ac_add_options --without-system-libvpx +ac_add_options --without-system-ffi +ac_add_options --without-system-png +ac_add_options --without-system-jpeg +ac_add_options --without-system-zlib +ac_add_options --without-system-pixman +ac_add_options --without-system-nss +ac_add_options --without-system-nspr +ac_add_options --enable-linker=lld +ac_add_options --disable-tests +ac_add_options --disable-vtune +ac_add_options --disable-updater +ac_add_options --disable-jemalloc +ac_add_options --disable-callgrind +ac_add_options --disable-profiling +ac_add_options --disable-necko-wifi +ac_add_options --disable-crashreporter +ac_add_options --enable-pulseaudio +ac_add_options --disable-accessibility +ac_add_options --disable-debug +ac_add_options --disable-debug-symbols +ac_add_options --disable-parental-controls +ac_add_options --disable-system-extension-dirs +ac_add_options --enable-webrtc +ac_add_options --disable-elf-hack +ac_add_options --without-wasm-sandboxed-libraries +#ac_add_options MOZ_PGO=1 +EOF + + # bad --gmake --gm4 --autoconf ./mach clobber + bad --gmake --gm4 --autoconf ./mach build +} + +package() { + cd $pkgname-$pkgver + + export MACH_USE_SYSTEM_PYTHON=1 + export CXXSTDLIB=c++ + export RUSTFLAGS='-C target-feature=-crt-static' + export LDFLAGS="$LDFLAGS -Wl,-rpath=/usr/lib/firefox/,--enable-new-dtags" + + DESTDIR=$pkgdir bad --gmake --gm4 --autoconf ./mach install +} + +backup() { + return +} + +license() { + cd $pkgname-$pkgver + cat LICENSE +# cat COPYING +} diff --git a/gui/firefox/grefptr.patch b/gui/firefox/grefptr.patch new file mode 100644 index 0000000..d0f5692 --- /dev/null +++ b/gui/firefox/grefptr.patch @@ -0,0 +1,10 @@ +--- a/widget/gtk/nsClipboard.cpp ++++ b/widget/gtk/nsClipboard.cpp +@@ -31,6 +31,7 @@ + #include "nsIObserverService.h" + #include "mozilla/Services.h" + #include "mozilla/RefPtr.h" ++#include "GRefPtr.h" + #include "mozilla/SchedulerGroup.h" + #include "mozilla/StaticPrefs_widget.h" + #include "mozilla/TimeStamp.h" diff --git a/gui/firefox/libcxx.patch b/gui/firefox/libcxx.patch new file mode 100644 index 0000000..d14cdc8 --- /dev/null +++ b/gui/firefox/libcxx.patch @@ -0,0 +1,69 @@ +--- a/memory/mozalloc/throw_gcc.h ++++ b/memory/mozalloc/throw_gcc.h +@@ -74,50 +74,66 @@ __throw_bad_function_call(void) { + mozalloc_abort("fatal: STL threw bad_function_call"); + } + ++#if !defined(_LIBCPP_VERSION) + MOZ_THROW_NORETURN MOZ_THROW_EXPORT MOZ_THROW_INLINE void __throw_logic_error( + const char* msg) { + mozalloc_abort(msg); + } ++#endif // _LIBCPP_VERSION + ++#if !defined(_LIBCPP_VERSION) + MOZ_THROW_NORETURN MOZ_THROW_EXPORT MOZ_THROW_INLINE void __throw_domain_error( + const char* msg) { + mozalloc_abort(msg); + } ++#endif // _LIBCPP_VERSION + ++#if !defined(_LIBCPP_VERSION) + MOZ_THROW_NORETURN MOZ_THROW_EXPORT MOZ_THROW_INLINE void + __throw_invalid_argument(const char* msg) { + mozalloc_abort(msg); + } ++#endif // _LIBCPP_VERSION + ++#if !defined(_LIBCPP_VERSION) + MOZ_THROW_NORETURN MOZ_THROW_EXPORT MOZ_THROW_INLINE void __throw_length_error( + const char* msg) { + mozalloc_abort(msg); + } ++#endif // _LIBCPP_VERSION + ++#if !defined(_LIBCPP_VERSION) + MOZ_THROW_NORETURN MOZ_THROW_EXPORT MOZ_THROW_INLINE void __throw_out_of_range( + const char* msg) { + mozalloc_abort(msg); + } ++#endif // _LIBCPP_VERSION + + MOZ_THROW_NORETURN MOZ_THROW_EXPORT MOZ_THROW_INLINE void __throw_runtime_error( + const char* msg) { + mozalloc_abort(msg); + } + ++#if !defined(_LIBCPP_VERSION) + MOZ_THROW_NORETURN MOZ_THROW_EXPORT MOZ_THROW_INLINE void __throw_range_error( + const char* msg) { + mozalloc_abort(msg); + } ++#endif // _LIBCPP_VERSION + ++#if !defined(_LIBCPP_VERSION) + MOZ_THROW_NORETURN MOZ_THROW_EXPORT MOZ_THROW_INLINE void + __throw_overflow_error(const char* msg) { + mozalloc_abort(msg); + } ++#endif // _LIBCPP_VERSION + ++#if !defined(_LIBCPP_VERSION) + MOZ_THROW_NORETURN MOZ_THROW_EXPORT MOZ_THROW_INLINE void + __throw_underflow_error(const char* msg) { + mozalloc_abort(msg); + } ++#endif // _LIBCPP_VERSION + + MOZ_THROW_NORETURN MOZ_THROW_EXPORT MOZ_THROW_INLINE void __throw_ios_failure( + const char* msg) { diff --git a/gui/firefox/sandbox-allow-select.patch b/gui/firefox/sandbox-allow-select.patch new file mode 100644 index 0000000..ce38dfd --- /dev/null +++ b/gui/firefox/sandbox-allow-select.patch @@ -0,0 +1,26 @@ +--- a/security/sandbox/linux/SandboxFilter.cpp ++++ b/security/sandbox/linux/SandboxFilter.cpp +@@ -1992,20 +1992,23 @@ + Arg new_limit(2); + return If(AllOf(pid == 0, new_limit == 0), Allow()) + .Else(InvalidSyscall()); + } + #endif // DESKTOP + + // Bug 1640612 + case __NR_uname: + return Allow(); + ++ CASES_FOR_select: ++ return Allow(); ++ + default: + return SandboxPolicyCommon::EvaluateSyscall(sysno); + } + } + }; + + UniquePtr GetSocketProcessSandboxPolicy( + SandboxBrokerClient* aMaybeBroker) { + return UniquePtr( + new SocketProcessSandboxPolicy(aMaybeBroker)); diff --git a/gui/fontconfig/build.sh b/gui/fontconfig/build.sh new file mode 100644 index 0000000..4fce02c --- /dev/null +++ b/gui/fontconfig/build.sh @@ -0,0 +1,38 @@ +pkgname=fontconfig +pkgver=2.13.94 + +fetch() { + curl "https://www.freedesktop.org/software/fontconfig/release/$pkgname-$pkgver.tar.gz" -o $pkgname-$pkgver.tar.xz + tar -xf $pkgname-$pkgver.tar.xz + cp ../fcobjshash.h $pkgname-$pkgver/src + mkdir $pkgname-$pkgver/build + cd $pkgname-$pkgver + sed -i 's/fcobjshash\.h/fcjunk.h/' src/meson.build + sed -i "s/find_program(\'gperf/find_program(\'true/" meson.build +} + +build() { + cd $pkgname-$pkgver + + cd build + meson .. \ + --buildtype=release \ + --prefix=/usr \ + --libexecdir=lib \ + -Ddocs=disabled \ + -Dnls=disabled \ + -Dtests=disabled + samu +} + +package() { + cd $pkgname-$pkgver + cd build + DESTDIR=$pkgdir samu install +} + +license() { + cd $pkgname-$pkgver + cat LICENSE +# cat COPYING +} diff --git a/pkgs/fontconfig/fcobjshash.h b/gui/fontconfig/fcobjshash.h similarity index 100% rename from pkgs/fontconfig/fcobjshash.h rename to gui/fontconfig/fcobjshash.h diff --git a/gui/foot/build.sh b/gui/foot/build.sh new file mode 100644 index 0000000..c14bb09 --- /dev/null +++ b/gui/foot/build.sh @@ -0,0 +1,42 @@ +pkgname=foot +pkgver=1.10.3 + +fetch() { + curl -L "https://codeberg.org/dnkl/foot/archive/$pkgver.tar.gz" -o $pkgname-$pkgver.tar.gz + curl -L "https://codeberg.org/dnkl/fcft/archive/2.4.5.tar.gz" -o fcft.tar.gz + curl -L "https://codeberg.org/dnkl/tllist/archive/1.0.5.tar.gz" -o tllist.tar.gz + tar -xf $pkgname-$pkgver.tar.gz + mv $pkgname $pkgname-$pkgver + mkdir $pkgname-$pkgver/build + tar -xf fcft.tar.gz -C $pkgname-$pkgver/subprojects + tar -xf tllist.tar.gz -C $pkgname-$pkgver/subprojects + cd $pkgname-$pkgver + patch -p1 < ../../netbsd-tic.patch +} + +build() { + cd $pkgname-$pkgver + cd build + meson .. \ + --buildtype=release \ + --prefix=/usr \ + --libexecdir=lib \ + -Dterminfo=enabled \ + -Ddefault-terminfo=foot + samu +} + +backup() { + return +} + +package() { + cd $pkgname-$pkgver + cd build + DESTDIR=$pkgdir samu install +} + +license() { + cd $pkgname-$pkgver + cat LICENSE +} diff --git a/gui/foot/netbsd-tic.patch b/gui/foot/netbsd-tic.patch new file mode 100644 index 0000000..de8672e --- /dev/null +++ b/gui/foot/netbsd-tic.patch @@ -0,0 +1,23 @@ +--- a/meson.build ++++ b/meson.build +@@ -43,7 +43,7 @@ + join_paths(get_option('prefix'), terminfo_install_location))], + language: 'c') + else +- terminfo_install_location = join_paths(get_option('datadir'), 'terminfo') ++ terminfo_install_location = get_option('datadir') + endif + + # Compute the relative path used by compiler invocations. +@@ -262,9 +262,9 @@ + ) + custom_target( + 'terminfo', +- output: get_option('default-terminfo')[0], ++ output: 'terminfo.cdb', + input: preprocessed, +- command: [tic, '-x', '-o', '@OUTDIR@', '-e', '@0@,@0@-direct'.format(get_option('default-terminfo')), '@INPUT@'], ++ command: [tic, '-x', '-o', '@OUTPUT@', '@INPUT@'], + install: true, + install_dir: terminfo_install_location + ) diff --git a/gui/freetype-harbuzz/build.sh b/gui/freetype-harbuzz/build.sh new file mode 100644 index 0000000..6ae76e7 --- /dev/null +++ b/gui/freetype-harbuzz/build.sh @@ -0,0 +1,98 @@ +f_pkgver=2.11.0 +h_pkgver=3.0.0 + +pkgname=freetype-harfbuzz +pkgver=$f_pkgver+$h_pkgver + +fetch() { + curl "https://download-mirror.savannah.gnu.org/releases/freetype/freetype-$f_pkgver.tar.xz" \ + -o freetype-$f_pkgver.tar.xz + + tar -xf freetype-$f_pkgver.tar.xz + mkdir -p freetype-$f_pkgver/build + + curl -L "https://github.com/harfbuzz/harfbuzz/releases/download/$h_pkgver/harfbuzz-$h_pkgver.tar.xz" \ + -o harfbuzz-$h_pkgver.tar.xz + + tar -xf harfbuzz-$h_pkgver.tar.xz + mkdir -p harfbuzz-$h_pkgver/build +} + +build() { + mkdir tmp_install + export DESTDIR=$(pwd)/tmp_install + mkdir -p $DESTDIR/usr/include/harfbuzz + # cp harfbuzz-$h_pkgver/src/hb-ft.h $DESTDIR/usr/include/harfbuzz + + # Point Freetype to the Harfbuzz files. + export CFLAGS="$CFLAGS -I$DESTDIR/usr/include/harfbuzz" + export CFLAGS="$CFLAGS -L$DESTDIR/usr/lib " + export PKG_CONFIG_PATH=$DESTDIR/usr/lib/pkgconfig + + # Point Harfbuzz to the Freetype files. + export CXXFLAGS="$CXXFLAGS -I$DESTDIR/usr/include/freetype2" + export CXXFLAGS="$CXXFLAGS -L$DESTDIR/usr/lib" + + cd freetype-$f_pkgver/build + meson .. \ + --buildtype=release \ + --prefix=/usr \ + --libexecdir=lib \ + -Dbzip2=disabled \ + -Dzlib=disabled \ + -Dharbuzz=disabled + + samu + + samu install + + cd ../../ + + cd harfbuzz-$h_pkgver/ + + ./configure \ + --prefix=/usr \ + --with-bzip2=no \ + --with-png=no \ + --with-brotli=no + + bad --gmake gmake + bad --gmake gmake install + + cd .. + + cd freetype-$f_pkgver/build + meson .. \ + --buildtype=release \ + --prefix=/usr \ + --libexecdir=lib \ + -Dbzip2=disabled \ + -Dzlib=disabled \ + -Dharfbuzz=enabled + --reconfigure + + samu +} + + + +package() { + cd freetype-$f_pkgver + cd build + DESTDIR=$pkgdir samu install + cd ../../ + cd harfbuzz-$h_pkgver + cd build + DESTDIR=$pkgdir samu install +} + +backup() { + return +} + +license() { + cd freetype-$f_pkgver + cat LICENSE + cd harfbuzz-$h_pkgver + cat COPYING +} diff --git a/gui/freetype-harbuzz/ft_meson.patch b/gui/freetype-harbuzz/ft_meson.patch new file mode 100644 index 0000000..349f4ec --- /dev/null +++ b/gui/freetype-harbuzz/ft_meson.patch @@ -0,0 +1,11 @@ +--- src/freetype-2.11.0/meson.build ++++ meson.build +@@ -276,6 +276,8 @@ + if libpng_dep.found() + ftoption_command += ['--enable=FT_CONFIG_OPTION_USE_PNG'] + ft2_deps += [libpng_dep] ++else ++ ftoption_command += ['--disable=FT_CONFIG_OPTION_USE_PNG'] + endif + + # Harfbuzz support diff --git a/gui/freetype-harbuzz/meson.build b/gui/freetype-harbuzz/meson.build new file mode 100644 index 0000000..023e650 --- /dev/null +++ b/gui/freetype-harbuzz/meson.build @@ -0,0 +1,411 @@ +# +# Meson project file for FreeType 2 +# + +# Copyright (C) 2020-2021 by +# David Turner, Robert Wilhelm, and Werner Lemberg. +# +# This file is part of the FreeType project, and may only be used, modified, +# and distributed under the terms of the FreeType project license, +# LICENSE.TXT. By continuing to use, modify, or distribute this file you +# indicate that you have read the license and understand and accept it +# fully. + +# +# Say +# +# meson configure +# +# to see all configuration options and their default values. For example, +# to build only a shared version of FreeType, override the default value +# with +# +# meson setup -Ddefault_library=shared +# + +project('freetype2', 'c', + meson_version: '>= 0.55.0', + default_options: ['default_library=both'], + version: run_command('builds/meson/extract_freetype_version.py', + 'include/freetype/freetype.h').stdout().strip(), +) + + +# Only meson >= 0.57 can read a file and assign its contents to a +# variable; we thus use an external command to have this functionality +# with older versions, too. + +python = import('python') +python_exe = python.find_installation(required: true) + +ft2_so_version = run_command(python_exe, + files('builds/meson/extract_libtool_version.py'), + '--soversion', + files('builds/unix/configure.raw')).stdout().strip() + +ft2_pkgconfig_version = run_command(python_exe, + files('builds/meson/extract_libtool_version.py'), + files('builds/unix/configure.raw')).stdout().strip() + +ft2_includes = include_directories('include') + + +# Generate a custom `ftmodule.h` version based on the content of +# `modules.cfg`. + +ftmodule_h = custom_target('ftmodule.h', + output: 'ftmodule.h', + input: 'modules.cfg', + command: [python_exe, files('builds/meson/parse_modules_cfg.py'), + '--format=ftmodule.h', '@INPUT@', '--output', '@OUTPUT@'], + install: true, + install_dir: 'include/freetype2/freetype/config', +) +ft2_sources = [ftmodule_h] + + +# FreeType 2 modules. + +ft_main_modules = run_command(python_exe, + files('builds/meson/parse_modules_cfg.py'), + '--format=main-modules', + files('modules.cfg')).stdout().strip().split() + +ft2_sources += files([ + 'src/base/ftbase.c', + 'src/base/ftinit.c', +]) + +foreach mod: ft_main_modules + source = mod + if mod == 'winfonts' + source = 'winfnt' + elif mod == 'cid' + source = 'type1cid' + endif + ft2_sources += 'src/@0@/@1@.c'.format(mod, source) +endforeach + +# NOTE: The `gzip` and `bzip2` aux modules are handled through options. +ft_aux_modules = run_command(python_exe, + files('builds/meson/parse_modules_cfg.py'), + '--format=aux-modules', + files('modules.cfg')).stdout().strip().split() + +foreach auxmod: ft_aux_modules + source = auxmod + # Most sources are named `src//.c`, but there are a few + # exceptions handled here. + if auxmod == 'cache' + source = 'ftcache' + elif auxmod == 'lzw' + source = 'ftlzw' + elif auxmod == 'gzip' or auxmod == 'bzip2' + # Handled through options instead, see below. + continue + endif + ft2_sources += 'src/@0@/@1@.c'.format(auxmod, source) +endforeach + + +# FreeType 2 base extensions. +# To be configured in `modules.cfg`. + +base_extensions = run_command(python_exe, + files('builds/meson/parse_modules_cfg.py'), + '--format=base-extensions-list', + files('modules.cfg')).stdout().split() + +foreach ext: base_extensions + ft2_sources += files('src/base/' + ext) +endforeach + + +# Header files. + +ft2_public_headers = files([ + 'include/freetype/freetype.h', + 'include/freetype/ftadvanc.h', + 'include/freetype/ftbbox.h', + 'include/freetype/ftbdf.h', + 'include/freetype/ftbitmap.h', + 'include/freetype/ftbzip2.h', + 'include/freetype/ftcache.h', + 'include/freetype/ftchapters.h', + 'include/freetype/ftcid.h', + 'include/freetype/ftcolor.h', + 'include/freetype/ftdriver.h', + 'include/freetype/fterrdef.h', + 'include/freetype/fterrors.h', + 'include/freetype/ftfntfmt.h', + 'include/freetype/ftgasp.h', + 'include/freetype/ftglyph.h', + 'include/freetype/ftgxval.h', + 'include/freetype/ftgzip.h', + 'include/freetype/ftimage.h', + 'include/freetype/ftincrem.h', + 'include/freetype/ftlcdfil.h', + 'include/freetype/ftlist.h', + 'include/freetype/ftlzw.h', + 'include/freetype/ftmac.h', + 'include/freetype/ftmm.h', + 'include/freetype/ftmodapi.h', + 'include/freetype/ftmoderr.h', + 'include/freetype/ftotval.h', + 'include/freetype/ftoutln.h', + 'include/freetype/ftparams.h', + 'include/freetype/ftpfr.h', + 'include/freetype/ftrender.h', + 'include/freetype/ftsizes.h', + 'include/freetype/ftsnames.h', + 'include/freetype/ftstroke.h', + 'include/freetype/ftsynth.h', + 'include/freetype/ftsystem.h', + 'include/freetype/fttrigon.h', + 'include/freetype/fttypes.h', + 'include/freetype/ftwinfnt.h', + 'include/freetype/t1tables.h', + 'include/freetype/ttnameid.h', + 'include/freetype/tttables.h', + 'include/freetype/tttags.h', +]) + +ft2_config_headers = files([ + 'include/freetype/config/ftconfig.h', + 'include/freetype/config/ftheader.h', + 'include/freetype/config/ftstdlib.h', + 'include/freetype/config/integer-types.h', + 'include/freetype/config/mac-support.h', + 'include/freetype/config/public-macros.h', +]) + +ft2_defines = ['-DFT2_BUILD_LIBRARY=1'] + + +# System support file. + +cc = meson.get_compiler('c') + +# NOTE: msys2 on Windows has `unistd.h` and `fcntl.h` but not `sys/mman.h`! +has_unistd_h = cc.has_header('unistd.h') +has_fcntl_h = cc.has_header('fcntl.h') +has_sys_mman_h = cc.has_header('sys/mman.h') + +mmap_option = get_option('mmap') + +use_unix_ftsystem_c = false +if mmap_option.disabled() + ft2_sources += files(['src/base/ftsystem.c',]) +elif host_machine.system() == 'windows' + ft2_sources += files(['builds/windows/ftsystem.c',]) +else + if has_unistd_h and has_fcntl_h and has_sys_mman_h + # This version of `ftsystem.c` uses `mmap` to read input font files. + ft2_sources += files(['builds/unix/ftsystem.c',]) + use_unix_ftsystem_c = true + elif mmap_option.enabled() + error('mmap was enabled via options but is not available,' + + ' required headers were not found!') + else + ft2_sources += files(['src/base/ftsystem.c',]) + endif +endif + + +# Debug support file +# +# NOTE: Some specialized versions exist for other platforms not supported by +# Meson. Most implementation differences are extremely minor, i.e., in the +# implementation of `FT_Message` and `FT_Panic`, and getting the `FT2_DEBUG` +# value from the environment, when this is supported. A smaller refactor +# might make these platform-specific files much smaller, and could be moved +# into `ftsystem.c` as well. +# +if host_machine.system() == 'windows' + winmod = import('windows') + ft2_sources += [ + 'builds/windows/ftdebug.c', + winmod.compile_resources('src/base/ftver.rc'), + ] +else + ft2_sources += 'src/base/ftdebug.c' +endif + +ft2_deps = [] + + +# Generate `ftoption.h` based on available dependencies. + +process_header_command = [python_exe, + files('builds/meson/process_ftoption_h.py'), + '@INPUT@', '--output=@OUTPUT@'] +ftoption_command = process_header_command + + +# GZip support +zlib_dep = dependency('zlib', + required: get_option('zlib'), + fallback: 'zlib') + +if zlib_dep.found() + ftoption_command += [ + '--enable=FT_CONFIG_OPTION_USE_ZLIB', + '--enable=FT_CONFIG_OPTION_SYSTEM_ZLIB', + ] + ft2_sources += files(['src/gzip/ftgzip.c',]) + ft2_deps += [zlib_dep] +else + ftoption_command += ['--disable=FT_CONFIG_OPTION_USE_ZLIB'] +endif + +# BZip2 support +bzip2_dep = cc.find_library('bz2', + required: get_option('bzip2')) + +if bzip2_dep.found() + ftoption_command += ['--enable=FT_CONFIG_OPTION_USE_BZIP2'] + ft2_sources += files(['src/bzip2/ftbzip2.c',]) + ft2_deps += [bzip2_dep] +endif + +# PNG support +libpng_dep = dependency('libpng', + required: get_option('png'), + fallback: 'libpng') + +if libpng_dep.found() + ftoption_command += ['--enable=FT_CONFIG_OPTION_USE_PNG'] + ft2_deps += [libpng_dep] +else + ftoption_command += ['--disable=FT_CONFIG_OPTION_USE_PNG'] +endif + +# Harfbuzz support +harfbuzz_dep = dependency('harfbuzz', + version: '>= 2.0.0', + required: get_option('harfbuzz')) + +if harfbuzz_dep.found() + ftoption_command += ['--enable=FT_CONFIG_OPTION_USE_HARFBUZZ'] + ft2_deps += [harfbuzz_dep] +endif + +# Brotli decompression support +brotli_dep = dependency('libbrotlidec', + required: get_option('brotli')) + +if brotli_dep.found() + ftoption_command += ['--enable=FT_CONFIG_OPTION_USE_BROTLI'] + ft2_deps += [brotli_dep] +endif + +# We can now generate `ftoption.h`. +ftoption_h = custom_target('ftoption.h', + input: 'include/freetype/config/ftoption.h', + output: 'ftoption.h', + command: ftoption_command, + install: true, + install_dir: 'include/freetype2/freetype/config', +) +ft2_sources += ftoption_h +ft2_defines += ['-DFT_CONFIG_OPTIONS_H='] + +if host_machine.system() == 'windows' + ft2_defines += ['-DDLL_EXPORT=1'] +endif + + +# Generate `ftconfig.h`. + +ftconfig_command = process_header_command +if has_unistd_h + ftconfig_command += '--enable=HAVE_UNISTD_H' +endif +if has_fcntl_h + ftconfig_command += '--enable=HAVE_FCNTL_H' +endif + +if use_unix_ftsystem_c + ftconfig_h_in = files('builds/unix/ftconfig.h.in') + ftconfig_h = custom_target('ftconfig.h', + input: ftconfig_h_in, + output: 'ftconfig.h', + command: ftconfig_command, + install: true, + install_dir: 'include/freetype2/freetype/config', + ) + ft2_sources += ftconfig_h + ft2_defines += ['-DFT_CONFIG_CONFIG_H='] +endif + + +ft2_lib = library('freetype', + sources: ft2_sources + [ftmodule_h], + c_args: ft2_defines, + gnu_symbol_visibility: 'hidden', + include_directories: ft2_includes, + dependencies: ft2_deps, + install: true, + version: ft2_so_version, +) + + +# To be used by other projects including this one through `subproject`. +freetype_dep = declare_dependency( + include_directories: ft2_includes, + link_with: ft2_lib, + version: ft2_pkgconfig_version) + +meson.override_dependency('freetype2', freetype_dep) + + +# NOTE: Using both `install_dir` and `subdir` doesn't seem to work below, +# i.e., the subdir value seems to be ignored, contrary to examples in the +# Meson documentation. +install_headers('include/ft2build.h', + install_dir: 'include/freetype2') +install_headers(ft2_public_headers, + install_dir: 'include/freetype2/freetype') +install_headers(ft2_config_headers, + install_dir: 'include/freetype2/freetype/config') + + +pkgconfig = import('pkgconfig') + +pkgconfig.generate(ft2_lib, + filebase: 'freetype2', + name: 'FreeType 2', + description: 'A free, high-quality, and portable font engine.', + url: 'https://freetype.org', + subdirs: 'freetype2', + version: ft2_pkgconfig_version, +) + +if get_option('tests').enabled() + subdir('tests') +endif + +# NOTE: Unlike the old `make refdoc` command, this generates the +# documentation under `$BUILD/docs/` since Meson doesn't support modifying +# the source root directory (which is a good thing). +gen_docs = custom_target('freetype2 reference documentation', + output: 'docs', + input: ft2_public_headers + ft2_config_headers, + command: [python_exe, + files('builds/meson/generate_reference_docs.py'), + '--version=' + meson.project_version(), + '--input-dir=' + meson.source_root(), + '--output-dir=@OUTPUT@' + ], +) + + +summary({'OS': host_machine.system(), + 'Zlib': zlib_dep.found() ? 'yes' : 'no', + 'Bzip2': bzip2_dep.found() ? 'yes' : 'no', + 'Png': libpng_dep.found() ? 'yes' : 'no', + 'Harfbuzz': harfbuzz_dep.found() ? 'yes' : 'no', + 'Brotli': brotli_dep.found() ? 'yes' : 'no', + }, section: 'Configuration Options Summary:') + +# EOF diff --git a/pkgs/freetype/build.sh b/gui/freetype/build.sh similarity index 85% rename from pkgs/freetype/build.sh rename to gui/freetype/build.sh index 7a8fc5e..1d14ff7 100644 --- a/pkgs/freetype/build.sh +++ b/gui/freetype/build.sh @@ -1,5 +1,5 @@ pkgname=freetype -pkgver=2.10.4 +pkgver=2.11.0 fetch() { curl "https://download-mirror.savannah.gnu.org/releases/freetype/freetype-$pkgver.tar.xz" -o $pkgname-$pkgver.tar.xz @@ -13,7 +13,8 @@ build() { meson .. \ --buildtype=release \ --prefix=/usr \ - --libexecdir=lib + --libexecdir=lib \ + -Dharfbuzz=disabled samu } @@ -23,6 +24,10 @@ package() { DESTDIR=$pkgdir samu install } +backup() { + return +} + license() { cd $pkgname-$pkgver cat LICENSE diff --git a/pkgs/glfw/build.sh b/gui/glfw/build.sh similarity index 87% rename from pkgs/glfw/build.sh rename to gui/glfw/build.sh index d9c4a64..fcdf976 100644 --- a/pkgs/glfw/build.sh +++ b/gui/glfw/build.sh @@ -15,7 +15,9 @@ build() { -DCMAKE_INSTALL_PREFIX=/usr \ -DCMAKE_INSTALL_LIBDIR=lib \ -DGLFW_USE_WAYLAND=1 \ - -DGLFW_BUILD_DOCS=0 + -DGLFW_BUILD_DOCS=0 \ + -DGLFW_BUILD_EXAMPLES=1 \ + -DBUILD_SHARED_LIBS=ON samu } diff --git a/gui/glm/build.sh b/gui/glm/build.sh new file mode 100644 index 0000000..502e2d8 --- /dev/null +++ b/gui/glm/build.sh @@ -0,0 +1,33 @@ +pkgname=glm +pkgver=0.9.9.8 + +fetch() { + curl -L "https://github.com/g-truc/glm/archive/refs/tags/$pkgver.tar.gz" -o $pkgname-$pkgver.tar.gz + tar -xf $pkgname-$pkgver.tar.gz + mkdir $pkgname-$pkgver/build +} + +build() { + cd $pkgname-$pkgver + cd build + cmake -G Ninja ../ \ + -DCMAKE_BUILD_TYPE=Release \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DCMAKE_INSTALL_LIBDIR=lib \ + -DCMAKE_CXX_FLAGS='-Wno-implicit-int-float-conversion -Wno-implicit-int-conversion' + samu +} + +package() { + cd $pkgname-$pkgver + install -d $pkgdir/usr/include + cp -r ./glm $pkgdir/usr/include/ + install -d $pkgdir/usr/lib/pkgconfig + cp ../../glm.pc $pkgdir/usr/lib/pkgconfig +} + +license() { + cd $pkgname-$pkgver + cat LICENSE +# cat COPYING +} diff --git a/gui/glm/glm.pc b/gui/glm/glm.pc new file mode 100644 index 0000000..e3bb5ac --- /dev/null +++ b/gui/glm/glm.pc @@ -0,0 +1,7 @@ +prefix=/usr +includedir=${prefix}/include + +Name: GLM +Description: OpenGL Mathematics +Version: 0.9.9 +Cflags: -I${includedir} diff --git a/pkgs/glslang/build.sh b/gui/glslang/build.sh similarity index 100% rename from pkgs/glslang/build.sh rename to gui/glslang/build.sh diff --git a/pkgs/grim/build.sh b/gui/grim/build.sh similarity index 100% rename from pkgs/grim/build.sh rename to gui/grim/build.sh diff --git a/pkgs/harfbuzz/build.sh b/gui/harfbuzz/build.sh similarity index 77% rename from pkgs/harfbuzz/build.sh rename to gui/harfbuzz/build.sh index 6881ed8..b4d4215 100644 --- a/pkgs/harfbuzz/build.sh +++ b/gui/harfbuzz/build.sh @@ -1,8 +1,8 @@ pkgname=harfbuzz -pkgver=2.7.4 +pkgver=3.0.0 fetch() { - curl -L "https://github.com/harfbuzz/harfbuzz/releases/download/2.7.4/harfbuzz-2.7.4.tar.xz" -o $pkgname-$pkgver.tar.xz + curl -L "https://github.com/harfbuzz/harfbuzz/releases/download/$pkgver/harfbuzz-$pkgver.tar.xz" -o $pkgname-$pkgver.tar.xz tar -xf $pkgname-$pkgver.tar.xz mkdir $pkgname-$pkgver/build } @@ -10,13 +10,14 @@ fetch() { build() { cd $pkgname-$pkgver cd build - meson .. \ + CFLAGS="$CFLAGS -Wunused-but-set-variable" meson .. \ --buildtype=release \ --prefix=/usr \ --libexecdir=lib \ -Dglib=disabled \ -Dgobject=disabled \ -Dicu=enabled + samu } diff --git a/gui/i3status-rs/build.sh b/gui/i3status-rs/build.sh new file mode 100644 index 0000000..eb4c0b8 --- /dev/null +++ b/gui/i3status-rs/build.sh @@ -0,0 +1,30 @@ +pkgname=i3status-rust +pkgver=0.20.4 + +_clear_vendor_checksums() { + sed -i 's/\("files":{\)[^}]*/\1/' vendor/$1/.cargo-checksum.json +} + +fetch() { + curl -L "https://github.com/greshake/i3status-rust/archive/refs/tags/v$pkgver.tar.gz" -o $pkgname-$pkgver.tar.xz + tar -xf $pkgname-$pkgver.tar.xz + cd $pkgname-$pkgver + mkdir -p .cargo + /usr/src/rust-bootstrap/build/rust-root/bin/cargo vendor > .cargo/config +} + +build() { + cd $pkgname-$pkgver + cargo build --release --locked --all-features +} + +package() { + cd $pkgname-$pkgver + install -Dm755 target/release/i3status-rs $pkgdir/usr/bin/i3status-rs +} + +license() { + cd $pkgname-$pkgver + cat LICENSE +# cat COPYING +} diff --git a/pkgs/icu/build.sh b/gui/icu/build.sh similarity index 88% rename from pkgs/icu/build.sh rename to gui/icu/build.sh index c0c53be..80e4a97 100644 --- a/pkgs/icu/build.sh +++ b/gui/icu/build.sh @@ -18,13 +18,13 @@ build() { --build=$TRIPLE \ --host=$TRIPLE - gmake + bad --gmake gmake } package() { cd $pkgname-$pkgver cd source - gmake install DESTDIR=$pkgdir + bad --gmake gmake install DESTDIR=$pkgdir } license() { diff --git a/pkgs/kanshi/build.sh b/gui/kanshi/build.sh similarity index 100% rename from pkgs/kanshi/build.sh rename to gui/kanshi/build.sh diff --git a/pkgs/libass/build.sh b/gui/libass/build.sh similarity index 84% rename from pkgs/libass/build.sh rename to gui/libass/build.sh index dcbabb1..09bf809 100644 --- a/pkgs/libass/build.sh +++ b/gui/libass/build.sh @@ -10,8 +10,8 @@ build() { cd $pkgname-$pkgver ./configure \ --prefix=/usr \ - --build=x86_64-unknown-linux-musl \ - --host=x86_64-unknown-linux-musl \ + --build=$TRIPLE \ + --host=$TRIPLE \ --disable-asm make diff --git a/pkgs/libdrm/COPYING b/gui/libdrm/COPYING similarity index 100% rename from pkgs/libdrm/COPYING rename to gui/libdrm/COPYING diff --git a/pkgs/libdrm/build.sh b/gui/libdrm/build.sh similarity index 78% rename from pkgs/libdrm/build.sh rename to gui/libdrm/build.sh index 9cf740e..8e5be2c 100644 --- a/pkgs/libdrm/build.sh +++ b/gui/libdrm/build.sh @@ -1,8 +1,7 @@ -pkgver=2.4.106 +pkgver=2.4.109 pkgname=libdrm dep="libpciaccess" bad="" -ext="dev" fetch() { curl -L "https://dri.freedesktop.org/libdrm/libdrm-$pkgver.tar.xz" -o $pkgname-$pkgver.tar.gz @@ -20,9 +19,8 @@ package() { DESTDIR=$pkgdir samu -C build install } -package_dev() { - cd $pkgname-$pkgver - DESTDIR=$pkgdir samu -C build install +backup() { + return } license() { diff --git a/pkgs/wayland/build.sh b/gui/libepoxy/build.sh similarity index 60% rename from pkgs/wayland/build.sh rename to gui/libepoxy/build.sh index 6c8bcba..a2cddbe 100644 --- a/pkgs/wayland/build.sh +++ b/gui/libepoxy/build.sh @@ -1,9 +1,8 @@ -pkgname=wayland -pkgver=1.19.0 -deps="libxml2" +pkgname=libepoxy +pkgver=1.5.9 fetch() { - curl "https://wayland.freedesktop.org/releases/wayland-1.19.0.tar.xz" -o $pkgname-$pkgver.tar.xz + curl -L "https://github.com/anholt/libepoxy/releases/download/$pkgver/libepoxy-$pkgver.tar.xz" -o $pkgname-$pkgver.tar.xz tar -xf $pkgname-$pkgver.tar.xz mkdir $pkgname-$pkgver/build } @@ -14,7 +13,9 @@ build() { meson .. \ --buildtype=release \ --prefix=/usr \ - -Ddocumentation=false + --libexecdir=lib \ + -Dglx=no \ + -Dx11=false samu } diff --git a/pkgs/libevdev/build.sh b/gui/libevdev/build.sh similarity index 100% rename from pkgs/libevdev/build.sh rename to gui/libevdev/build.sh diff --git a/gui/libglvnd/build.sh b/gui/libglvnd/build.sh new file mode 100644 index 0000000..a8d647b --- /dev/null +++ b/gui/libglvnd/build.sh @@ -0,0 +1,31 @@ +pkgname=libglvnd +pkgver=master + +fetch() { + curl -L "https://github.com/NVIDIA/libglvnd/archive/refs/heads/master.tar.gz" -o $pkgname-$pkgver.tar.xz + tar -xf $pkgname-$pkgver.tar.xz + mkdir $pkgname-$pkgver/build +} + +build() { + cd $pkgname-$pkgver + cd build + meson .. \ + --buildtype=release \ + --prefix=/usr \ + --libexecdir=lib \ + -Dtls=disabled + samu +} + +package() { + cd $pkgname-$pkgver + cd build + DESTDIR=$pkgdir samu install +} + +license() { + cd $pkgname-$pkgver + cat LICENSE +# cat COPYING +} diff --git a/pkgs/libinput/build.sh b/gui/libinput/build.sh similarity index 100% rename from pkgs/libinput/build.sh rename to gui/libinput/build.sh diff --git a/pkgs/libpciaccess/build.sh b/gui/libpciaccess/build.sh similarity index 100% rename from pkgs/libpciaccess/build.sh rename to gui/libpciaccess/build.sh diff --git a/gui/libpng/build.sh b/gui/libpng/build.sh new file mode 100644 index 0000000..57ec63c --- /dev/null +++ b/gui/libpng/build.sh @@ -0,0 +1,33 @@ +pkgname=libpng +pkgver=1.6.37 + +fetch() { + curl -L "https://downloads.sourceforge.net/sourceforge/$pkgname/$pkgname-$pkgver.tar.xz" -o $pkgname-$pkgver.tar.xz + tar -xf $pkgname-$pkgver.tar.xz +} + +build() { + cd $pkgname-$pkgver + ./configure \ + --prefix=/usr \ + --with-zlib-prefix=/usr \ + --build=$TRIPLE \ + --host=$TRIPLE + + make +} + +package() { + cd $pkgname-$pkgver + make install DESTDIR=$pkgdir +} + +backup() { + return +} + +license() { + cd $pkgname-$pkgver + cat LICENSE +# cat COPYING +} diff --git a/pkgs/libudev-zero/build.sh b/gui/libudev-zero/build.sh similarity index 74% rename from pkgs/libudev-zero/build.sh rename to gui/libudev-zero/build.sh index ae384e6..3f2c92e 100644 --- a/pkgs/libudev-zero/build.sh +++ b/gui/libudev-zero/build.sh @@ -1,8 +1,8 @@ pkgname=libudev-zero -pkgver=0.4.7 +pkgver=1.0.0 fetch() { - curl -L "https://github.com/illiliti/libudev-zero/archive/0.4.7.tar.gz" -o $pkgname-$pkgver.tar.xz + curl -L "https://github.com/illiliti/libudev-zero/archive/$pkgver.tar.gz" -o $pkgname-$pkgver.tar.xz tar -xf $pkgname-$pkgver.tar.xz } @@ -20,6 +20,10 @@ package() { install -Dm755 ./contrib/libudev-zero-hotplug-helper $pkgdir/usr/sbin/ } +backup() { + return +} + license() { cd $pkgname-$pkgver cat LICENSE diff --git a/pkgs/libxkbcommon/build.sh b/gui/libxkbcommon/build.sh similarity index 100% rename from pkgs/libxkbcommon/build.sh rename to gui/libxkbcommon/build.sh diff --git a/pkgs/mesa/LICENSE b/gui/mesa/LICENSE similarity index 100% rename from pkgs/mesa/LICENSE rename to gui/mesa/LICENSE diff --git a/pkgs/mesa/alpine-tls.patch b/gui/mesa/alpine-tls.patch similarity index 100% rename from pkgs/mesa/alpine-tls.patch rename to gui/mesa/alpine-tls.patch diff --git a/pkgs/mesa/build.sh b/gui/mesa/build.sh similarity index 83% rename from pkgs/mesa/build.sh rename to gui/mesa/build.sh index cbd35ac..48bfdf9 100644 --- a/pkgs/mesa/build.sh +++ b/gui/mesa/build.sh @@ -1,10 +1,12 @@ pkgname=mesa -pkgver=21.1.2 -deps="musl:wayland:wayland-protocols:llvm:zlib:expat:libffi:libdrm:python-mako" +#pkgver=21.2.1 +pkgver=main +deps="musl:wayland:wayland-protocols:llvm:zlib-ng:expat:libffi:libdrm:python-mako" ext=dev fetch() { - curl "https://archive.mesa3d.org/$pkgname-$pkgver.tar.xz" -o $pkgname-$pkgver.tar.gz +# curl "https://archive.mesa3d.org/$pkgname-$pkgver.tar.xz" -o $pkgname-$pkgver.tar.gz + curl "https://gitlab.freedesktop.org/mesa/mesa/-/archive/main/mesa-main.tar.gz" -o $pkgname-$pkgver.tar.gz tar -xf $pkgname-$pkgver.tar.gz mkdir $pkgname-$pkgver/build cp ../byacc-out-mid-build.patch . @@ -26,7 +28,7 @@ case $ARCH in aarch64) _dri_drivers="" - _gallium_drivers="vc4,v3d" + _gallium_drivers="vc4,v3d,zink" _vulkan_drivers="broadcom" ;; esac @@ -60,7 +62,7 @@ build() { -Dopengl=true \ -Dgbm=true \ -Dglx=disabled \ - -Dglvnd=false \ + -Dglvnd=true \ -Degl=true \ -Dllvm=true \ -Dshared-llvm=true \ diff --git a/pkgs/mesa/byacc-out-mid-build.patch b/gui/mesa/byacc-out-mid-build.patch similarity index 100% rename from pkgs/mesa/byacc-out-mid-build.patch rename to gui/mesa/byacc-out-mid-build.patch diff --git a/pkgs/mesa/byacc.patch b/gui/mesa/byacc.patch similarity index 100% rename from pkgs/mesa/byacc.patch rename to gui/mesa/byacc.patch diff --git a/gui/mesa/v3d.patch b/gui/mesa/v3d.patch new file mode 100644 index 0000000..21d85a5 --- /dev/null +++ b/gui/mesa/v3d.patch @@ -0,0 +1,10 @@ +--- a/src/gallium/drivers/v3d/v3dx_format_table.c ++++ b/src/gallium/drivers/v3d/v3dx_format_table.c +@@ -70,6 +70,7 @@ + FORMAT(R8G8B8A8_SNORM, NO, RGBA8_SNORM, SWIZ_XYZW, 16, 0), + FORMAT(R8G8B8X8_SNORM, NO, RGBA8_SNORM, SWIZ_XYZ1, 16, 0), + FORMAT(R10G10B10A2_UNORM, RGB10_A2, RGB10_A2, SWIZ_XYZW, 16, 0), ++ FORMAT(R10G10B10X2_UNORM, RGB10_A2, RGB10_A2, SWIZ_XYZW, 16, 0), + FORMAT(R10G10B10A2_UINT, RGB10_A2UI, RGB10_A2UI, SWIZ_XYZW, 16, 0), + + FORMAT(A4B4G4R4_UNORM, ABGR4444, RGBA4, SWIZ_XYZW, 16, 0), diff --git a/gui/mesa/v3dx_format_table.c b/gui/mesa/v3dx_format_table.c new file mode 100644 index 0000000..ed4ab51 --- /dev/null +++ b/gui/mesa/v3dx_format_table.c @@ -0,0 +1,364 @@ +/* + * Copyright © 2014-2018 Broadcom + * + * Permission is hereby granted, free of charge, to any person obtaining a + * copy of this software and associated documentation files (the "Software"), + * to deal in the Software without restriction, including without limitation + * the rights to use, copy, modify, merge, publish, distribute, sublicense, + * and/or sell copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice (including the next + * paragraph) shall be included in all copies or substantial portions of the + * Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL + * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS + * IN THE SOFTWARE. + */ + +#include "util/format/u_format.h" + +#include "v3d_context.h" +#include "broadcom/cle/v3dx_pack.h" +#include "broadcom/common/v3d_macros.h" +#include "v3d_format_table.h" + +#define SWIZ(x,y,z,w) { \ + PIPE_SWIZZLE_##x, \ + PIPE_SWIZZLE_##y, \ + PIPE_SWIZZLE_##z, \ + PIPE_SWIZZLE_##w \ +} + +#define FORMAT(pipe, rt, tex, swiz, return_size, return_channels) \ + [PIPE_FORMAT_##pipe] = { \ + true, \ + V3D_OUTPUT_IMAGE_FORMAT_##rt, \ + TEXTURE_DATA_FORMAT_##tex, \ + swiz, \ + return_size, \ + return_channels, \ + } + +#define SWIZ_X001 SWIZ(X, 0, 0, 1) +#define SWIZ_XY01 SWIZ(X, Y, 0, 1) +#define SWIZ_XYZ1 SWIZ(X, Y, Z, 1) +#define SWIZ_XYZW SWIZ(X, Y, Z, W) +#define SWIZ_YZWX SWIZ(Y, Z, W, X) +#define SWIZ_YZW1 SWIZ(Y, Z, W, 1) +#define SWIZ_ZYXW SWIZ(Z, Y, X, W) +#define SWIZ_ZYX1 SWIZ(Z, Y, X, 1) +#define SWIZ_XXXY SWIZ(X, X, X, Y) +#define SWIZ_XXX1 SWIZ(X, X, X, 1) +#define SWIZ_XXXX SWIZ(X, X, X, X) +#define SWIZ_000X SWIZ(0, 0, 0, X) + +static const struct v3d_format format_table[] = { + FORMAT(B8G8R8A8_UNORM, RGBA8, RGBA8, SWIZ_ZYXW, 16, 0), + FORMAT(B8G8R8X8_UNORM, RGBA8, RGBA8, SWIZ_ZYX1, 16, 0), + FORMAT(B8G8R8A8_SRGB, SRGB8_ALPHA8, RGBA8, SWIZ_ZYXW, 16, 0), + FORMAT(B8G8R8X8_SRGB, SRGB8_ALPHA8, RGBA8, SWIZ_ZYX1, 16, 0), + FORMAT(R8G8B8A8_UNORM, RGBA8, RGBA8, SWIZ_XYZW, 16, 0), + FORMAT(R8G8B8X8_UNORM, RGBA8, RGBA8, SWIZ_XYZ1, 16, 0), + FORMAT(R8G8B8A8_SRGB, SRGB8_ALPHA8, RGBA8, SWIZ_XYZW, 16, 0), + FORMAT(R8G8B8X8_SRGB, SRGB8_ALPHA8, RGBA8, SWIZ_XYZ1, 16, 0), + FORMAT(R8G8B8A8_SNORM, NO, RGBA8_SNORM, SWIZ_XYZW, 16, 0), + FORMAT(R8G8B8X8_SNORM, NO, RGBA8_SNORM, SWIZ_XYZ1, 16, 0), + FORMAT(R10G10B10A2_UNORM, RGB10_A2, RGB10_A2, SWIZ_XYZW, 16, 0), + FORMAT(R10G10B10X2_UNORM, RGB10_A2, RGB10_A2, SWIZ_XYZW, 16, 0), + FORMAT(R10G10B10A2_UINT, RGB10_A2UI, RGB10_A2UI, SWIZ_XYZW, 16, 0), + + FORMAT(A4B4G4R4_UNORM, ABGR4444, RGBA4, SWIZ_XYZW, 16, 0), + + FORMAT(A1B5G5R5_UNORM, ABGR1555, RGB5_A1, SWIZ_XYZW, 16, 0), + FORMAT(X1B5G5R5_UNORM, ABGR1555, RGB5_A1, SWIZ_XYZ1, 16, 0), + FORMAT(B5G6R5_UNORM, BGR565, RGB565, SWIZ_XYZ1, 16, 0), + + FORMAT(R8_UNORM, R8, R8, SWIZ_X001, 16, 0), + FORMAT(R8_SNORM, NO, R8_SNORM, SWIZ_X001, 16, 0), + FORMAT(R8G8_UNORM, RG8, RG8, SWIZ_XY01, 16, 0), + FORMAT(R8G8_SNORM, NO, RG8_SNORM, SWIZ_XY01, 16, 0), + + FORMAT(R16_UNORM, NO, R16, SWIZ_X001, 32, 1), + FORMAT(R16_SNORM, NO, R16_SNORM, SWIZ_X001, 32, 1), + FORMAT(R16_FLOAT, R16F, R16F, SWIZ_X001, 16, 0), + FORMAT(R32_FLOAT, R32F, R32F, SWIZ_X001, 32, 1), + + FORMAT(R16G16_UNORM, NO, RG16, SWIZ_XY01, 32, 2), + FORMAT(R16G16_SNORM, NO, RG16_SNORM, SWIZ_XY01, 32, 2), + FORMAT(R16G16_FLOAT, RG16F, RG16F, SWIZ_XY01, 16, 0), + FORMAT(R32G32_FLOAT, RG32F, RG32F, SWIZ_XY01, 32, 2), + + FORMAT(R16G16B16A16_UNORM, NO, RGBA16, SWIZ_XYZW, 32, 4), + FORMAT(R16G16B16A16_SNORM, NO, RGBA16_SNORM, SWIZ_XYZW, 32, 4), + FORMAT(R16G16B16A16_FLOAT, RGBA16F, RGBA16F, SWIZ_XYZW, 16, 0), + FORMAT(R32G32B32A32_FLOAT, RGBA32F, RGBA32F, SWIZ_XYZW, 32, 4), + + /* If we don't have L/A/LA16, mesa/st will fall back to RGBA16. */ + FORMAT(L16_UNORM, NO, R16, SWIZ_XXX1, 32, 1), + FORMAT(L16_SNORM, NO, R16_SNORM, SWIZ_XXX1, 32, 1), + FORMAT(I16_UNORM, NO, R16, SWIZ_XXXX, 32, 1), + FORMAT(I16_SNORM, NO, R16_SNORM, SWIZ_XXXX, 32, 1), + FORMAT(A16_UNORM, NO, R16, SWIZ_000X, 32, 1), + FORMAT(A16_SNORM, NO, R16_SNORM, SWIZ_000X, 32, 1), + FORMAT(L16A16_UNORM, NO, RG16, SWIZ_XXXY, 32, 2), + FORMAT(L16A16_SNORM, NO, RG16_SNORM, SWIZ_XXXY, 32, 2), + + FORMAT(A8_UNORM, NO, R8, SWIZ_000X, 16, 0), + FORMAT(L8_UNORM, NO, R8, SWIZ_XXX1, 16, 0), + FORMAT(I8_UNORM, NO, R8, SWIZ_XXXX, 16, 0), + FORMAT(L8A8_UNORM, NO, RG8, SWIZ_XXXY, 16, 0), + + FORMAT(R8_SINT, R8I, R8I, SWIZ_X001, 16, 0), + FORMAT(R8_UINT, R8UI, R8UI, SWIZ_X001, 16, 0), + FORMAT(R8G8_SINT, RG8I, RG8I, SWIZ_XY01, 16, 0), + FORMAT(R8G8_UINT, RG8UI, RG8UI, SWIZ_XY01, 16, 0), + FORMAT(R8G8B8A8_SINT, RGBA8I, RGBA8I, SWIZ_XYZW, 16, 0), + FORMAT(R8G8B8A8_UINT, RGBA8UI, RGBA8UI, SWIZ_XYZW, 16, 0), + + FORMAT(R16_SINT, R16I, R16I, SWIZ_X001, 16, 0), + FORMAT(R16_UINT, R16UI, R16UI, SWIZ_X001, 16, 0), + FORMAT(R16G16_SINT, RG16I, RG16I, SWIZ_XY01, 16, 0), + FORMAT(R16G16_UINT, RG16UI, RG16UI, SWIZ_XY01, 16, 0), + FORMAT(R16G16B16A16_SINT, RGBA16I, RGBA16I, SWIZ_XYZW, 16, 0), + FORMAT(R16G16B16A16_UINT, RGBA16UI, RGBA16UI, SWIZ_XYZW, 16, 0), + + FORMAT(R32_SINT, R32I, R32I, SWIZ_X001, 32, 1), + FORMAT(R32_UINT, R32UI, R32UI, SWIZ_X001, 32, 1), + FORMAT(R32G32_SINT, RG32I, RG32I, SWIZ_XY01, 32, 2), + FORMAT(R32G32_UINT, RG32UI, RG32UI, SWIZ_XY01, 32, 2), + FORMAT(R32G32B32A32_SINT, RGBA32I, RGBA32I, SWIZ_XYZW, 32, 4), + FORMAT(R32G32B32A32_UINT, RGBA32UI, RGBA32UI, SWIZ_XYZW, 32, 4), + + FORMAT(A8_SINT, R8I, R8I, SWIZ_000X, 16, 0), + FORMAT(A8_UINT, R8UI, R8UI, SWIZ_000X, 16, 0), + FORMAT(A16_SINT, R16I, R16I, SWIZ_000X, 16, 0), + FORMAT(A16_UINT, R16UI, R16UI, SWIZ_000X, 16, 0), + FORMAT(A32_SINT, R32I, R32I, SWIZ_000X, 32, 1), + FORMAT(A32_UINT, R32UI, R32UI, SWIZ_000X, 32, 1), + + FORMAT(R11G11B10_FLOAT, R11F_G11F_B10F, R11F_G11F_B10F, SWIZ_XYZ1, 16, 0), + FORMAT(R9G9B9E5_FLOAT, NO, RGB9_E5, SWIZ_XYZ1, 16, 0), + +#if V3D_VERSION >= 40 + FORMAT(S8_UINT_Z24_UNORM, D24S8, DEPTH24_X8, SWIZ_XXXX, 32, 1), + FORMAT(X8Z24_UNORM, D24S8, DEPTH24_X8, SWIZ_XXXX, 32, 1), + FORMAT(S8X24_UINT, S8, RGBA8UI, SWIZ_XXXX, 16, 1), + FORMAT(Z32_FLOAT, D32F, DEPTH_COMP32F, SWIZ_XXXX, 32, 1), + FORMAT(Z16_UNORM, D16, DEPTH_COMP16,SWIZ_XXXX, 32, 1), + + /* Pretend we support this, but it'll be separate Z32F depth and S8. */ + FORMAT(Z32_FLOAT_S8X24_UINT, D32F, DEPTH_COMP32F, SWIZ_XXXX, 32, 1), + FORMAT(X32_S8X24_UINT, S8, R8UI, SWIZ_XXXX, 16, 1), +#else + FORMAT(S8_UINT_Z24_UNORM, ZS_DEPTH24_STENCIL8, DEPTH24_X8, SWIZ_XXXX, 32, 1), + FORMAT(X8Z24_UNORM, ZS_DEPTH24_STENCIL8, DEPTH24_X8, SWIZ_XXXX, 32, 1), + FORMAT(S8X24_UINT, NO, R32F, SWIZ_XXXX, 32, 1), + FORMAT(Z32_FLOAT, ZS_DEPTH_COMPONENT32F, R32F, SWIZ_XXXX, 32, 1), + FORMAT(Z16_UNORM, ZS_DEPTH_COMPONENT16, DEPTH_COMP16, SWIZ_XXXX, 32, 1), + + /* Pretend we support this, but it'll be separate Z32F depth and S8. */ + FORMAT(Z32_FLOAT_S8X24_UINT, ZS_DEPTH_COMPONENT32F, R32F, SWIZ_XXXX, 32, 1), +#endif + + FORMAT(ETC2_RGB8, NO, RGB8_ETC2, SWIZ_XYZ1, 16, 0), + FORMAT(ETC2_SRGB8, NO, RGB8_ETC2, SWIZ_XYZ1, 16, 0), + FORMAT(ETC2_RGB8A1, NO, RGB8_PUNCHTHROUGH_ALPHA1, SWIZ_XYZW, 16, 0), + FORMAT(ETC2_SRGB8A1, NO, RGB8_PUNCHTHROUGH_ALPHA1, SWIZ_XYZW, 16, 0), + FORMAT(ETC2_RGBA8, NO, RGBA8_ETC2_EAC, SWIZ_XYZW, 16, 0), + FORMAT(ETC2_SRGBA8, NO, RGBA8_ETC2_EAC, SWIZ_XYZW, 16, 0), + FORMAT(ETC2_R11_UNORM, NO, R11_EAC, SWIZ_X001, 16, 0), + FORMAT(ETC2_R11_SNORM, NO, SIGNED_R11_EAC, SWIZ_X001, 16, 0), + FORMAT(ETC2_RG11_UNORM, NO, RG11_EAC, SWIZ_XY01, 16, 0), + FORMAT(ETC2_RG11_SNORM, NO, SIGNED_RG11_EAC, SWIZ_XY01, 16, 0), + + FORMAT(DXT1_RGB, NO, BC1, SWIZ_XYZ1, 16, 0), + FORMAT(DXT1_SRGB, NO, BC1, SWIZ_XYZ1, 16, 0), + FORMAT(DXT1_RGBA, NO, BC1, SWIZ_XYZW, 16, 0), + FORMAT(DXT1_SRGBA, NO, BC1, SWIZ_XYZW, 16, 0), + FORMAT(DXT3_RGBA, NO, BC2, SWIZ_XYZW, 16, 0), + FORMAT(DXT3_SRGBA, NO, BC2, SWIZ_XYZW, 16, 0), + FORMAT(DXT5_RGBA, NO, BC3, SWIZ_XYZW, 16, 0), + FORMAT(DXT5_SRGBA, NO, BC3, SWIZ_XYZW, 16, 0), +}; + +const struct v3d_format * +v3dX(get_format_desc)(enum pipe_format f) +{ + if (f < ARRAY_SIZE(format_table) && format_table[f].present) + return &format_table[f]; + else + return NULL; +} + +void +v3dX(get_internal_type_bpp_for_output_format)(uint32_t format, + uint32_t *type, + uint32_t *bpp) +{ + switch (format) { + case V3D_OUTPUT_IMAGE_FORMAT_RGBA8: +#if V3D_VERSION < 41 + case V3D_OUTPUT_IMAGE_FORMAT_RGBX8: +#endif + case V3D_OUTPUT_IMAGE_FORMAT_RGB8: + case V3D_OUTPUT_IMAGE_FORMAT_RG8: + case V3D_OUTPUT_IMAGE_FORMAT_R8: + case V3D_OUTPUT_IMAGE_FORMAT_ABGR4444: + case V3D_OUTPUT_IMAGE_FORMAT_BGR565: + case V3D_OUTPUT_IMAGE_FORMAT_ABGR1555: + *type = V3D_INTERNAL_TYPE_8; + *bpp = V3D_INTERNAL_BPP_32; + break; + + case V3D_OUTPUT_IMAGE_FORMAT_RGBA8I: + case V3D_OUTPUT_IMAGE_FORMAT_RG8I: + case V3D_OUTPUT_IMAGE_FORMAT_R8I: + *type = V3D_INTERNAL_TYPE_8I; + *bpp = V3D_INTERNAL_BPP_32; + break; + + case V3D_OUTPUT_IMAGE_FORMAT_RGBA8UI: + case V3D_OUTPUT_IMAGE_FORMAT_RG8UI: + case V3D_OUTPUT_IMAGE_FORMAT_R8UI: + *type = V3D_INTERNAL_TYPE_8UI; + *bpp = V3D_INTERNAL_BPP_32; + break; + + case V3D_OUTPUT_IMAGE_FORMAT_SRGB8_ALPHA8: + case V3D_OUTPUT_IMAGE_FORMAT_SRGB: + case V3D_OUTPUT_IMAGE_FORMAT_RGB10_A2: + case V3D_OUTPUT_IMAGE_FORMAT_R11F_G11F_B10F: +#if V3D_VERSION < 41 + case V3D_OUTPUT_IMAGE_FORMAT_SRGBX8: +#endif + case V3D_OUTPUT_IMAGE_FORMAT_RGBA16F: + /* Note that sRGB RTs are stored in the tile buffer at 16F, + * and the conversion to sRGB happens at tilebuffer + * load/store. + */ + *type = V3D_INTERNAL_TYPE_16F; + *bpp = V3D_INTERNAL_BPP_64; + break; + + case V3D_OUTPUT_IMAGE_FORMAT_RG16F: + case V3D_OUTPUT_IMAGE_FORMAT_R16F: + *type = V3D_INTERNAL_TYPE_16F; + /* Use 64bpp to make sure the TLB doesn't throw away the alpha + * channel before alpha test happens. + */ + *bpp = V3D_INTERNAL_BPP_64; + break; + + case V3D_OUTPUT_IMAGE_FORMAT_RGBA16I: + *type = V3D_INTERNAL_TYPE_16I; + *bpp = V3D_INTERNAL_BPP_64; + break; + case V3D_OUTPUT_IMAGE_FORMAT_RG16I: + case V3D_OUTPUT_IMAGE_FORMAT_R16I: + *type = V3D_INTERNAL_TYPE_16I; + *bpp = V3D_INTERNAL_BPP_32; + break; + + case V3D_OUTPUT_IMAGE_FORMAT_RGB10_A2UI: + case V3D_OUTPUT_IMAGE_FORMAT_RGBA16UI: + *type = V3D_INTERNAL_TYPE_16UI; + *bpp = V3D_INTERNAL_BPP_64; + break; + case V3D_OUTPUT_IMAGE_FORMAT_RG16UI: + case V3D_OUTPUT_IMAGE_FORMAT_R16UI: + *type = V3D_INTERNAL_TYPE_16UI; + *bpp = V3D_INTERNAL_BPP_32; + break; + + case V3D_OUTPUT_IMAGE_FORMAT_RGBA32I: + *type = V3D_INTERNAL_TYPE_32I; + *bpp = V3D_INTERNAL_BPP_128; + break; + case V3D_OUTPUT_IMAGE_FORMAT_RG32I: + *type = V3D_INTERNAL_TYPE_32I; + *bpp = V3D_INTERNAL_BPP_64; + break; + case V3D_OUTPUT_IMAGE_FORMAT_R32I: + *type = V3D_INTERNAL_TYPE_32I; + *bpp = V3D_INTERNAL_BPP_32; + break; + + case V3D_OUTPUT_IMAGE_FORMAT_RGBA32UI: + *type = V3D_INTERNAL_TYPE_32UI; + *bpp = V3D_INTERNAL_BPP_128; + break; + case V3D_OUTPUT_IMAGE_FORMAT_RG32UI: + *type = V3D_INTERNAL_TYPE_32UI; + *bpp = V3D_INTERNAL_BPP_64; + break; + case V3D_OUTPUT_IMAGE_FORMAT_R32UI: + *type = V3D_INTERNAL_TYPE_32UI; + *bpp = V3D_INTERNAL_BPP_32; + break; + + case V3D_OUTPUT_IMAGE_FORMAT_RGBA32F: + *type = V3D_INTERNAL_TYPE_32F; + *bpp = V3D_INTERNAL_BPP_128; + break; + case V3D_OUTPUT_IMAGE_FORMAT_RG32F: + *type = V3D_INTERNAL_TYPE_32F; + *bpp = V3D_INTERNAL_BPP_64; + break; + case V3D_OUTPUT_IMAGE_FORMAT_R32F: + *type = V3D_INTERNAL_TYPE_32F; + *bpp = V3D_INTERNAL_BPP_32; + break; + + default: + /* Provide some default values, as we'll be called at RB + * creation time, even if an RB with this format isn't + * supported. + */ + *type = V3D_INTERNAL_TYPE_8; + *bpp = V3D_INTERNAL_BPP_32; + break; + } +} + +bool +v3dX(tfu_supports_tex_format)(enum V3DX(Texture_Data_Formats) format, + bool for_mipmap) +{ + switch (format) { + case TEXTURE_DATA_FORMAT_R8: + case TEXTURE_DATA_FORMAT_R8_SNORM: + case TEXTURE_DATA_FORMAT_RG8: + case TEXTURE_DATA_FORMAT_RG8_SNORM: + case TEXTURE_DATA_FORMAT_RGBA8: + case TEXTURE_DATA_FORMAT_RGBA8_SNORM: + case TEXTURE_DATA_FORMAT_RGB565: + case TEXTURE_DATA_FORMAT_RGBA4: + case TEXTURE_DATA_FORMAT_RGB5_A1: + case TEXTURE_DATA_FORMAT_RGB10_A2: + case TEXTURE_DATA_FORMAT_R16: + case TEXTURE_DATA_FORMAT_R16_SNORM: + case TEXTURE_DATA_FORMAT_RG16: + case TEXTURE_DATA_FORMAT_RG16_SNORM: + case TEXTURE_DATA_FORMAT_RGBA16: + case TEXTURE_DATA_FORMAT_RGBA16_SNORM: + case TEXTURE_DATA_FORMAT_R16F: + case TEXTURE_DATA_FORMAT_RG16F: + case TEXTURE_DATA_FORMAT_RGBA16F: + case TEXTURE_DATA_FORMAT_R11F_G11F_B10F: + case TEXTURE_DATA_FORMAT_R4: + return true; + case TEXTURE_DATA_FORMAT_RGB9_E5: + case TEXTURE_DATA_FORMAT_R32F: + case TEXTURE_DATA_FORMAT_RG32F: + case TEXTURE_DATA_FORMAT_RGBA32F: + return !for_mipmap; + default: + return false; + } +} diff --git a/pkgs/mtdev/build.sh b/gui/mtdev/build.sh similarity index 100% rename from pkgs/mtdev/build.sh rename to gui/mtdev/build.sh diff --git a/gui/pango/build.sh b/gui/pango/build.sh new file mode 100644 index 0000000..3938f94 --- /dev/null +++ b/gui/pango/build.sh @@ -0,0 +1,46 @@ +pkgname=pango +_pkgver=1.48 +pkgver=$_pkgver.10 + +fetch() { + curl -L "https://download.gnome.org/sources/pango/$_pkgver/pango-$pkgver.tar.xz" -o $pkgname-$pkgver.tar.xz + tar -xf $pkgname-$pkgver.tar.xz + mkdir $pkgname-$pkgver/build + cd $pkgname-$pkgver + rm -rf subprojects + : > tests/meson.build + : > examples/meson.build + : > docs/meson.build + patch -p1 < ../../no-fribidi.patch +} + +build() { + cd $pkgname-$pkgver + cd build + meson .. \ + --buildtype=release \ + --prefix=/usr \ + --libexecdir=lib \ + -Dgir=false \ + -Dgtk_doc=false \ + -Dxft=disabled \ + -Dintrospection=disabled \ + -Dinstall_tests=false + samu +} + +package() { + cd $pkgname-$pkgver + cd build + DESTDIR=$pkgdir samu install +} + +backup() { + return +} + +license() { + cd $pkgname-$pkgver + cat LICENSE +# cat COPYING +} diff --git a/gui/pango/no-fribidi.patch b/gui/pango/no-fribidi.patch new file mode 100644 index 0000000..33737c7 --- /dev/null +++ b/gui/pango/no-fribidi.patch @@ -0,0 +1,228 @@ +diff --git a/meson.build b/meson.build +index 6d8de0b..93141b0 100644 +--- a/meson.build ++++ b/meson.build +@@ -191,7 +191,6 @@ endif + pango_deps = [] + + glib_req_version = '>= 2.62' +-fribidi_req_version = '>= 1.0.6' + libthai_req_version = '>= 0.1.9' + harfbuzz_req_version = '>= 2.2.0' + fontconfig_req_version = '>= 2.11.91' +@@ -211,10 +210,6 @@ gio_dep = dependency('gio-2.0', version: glib_req_version, + fallback: ['glib', 'libgio_dep']) + pango_deps += [glib_dep, gobject_dep, gio_dep] + +-fribidi_dep = dependency('fribidi', version: fribidi_req_version, +- fallback: ['fribidi', 'libfribidi_dep'], +- default_options: ['docs=false']) +-pango_deps += fribidi_dep + + thai_dep = dependency('libthai', version: libthai_req_version, required: get_option('libthai')) + if thai_dep.found() +diff --git a/pango/pango-bidi-type.c b/pango/pango-bidi-type.c +index 32858f7..ca8adfc 100644 +--- a/pango/pango-bidi-type.c ++++ b/pango/pango-bidi-type.c +@@ -23,13 +23,20 @@ + + #include + +-#include +- + #undef PANGO_DISABLE_DEPRECATED + + #include "pango-bidi-type.h" + #include "pango-utils.h" + ++typedef uint32_t FriBidiChar; ++typedef uint32_t FriBidiCharType; ++typedef uint32_t FriBidiBracketType; ++typedef int FriBidiStrIndex; ++typedef int FriBidiParType; ++typedef signed char FriBidiLevel; ++ ++#define FRIBIDI_PAR_LTR (0x00000010L | 0x00000100L) ++ + /** + * pango_bidi_type_for_unichar: + * @ch: a Unicode character +@@ -48,40 +55,7 @@ + PangoBidiType + pango_bidi_type_for_unichar (gunichar ch) + { +- FriBidiCharType fribidi_ch_type; +- +- G_STATIC_ASSERT (sizeof (FriBidiChar) == sizeof (gunichar)); +- +- fribidi_ch_type = fribidi_get_bidi_type (ch); +- +- switch (fribidi_ch_type) +- { +- case FRIBIDI_TYPE_LTR: return PANGO_BIDI_TYPE_L; +- case FRIBIDI_TYPE_LRE: return PANGO_BIDI_TYPE_LRE; +- case FRIBIDI_TYPE_LRO: return PANGO_BIDI_TYPE_LRO; +- case FRIBIDI_TYPE_RTL: return PANGO_BIDI_TYPE_R; +- case FRIBIDI_TYPE_AL: return PANGO_BIDI_TYPE_AL; +- case FRIBIDI_TYPE_RLE: return PANGO_BIDI_TYPE_RLE; +- case FRIBIDI_TYPE_RLO: return PANGO_BIDI_TYPE_RLO; +- case FRIBIDI_TYPE_PDF: return PANGO_BIDI_TYPE_PDF; +- case FRIBIDI_TYPE_EN: return PANGO_BIDI_TYPE_EN; +- case FRIBIDI_TYPE_ES: return PANGO_BIDI_TYPE_ES; +- case FRIBIDI_TYPE_ET: return PANGO_BIDI_TYPE_ET; +- case FRIBIDI_TYPE_AN: return PANGO_BIDI_TYPE_AN; +- case FRIBIDI_TYPE_CS: return PANGO_BIDI_TYPE_CS; +- case FRIBIDI_TYPE_NSM: return PANGO_BIDI_TYPE_NSM; +- case FRIBIDI_TYPE_BN: return PANGO_BIDI_TYPE_BN; +- case FRIBIDI_TYPE_BS: return PANGO_BIDI_TYPE_B; +- case FRIBIDI_TYPE_SS: return PANGO_BIDI_TYPE_S; +- case FRIBIDI_TYPE_WS: return PANGO_BIDI_TYPE_WS; +- case FRIBIDI_TYPE_ON: return PANGO_BIDI_TYPE_ON; +- case FRIBIDI_TYPE_LRI: return PANGO_BIDI_TYPE_LRI; +- case FRIBIDI_TYPE_RLI: return PANGO_BIDI_TYPE_RLI; +- case FRIBIDI_TYPE_FSI: return PANGO_BIDI_TYPE_FSI; +- case FRIBIDI_TYPE_PDI: return PANGO_BIDI_TYPE_PDI; +- default: +- return PANGO_BIDI_TYPE_ON; +- } ++ return PANGO_BIDI_TYPE_L; + } + + /* Some bidi-related functions */ +@@ -116,36 +90,12 @@ pango_log2vis_get_embedding_levels (const gchar *text, + glong n_chars, i; + guint8 *embedding_levels_list; + const gchar *p; +- FriBidiParType fribidi_base_dir; + FriBidiCharType *bidi_types; + FriBidiBracketType *bracket_types; +- FriBidiLevel max_level; +- FriBidiCharType ored_types = 0; +- FriBidiCharType anded_strongs = FRIBIDI_TYPE_RLE; + + G_STATIC_ASSERT (sizeof (FriBidiLevel) == sizeof (guint8)); + G_STATIC_ASSERT (sizeof (FriBidiChar) == sizeof (gunichar)); + +- switch (*pbase_dir) +- { +- case PANGO_DIRECTION_LTR: +- case PANGO_DIRECTION_TTB_RTL: +- fribidi_base_dir = FRIBIDI_PAR_LTR; +- break; +- case PANGO_DIRECTION_RTL: +- case PANGO_DIRECTION_TTB_LTR: +- fribidi_base_dir = FRIBIDI_PAR_RTL; +- break; +- case PANGO_DIRECTION_WEAK_RTL: +- fribidi_base_dir = FRIBIDI_PAR_WRTL; +- break; +- case PANGO_DIRECTION_WEAK_LTR: +- case PANGO_DIRECTION_NEUTRAL: +- default: +- fribidi_base_dir = FRIBIDI_PAR_WLTR; +- break; +- } +- + if (length < 0) + length = strlen (text); + +@@ -157,20 +107,11 @@ pango_log2vis_get_embedding_levels (const gchar *text, + + for (i = 0, p = text; p < text + length; p = g_utf8_next_char(p), i++) + { +- gunichar ch = g_utf8_get_char (p); +- FriBidiCharType char_type = fribidi_get_bidi_type (ch); +- + if (i == n_chars) + break; + +- bidi_types[i] = char_type; +- ored_types |= char_type; +- if (FRIBIDI_IS_STRONG (char_type)) +- anded_strongs &= char_type; +- if (G_UNLIKELY(bidi_types[i] == FRIBIDI_TYPE_ON)) +- bracket_types[i] = fribidi_get_bracket (ch); +- else +- bracket_types[i] = FRIBIDI_NO_BRACKET; ++ bidi_types[i] = FRIBIDI_PAR_LTR; ++ bracket_types[i] = 0; + } + + /* Short-circuit (malloc-expensive) FriBidi call for unidirectional +@@ -187,56 +128,12 @@ pango_log2vis_get_embedding_levels (const gchar *text, + * o base_dir doesn't have an RTL taste. + * o there are letters, and base_dir is weak. + */ +- if (!FRIBIDI_IS_ISOLATE (ored_types) && +- !FRIBIDI_IS_RTL (ored_types) && +- !FRIBIDI_IS_ARABIC (ored_types) && +- (!FRIBIDI_IS_RTL (fribidi_base_dir) || +- (FRIBIDI_IS_WEAK (fribidi_base_dir) && +- FRIBIDI_IS_LETTER (ored_types)) +- )) +- { +- /* all LTR */ +- fribidi_base_dir = FRIBIDI_PAR_LTR; + memset (embedding_levels_list, 0, n_chars); +- goto resolved; +- } +- /* The case that all resolved levels will be RTL is much more complex. +- * No isolates, no numbers, all strongs are RTL, and one of +- * the following: +- * +- * o base_dir has an RTL taste (may be weak). +- * o there are letters, and base_dir is weak. +- */ +- else if (!FRIBIDI_IS_ISOLATE (ored_types) && +- !FRIBIDI_IS_NUMBER (ored_types) && +- FRIBIDI_IS_RTL (anded_strongs) && +- (FRIBIDI_IS_RTL (fribidi_base_dir) || +- (FRIBIDI_IS_WEAK (fribidi_base_dir) && +- FRIBIDI_IS_LETTER (ored_types)) +- )) +- { +- /* all RTL */ +- fribidi_base_dir = FRIBIDI_PAR_RTL; +- memset (embedding_levels_list, 1, n_chars); +- goto resolved; +- } +- +- +- max_level = fribidi_get_par_embedding_levels_ex (bidi_types, bracket_types, n_chars, +- &fribidi_base_dir, +- (FriBidiLevel*)embedding_levels_list); +- +- if (G_UNLIKELY(max_level == 0)) +- { +- /* fribidi_get_par_embedding_levels() failed. */ +- memset (embedding_levels_list, 0, length); +- } + +-resolved: + g_free (bidi_types); + g_free (bracket_types); + +- *pbase_dir = (fribidi_base_dir == FRIBIDI_PAR_LTR) ? PANGO_DIRECTION_LTR : PANGO_DIRECTION_RTL; ++ *pbase_dir = PANGO_DIRECTION_LTR; + + return embedding_levels_list; + } +@@ -260,17 +157,6 @@ resolved: + PangoDirection + pango_unichar_direction (gunichar ch) + { +- FriBidiCharType fribidi_ch_type; +- +- G_STATIC_ASSERT (sizeof (FriBidiChar) == sizeof (gunichar)); +- +- fribidi_ch_type = fribidi_get_bidi_type (ch); +- +- if (!FRIBIDI_IS_STRONG (fribidi_ch_type)) +- return PANGO_DIRECTION_NEUTRAL; +- else if (FRIBIDI_IS_RTL (fribidi_ch_type)) +- return PANGO_DIRECTION_RTL; +- else + return PANGO_DIRECTION_LTR; + } + diff --git a/gui/pipewire/build.sh b/gui/pipewire/build.sh new file mode 100644 index 0000000..0549167 --- /dev/null +++ b/gui/pipewire/build.sh @@ -0,0 +1,71 @@ +pkgname=pipewire +pkgver=0.3.42 + +fetch() { + curl "https://gitlab.freedesktop.org/pipewire/pipewire/-/archive/$pkgver/pipewire-$pkgver.tar.bz2" -o $pkgname-$pkgver.tar.bz2 + tar -xf $pkgname-$pkgver.tar.bz2 + mkdir $pkgname-$pkgver/build +} + +build() { + cd $pkgname-$pkgver + cd build + meson .. \ + --buildtype=release \ + --prefix=/usr \ + --libexecdir=lib \ + -Ddocs=disabled \ + -Dexamples=disabled \ + -Dman=disabled \ + -Dinstalled_tests=disabled \ + -Dgstreamer=disabled \ + -Dsystemd=disabled \ + -Dpipewire-jack=disabled \ + -Dpipewire-alsa=enabled \ + -Dpipewire-v4l2=disabled \ + -Dspa-plugins=enabled \ + -Dalsa=enabled \ + -Daudiomixer=enabled \ + -Dbluez5=disabled \ + -Dcontrol=enabled \ + -Daudiotestsrc=enabled \ + -Dffmpeg=disabled \ + -Djack=disabled \ + -Dsupport=enabled \ + -Devl=disabled \ + -Dv4l2=disabled \ + -Ddbus=enabled \ + -Dlibcamera=disabled \ + -Dvideoconvert=disabled \ + -Dvideotestsrc=disabled \ + -Dvolume=enabled \ + -Dvulkan=disabled \ + -Dpw-cat=disabled \ + -Dudev=disabled \ + -Dsdl2=disabled \ + -Dsndfile=disabled \ + -Dlibpulse=disabled \ + -Droc=disabled \ + -Davahi=disabled \ + -Dlibusb=disabled \ + -Draop=disabled \ + -Dlv2=disabled \ + -Dsession-managers="[]" + + samu +} + +package() { + cd $pkgname-$pkgver + cd build + DESTDIR=$pkgdir samu install +} + +backup() { + return +} + +license() { + cd $pkgname-$pkgver + cat COPYING +} diff --git a/pkgs/pixman/build.sh b/gui/pixman/build.sh similarity index 100% rename from pkgs/pixman/build.sh rename to gui/pixman/build.sh diff --git a/gui/qtbase/build.sh b/gui/qtbase/build.sh new file mode 100644 index 0000000..64d1e20 --- /dev/null +++ b/gui/qtbase/build.sh @@ -0,0 +1,36 @@ +pkgname=qtbase +pkgver=5.15 + +fetch() { + curl "https://invent.kde.org/qt/qt/qtbase/-/archive/$pkgver/qtbase-$pkgver.tar.gz" -o $pkgname-$pkgver.tar.xz + tar -xf $pkgname-$pkgver.tar.xz + mkdir $pkgname-$pkgver/build + mkdir $pkgname-$pkgver/.git +} + +build() { + cd $pkgname-$pkgver + cd build + + ../configure \ + -opensource \ + -confirm-license \ + -nomake examples \ + -nomake tests \ + -platform linux-clang-libc++ \ + -prefix /usr + + bad --gmake gmake +} + +package() { + cd $pkgname-$pkgver + cd build + bad --gmake gmake INSTALL_ROOT=$pkgdir install +} + +license() { + cd $pkgname-$pkgver + cat LICENSE* +# cat COPYING +} diff --git a/gui/qtbase/musl-socket.patch b/gui/qtbase/musl-socket.patch new file mode 100644 index 0000000..11b9181 --- /dev/null +++ b/gui/qtbase/musl-socket.patch @@ -0,0 +1,11 @@ +--- a/mkspecs/linux-clang/qplatformdefs.h ++++ b/mkspecs/linux-clang/qplatformdefs.h +@@ -81,7 +81,7 @@ + + #undef QT_SOCKLEN_T + +-#if defined(__GLIBC__) && (__GLIBC__ >= 2) ++#if defined(__GLIBC__) && (__GLIBC__ >= 2) || !defined(__GLIBC__) + #define QT_SOCKLEN_T socklen_t + #else + #define QT_SOCKLEN_T int diff --git a/gui/qtbase/qplatformdefs.h b/gui/qtbase/qplatformdefs.h new file mode 100644 index 0000000..f5d0562 --- /dev/null +++ b/gui/qtbase/qplatformdefs.h @@ -0,0 +1,95 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the qmake spec of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QPLATFORMDEFS_H +#define QPLATFORMDEFS_H + +// Get Qt defines/settings + +#include "qglobal.h" + +// Set any POSIX/XOPEN defines at the top of this file to turn on specific APIs + +// 1) need to reset default environment if _BSD_SOURCE is defined +// 2) need to specify POSIX thread interfaces explicitly in glibc 2.0 +// 3) it seems older glibc need this to include the X/Open stuff +#ifndef _GNU_SOURCE +# define _GNU_SOURCE +#endif + +#include + +// We are hot - unistd.h should have turned on the specific APIs we requested + +#include +#include +#include +#include +#include +#include +#include +#include + +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#define QT_USE_XOPEN_LFS_EXTENSIONS +#include "../common/posix/qplatformdefs.h" + +#undef QT_SOCKLEN_T + +#if defined(__GLIBC__) && (__GLIBC__ >= 2) || !defined(__GLIBC__) +#define QT_SOCKLEN_T socklen_t +#else +#define QT_SOCKLEN_T int +#endif + +#if defined(_XOPEN_SOURCE) && (_XOPEN_SOURCE >= 500) +#define QT_SNPRINTF ::snprintf +#define QT_VSNPRINTF ::vsnprintf +#endif + +#endif // QPLATFORMDEFS_H diff --git a/gui/qtdeclarative/build.sh b/gui/qtdeclarative/build.sh new file mode 100644 index 0000000..0320433 --- /dev/null +++ b/gui/qtdeclarative/build.sh @@ -0,0 +1,26 @@ +pkgname=qtdeclarative +pkgver=5.15 + +fetch() { + curl "https://invent.kde.org/qt/qt/$pkgname/-/archive/$pkgver/$pkgname-$pkgver.tar.gz" -o $pkgname-$pkgver.tar.xz + tar -xf $pkgname-$pkgver.tar.xz + mkdir $pkgname-$pkgver/.git +} + +build() { + cd $pkgname-$pkgver + + qmake + bad --gmake gmake +} + +package() { + cd $pkgname-$pkgver + bad --gmake gmake INSTALL_ROOT=$pkgdir install +} + +license() { + cd $pkgname-$pkgver + cat LICENSE +# cat COPYING +} diff --git a/gui/qtwayland/build.sh b/gui/qtwayland/build.sh new file mode 100644 index 0000000..4691702 --- /dev/null +++ b/gui/qtwayland/build.sh @@ -0,0 +1,26 @@ +pkgname=qtwayland +pkgver=5.15 + +fetch() { + curl "https://invent.kde.org/qt/qt/$pkgname/-/archive/$pkgver/$pkgname-$pkgver.tar.gz" -o $pkgname-$pkgver.tar.xz + tar -xf $pkgname-$pkgver.tar.xz + mkdir $pkgname-$pkgver/.git +} + +build() { + cd $pkgname-$pkgver + + qmake + bad --gmake gmake +} + +package() { + cd $pkgname-$pkgver + bad --gmake gmake INSTALL_ROOT=$pkgdir install +} + +license() { + cd $pkgname-$pkgver + cat LICENSE +# cat COPYING +} diff --git a/gui/qtwebengine/build.sh b/gui/qtwebengine/build.sh new file mode 100644 index 0000000..1ca2c7b --- /dev/null +++ b/gui/qtwebengine/build.sh @@ -0,0 +1,31 @@ +pkgname=qtwebengine +pkgver=5.15 + +_chrome_hash=4e224e5af48f9268d8f72b0f8adf4e9a1a470ca6 + +fetch() { + git clone --depth=1 --recursive "https://invent.kde.org/qt/qt/qtwebengine" -b $pkgver $pkgname-$pkgver + cd $pkgname-$pkgver + patch -p1 < ../../no-glibc-check.patch + patch -p1 < ../../qtwebengine-musl.patch + cd src/3rdparty/ + patch -p1 < ../../../../chromium-musl.patch +} + +build() { + cd $pkgname-$pkgver + + qmake + bad --gmake gmake +} + +package() { + cd $pkgname-$pkgver + bad --gmake gmake INSTALL_ROOT=$pkgdir install +} + +license() { + cd $pkgname-$pkgver + cat LICENSE +# cat COPYING +} diff --git a/gui/qtwebengine/chromium-musl.patch b/gui/qtwebengine/chromium-musl.patch new file mode 100644 index 0000000..f56ba9e --- /dev/null +++ b/gui/qtwebengine/chromium-musl.patch @@ -0,0 +1,902 @@ +diff --git a/chromium/base/allocator/allocator_shim_default_dispatch_to_glibc.cc b/chromium/base/allocator/allocator_shim_default_dispatch_to_glibc.cc +index 014ee05115b..788e0506ba3 100644 +--- a/chromium/base/allocator/allocator_shim_default_dispatch_to_glibc.cc ++++ b/chromium/base/allocator/allocator_shim_default_dispatch_to_glibc.cc +@@ -8,6 +8,7 @@ + #include + #include + ++#if defined(__GLIBC__) + // This translation unit defines a default dispatch for the allocator shim which + // routes allocations to libc functions. + // The code here is strongly inspired from tcmalloc's libc_override_glibc.h. +@@ -87,3 +88,92 @@ const AllocatorDispatch AllocatorDispatch::default_dispatch = { + nullptr, /* aligned_free_function */ + nullptr, /* next */ + }; ++ ++#else // defined(__GLIBC__) ++ ++#include ++ ++extern "C" { ++// Declare function pointers to the memory functions ++typedef void* (*t_libc_malloc)(size_t size); ++typedef void* (*t_libc_calloc)(size_t n, size_t size); ++typedef void* (*t_libc_realloc)(void* address, size_t size); ++typedef void* (*t_libc_memalign)(size_t alignment, size_t size); ++typedef void (*t_libc_free)(void* ptr); ++typedef size_t (*t_libc_malloc_usable_size)(void* ptr); ++ ++// Static instances of pointers to libc.so dl symbols ++static t_libc_malloc libc_malloc = NULL; ++static t_libc_calloc libc_calloc = NULL; ++static t_libc_realloc libc_realloc = NULL; ++static t_libc_memalign libc_memalign = NULL; ++static t_libc_free libc_free = NULL; ++static t_libc_malloc_usable_size libc_malloc_usable_size = NULL; ++ ++// resolve the symbols in libc.so ++void musl_libc_memory_init(void) ++{ ++ libc_malloc = (t_libc_malloc) dlsym(RTLD_NEXT, "malloc"); ++ libc_calloc = (t_libc_calloc) dlsym(RTLD_NEXT, "calloc"); ++ libc_realloc = (t_libc_realloc) dlsym(RTLD_NEXT, "realloc"); ++ libc_memalign = (t_libc_memalign) dlsym(RTLD_NEXT, "memalign"); ++ libc_free = (t_libc_free) dlsym(RTLD_NEXT, "free"); ++ libc_malloc_usable_size = (t_libc_malloc_usable_size) dlsym(RTLD_NEXT, "malloc_usable_size"); ++} ++} // extern "C" ++ ++namespace { ++ ++using base::allocator::AllocatorDispatch; ++ ++void* MuslMalloc(const AllocatorDispatch*, size_t size, void* context) { ++ if (!libc_malloc) ++ musl_libc_memory_init(); ++ return (*libc_malloc)(size); ++} ++ ++void* MuslCalloc(const AllocatorDispatch*, size_t n, size_t size, void* context) { ++ if (!libc_calloc) ++ musl_libc_memory_init(); ++ return (*libc_calloc)(n, size); ++} ++ ++void* MuslRealloc(const AllocatorDispatch*, void* address, size_t size, void* context) { ++ if (!libc_realloc) ++ musl_libc_memory_init(); ++ return (*libc_realloc)(address, size); ++} ++ ++void* MuslMemalign(const AllocatorDispatch*, size_t alignment, size_t size, void* context) { ++ if (!libc_memalign) ++ musl_libc_memory_init(); ++ return (*libc_memalign)(alignment, size); ++} ++ ++void MuslFree(const AllocatorDispatch*, void* address, void* context) { ++ if (!libc_free) ++ musl_libc_memory_init(); ++ (*libc_free)(address); ++} ++ ++size_t MuslGetSizeEstimate(const AllocatorDispatch*, void* address, void* context) { ++ // TODO(siggi, primiano): malloc_usable_size may need redirection in the ++ // presence of interposing shims that divert allocations. ++ if (!libc_malloc_usable_size) ++ musl_libc_memory_init(); ++ return (*libc_malloc_usable_size)(address); ++} ++ ++} // namespace ++ ++const AllocatorDispatch AllocatorDispatch::default_dispatch = { ++ &MuslMalloc, /* alloc_function */ ++ &MuslCalloc, /* alloc_zero_initialized_function */ ++ &MuslMemalign, /* alloc_aligned_function */ ++ &MuslRealloc, /* realloc_function */ ++ &MuslFree, /* free_function */ ++ &MuslGetSizeEstimate, /* get_size_estimate_function */ ++ nullptr, /* next */ ++}; ++ ++#endif +diff --git a/chromium/base/debug/stack_trace.cc b/chromium/base/debug/stack_trace.cc +index f5e2dbba148..f0bb80ad097 100644 +--- a/chromium/base/debug/stack_trace.cc ++++ b/chromium/base/debug/stack_trace.cc +@@ -225,14 +225,14 @@ std::string StackTrace::ToString() const { + } + std::string StackTrace::ToStringWithPrefix(const char* prefix_string) const { + std::stringstream stream; +-#if !defined(__UCLIBC__) && !defined(_AIX) ++#if defined(__GLIBC__) && !defined(_AIX) + OutputToStreamWithPrefix(&stream, prefix_string); + #endif + return stream.str(); + } + + std::ostream& operator<<(std::ostream& os, const StackTrace& s) { +-#if !defined(__UCLIBC__) & !defined(_AIX) ++#if defined(__GLIBC__) & !defined(_AIX) + s.OutputToStream(&os); + #else + os << "StackTrace::OutputToStream not implemented."; +diff --git a/chromium/base/debug/stack_trace_posix.cc b/chromium/base/debug/stack_trace_posix.cc +index 6a1531e13ff..0b2b2e6a6c0 100644 +--- a/chromium/base/debug/stack_trace_posix.cc ++++ b/chromium/base/debug/stack_trace_posix.cc +@@ -27,7 +27,7 @@ + #if !defined(USE_SYMBOLIZE) + #include + #endif +-#if !defined(__UCLIBC__) && !defined(_AIX) ++#if defined(__GLIBC__) && !defined(_AIX) + #include + #endif + +@@ -88,7 +88,7 @@ void DemangleSymbols(std::string* text) { + // Note: code in this function is NOT async-signal safe (std::string uses + // malloc internally). + +-#if !defined(__UCLIBC__) && !defined(_AIX) ++#if defined(__GLIBC__) && !defined(_AIX) + std::string::size_type search_from = 0; + while (search_from < text->size()) { + // Look for the start of a mangled symbol, from search_from. +@@ -123,7 +123,7 @@ void DemangleSymbols(std::string* text) { + search_from = mangled_start + 2; + } + } +-#endif // !defined(__UCLIBC__) && !defined(_AIX) ++#endif // defined(__GLIBC__) && !defined(_AIX) + } + #endif // !defined(USE_SYMBOLIZE) + +@@ -135,7 +135,7 @@ class BacktraceOutputHandler { + virtual ~BacktraceOutputHandler() = default; + }; + +-#if !defined(__UCLIBC__) && !defined(_AIX) ++#if defined(__GLIBC__) && !defined(_AIX) + void OutputPointer(void* pointer, BacktraceOutputHandler* handler) { + // This should be more than enough to store a 64-bit number in hex: + // 16 hex digits + 1 for null-terminator. +@@ -218,7 +218,7 @@ void ProcessBacktrace(void* const* trace, + } + #endif // defined(USE_SYMBOLIZE) + } +-#endif // !defined(__UCLIBC__) && !defined(_AIX) ++#endif // defined(__GLIBC__) && !defined(_AIX) + + void PrintToStderr(const char* output) { + // NOTE: This code MUST be async-signal safe (it's used by in-process +@@ -834,7 +834,7 @@ size_t CollectStackTrace(void** trace, size_t count) { + // NOTE: This code MUST be async-signal safe (it's used by in-process + // stack dumping signal handler). NO malloc or stdio is allowed here. + +-#if !defined(__UCLIBC__) && !defined(_AIX) ++#if defined(__GLIBC__) && !defined(_AIX) + // Though the backtrace API man page does not list any possible negative + // return values, we take no chance. + return base::saturated_cast(backtrace(trace, count)); +@@ -847,13 +847,13 @@ void StackTrace::PrintWithPrefix(const char* prefix_string) const { + // NOTE: This code MUST be async-signal safe (it's used by in-process + // stack dumping signal handler). NO malloc or stdio is allowed here. + +-#if !defined(__UCLIBC__) && !defined(_AIX) ++#if defined(__GLIBC__) && !defined(_AIX) + PrintBacktraceOutputHandler handler; + ProcessBacktrace(trace_, count_, prefix_string, &handler); + #endif + } + +-#if !defined(__UCLIBC__) && !defined(_AIX) ++#if defined(__GLIBC__) && !defined(_AIX) + void StackTrace::OutputToStreamWithPrefix(std::ostream* os, + const char* prefix_string) const { + StreamBacktraceOutputHandler handler(os); +diff --git a/chromium/base/logging.cc b/chromium/base/logging.cc +index b5cf2c4933d..4be936d32f2 100644 +--- a/chromium/base/logging.cc ++++ b/chromium/base/logging.cc +@@ -548,7 +548,7 @@ LogMessage::LogMessage(const char* file, int line, const char* condition) + + LogMessage::~LogMessage() { + size_t stack_start = stream_.tellp(); +-#if !defined(OFFICIAL_BUILD) && !defined(OS_NACL) && !defined(__UCLIBC__) && \ ++#if !defined(OFFICIAL_BUILD) && !defined(OS_NACL) && defined(__GLIBC__) && \ + !defined(OS_AIX) + if (severity_ == LOG_FATAL && !base::debug::BeingDebugged()) { + // Include a stack trace on a fatal, unless a debugger is attached. +diff --git a/chromium/base/process/process_metrics_posix.cc b/chromium/base/process/process_metrics_posix.cc +index 9d12c427bb3..c8c46ec6d7b 100644 +--- a/chromium/base/process/process_metrics_posix.cc ++++ b/chromium/base/process/process_metrics_posix.cc +@@ -119,14 +119,14 @@ size_t ProcessMetrics::GetMallocUsage() { + malloc_statistics_t stats = {0}; + malloc_zone_statistics(nullptr, &stats); + return stats.size_in_use; +-#elif defined(OS_LINUX) || defined(OS_CHROMEOS) || defined(OS_ANDROID) ++#elif (defined(OS_LINUX) && defined(__GLIBC__)) || defined(OS_CHROMEOS) || defined(OS_ANDROID) + struct mallinfo minfo = mallinfo(); + #if BUILDFLAG(USE_TCMALLOC) + return minfo.uordblks; + #else + return minfo.hblkhd + minfo.arena; + #endif +-#elif defined(OS_FUCHSIA) ++#else // defined(OS_FUCHSIA) + // TODO(fuchsia): Not currently exposed. https://crbug.com/735087. + return 0; + #endif +diff --git a/chromium/base/third_party/libevent/BUILD.gn b/chromium/base/third_party/libevent/BUILD.gn +index 3628030e444..99717b6a06f 100644 +--- a/chromium/base/third_party/libevent/BUILD.gn ++++ b/chromium/base/third_party/libevent/BUILD.gn +@@ -97,15 +97,5 @@ source_set("system_libevent") { + } + + group("libevent") { +- if (host_toolchain != current_toolchain) { +- if (use_system_libevent) { +- public_deps = [ ":system_libevent" ] +- } else { +- public_deps = [ ":bundled_libevent" ] +- } +- } else { +- # Fix me: unbundle for host build +- # this requires host pkg-config besides sysroot one. +- public_deps = [ ":bundled_libevent" ] +- } ++ public_deps = [ ":system_libevent" ] + } +diff --git a/chromium/base/trace_event/malloc_dump_provider.cc b/chromium/base/trace_event/malloc_dump_provider.cc +index c327f486596..09ab76171d6 100644 +--- a/chromium/base/trace_event/malloc_dump_provider.cc ++++ b/chromium/base/trace_event/malloc_dump_provider.cc +@@ -132,7 +132,7 @@ bool MallocDumpProvider::OnMemoryDump(const MemoryDumpArgs& args, + } + #elif defined(OS_FUCHSIA) + // TODO(fuchsia): Port, see https://crbug.com/706592. +-#else ++#elif defined(__GLIBC__) + struct mallinfo info = mallinfo(); + // In case of Android's jemalloc |arena| is 0 and the outer pages size is + // reported by |hblkhd|. In case of dlmalloc the total is given by +@@ -142,6 +142,8 @@ bool MallocDumpProvider::OnMemoryDump(const MemoryDumpArgs& args, + + // Total allocated space is given by |uordblks|. + allocated_objects_size = info.uordblks; ++#else ++// TODO(musl): Port + #endif + + MemoryAllocatorDump* outer_dump = pmd->CreateAllocatorDump("malloc"); +diff --git a/chromium/build/config/compiler/BUILD.gn b/chromium/build/config/compiler/BUILD.gn +index 6a58d21cf07..b0be3d9d195 100644 +--- a/chromium/build/config/compiler/BUILD.gn ++++ b/chromium/build/config/compiler/BUILD.gn +@@ -796,8 +796,8 @@ config("compiler_cpu_abi") { + } + } else if (current_cpu == "arm64") { + if (is_clang && !is_android && !is_nacl && !is_fuchsia) { +- cflags += [ "--target=aarch64-linux-gnu" ] +- ldflags += [ "--target=aarch64-linux-gnu" ] ++ cflags += [ "--target=aarch64-linux-musl" ] ++ ldflags += [ "--target=aarch64-linux-musl" ] + } + } else if (current_cpu == "mipsel" && !is_nacl) { + ldflags += [ "-Wl,--hash-style=sysv" ] +@@ -807,8 +807,8 @@ config("compiler_cpu_abi") { + cflags += [ "--target=mipsel-linux-android" ] + ldflags += [ "--target=mipsel-linux-android" ] + } else { +- cflags += [ "--target=mipsel-linux-gnu" ] +- ldflags += [ "--target=mipsel-linux-gnu" ] ++ cflags += [ "--target=mipsel-linux-musl" ] ++ ldflags += [ "--target=mipsel-linux-musl" ] + } + } else { + cflags += [ "-EL" ] +diff --git a/chromium/build/toolchain/linux/BUILD.gn b/chromium/build/toolchain/linux/BUILD.gn +index fa8b17e9db3..d9756c70cf4 100644 +--- a/chromium/build/toolchain/linux/BUILD.gn ++++ b/chromium/build/toolchain/linux/BUILD.gn +@@ -14,7 +14,7 @@ clang_toolchain("clang_ppc64") { + } + + clang_toolchain("clang_arm") { +- toolprefix = "arm-linux-gnueabihf-" ++ toolprefix = "arm-linux-musleabihf-" + toolchain_args = { + current_cpu = "arm" + current_os = "linux" +@@ -22,7 +22,7 @@ clang_toolchain("clang_arm") { + } + + clang_toolchain("clang_arm64") { +- toolprefix = "aarch64-linux-gnu-" ++ toolprefix = "aarch64-linux-musl-" + toolchain_args = { + current_cpu = "arm64" + current_os = "linux" +@@ -30,7 +30,7 @@ clang_toolchain("clang_arm64") { + } + + gcc_toolchain("arm64") { +- toolprefix = "aarch64-linux-gnu-" ++ toolprefix = "aarch64-linux-musl-" + + cc = "${toolprefix}gcc" + cxx = "${toolprefix}g++" +@@ -48,7 +48,7 @@ gcc_toolchain("arm64") { + } + + gcc_toolchain("arm") { +- toolprefix = "arm-linux-gnueabihf-" ++ toolprefix = "arm-linux-musleabihf-" + + cc = "${toolprefix}gcc" + cxx = "${toolprefix}g++" +@@ -186,7 +186,7 @@ clang_toolchain("clang_mips64el") { + } + + gcc_toolchain("mipsel") { +- toolprefix = "mipsel-linux-gnu-" ++ toolprefix = "mipsel-linux-musl-" + + cc = "${toolprefix}gcc" + cxx = " ${toolprefix}g++" +@@ -205,7 +205,7 @@ gcc_toolchain("mipsel") { + } + + gcc_toolchain("mips64el") { +- toolprefix = "mips64el-linux-gnuabi64-" ++ toolprefix = "mips64el-linux-muslabi64-" + + cc = "${toolprefix}gcc" + cxx = "${toolprefix}g++" +@@ -264,7 +264,7 @@ gcc_toolchain("ppc64") { + } + + gcc_toolchain("mips") { +- toolprefix = "mips-linux-gnu-" ++ toolprefix = "mips-linux-musl-" + + cc = "${toolprefix}gcc" + cxx = "${toolprefix}g++" +@@ -282,7 +282,7 @@ gcc_toolchain("mips") { + } + + gcc_toolchain("mips64") { +- toolprefix = "mips64-linux-gnuabi64-" ++ toolprefix = "mips64-linux-muslabi64-" + + cc = "${toolprefix}gcc" + cxx = "${toolprefix}g++" +diff --git a/chromium/net/dns/dns_config_service_posix.cc b/chromium/net/dns/dns_config_service_posix.cc +index 5a4aead0acf..5866f75bd10 100644 +--- a/chromium/net/dns/dns_config_service_posix.cc ++++ b/chromium/net/dns/dns_config_service_posix.cc +@@ -8,6 +8,34 @@ + #include + #include + ++#if !defined(__GLIBC__) ++static inline int res_ninit(res_state statp) ++{ ++ int rc = res_init(); ++ if (statp != &_res) { ++ memcpy(statp, &_res, sizeof(*statp)); ++ } ++ return rc; ++} ++ ++static inline int res_nclose(res_state statp) ++{ ++ if (!statp) { ++ return -1; ++ } ++ ++ if (statp != &_res) { ++ memset(statp, 0, sizeof(*statp)); ++ } ++ ++ return 0; ++} ++#endif ++ ++#if !defined(__GLIBC__) ++#include "resolv_compat.h" ++#endif ++ + #include "base/bind.h" + #include "base/files/file.h" + #include "base/files/file_path.h" +diff --git a/chromium/net/dns/dns_reloader.cc b/chromium/net/dns/dns_reloader.cc +index 0672e711afb..ddfc9bb1cba 100644 +--- a/chromium/net/dns/dns_reloader.cc ++++ b/chromium/net/dns/dns_reloader.cc +@@ -9,6 +9,35 @@ + + #include + ++#if !defined(__GLIBC__) ++#include ++static inline int res_ninit(res_state statp) ++{ ++ int rc = res_init(); ++ if (statp != &_res) { ++ memcpy(statp, &_res, sizeof(*statp)); ++ } ++ return rc; ++} ++ ++static inline int res_nclose(res_state statp) ++{ ++ if (!statp) { ++ return -1; ++ } ++ ++ if (statp != &_res) { ++ memset(statp, 0, sizeof(*statp)); ++ } ++ ++ return 0; ++} ++#endif ++ ++#if !defined(__GLIBC__) ++#include "resolv_compat.h" ++#endif ++ + #include "base/lazy_instance.h" + #include "base/macros.h" + #include "base/notreached.h" +diff --git a/chromium/net/socket/udp_socket_posix.cc b/chromium/net/socket/udp_socket_posix.cc +index 71265568be5..11f22f951a4 100644 +--- a/chromium/net/socket/udp_socket_posix.cc ++++ b/chromium/net/socket/udp_socket_posix.cc +@@ -1152,7 +1152,8 @@ SendResult UDPSocketPosixSender::InternalSendmmsgBuffers( + msg_iov->push_back({const_cast(buffer->data()), buffer->length()}); + msgvec->reserve(buffers.size()); + for (size_t j = 0; j < buffers.size(); j++) +- msgvec->push_back({{nullptr, 0, &msg_iov[j], 1, nullptr, 0, 0}, 0}); ++ msgvec->push_back({{nullptr, 0, &msg_iov[j], 1, 0, 0, 0}, 0}); ++// msgvec->push_back({{nullptr, 0, &msg_iov[j], 1, nullptr, 0, 0}, 0}); + int result = HANDLE_EINTR(Sendmmsg(fd, &msgvec[0], buffers.size(), 0)); + SendResult send_result(0, 0, std::move(buffers)); + if (result < 0) { +diff --git a/chromium/ppapi/utility/threading/simple_thread.cc b/chromium/ppapi/utility/threading/simple_thread.cc +index 02bf49bdd63..05ee1827001 100644 +--- a/chromium/ppapi/utility/threading/simple_thread.cc ++++ b/chromium/ppapi/utility/threading/simple_thread.cc +@@ -13,7 +13,7 @@ namespace pp { + namespace { + + // Use 2MB default stack size for Native Client, otherwise use system default. +-#if defined(__native_client__) ++#if defined(__native_client__) || !defined(__GLIBC__) + const size_t kDefaultStackSize = 2 * 1024 * 1024; + #else + const size_t kDefaultStackSize = 0; +diff --git a/chromium/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc b/chromium/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc +index 6ae09fb1035..57559ee6e04 100644 +--- a/chromium/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc ++++ b/chromium/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc +@@ -127,21 +127,11 @@ namespace sandbox { + // present (as in newer versions of posix_spawn). + ResultExpr RestrictCloneToThreadsAndEPERMFork() { + const Arg flags(0); +- +- // TODO(mdempsky): Extend DSL to support (flags & ~mask1) == mask2. +- const uint64_t kAndroidCloneMask = CLONE_VM | CLONE_FS | CLONE_FILES | +- CLONE_SIGHAND | CLONE_THREAD | +- CLONE_SYSVSEM; +- const uint64_t kObsoleteAndroidCloneMask = kAndroidCloneMask | CLONE_DETACHED; +- +- const uint64_t kGlibcPthreadFlags = +- CLONE_VM | CLONE_FS | CLONE_FILES | CLONE_SIGHAND | CLONE_THREAD | +- CLONE_SYSVSEM | CLONE_SETTLS | CLONE_PARENT_SETTID | CLONE_CHILD_CLEARTID; +- const BoolExpr glibc_test = flags == kGlibcPthreadFlags; +- +- const BoolExpr android_test = +- AnyOf(flags == kAndroidCloneMask, flags == kObsoleteAndroidCloneMask, +- flags == kGlibcPthreadFlags); ++ const int required = CLONE_VM | CLONE_FS | CLONE_FILES | CLONE_SIGHAND | ++ CLONE_THREAD | CLONE_SYSVSEM; ++ const int safe = CLONE_SETTLS | CLONE_PARENT_SETTID | CLONE_CHILD_CLEARTID | ++ CLONE_DETACHED; ++ const BoolExpr thread_clone_ok = (flags&~safe)==required; + + // The following two flags are the two important flags in any vfork-emulating + // clone call. EPERM any clone call that contains both of them. +@@ -151,7 +141,7 @@ ResultExpr RestrictCloneToThreadsAndEPERMFork() { + AnyOf((flags & (CLONE_VM | CLONE_THREAD)) == 0, + (flags & kImportantCloneVforkFlags) == kImportantCloneVforkFlags); + +- return If(IsAndroid() ? android_test : glibc_test, Allow()) ++ return If(thread_clone_ok, Allow()) + .ElseIf(is_fork_or_clone_vfork, Error(EPERM)) + .Else(CrashSIGSYSClone()); + } +diff --git a/chromium/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc b/chromium/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc +index d9d18822f67..056755719fe 100644 +--- a/chromium/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc ++++ b/chromium/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc +@@ -392,6 +392,7 @@ bool SyscallSets::IsAllowedProcessStartOrDeath(int sysno) { + #if defined(__i386__) + case __NR_waitpid: + #endif ++ case __NR_set_tid_address: + return true; + case __NR_clone: // Should be parameter-restricted. + case __NR_setns: // Privileged. +@@ -404,7 +405,6 @@ bool SyscallSets::IsAllowedProcessStartOrDeath(int sysno) { + #if defined(__i386__) || defined(__x86_64__) || defined(__mips__) + case __NR_set_thread_area: + #endif +- case __NR_set_tid_address: + case __NR_unshare: + #if !defined(__mips__) && !defined(__aarch64__) + case __NR_vfork: +@@ -514,6 +514,8 @@ bool SyscallSets::IsAllowedAddressSpaceAccess(int sysno) { + case __NR_mlock: + case __NR_munlock: + case __NR_munmap: ++ case __NR_mremap: ++ case __NR_membarrier: + return true; + case __NR_madvise: + case __NR_mincore: +@@ -531,7 +533,6 @@ bool SyscallSets::IsAllowedAddressSpaceAccess(int sysno) { + case __NR_modify_ldt: + #endif + case __NR_mprotect: +- case __NR_mremap: + case __NR_msync: + case __NR_munlockall: + case __NR_readahead: +diff --git a/chromium/sandbox/linux/seccomp-bpf/trap.cc b/chromium/sandbox/linux/seccomp-bpf/trap.cc +index f5b86a73ac7..11e594bc866 100644 +--- a/chromium/sandbox/linux/seccomp-bpf/trap.cc ++++ b/chromium/sandbox/linux/seccomp-bpf/trap.cc +@@ -25,6 +25,11 @@ + #include "sandbox/linux/system_headers/linux_seccomp.h" + #include "sandbox/linux/system_headers/linux_signal.h" + ++// musl libc defines siginfo_t __si_fields instead of _sifields ++#if !defined(__GLIBC__) ++#define _sifields __si_fields ++#endif ++ + namespace { + + struct arch_sigsys { +diff --git a/chromium/sandbox/linux/system_headers/arm64_linux_syscalls.h b/chromium/sandbox/linux/system_headers/arm64_linux_syscalls.h +index a242c18c842..30751fc4ac8 100644 +--- a/chromium/sandbox/linux/system_headers/arm64_linux_syscalls.h ++++ b/chromium/sandbox/linux/system_headers/arm64_linux_syscalls.h +@@ -1119,4 +1119,8 @@ + #define __NR_rseq 293 + #endif + ++#if !defined(__NR_membarrier) ++#define __NR_membarrier 283 ++#endif ++ + #endif // SANDBOX_LINUX_SYSTEM_HEADERS_ARM64_LINUX_SYSCALLS_H_ +diff --git a/chromium/sandbox/linux/system_headers/arm_linux_syscalls.h b/chromium/sandbox/linux/system_headers/arm_linux_syscalls.h +index 85e2110b4c2..87e683a0911 100644 +--- a/chromium/sandbox/linux/system_headers/arm_linux_syscalls.h ++++ b/chromium/sandbox/linux/system_headers/arm_linux_syscalls.h +@@ -1441,6 +1441,11 @@ + #define __NR_io_pgetevents (__NR_SYSCALL_BASE+399) + #endif + ++#if !defined(__NR_membarrier) ++#define __NR_membarrier (__NR_SYSCALL_BASE+389) ++#endif ++ ++ + // ARM private syscalls. + #if !defined(__ARM_NR_BASE) + #define __ARM_NR_BASE (__NR_SYSCALL_BASE + 0xF0000) +diff --git a/chromium/sandbox/linux/system_headers/mips64_linux_syscalls.h b/chromium/sandbox/linux/system_headers/mips64_linux_syscalls.h +index ec75815a842..612fcfaa946 100644 +--- a/chromium/sandbox/linux/system_headers/mips64_linux_syscalls.h ++++ b/chromium/sandbox/linux/system_headers/mips64_linux_syscalls.h +@@ -1271,4 +1271,8 @@ + #define __NR_memfd_create (__NR_Linux + 314) + #endif + ++#if !defined(__NR_membarrier) ++#define __NR_membarrier (__NR_Linux + 318) ++#endif ++ + #endif // SANDBOX_LINUX_SYSTEM_HEADERS_MIPS64_LINUX_SYSCALLS_H_ +diff --git a/chromium/sandbox/linux/system_headers/mips_linux_syscalls.h b/chromium/sandbox/linux/system_headers/mips_linux_syscalls.h +index ddbf97f3d8b..1742acd4c3d 100644 +--- a/chromium/sandbox/linux/system_headers/mips_linux_syscalls.h ++++ b/chromium/sandbox/linux/system_headers/mips_linux_syscalls.h +@@ -1433,4 +1433,8 @@ + #define __NR_memfd_create (__NR_Linux + 354) + #endif + ++#if !defined(__NR_membarrier) ++#define __NR_membarrier (__NR_Linux + 358) ++#endif ++ + #endif // SANDBOX_LINUX_SYSTEM_HEADERS_MIPS_LINUX_SYSCALLS_H_ +diff --git a/chromium/sandbox/linux/system_headers/x86_32_linux_syscalls.h b/chromium/sandbox/linux/system_headers/x86_32_linux_syscalls.h +index 7613c9bbcdc..d0ab832bc35 100644 +--- a/chromium/sandbox/linux/system_headers/x86_32_linux_syscalls.h ++++ b/chromium/sandbox/linux/system_headers/x86_32_linux_syscalls.h +@@ -1710,5 +1710,10 @@ + #define __NR_clone3 435 + #endif + ++#if !defined(__NR_membarrier) ++#define __NR_membarrier 375 ++#endif ++ ++ + #endif // SANDBOX_LINUX_SYSTEM_HEADERS_X86_32_LINUX_SYSCALLS_H_ + +diff --git a/chromium/sandbox/linux/system_headers/x86_64_linux_syscalls.h b/chromium/sandbox/linux/system_headers/x86_64_linux_syscalls.h +index b0ae0a2edf6..929a56b7c09 100644 +--- a/chromium/sandbox/linux/system_headers/x86_64_linux_syscalls.h ++++ b/chromium/sandbox/linux/system_headers/x86_64_linux_syscalls.h +@@ -1350,5 +1350,10 @@ + #define __NR_rseq 334 + #endif + ++#if !defined(__NR_membarrier) ++#define __NR_membarrier 324 ++#endif ++ ++ + #endif // SANDBOX_LINUX_SYSTEM_HEADERS_X86_64_LINUX_SYSCALLS_H_ + +diff --git a/chromium/sandbox/policy/linux/bpf_renderer_policy_linux.cc b/chromium/sandbox/policy/linux/bpf_renderer_policy_linux.cc +index 9fe9575eb63..fa1a946f6a8 100644 +--- a/chromium/sandbox/policy/linux/bpf_renderer_policy_linux.cc ++++ b/chromium/sandbox/policy/linux/bpf_renderer_policy_linux.cc +@@ -93,11 +93,11 @@ ResultExpr RendererProcessPolicy::EvaluateSyscall(int sysno) const { + case __NR_sysinfo: + case __NR_times: + case __NR_uname: +- return Allow(); +- case __NR_sched_getaffinity: + case __NR_sched_getparam: + case __NR_sched_getscheduler: + case __NR_sched_setscheduler: ++ return Allow(); ++ case __NR_sched_getaffinity: + return RestrictSchedTarget(GetPolicyPid(), sysno); + case __NR_prlimit64: + // See crbug.com/662450 and setrlimit comment above. +diff --git a/chromium/third_party/blink/renderer/platform/wtf/stack_util.cc b/chromium/third_party/blink/renderer/platform/wtf/stack_util.cc +index 71b901f4044..f33aba04bc3 100644 +--- a/chromium/third_party/blink/renderer/platform/wtf/stack_util.cc ++++ b/chromium/third_party/blink/renderer/platform/wtf/stack_util.cc +@@ -29,7 +29,7 @@ size_t GetUnderestimatedStackSize() { + // FIXME: On Mac OSX and Linux, this method cannot estimate stack size + // correctly for the main thread. + +-#elif defined(__GLIBC__) || defined(OS_ANDROID) || defined(OS_FREEBSD) || \ ++#elif defined(OS_LINUX) || defined(OS_ANDROID) || defined(OS_FREEBSD) || \ + defined(OS_FUCHSIA) + // pthread_getattr_np() can fail if the thread is not invoked by + // pthread_create() (e.g., the main thread of blink_unittests). +@@ -97,7 +97,7 @@ return Threading::ThreadStackSize(); + } + + void* GetStackStart() { +-#if defined(__GLIBC__) || defined(OS_ANDROID) || defined(OS_FREEBSD) || \ ++#if defined(OS_LINUX) || defined(OS_ANDROID) || defined(OS_FREEBSD) || \ + defined(OS_FUCHSIA) + pthread_attr_t attr; + int error; +diff --git a/chromium/third_party/breakpad/breakpad/src/common/linux/elf_core_dump.h b/chromium/third_party/breakpad/breakpad/src/common/linux/elf_core_dump.h +index 6e153745dba..6d1c40f7143 100644 +--- a/chromium/third_party/breakpad/breakpad/src/common/linux/elf_core_dump.h ++++ b/chromium/third_party/breakpad/breakpad/src/common/linux/elf_core_dump.h +@@ -37,6 +37,9 @@ + #include + #include + #include ++#ifndef __GLIBC__ ++#include ++#endif + + #include "common/memory_range.h" + +diff --git a/chromium/third_party/crashpad/crashpad/util/linux/thread_info.h b/chromium/third_party/crashpad/crashpad/util/linux/thread_info.h +index 5b55c24a76d..08cec52b2c5 100644 +--- a/chromium/third_party/crashpad/crashpad/util/linux/thread_info.h ++++ b/chromium/third_party/crashpad/crashpad/util/linux/thread_info.h +@@ -273,7 +273,7 @@ union FloatContext { + "Size mismatch"); + #elif defined(ARCH_CPU_ARMEL) + static_assert(sizeof(f32_t::fpregs) == sizeof(user_fpregs), "Size mismatch"); +-#if !defined(__GLIBC__) ++#if defined(OS_ANDROID) + static_assert(sizeof(f32_t::vfp) == sizeof(user_vfp), "Size mismatch"); + #endif + #elif defined(ARCH_CPU_ARM64) +diff --git a/chromium/third_party/lss/linux_syscall_support.h b/chromium/third_party/lss/linux_syscall_support.h +index e4ac22644c0..95a67a8fc16 100644 +--- a/chromium/third_party/lss/linux_syscall_support.h ++++ b/chromium/third_party/lss/linux_syscall_support.h +@@ -824,6 +824,14 @@ struct kernel_statfs { + #endif + + ++#undef stat64 ++#undef fstat64 ++ ++#ifndef __NR_fstatat ++#define __NR_fstatat __NR_fstatat64 ++#endif ++ ++ + #if defined(__x86_64__) + #ifndef ARCH_SET_GS + #define ARCH_SET_GS 0x1001 +@@ -1258,6 +1266,14 @@ struct kernel_statfs { + #ifndef __NR_getrandom + #define __NR_getrandom 318 + #endif ++ ++#ifndef __NR_pread ++#define __NR_pread __NR_pread64 ++#endif ++#ifndef __NR_pwrite ++#define __NR_pwrite __NR_pwrite64 ++#endif ++ + /* End of x86-64 definitions */ + #elif defined(__mips__) + #if _MIPS_SIM == _MIPS_SIM_ABI32 +@@ -1819,6 +1835,15 @@ struct kernel_statfs { + /* End of s390/s390x definitions */ + #endif + ++#ifndef __GLIBC__ ++ /* For Musl libc pread/pread is the same as pread64/pwrite64 */ ++#ifndef __NR_pread ++#define __NR_pread __NR_pread64 ++#endif ++#ifndef __NR_pwrite ++#define __NR_pwrite __NR_pwrite64 ++#endif ++#endif /* ifndef __GLIBC__ */ + + /* After forking, we must make sure to only call system calls. */ + #if defined(__BOUNDED_POINTERS__) +diff --git a/chromium/third_party/ots/include/opentype-sanitiser.h b/chromium/third_party/ots/include/opentype-sanitiser.h +index 08f23befd50..eb4f706fb4d 100644 +--- a/chromium/third_party/ots/include/opentype-sanitiser.h ++++ b/chromium/third_party/ots/include/opentype-sanitiser.h +@@ -21,6 +21,7 @@ typedef unsigned __int64 uint64_t; + #define ots_htons(x) _byteswap_ushort (x) + #else + #include ++#include + #include + #define ots_ntohl(x) ntohl (x) + #define ots_ntohs(x) ntohs (x) +diff --git a/chromium/third_party/skia/src/opts/SkRasterPipeline_opts.h b/chromium/third_party/skia/src/opts/SkRasterPipeline_opts.h +index 659794d1b50..c42b67628aa 100644 +--- a/chromium/third_party/skia/src/opts/SkRasterPipeline_opts.h ++++ b/chromium/third_party/skia/src/opts/SkRasterPipeline_opts.h +@@ -1001,17 +1001,17 @@ SI F from_half(U16 h) { + } + + SI U16 to_half(F f) { +-#if defined(JUMPER_IS_NEON) && defined(SK_CPU_ARM64) \ +- && !defined(SK_BUILD_FOR_GOOGLE3) // Temporary workaround for some Google3 builds. +- __fp16 fp16 = __fp16(f); +- U16 u16; +- memcpy(&u16, &fp16, sizeof(U16)); +- return u16; ++// #if defined(JUMPER_IS_NEON) && defined(SK_CPU_ARM64) \ ++// && !defined(SK_BUILD_FOR_GOOGLE3) // Temporary workaround for some Google3 builds. ++// __fp16 fp16 = __fp16(f); ++// U16 u16; ++// memcpy(&u16, &fp16, sizeof(U16)); ++// return u16; + +-#elif defined(JUMPER_IS_HSW) || defined(JUMPER_IS_SKX) +- return _mm256_cvtps_ph(f, _MM_FROUND_CUR_DIRECTION); ++// #elif defined(JUMPER_IS_HSW) || defined(JUMPER_IS_SKX) ++// return _mm256_cvtps_ph(f, _MM_FROUND_CUR_DIRECTION); + +-#else ++// #else + // Remember, a float is 1-8-23 (sign-exponent-mantissa) with 127 exponent bias. + U32 sem = sk_bit_cast(f), + s = sem & 0x80000000, +@@ -1021,7 +1021,7 @@ SI U16 to_half(F f) { + auto denorm = (I32)em < 0x38800000; // I32 comparison is often quicker, and always safe here. + return pack(if_then_else(denorm, U32(0) + , (s>>16) + (em>>13) - ((127-15)<<10))); +-#endif ++// #endif + } + + // Our fundamental vector depth is our pixel stride. +diff --git a/chromium/tools/grit/grit/format/gzip_string.py b/chromium/tools/grit/grit/format/gzip_string.py +index 3cd17185c9a..95cf00c8dae 100644 +--- a/chromium/tools/grit/grit/format/gzip_string.py ++++ b/chromium/tools/grit/grit/format/gzip_string.py +@@ -12,22 +12,23 @@ import subprocess + + + def GzipStringRsyncable(data): +- # Make call to host system's gzip to get access to --rsyncable option. This +- # option makes updates much smaller - if one line is changed in the resource, +- # it won't have to push the entire compressed resource with the update. +- # Instead, --rsyncable breaks the file into small chunks, so that one doesn't +- # affect the other in compression, and then only that chunk will have to be +- # updated. +- gzip_proc = subprocess.Popen(['gzip', '--stdout', '--rsyncable', +- '--best', '--no-name'], +- stdin=subprocess.PIPE, +- stdout=subprocess.PIPE, +- stderr=subprocess.PIPE) +- data, stderr = gzip_proc.communicate(data) +- if gzip_proc.returncode != 0: +- raise subprocess.CalledProcessError(gzip_proc.returncode, 'gzip', +- stderr) +- return data ++ return GzipString(data) ++ # # Make call to host system's gzip to get access to --rsyncable option. This ++ # # option makes updates much smaller - if one line is changed in the resource, ++ # # it won't have to push the entire compressed resource with the update. ++ # # Instead, --rsyncable breaks the file into small chunks, so that one doesn't ++ # # affect the other in compression, and then only that chunk will have to be ++ # # updated. ++ # gzip_proc = subprocess.Popen(['gzip', '--stdout', '--rsyncable', ++ # '--best', '--no-name'], ++ # stdin=subprocess.PIPE, ++ # stdout=subprocess.PIPE, ++ # stderr=subprocess.PIPE) ++ # data, stderr = gzip_proc.communicate(data) ++ # if gzip_proc.returncode != 0: ++ # raise subprocess.CalledProcessError(gzip_proc.returncode, 'gzip', ++ # stderr) ++ # return data + + + def GzipString(data): +diff --git a/chromium/v8/src/base/cpu.cc b/chromium/v8/src/base/cpu.cc +index c0e9e707aa2..27fa11ccae9 100644 +--- a/chromium/v8/src/base/cpu.cc ++++ b/chromium/v8/src/base/cpu.cc +@@ -20,7 +20,7 @@ + #if V8_OS_QNX + #include // cpuinfo + #endif +-#if V8_OS_LINUX && (V8_HOST_ARCH_PPC || V8_HOST_ARCH_PPC64) ++#if V8_OS_LINUX && (V8_HOST_ARCH_PPC || V8_HOST_ARCH_PPC64 || V8_HOST_ARCH_ARM) + #include + #endif + #if V8_OS_AIX +diff --git a/chromium/v8/src/base/platform/platform-posix.cc b/chromium/v8/src/base/platform/platform-posix.cc +index 89173b593a6..db3e5480d96 100644 +--- a/chromium/v8/src/base/platform/platform-posix.cc ++++ b/chromium/v8/src/base/platform/platform-posix.cc +@@ -854,7 +854,7 @@ bool Thread::Start() { + #if V8_OS_MACOSX + // Default on Mac OS X is 512kB -- bump up to 1MB + stack_size = 1 * 1024 * 1024; +-#elif V8_OS_AIX ++#elif V8_OS_AIX || !defined(__GLIBC__) + // Default on AIX is 96kB -- bump up to 2MB + stack_size = 2 * 1024 * 1024; + #endif diff --git a/gui/qtwebengine/no-glibc-check.patch b/gui/qtwebengine/no-glibc-check.patch new file mode 100644 index 0000000..d7dc17e --- /dev/null +++ b/gui/qtwebengine/no-glibc-check.patch @@ -0,0 +1,14 @@ +--- a/src/buildtools/configure.json ++++ b/src/buildtools/configure.json +@@ -270,9 +270,11 @@ + "test": { + "include": "features.h", + "tail": [ ++ "#if defined(__GLIBC__)", + "#if __GLIBC__ < 2 || __GLIBC_MINOR__ < 17", + "#error glibc versions below 2.17 are not supported", + "#endif", ++ "#endif" + ] + } + }, diff --git a/gui/qtwebengine/qtwebengine-musl.patch b/gui/qtwebengine/qtwebengine-musl.patch new file mode 100644 index 0000000..580dbda --- /dev/null +++ b/gui/qtwebengine/qtwebengine-musl.patch @@ -0,0 +1,31 @@ +diff --git a/src/buildtools/configure.json b/src/buildtools/configure.json +index 88d1790..ed4c3d4 100644 +--- a/src/buildtools/configure.json ++++ b/src/buildtools/configure.json +@@ -270,8 +270,10 @@ + "test": { + "include": "features.h", + "tail": [ ++ "#if defined(__GLIBC__)", + "#if __GLIBC__ < 2 || __GLIBC_MINOR__ < 17", + "#error glibc versions below 2.17 are not supported", ++ "#endif", + "#endif" + ] + } +diff --git a/src/core/api/qtbug-61521.cpp b/src/core/api/qtbug-61521.cpp +index 002a1af..01c81ac 100644 +--- a/src/core/api/qtbug-61521.cpp ++++ b/src/core/api/qtbug-61521.cpp +@@ -111,7 +111,11 @@ SHIM_HIDDEN void* ShimValloc(size_t size) { + } + + SHIM_HIDDEN void* ShimPvalloc(size_t size) { ++#if defined(__GLIBC__) + return pvalloc(size); ++#else ++ return valloc((size+4095)&~4095); ++#endif + } + + SHIM_HIDDEN int ShimPosixMemalign(void** r, size_t a, size_t s) { diff --git a/pkgs/ribidi/build.sh b/gui/ribidi/build.sh similarity index 100% rename from pkgs/ribidi/build.sh rename to gui/ribidi/build.sh diff --git a/gui/sdl2/build.sh b/gui/sdl2/build.sh new file mode 100644 index 0000000..c93ebbc --- /dev/null +++ b/gui/sdl2/build.sh @@ -0,0 +1,31 @@ +pkgname=sdl2 +pkgver=2.0.14 + +fetch() { + curl "https://www.libsdl.org/release/SDL2-2.0.14.tar.gz" -o $pkgname-$pkgver.tar.xz + tar -xf $pkgname-$pkgver.tar.xz + mv SDL2-$pkgver $pkgname-$pkgver + mkdir $pkgname-$pkgver/build +} + +build() { + cd $pkgname-$pkgver + cd build + cmake -G Ninja ../ \ + -DCMAKE_BUILD_TYPE=Release \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DCMAKE_INSTALL_LIBDIR=lib + samu +} + +package() { + cd $pkgname-$pkgver + cd build + DESTDIR=$pkgdir samu install +} + +license() { + cd $pkgname-$pkgver + cat LICENSE +# cat COPYING +} diff --git a/pkgs/seatd/build.sh b/gui/seatd/build.sh similarity index 92% rename from pkgs/seatd/build.sh rename to gui/seatd/build.sh index f36f1f2..cfcb640 100644 --- a/pkgs/seatd/build.sh +++ b/gui/seatd/build.sh @@ -1,5 +1,5 @@ pkgname=seatd -pkgver=0.5.0 +pkgver=0.6.3 fetch() { curl "https://git.sr.ht/~kennylevinsen/seatd/archive/$pkgver.tar.gz" -o $pkgname-$pkgver.tar.xz @@ -25,6 +25,10 @@ package() { DESTDIR=$pkgdir samu install } +backup() { + return +} + license() { cd $pkgname-$pkgver cat LICENSE diff --git a/pkgs/shaderc/build.sh b/gui/shaderc/build.sh similarity index 100% rename from pkgs/shaderc/build.sh rename to gui/shaderc/build.sh diff --git a/pkgs/shaderc/third-party.patch b/gui/shaderc/third-party.patch similarity index 100% rename from pkgs/shaderc/third-party.patch rename to gui/shaderc/third-party.patch diff --git a/pkgs/slurp/build.sh b/gui/slurp/build.sh similarity index 100% rename from pkgs/slurp/build.sh rename to gui/slurp/build.sh diff --git a/gui/sndio/build.sh b/gui/sndio/build.sh new file mode 100644 index 0000000..0cef4f3 --- /dev/null +++ b/gui/sndio/build.sh @@ -0,0 +1,51 @@ +pkgname=sndio +pkgver=1.8.1 +ext="dev:doc" + +fetch() { + curl -L "https://sndio.org/sndio-$pkgver.tar.gz" -o $pkgname-$pkgver.tar.gz + tar -xf $pkgname-$pkgver.tar.gz +} + +build() { + cd $pkgname-$pkgver + ./configure \ + --prefix=/usr \ + --enable-alsa + + bad --gmake gmake +} + +package() { + cd $pkgname-$pkgver + bad --gmake gmake install DESTDIR=$pkgdir + + rm -rf $pkgdir/usr/share/man + + rm -rf $pkgdir/usr/include + rm -rf $pkgdir/usr/lib/pkgconfig +} + +package_dev() { + cd $pkgname-$pkgver + bad --gmake gmake install DESTDIR=$pkgdir + + rm -rf $pkgdir/usr/bin + rm -rf $pkgdir/usr/share/man + rm -rf $pkgdir/usr/lib/*.so* +} + +package_doc() { + cd $pkgname-$pkgver + bad --gmake gmake install DESTDIR=$pkgdir + + rm -rf $pkgdir/usr/lib + rm -rf $pkgdir/usr/bin + rm -rf $pkgdir/usr/include +} + +license() { + cd $pkgname-$pkgver + cat LICENSE +# cat COPYING +} diff --git a/pkgs/spirv-headers/build.sh b/gui/spirv-headers/build.sh similarity index 100% rename from pkgs/spirv-headers/build.sh rename to gui/spirv-headers/build.sh diff --git a/pkgs/spirv-tools/build.sh b/gui/spirv-tools/build.sh similarity index 100% rename from pkgs/spirv-tools/build.sh rename to gui/spirv-tools/build.sh diff --git a/gui/sway/build.sh b/gui/sway/build.sh new file mode 100644 index 0000000..a819564 --- /dev/null +++ b/gui/sway/build.sh @@ -0,0 +1,44 @@ +pkgname=sway +pkgver=master + +fetch() { + # curl -L "https://github.com/swaywm/sway/releases/download/$pkgver/sway-$pkgver.tar.gz" -o $pkgname-$pkgver.tar.xz + curl -L "https://github.com/swaywm/sway/archive/refs/heads/master.tar.gz" -o $pkgname-$pkgver.tar.gz + tar -xf $pkgname-$pkgver.tar.gz + mkdir $pkgname-$pkgver/build + cd $pkgname-$pkgver +} + +build() { + cd $pkgname-$pkgver + cd build + meson .. \ + --buildtype=release \ + --prefix=/usr \ + --libexecdir=lib \ + -Ddefault-wallpaper=true \ + -Dzsh-completions=true \ + -Dbash-completions=false \ + -Dfish-completions=false \ + -Dxwayland=disabled \ + -Dtray=disabled \ + -Dgdk-pixbuf=disabled \ + -Dman-pages=disabled + samu +} + +package() { + cd $pkgname-$pkgver + cd build + DESTDIR=$pkgdir samu install +} + +backup() { + echo /etc/sway/config +} + +license() { + cd $pkgname-$pkgver + cat LICENSE +# cat COPYING +} diff --git a/gui/swaybg/build.sh b/gui/swaybg/build.sh new file mode 100644 index 0000000..23896e4 --- /dev/null +++ b/gui/swaybg/build.sh @@ -0,0 +1,30 @@ +pkgname=swaybg +pkgver=1.1 + +fetch() { + curl -L "https://github.com/swaywm/swaybg/releases/download/v$pkgver/swaybg-$pkgver.tar.gz" -o $pkgname-$pkgver.tar.gz + tar -xf $pkgname-$pkgver.tar.gz + mkdir $pkgname-$pkgver/build +} + +build() { + cd $pkgname-$pkgver + cd build + meson .. \ + --buildtype=release \ + --prefix=/usr \ + --libexecdir=lib + samu +} + +package() { + cd $pkgname-$pkgver + cd build + DESTDIR=$pkgdir samu install +} + +license() { + cd $pkgname-$pkgver + cat LICENSE +# cat COPYING +} diff --git a/pkgs/vulkan-headers/build.sh b/gui/vulkan-headers/build.sh similarity index 89% rename from pkgs/vulkan-headers/build.sh rename to gui/vulkan-headers/build.sh index 880b18b..29189c6 100644 --- a/pkgs/vulkan-headers/build.sh +++ b/gui/vulkan-headers/build.sh @@ -1,8 +1,8 @@ pkgname=vulkan-headers -pkgver=1.2.166 +pkgver=1.2.196 fetch() { - curl -L "https://github.com/KhronosGroup/Vulkan-Headers/archive/v1.2.166.tar.gz" -o $pkgname-$pkgver.tar.xz + curl -L "https://github.com/KhronosGroup/Vulkan-Headers/archive/v$pkgver.tar.gz" -o $pkgname-$pkgver.tar.xz tar -xf $pkgname-$pkgver.tar.xz mv Vulkan-Headers-$pkgver $pkgname-$pkgver mkdir $pkgname-$pkgver/build diff --git a/pkgs/vulkan-icd-loader/build.sh b/gui/vulkan-icd-loader/build.sh similarity index 91% rename from pkgs/vulkan-icd-loader/build.sh rename to gui/vulkan-icd-loader/build.sh index c4a864c..c337a62 100644 --- a/pkgs/vulkan-icd-loader/build.sh +++ b/gui/vulkan-icd-loader/build.sh @@ -1,8 +1,8 @@ pkgname=vulkan-icd-loader -pkgver=1.2.166 +pkgver=1.2.182 fetch() { - curl -L "https://github.com/KhronosGroup/Vulkan-Loader/archive/v1.2.166.tar.gz" -o $pkgname-$pkgver.tar.xz + curl -L "https://github.com/KhronosGroup/Vulkan-Loader/archive/v1.2.182.tar.gz" -o $pkgname-$pkgver.tar.xz tar -xf $pkgname-$pkgver.tar.xz mv Vulkan-Loader-$pkgver $pkgname-$pkgver mkdir $pkgname-$pkgver/build diff --git a/pkgs/wayland-protocols/build.sh b/gui/wayland-protocols/build.sh similarity index 56% rename from pkgs/wayland-protocols/build.sh rename to gui/wayland-protocols/build.sh index 2239f7f..8f5483a 100644 --- a/pkgs/wayland-protocols/build.sh +++ b/gui/wayland-protocols/build.sh @@ -1,21 +1,31 @@ pkgname=wayland-protocols -pkgver=1.21 -deps="pkgconf:wayland" +pkgver=1.24 +deps="musl:pkgconf:wayland" fetch() { curl "https://wayland.freedesktop.org/releases/wayland-protocols-$pkgver.tar.xz" -o $pkgname-$pkgver.tar.xz tar -xf $pkgname-$pkgver.tar.xz + mkdir $pkgname-$pkgver/build } build() { cd $pkgname-$pkgver - ./configure --prefix=/usr - make + cd build + meson .. \ + --buildtype=release \ + --prefix=/usr \ + --libexecdir=lib + samu } package() { cd $pkgname-$pkgver - make DESTDIR=$pkgdir install + cd build + DESTDIR=$pkgdir samu install +} + +backup() { + return } license() { diff --git a/gui/wayland/build.sh b/gui/wayland/build.sh new file mode 100644 index 0000000..ce68c57 --- /dev/null +++ b/gui/wayland/build.sh @@ -0,0 +1,37 @@ +pkgname=wayland +pkgver=1.20.0 + +fetch() { + curl "https://wayland.freedesktop.org/releases/wayland-$pkgver.tar.xz" -o $pkgname-$pkgver.tar.xz + tar -xf $pkgname-$pkgver.tar.xz + mkdir $pkgname-$pkgver/build +} + +build() { + cd $pkgname-$pkgver + cd build + meson .. \ + --buildtype=release \ + --prefix=/usr \ + -Dlibraries=true \ + -Dscanner=true \ + -Dtests=false \ + -Ddocumentation=false \ + -Ddtd_validation=false + samu +} + +package() { + cd $pkgname-$pkgver + cd build + DESTDIR=$pkgdir samu install +} + +backup() { + return +} + +license() { + cd $pkgname-$pkgver + cat COPYING +} diff --git a/pkgs/weston/build.sh b/gui/weston/build.sh similarity index 100% rename from pkgs/weston/build.sh rename to gui/weston/build.sh diff --git a/pkgs/weston/no-tests.patch b/gui/weston/no-tests.patch similarity index 100% rename from pkgs/weston/no-tests.patch rename to gui/weston/no-tests.patch diff --git a/pkgs/wlanthy/build.sh b/gui/wlanthy/build.sh similarity index 100% rename from pkgs/wlanthy/build.sh rename to gui/wlanthy/build.sh diff --git a/pkgs/wlroots/build.sh b/gui/wlroots/build.sh similarity index 50% rename from pkgs/wlroots/build.sh rename to gui/wlroots/build.sh index 9c7d76b..8cfdbd9 100644 --- a/pkgs/wlroots/build.sh +++ b/gui/wlroots/build.sh @@ -1,9 +1,8 @@ pkgname=wlroots -pkgver=0.13.0 -ext="dev" +pkgver=0.15.0 fetch() { - curl -L "https://github.com/swaywm/wlroots/releases/download/$pkgver/wlroots-$pkgver.tar.gz" -o $pkgname-$pkgver.tar.xz + curl -L "https://gitlab.freedesktop.org/wlroots/wlroots/-/archive/$pkgver/wlroots-$pkgver.tar.gz" -o $pkgname-$pkgver.tar.xz tar -xf $pkgname-$pkgver.tar.xz mkdir $pkgname-$pkgver/build } @@ -15,7 +14,11 @@ build() { --buildtype=release \ --prefix=/usr \ --libexecdir=lib \ - -Dlibseat=enabled + -Dxcb-errors=disabled \ + -Dxwayland=disabled \ + -Dexamples=false \ + -Drenderers="['gles2', 'vulkan']" \ + -Dbackends="['drm', 'libinput']" samu } @@ -23,16 +26,10 @@ package() { cd $pkgname-$pkgver cd build DESTDIR=$pkgdir samu install - rm -r $pkgdir/usr/include - rm -r $pkgdir/usr/lib/pkgconfig } -package_dev() { - cd $pkgname-$pkgver - cd build - DESTDIR=$pkgdir samu install - rm $pkgdir/usr/lib/*.so - rm $pkgdir/usr/lib/*.so.* +backup() { + return } license() { diff --git a/gui/xkeyboard-config/build.sh b/gui/xkeyboard-config/build.sh new file mode 100644 index 0000000..9b1e031 --- /dev/null +++ b/gui/xkeyboard-config/build.sh @@ -0,0 +1,30 @@ +pkgname=xkeyboard-config +pkgver=2.33 + +fetch() { + curl "https://xorg.freedesktop.org/archive/individual/data/$pkgname/$pkgname-$pkgver.tar.bz2" -o $pkgname-$pkgver.tar.xz + tar -xf $pkgname-$pkgver.tar.xz + mkdir $pkgname-$pkgver/build +} + +build() { + cd $pkgname-$pkgver + cd build + meson .. \ + --buildtype=release \ + --prefix=/usr \ + --libexecdir=lib + samu +} + +package() { + cd $pkgname-$pkgver + cd build + DESTDIR=$pkgdir samu install +} + +license() { + cd $pkgname-$pkgver + cat LICENSE +# cat COPYING +} diff --git a/install.sh b/install.sh deleted file mode 100644 index b720226..0000000 --- a/install.sh +++ /dev/null @@ -1,5 +0,0 @@ -#!/bin/sh - -. ./build_utils -packages=(musl mksh bmake gmake llvm libressl cmake curl rsync flex byacc om4 zlib samurai libffi python ca-certificates expat gettext-tiny git kati netbsd-curses kakoune iglunix rust toybox busybox less pci-ids heirloom-doctools) -cp_packages /mnt diff --git a/linux/README.md b/linux/README.md new file mode 100644 index 0000000..50a31a1 --- /dev/null +++ b/linux/README.md @@ -0,0 +1,2 @@ +# Linux Packages +These packages are specific Iglunix on a Linux kernel diff --git a/pkgs/busybox/build.sh b/linux/busybox/build.sh similarity index 93% rename from pkgs/busybox/build.sh rename to linux/busybox/build.sh index 345db0c..c612d0f 100644 --- a/pkgs/busybox/build.sh +++ b/linux/busybox/build.sh @@ -1,4 +1,4 @@ -pkgver=1.33.1 +pkgver=1.34.1 pkgname=busybox bad=gmake deps="musl" @@ -7,14 +7,17 @@ pkgrel=1 fetch() { curl "https://busybox.net/downloads/busybox-$pkgver.tar.bz2" -o $pkgname-$pkgver.tar.gz tar -xf $pkgname-$pkgver.tar.gz + cd $pkgname-$pkgver + # patch -p1 < ../../clang-fix.patch + # patch -p1 < ../../modprobe.patch # cp ../man.sh . } build() { cd $pkgname-$pkgver - gmake HOSTCC=cc CC=cc CFLAGS=-O0 defconfig - gmake HOSTCC=cc CC=cc CFLAGS=-O0 - gmake HOSTCC=cc CC=cc CFLAGS=-O0 install + bad --gmake gmake HOSTCC=cc CC=$CC CFLAGS=-O0 defconfig + bad --gmake gmake HOSTCC=cc CC=$CC CFLAGS=-O0 + bad --gmake gmake HOSTCC=cc CC=$CC CFLAGS=-O0 install } package() { @@ -27,7 +30,7 @@ package() { # install -Dm755 ../man.sh $pkgdir/etc/profile.d install -Dm755 ./examples/udhcp/simple.script $pkgdir/usr/share/udhcpc/default.script - + rm $pkgdir/linuxrc rm $pkgdir/bin/ln rm $pkgdir/bin/uname @@ -192,6 +195,10 @@ package() { rm $pkgdir/usr/bin/man } +backup() { + return +} + license() { cd $pkgname-$pkgver cat LICENSE diff --git a/linux/busybox/clang-fix.patch b/linux/busybox/clang-fix.patch new file mode 100644 index 0000000..ce77652 --- /dev/null +++ b/linux/busybox/clang-fix.patch @@ -0,0 +1 @@ +You are being redirected. \ No newline at end of file diff --git a/pkgs/busybox/man.sh b/linux/busybox/man.sh similarity index 100% rename from pkgs/busybox/man.sh rename to linux/busybox/man.sh diff --git a/linux/busybox/modprobe.patch b/linux/busybox/modprobe.patch new file mode 100644 index 0000000..e69de29 diff --git a/linux/limine/build.sh b/linux/limine/build.sh new file mode 100644 index 0000000..7eaf892 --- /dev/null +++ b/linux/limine/build.sh @@ -0,0 +1,33 @@ +pkgname=limine +pkgver=3.4.4 +mkdeps="nasm:llvm" +auto_cross + +fetch() { + curl -L "https://github.com/limine-bootloader/limine/releases/download/v$pkgver/limine-$pkgver.tar.xz" -o $pkgname-$pkgver.tar.xz + tar -xf $pkgname-$pkgver.tar.xz +} + +build() { + cd $pkgname-$pkgver + export LIMINE_CC=clang + bad --gmake ./configure \ + --build=$HOST_TRIPLE \ + --host=$TRIPLE \ + --prefix=/usr + bad --gmake gmake +} + +package() { + cd $pkgname-$pkgver + bad --gmake gmake install DESTDIR=$pkgdir +} + +license() { + cd $pkgname-$pkgver + cat LICENSE.md +} + +backup() { + return +} diff --git a/pkgs/linux-firmware/build.sh b/linux/linux-firmware/build.sh similarity index 100% rename from pkgs/linux-firmware/build.sh rename to linux/linux-firmware/build.sh diff --git a/linux/linux/build.sh b/linux/linux/build.sh new file mode 100644 index 0000000..155f020 --- /dev/null +++ b/linux/linux/build.sh @@ -0,0 +1,122 @@ +pkgname=linux +pkgrel=1 +ext="dev" + +# setting the KERNEL_TREE environment variable changes the source +# location and updates the pkgver accordingly +# +# currently the following valuse for KERNEL_TREE are supported: +# - mainline - latest stable linux kernel release with alpine's config +# +# - asahi - latest asahi kernel from git with config taken form their PKGBUILD +# repo +# +# - rpi - latest raspberry pi kernel release with defconfig +# +# - visionfive - latest starfive-tech kernel from the vision five branch with +# visionfive_defconfig +# +# - megi - latest megi kernel with pinephone_pro_defconfig +# +# TODO: +# add KERNEL_CONFIG option to override config used when compiling + +if [ -z "$KERNEL_TREE" ]; then + KERNEL_TREE=mainline +fi + +case "$KERNEL_TREE" in + mainline) + pkgver=5.19.1 + src_tar="https://cdn.kernel.org/pub/linux/kernel/v5.x/linux-$pkgver.tar.xz" + fetch_config="https://git.alpinelinux.org/aports/plain/community/linux-edge/config-edge.$(uname -m)" + config=olddefconfig + ;; + asahi) + pkgver=asahi + src_tar="https://github.com/AsahiLinux/linux/archive/refs/heads/asahi.tar.gz" + fetch_config="https://raw.githubusercontent.com/AsahiLinux/PKGBUILDs/main/linux-asahi/config" + config=olddefconfig + ;; + visionfive) + pkgver=visionfive + src_tar="https://github.com/starfive-tech/linux/archive/refs/heads/visionfive.tar.gz" + config=visionfive_defconfig + ;; + *) + fatal "KERNEL_TREE $KERNEL_TREE isn't supported yet" + ;; +esac + +fetch() { + curl -L "$src_tar" -o $pkgname-$pkgver.tar + tar -xf $pkgname-$pkgver.tar + + # use Alpine's kernel config so we don't have to maintain one + [ ! -z "$fetch_config" ] && curl "$fetch_config" -o .config + cd $pkgname-$pkgver + echo "#!/bin/true" > scripts/check-local-export +} + +_arch=$ARCH +case $_arch in +aarch64*) _arch="arm64" ;; +riscv64*) _arch="riscv" ;; +ppc64le*) _arch="powerpc" ;; +esac + +if [ ! -z "$WITH_CROSS" ]; then + export CROSS_COMPILE=$WITH_CROSS-linux-musl +fi + +if [ ! -z "$FOR_CROSS" ]; then + export HEADS_ONLY=1 +fi + + +build() { + cd $pkgname-$pkgver + [ ! -z "$fetch_config" ] && cp ../.config . + bad --gmake gmake CC=clang HOSTCC=clang YACC=yacc LLVM=1 LLVM_IAS=1 ARCH=$_arch "$config" + + # sed -i 's/CONFIG_UNWINDER_ORC=y/# CONFIG_UNWINDER_ORC is not set/g' .config + # sed -i 's/# CONFIG_UNWINDER_FRAME_POINTER is not set/CONFIG_UNWINDER_FRAME_POINTER=y/g' .config + + if [ -z "$HEADS_ONLY" ]; then + bad --gmake gmake CC=clang HOSTCC=clang YACC=yacc LLVM=1 LLVM_IAS=1 ARCH=$_arch + fi +} + +package() { + cd $pkgname-$pkgver + + if [ -z "$HEADS_ONLY" ]; then + install -d $pkgdir/boot + bad --gmake gmake CC=cc HOSTCC=cc YACC=yacc LLVM=1 LLVM_IAS=1 ARCH=$_arch INSTALL_PATH=$pkgdir/boot install + + set +e # depmod causes errors and not all configs have dtbs + bad --gmake gmake CC=cc HOSTCC=cc YACC=yacc LLVM=1 LLVM_IAS=1 ARCH=$_arch INSTALL_DTBS_PATH=$pkgdir/boot/dtbs dtbs_install + bad --gmake gmake CC=cc HOSTCC=cc YACC=yacc LLVM=1 LLVM_IAS=1 ARCH=$_arch INSTALL_MOD_PATH=$pkgdir/ modules_install + set -e + fi + + bad --gmake gmake CC=cc HOSTCC=cc YACC=yacc LLVM=1 LLVM_IAS=1 ARCH=$_arch headers + find -name '.*' -exec rm {} \; + rm -f usr/include/Makefile + if [ -z "$FOR_CROSS" ]; then + install -d $pkgdir/usr/ + cp -r usr/include $pkgdir/usr/ + else + install -d $pkgdir/$FOR_CROSS_DIR/ + cp -r usr/include $pkgdir/$FOR_CROSS_DIR/ + fi +} + +backup() { + return +} + +license() { + cd $pkgname-$pkgver + cat COPYING +} diff --git a/pkgs/linux/kernel-byacc.patch b/linux/linux/kernel-byacc.patch similarity index 100% rename from pkgs/linux/kernel-byacc.patch rename to linux/linux/kernel-byacc.patch diff --git a/pkgs/linux/reflex.patch b/linux/linux/reflex.patch similarity index 100% rename from pkgs/linux/reflex.patch rename to linux/linux/reflex.patch diff --git a/linux/linux/v3d-enable.patch b/linux/linux/v3d-enable.patch new file mode 100644 index 0000000..e9d1e54 --- /dev/null +++ b/linux/linux/v3d-enable.patch @@ -0,0 +1,30 @@ +From 24662c14b45852c2d5fc4721b1494bce8345319d Mon Sep 17 00:00:00 2001 +From: Phil Elwell +Date: Thu, 15 Aug 2019 12:02:34 +0100 +Subject: [PATCH] configs: arm64/bcm2711: Enable V3D + +Enable the V3D driver, which depends on BCM2835_POWER. + +Originally submitted by GitHub user 'phire' in a slightly different +form. + +See: https://github.com/raspberrypi/linux/pull/3063 + +Signed-off-by: Phil Elwell +--- + drivers/gpu/drm/v3d/Kconfig | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/drivers/gpu/drm/v3d/Kconfig b/drivers/gpu/drm/v3d/Kconfig +index 9a5c44606337e..b0e0486979642 100644 +--- a/drivers/gpu/drm/v3d/Kconfig ++++ b/drivers/gpu/drm/v3d/Kconfig +@@ -1,7 +1,7 @@ + # SPDX-License-Identifier: GPL-2.0-only + config DRM_V3D + tristate "Broadcom V3D 3.x and newer" +- depends on ARCH_BCM || ARCH_BCMSTB || COMPILE_TEST ++ depends on ARCH_BCM || ARCH_BCMSTB || ARCH_BCM2835 || COMPILE_TEST + depends on DRM + depends on COMMON_CLK + depends on MMU diff --git a/linux/make_ext4fs/build.sh b/linux/make_ext4fs/build.sh new file mode 100644 index 0000000..088b230 --- /dev/null +++ b/linux/make_ext4fs/build.sh @@ -0,0 +1,31 @@ +pkgname=make_ext4fs +pkgver=main +mkdeps=toybox:bmake:llvm +deps=musl:zlib-ng +auto_cross + +fetch() { + curl -L "https://github.com/iglunix/make_ext4fs/archive/refs/heads/main.tar.gz" -o $pkgname-$pkgver.tar.gz + tar -xf $pkgname-$pkgver.tar.gz +} + +build() { + cd $pkgname-$pkgver + make +} + +package() { + cd $pkgname-$pkgver + install -d $pkgdir/sbin + install -Dm755 ./make_ext4fs $pkgdir/sbin/mkfs.ext4 +} + +license() { + cd $pkgname-$pkgver + cat LICENSE +# cat COPYING +} + +backup() { + return +} diff --git a/linux/musl/bits.meson.build b/linux/musl/bits.meson.build new file mode 100644 index 0000000..3e3bd59 --- /dev/null +++ b/linux/musl/bits.meson.build @@ -0,0 +1,32 @@ +alltypes_h = custom_target( + 'alltypes.h', + output : 'alltypes.h', + input : [ + meson.project_source_root() + '/tools/mkalltypes.sed', + meson.project_source_root() + '/arch/'+arch+'/bits/alltypes.h.in', + meson.project_source_root() + '/include/alltypes.h.in' + ], + command : ['sed', '-f', '@INPUT0@', '@INPUT1@', '@INPUT2@'], + capture : true, + install : true, + install_dir : 'include/bits/' +) + +syscall_h_in = custom_target( + 'syscall.in', + output : 'syscall.in', + input : meson.project_source_root() + '/arch/'+arch+'/bits/syscall.h.in', + command : ['sed', '-n', '-e', 's/__NR_/SYS_/p', '@INPUT@'], + capture : true +) + +syscall_h = custom_target( + 'syscall.h', + output : 'syscall.h', + input : [ meson.project_source_root() + '/arch/'+arch+'/bits/syscall.h.in', syscall_h_in ], + command : ['cat', '@INPUT0@', '@INPUT1@'], + capture : true, + install : true, + install_dir : 'include/bits/' +) + diff --git a/linux/musl/build.sh b/linux/musl/build.sh new file mode 100644 index 0000000..36c962b --- /dev/null +++ b/linux/musl/build.sh @@ -0,0 +1,54 @@ +pkgver=1.2.2 +pkgname=musl +deps="" +mkdeps="gmake" +bad="gmake" +ext="dev" + +fetch() { + curl "https://musl.libc.org/releases/$pkgname-$pkgver.tar.gz" -o $pkgname-$pkgver.tar.gz + tar -xf $pkgname-$pkgver.tar.gz + ln -s /usr/bin/cc $ARCH-linux-musl-cc + cd $pkgname-$pkgver +} + + +if [ -z "$FOR_CROSS" ]; then + PREFIX=/usr +else + PREFIX=$FOR_CROSS_DIR +fi + + +build() { + cd $pkgname-$pkgver + + + CC=$(pwd)/../$ARCH-linux-musl-cc ./configure \ + --prefix=$PREFIX \ + --target=$TRIPLE \ + --disable-wrapper + + bad --gmake gmake +} + +package() { + cd $pkgname-$pkgver + bad --gmake gmake DESTDIR=$pkgdir install + rm $pkgdir/lib/ld-musl-$ARCH.so.1 + mv $pkgdir/$PREFIX/lib/libc.so $pkgdir/lib/ld-musl-$ARCH.so.1 + ln -sr $pkgdir/lib/ld-musl-$ARCH.so.1 $pkgdir/$PREFIX/lib/libc.so + if [ -z "$FOR_CROSS" ]; then + install -d $pkgdir/$PREFIX/bin + ln -sr $pkgdir/lib/ld-musl-$ARCH.so.1 $pkgdir/$PREFIX/bin/ldd + fi +} + +backup() { + return +} + +license() { + cd $pkgname-$pkgver + cat COPYRIGHT +} diff --git a/linux/musl/crt.meson.build b/linux/musl/crt.meson.build new file mode 100644 index 0000000..23c4b25 --- /dev/null +++ b/linux/musl/crt.meson.build @@ -0,0 +1,45 @@ +Scrt1 = custom_target('Scrt1.o', + output : 'Scrt1.o', + input : 'Scrt1.c', + command : [ cc.cmd_array(), inc_dir_flags, c_args, '-DCRT', '-c', '-o', '@OUTPUT@', '@INPUT@' ], + depends : [ alltypes_h, syscall_h, version_h ], + install : true, + install_dir: 'lib' +) + +rcrt1 = custom_target('rcrt1.o', + output : 'rcrt1.o', + input : 'rcrt1.c', + command : [ cc.cmd_array(), inc_dir_flags, c_args, '-DCRT', '-c', '-o', '@OUTPUT@', '@INPUT@' ], + depends : [ alltypes_h, syscall_h, version_h ], + install : true, + install_dir: 'lib' +) + +crt1 = custom_target('crt1.o', + output : 'crt1.o', + input : 'crt1.c', + command : [ cc.cmd_array(), inc_dir_flags, c_args, '-DCRT', '-c', '-o', '@OUTPUT@', '@INPUT@' ], + depends : [ alltypes_h, syscall_h, version_h ], + install : true, + install_dir: 'lib' +) + +crti = custom_target('crti.o', + output : 'crti.o', + input : target_machine.cpu_family() + '/crti.s', + command : [ cc.cmd_array(), inc_dir_flags, c_args, '-DCRT', '-c', '-o', '@OUTPUT@', '@INPUT@' ], + depends : [ alltypes_h, syscall_h, version_h ], + install : true, + install_dir: 'lib' +) + +crtn = custom_target('crtn.o', + output : 'crtn.o', + input : target_machine.cpu_family() + '/crtn.s', + command : [ cc.cmd_array(), inc_dir_flags, c_args, '-DCRT', '-c', '-o', '@OUTPUT@', '@INPUT@' ], + depends : [ alltypes_h, syscall_h, version_h ], + install : true, + install_dir: 'lib' +) + diff --git a/linux/musl/glob.sh b/linux/musl/glob.sh new file mode 100755 index 0000000..959e6a2 --- /dev/null +++ b/linux/musl/glob.sh @@ -0,0 +1,23 @@ +#!/bin/sh + +ARCH=$1 +MALLOC_IMPL=mallocng + +ARCH_FILES=src/*/x86_64/*.[csS] + +HAVE=$(echo $ARCH_FILES | tr ' ' '\n' | sed 's|'$ARCH/'||g' | cut -d'.' -f 1) +echo $ARCH_FILES | tr ' ' '\n' + +FILES=$(echo src/*/*.[csS] | tr ' ' '\n') +for have in $HAVE; do + FILES=$(echo $FILES | tr ' ' '\n' | grep -v $have'.[csS]') +done + +echo $FILES | tr ' ' '\n' + +echo src/malloc/$MALLOC_IMPL/*.[csS] | tr ' ' '\n' + +#find src/*/ -maxdepth 1 -name '*.[csS]' + +#find src/*/$ARCH -maxdepth 1 -name '*.[csS]' + diff --git a/linux/musl/globbits.sh b/linux/musl/globbits.sh new file mode 100755 index 0000000..a6d4a20 --- /dev/null +++ b/linux/musl/globbits.sh @@ -0,0 +1,13 @@ +#!/bin/sh +ARCH=$1 + +ARCH_INC=arch/$ARCH/bits/*.h +echo $ARCH_INC | tr ' ' '\n' + +HAVE=$(echo $ARCH_INC | tr ' ' '\n' | sed 's|'$ARCH'|generic|g') + +INCLUDES=arch/generic/bits/*.h +for inc in $HAVE; do + INCLUDES=$(echo $INCLUDES | tr ' ' '\n' | grep -v $inc) +done +echo $INCLUDES | tr ' ' '\n' diff --git a/linux/musl/meson.build b/linux/musl/meson.build new file mode 100644 index 0000000..483817d --- /dev/null +++ b/linux/musl/meson.build @@ -0,0 +1,139 @@ +project('musl', 'c', version : '1.2.2', license : 'MIT') + +cc = meson.get_compiler('c') +cmd = cc.cmd_array() +cmd += '--print-libgcc-file-name' +libgcc = run_command(cmd) +libgcc = libgcc.stdout().strip() + +arch = target_machine.cpu() + + +message('libgcc: ', libgcc) + +globbed_sources = run_command(meson.project_source_root() + '/glob.sh', target_machine.cpu_family()) +newline= ''' +''' +globbed_sources = globbed_sources.stdout().strip().split(newline) + + +globbed_headers = run_command(meson.project_source_root() + '/globbits.sh', target_machine.cpu_family()) + +globbed_headers = globbed_headers.stdout().strip().split(newline) + +install_headers(globbed_headers, subdir: 'bits') +install_headers( + run_command('find', meson.project_source_root() + '/include/', '-name', '*.h').stdout().strip().split(newline) +) +install_headers( + run_command('find', meson.project_source_root() + '/include/net', '-name', '*.h').stdout().strip().split(newline), + subdir: 'net' +) +install_headers( + run_command('find', meson.project_source_root() + '/include/netpacket', '-name', '*.h').stdout().strip().split(newline), + subdir: 'netpacket' +) +install_headers( + run_command('find', meson.project_source_root() + '/include/sys', '-name', '*.h').stdout().strip().split(newline), + subdir: 'sys' +) +install_headers( + run_command('find', meson.project_source_root() + '/include/scsi', '-name', '*.h').stdout().strip().split(newline), + subdir: 'scsi' +) +install_headers( + run_command('find', meson.project_source_root() + '/include/arpa', '-name', '*.h').stdout().strip().split(newline), + subdir: 'arpa' +) +install_headers( + run_command('find', meson.project_source_root() + '/include/netinet', '-name', '*.h').stdout().strip().split(newline), + subdir: 'netinet' +) + +subdir('bits/') + +message(globbed_headers) + +c_args = [ + '-pipe', + '-fomit-frame-pointer', + '-fno-unwind-tables', + '-fno-asynchronous-unwind-tables', + '-ffunction-sections', + '-fdata-sections', + '-std=c99', '-ffreestanding', '-nostdinc', + '-D_XOPEN_SOURCE=700', + '-fno-stack-protector', + '-fPIC' +] + +ld_args = [ + '-nostdlib', + '-Wl,--dynamic-list='+meson.project_source_root()+'/dynamic.list', + '-Wl,-e,_dlstart', + libgcc +] + + +inc_dir_flags = [ + '-I'+meson.project_source_root()+'/arch/' + arch, + '-I'+meson.project_source_root()+'/arch/generic', + '-I'+meson.project_source_root()+'/src/internal', + '-I'+meson.project_source_root()+'/src/include', + '-I'+meson.project_source_root()+'/include', + '-I'+meson.project_build_root() +] + +inc_dirs = include_directories( + 'arch/' + arch, + 'arch/generic', + 'src/internal', + 'src/include', + 'include' +) + + +ldso_sources = [ + 'ldso/dlstart.c', + 'ldso/dynlink.c', +] + +version_h = custom_target( + 'version.h', + output : 'version.h', + command : [ meson.project_source_root()+'/version_h.sh' ], + capture : true +) + +shared_library('c', + ldso_sources, + globbed_sources, + alltypes_h, + syscall_h, + version_h, + c_args: c_args, link_args: ld_args, + include_directories: inc_dirs, + install: true +) + +static_library('c', + ldso_sources, + globbed_sources, + alltypes_h, + syscall_h, + version_h, + c_args: c_args, link_args: ld_args, + include_directories: inc_dirs, + install: true +) + +static_library('crypt', install: true) +static_library('dl', install: true) +static_library('m', install: true) +static_library('rt', install: true) +static_library('pthread', install: true) +static_library('util', install: true) +static_library('xnet', install: true) + +subdir('crt') + diff --git a/linux/musl/version_h.sh b/linux/musl/version_h.sh new file mode 100755 index 0000000..3e88631 --- /dev/null +++ b/linux/musl/version_h.sh @@ -0,0 +1,2 @@ +#!/bin/sh +printf '#define VERSION "%s"\n' $(sh ./tools/version.sh) diff --git a/pkgs/raspberrypi-firmware/build.sh b/linux/raspberrypi-firmware/build.sh similarity index 96% rename from pkgs/raspberrypi-firmware/build.sh rename to linux/raspberrypi-firmware/build.sh index 123cd6e..2fb1d1e 100644 --- a/pkgs/raspberrypi-firmware/build.sh +++ b/linux/raspberrypi-firmware/build.sh @@ -1,5 +1,5 @@ pkgname=raspberrypi-firmware -pkgver=20210527 +pkgver=20210805 fetch() { curl -L "https://github.com/raspberrypi/firmware/archive/refs/tags/1.$pkgver.tar.gz" -o $pkgname-$pkgver.tar.xz diff --git a/linux/raspberrypi-linux/build.sh b/linux/raspberrypi-linux/build.sh new file mode 100644 index 0000000..180245c --- /dev/null +++ b/linux/raspberrypi-linux/build.sh @@ -0,0 +1,50 @@ +pkgver=1.20211007 +pkgname=raspberrypi-linux + +fetch() { + curl -L "https://github.com/raspberrypi/linux/archive/refs/tags/$pkgver.tar.gz" -o $pkgname-$pkgver.tar.gz + tar -xf $pkgname-$pkgver.tar.gz + mv linux-raspberrypi-kernel_$pkgver $pkgname-$pkgver + cd $pkgname-$pkgver + + patch -p1 < ../../kernel-byacc.patch + # patch -p1 < ../../reflex.patch +} + +build() { + cd $pkgname-$pkgver + bad --gmake gmake ARCH=arm64 CC=cc HOSTCC=cc LEX=flex YACC=yacc LLVM=1 LLVM_IAS=1 bcm2711_defconfig + bad --gmake gmake ARCH=arm64 CC=cc HOSTCC=cc LEX=flex YACC=yacc LLVM=1 LLVM_IAS=1 +} + +package() { + cd $pkgname-$pkgver + install -d $pkgdir/boot + cp arch/arm64/boot/Image $pkgdir/boot/kernel8.img + bad --gmake gmake ARCH=arm64 CC=cc HOSTCC=cc LEX=flex YACC=yacc LLVM=1 LLVM_IAS=1 INSTALL_PATH=$pkgdir/boot install + bad --gmake gmake ARCH=arm64 CC=cc HOSTCC=cc LEX=flex YACC=yacc LLVM=1 LLVM_IAS=1 INSTALL_DTBS_PATH=$pkgdir/boot dtbs_install + bad --gmake gmake ARCH=arm64 CC=cc HOSTCC=cc LEX=flex YACC=yacc LLVM=1 LLVM_IAS=1 INSTALL_MOD_PATH=$pkgdir/ modules_install + + mv $pkgdir/boot/broadcom/* $pkgdir/boot/ + rmdir $pkgdir/boot/broadcom + + if stat /usr/bin/rsync 2>/dev/null /dev/null; then + echo "using rsync" + bad --gmake gmake ARCH=arm64 CC=cc HOSTCC=cc LEX=flex YACC=yacc LLVM=1 LLVM_IAS=1 INSTALL_HDR_PATH=$pkgdir/usr headers_install + else + bad --gmake gmake ARCH=arm64 CC=cc HOSTCC=cc LEX=flex YACC=yacc LLVM=1 LLVM_IAS=1 headers + find -name '.*' -exec rm {} \; + rm usr/include/Makefile + install -d $pkgdir/usr/ + cp -r usr/include $pkgdir/usr/ + fi +} + +backup() { + return +} + +license() { + cd $pkgname-$pkgver + cat COPYING +} diff --git a/pkgs/raspberrypi-linux/kernel-byacc.patch b/linux/raspberrypi-linux/kernel-byacc.patch similarity index 100% rename from pkgs/raspberrypi-linux/kernel-byacc.patch rename to linux/raspberrypi-linux/kernel-byacc.patch diff --git a/pkgs/raspberrypi-linux/reflex.patch b/linux/raspberrypi-linux/reflex.patch similarity index 100% rename from pkgs/raspberrypi-linux/reflex.patch rename to linux/raspberrypi-linux/reflex.patch diff --git a/linux/rpi-linux-rev2/build.sh b/linux/rpi-linux-rev2/build.sh new file mode 100644 index 0000000..aee5e3d --- /dev/null +++ b/linux/rpi-linux-rev2/build.sh @@ -0,0 +1,50 @@ +pkgver=rpi-5.10.y +pkgname=linux +pkgrel=1 +ext="dev" + +fetch() { + fetch_tar "$pkgname-$pkgver.tar.gz" f633fabf55892cf19fc9173d2b8df779 "https://github.com/raspberrypi/linux/archive/refs/heads/$pkgver.tar.gz" + cd $pkgname-$pkgver + + patch -p1 < ../../kernel-byacc.patch + curl 'https://cgit.freedesktop.org/drm/drm/patch/?id=26a4dc29b74a137f45665089f6d3d633fcc9b662' | patch -p1 +} + +_arch=$ARCH +case $_arch in +aarch64*) _arch="arm64" ;; +esac + +build() { + cd $pkgname-$pkgver + bad --gmake gmake CC=cc CXX=c++ HOSTCC=cc HOSTCXX=c++ YACC=yacc LLVM_IAS=1 ARCH=$_arch bcm2711_defconfig + bad --gmake gmake CC=cc CXX=c++ HOSTCC=cc HOSTCXX=c++ YACC=yacc LLVM_IAS=1 ARCH=$_arch +} + +package() { + cd $pkgname-$pkgver + install -d $pkgdir/boot + bad --gmake gmake CC=cc CXX=c++ HOSTCC=cc HOSTCXX=c++ YACC=yacc LLVM_IAS=1 ARCH=$_arch INSTALL_PATH=$pkgdir/boot install + bad --gmake gmake CC=cc HOSTCC=cc LEX=flex YACC=yacc LLVM=1 LLVM_IAS=1 ARCH=$_arch INSTALL_DTBS_PATH=$pkgdir/boot dtbs_install + bad --gmake gmake CC=cc CXX=c++ HOSTCC=cc HOSTCXX=c++ YACC=yacc LLVM_IAS=1 ARCH=$_arch INSTALL_MOD_PATH=$pkgdir/ modules_install + + if stat /usr/bin/rsync 2>/dev/null /dev/null; then + bad --gmake gmake CC=cc CXX=c++ HOSTCC=cc HOSTCXX=c++ YACC=yacc LLVM_IAS=1 ARCH=$_arch INSTALL_HDR_PATH=$pkgdir/usr headers_install + else + bad --gmake gmake CC=cc CXX=c++ HOSTCC=cc HOSTCXX=c++ YACC=yacc LLVM_IAS=1 ARCH=$_arch headers + find -name '.*' -exec rm {} \; + rm usr/include/Makefile + install -d $pkgdir/usr/ + cp -r usr/include $pkgdir/usr/ + fi +} + +backup() { + return +} + +license() { + cd $pkgname-$pkgver + cat COPYING +} diff --git a/linux/rpi-linux-rev2/kernel-byacc.patch b/linux/rpi-linux-rev2/kernel-byacc.patch new file mode 100644 index 0000000..b2aa286 --- /dev/null +++ b/linux/rpi-linux-rev2/kernel-byacc.patch @@ -0,0 +1,35 @@ +diff --git a/scripts/Makefile.host b/scripts/Makefile.host +index 4c51c95d40f4..64e98e1d4825 100644 +--- a/scripts/Makefile.host ++++ b/scripts/Makefile.host +@@ -11,7 +11,7 @@ $(obj)/%.lex.c: $(src)/%.l FORCE + # YACC + # --------------------------------------------------------------------------- + quiet_cmd_bison = YACC $(basename $@).[ch] +- cmd_bison = $(YACC) -o $(basename $@).c --defines=$(basename $@).h -t -l $< ++ cmd_bison = $(YACC) -b $(basename $(basename $@)) -d -t -l $< + + $(obj)/%.tab.c $(obj)/%.tab.h: $(src)/%.y FORCE + $(call if_changed,bison) +--- a/scripts/genksyms/Makefile ++++ b/scripts/genksyms/Makefile +@@ -14,7 +14,7 @@ + ifeq ($(findstring 1,$(KBUILD_EXTRA_WARN)),) + + quiet_cmd_bison_no_warn = $(quiet_cmd_bison) +- cmd_bison_no_warn = $(YACC) --version >/dev/null; \ ++ cmd_bison_no_warn = $(YACC) -V >/dev/null; \ + $(cmd_bison) 2>/dev/null + + $(obj)/pars%.tab.c $(obj)/pars%.tab.h: $(src)/pars%.y FORCE +--- a/scripts/genksyms/lex.l ++++ b/scripts/genksyms/lex.l +@@ -19,6 +19,8 @@ + #include "genksyms.h" + #include "parse.tab.h" + ++extern YYSTYPE yylval; ++ + /* We've got a two-level lexer here. We let flex do basic tokenization + and then we categorize those basic tokens in the second stage. */ + #define YY_DECL static int yylex1(void) diff --git a/iglu.8 b/man/iglu.8 similarity index 100% rename from iglu.8 rename to man/iglu.8 diff --git a/old/README.md b/old/README.md new file mode 100644 index 0000000..b7675da --- /dev/null +++ b/old/README.md @@ -0,0 +1,2 @@ +# Old packages +For deprecated packages that shouldn't be used diff --git a/pkgs/alacritty/build.sh b/old/alacritty/build.sh similarity index 100% rename from pkgs/alacritty/build.sh rename to old/alacritty/build.sh diff --git a/pkgs/bin86/build.sh b/old/bin86/build.sh similarity index 82% rename from pkgs/bin86/build.sh rename to old/bin86/build.sh index 4683541..460556d 100644 --- a/pkgs/bin86/build.sh +++ b/old/bin86/build.sh @@ -10,14 +10,14 @@ fetch() { build() { cd $pkgname-$pkgver - gmake PREFIX=/usr + bad --gmake gmake PREFIX=/usr } package() { cd $pkgname-$pkgver install -d $pkgdir/usr/bin install -d $pkgdir/usr/share/man/man1 - gmake PREFIX=$pkgdir/usr MANDIR=$pkgdir/usr/share/man/man1 install + bad --gmake gmake PREFIX=$pkgdir/usr MANDIR=$pkgdir/usr/share/man/man1 install } license() { diff --git a/pkgs/dropbear/build.sh b/old/dropbear/build.sh similarity index 69% rename from pkgs/dropbear/build.sh rename to old/dropbear/build.sh index 9cda9ad..765e98d 100644 --- a/pkgs/dropbear/build.sh +++ b/old/dropbear/build.sh @@ -15,12 +15,12 @@ build() { --build=x86_64-unknown-linux-musl \ --host=x86_64-unknown-linux-musl - gmake PROGRAMS='dropbear dbclient dropbearkey dropbearconvert scp' + bad --gmake gmake PROGRAMS='dropbear dbclient dropbearkey dropbearconvert scp' } package() { cd $pkgname-$pkgver - gmake install DESTDIR=$pkgdir PROGRAMS='dropbear dbclient dropbearkey dropbearconvert scp' + bad --gmake gmake install DESTDIR=$pkgdir PROGRAMS='dropbear dbclient dropbearkey dropbearconvert scp' ln -sr $pkgdir/usr/sbin/dropbear $pkgdir/usr/sbin/sshd ln -sr $pkgdir/usr/bin/dbclient $pkgdir/usr/bin/ssh rm -r $pkgdir/usr/share @@ -28,7 +28,7 @@ package() { package_doc() { cd $pkgname-$pkgver - gmake install DESTDIR=$pkgdir PROGRAMS='dropbear dbclient dropbearkey dropbearconvert scp' + bad --gmake gmake install DESTDIR=$pkgdir PROGRAMS='dropbear dbclient dropbearkey dropbearconvert scp' rm -r $pkgdir/usr/bin rm -r $pkgdir/usr/sbin } diff --git a/pkgs/e2fsprogs/build.sh b/old/e2fsprogs/build.sh similarity index 98% rename from pkgs/e2fsprogs/build.sh rename to old/e2fsprogs/build.sh index ea56348..65d14e1 100644 --- a/pkgs/e2fsprogs/build.sh +++ b/old/e2fsprogs/build.sh @@ -19,7 +19,7 @@ build() { #--exec_prefix=/ - gmake + bad --gmake gmake } package() { diff --git a/pkgs/file/build.sh b/old/file/build.sh similarity index 87% rename from pkgs/file/build.sh rename to old/file/build.sh index 41b8f5b..2d105d5 100644 --- a/pkgs/file/build.sh +++ b/old/file/build.sh @@ -8,6 +8,10 @@ fetch() { } build() { + echo "=================" + echo " DEPRECATED: " + echo " USE TOYBOX FILE " + echo "=================" cd $pkgname-$pkgver ./configure \ --prefix=/usr \ diff --git a/pkgs/glibr/build.sh b/old/glibr/build.sh similarity index 100% rename from pkgs/glibr/build.sh rename to old/glibr/build.sh diff --git a/pkgs/graphicsmagick/build.sh b/old/graphicsmagick/build.sh similarity index 100% rename from pkgs/graphicsmagick/build.sh rename to old/graphicsmagick/build.sh diff --git a/old/imagemagick/build.sh b/old/imagemagick/build.sh new file mode 100644 index 0000000..6a058ac --- /dev/null +++ b/old/imagemagick/build.sh @@ -0,0 +1,28 @@ +pkgname=ImageMagick +pkgver=7.1.0 + +fetch() { + curl "https://download.imagemagick.org/ImageMagick/download/ImageMagick.tar.gz" -o $pkgname-$pkgver.tar.xz + tar -xf $pkgname-$pkgver.tar.xz +} + +build() { + cd $pkgname-$pkgver + ./configure \ + --prefix=/usr \ + --build=$TRIPLE \ + --host=$TRIPLE + + make +} + +package() { + cd $pkgname-$pkgver + make install DESTDIR=$pkgdir +} + +license() { + cd $pkgname-$pkgver + cat LICENSE +# cat COPYING +} diff --git a/pkgs/kbd/build.sh b/old/kbd/build.sh similarity index 100% rename from pkgs/kbd/build.sh rename to old/kbd/build.sh diff --git a/pkgs/libnl/build.sh b/old/libnl/build.sh similarity index 95% rename from pkgs/libnl/build.sh rename to old/libnl/build.sh index 41ac795..4a04fbd 100644 --- a/pkgs/libnl/build.sh +++ b/old/libnl/build.sh @@ -27,11 +27,11 @@ build() { patch -p1 < ../byacc-p-makefile.patch - gmake + bad --gmake gmake patch -p1 < ../byacc-comment-defines.patch - gmake + bad --gmake gmake } package() { diff --git a/pkgs/libnl/byacc-comment-defines.patch b/old/libnl/byacc-comment-defines.patch similarity index 100% rename from pkgs/libnl/byacc-comment-defines.patch rename to old/libnl/byacc-comment-defines.patch diff --git a/pkgs/libnl/byacc-p-makefile.patch b/old/libnl/byacc-p-makefile.patch similarity index 100% rename from pkgs/libnl/byacc-p-makefile.patch rename to old/libnl/byacc-p-makefile.patch diff --git a/pkgs/libnl/byacc-syntax.patch b/old/libnl/byacc-syntax.patch similarity index 100% rename from pkgs/libnl/byacc-syntax.patch rename to old/libnl/byacc-syntax.patch diff --git a/pkgs/libressl/build.sh b/old/libressl/build.sh similarity index 100% rename from pkgs/libressl/build.sh rename to old/libressl/build.sh diff --git a/pkgs/lilo/build.sh b/old/lilo/build.sh similarity index 96% rename from pkgs/lilo/build.sh rename to old/lilo/build.sh index caa75e6..3704927 100644 --- a/pkgs/lilo/build.sh +++ b/old/lilo/build.sh @@ -28,12 +28,12 @@ fetch() { build() { cd $pkgname-$pkgver - gmake CC="${CC:-clang}" + bad --gmake gmake CC="${CC:-clang}" } package() { cd $pkgname-$pkgver - gmake install DESTDIR=$pkgdir + bad --gmake gmake install DESTDIR=$pkgdir } license() { diff --git a/pkgs/lilo/checkit.patch b/old/lilo/checkit.patch similarity index 100% rename from pkgs/lilo/checkit.patch rename to old/lilo/checkit.patch diff --git a/pkgs/linux-pam/build.sh b/old/linux-pam/build.sh similarity index 100% rename from pkgs/linux-pam/build.sh rename to old/linux-pam/build.sh diff --git a/pkgs/pci-ids/build.sh b/old/pci-ids/build.sh similarity index 100% rename from pkgs/pci-ids/build.sh rename to old/pci-ids/build.sh diff --git a/pkgs/rawk/build.sh b/old/rawk/build.sh similarity index 100% rename from pkgs/rawk/build.sh rename to old/rawk/build.sh diff --git a/pkgs/rawk/cp-u.patch b/old/rawk/cp-u.patch similarity index 100% rename from pkgs/rawk/cp-u.patch rename to old/rawk/cp-u.patch diff --git a/pkgs/reflex/build.sh b/old/reflex/build.sh similarity index 100% rename from pkgs/reflex/build.sh rename to old/reflex/build.sh diff --git a/pkgs/river/build.sh b/old/river/build.sh similarity index 100% rename from pkgs/river/build.sh rename to old/river/build.sh diff --git a/pkgs/rsync/build.sh b/old/rsync/build.sh similarity index 100% rename from pkgs/rsync/build.sh rename to old/rsync/build.sh diff --git a/pkgs/swc/build.sh b/old/swc/build.sh similarity index 80% rename from pkgs/swc/build.sh rename to old/swc/build.sh index 1d401eb..9325ca1 100644 --- a/pkgs/swc/build.sh +++ b/old/swc/build.sh @@ -12,12 +12,12 @@ build() { cd $pkgname-$pkgver cp ../config.mk . - gmake PREFIX=/usr CC=cc + bad --gmake gmake PREFIX=/usr CC=cc } package() { cd $pkgname-$pkgver - gmake install DESTDIR=$pkgdir PREFIX=/usr + bad --gmake gmake install DESTDIR=$pkgdir PREFIX=/usr } license() { diff --git a/pkgs/swc/config.mk b/old/swc/config.mk similarity index 100% rename from pkgs/swc/config.mk rename to old/swc/config.mk diff --git a/pkgs/swvkc/build.sh b/old/swvkc/build.sh similarity index 72% rename from pkgs/swvkc/build.sh rename to old/swvkc/build.sh index 4e5451a..d126d8c 100644 --- a/pkgs/swvkc/build.sh +++ b/old/swvkc/build.sh @@ -1,8 +1,8 @@ pkgname=swvkc -pkgver=gpu-dev-option +pkgver=master fetch() { - curl -L "https://github.com/Ella-0/swvkc/archive/gpu-dev-option.tar.gz" -o $pkgname-$pkgver.tar.gz + curl -L "https://github.com/st3r4g/swvkc/archive/master.tar.gz" -o $pkgname-$pkgver.tar.gz tar -xf $pkgname-$pkgver.tar.gz mkdir $pkgname-$pkgver/build } diff --git a/pkgs/tiny-linux-bootloader/bsect.patch b/old/tiny-linux-bootloader/bsect.patch similarity index 100% rename from pkgs/tiny-linux-bootloader/bsect.patch rename to old/tiny-linux-bootloader/bsect.patch diff --git a/pkgs/tiny-linux-bootloader/build.patch b/old/tiny-linux-bootloader/build.patch similarity index 100% rename from pkgs/tiny-linux-bootloader/build.patch rename to old/tiny-linux-bootloader/build.patch diff --git a/pkgs/tiny-linux-bootloader/build.sh b/old/tiny-linux-bootloader/build.sh similarity index 100% rename from pkgs/tiny-linux-bootloader/build.sh rename to old/tiny-linux-bootloader/build.sh diff --git a/pkgs/tiny-linux-bootloader/fstab b/old/tiny-linux-bootloader/fstab similarity index 100% rename from pkgs/tiny-linux-bootloader/fstab rename to old/tiny-linux-bootloader/fstab diff --git a/pkgs/tiny-linux-bootloader/remove-dead.patch b/old/tiny-linux-bootloader/remove-dead.patch similarity index 100% rename from pkgs/tiny-linux-bootloader/remove-dead.patch rename to old/tiny-linux-bootloader/remove-dead.patch diff --git a/pkgs/toolchain-aarch64/build.sh b/old/toolchain-aarch64/build.sh similarity index 96% rename from pkgs/toolchain-aarch64/build.sh rename to old/toolchain-aarch64/build.sh index 48b5704..281d64c 100644 --- a/pkgs/toolchain-aarch64/build.sh +++ b/old/toolchain-aarch64/build.sh @@ -49,8 +49,8 @@ build() { --target=aarch64-unknown-linux-musl \ --enable-wrappers=no - gmake - gmake install DESTDIR=$pkgdir + bad --gmake gmake + bad --gmake gmake install DESTDIR=$pkgdir } package() { diff --git a/pkgs/util-linux/build.sh b/old/util-linux/build.sh similarity index 100% rename from pkgs/util-linux/build.sh rename to old/util-linux/build.sh diff --git a/pkgs/velox/build.sh b/old/velox/build.sh similarity index 82% rename from pkgs/velox/build.sh rename to old/velox/build.sh index bbce74c..34a07e7 100644 --- a/pkgs/velox/build.sh +++ b/old/velox/build.sh @@ -13,12 +13,12 @@ build() { cp ../config.mk . cp ../velox.conf . - gmake PREFIX=/usr CC=cc + bad --gmake gmake PREFIX=/usr CC=cc } package() { cd $pkgname-$pkgver - gmake install DESTDIR=$pkgdir PREFIX=/usr + bad --gmake gmake install DESTDIR=$pkgdir PREFIX=/usr install -d $pkgdir/etc install -Dm644 velox.conf $pkgdir/etc/ } diff --git a/pkgs/velox/config.mk b/old/velox/config.mk similarity index 100% rename from pkgs/velox/config.mk rename to old/velox/config.mk diff --git a/pkgs/velox/velox.conf b/old/velox/velox.conf similarity index 100% rename from pkgs/velox/velox.conf rename to old/velox/velox.conf diff --git a/old/webkit/build.sh b/old/webkit/build.sh new file mode 100644 index 0000000..9f78b97 --- /dev/null +++ b/old/webkit/build.sh @@ -0,0 +1,31 @@ +pkgname=webkit +pkgver=master + +fetch() { + curl -L "https://github.com/iglunix/WebKit/archive/refs/heads/$pkgver.tar.gz" -o $pkgname-$pkgver.tar.xz + tar -xf $pkgname-$pkgver.tar.xz + mkdir $pkgname-$pkgver/build +} + +build() { + cd $pkgname-$pkgver + cd build + cmake -G Ninja ../ \ + -DCMAKE_BUILD_TYPE=Release \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DCMAKE_INSTALL_LIBDIR=lib \ + -DPORT=JSCOnly + samu +} + +package() { + cd $pkgname-$pkgver + cd build + DESTDIR=$pkgdir samu install +} + +license() { + cd $pkgname-$pkgver + cat LICENSE +# cat COPYING +} diff --git a/pkgs/wld/build.sh b/old/wld/build.sh similarity index 77% rename from pkgs/wld/build.sh rename to old/wld/build.sh index 3d6764b..89ac4af 100644 --- a/pkgs/wld/build.sh +++ b/old/wld/build.sh @@ -9,12 +9,12 @@ fetch() { build() { cd $pkgname-$pkgver - gmake PREFIX=/usr CC=cc + bad --gmake gmake PREFIX=/usr CC=cc } package() { cd $pkgname-$pkgver - gmake install DESTDIR=$pkgdir PREFIX=/usr + bad --gmake gmake install DESTDIR=$pkgdir PREFIX=/usr } license() { diff --git a/pkgs/zlib/build.sh b/old/zlib/build.sh similarity index 86% rename from pkgs/zlib/build.sh rename to old/zlib/build.sh index 90cc6f9..2f67af1 100644 --- a/pkgs/zlib/build.sh +++ b/old/zlib/build.sh @@ -9,6 +9,11 @@ fetch() { } build() { + echo "=============" + echo " DEPRECATED: " + echo " USE ZLIB-NG " + echo "=============" + cd $pkgname-$pkgver ./configure \ --prefix=/usr diff --git a/pkgs/bmake/no-test.patch b/pkgs/bmake/no-test.patch deleted file mode 100644 index 1ad8ab7..0000000 --- a/pkgs/bmake/no-test.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- ../bmakeb/bmake/boot-strap 2020-11-13 21:47:25.000000000 +0000 -+++ boot-strap 2020-12-27 17:26:13.126598658 +0000 -@@ -431,7 +431,7 @@ - - op_test() { - [ -x bmake ] || op_build -- Bmake test || exit 1 -+ #Bmake test || exit 1 - } - - op_clean() { diff --git a/pkgs/ca-certificates/build.sh b/pkgs/ca-certificates/build.sh deleted file mode 100644 index e679866..0000000 --- a/pkgs/ca-certificates/build.sh +++ /dev/null @@ -1,56 +0,0 @@ -pkgname=ca-certificates -pkgver=202200601 -pkgrel=2 -ext=doc - -fetch(){ - curl http://ftp.debian.org/debian/pool/main/c/ca-certificates/ca-certificates_20200601~deb10u2.tar.xz -o $pkgname-$pkgver.tar.gz - tar -xf $pkgname-$pkgver.tar.gz - mv work $pkgname-$pkgver - cd $pkgname-$pkgver - patch -p1 < ../../libressl-update-rehash.patch -} - - -build() { - cd $pkgname-$pkgver - gmake -} - -package() { - cd $pkgname-$pkgver - mkdir -p $pkgdir/usr/bin - mkdir -p $pkgdir/usr/sbin - mkdir -p $pkgdir/etc/ssl/ - mkdir -p $pkgdir/etc/ca-certificates/update.d - mkdir -p $pkgdir/usr/share/ca-certificates/ - - gmake install DESTDIR="$pkgdir" - - ( - echo "# Automatically generated by ${pkgname}-${pkgver}-${pkgrel}" - echo "# $(date -u)" - echo "# Do not edit." - cd "$pkgdir"/usr/share/ca-certificates - find . -name '*.crt' | sort | cut -b3- - ) > "$pkgdir"/etc/ca-certificates.conf - - cat > "$pkgdir"/etc/ca-certificates/update.d/certhash <<-EOF - #!/bin/sh - exec openssl certhash /etc/ssl/certs - EOF - - cat "$pkgdir"/usr/share/ca-certificates/mozilla/*.crt > $pkgdir/etc/ssl/cert.pem - chmod +x "$pkgdir"/etc/ca-certificates/update.d/certhash -} - -package_doc() { - cd $pkgname-$pkgver - install -d $pkgdir/usr/share/man/man8 - install -Dm644 ./sbin/update-ca-certificates.8 $pkgdir/usr/share/man/man8 -} - -license() { - cd $pkgname-$pkgver - cat debian/copyright -} diff --git a/pkgs/ca-certificates/libressl-update-rehash.patch b/pkgs/ca-certificates/libressl-update-rehash.patch deleted file mode 100644 index 566deb6..0000000 --- a/pkgs/ca-certificates/libressl-update-rehash.patch +++ /dev/null @@ -1,14 +0,0 @@ ---- a/sbin/update-ca-certificates -+++ b/sbin/update-ca-certificates -@@ -183,9 +183,9 @@ - done - if [ "$verbose" = 0 ] - then -- openssl rehash . > /dev/null -+ openssl certhash . > /dev/null - else -- openssl rehash -v . -+ openssl certhash -v . - fi - fi - diff --git a/pkgs/cava/build.sh b/pkgs/cava/build.sh new file mode 100644 index 0000000..edeed0a --- /dev/null +++ b/pkgs/cava/build.sh @@ -0,0 +1,28 @@ +pkgname=cava +pkgver=0.7.4 + +fetch() { + curl -L "https://github.com/karlstav/cava/archive/refs/tags/$pkgver.tar.gz" -o $pkgname-$pkgver.tar.xz + tar -xf $pkgname-$pkgver.tar.xz +} + +build() { + cd $pkgname-$pkgver + ./configure \ + --prefix=/usr \ + --build=$TRIPLE \ + --host=$TRIPLE + + make +} + +package() { + cd $pkgname-$pkgver + make install DESTDIR=$pkgdir +} + +license() { + cd $pkgname-$pkgver + cat LICENSE +# cat COPYING +} diff --git a/pkgs/cmake/build.sh b/pkgs/cmake/build.sh deleted file mode 100644 index d13182c..0000000 --- a/pkgs/cmake/build.sh +++ /dev/null @@ -1,48 +0,0 @@ -pkgver=3.19.2 -pkgname=cmake -pkgrel=1 -bad="" -ext="" - -fetch() { - curl "https://cmake.org/files/v3.19/cmake-3.19.2.tar.gz" -o $pkgname-$pkgver.tar.gz - tar -xf $pkgname-$pkgver.tar.gz -} - -build() { - cd $pkgname-$pkgver - ./bootstrap \ - --prefix=/usr \ - --mandir=/usr/share/man \ - --datadir=/usr/share/$pkgname \ - --docdir=/usr/share/doc/$pkgname \ - --generator=Ninja \ - --no-system-libs - - samu -} - -package() { - cd $pkgname-$pkgver - DESTDIR=$pkgdir samu install - -} - -package_doc() { - cd $pkgname-$pkgver - gmake install DESDIR=$pkgdir - rm -r $pkgdir/usr/bin - rm -r $pkgdir/usr/share/info - rm -r $pkgdir/usr/include -} -package_dev() { - cd $pkgname-$pkgver - gmake install DESTDIR=$pkgdir - rm -r $pkgdir/usr/bin - rm -r $pkgdir/usr/share -} - -license() { - cd $pkgname-$pkgver - cat COPYING -} diff --git a/pkgs/curl/build.sh b/pkgs/curl/build.sh deleted file mode 100644 index f03d6d3..0000000 --- a/pkgs/curl/build.sh +++ /dev/null @@ -1,48 +0,0 @@ -pkgver=7.77.0 -pkg_ver=$(echo $pkgver | tr '.' '_') -pkgname=curl -pkgrel=1 -bad="" -ext="doc:dev" - -fetch() { - curl -L "https://github.com/curl/curl/releases/download/curl-$pkg_ver/curl-$pkgver.tar.xz" -o $pkgname-$pkgver.tar.gz - tar -xf $pkgname-$pkgver.tar.gz -} - -build() { - cd $pkgname-$pkgver - mkdir build - cd build - cmake -G Ninja ../ \ - -DCMAKE_BUILD_TYPE=Release \ - -DCMAKE_INSTALL_PREFIX=/usr \ - -DCMAKE_INSTALL_LIBDIR=lib \ - -DCURL_CA_BUNDLE=/etc/ssl/certs/ca-certificates.crt - samu -} - -package() { - cd $pkgname-$pkgver - cd build - DESTDIR=$pkgdir samu install - rm -r $pkgdir/usr/share - rm -r $pkgdir/usr/include - rm -r $pkgdir/usr/lib/pkgconfig - rm -r $pkgdir/usr/lib/cmake -} - -package_dev() { - cd $pkgname-$pkgver - cd build - DESTDIR=$pkgdir samu install - rm -r $pkgdir/usr/share - rm -r $pkgdir/usr/bin - rm $pkgdir/usr/lib/*.so - rm $pkgdir/usr/lib/*.so.* -} - -license() { - cd $pkgname-$pkgver - cat COPYING -} diff --git a/pkgs/git/build.sh b/pkgs/git/build.sh deleted file mode 100644 index 98c5fc5..0000000 --- a/pkgs/git/build.sh +++ /dev/null @@ -1,33 +0,0 @@ -pkgver=2.30.0 -pkgname=git -pkgrel=1 -deps="musl:zlib:curl:dropbear" -bad="gmake" -ext="doc" - -fetch() { - curl "https://mirrors.edge.kernel.org/pub/software/scm/git/git-2.30.0.tar.xz" -o $pkgname-$pkgver.tar.xz - tar -xf $pkgname-$pkgver.tar.xz -} - -build() { - cd $pkgname-$pkgver - gmake NO_PERL=1 NO_REGEX=NeedsStartEnd NO_TCLTK=1 NO_MSGFMT_EXTENDED_OPTIONS=1 prefix=/usr gitexecdir=lib/gitcore INSTALL_SYMLINKS=1 - # Need to run twice for it to work ¯\_(ツ)_/¯ - # Some issue with `msgfmt` 'cause I'm using gettext-tiny but idk why it works on the second run - gmake NO_PERL=1 NO_REGEX=NeedsStartEnd NO_TCLTK=1 NO_MSGFMT_EXTENDED_OPTIONS=1 prefix=/usr gitexecdir=lib/gitcore INSTALL_SYMLINKS=1 -} - -package() { - cd $pkgname-$pkgver - gmake NO_PERL=1 NO_REGEX=NeedsStartEnd NO_TCLTK=1 NO_MSGFMT_EXTENDED_OPTIONS=1 install prefix=/usr gitexecdir=lib/gitcore DESTDIR=$pkgdir INSTALL_SYMLINKS=1 -} - -package_doc() { - gmake NO_PERL=1 NO_REGEX=NeedsStartEnd NO_TCLTK=1 NO_MSGFMT_EXTENDED_OPTIONS=1 install-man prefix=/usr DESTDIR=$pkgdir INSTALL_SYMLINKS=1 -} - -license() { - cd $pkgname-$pkgver - cat COPYING -} diff --git a/pkgs/gmake/build.sh b/pkgs/gmake/build.sh deleted file mode 100644 index eee32e9..0000000 --- a/pkgs/gmake/build.sh +++ /dev/null @@ -1,47 +0,0 @@ -pkgver=4.3 -pkgname=gmake -pkgrel=1 -deps="musl" -bad="gmake" -ext="doc:dev" - -fetch() { - curl "https://ftp.gnu.org/gnu/make/make-4.3.tar.gz" -o $pkgname-$pkgver.tar.gz - tar -xf $pkgname-$pkgver.tar.gz - mv make-$pkgver $pkgname-$pkgver -} - -build() { - cd $pkgname-$pkgver - ./configure \ - --prefix=/usr \ - --program-prefix=g \ - --disable-nls - make -} - -package() { - cd $pkgname-$pkgver - ./make install DESTDIR=$pkgdir - rm -r $pkgdir/usr/share - rm -r $pkgdir/usr/include -} - -package_doc() { - cd $pkgname-$pkgver - ./make install DESDIR=$pkgdir - rm -r $pkgdir/usr/bin - rm -r $pkgdir/usr/share/info - rm -r $pkgdir/usr/include -} -package_dev() { - cd $pkgname-$pkgver - ./make install DESTDIR=$pkgdir - rm -r $pkgdir/usr/bin - rm -r $pkgdir/usr/share -} - -license() { - cd $pkgname-$pkgver - cat COPYING -} diff --git a/pkgs/imv/build.sh b/pkgs/imv/build.sh new file mode 100644 index 0000000..03c14b1 --- /dev/null +++ b/pkgs/imv/build.sh @@ -0,0 +1,32 @@ +pkgname=imv +pkgver=4.2.0 + +fetch() { + curl -L "https://github.com/eXeC64/imv/archive/refs/tags/v$pkgver.tar.gz" -o $pkgname-$pkgver.tar.xz + tar -xf $pkgname-$pkgver.tar.xz + mkdir $pkgname-$pkgver/build +} + +build() { + cd $pkgname-$pkgver + cd build + meson .. \ + --buildtype=release \ + --prefix=/usr \ + --libexecdir=lib \ + -Dlibrsvg=disabled \ + -Dwindows=wayland + samu +} + +package() { + cd $pkgname-$pkgver + cd build + DESTDIR=$pkgdir samu install +} + +license() { + cd $pkgname-$pkgver + cat LICENSE +# cat COPYING +} diff --git a/pkgs/kak-lsp/build.sh b/pkgs/kak-lsp/build.sh index 5b5f296..e69de29 100644 --- a/pkgs/kak-lsp/build.sh +++ b/pkgs/kak-lsp/build.sh @@ -1,24 +0,0 @@ -pkgname=kak-lsp -pkgver=9.0.0 - -fetch() { - curl -L "https://github.com/kak-lsp/kak-lsp/archive/v$pkgver.tar.gz" -o $pkgname-$pkgver.tar.xz - tar -xf $pkgname-$pkgver.tar.xz -} - -build() { - cd $pkgname-$pkgver - cargo build --release --locked --all-features -} - -package() { - cd $pkgname-$pkgver - install -Dm755 target/release/$pkgname $pkgdir/usr/bin/ - install -Dm644 rc/lsp.kak $pkgdir/usr/share/kak-lsp/rc/ - install -Dm644 kak-lsp.toml $pkgdir/usr/share/kak-lsp/examples/ -} - -license() { - cd $pkgname-$pkgver - cat UNLICENSE -} diff --git a/pkgs/libslirp/build.sh b/pkgs/libslirp/build.sh new file mode 100644 index 0000000..fa3d8c7 --- /dev/null +++ b/pkgs/libslirp/build.sh @@ -0,0 +1,31 @@ +pkgname=libslirp +pkgver=4.6.1 + +fetch() { + curl "https://gitlab.freedesktop.org/slirp/libslirp/-/archive/v$pkgver/libslirp-v$pkgver.tar.bz2" -o $pkgname-$pkgver.tar.bz2 + tar -xf $pkgname-$pkgver.tar.bz2 + mv $pkgname-v$pkgver $pkgname-$pkgver + mkdir $pkgname-$pkgver/build +} + +build() { + cd $pkgname-$pkgver + cd build + meson .. \ + --buildtype=release \ + --prefix=/usr \ + --libexecdir=lib + samu +} + +package() { + cd $pkgname-$pkgver + cd build + DESTDIR=$pkgdir samu install +} + +license() { + cd $pkgname-$pkgver + cat LICENSE +# cat COPYING +} diff --git a/pkgs/linux/build.sh b/pkgs/linux/build.sh deleted file mode 100644 index f6563b7..0000000 --- a/pkgs/linux/build.sh +++ /dev/null @@ -1,52 +0,0 @@ -pkgver=5.12.10 -pkgname=linux -pkgrel=1 -ext="dev" - -fetch() { - curl "https://raw.githubusercontent.com/kisslinux/website/master/site/dist/kernel-no-perl.patch" -o kernel-no-perl.patch - curl "https://cdn.kernel.org/pub/linux/kernel/v5.x/$pkgname-$pkgver.tar.xz" -o $pkgname-$pkgver.tar.xz - tar -xf $pkgname-$pkgver.tar.xz - cd $pkgname-$pkgver - - # use Alpine's kernel config so we don't have to maintain one - curl "https://git.alpinelinux.org/aports/plain/testing/linux-edge/config-edge.$(uname -m)" -o .config - patch -p1 < ../kernel-no-perl.patch - patch -p1 < ../../kernel-byacc.patch - patch -p1 < ../../reflex.patch -} - -build() { - cd $pkgname-$pkgver - # gmake CC=cc CXX=c++ HOSTCC=cc HOSTCXX=c++ YACC=yacc LLVM_IAS=1 defconfig - gmake CC=cc CXX=c++ HOSTCC=cc HOSTCXX=c++ LEX=reflex YACC=yacc LLVM_IAS=1 olddefconfig - # gmake CC=cc CXX=c++ HOSTCC=cc HOSTCXX=c++ LEX=lex YACC=yacc LLVM_IAS=1 menuconfig - # cp .config ../../$(uname -m).config.new - sed -i 's/CONFIG_UNWINDER_ORC=y/# CONFIG_UNWINDER_ORC is not set/g' .config - sed -i 's/# CONFIG_UNWINDER_FRAME_POINTER is not set/CONFIG_UNWINDER_FRAME_POINTER=y/g' .config - gmake CC=cc CXX=c++ HOSTCC=cc HOSTCXX=c++ LEX=reflex YACC=yacc LLVM_IAS=1 -} - -package() { - cd $pkgname-$pkgver - install -d $pkgdir/boot - gmake CC=cc CXX=c++ HOSTCC=cc HOSTCXX=c++ YACC=yacc LLVM_IAS=1 INSTALL_PATH=$pkgdir/boot install - gmake CC=cc CXX=c++ HOSTCC=cc HOSTCXX=c++ YACC=yacc LLVM_IAS=1 INSTALL_MOD_PATH=$pkgdir/ modules_install -} - -package_dev() { - cd $pkgname-$pkgver - if stat /usr/bin/rsync 2>/dev/null /dev/null; then - gmake CC=cc CXX=c++ HOSTCC=cc HOSTCXX=c++ YACC=yacc LLVM_IAS=1 INSTALL_HDR_PATH=$pkgdir/usr headers_install - else - gmake CC=cc CXX=c++ HOSTCC=cc HOSTCXX=c++ YACC=yacc LLVM_IAS=1 headers - find -name '.*' -exec rm {} \; - rm usr/include/Makefile - cp -r usr/include $pkgdir/usr - fi -} - -license() { - cd $pkgname-$pkgver - cat COPYING -} diff --git a/pkgs/llvm/build.sh b/pkgs/llvm/build.sh deleted file mode 100644 index f689e50..0000000 --- a/pkgs/llvm/build.sh +++ /dev/null @@ -1,117 +0,0 @@ -pkgver=12.0.1 -pkgname=llvm -bad="" -ext="dev" - -fetch() { - curl -L "https://github.com/llvm/llvm-project/releases/download/llvmorg-$pkgver/llvm-project-$pkgver.src.tar.xz" -o $pkgname-$pkgver.tar.gz - tar -xf $pkgname-$pkgver.tar.gz - mv llvm-project-$pkgver.src $pkgname-$pkgver - - # fixes relaxation - curl "https://reviews.llvm.org/file/data/fwstsxaybgq26x5dtdbg/PHID-FILE-pptlyffhoud7h2kme6qo/D100835.diff" | patch -p0 - - cp -n ../default.llvm.conf /etc/iglupkg/llvm.conf - [ ../default/llvm.conf -nt /etc/iglupkg/llvm.conf ] && echo "WARNING: the default config file is newer than your config file." done -} - -build() { - cd $pkgname-$pkgver - mkdir -p build - cd build - cmake -G Ninja -Wno-dev \ - -DCMAKE_C_COMPILER_TARGET=$TRIPLE \ - -DCMAKE_CXX_COMPILER_TARGET=$TRIPLE \ - -DCMAKE_INSTALL_PREFIX=/usr \ - -DCMAKE_BUILD_TYPE=Release \ - -DLLVM_VERSION_SUFFIX="" \ - -DLLVM_APPEND_VC_REV=OFF \ - -DLLVM_ENABLE_PROJECTS="libunwind;libcxxabi;libcxx;compiler-rt;llvm;lld;clang;clang-tools-extra;lldb" \ - -DLLVM_ENABLE_LLD=ON \ - -DLLVM_TARGETS_TO_BUILD="all" \ - -DLLVM_INSTALL_BINUTILS_SYMLINKS=ON \ - -DLLVM_INSTALL_CCTOOLS_SYMLINKS=ON \ - -DLLVM_INCLUDE_EXAMPLES=OFF \ - -DLLVM_ENABLE_PIC=ON \ - -DLLVM_ENABLE_LTO=OFF \ - -DLLVM_INCLUDE_GO_TESTS=OFF \ - -DLLVM_INCLUDE_TESTS=OFF \ - -DLLVM_HOST_TRIPLE=$TRIPLE \ - -DLLVM_DEFAULT_TARGET_TRIPLE=$TRIPLE \ - -DLLVM_ENABLE_LIBXML2=OFF \ - -DLLVM_ENABLE_ZLIB=OFF\ - -DLLVM_BUILD_LLVM_DYLIB=ON \ - -DLLVM_LINK_LLVM_DYLIB=ON \ - -DLLVM_OPTIMIZED_TABLEGEN=ON \ - -DLLVM_INCLUDE_BENCHMARKS=OFF \ - -DLLVM_INCLUDE_DOCS=ON \ - -DLLVM_TOOL_LLVM_ITANIUM_DEMANGLE_FUZZER_BUILD=OFF \ - -DLLVM_TOOL_LLVM_MC_ASSEMBLE_FUZZER_BUILD=OFF \ - -DLLVM_TOOL_LLVM_MC_DISASSEMBLE_FUZZER_BUILD=OFF \ - -DLLVM_TOOL_LLVM_OPT_FUZZER_BUILD=OFF \ - -DLLVM_TOOL_LLVM_MICROSOFT_DEMANGLE_FUZZER_BUILD=OFF \ - -DLLVM_TOOL_LLVM_GO_BUILD=OFF \ - -DLLVM_INSTALL_UTILS=ON \ - -DLLVM_ENABLE_LIBCXX=ON \ - -DLLVM_STATIC_LINK_CXX_STDLIB=ON \ - -DLLVM_ENABLE_LIBEDIT=OFF \ - -DLLVM_ENABLE_TERMINFO=OFF \ - -DLIBCXX_ENABLE_FILESYSTEM=ON \ - -DLIBCXX_USE_COMPILER_RT=ON \ - -DLIBCXX_HAS_MUSL_LIBC=ON \ - -DLIBCXX_ENABLE_STATIC_ABI_LIBRARY=ON \ - -DLIBCXX_STATICALLY_LINK_ABI_IN_SHARED_LIBRARY=ON \ - -DLIBCXX_STATICALLY_LINK_ABI_IN_STATIC_LIBRARY=ON \ - -DLIBCXX_INSTALL_LIBRARY=ON \ - -DLIBCXXABI_ENABLE_ASSERTIONS=ON \ - -DLIBCXXABI_USE_COMPILER_RT=ON \ - -DLIBCXXABI_USE_LLVM_UNWINDER=ON \ - -DLIBCXXABI_ENABLE_STATIC_UNWINDER=ON \ - -DLIBCXXABI_STATICALLY_LINK_UNWINDER_IN_SHARED_LIBRARY=YES \ - -DLIBCXXABI_ENABLE_SHARED=OFF \ - -DLIBCXXABI_ENABLE_STATIC=ON \ - -DLIBCXXABI_INSTALL_LIBRARY=ON \ - -DLIBUNWIND_ENABLE_SHARED=ON \ - -DLIBUNWIND_ENABLE_STATIC=ON \ - -DLIBUNWIND_INSTALL_LIBRARY=ON \ - -DLIBUNWIND_USE_COMPILER_RT=ON \ - -DCLANG_DEFAULT_LINKER=lld \ - -DCLANG_DEFAULT_CXX_STDLIB='libc++' \ - -DCLANG_DEFAULT_RTLIB=compiler-rt \ - -DCLANG_DEFAULT_UNWINDLIB=libunwind \ - -DCLANG_VENDOR="Iglunix" \ - -DCLANG_ENABLE_STATIC_ANALYZER=OFF \ - -DCLANG_ENABLE_ARCMT=OFF \ - -DCLANG_LINK_CLANG_DYLIB=OFF \ - -DCOMPILER_RT_USE_BUILTINS_LIBRARY=ON \ - -DCOMPILER_RT_DEFAULT_TARGET_ONLY=OFF \ - -DCOMPILER_RT_INCLUDE_TESTS=OFF \ - -DCOMPILER_RT_BUILD_SANITIZERS=OFF \ - -DCOMPILER_RT_BUILD_XRAY=OFF \ - -DCOMPILER_RT_BUILD_MEMPROF=OFF \ - -DCOMPILER_RT_INCLUDE_TESTS=OFF \ - -DCOMPILER_RT_BUILD_LIBFUZZER=OFF \ - -DENABLE_EXPERIMENTAL_NEW_PASS_MANAGER=TRUE \ - ../llvm - - samu -j$JOBS -} - -package() { - cd $pkgname-$pkgver - cd build - DESTDIR=$pkgdir samu install - ln -sr $pkgdir/usr/bin/clang $pkgdir/usr/bin/cc - ln -sr $pkgdir/usr/bin/clang $pkgdir/usr/bin/c89 - ln -sr $pkgdir/usr/bin/clang $pkgdir/usr/bin/c99 - ln -sr $pkgdir/usr/bin/clang++ $pkgdir/usr/bin/c++ -} - -package_dev() { - echo "No... Shut" -} - -license() { - cd $pkgname-$pkgver - cat */LICENSE.TXT -} diff --git a/pkgs/musl/build.sh b/pkgs/musl/build.sh deleted file mode 100644 index 12e300d..0000000 --- a/pkgs/musl/build.sh +++ /dev/null @@ -1,39 +0,0 @@ -pkgver=1.2.2 -pkgname=musl -deps="" -bad="gmake" -ext="dev" - -fetch() { - curl "https://musl.libc.org/releases/$pkgname-$pkgver.tar.gz" -o $pkgname-$pkgver.tar.gz - tar -xf $pkgname-$pkgver.tar.gz -} - -build() { - cd $pkgname-$pkgver - ./configure \ - --prefix=/usr \ - --build=$(uname -m)-unknown-linux-musl \ - --host=$(uname -m)-unknown-linux-musl \ - --enable-wrapper=no - gmake -} - -package() { - cd $pkgname-$pkgver - gmake install DESTDIR=$pkgdir - rm -r $pkgdir/usr/include - install -d $pkgdir/usr/bin - ln -sr $pkgdir/lib/ld-musl-$(uname -m).so.1 $pkgdir/usr/bin/ldd -} - -package_dev() { - cd $pkgname-$pkgver - gmake install DESTDIR=$pkgdir - rm $pkgdir/usr/lib/*.so -} - -license() { - cd $pkgname-$pkgver - cat COPYRIGHT -} diff --git a/pkgs/nasm/build.sh b/pkgs/nasm/build.sh index 032c8e6..1c27ca3 100644 --- a/pkgs/nasm/build.sh +++ b/pkgs/nasm/build.sh @@ -15,18 +15,18 @@ build(){ --build=x86_64-unknown-linux-musl \ --host=x86_64-unknown-linux-musl \ --prefix=/usr - gmake + bad --gmake gmake } package() { cd $pkgname-$pkgver - gmake DESTDIR="$pkgdir" install + bad --gmake gmake DESTDIR="$pkgdir" install rm -r $pkgdir/usr/share } package_doc() { cd $pkgname-$pkgver - gmake DESTDIR="$pkgdir" install + bad --gmake gmake DESTDIR="$pkgdir" install rm -r $pkgdir/usr/bin } diff --git a/pkgs/netbsd-curses/build.sh b/pkgs/netbsd-curses/build.sh deleted file mode 100644 index a25846a..0000000 --- a/pkgs/netbsd-curses/build.sh +++ /dev/null @@ -1,45 +0,0 @@ -pkgver=master -pkgname=netbsd-curses -bad="" -deps="musl" -ext="doc:dev" - -fetch() { - curl -L "https://github.com/sabotage-linux/netbsd-curses/archive/master.tar.gz" -o $pkgname-$pkgver.tar.gz - tar -xf $pkgname-$pkgver.tar.gz -} - -build() { - cd $pkgname-$pkgver - ckati -} - -package() { - cd $pkgname-$pkgver - ckati install DESTDIR=$pkgdir PREFIX=/usr - rm -r $pkgdir/usr/share - rm $pkgdir/usr/lib/*.a - rm -r $pkgdir/usr/include - rm -r $pkgdir/usr/lib/pkgconfig -} - -package_doc() { - cd $pkgname-$pkgver - ckati install DESTDIR=$pkgdir PREFIX=/usr - rm -r $pkgdir/usr/bin - rm -r $pkgdir/usr/lib - rm -r $pkgdir/usr/include -} - -package_dev() { - cd $pkgname-$pkgver - ckati install DESTDIR=$pkgdir PREFIX=/usr - rm $pkgdir/usr/lib/*.so - rm -r $pkgdir/usr/share - rm -r $pkgdir/usr/bin -} - -license() { - cd $pkgname-$pkgver - cat COPYING -} diff --git a/pkgs/patchelf/build.sh b/pkgs/patchelf/build.sh new file mode 100644 index 0000000..a33438e --- /dev/null +++ b/pkgs/patchelf/build.sh @@ -0,0 +1,29 @@ +pkgname=patchelf +pkgver=0.12 + +fetch() { + curl -L "https://github.com/NixOS/patchelf/releases/download/0.12/patchelf-$pkgver.tar.bz2" -o $pkgname-$pkgver.tar.bz2 + tar -xf $pkgname-$pkgver.tar.bz2 + mv $pkgname-$pkgver*/ $pkgname-$pkgver +} + +build() { + cd $pkgname-$pkgver + ./configure \ + --prefix=/usr \ + --build=$TRIPLE \ + --host=$TRIPLE + + make +} + +package() { + cd $pkgname-$pkgver + make install DESTDIR=$pkgdir +} + +license() { + cd $pkgname-$pkgver + cat LICENSE +# cat COPYING +} diff --git a/pkgs/pfetch/build.sh b/pkgs/pfetch/build.sh deleted file mode 100644 index 34eea74..0000000 --- a/pkgs/pfetch/build.sh +++ /dev/null @@ -1,22 +0,0 @@ -pkgname=pfetch -pkgver=0.6.0 - -fetch() { - curl -L "https://github.com/dylanaraps/pfetch/archive/$pkgver.tar.gz" -o $pkgname-$pkgver.tar.xz - tar -xf $pkgname-$pkgver.tar.xz -} - -build() { - cd $pkgname-$pkgver - echo "Nothing to do" -} - -package() { - cd $pkgname-$pkgver - install -Dm755 pfetch /usr/bin/ -} - -license() { - cd $pkgname-$pkgver - cat LICENSE.md -} diff --git a/pkgs/pipewire/build.sh b/pkgs/pipewire/build.sh deleted file mode 100644 index 4ee4f5e..0000000 --- a/pkgs/pipewire/build.sh +++ /dev/null @@ -1,40 +0,0 @@ -pkgname=pipewire -pkgver=0.3.27 - -fetch() { - curl "https://gitlab.freedesktop.org/pipewire/pipewire/-/archive/$pkgver/pipewire-$pkgver.tar.bz2" -o $pkgname-$pkgver.tar.xz - tar -xf $pkgname-$pkgver.tar.xz - mkdir $pkgname-$pkgver/build - - cp ../no-dbus.patch . - cd $pkgname-$pkgver - patch -p1 < ../no-dbus.patch -} - -build() { - cd $pkgname-$pkgver - cd build - meson .. \ - --buildtype=release \ - --prefix=/usr \ - --libexecdir=lib \ - -Dbluez5=disabled \ - -Dlibcamera=disabled \ - -Dexamples=disabled \ - -Dgstreamer=disabled \ - -Dlibpulse=disabled \ - -Dmedia-session=enabled \ - -Dpw-cat=enabled - samu -} - -package() { - cd $pkgname-$pkgver - cd build - DESTDIR=$pkgdir samu install -} - -license() { - cd $pkgname-$pkgver - cat COPYING -} diff --git a/pkgs/pipewire/no-dbus.patch b/pkgs/pipewire/no-dbus.patch deleted file mode 100644 index 54b363e..0000000 --- a/pkgs/pipewire/no-dbus.patch +++ /dev/null @@ -1,84 +0,0 @@ ---- a/meson.build -+++ b/meson.build -@@ -306,7 +306,7 @@ - rt_lib = cc.find_library('rt', required : false) # clock_gettime - dl_lib = cc.find_library('dl', required : false) - pthread_lib = dependency('threads') --dbus_dep = dependency('dbus-1') -+dbus_dep = dependency('dbus-1', required : false) - sdl_dep = dependency('sdl2', required : get_option('sdl2')) - ncurses_dep = dependency('ncursesw', required : false) - sndfile_dep = dependency('sndfile', version : '>= 1.0.20', required : get_option('sndfile')) ---- a/src/modules/meson.build -+++ b/src/modules/meson.build -@@ -110,30 +110,30 @@ - dependencies : pipewire_module_protocol_deps, - ) - --pipewire_module_protocol_pulse_deps = pipewire_module_protocol_deps -- - if dbus_dep.found() -+ pipewire_module_protocol_pulse_deps = pipewire_module_protocol_deps -+ - pipewire_module_protocol_pulse_deps += dbus_dep --endif - --pipewire_module_protocol_pulse = shared_library('pipewire-module-protocol-pulse', -- [ 'module-protocol-pulse.c', -- 'module-protocol-pulse/manager.c', -- 'module-protocol-pulse/pulse-server.c', -- 'module-protocol-pulse/modules/module-loopback.c', -- 'module-protocol-pulse/modules/module-native-protocol-tcp.c', -- 'module-protocol-pulse/modules/module-null-sink.c', -- 'module-protocol-pulse/modules/module-remap-sink.c', -- 'module-protocol-pulse/modules/module-remap-source.c', -- 'module-protocol-pulse/modules/module-simple-protocol-tcp.c', -- ], -- c_args : pipewire_module_c_args, -- include_directories : [configinc, spa_inc], -- install : true, -- install_dir : modules_install_dir, -- install_rpath: modules_install_dir, -- dependencies : pipewire_module_protocol_pulse_deps, --) -+ pipewire_module_protocol_pulse = shared_library('pipewire-module-protocol-pulse', -+ [ 'module-protocol-pulse.c', -+ 'module-protocol-pulse/manager.c', -+ 'module-protocol-pulse/pulse-server.c', -+ 'module-protocol-pulse/modules/module-loopback.c', -+ 'module-protocol-pulse/modules/module-native-protocol-tcp.c', -+ 'module-protocol-pulse/modules/module-null-sink.c', -+ 'module-protocol-pulse/modules/module-remap-sink.c', -+ 'module-protocol-pulse/modules/module-remap-source.c', -+ 'module-protocol-pulse/modules/module-simple-protocol-tcp.c', -+ ], -+ c_args : pipewire_module_c_args, -+ include_directories : [configinc, spa_inc], -+ install : true, -+ install_dir : modules_install_dir, -+ install_rpath: modules_install_dir, -+ dependencies : pipewire_module_protocol_pulse_deps, -+ ) -+endif - - pipewire_module_protocol_simple = shared_library('pipewire-module-protocol-simple', - [ 'module-protocol-simple.c' ], ---- a/spa/plugins/support/meson.build -+++ b/spa/plugins/support/meson.build -@@ -32,6 +32,7 @@ - install_dir : spa_plugindir / 'support') - endif - -+if dbus_dep.found() - spa_dbus_sources = ['dbus.c'] - - spa_dbus_lib = shared_library('spa-dbus', -@@ -40,7 +41,7 @@ - dependencies : [dbus_dep, ], - install : true, - install_dir : spa_plugindir / 'support') -- -+endif - - if systemd_dep.found() - spa_journal_sources = ['journal.c'] diff --git a/pkgs/python/build.sh b/pkgs/python/build.sh deleted file mode 100644 index 9ddfec5..0000000 --- a/pkgs/python/build.sh +++ /dev/null @@ -1,49 +0,0 @@ -pkgname=python -pkgver=3.9.5 -bad="" -ext="doc" - -fetch() { - curl "https://www.python.org/ftp/python/$pkgver/Python-$pkgver.tar.xz" -o $pkgname-$pkgver.tar.xz - tar -xf $pkgname-$pkgver.tar.xz - mv Python-$pkgver $pkgname-$pkgver -} - -build() { - cd $pkgname-$pkgver - ./configure \ - --prefix=/usr \ - --build=$TARGET \ - --host=$TARGET \ - --with-system-ffi=true \ - ax_cv_c_float_words_bigendian=no - make -} - -package() { - cd $pkgname-$pkgver - make install DESTDIR=$pkgdir - rm -r $pkgdir/usr/lib/python3.9/test - rm -r $pkgdir/usr/lib/python3.9/ctypes/test - rm -r $pkgdir/usr/lib/python3.9/distutils/tests - rm -r $pkgdir/usr/lib/python3.9/idlelib/idle_test - rm -r $pkgidr/usr/lib/python3.9/lib2to3/tests - rm -r $pkgidr/usr/lib/python3.9/sqlite3/test - rm -r $pkgdir/usr/lib/python3.9/tkinter/test - rm -r $pkgdir/usr/lib/python3.9/unittest/test - rm -r $pkgdir/usr/share - ln -sr $pkgdir/usr/bin/python3 $pkgdir/usr/bin/python -} - -package_doc() { - cd $pkgname-$pkgver - make install DESTDIR=$pkgdir - rm -r $pkgdir/lib - rm -r $pkgdir/bin - rm -r $pkgdir/include -} - -license() { - cd $pkgname-$pkgver - cat LICENSE -} diff --git a/pkgs/qtbase/build.sh b/pkgs/qtbase/build.sh new file mode 100644 index 0000000..e69de29 diff --git a/pkgs/qtbase/musl-socket.patch b/pkgs/qtbase/musl-socket.patch new file mode 100644 index 0000000..e69de29 diff --git a/pkgs/qtbase/qplatformdefs.h b/pkgs/qtbase/qplatformdefs.h new file mode 100644 index 0000000..e69de29 diff --git a/pkgs/qtwayland/build.sh b/pkgs/qtwayland/build.sh new file mode 100644 index 0000000..e69de29 diff --git a/pkgs/raspberrypi-linux/build.sh b/pkgs/raspberrypi-linux/build.sh deleted file mode 100644 index 017372f..0000000 --- a/pkgs/raspberrypi-linux/build.sh +++ /dev/null @@ -1,47 +0,0 @@ -pkgver=rpi-5.10.y -pkgname=raspberrypi-linux -ext="dev" - -fetch() { - curl "https://raw.githubusercontent.com/kisslinux/website/master/site/dist/kernel-no-perl.patch" -o kernel-no-perl.patch - curl -L "https://github.com/raspberrypi/linux/archive/refs/heads/rpi-5.10.y.tar.gz" -o $pkgname-$pkgver.tar.gz - tar -xf $pkgname-$pkgver.tar.gz - mv linux-$pkgver $pkgname-$pkgver - cd $pkgname-$pkgver - - patch -p1 < ../kernel-no-perl.patch - patch -p1 < ../../kernel-byacc.patch - patch -p1 < ../../reflex.patch -} - -build() { - cd $pkgname-$pkgver - gmake ARCH=arm64 CC=cc HOSTCC=cc LEX=reflex YACC=yacc LLVM=1 LLVM_IAS=1 bcm2711_defconfig - gmake ARCH=arm64 CC=cc HOSTCC=cc LEX=reflex YACC=yacc LLVM=1 LLVM_IAS=1 -} - -package() { - cd $pkgname-$pkgver - install -d $pkgdir/boot - cp arch/arm64/boot/Image $pkgdir/boot/kernel8.img - gmake ARCH=arm64 CC=cc HOSTCC=cc LEX=reflex YACC=yacc LLVM=1 LLVM_IAS=1 INSTALL_PATH=$pkgdir/boot install - gmake ARCH=arm64 CC=cc HOSTCC=cc LEX=reflex YACC=yacc LLVM=1 LLVM_IAS=1 INSTALL_DTBS_PATH=$pkgdir/boot dtbs_install - gmake ARCH=arm64 CC=cc HOSTCC=cc LEX=reflex YACC=yacc LLVM=1 LLVM_IAS=1 INSTALL_MOD_PATH=$pkgdir/ modules_install -} - -package_dev() { - cd $pkgname-$pkgver - if stat /usr/bin/rsync 2>/dev/null /dev/null; then - gmake ARCH=arm64 CC=cc HOSTCC=cc LEX=reflex YACC=yacc LLVM=1 LLVM_IAS=1 INSTALL_HDR_PATH=$pkgdir/usr headers_install - else - gmake ARCH=arm64 CC=cc HOSTCC=cc LEX=reflex YACC=yacc LLVM=1 LLVM_IAS=1 headers - find -name '.*' -exec rm {} \; - rm usr/include/Makefile - cp -r usr/include $pkgdir/usr - fi -} - -license() { - cd $pkgname-$pkgver - cat COPYING -} diff --git a/pkgs/rust/abyss-install-template-shebang.patch b/pkgs/rust/abyss-install-template-shebang.patch deleted file mode 100644 index e81b579..0000000 --- a/pkgs/rust/abyss-install-template-shebang.patch +++ /dev/null @@ -1,10 +0,0 @@ -The script seems to be POSIX-sh (+ local) compatible. - ---- a/src/tools/rust-installer/install-template.sh -+++ b/src/tools/rust-installer/install-template.sh -@@ -1,4 +1,4 @@ --#!/bin/bash -+#!/bin/sh - # Copyright 2014 The Rust Project Developers. See the COPYRIGHT - # file at the top-level directory of this distribution and at - # http://rust-lang.org/COPYRIGHT. diff --git a/pkgs/rust/abyss-libunwind.patch b/pkgs/rust/abyss-libunwind.patch deleted file mode 100644 index c607eec..0000000 --- a/pkgs/rust/abyss-libunwind.patch +++ /dev/null @@ -1,38 +0,0 @@ -diff --git a/library/unwind/build.rs b/library/unwind/build.rs -index 24bcd40c..51777664 100644 ---- a/library/unwind/build.rs -+++ b/library/unwind/build.rs -@@ -14,7 +14,7 @@ fn main() { - } else if target.contains("linux") { - // linking for Linux is handled in lib.rs - if target.contains("musl") { -- llvm_libunwind::compile(); -+ println!("cargo:rustc-link-lib=unwind"); - } - } else if target.contains("freebsd") { - println!("cargo:rustc-link-lib=gcc_s"); -diff --git a/library/unwind/src/lib.rs b/library/unwind/src/lib.rs -index dbdefa47..dca1897b 100644 ---- a/library/unwind/src/lib.rs -+++ b/library/unwind/src/lib.rs -@@ -39,7 +39,7 @@ cfg_if::cfg_if! { - - #[cfg(target_env = "musl")] - #[link(name = "unwind", kind = "static", cfg(target_feature = "crt-static"))] --#[link(name = "gcc_s", cfg(not(target_feature = "crt-static")))] -+#[link(name = "unwind", cfg(not(target_feature = "crt-static")))] - extern "C" {} - - // When building with crt-static, we get `gcc_eh` from the `libc` crate, since -diff -Naur rustc-1.48.0-src.orig/src/bootstrap/dist.rs rustc-1.48.0-src/src/bootstrap/dist.rs ---- rustc-1.48.0-src.orig/src/bootstrap/dist.rs 2020-12-22 16:39:30.504249113 +0100 -+++ rustc-1.48.0-src/src/bootstrap/dist.rs 2020-12-22 16:42:08.663006830 +0100 -@@ -1016,7 +1016,7 @@ - copy_src_dirs( - builder, - &builder.src, -- &["library", "src/llvm-project/libunwind"], -+ &["library"], - &[ - // not needed and contains symlinks which rustup currently - // chokes on when unpacking. diff --git a/pkgs/rust/abyss-libz.patch b/pkgs/rust/abyss-libz.patch deleted file mode 100644 index 6180faa..0000000 --- a/pkgs/rust/abyss-libz.patch +++ /dev/null @@ -1,8 +0,0 @@ -diff --git a/vendor/libz-sys/.cargo-checksum.json b/vendor/libz-sys/.cargo-checksum.json -index c1a6633..163c23f 100644 ---- a/vendor/libz-sys/.cargo-checksum.json -+++ b/vendor/libz-sys/.cargo-checksum.json -@@ -1 +1 @@ --{"files":{"Cargo.toml":"501be769acb8ac65b7cceade7982393e70e9ca900b56b1255eec1e45485960e7","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"34c467b6945a22696d060b8fdd2379d464acb3408d4c599d3dc5fe4fa1b4c84f","README.md":"b23e18bdce29fabc3d34e88576219f50d1d735a355e427e6d6ebc09254138070","build.rs":"14744340a51ea4b50f9d55cad68b0109e54ec5c6bf3abb213691ea3532d9a274","ci/Dockerfile":"4d479ea63b9e384b3864fa1204894bfae4890017d6bf03486274457fe2c26cf8","ci/run-docker.sh":"0ea7a4fdc9f6026110e20fa2e25dbadfc1e6dafed9ded5981ae36772ad207e26","ci/set_rust_version.bash":"4284f86ac3923a73dd79e89bef2d0b136c6d104d6dae92e24b4a96eaffa28890","ci/test.bash":"73a936768549eedf96a7cddb350ada128e058d5d9004244ebf3d993363b69599","src/lib.rs":"40476f4e896c936c21f908396255c7a4951ef8bf93788858ade6cace2539927b","src/smoke.c":"10607c81b73811bfcb9718767312bf97ba2ccf7048ea2f18a2085aa06ad7f91b","src/zlib-ng/CMakeLists.txt":"7b2ffd4aa36a21344bc27d8c40250a17cb467d69e547221a459fdb6de4048ce1","src/zlib-ng/FAQ.zlib":"d1777aa057caeef50fc291aac7a414363b2186bb3d65bb0f8bfa2bfd61cf0ad5","src/zlib-ng/INDEX.md":"9a5e17ff600a570b44d1ad42dfc07b82ba30a2b75efa36fbee47cbea7c4e796b","src/zlib-ng/LICENSE.md":"d3c80be055d94d798eaa786116e84fa0b010bc11420b5d2060d978ea77845436","src/zlib-ng/Makefile.in":"337b0fd7af9cf0b9f8d2fbe00a060298d3e4d9ace3b62cc1e3dbd7b0a93306e3","src/zlib-ng/README.md":"61d42f45d66f94a13a3b32a2e319fc0eccb0bcaa684c04c5982086ab555388f4","src/zlib-ng/adler32.c":"82ffa1b4fc4b198ba8004135f79b8819d9f2b28e851c30c0ab41e6d32dfbf70d","src/zlib-ng/adler32_p.h":"f56915c59a345baf4558374447385a317e29365a4db2fbb38af4de3e1a1a0201","src/zlib-ng/arch/arm/Makefile.in":"f31b00162fe10fcebfa27859215f9e863aed4c15caf90189997cd85da7ec49a7","src/zlib-ng/arch/arm/adler32_neon.c":"3990b8d5570b12c2162218fe0e9bc723a03f1c89b5ed3ba70a74a98976260ee7","src/zlib-ng/arch/arm/arm.h":"855adbb02d7b9a5714a17d9dcff493610e7cd2b9a1f4e58e1c99626ab536e868","src/zlib-ng/arch/arm/armfeature.c":"6f69c21cd97462d97233fe7f28ea739b8463134bb57620f743bb4586abcfcb2d","src/zlib-ng/arch/arm/chunkset_neon.c":"b21e769306d51e10050dc593156ffe4ce39df36fa2d85bb67c69856b56ff0a69","src/zlib-ng/arch/arm/crc32_acle.c":"5a96afc594697d1399870d1bfb0623a03869eff42caae74013f147cec4aa982e","src/zlib-ng/arch/arm/ctzl.h":"feb70d55e66025fff806e30e48002b35cfff79533d352585cfa5f118edbc90b1","src/zlib-ng/arch/arm/insert_string_acle.c":"d1b1dae5aeada70f2b03c2cbf3112ce55a92401c2d87709081b04dcf5992e1ad","src/zlib-ng/arch/arm/slide_neon.c":"19d8cf5c742ac6b82164c7a183538ad1129f9f17e9b8bce8b40daac3820fb6c4","src/zlib-ng/arch/generic/Makefile.in":"f41a34839986eac8dd52cf91fada0efff4171c059ab5d7db6347c91bd6d9db09","src/zlib-ng/arch/power/Makefile.in":"7139dde26c587f1c6e40b460f97b1576eb020b69411cab72c7a93e9ca60ae260","src/zlib-ng/arch/power/adler32_power8.c":"79b75e98ad3a62facbbdd8c0b178d3f993b57f6e34d320bf47eca33aa8c330a1","src/zlib-ng/arch/power/power.c":"0647afb3b3b7ce2a19b4815ec8fdeee0b37c759413e5ef0a668a2dba22d94803","src/zlib-ng/arch/power/power.h":"f3f15f94fed98a2f7dd5d4568c5172e597228be4141d6895062703c3f70024da","src/zlib-ng/arch/power/slide_hash_power8.c":"932ea533d25e2f5478afe0c47830e7ef24276cad0d75fd91f2d8c799bd4b5d36","src/zlib-ng/arch/s390/Makefile.in":"eef6c3169723f089b0b5f852423ec55bf0364caeddd7cda991f2e76bc1682107","src/zlib-ng/arch/s390/README.md":"7c36363b0941fffaf4d363e7b911e91ba6ba3c620bc9d3203007b177ced8b246","src/zlib-ng/arch/s390/dfltcc_common.c":"6771ec4457da9f4b00c74bcc0828735e21c74b9162cb37383c297c3b5028cddf","src/zlib-ng/arch/s390/dfltcc_common.h":"ed339007feae58d1879e096addb30ed86cd5cf11222db22c45f48b47328cf6db","src/zlib-ng/arch/s390/dfltcc_deflate.c":"7b3dec7be4055c7748defc626dc91db99787c9f3b70b7d7b40282558bbb478e9","src/zlib-ng/arch/s390/dfltcc_deflate.h":"c4c411f221cc0f6b218326e973fef05c65840ba49878aff052dac0bb38121cbd","src/zlib-ng/arch/s390/dfltcc_detail.h":"27377bb32678013adce96ecc51bdcea168771edc722db9117d78ca7c846525fa","src/zlib-ng/arch/s390/dfltcc_inflate.c":"a96226eba3538d3904893cfe1b08395668e6a722b56f28d5b5debb3176161b4b","src/zlib-ng/arch/s390/dfltcc_inflate.h":"bd16c082cd83c889883ed4f4cc85fdab293cef052b858ee0102f06385f099f4e","src/zlib-ng/arch/x86/INDEX.md":"c12f9bf0d66743a6472fb756bf46def8eea1dd235be7fca994dcb22f693a3524","src/zlib-ng/arch/x86/Makefile.in":"85b1a1e11910a284291b73f9d3030f5d4029108e5674f3013a75411d1db39dfb","src/zlib-ng/arch/x86/adler32_avx.c":"99056732c7bd5d53dc108f282811a40bf21570926781af5dc7b17cb9218963de","src/zlib-ng/arch/x86/adler32_ssse3.c":"883a5520b4481225d097c90c5359106a3c8eb7b921499c94276e999b7c39adc5","src/zlib-ng/arch/x86/chunkset_sse.c":"f7ccb55b67101ddb9def951a6d6f9dd4cb108fdd9e65f0f21d82723d1b093a22","src/zlib-ng/arch/x86/compare258_avx.c":"8b2838d168de4608327f25fe52d53763a82413ee911d87947d3fcd72c7f9bf26","src/zlib-ng/arch/x86/compare258_sse.c":"b5049722ffd4a43a96868eeba5e000271cfc5fcbf3c2657026ead15b1df28a10","src/zlib-ng/arch/x86/crc_folding.c":"fbc6086b936deed7a244e15153be1034585765679762967295bdcb491d9c0df4","src/zlib-ng/arch/x86/crc_folding.h":"939212546611917e9e066e8ed30cdda95680ec1f5fe0890cc4865b4e6d7fc215","src/zlib-ng/arch/x86/insert_string_sse.c":"9e84a75b6a565422eb105261b6729d2a02b89133bd14372c949d5381b5deed3e","src/zlib-ng/arch/x86/slide_avx.c":"2fbdb15347b6cb437b11fdba36116e4102a295b5167ba184ea8a159a074e06f9","src/zlib-ng/arch/x86/slide_sse.c":"1946cabb634c905fddef0a22b2fad19dfd99110169567c3beceef71145b2e316","src/zlib-ng/arch/x86/x86.c":"1af56e27b2e951e1ad1344e62c2f7a8c49a776fcdd1cb0f4ea9d6152118a479e","src/zlib-ng/arch/x86/x86.h":"4d2d20ea0087089141e250e77bb3d419954b9092810028b151581b9115a5fe8c","src/zlib-ng/chunkset.c":"c0dbc7abbdad5137a9efb2b0a76a212e77d4bf44beebe721c68359fa83002ff2","src/zlib-ng/chunkset_tpl.h":"e44dfd12a043ea60ff6543ca10c0f73e22c9b62fd7b4a85647e166be74ff1033","src/zlib-ng/cmake/detect-arch.c":"a9509327c2f4395955466b0acce453c29592d4686022714cb9e8b411d7e60c29","src/zlib-ng/cmake/detect-arch.cmake":"f915121423c987bc4cd62c1c5278e458527694b26bc542e26005269aa7da6fc3","src/zlib-ng/cmake/detect-sanitizer.cmake":"ef9827f1c1c5e8159c6f59e9d8ec1020f142031fbdba16b7aea18decce3a10f1","src/zlib-ng/cmake/run-and-compare.cmake":"a000da0fd9a65546592672f4e2dc789dd7e5fc941c123eb98447025b1f6fb8f6","src/zlib-ng/cmake/run-and-redirect.cmake":"f673ff62e05298695ba22f7365c0cf8ae4e2c3ec05d69a563e75756442216dab","src/zlib-ng/cmake/test-compress.cmake":"10f05bc5f5289414f93b031139878f446b08482ee4c6814f3ac11468f5c04e22","src/zlib-ng/cmake/toolchain-aarch64.cmake":"8d7ba07ee1cb9fbc7817da1c5e74ce6c85ff81c10962a33941f0e24471956e59","src/zlib-ng/cmake/toolchain-arm.cmake":"0b0ab2b1093ef851c3dbd6fe53f855628df0778841a488aaef85d2c70f04a257","src/zlib-ng/cmake/toolchain-mingw-i686.cmake":"4e98d3a6380d726b002c03d6767068b2f520b3febe60de904d7190a81e319c94","src/zlib-ng/cmake/toolchain-mingw-x86_64.cmake":"42f345f6bd9dc2e97ae1f179639388a408f2fdef4d4c286cf33c2807ec2fcda9","src/zlib-ng/cmake/toolchain-powerpc.cmake":"6373abe883a99616aa51422a9b714894dc521211be49502463576f58d3d26b2a","src/zlib-ng/cmake/toolchain-powerpc64.cmake":"328d1ea039a30e03ee9a552858b9f180b3da2614b712f618da1a0fa98f30a53b","src/zlib-ng/cmake/toolchain-powerpc64le.cmake":"ec90270bd1f4aa649abddddd2618168d399d58a1c1c35b3d8d909e570eb9be1c","src/zlib-ng/cmake/toolchain-s390x.cmake":"cb634252c21c4f55d06cdc49ce522a5546aae592daa0f12aa4282c0aef323828","src/zlib-ng/cmake/toolchain-sparc64.cmake":"d70d39760a23886ebd1c5a1a87651bfb47a9b24def9e7955ee1cbec60b40925b","src/zlib-ng/compare258.c":"fcb3dbbfae3999ddd063cb9bf85c7b58276dd49179d725099638e11b5af3bfa2","src/zlib-ng/compress.c":"1abf5b13e3e805becc14f4f16dad9bf816f4fe41754b1abf75f670dcc84567cc","src/zlib-ng/configure":"3c5278cd5e7b5e67a316557dd2d681eb31a538c874bc326afbe9750ff85e5708","src/zlib-ng/crc32.c":"7f170ab71c10179b2d77468064fd6c7bf04f06a925010d9edb3aa16d3bae7524","src/zlib-ng/crc32_p.h":"1fa91375a18e090c0a0dfda39de3df36346a0b1be36c808be6b6c29c32eba922","src/zlib-ng/crc32_tbl.h":"1781f9e527ce22a8b0f3aa76796ecf4dac8924854ceda4048be1253d5a04b0bd","src/zlib-ng/deflate.c":"dc4fdd9ba75ae353a0fb0b46f21ba11525b4435e1edc3741d0fc6928f4de39b3","src/zlib-ng/deflate.h":"9d45ec0d1299672834da1164b4c9b4c803a8182efd24bdfc1c4cf45cca373927","src/zlib-ng/deflate_fast.c":"3b38b95d3e55f87f9e48724012a8c5268fe421cee734aba9e4da5148e5f64752","src/zlib-ng/deflate_medium.c":"e91b5dccdd743ecf8dbf4df63d2239162e9297dadba582d907faee37decd8f8a","src/zlib-ng/deflate_p.h":"16da86049e0d9704bddd893ca228baaa1c03f99490e54bfbfef54e0b20e28b10","src/zlib-ng/deflate_quick.c":"da2bdaf387e185abbba1c01c03e0a2d89393dd76ce345ce9119cf80ca6d8ebd2","src/zlib-ng/deflate_slow.c":"7fceaa823bcccb771a9634b6c0e83cf48c9b4152b2b76ef6794cf2165beec19c","src/zlib-ng/doc/algorithm.txt":"992590931e982c0765286c2d83f6e9ff0a95aabb08e28c30c52bae3e8c4bd5ad","src/zlib-ng/doc/rfc1950.txt":"8f0475a5c984657bf26277f73df9456c9b97f175084f0c1748f1eb1f0b9b10b9","src/zlib-ng/doc/rfc1951.txt":"5ebf4b5b7fe1c3a0c0ab9aa3ac8c0f3853a7dc484905e76e03b0b0f301350009","src/zlib-ng/doc/rfc1952.txt":"164ef0897b4cbec63abf1b57f069f3599bd0fb7c72c2a4dee21bd7e03ec9af67","src/zlib-ng/doc/txtvsbin.txt":"47c273bb22c9773248d380549a330e5c262266b1292154b0d3014f731cc73f47","src/zlib-ng/fallback_builtins.h":"f07e83c5c444554577c4240ff7722057ea2a689f6baa0f9e8bda32b9a46888ca","src/zlib-ng/functable.c":"c0c2c18b563c913c25d6dde9dd009d19de3c5d376ade1e9839d6fdb8f7ce0382","src/zlib-ng/functable.h":"e5a2d0c10411d23f04295bcb9ddb9889388974b723caef65aa5c4ea4739f4aa7","src/zlib-ng/gzclose.c":"c55d9dcbf88312ae9e0338f541a0d987fa56967211abc4579abf2cd71c41a73c","src/zlib-ng/gzguts.h":"cbf2afc8a6183002254a73cabe8376e54b1aea2ba042e36138f292c9cdb95d5c","src/zlib-ng/gzlib.c":"4e3cf39c21f1ae0a6856a6ea2fd5a618acfa60ed601763f6e77bbfdf3713072d","src/zlib-ng/gzread.c":"e5aada9dc85d28e91d1af3d4fd00af5713dcbea4341945f25560172292d807cc","src/zlib-ng/gzwrite.c":"ee50afc3e485eb232bf39faef8d4686475e867462dc98ce1ff990e15037d3235","src/zlib-ng/infback.c":"d9d5b52178f65aa9e32d6d63ad41e1bdd84b216b2158f00e76c074e3e7a08c6b","src/zlib-ng/inffast.c":"96ea98825cdb7e59fa50556568bf29f28caf3898891b9e54b78cdd3fdaadfba2","src/zlib-ng/inffast.h":"42e74a92b496ab0726be317e8497a12bf3c3cf3d0d533440ce65befd3929c71c","src/zlib-ng/inffixed_tbl.h":"07902ad68b4d0a5e4ff5e2fc4b1e1a8c5b013e11a09ccc9ed0bc6a2f12af2d47","src/zlib-ng/inflate.c":"069b375e33c97a28a01b511b7773fb5b1e92092f2594f56d3c6e758a08476c07","src/zlib-ng/inflate.h":"ef5b7dd4b77e877feec7193f71aab9d7989d43fed92173f6daacd958fbc076d3","src/zlib-ng/inflate_p.h":"6073714e5c132adf8c5e7bfc91b1f0c7c39ef6e292230d0da7d081fc8abd485c","src/zlib-ng/inftrees.c":"db5ca3aa96687ebcf5edac646b87d8ecd8c7593b267cdedaf382ffcae4677038","src/zlib-ng/inftrees.h":"624c6653a454447c6274adf922430a19c96ef73c7687e4559d247ff48970bab5","src/zlib-ng/insert_string.c":"aa22ba53a1e75821499809277f9ca0e5ef92b07a618136dd11ae1734e233b7c9","src/zlib-ng/insert_string_tpl.h":"ab6f1e189710ee9e55e311aebf432c396aa513acfa257e0eddeb629a08a9226f","src/zlib-ng/match_tpl.h":"09cf1841d43f55a313b394e99b437b87238d122b7332051bd5cd8395fe9d090e","src/zlib-ng/test/CVE-2002-0059/test.gz":"60bf96b8f433bd7e057ce3496aceaccd70ec80f596a4aa8bcc7786056705ce66","src/zlib-ng/test/CVE-2003-0107.c":"1bfbc88dc501cd92b8b26bd8944af6b150b376ebfe7241d90e2b93109be3d68c","src/zlib-ng/test/CVE-2004-0797/test.gz":"38caae524705f676bde13a8df9fc8c7d2fe105ba6bdbab62a405b0276fd3aa2e","src/zlib-ng/test/CVE-2005-1849/test.gz":"e4d5a60617df4b5dd44eda94751ce1eacdb325792bba6e3cc4676719a3adf742","src/zlib-ng/test/CVE-2005-2096/test.gz":"8f702d4861aa3ec98ac03a59ff26b430939630cb5cd4266d2658d3b836d576f9","src/zlib-ng/test/GH-361/test.txt":"358497d0a7251ea42101dc77b02337f46fd89af09643a8288e2a3082e5d24128","src/zlib-ng/test/GH-364/test.bin":"af5570f5a1810b7af78caf4bc70a660f0df51e42baf91d4de5b2328de0e83dfc","src/zlib-ng/test/GH-382/defneg3.dat":"b22bef6b7392401c9e7b079402c4a4074053d7a914d050400e37fd7af6fe26d5","src/zlib-ng/test/Makefile.in":"a4dfa393499a415cc4f551b69e4187a3586c22374849efcd2cbfc058ea6c8e2a","src/zlib-ng/test/README.md":"fc485cfaaede6b3d3dc61fdd17cc7eee715c35d6f62e6e502f9251fd1b5edac9","src/zlib-ng/test/abi/ignore":"02aa87f77656dbc1fbddd23f436cd15465a92df0722da4055cae1bc8bf013097","src/zlib-ng/test/abi/zlib-v1.2.11-arm-linux-gnueabihf.abi":"f5e91f25b558a891fecbeb6e2e9575698630ab700d055a38f3bc4fe66257f513","src/zlib-ng/test/abi/zlib-v1.2.11-x86_64-linux-gnu.abi":"038337383cf780587d810cf5400d632f3a1f8517e63ac4a71b6e5224db8b1413","src/zlib-ng/test/abicheck.md":"fa5d6d33ff0fd95eefb7c6c0c7f67351282e6eda20c4e38842235a610cc10382","src/zlib-ng/test/abicheck.sh":"715aaf3dfc5b68ea591036e99d83cc4dc16b9314c34f69901d7f112b58ae8a0f","src/zlib-ng/test/adler32_test.c":"db3e8ad9a4e2ecce0c052b0bfe19834d3ff2fb2e9239cc3438a2c95db00b1d21","src/zlib-ng/test/data/fireworks.jpg":"93b986ce7d7e361f0d3840f9d531b5f40fb6ca8c14d6d74364150e255f126512","src/zlib-ng/test/data/lcet10.txt":"938e69e61b3411d8a9e2e630f4265000d810f3dbf66bac58cac19493753526ec","src/zlib-ng/test/data/paper-100k.pdf":"60f73a051b7ca35bfec44734b2eed7736cb5c0b7f728beb7b97ade6c5e44849b","src/zlib-ng/test/example.c":"c585ea31a88c9b9f33953e042ff461dc91ec8cd1e77df5e2158ace89016c4b9e","src/zlib-ng/test/fuzz/checksum_fuzzer.c":"3a15479f2cb40b6c5760dadb246328fab7315f3e3b8e28c1bc246c9b9a867c69","src/zlib-ng/test/fuzz/compress_fuzzer.c":"1ab70608075c4bc60f89aa2f327cff88362ee7b1d31da88ed54ca51e5f99e5c9","src/zlib-ng/test/fuzz/example_dict_fuzzer.c":"8124a1ff30aadbd2c949856dba794d62ea550da9d2370b3749ca4a9d27413346","src/zlib-ng/test/fuzz/example_flush_fuzzer.c":"48aeec52cd2d220e9eaff8729497a3e03c950a93082b96fdfdde8e2de94d5b8f","src/zlib-ng/test/fuzz/example_large_fuzzer.c":"f490abcd332fb4e7921292adf6876d38d7f71c8d2443212c781ba88957ff9303","src/zlib-ng/test/fuzz/example_small_fuzzer.c":"6fafa508589d283f64838a4752174c1d8122d697a57908978927ed8168487c27","src/zlib-ng/test/fuzz/minigzip_fuzzer.c":"2fbfac6e2b24ad2460838fabc585572279484fbb440ca1c3c28b8f735787b1c3","src/zlib-ng/test/fuzz/standalone_fuzz_target_runner.c":"306e8ac4e08ea72d18ffae8c908abfef8c6feedf83b068a7ec675ade6a5791a8","src/zlib-ng/test/infcover.c":"b9acffc102fdd140941073ca47e30c938aa937b4929061500c36ffba12c86449","src/zlib-ng/test/minideflate.c":"93de8ffcbe7c414abf3ea36acdf729bcedb40393ec7bd10b356ebe225406e173","src/zlib-ng/test/minigzip.c":"bf0ea2a10c091fd7ae7ccd840f583139b7f6e32da8dbc816f112c70c9ad22eb1","src/zlib-ng/test/pkgcheck.sh":"75b3155125f235e27ee434d76b6f72bd825899b55f6d59ef2d032fe67a2896ed","src/zlib-ng/test/switchlevels.c":"b64da61b9a52dc5b76269aa45d99d290cc3b53a9a9b3b319cd1df868f6a62eca","src/zlib-ng/test/testCVEinputs.sh":"5de6198444c16726f8e0a8f2beb5b89c5ae7e7e3736ce760b9fbc719493e7e4f","src/zlib-ng/tools/codecov-upload.sh":"ec7a8f1405820810e486e3d7e2fda7eb958c17877b0000b93abdf09d87732a2f","src/zlib-ng/tools/config.sub":"32186cfeb5db62c99e1dfbfb07f24c1a50977447b4c26d2907021c74422a70d2","src/zlib-ng/tools/makecrct.c":"b0ee61259816f81d85b21aa29a1a83df0241d4f6bb7ae1c1affdac7bc01f41bb","src/zlib-ng/tools/makefixed.c":"2c0f412bc3c9fb075d766c795f960c880530d2c87df71edc985a60c2b14270d7","src/zlib-ng/tools/maketrees.c":"2dbfe34691dde327618be496b380fc91daaa30474352815773a8b70114b0541a","src/zlib-ng/trees.c":"afafffc0668516407347d12af7eff474c9cabc592c6334615d79a85ceccbb9d9","src/zlib-ng/trees.h":"24174f3543b01ee1ef370bbf6d15551a21871cded18b2aadf09a71e7904b6f99","src/zlib-ng/trees_emit.h":"f68904e04caee0482c72ea92cc775cabe35a0bf7cffce85566c15ace27666af4","src/zlib-ng/trees_tbl.h":"35f4fd0ec080c1ade342e2dd1b0f5cdc7e9f18990faa48d7a8a69bc318ebe607","src/zlib-ng/uncompr.c":"4ebb486b27930f8a6ec4a3cc90a207d0bcf8a4779d1dbf3b2184a2b2a5735cd1","src/zlib-ng/win32/DLL_FAQ.txt":"d2ec63cb4a51886e0813f75bca49a051bede364d855f938e1a7992ab97a79800","src/zlib-ng/win32/Makefile.a64":"7952efc68a1871887acad6d93790202bc4c34b9afb3a047e6b2ac8ae046f408a","src/zlib-ng/win32/Makefile.arm":"5171838c4af8da1fda76671392ef77f25782e48a7a5c64c75f46df4f6d262483","src/zlib-ng/win32/Makefile.msc":"778b59dd1ea3b774bd0a1f1f5f4fa439c092153d4b7c849a37cb4fcbd0b45ddf","src/zlib-ng/win32/README-WIN32.txt":"a8c2d052960b963a49cee5a2ad891f2ff7b34db038f00985eba4eefc99966261","src/zlib-ng/win32/zlib-ng.def":"f240276caf805a10d024fc6a66efe915c435734c69732818d92fb04d08ab350c","src/zlib-ng/win32/zlib-ng1.rc":"b567a276407998bae40aacd48a50beba87c0bfbae470d28e66331ac99eb575c8","src/zlib-ng/win32/zlib.def":"d9c371ff2677567350386441a2e3d0258010d6502290bbac5ac42ea168bd5212","src/zlib-ng/win32/zlib1.rc":"d7f269379144d65bcd1b67c1065e5d4120579f14ce54ecf246eaba394fa989a5","src/zlib-ng/win32/zlibcompat.def":"73728b9df4379dc70ebd9b2a9f20d6e4ed7c031fa1f351cdeae1de7d1db05bd1","src/zlib-ng/zbuild.h":"f73424f5f10370ffe8f45f6e3dc52dd095ea778153832461d712a838e3a01098","src/zlib-ng/zconf-ng.h.in":"708106f26c4a0d877e2ea644320a2b48b144524b61429c7490e2e742a0c0c1e4","src/zlib-ng/zconf.h.in":"91957d246bd1809df7feb3099812684ec3320f67ac2e000de2f744ad6198e406","src/zlib-ng/zendian.h":"f5cfa865281d2c5d0b097d318500f27daeec346e7882de68e279486d79c52e77","src/zlib-ng/zlib-ng.h":"de108ab4df27779b76684ddc75f9e46be3d937faee5a34f8c8cde141a6d361f0","src/zlib-ng/zlib-ng.map":"7b9b31cd6152742cc59226c39a75ed2f5546bf5d54e89b6707eade40e3c4de60","src/zlib-ng/zlib.3":"7fa7a4677e6d136c6c04f4b6455d2e6366c805a400c5561acd20206a1ee4dbe2","src/zlib-ng/zlib.h":"bcb6ee75b3c332bd5cf0e36ebdd4af3c54ad144fac7931e26648ee6ba1aa997f","src/zlib-ng/zlib.map":"e3549810f821d433d57f921ca2fceb8674574f778485255a7dc691bf26b5281b","src/zlib-ng/zlib.pc.cmakein":"2d29b621d47aa2be07b3fdac4162e1a3d950c290988b891f20baed56d32177a6","src/zlib-ng/zlib.pc.in":"cf94c9aa44878a62e27c2f75354c08326b3bb5250a9b11496855cf59691177bb","src/zlib-ng/zutil.c":"01ad977b32c3698ad5bb21db97f9d86513c59fd4781dc14177455a0cc8acff4d","src/zlib-ng/zutil.h":"7febfbd4096b934c6d8c6ce178ab9a0391cc2842b574b2f7a52d0d07c004e6c9","src/zlib/CMakeLists.txt":"b87275731cc3ebdfea144187875cea204f555c343279c0f35f2d46d661bfe34a","src/zlib/ChangeLog":"4c9f1a65b9b4be8bf164a97775ef50e4db4e02ea8c9933fdbe629a640691375e","src/zlib/FAQ":"1e8a0078be0ff1b60d57561a9e4a8cad72892318a8831946cba1abd30d65521c","src/zlib/INDEX":"3b4e325d47ae66456d43fcf143ba21ab67a02a4f81be7ef2da480ba30d774266","src/zlib/Makefile":"ef23b08ce01239843f1ded3f373bfc432627a477d62f945cbf63b2ac03db118a","src/zlib/Makefile.in":"5021b2bac4164f48b17c91c8a2e3c225be7ad31d8bfab1bbaadd90370afe9991","src/zlib/README":"7960b6b1cc63e619abb77acaea5427159605afee8c8b362664f4effc7d7f7d15","src/zlib/adler32.c":"d7f1b6e44fee20ab41cef1d650776a039a2348935eb96bcbd294a4096139be3a","src/zlib/amiga/Makefile.pup":"a65cb3cd40b1b8ec77e288974dd9dc53d91ed78bbe495e94ccc84ddd423edf1f","src/zlib/amiga/Makefile.sas":"0e63cf88b505a1a04327bb666af3a985c5e11835c0c00aed4058c0dcc315d60e","src/zlib/compress.c":"5c11e1fc22e219cb986f6fa9e4ba939315227e84aef042737d38ec668b89b6d2","src/zlib/configure":"86b38f27f31d2fec76d9355872550dc63cb3949774473fd6313c5a3fd1def0e2","src/zlib/contrib/README.contrib":"ca39b78bd7ad84f1df7b0da90770c5b3fa4c8e2c75d132e9222812fac8839630","src/zlib/contrib/ada/buffer_demo.adb":"469cf566a6965767fee6b987a239ed8cedcc66614940d45a9b434331fbb435ce","src/zlib/contrib/ada/mtest.adb":"41b6f31684770334afdc4375871eb1408542f37a823a073556fdbfdb63753160","src/zlib/contrib/ada/read.adb":"fa5b989aef0c5715a3fcb15de93985f7f10aeb0a7f5716745c95ed820eb9af9c","src/zlib/contrib/ada/readme.txt":"8fe9e5303f2e8e8b746c78250e74b7c4aeb7ce6212fdce751fc3a0ce56a47fe2","src/zlib/contrib/ada/test.adb":"5e3abe79b387e09a9a42bd0543105e228f39a335240cffc33d71f0ba66ff2511","src/zlib/contrib/ada/zlib-streams.adb":"f45988e2bac76eb25a0dc981f46576e7432c35dde1790bbc2b650f0090b7fa72","src/zlib/contrib/ada/zlib-streams.ads":"969e8edb0611810fb52159dcb7c40228f4e5da810a7a3576b778116a93038c6b","src/zlib/contrib/ada/zlib-thin.adb":"03d89244ee5ec9771d9b5050e586c609f851af551b2e64eb151f1d5be0b63ae9","src/zlib/contrib/ada/zlib-thin.ads":"631ef170bde16c3ca8d412b54a0e519815b80197d208f8f393e6fe017bb0968e","src/zlib/contrib/ada/zlib.adb":"c9ca5dc34fbcdf06e2dc777b7e9dcd0ba31085b772b440eb0e12421323ab672c","src/zlib/contrib/ada/zlib.ads":"02634bec0d5e4c69d8d2859124380074a57de8d8bd928398379bfacc514236d2","src/zlib/contrib/ada/zlib.gpr":"859bb69dce38dbe9dca06753cf7ae7bd16d48f4fece8b87582dab8e30681d3de","src/zlib/contrib/amd64/amd64-match.S":"166007f7e9adb58fe8b83d85bbfe823f5e05858ba1d06edf637b78886caa2c69","src/zlib/contrib/asm686/README.686":"c21cc7147c956ecae17dd084cb41a206b086216fa521012871fb07fafd203c6d","src/zlib/contrib/asm686/match.S":"873799062495629f21cd3f779ea4b927add7aae0144e32d3594d9ce70185e99d","src/zlib/contrib/blast/Makefile":"17d5d26c24bf51cad51045a38ffb73cc3539d29e89885aa249fcfd45a8659d5c","src/zlib/contrib/blast/README":"baa763ae03d88ef7ece6eb80d9a099b43d0b57639d6d281e1c7c6ca79d81daba","src/zlib/contrib/blast/blast.c":"1ab3e479d342bfc144167b808fb00142264bc50f24a110ca88cc774e351c218e","src/zlib/contrib/blast/blast.h":"4d4e3e6f893316f0be77bfd642c857a77f1fa2925acb5df9753e543d35aa3a6a","src/zlib/contrib/blast/test.pk":"5f5c262c545574a5c221132d5ef832478d222d70b015341795b3860204140d7c","src/zlib/contrib/blast/test.txt":"9679b2c98e1283222d0782b25a1c198dc64ba9ebd1addd6dc6f643a45947cda3","src/zlib/contrib/delphi/ZLib.pas":"1b20e173443a68c189cdaa4795620fb1ac165d9e61a27a1ed2cf690f13530d6f","src/zlib/contrib/delphi/ZLibConst.pas":"84bcc580bdf397e570f86f3f5a5b8c7bf537828f30b4b72648b81911f6bf5095","src/zlib/contrib/delphi/readme.txt":"f7420ed2de77d4b498eefbbe6402a1d17dc2d411735289c78a265c7f10fdaee5","src/zlib/contrib/delphi/zlibd32.mak":"850e91b6c9ea05de61a411cbda16fa0f10118cd88bb32c4b7226988776f8d511","src/zlib/contrib/dotzlib/DotZLib.build":"b96137097669644ecb9f42cdd3399d1fce9c512788374609303f7e50abf597f0","src/zlib/contrib/dotzlib/DotZLib.chm":"20d0e3edd57f849143255a7f0df1cd59d41db464a72c0d5ab42846438a729579","src/zlib/contrib/dotzlib/DotZLib.sln":"a979198c5b8d144c1ac8f993bfb6f4085d135aa58ca9dcf63ebabf52b5c695f7","src/zlib/contrib/dotzlib/DotZLib/AssemblyInfo.cs":"314afcfb339ea95f5431047b7ab24631b11c3532c7ce5dc2094ed0cf80a7c16d","src/zlib/contrib/dotzlib/DotZLib/ChecksumImpl.cs":"e7c047a2c3bcf88d3d002ee3d2d05af414acf53cb4451efacc0f2e95a474ea0f","src/zlib/contrib/dotzlib/DotZLib/CircularBuffer.cs":"be84c9736fe7bdc2bfae70466d8fff582504e928d5b5e110fd758090090c8cb7","src/zlib/contrib/dotzlib/DotZLib/CodecBase.cs":"259bdda1b7d6052134e631fa24bfd9dca6e2362563496c8b85257b56c848908c","src/zlib/contrib/dotzlib/DotZLib/Deflater.cs":"06ba6696a3c15c53ba5fd5a1c2bf50b51f217010228fc1e4c8495ee578f480de","src/zlib/contrib/dotzlib/DotZLib/DotZLib.cs":"9837fe993fd631233cc5e53ff084d86754b97f05ec77c54b0764c2706f186134","src/zlib/contrib/dotzlib/DotZLib/DotZLib.csproj":"21606db31dfef6410dd438b73f1db68856eacabcce6c0f0411fc4f17e17001f3","src/zlib/contrib/dotzlib/DotZLib/GZipStream.cs":"8d1de9755c77046b4ac71340a0a54434ebf4fd11b085c44454d7663a9b4df1c5","src/zlib/contrib/dotzlib/DotZLib/Inflater.cs":"9016ca73818f5b6a28791abc3af6da7c4d2773b6a3804f593f6d5737a62b99ad","src/zlib/contrib/dotzlib/DotZLib/UnitTests.cs":"ad66ac08de34d253e9615b96a745f3dfeda93f4a978d65d5d3ddb9d0d9b3e099","src/zlib/contrib/dotzlib/LICENSE_1_0.txt":"36266a8fd073568394cb81cdb2b124f7fdae2c64c1a7ed09db34b4d22efa2951","src/zlib/contrib/dotzlib/readme.txt":"d04972a91b1563fb4b7acab4b9ff2b84e57368953cc0596d5f5ea17d97315fd0","src/zlib/contrib/gcc_gvmat64/gvmat64.S":"22ff411b8b1d1b04aeaa8418b68245400267dc43c6f44104f6ccd37f0daee89f","src/zlib/contrib/infback9/README":"890288f02bb3b1f9cc654b87a07fcea695f90f6b9bd672d25bf6be1da2ec1688","src/zlib/contrib/infback9/infback9.c":"0a715c85a1ce3bb8b5a18d60941ffabc0186a886bcc66ba2ee0c4115a8e274e9","src/zlib/contrib/infback9/infback9.h":"dda2302f28157fe43a6143f84802af1740393572c2766559593996fd7a5a3245","src/zlib/contrib/infback9/inffix9.h":"84a2ba4727767c18af6505f0e81d9c814489c8b9ed330a25dad433db72997e43","src/zlib/contrib/infback9/inflate9.h":"32a907676cc36e27d0fdc0d99adb83a0b23f20ab61896269216d40fecf08d349","src/zlib/contrib/infback9/inftree9.c":"0c7f10396703b230c504207fe1595a2f2f8ba9c43158c4bd79d5b22ca36e04e0","src/zlib/contrib/infback9/inftree9.h":"8ae61d52e50d2dbdb0378548ecc54fcd88f108c8b6fc30562a3ebec1ca6a599e","src/zlib/contrib/inflate86/inffas86.c":"6f266f3c7e0faca653256d0189c0f00d7dc0b062d02e25df4e1202e49369595c","src/zlib/contrib/inflate86/inffast.S":"70777bd21526680005fc34f086d108af49e2668ad86d1749e8e8100a81bfb288","src/zlib/contrib/iostream/test.cpp":"0f3c77e013949eb9c91e6b690ea894e19d97944d6b0885b82806fc3ad99680cf","src/zlib/contrib/iostream/zfstream.cpp":"8ebb9b3d521cc3392953f27658cf1f6dcb763216079f69a1518ec5ca0e42a63b","src/zlib/contrib/iostream/zfstream.h":"4369c35e66f63f52ca4a5e1759bf720507ccabb8f3f132e2f18e68686c812401","src/zlib/contrib/iostream2/zstream.h":"d0343e0c57ff58008b6f29643d289c72713aa2d653fe3dcd2e939fc77e7e20b6","src/zlib/contrib/iostream2/zstream_test.cpp":"f789df183cc58b78751985466380c656308490a9036eb48a7ef79704c3d3f229","src/zlib/contrib/iostream3/README":"43ec48ecbd95a8c45db20b107fac73b740bb11595a4737329188f06b713972cc","src/zlib/contrib/iostream3/TODO":"af5ebc83fb88f69706c8af896733784753dead147687e1c046f410c0997fd88b","src/zlib/contrib/iostream3/test.cc":"8e17fc48dfdbc6e268838b8b427491b5843b6d18bc97caa6924de9fad7abe3da","src/zlib/contrib/iostream3/zfstream.cc":"8cdd67ed0b13c192c11e5ea90e9d5782d6627eb303fbc4aa5ebda2531ec00ff8","src/zlib/contrib/iostream3/zfstream.h":"1bd74778fac45ee090dfc0f182a23e8a849152deb630606884b2635987b357b1","src/zlib/contrib/masmx64/bld_ml64.bat":"1c0561908a07ebdff271b12ed757241e1813d3db0f3551501b2595c23f0833aa","src/zlib/contrib/masmx64/gvmat64.asm":"390c1e6d63cb615b5ba042842738953f9cdc688b2fe35aaca981fd3fae213f3f","src/zlib/contrib/masmx64/inffas8664.c":"f6c585e43e6e524107566b1f10104949d0ef902159ac8203e1d98e50d4bedd62","src/zlib/contrib/masmx64/inffasx64.asm":"8448d0041fe6e8f4188fe5916181a1b274c6d35d75cfb28da60cf4f1edde44ec","src/zlib/contrib/masmx64/readme.txt":"9bb66b5028100855683853f12da0be479c7bccf74365fdbf37da2542edff9927","src/zlib/contrib/masmx86/bld_ml32.bat":"b0b05b62715d4a81a7db5b7ca4a372d109ec95634c9d3bef9e0041ff52de22fc","src/zlib/contrib/masmx86/inffas32.asm":"78d2cc88f8ed0e32ef960efc987c257bc1688afe7d031a8ba18761e95a6a7c3f","src/zlib/contrib/masmx86/match686.asm":"9e9bea3b5517b089da7d39caded07982746a33f94f0907ca7e8afefed7be36b6","src/zlib/contrib/masmx86/readme.txt":"1f29a04e0227b74e20ba1b7c764b3ca5bf596dd2c06e89bc19a05fb8f9689778","src/zlib/contrib/minizip/Makefile":"087034de3dc0223b29e64bb3a4fc3eda7b948e93d2a9ff154aecf9fed2a1eb5b","src/zlib/contrib/minizip/Makefile.am":"2313a3480a2c3745fa7ce216829cd0367058907d3a0902e5832c66c84a2fdfc6","src/zlib/contrib/minizip/MiniZip64_Changes.txt":"302c62b328647f5472fb7755249a83459be7f8ffb1fae07e8ba318fce8f4126c","src/zlib/contrib/minizip/MiniZip64_info.txt":"122719c32ef1763a5f6ba9c8cdefc1d78a76f7156b09e7b6f69b73f968e0dac3","src/zlib/contrib/minizip/configure.ac":"35330dc0c6188127afd339829d91b19739d23bf3b7301bfb04f775a6fcbbdad7","src/zlib/contrib/minizip/crypt.h":"8e872b60255b8447da99885c7159c2e1f1bb8143523bdbe71784e60f98bfd67b","src/zlib/contrib/minizip/ioapi.c":"66b39c27042f6ad12cc12efb0c82cdf100c6640b5fa959b8b866e252966113a9","src/zlib/contrib/minizip/ioapi.h":"8655408534b78dc0889a45f9359fc6d2d5c8e8d8443b81ede596f954c720ef48","src/zlib/contrib/minizip/iowin32.c":"2c05bc374d3d847c6a9f29eac9d674abba7659d1e91e34e172248fcb5c274d51","src/zlib/contrib/minizip/iowin32.h":"586f22b9c3c64da253ce2b518e0fad61f19a7b47b289fc704cc9708242294c49","src/zlib/contrib/minizip/make_vms.com":"65736d9c4888f2373d3db0a13864d150c5040453f5bc2a5c8784379a7ea67590","src/zlib/contrib/minizip/miniunz.c":"ced49f20c62536a8ffb270b35cfa4994a1dcdce45f8cf059b941c94ca0022666","src/zlib/contrib/minizip/miniunzip.1":"66d8684392167091ef0fe01598d6a0daa26e7e448e2df6c3cb257487735b83f7","src/zlib/contrib/minizip/minizip.1":"5404596e8e5587a52f563906119f32ceee30a6d97a966afa5c7afbe4d373e210","src/zlib/contrib/minizip/minizip.c":"fdfcf83979ef2324c1455d369e8add8678c804939d412ce53f8b024578ceabad","src/zlib/contrib/minizip/minizip.pc.in":"8b6670b42d8e5e519e1cc89db093efc07ba23cb1ddfedd3c93ff2df08c3ce8ac","src/zlib/contrib/minizip/mztools.c":"cd887c4af6d20823bd15f24008b10acf01969b4165d7848656bde843a92428d7","src/zlib/contrib/minizip/mztools.h":"6f82c52279e8f79165f4446be652e5741a49992ac58632470335aa34c564072a","src/zlib/contrib/minizip/unzip.c":"497adf676b1cae2a7afa834e4aba86383f7b697f5fdd03a8179ea9024a431cf9","src/zlib/contrib/minizip/unzip.h":"d8dc58fc0121b6a4b98f3028205bb253f956b1ddf791e9ced3cf44892502a01f","src/zlib/contrib/minizip/zip.c":"00f403cb7810578b4b2687dd55fb132c850c3630fba2f3704a8ab896fcc8209a","src/zlib/contrib/minizip/zip.h":"96163fc140e4bf08752e014d20a1eac3f5adcdc408366f6d79c1895f2599cf08","src/zlib/contrib/pascal/example.pas":"d842d456ecb6ff80e34cee2da31deb2072cc69ca837497bea8b8bee203403474","src/zlib/contrib/pascal/readme.txt":"02f997c37991ddae0cb986039f7b4f6fc816b3fd0ffd332cad371d04c12cf1b9","src/zlib/contrib/pascal/zlibd32.mak":"850e91b6c9ea05de61a411cbda16fa0f10118cd88bb32c4b7226988776f8d511","src/zlib/contrib/pascal/zlibpas.pas":"28b90aeeb3da8d1f6a98ab9f5f1603d08aba5bfabc50827d3f15e661268a51cf","src/zlib/contrib/puff/Makefile":"d9d738030464aaae354196c14fd928adf591832fce7d71ac1977c1d8d4923a4b","src/zlib/contrib/puff/README":"aceca4bc1bce7d9445b8bc9b6640c672d95708185f6070d3a3baae7a9d102caf","src/zlib/contrib/puff/puff.c":"6d0eef92e115a42e570b79d8b07a04af5ccbd6b3f3fbca9cbc61c49db9c9df43","src/zlib/contrib/puff/puff.h":"969b7be2a930db0cdcb19b0e5b29ae6741f5a8f663b6dba6d647e12ec60cfa8e","src/zlib/contrib/puff/pufftest.c":"8ee0da78a1221a3c2036e22eed06c2faa27a671a46565a60e10111d4ee9c30ee","src/zlib/contrib/puff/zeros.raw":"b7b0887089f7af1f6d1e0b4c0a1e8eddd10223b23554299455c6c9be71b653a3","src/zlib/contrib/testzlib/testzlib.c":"c6c37b35c6ecc9986a9041f86d879cc37a9e4d8315af9d725071eb3b2cade0c5","src/zlib/contrib/testzlib/testzlib.txt":"2359bbdc84eb8a04e0f1cd16cd81a2896e957f2ad58dab3ca78ef55b7d0dc577","src/zlib/contrib/untgz/Makefile":"8f5ab1564813e091cea8f1bb63da32fd80ac763d029277b0cabf50f60aceefe1","src/zlib/contrib/untgz/Makefile.msc":"d0f537de11d9e0e36e2a98b3971c537265f4b533b4c48797094365ad9ae8388b","src/zlib/contrib/untgz/untgz.c":"9a12d774301d252dcd38bba07ac369319da4c04c4fef8a50fcbf40aebf29c2a1","src/zlib/contrib/vstudio/readme.txt":"2a9ca40b68274f4d37649dfab9e5e867a000883592b4ab8fdaec8425a63052c3","src/zlib/contrib/vstudio/vc10/miniunz.vcxproj":"dd607d43c64581172c20c22112821924dfe862f56b2e5eb8780bdd0714d9527b","src/zlib/contrib/vstudio/vc10/miniunz.vcxproj.filters":"c3db9f97952683e688ad83c13bb94c816ac3e6b5f277fdea545b0650c125aa6d","src/zlib/contrib/vstudio/vc10/minizip.vcxproj":"af73f2cf8ae51e65e85342faeb40849a2310c97bc77def42b38d7070460a6cf0","src/zlib/contrib/vstudio/vc10/minizip.vcxproj.filters":"83db58d87f5d7ca84b6087aa1f62b15cbc296194c8cf76e47a271f9077b4f3bd","src/zlib/contrib/vstudio/vc10/testzlib.vcxproj":"1525ed0893db56db44ec68675c8da3c229dc7867166dfc0428816783d16ad43b","src/zlib/contrib/vstudio/vc10/testzlib.vcxproj.filters":"d7e04ffa467d417dfa3c0f1c64234cadc84882101bbae483f0a0f5d3d6b566a7","src/zlib/contrib/vstudio/vc10/testzlibdll.vcxproj":"3f317d8964f17901c3e68bff5deaec10b6ccc50a572235999e8097292692984c","src/zlib/contrib/vstudio/vc10/testzlibdll.vcxproj.filters":"682a485f0184aabba94e12e1b284499195f37c176d43ecee0484f31e4d636f6f","src/zlib/contrib/vstudio/vc10/zlib.rc":"e8b581eb16930e0213d37143a5f17868839b22c758b23981a29484e17093c494","src/zlib/contrib/vstudio/vc10/zlibstat.vcxproj":"2a38222d6c034d7e0b843c3f0540dc6c53dd48f942ae29f31620ca0327248c8e","src/zlib/contrib/vstudio/vc10/zlibstat.vcxproj.filters":"d9a2c381e51e4d6f027f3517db7db81656e43cec02ed9abf267a0fde6f360180","src/zlib/contrib/vstudio/vc10/zlibvc.def":"0124fea28bfee49c8a19dad0ed5a49277d451018b4affda5a389e64ad15f44d7","src/zlib/contrib/vstudio/vc10/zlibvc.sln":"e659860f705f31b87ea9139a3cb4ebe1561e120bce495383a54614fc82b49990","src/zlib/contrib/vstudio/vc10/zlibvc.vcxproj":"3108badf710e2f4a64eab4e7deae6642fb68cc0d94018e537149f1761e215133","src/zlib/contrib/vstudio/vc10/zlibvc.vcxproj.filters":"58404ba7703c68025bec64b8a17ff1fc7f3a35d15d17ae3bcc4fa753f1348425","src/zlib/contrib/vstudio/vc11/miniunz.vcxproj":"746e4c11fb8af4bcd6a9d68ba81ed1dc366a5de3bed56b291ee969ad733a7bb0","src/zlib/contrib/vstudio/vc11/minizip.vcxproj":"340617cae9cf4fcb003308021d3782ec3639e60d62d79a3aafc0a50bb55b061e","src/zlib/contrib/vstudio/vc11/testzlib.vcxproj":"589eec6ef6d818564ead938a629fda50abb6cbf8054b9f66ea780765c1a1b3db","src/zlib/contrib/vstudio/vc11/testzlibdll.vcxproj":"583bdef522b0176829f0d8139ea2a88b9cbc14379d1334f3a863989ed3df9b67","src/zlib/contrib/vstudio/vc11/zlib.rc":"e8b581eb16930e0213d37143a5f17868839b22c758b23981a29484e17093c494","src/zlib/contrib/vstudio/vc11/zlibstat.vcxproj":"51aa752698d96df065a9ece02e293492f681b59a8077f036a5a60367dc621e87","src/zlib/contrib/vstudio/vc11/zlibvc.def":"0124fea28bfee49c8a19dad0ed5a49277d451018b4affda5a389e64ad15f44d7","src/zlib/contrib/vstudio/vc11/zlibvc.sln":"27389b515997defd080519f95aff87e89fcbe8b26d73c5ebb73c544cfef4d60e","src/zlib/contrib/vstudio/vc11/zlibvc.vcxproj":"c3dd05e56159aba411475b83656275872524cb3c2fd24d690397d8b634e7e0ed","src/zlib/contrib/vstudio/vc12/miniunz.vcxproj":"1494af54570f6e93852932956d49a8c25e57b5abc1ac979945605ca9143df9f8","src/zlib/contrib/vstudio/vc12/minizip.vcxproj":"9bf128ed6760ca5f019006f178b1c65f4c7ff122dba8d297b64b0eb72feeb120","src/zlib/contrib/vstudio/vc12/testzlib.vcxproj":"367a06caa399bd09f6b9cb60706820943dd6a6cf05794275baaf421da9c2a0b7","src/zlib/contrib/vstudio/vc12/testzlibdll.vcxproj":"93416510256935d79625dc9fd349cfce6968c062d42a138bec404a26b2f92f5e","src/zlib/contrib/vstudio/vc12/zlib.rc":"92d5d3a4938a6350395934153416a7eb74353cdfb2321f45b9ee0b9b16257f39","src/zlib/contrib/vstudio/vc12/zlibstat.vcxproj":"744ff6ac0d4e2dcdf74c7d33b979fbfd2b18550947eb99bfd46dc6a73eb1c68d","src/zlib/contrib/vstudio/vc12/zlibvc.def":"0124fea28bfee49c8a19dad0ed5a49277d451018b4affda5a389e64ad15f44d7","src/zlib/contrib/vstudio/vc12/zlibvc.sln":"162e0faa80a56d89eea71a0b89377708eec2faa0dc72091cc0abb07fbdea49a0","src/zlib/contrib/vstudio/vc12/zlibvc.vcxproj":"754671c59d8996a846241af76082cc8be1aa5fc079eff530d91a9ab15a0bee5b","src/zlib/contrib/vstudio/vc14/miniunz.vcxproj":"0312511d4a30cea979c4e36edf994a537ed8a9d924f6b5c536cbcd094773c11f","src/zlib/contrib/vstudio/vc14/minizip.vcxproj":"9e7bb7a6ac723e4b2db900627c366f9bb93a351381995d9c69a50c0126f64233","src/zlib/contrib/vstudio/vc14/testzlib.vcxproj":"c3a9369670af4ebea13d036b452be7418591fbb4c03a675699facac5d8dff5d0","src/zlib/contrib/vstudio/vc14/testzlibdll.vcxproj":"69f544898b4275cd3d8e19b8f1f8cb39c1cb98a30cdb033242e4b94c57bfa150","src/zlib/contrib/vstudio/vc14/zlib.rc":"92d5d3a4938a6350395934153416a7eb74353cdfb2321f45b9ee0b9b16257f39","src/zlib/contrib/vstudio/vc14/zlibstat.vcxproj":"9c7c096b47e7875412c98525efcd16db62e094215f0011b9cd739a33ab35d48c","src/zlib/contrib/vstudio/vc14/zlibvc.def":"0124fea28bfee49c8a19dad0ed5a49277d451018b4affda5a389e64ad15f44d7","src/zlib/contrib/vstudio/vc14/zlibvc.sln":"47a50bbde8ca6336cecd8c0e4b65e515fc46ae84c7b61008ac9864162f777286","src/zlib/contrib/vstudio/vc14/zlibvc.vcxproj":"71fb6ef3b079bfdf4182af17e74c3361ead757467edfc591d9cbe303ccc47b52","src/zlib/contrib/vstudio/vc9/miniunz.vcproj":"b2b53bd9e704bfbe769b863acdc2a3368692ca149c4b4ed2a0761b0cd16c6726","src/zlib/contrib/vstudio/vc9/minizip.vcproj":"80a701fb41a61871ce1d25f6b03e571edb6c3abf0aa45375554b6fac52115eb6","src/zlib/contrib/vstudio/vc9/testzlib.vcproj":"05fc5a87682b17690d199f424f57f6ad7767b8dabb29a1039bfcb88bca1b302f","src/zlib/contrib/vstudio/vc9/testzlibdll.vcproj":"25c1cc5319f1c4b7dbdb595c3cfd6ec3ba217818b03b7055ef5ef440b575a43d","src/zlib/contrib/vstudio/vc9/zlib.rc":"e8b581eb16930e0213d37143a5f17868839b22c758b23981a29484e17093c494","src/zlib/contrib/vstudio/vc9/zlibstat.vcproj":"e8653eea37f3bef097eec2caa55e1f698c3c74c959689bc4e97568e88d2bbc60","src/zlib/contrib/vstudio/vc9/zlibvc.def":"0124fea28bfee49c8a19dad0ed5a49277d451018b4affda5a389e64ad15f44d7","src/zlib/contrib/vstudio/vc9/zlibvc.sln":"26e58d4b2cfcd941c367fb2a18537b3b9f002f2ac1278b700ea1129c50501452","src/zlib/contrib/vstudio/vc9/zlibvc.vcproj":"86aa6e33db104c0a0ed4a9f21f0db8572cc7755170217aef18219fdd74b75e9d","src/zlib/crc32.c":"a04af273e83ecc351bf3794974ab2098d8d960df4044b7b44734c41443ee26d0","src/zlib/crc32.h":"407af59d0abfea84a6507c603eb29809411797f98249614fe76a661def783ce1","src/zlib/deflate.c":"11fd6b0328b65c4ad4b5c204d892a97a9083628a7e77dc47836c8e0c799f8da0","src/zlib/deflate.h":"0ca7fb0cf1dd63001c6e9e4ff93c8dbff2fe521199be51a4dda38a11b44919f6","src/zlib/doc/algorithm.txt":"992590931e982c0765286c2d83f6e9ff0a95aabb08e28c30c52bae3e8c4bd5ad","src/zlib/doc/rfc1950.txt":"8f0475a5c984657bf26277f73df9456c9b97f175084f0c1748f1eb1f0b9b10b9","src/zlib/doc/rfc1951.txt":"5ebf4b5b7fe1c3a0c0ab9aa3ac8c0f3853a7dc484905e76e03b0b0f301350009","src/zlib/doc/rfc1952.txt":"164ef0897b4cbec63abf1b57f069f3599bd0fb7c72c2a4dee21bd7e03ec9af67","src/zlib/doc/txtvsbin.txt":"47c273bb22c9773248d380549a330e5c262266b1292154b0d3014f731cc73f47","src/zlib/examples/README.examples":"402d72eb69c2e03a25034f4b3c02b110f0f67149ecfa4fa0e4b2bf0ceb49a8b3","src/zlib/examples/enough.c":"704e273f65b62c5d2eb06d5bb10c4ccffba56544aa477f0e3957e2296c501b78","src/zlib/examples/fitblk.c":"950769163c41aff897ee41746a8685d9aa41073b1307f42da19dabe9d3fc8b85","src/zlib/examples/gun.c":"d60ca6eb0a3e62ee7fb4a1ab69e8d1525ff06b06ce46889cbdfc13fb8f7534c2","src/zlib/examples/gzappend.c":"4182d38bf97ffbdf1110df7f65c0e8fab0b28b1ea36ebba8621c14e8e76f1caa","src/zlib/examples/gzjoin.c":"90b9d6c39a5fc91cf1cc9b96b025a508a8015dc502cd9374c754b44078593f57","src/zlib/examples/gzlog.c":"433d34b71b4e769ece1cceb8bd7d902d2c0a24ccd7550ab1856a5ba87f84f835","src/zlib/examples/gzlog.h":"309556e2d7d39250924946b78e2cce0ac927857d6e1a02cab64e438f533c20c3","src/zlib/examples/zlib_how.html":"80fb647be8450bd7a07d8495244e1f061dfbdbdb53172ca24e7ffff8ace9c72f","src/zlib/examples/zpipe.c":"68140a82582ede938159630bca0fb13a93b4bf1cb2e85b08943c26242cf8f3a6","src/zlib/examples/zran.c":"840ebeb058cd0ca9e92dcb1db665932462a4695fc649b34e865b8d1ad7c5bf77","src/zlib/gzclose.c":"94446cf8cde67c30e64d0a335b0c941fd3fbad2e77f30180d12e61f9c2a5a6b8","src/zlib/gzguts.h":"1ef4741cf10441feeca5c8dde2b6c754f0cbd96fcae697d54a604757289a5e9b","src/zlib/gzlib.c":"5daf11e44149e0aba2956d35f73f04f35dca99c3dfa43f5ad43ec20b336e4a1b","src/zlib/gzread.c":"6f928512cb1792cfeab31a51ff0b211814d2e455bc75290eb31079dc1e5ad2ec","src/zlib/gzwrite.c":"ba3b7b7ad2ff7ef0c19319b8408c333491a4cd495da55d0b156bc73d9ddb4df4","src/zlib/infback.c":"abe44873b5af2ea68ea1d281d915b2800f1832f846d2c05442a4711adbe6f269","src/zlib/inffast.c":"4d496ab2a3d29df5fadc3dbff6067e039806aaceae6cfcd09ea77d46c2b848fd","src/zlib/inffast.h":"7d8c1c873ce9bc346ad6005bb9d75cce5c6352aaf7395385be216a9452a34908","src/zlib/inffixed.h":"237ba710f090e432b62ebf963bee8b302867e9691406b2d3f8ee89ee7bfef9b0","src/zlib/inflate.c":"8b6c599c3563c14c447c47db0d7dc9a16e8c246a078ec95a169ddcebaaebd811","src/zlib/inflate.h":"8ec9ac297790276f7e46a961d4c6f9f944fb1dec92401339ec2666973cc5983c","src/zlib/inftrees.c":"1960ca67384376f65b6ce8c08fdb501f8eb33923e11ef5f61a855708c6cb0a8a","src/zlib/inftrees.h":"c510b36402784b1f898be3b049b923469aa92701de2d9195aed19f6b65c0dce2","src/zlib/make_vms.com":"3064eb153a7684115f1494364f80759bc5a2c227799fdf08df7b9e6e50884720","src/zlib/msdos/Makefile.bor":"292ab363f7ffbc4ae84d37cd9bdffd2dac1003bee52d223a8489844870f20702","src/zlib/msdos/Makefile.dj2":"9208450c2ae6dcbfcc25560b5b9ca763f461e7246e37b0552474edf8fa898906","src/zlib/msdos/Makefile.emx":"c749d6ec7f88e8e639d4f03bdbdcbbe9d1c304210be4c4be621ceb22961d3d64","src/zlib/msdos/Makefile.msc":"0e021a6f42212415b060e4ad468eb415d0a8c1f343137fb9dff2cb8f9ead3027","src/zlib/msdos/Makefile.tc":"2ae12ee2a3e62f7c5a0520d0fbe4adee772bc07fe816002b07ccb43db3daa76a","src/zlib/nintendods/Makefile":"ea5823efe6830132294eddf2f56dbd7db8712244c210bb4968c431b1a91bd066","src/zlib/nintendods/README":"e362426c47b39ff6a7d6c75c6660b20abf076cdfa5e1e421716dc629a71aef95","src/zlib/old/Makefile.emx":"d811f032272aae50123a889297af3a02fbd60d1e42bbef11466462f627ff7b5b","src/zlib/old/Makefile.riscos":"d1a488b160fbfd53272b68a913283a4be08ba9d490796b196dddb2ba535b41e0","src/zlib/old/README":"551a0f4d91fe0f827a31cbdfbb4a71d1f3dc4d06564d80a3f526b749dd104d11","src/zlib/old/descrip.mms":"8ff08c35c056df9c986f23c09cf8936db63ccf12c3c42f7d18a48b36f060cff7","src/zlib/old/os2/Makefile.os2":"6ad247c00f00ff42fd2d62555e86251cef06e4079378241b5f320c227507d51d","src/zlib/old/os2/zlib.def":"ea9c61876d2e20b67ef2d9495991a32798eb40d13ede95859a2f4f03b65b9b61","src/zlib/old/visual-basic.txt":"1727650acbde9a9e6aec9438896377e46a12699cca5d46c5399cef524dedc614","src/zlib/os400/README400":"6f95a1beb0fbf943a3312eaa3dd2c279f1cef93062bebbff63dd37ac9e2aa8d6","src/zlib/os400/bndsrc":"cfe00b1528d5c27813cd6b1ad7aa34b493fd63d615623fb21fd1a7bf99d2255e","src/zlib/os400/make.sh":"143394d1e3876c61c29078c0e47310e726e1f5bd42739fe92df9ece65711655f","src/zlib/os400/zlib.inc":"c501c522185ba1f0506caf90d72f1088b34b2addc169471e949e443ab65e8a75","src/zlib/qnx/package.qpg":"90b5c8364d9dc5ef67405b352c19710ebad2905f3f20b9e56ded74661f96743b","src/zlib/test/example.c":"520799662a8286725540d6d5a356efe6f595618e5fe2e591972491d719bd99aa","src/zlib/test/infcover.c":"f654f3fcc74b33bd95cda63d13fe0ce589bcfe965544e0c17ee597d75efbd090","src/zlib/test/minigzip.c":"91089b21e692797bb6208b2b45eeb90f5f1f1e4f6b67b99dea5676f51b811193","src/zlib/treebuild.xml":"d816c764c8ec2d5b2ebfa7f053f747097926c13fce7fa8628c5d14c991411421","src/zlib/trees.c":"f2a5f949ea70dde7c23a54c793aeed630a03df4bb72417cd3aa008000c44699b","src/zlib/trees.h":"bb0a9d3ca88ee00c81adb7c636e73b97085f6ef1b52d6d58edbe2b6dc3adeb4d","src/zlib/uncompr.c":"31922aa982ee12fd28d1ce5fe6a94a3f07c2a941c821b566a881ca21845cdfaf","src/zlib/watcom/watcom_f.mak":"7e039b912f9cffaa40835281430bb284fa9042b0a0d12f6b34700a06bca6576e","src/zlib/watcom/watcom_l.mak":"d11b4064604a034725860e63e3f6d347056372e4b1675b183e20a93533b20cc9","src/zlib/win32/DLL_FAQ.txt":"9e00778319381e6275691dd3a89410c99065b8c0c5db96473abe8c859cbdefd8","src/zlib/win32/Makefile.bor":"e878fed2313417db085fea621c110889f6a32233b5b6db46e3c4e824c1d0ed6b","src/zlib/win32/Makefile.gcc":"ea8feddce7b9707253b9bf86623cf7ebe5294d7aea2b3b0b1b1c1b8cfd73009d","src/zlib/win32/Makefile.msc":"7c495d63c5afea1d77d162a41b73bab89cee952c12e4647e9684a7ac79bfc3f5","src/zlib/win32/README-WIN32.txt":"b71f1f4e4760812c3a11b2bae6f40d1066741a90e6646010a32ce50a0e348cde","src/zlib/win32/VisualC.txt":"9ec0babd46eaa012371dee2d3a8a55d9c7130f7895512c3371c737e4a7f6a997","src/zlib/win32/zlib.def":"24fa6dd00f3f4c0d14507a03ddbfa42707a04e3901bb9ff6f90096037a75185a","src/zlib/win32/zlib1.rc":"8fc5f2b5abee40ad66e6d6cfc9f926c2f446e13a7c9ee7df8bf58a266d8cade5","src/zlib/zconf.h":"9c0087f31cd45fe4bfa0ca79b51df2c69d67c44f2fbb2223d7cf9ab8d971c360","src/zlib/zconf.h.cmakein":"d740b750e9c98e6a4b4529cc2a857a3fa8001514b1ce91e0e1d9d293652bf388","src/zlib/zconf.h.in":"9c0087f31cd45fe4bfa0ca79b51df2c69d67c44f2fbb2223d7cf9ab8d971c360","src/zlib/zlib.3":"5abef003e545566e5599e5ab2e7528e978be59d54546b19d763d062f7a69bac7","src/zlib/zlib.3.pdf":"7f0f633641d782e360eff9fe831716c5767faf1000e38382a8a8c65b0b67f374","src/zlib/zlib.h":"4ddc82b4af931ab55f44d977bde81bfbc4151b5dcdccc03142831a301b5ec3c8","src/zlib/zlib.map":"7eb1070ba6bf12e6895e5da06b84a92af683827587afaa72bdd45e80b9d8e4e9","src/zlib/zlib.pc.cmakein":"2f1d0b18ce37c2af415a469857f02aee2c41a58877aff21d29e9c6db32b55cb7","src/zlib/zlib.pc.in":"04c01cc2e1a0ed123518b5855f585c93a24526dd88982c414111ea1fc9f07997","src/zlib/zlib2ansi":"d316e3e79054f5f9fe921d35f4bbf4bf0a37b859d29d2b34ae4d7d92afc3e55c","src/zlib/zutil.c":"f7fdc9ef326a2683eb33c794face54e83c751ec17f3d1ba581847a62af36ddcd","src/zlib/zutil.h":"9a63f6690fac1620aa3cecee5752af618806da438a256b4a047fbcd289cac159"},"package":"602113192b08db8f38796c4e85c39e960c145965140e918018bcde1952429655"} -\ No newline at end of file -+{"files":{"Cargo.toml":"501be769acb8ac65b7cceade7982393e70e9ca900b56b1255eec1e45485960e7","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"34c467b6945a22696d060b8fdd2379d464acb3408d4c599d3dc5fe4fa1b4c84f","README.md":"b23e18bdce29fabc3d34e88576219f50d1d735a355e427e6d6ebc09254138070","build.rs":"14744340a51ea4b50f9d55cad68b0109e54ec5c6bf3abb213691ea3532d9a274","ci/Dockerfile":"4d479ea63b9e384b3864fa1204894bfae4890017d6bf03486274457fe2c26cf8","ci/run-docker.sh":"0ea7a4fdc9f6026110e20fa2e25dbadfc1e6dafed9ded5981ae36772ad207e26","ci/set_rust_version.bash":"4284f86ac3923a73dd79e89bef2d0b136c6d104d6dae92e24b4a96eaffa28890","ci/test.bash":"73a936768549eedf96a7cddb350ada128e058d5d9004244ebf3d993363b69599","src/lib.rs":"40476f4e896c936c21f908396255c7a4951ef8bf93788858ade6cace2539927b","src/smoke.c":"10607c81b73811bfcb9718767312bf97ba2ccf7048ea2f18a2085aa06ad7f91b","src/zlib-ng/CMakeLists.txt":"7b2ffd4aa36a21344bc27d8c40250a17cb467d69e547221a459fdb6de4048ce1","src/zlib-ng/FAQ.zlib":"d1777aa057caeef50fc291aac7a414363b2186bb3d65bb0f8bfa2bfd61cf0ad5","src/zlib-ng/INDEX.md":"9a5e17ff600a570b44d1ad42dfc07b82ba30a2b75efa36fbee47cbea7c4e796b","src/zlib-ng/LICENSE.md":"d3c80be055d94d798eaa786116e84fa0b010bc11420b5d2060d978ea77845436","src/zlib-ng/Makefile.in":"337b0fd7af9cf0b9f8d2fbe00a060298d3e4d9ace3b62cc1e3dbd7b0a93306e3","src/zlib-ng/README.md":"61d42f45d66f94a13a3b32a2e319fc0eccb0bcaa684c04c5982086ab555388f4","src/zlib-ng/adler32.c":"82ffa1b4fc4b198ba8004135f79b8819d9f2b28e851c30c0ab41e6d32dfbf70d","src/zlib-ng/adler32_p.h":"f56915c59a345baf4558374447385a317e29365a4db2fbb38af4de3e1a1a0201","src/zlib-ng/arch/arm/Makefile.in":"f31b00162fe10fcebfa27859215f9e863aed4c15caf90189997cd85da7ec49a7","src/zlib-ng/arch/arm/adler32_neon.c":"3990b8d5570b12c2162218fe0e9bc723a03f1c89b5ed3ba70a74a98976260ee7","src/zlib-ng/arch/arm/arm.h":"855adbb02d7b9a5714a17d9dcff493610e7cd2b9a1f4e58e1c99626ab536e868","src/zlib-ng/arch/arm/armfeature.c":"6f69c21cd97462d97233fe7f28ea739b8463134bb57620f743bb4586abcfcb2d","src/zlib-ng/arch/arm/chunkset_neon.c":"b21e769306d51e10050dc593156ffe4ce39df36fa2d85bb67c69856b56ff0a69","src/zlib-ng/arch/arm/crc32_acle.c":"5a96afc594697d1399870d1bfb0623a03869eff42caae74013f147cec4aa982e","src/zlib-ng/arch/arm/ctzl.h":"feb70d55e66025fff806e30e48002b35cfff79533d352585cfa5f118edbc90b1","src/zlib-ng/arch/arm/insert_string_acle.c":"d1b1dae5aeada70f2b03c2cbf3112ce55a92401c2d87709081b04dcf5992e1ad","src/zlib-ng/arch/arm/slide_neon.c":"19d8cf5c742ac6b82164c7a183538ad1129f9f17e9b8bce8b40daac3820fb6c4","src/zlib-ng/arch/generic/Makefile.in":"f41a34839986eac8dd52cf91fada0efff4171c059ab5d7db6347c91bd6d9db09","src/zlib-ng/arch/power/Makefile.in":"7139dde26c587f1c6e40b460f97b1576eb020b69411cab72c7a93e9ca60ae260","src/zlib-ng/arch/power/adler32_power8.c":"79b75e98ad3a62facbbdd8c0b178d3f993b57f6e34d320bf47eca33aa8c330a1","src/zlib-ng/arch/power/power.c":"0647afb3b3b7ce2a19b4815ec8fdeee0b37c759413e5ef0a668a2dba22d94803","src/zlib-ng/arch/power/power.h":"f3f15f94fed98a2f7dd5d4568c5172e597228be4141d6895062703c3f70024da","src/zlib-ng/arch/power/slide_hash_power8.c":"932ea533d25e2f5478afe0c47830e7ef24276cad0d75fd91f2d8c799bd4b5d36","src/zlib-ng/arch/s390/Makefile.in":"eef6c3169723f089b0b5f852423ec55bf0364caeddd7cda991f2e76bc1682107","src/zlib-ng/arch/s390/README.md":"7c36363b0941fffaf4d363e7b911e91ba6ba3c620bc9d3203007b177ced8b246","src/zlib-ng/arch/s390/dfltcc_common.c":"6771ec4457da9f4b00c74bcc0828735e21c74b9162cb37383c297c3b5028cddf","src/zlib-ng/arch/s390/dfltcc_common.h":"ed339007feae58d1879e096addb30ed86cd5cf11222db22c45f48b47328cf6db","src/zlib-ng/arch/s390/dfltcc_deflate.c":"7b3dec7be4055c7748defc626dc91db99787c9f3b70b7d7b40282558bbb478e9","src/zlib-ng/arch/s390/dfltcc_deflate.h":"c4c411f221cc0f6b218326e973fef05c65840ba49878aff052dac0bb38121cbd","src/zlib-ng/arch/s390/dfltcc_detail.h":"27377bb32678013adce96ecc51bdcea168771edc722db9117d78ca7c846525fa","src/zlib-ng/arch/s390/dfltcc_inflate.c":"a96226eba3538d3904893cfe1b08395668e6a722b56f28d5b5debb3176161b4b","src/zlib-ng/arch/s390/dfltcc_inflate.h":"bd16c082cd83c889883ed4f4cc85fdab293cef052b858ee0102f06385f099f4e","src/zlib-ng/arch/x86/INDEX.md":"c12f9bf0d66743a6472fb756bf46def8eea1dd235be7fca994dcb22f693a3524","src/zlib-ng/arch/x86/Makefile.in":"85b1a1e11910a284291b73f9d3030f5d4029108e5674f3013a75411d1db39dfb","src/zlib-ng/arch/x86/adler32_avx.c":"99056732c7bd5d53dc108f282811a40bf21570926781af5dc7b17cb9218963de","src/zlib-ng/arch/x86/adler32_ssse3.c":"883a5520b4481225d097c90c5359106a3c8eb7b921499c94276e999b7c39adc5","src/zlib-ng/arch/x86/chunkset_sse.c":"f7ccb55b67101ddb9def951a6d6f9dd4cb108fdd9e65f0f21d82723d1b093a22","src/zlib-ng/arch/x86/compare258_avx.c":"8b2838d168de4608327f25fe52d53763a82413ee911d87947d3fcd72c7f9bf26","src/zlib-ng/arch/x86/compare258_sse.c":"b5049722ffd4a43a96868eeba5e000271cfc5fcbf3c2657026ead15b1df28a10","src/zlib-ng/arch/x86/crc_folding.c":"fbc6086b936deed7a244e15153be1034585765679762967295bdcb491d9c0df4","src/zlib-ng/arch/x86/crc_folding.h":"939212546611917e9e066e8ed30cdda95680ec1f5fe0890cc4865b4e6d7fc215","src/zlib-ng/arch/x86/insert_string_sse.c":"9e84a75b6a565422eb105261b6729d2a02b89133bd14372c949d5381b5deed3e","src/zlib-ng/arch/x86/slide_avx.c":"2fbdb15347b6cb437b11fdba36116e4102a295b5167ba184ea8a159a074e06f9","src/zlib-ng/arch/x86/slide_sse.c":"1946cabb634c905fddef0a22b2fad19dfd99110169567c3beceef71145b2e316","src/zlib-ng/arch/x86/x86.c":"1af56e27b2e951e1ad1344e62c2f7a8c49a776fcdd1cb0f4ea9d6152118a479e","src/zlib-ng/arch/x86/x86.h":"4d2d20ea0087089141e250e77bb3d419954b9092810028b151581b9115a5fe8c","src/zlib-ng/chunkset.c":"c0dbc7abbdad5137a9efb2b0a76a212e77d4bf44beebe721c68359fa83002ff2","src/zlib-ng/chunkset_tpl.h":"e44dfd12a043ea60ff6543ca10c0f73e22c9b62fd7b4a85647e166be74ff1033","src/zlib-ng/cmake/detect-arch.c":"a9509327c2f4395955466b0acce453c29592d4686022714cb9e8b411d7e60c29","src/zlib-ng/cmake/detect-arch.cmake":"f915121423c987bc4cd62c1c5278e458527694b26bc542e26005269aa7da6fc3","src/zlib-ng/cmake/detect-sanitizer.cmake":"ef9827f1c1c5e8159c6f59e9d8ec1020f142031fbdba16b7aea18decce3a10f1","src/zlib-ng/cmake/run-and-compare.cmake":"a000da0fd9a65546592672f4e2dc789dd7e5fc941c123eb98447025b1f6fb8f6","src/zlib-ng/cmake/run-and-redirect.cmake":"f673ff62e05298695ba22f7365c0cf8ae4e2c3ec05d69a563e75756442216dab","src/zlib-ng/cmake/test-compress.cmake":"10f05bc5f5289414f93b031139878f446b08482ee4c6814f3ac11468f5c04e22","src/zlib-ng/cmake/toolchain-aarch64.cmake":"8d7ba07ee1cb9fbc7817da1c5e74ce6c85ff81c10962a33941f0e24471956e59","src/zlib-ng/cmake/toolchain-arm.cmake":"0b0ab2b1093ef851c3dbd6fe53f855628df0778841a488aaef85d2c70f04a257","src/zlib-ng/cmake/toolchain-mingw-i686.cmake":"4e98d3a6380d726b002c03d6767068b2f520b3febe60de904d7190a81e319c94","src/zlib-ng/cmake/toolchain-mingw-x86_64.cmake":"42f345f6bd9dc2e97ae1f179639388a408f2fdef4d4c286cf33c2807ec2fcda9","src/zlib-ng/cmake/toolchain-powerpc.cmake":"6373abe883a99616aa51422a9b714894dc521211be49502463576f58d3d26b2a","src/zlib-ng/cmake/toolchain-powerpc64.cmake":"328d1ea039a30e03ee9a552858b9f180b3da2614b712f618da1a0fa98f30a53b","src/zlib-ng/cmake/toolchain-powerpc64le.cmake":"ec90270bd1f4aa649abddddd2618168d399d58a1c1c35b3d8d909e570eb9be1c","src/zlib-ng/cmake/toolchain-s390x.cmake":"cb634252c21c4f55d06cdc49ce522a5546aae592daa0f12aa4282c0aef323828","src/zlib-ng/cmake/toolchain-sparc64.cmake":"d70d39760a23886ebd1c5a1a87651bfb47a9b24def9e7955ee1cbec60b40925b","src/zlib-ng/compare258.c":"fcb3dbbfae3999ddd063cb9bf85c7b58276dd49179d725099638e11b5af3bfa2","src/zlib-ng/compress.c":"1abf5b13e3e805becc14f4f16dad9bf816f4fe41754b1abf75f670dcc84567cc","src/zlib-ng/configure":"3c5278cd5e7b5e67a316557dd2d681eb31a538c874bc326afbe9750ff85e5708","src/zlib-ng/crc32.c":"7f170ab71c10179b2d77468064fd6c7bf04f06a925010d9edb3aa16d3bae7524","src/zlib-ng/crc32_p.h":"1fa91375a18e090c0a0dfda39de3df36346a0b1be36c808be6b6c29c32eba922","src/zlib-ng/crc32_tbl.h":"1781f9e527ce22a8b0f3aa76796ecf4dac8924854ceda4048be1253d5a04b0bd","src/zlib-ng/deflate.c":"dc4fdd9ba75ae353a0fb0b46f21ba11525b4435e1edc3741d0fc6928f4de39b3","src/zlib-ng/deflate.h":"9d45ec0d1299672834da1164b4c9b4c803a8182efd24bdfc1c4cf45cca373927","src/zlib-ng/deflate_fast.c":"3b38b95d3e55f87f9e48724012a8c5268fe421cee734aba9e4da5148e5f64752","src/zlib-ng/deflate_medium.c":"e91b5dccdd743ecf8dbf4df63d2239162e9297dadba582d907faee37decd8f8a","src/zlib-ng/deflate_p.h":"16da86049e0d9704bddd893ca228baaa1c03f99490e54bfbfef54e0b20e28b10","src/zlib-ng/deflate_quick.c":"da2bdaf387e185abbba1c01c03e0a2d89393dd76ce345ce9119cf80ca6d8ebd2","src/zlib-ng/deflate_slow.c":"7fceaa823bcccb771a9634b6c0e83cf48c9b4152b2b76ef6794cf2165beec19c","src/zlib-ng/doc/algorithm.txt":"992590931e982c0765286c2d83f6e9ff0a95aabb08e28c30c52bae3e8c4bd5ad","src/zlib-ng/doc/rfc1950.txt":"8f0475a5c984657bf26277f73df9456c9b97f175084f0c1748f1eb1f0b9b10b9","src/zlib-ng/doc/rfc1951.txt":"5ebf4b5b7fe1c3a0c0ab9aa3ac8c0f3853a7dc484905e76e03b0b0f301350009","src/zlib-ng/doc/rfc1952.txt":"164ef0897b4cbec63abf1b57f069f3599bd0fb7c72c2a4dee21bd7e03ec9af67","src/zlib-ng/doc/txtvsbin.txt":"47c273bb22c9773248d380549a330e5c262266b1292154b0d3014f731cc73f47","src/zlib-ng/fallback_builtins.h":"f07e83c5c444554577c4240ff7722057ea2a689f6baa0f9e8bda32b9a46888ca","src/zlib-ng/functable.c":"c0c2c18b563c913c25d6dde9dd009d19de3c5d376ade1e9839d6fdb8f7ce0382","src/zlib-ng/functable.h":"e5a2d0c10411d23f04295bcb9ddb9889388974b723caef65aa5c4ea4739f4aa7","src/zlib-ng/gzclose.c":"c55d9dcbf88312ae9e0338f541a0d987fa56967211abc4579abf2cd71c41a73c","src/zlib-ng/gzguts.h":"cbf2afc8a6183002254a73cabe8376e54b1aea2ba042e36138f292c9cdb95d5c","src/zlib-ng/gzlib.c":"4e3cf39c21f1ae0a6856a6ea2fd5a618acfa60ed601763f6e77bbfdf3713072d","src/zlib-ng/gzread.c":"e5aada9dc85d28e91d1af3d4fd00af5713dcbea4341945f25560172292d807cc","src/zlib-ng/gzwrite.c":"ee50afc3e485eb232bf39faef8d4686475e867462dc98ce1ff990e15037d3235","src/zlib-ng/infback.c":"d9d5b52178f65aa9e32d6d63ad41e1bdd84b216b2158f00e76c074e3e7a08c6b","src/zlib-ng/inffast.c":"96ea98825cdb7e59fa50556568bf29f28caf3898891b9e54b78cdd3fdaadfba2","src/zlib-ng/inffast.h":"42e74a92b496ab0726be317e8497a12bf3c3cf3d0d533440ce65befd3929c71c","src/zlib-ng/inffixed_tbl.h":"07902ad68b4d0a5e4ff5e2fc4b1e1a8c5b013e11a09ccc9ed0bc6a2f12af2d47","src/zlib-ng/inflate.c":"069b375e33c97a28a01b511b7773fb5b1e92092f2594f56d3c6e758a08476c07","src/zlib-ng/inflate.h":"ef5b7dd4b77e877feec7193f71aab9d7989d43fed92173f6daacd958fbc076d3","src/zlib-ng/inflate_p.h":"6073714e5c132adf8c5e7bfc91b1f0c7c39ef6e292230d0da7d081fc8abd485c","src/zlib-ng/inftrees.c":"db5ca3aa96687ebcf5edac646b87d8ecd8c7593b267cdedaf382ffcae4677038","src/zlib-ng/inftrees.h":"624c6653a454447c6274adf922430a19c96ef73c7687e4559d247ff48970bab5","src/zlib-ng/insert_string.c":"aa22ba53a1e75821499809277f9ca0e5ef92b07a618136dd11ae1734e233b7c9","src/zlib-ng/insert_string_tpl.h":"ab6f1e189710ee9e55e311aebf432c396aa513acfa257e0eddeb629a08a9226f","src/zlib-ng/match_tpl.h":"09cf1841d43f55a313b394e99b437b87238d122b7332051bd5cd8395fe9d090e","src/zlib-ng/test/CVE-2002-0059/test.gz":"60bf96b8f433bd7e057ce3496aceaccd70ec80f596a4aa8bcc7786056705ce66","src/zlib-ng/test/CVE-2003-0107.c":"1bfbc88dc501cd92b8b26bd8944af6b150b376ebfe7241d90e2b93109be3d68c","src/zlib-ng/test/CVE-2004-0797/test.gz":"38caae524705f676bde13a8df9fc8c7d2fe105ba6bdbab62a405b0276fd3aa2e","src/zlib-ng/test/CVE-2005-1849/test.gz":"e4d5a60617df4b5dd44eda94751ce1eacdb325792bba6e3cc4676719a3adf742","src/zlib-ng/test/CVE-2005-2096/test.gz":"8f702d4861aa3ec98ac03a59ff26b430939630cb5cd4266d2658d3b836d576f9","src/zlib-ng/test/GH-361/test.txt":"358497d0a7251ea42101dc77b02337f46fd89af09643a8288e2a3082e5d24128","src/zlib-ng/test/GH-364/test.bin":"af5570f5a1810b7af78caf4bc70a660f0df51e42baf91d4de5b2328de0e83dfc","src/zlib-ng/test/GH-382/defneg3.dat":"b22bef6b7392401c9e7b079402c4a4074053d7a914d050400e37fd7af6fe26d5","src/zlib-ng/test/Makefile.in":"a4dfa393499a415cc4f551b69e4187a3586c22374849efcd2cbfc058ea6c8e2a","src/zlib-ng/test/README.md":"fc485cfaaede6b3d3dc61fdd17cc7eee715c35d6f62e6e502f9251fd1b5edac9","src/zlib-ng/test/abi/ignore":"02aa87f77656dbc1fbddd23f436cd15465a92df0722da4055cae1bc8bf013097","src/zlib-ng/test/abi/zlib-v1.2.11-arm-linux-gnueabihf.abi":"f5e91f25b558a891fecbeb6e2e9575698630ab700d055a38f3bc4fe66257f513","src/zlib-ng/test/abi/zlib-v1.2.11-x86_64-linux-gnu.abi":"038337383cf780587d810cf5400d632f3a1f8517e63ac4a71b6e5224db8b1413","src/zlib-ng/test/abicheck.md":"fa5d6d33ff0fd95eefb7c6c0c7f67351282e6eda20c4e38842235a610cc10382","src/zlib-ng/test/abicheck.sh":"715aaf3dfc5b68ea591036e99d83cc4dc16b9314c34f69901d7f112b58ae8a0f","src/zlib-ng/test/adler32_test.c":"db3e8ad9a4e2ecce0c052b0bfe19834d3ff2fb2e9239cc3438a2c95db00b1d21","src/zlib-ng/test/data/fireworks.jpg":"93b986ce7d7e361f0d3840f9d531b5f40fb6ca8c14d6d74364150e255f126512","src/zlib-ng/test/data/lcet10.txt":"938e69e61b3411d8a9e2e630f4265000d810f3dbf66bac58cac19493753526ec","src/zlib-ng/test/data/paper-100k.pdf":"60f73a051b7ca35bfec44734b2eed7736cb5c0b7f728beb7b97ade6c5e44849b","src/zlib-ng/test/example.c":"c585ea31a88c9b9f33953e042ff461dc91ec8cd1e77df5e2158ace89016c4b9e","src/zlib-ng/test/fuzz/checksum_fuzzer.c":"3a15479f2cb40b6c5760dadb246328fab7315f3e3b8e28c1bc246c9b9a867c69","src/zlib-ng/test/fuzz/compress_fuzzer.c":"1ab70608075c4bc60f89aa2f327cff88362ee7b1d31da88ed54ca51e5f99e5c9","src/zlib-ng/test/fuzz/example_dict_fuzzer.c":"8124a1ff30aadbd2c949856dba794d62ea550da9d2370b3749ca4a9d27413346","src/zlib-ng/test/fuzz/example_flush_fuzzer.c":"48aeec52cd2d220e9eaff8729497a3e03c950a93082b96fdfdde8e2de94d5b8f","src/zlib-ng/test/fuzz/example_large_fuzzer.c":"f490abcd332fb4e7921292adf6876d38d7f71c8d2443212c781ba88957ff9303","src/zlib-ng/test/fuzz/example_small_fuzzer.c":"6fafa508589d283f64838a4752174c1d8122d697a57908978927ed8168487c27","src/zlib-ng/test/fuzz/minigzip_fuzzer.c":"2fbfac6e2b24ad2460838fabc585572279484fbb440ca1c3c28b8f735787b1c3","src/zlib-ng/test/fuzz/standalone_fuzz_target_runner.c":"306e8ac4e08ea72d18ffae8c908abfef8c6feedf83b068a7ec675ade6a5791a8","src/zlib-ng/test/infcover.c":"b9acffc102fdd140941073ca47e30c938aa937b4929061500c36ffba12c86449","src/zlib-ng/test/minideflate.c":"93de8ffcbe7c414abf3ea36acdf729bcedb40393ec7bd10b356ebe225406e173","src/zlib-ng/test/minigzip.c":"bf0ea2a10c091fd7ae7ccd840f583139b7f6e32da8dbc816f112c70c9ad22eb1","src/zlib-ng/test/pkgcheck.sh":"75b3155125f235e27ee434d76b6f72bd825899b55f6d59ef2d032fe67a2896ed","src/zlib-ng/test/switchlevels.c":"b64da61b9a52dc5b76269aa45d99d290cc3b53a9a9b3b319cd1df868f6a62eca","src/zlib-ng/test/testCVEinputs.sh":"5de6198444c16726f8e0a8f2beb5b89c5ae7e7e3736ce760b9fbc719493e7e4f","src/zlib-ng/tools/codecov-upload.sh":"ec7a8f1405820810e486e3d7e2fda7eb958c17877b0000b93abdf09d87732a2f","src/zlib-ng/tools/config.sub":"1e47cf8fab55b742565c0919d47e58df592c644c20b0cde74ba47b2fb68e0c91","src/zlib-ng/tools/makecrct.c":"b0ee61259816f81d85b21aa29a1a83df0241d4f6bb7ae1c1affdac7bc01f41bb","src/zlib-ng/tools/makefixed.c":"2c0f412bc3c9fb075d766c795f960c880530d2c87df71edc985a60c2b14270d7","src/zlib-ng/tools/maketrees.c":"2dbfe34691dde327618be496b380fc91daaa30474352815773a8b70114b0541a","src/zlib-ng/trees.c":"afafffc0668516407347d12af7eff474c9cabc592c6334615d79a85ceccbb9d9","src/zlib-ng/trees.h":"24174f3543b01ee1ef370bbf6d15551a21871cded18b2aadf09a71e7904b6f99","src/zlib-ng/trees_emit.h":"f68904e04caee0482c72ea92cc775cabe35a0bf7cffce85566c15ace27666af4","src/zlib-ng/trees_tbl.h":"35f4fd0ec080c1ade342e2dd1b0f5cdc7e9f18990faa48d7a8a69bc318ebe607","src/zlib-ng/uncompr.c":"4ebb486b27930f8a6ec4a3cc90a207d0bcf8a4779d1dbf3b2184a2b2a5735cd1","src/zlib-ng/win32/DLL_FAQ.txt":"d2ec63cb4a51886e0813f75bca49a051bede364d855f938e1a7992ab97a79800","src/zlib-ng/win32/Makefile.a64":"7952efc68a1871887acad6d93790202bc4c34b9afb3a047e6b2ac8ae046f408a","src/zlib-ng/win32/Makefile.arm":"5171838c4af8da1fda76671392ef77f25782e48a7a5c64c75f46df4f6d262483","src/zlib-ng/win32/Makefile.msc":"778b59dd1ea3b774bd0a1f1f5f4fa439c092153d4b7c849a37cb4fcbd0b45ddf","src/zlib-ng/win32/README-WIN32.txt":"a8c2d052960b963a49cee5a2ad891f2ff7b34db038f00985eba4eefc99966261","src/zlib-ng/win32/zlib-ng.def":"f240276caf805a10d024fc6a66efe915c435734c69732818d92fb04d08ab350c","src/zlib-ng/win32/zlib-ng1.rc":"b567a276407998bae40aacd48a50beba87c0bfbae470d28e66331ac99eb575c8","src/zlib-ng/win32/zlib.def":"d9c371ff2677567350386441a2e3d0258010d6502290bbac5ac42ea168bd5212","src/zlib-ng/win32/zlib1.rc":"d7f269379144d65bcd1b67c1065e5d4120579f14ce54ecf246eaba394fa989a5","src/zlib-ng/win32/zlibcompat.def":"73728b9df4379dc70ebd9b2a9f20d6e4ed7c031fa1f351cdeae1de7d1db05bd1","src/zlib-ng/zbuild.h":"f73424f5f10370ffe8f45f6e3dc52dd095ea778153832461d712a838e3a01098","src/zlib-ng/zconf-ng.h.in":"708106f26c4a0d877e2ea644320a2b48b144524b61429c7490e2e742a0c0c1e4","src/zlib-ng/zconf.h.in":"91957d246bd1809df7feb3099812684ec3320f67ac2e000de2f744ad6198e406","src/zlib-ng/zendian.h":"f5cfa865281d2c5d0b097d318500f27daeec346e7882de68e279486d79c52e77","src/zlib-ng/zlib-ng.h":"de108ab4df27779b76684ddc75f9e46be3d937faee5a34f8c8cde141a6d361f0","src/zlib-ng/zlib-ng.map":"7b9b31cd6152742cc59226c39a75ed2f5546bf5d54e89b6707eade40e3c4de60","src/zlib-ng/zlib.3":"7fa7a4677e6d136c6c04f4b6455d2e6366c805a400c5561acd20206a1ee4dbe2","src/zlib-ng/zlib.h":"bcb6ee75b3c332bd5cf0e36ebdd4af3c54ad144fac7931e26648ee6ba1aa997f","src/zlib-ng/zlib.map":"e3549810f821d433d57f921ca2fceb8674574f778485255a7dc691bf26b5281b","src/zlib-ng/zlib.pc.cmakein":"2d29b621d47aa2be07b3fdac4162e1a3d950c290988b891f20baed56d32177a6","src/zlib-ng/zlib.pc.in":"cf94c9aa44878a62e27c2f75354c08326b3bb5250a9b11496855cf59691177bb","src/zlib-ng/zutil.c":"01ad977b32c3698ad5bb21db97f9d86513c59fd4781dc14177455a0cc8acff4d","src/zlib-ng/zutil.h":"7febfbd4096b934c6d8c6ce178ab9a0391cc2842b574b2f7a52d0d07c004e6c9","src/zlib/CMakeLists.txt":"b87275731cc3ebdfea144187875cea204f555c343279c0f35f2d46d661bfe34a","src/zlib/ChangeLog":"4c9f1a65b9b4be8bf164a97775ef50e4db4e02ea8c9933fdbe629a640691375e","src/zlib/FAQ":"1e8a0078be0ff1b60d57561a9e4a8cad72892318a8831946cba1abd30d65521c","src/zlib/INDEX":"3b4e325d47ae66456d43fcf143ba21ab67a02a4f81be7ef2da480ba30d774266","src/zlib/Makefile":"ef23b08ce01239843f1ded3f373bfc432627a477d62f945cbf63b2ac03db118a","src/zlib/Makefile.in":"5021b2bac4164f48b17c91c8a2e3c225be7ad31d8bfab1bbaadd90370afe9991","src/zlib/README":"7960b6b1cc63e619abb77acaea5427159605afee8c8b362664f4effc7d7f7d15","src/zlib/adler32.c":"d7f1b6e44fee20ab41cef1d650776a039a2348935eb96bcbd294a4096139be3a","src/zlib/amiga/Makefile.pup":"a65cb3cd40b1b8ec77e288974dd9dc53d91ed78bbe495e94ccc84ddd423edf1f","src/zlib/amiga/Makefile.sas":"0e63cf88b505a1a04327bb666af3a985c5e11835c0c00aed4058c0dcc315d60e","src/zlib/compress.c":"5c11e1fc22e219cb986f6fa9e4ba939315227e84aef042737d38ec668b89b6d2","src/zlib/configure":"86b38f27f31d2fec76d9355872550dc63cb3949774473fd6313c5a3fd1def0e2","src/zlib/contrib/README.contrib":"ca39b78bd7ad84f1df7b0da90770c5b3fa4c8e2c75d132e9222812fac8839630","src/zlib/contrib/ada/buffer_demo.adb":"469cf566a6965767fee6b987a239ed8cedcc66614940d45a9b434331fbb435ce","src/zlib/contrib/ada/mtest.adb":"41b6f31684770334afdc4375871eb1408542f37a823a073556fdbfdb63753160","src/zlib/contrib/ada/read.adb":"fa5b989aef0c5715a3fcb15de93985f7f10aeb0a7f5716745c95ed820eb9af9c","src/zlib/contrib/ada/readme.txt":"8fe9e5303f2e8e8b746c78250e74b7c4aeb7ce6212fdce751fc3a0ce56a47fe2","src/zlib/contrib/ada/test.adb":"5e3abe79b387e09a9a42bd0543105e228f39a335240cffc33d71f0ba66ff2511","src/zlib/contrib/ada/zlib-streams.adb":"f45988e2bac76eb25a0dc981f46576e7432c35dde1790bbc2b650f0090b7fa72","src/zlib/contrib/ada/zlib-streams.ads":"969e8edb0611810fb52159dcb7c40228f4e5da810a7a3576b778116a93038c6b","src/zlib/contrib/ada/zlib-thin.adb":"03d89244ee5ec9771d9b5050e586c609f851af551b2e64eb151f1d5be0b63ae9","src/zlib/contrib/ada/zlib-thin.ads":"631ef170bde16c3ca8d412b54a0e519815b80197d208f8f393e6fe017bb0968e","src/zlib/contrib/ada/zlib.adb":"c9ca5dc34fbcdf06e2dc777b7e9dcd0ba31085b772b440eb0e12421323ab672c","src/zlib/contrib/ada/zlib.ads":"02634bec0d5e4c69d8d2859124380074a57de8d8bd928398379bfacc514236d2","src/zlib/contrib/ada/zlib.gpr":"859bb69dce38dbe9dca06753cf7ae7bd16d48f4fece8b87582dab8e30681d3de","src/zlib/contrib/amd64/amd64-match.S":"166007f7e9adb58fe8b83d85bbfe823f5e05858ba1d06edf637b78886caa2c69","src/zlib/contrib/asm686/README.686":"c21cc7147c956ecae17dd084cb41a206b086216fa521012871fb07fafd203c6d","src/zlib/contrib/asm686/match.S":"873799062495629f21cd3f779ea4b927add7aae0144e32d3594d9ce70185e99d","src/zlib/contrib/blast/Makefile":"17d5d26c24bf51cad51045a38ffb73cc3539d29e89885aa249fcfd45a8659d5c","src/zlib/contrib/blast/README":"baa763ae03d88ef7ece6eb80d9a099b43d0b57639d6d281e1c7c6ca79d81daba","src/zlib/contrib/blast/blast.c":"1ab3e479d342bfc144167b808fb00142264bc50f24a110ca88cc774e351c218e","src/zlib/contrib/blast/blast.h":"4d4e3e6f893316f0be77bfd642c857a77f1fa2925acb5df9753e543d35aa3a6a","src/zlib/contrib/blast/test.pk":"5f5c262c545574a5c221132d5ef832478d222d70b015341795b3860204140d7c","src/zlib/contrib/blast/test.txt":"9679b2c98e1283222d0782b25a1c198dc64ba9ebd1addd6dc6f643a45947cda3","src/zlib/contrib/delphi/ZLib.pas":"1b20e173443a68c189cdaa4795620fb1ac165d9e61a27a1ed2cf690f13530d6f","src/zlib/contrib/delphi/ZLibConst.pas":"84bcc580bdf397e570f86f3f5a5b8c7bf537828f30b4b72648b81911f6bf5095","src/zlib/contrib/delphi/readme.txt":"f7420ed2de77d4b498eefbbe6402a1d17dc2d411735289c78a265c7f10fdaee5","src/zlib/contrib/delphi/zlibd32.mak":"850e91b6c9ea05de61a411cbda16fa0f10118cd88bb32c4b7226988776f8d511","src/zlib/contrib/dotzlib/DotZLib.build":"b96137097669644ecb9f42cdd3399d1fce9c512788374609303f7e50abf597f0","src/zlib/contrib/dotzlib/DotZLib.chm":"20d0e3edd57f849143255a7f0df1cd59d41db464a72c0d5ab42846438a729579","src/zlib/contrib/dotzlib/DotZLib.sln":"a979198c5b8d144c1ac8f993bfb6f4085d135aa58ca9dcf63ebabf52b5c695f7","src/zlib/contrib/dotzlib/DotZLib/AssemblyInfo.cs":"314afcfb339ea95f5431047b7ab24631b11c3532c7ce5dc2094ed0cf80a7c16d","src/zlib/contrib/dotzlib/DotZLib/ChecksumImpl.cs":"e7c047a2c3bcf88d3d002ee3d2d05af414acf53cb4451efacc0f2e95a474ea0f","src/zlib/contrib/dotzlib/DotZLib/CircularBuffer.cs":"be84c9736fe7bdc2bfae70466d8fff582504e928d5b5e110fd758090090c8cb7","src/zlib/contrib/dotzlib/DotZLib/CodecBase.cs":"259bdda1b7d6052134e631fa24bfd9dca6e2362563496c8b85257b56c848908c","src/zlib/contrib/dotzlib/DotZLib/Deflater.cs":"06ba6696a3c15c53ba5fd5a1c2bf50b51f217010228fc1e4c8495ee578f480de","src/zlib/contrib/dotzlib/DotZLib/DotZLib.cs":"9837fe993fd631233cc5e53ff084d86754b97f05ec77c54b0764c2706f186134","src/zlib/contrib/dotzlib/DotZLib/DotZLib.csproj":"21606db31dfef6410dd438b73f1db68856eacabcce6c0f0411fc4f17e17001f3","src/zlib/contrib/dotzlib/DotZLib/GZipStream.cs":"8d1de9755c77046b4ac71340a0a54434ebf4fd11b085c44454d7663a9b4df1c5","src/zlib/contrib/dotzlib/DotZLib/Inflater.cs":"9016ca73818f5b6a28791abc3af6da7c4d2773b6a3804f593f6d5737a62b99ad","src/zlib/contrib/dotzlib/DotZLib/UnitTests.cs":"ad66ac08de34d253e9615b96a745f3dfeda93f4a978d65d5d3ddb9d0d9b3e099","src/zlib/contrib/dotzlib/LICENSE_1_0.txt":"36266a8fd073568394cb81cdb2b124f7fdae2c64c1a7ed09db34b4d22efa2951","src/zlib/contrib/dotzlib/readme.txt":"d04972a91b1563fb4b7acab4b9ff2b84e57368953cc0596d5f5ea17d97315fd0","src/zlib/contrib/gcc_gvmat64/gvmat64.S":"22ff411b8b1d1b04aeaa8418b68245400267dc43c6f44104f6ccd37f0daee89f","src/zlib/contrib/infback9/README":"890288f02bb3b1f9cc654b87a07fcea695f90f6b9bd672d25bf6be1da2ec1688","src/zlib/contrib/infback9/infback9.c":"0a715c85a1ce3bb8b5a18d60941ffabc0186a886bcc66ba2ee0c4115a8e274e9","src/zlib/contrib/infback9/infback9.h":"dda2302f28157fe43a6143f84802af1740393572c2766559593996fd7a5a3245","src/zlib/contrib/infback9/inffix9.h":"84a2ba4727767c18af6505f0e81d9c814489c8b9ed330a25dad433db72997e43","src/zlib/contrib/infback9/inflate9.h":"32a907676cc36e27d0fdc0d99adb83a0b23f20ab61896269216d40fecf08d349","src/zlib/contrib/infback9/inftree9.c":"0c7f10396703b230c504207fe1595a2f2f8ba9c43158c4bd79d5b22ca36e04e0","src/zlib/contrib/infback9/inftree9.h":"8ae61d52e50d2dbdb0378548ecc54fcd88f108c8b6fc30562a3ebec1ca6a599e","src/zlib/contrib/inflate86/inffas86.c":"6f266f3c7e0faca653256d0189c0f00d7dc0b062d02e25df4e1202e49369595c","src/zlib/contrib/inflate86/inffast.S":"70777bd21526680005fc34f086d108af49e2668ad86d1749e8e8100a81bfb288","src/zlib/contrib/iostream/test.cpp":"0f3c77e013949eb9c91e6b690ea894e19d97944d6b0885b82806fc3ad99680cf","src/zlib/contrib/iostream/zfstream.cpp":"8ebb9b3d521cc3392953f27658cf1f6dcb763216079f69a1518ec5ca0e42a63b","src/zlib/contrib/iostream/zfstream.h":"4369c35e66f63f52ca4a5e1759bf720507ccabb8f3f132e2f18e68686c812401","src/zlib/contrib/iostream2/zstream.h":"d0343e0c57ff58008b6f29643d289c72713aa2d653fe3dcd2e939fc77e7e20b6","src/zlib/contrib/iostream2/zstream_test.cpp":"f789df183cc58b78751985466380c656308490a9036eb48a7ef79704c3d3f229","src/zlib/contrib/iostream3/README":"43ec48ecbd95a8c45db20b107fac73b740bb11595a4737329188f06b713972cc","src/zlib/contrib/iostream3/TODO":"af5ebc83fb88f69706c8af896733784753dead147687e1c046f410c0997fd88b","src/zlib/contrib/iostream3/test.cc":"8e17fc48dfdbc6e268838b8b427491b5843b6d18bc97caa6924de9fad7abe3da","src/zlib/contrib/iostream3/zfstream.cc":"8cdd67ed0b13c192c11e5ea90e9d5782d6627eb303fbc4aa5ebda2531ec00ff8","src/zlib/contrib/iostream3/zfstream.h":"1bd74778fac45ee090dfc0f182a23e8a849152deb630606884b2635987b357b1","src/zlib/contrib/masmx64/bld_ml64.bat":"1c0561908a07ebdff271b12ed757241e1813d3db0f3551501b2595c23f0833aa","src/zlib/contrib/masmx64/gvmat64.asm":"390c1e6d63cb615b5ba042842738953f9cdc688b2fe35aaca981fd3fae213f3f","src/zlib/contrib/masmx64/inffas8664.c":"f6c585e43e6e524107566b1f10104949d0ef902159ac8203e1d98e50d4bedd62","src/zlib/contrib/masmx64/inffasx64.asm":"8448d0041fe6e8f4188fe5916181a1b274c6d35d75cfb28da60cf4f1edde44ec","src/zlib/contrib/masmx64/readme.txt":"9bb66b5028100855683853f12da0be479c7bccf74365fdbf37da2542edff9927","src/zlib/contrib/masmx86/bld_ml32.bat":"b0b05b62715d4a81a7db5b7ca4a372d109ec95634c9d3bef9e0041ff52de22fc","src/zlib/contrib/masmx86/inffas32.asm":"78d2cc88f8ed0e32ef960efc987c257bc1688afe7d031a8ba18761e95a6a7c3f","src/zlib/contrib/masmx86/match686.asm":"9e9bea3b5517b089da7d39caded07982746a33f94f0907ca7e8afefed7be36b6","src/zlib/contrib/masmx86/readme.txt":"1f29a04e0227b74e20ba1b7c764b3ca5bf596dd2c06e89bc19a05fb8f9689778","src/zlib/contrib/minizip/Makefile":"087034de3dc0223b29e64bb3a4fc3eda7b948e93d2a9ff154aecf9fed2a1eb5b","src/zlib/contrib/minizip/Makefile.am":"2313a3480a2c3745fa7ce216829cd0367058907d3a0902e5832c66c84a2fdfc6","src/zlib/contrib/minizip/MiniZip64_Changes.txt":"302c62b328647f5472fb7755249a83459be7f8ffb1fae07e8ba318fce8f4126c","src/zlib/contrib/minizip/MiniZip64_info.txt":"122719c32ef1763a5f6ba9c8cdefc1d78a76f7156b09e7b6f69b73f968e0dac3","src/zlib/contrib/minizip/configure.ac":"35330dc0c6188127afd339829d91b19739d23bf3b7301bfb04f775a6fcbbdad7","src/zlib/contrib/minizip/crypt.h":"8e872b60255b8447da99885c7159c2e1f1bb8143523bdbe71784e60f98bfd67b","src/zlib/contrib/minizip/ioapi.c":"66b39c27042f6ad12cc12efb0c82cdf100c6640b5fa959b8b866e252966113a9","src/zlib/contrib/minizip/ioapi.h":"8655408534b78dc0889a45f9359fc6d2d5c8e8d8443b81ede596f954c720ef48","src/zlib/contrib/minizip/iowin32.c":"2c05bc374d3d847c6a9f29eac9d674abba7659d1e91e34e172248fcb5c274d51","src/zlib/contrib/minizip/iowin32.h":"586f22b9c3c64da253ce2b518e0fad61f19a7b47b289fc704cc9708242294c49","src/zlib/contrib/minizip/make_vms.com":"65736d9c4888f2373d3db0a13864d150c5040453f5bc2a5c8784379a7ea67590","src/zlib/contrib/minizip/miniunz.c":"ced49f20c62536a8ffb270b35cfa4994a1dcdce45f8cf059b941c94ca0022666","src/zlib/contrib/minizip/miniunzip.1":"66d8684392167091ef0fe01598d6a0daa26e7e448e2df6c3cb257487735b83f7","src/zlib/contrib/minizip/minizip.1":"5404596e8e5587a52f563906119f32ceee30a6d97a966afa5c7afbe4d373e210","src/zlib/contrib/minizip/minizip.c":"fdfcf83979ef2324c1455d369e8add8678c804939d412ce53f8b024578ceabad","src/zlib/contrib/minizip/minizip.pc.in":"8b6670b42d8e5e519e1cc89db093efc07ba23cb1ddfedd3c93ff2df08c3ce8ac","src/zlib/contrib/minizip/mztools.c":"cd887c4af6d20823bd15f24008b10acf01969b4165d7848656bde843a92428d7","src/zlib/contrib/minizip/mztools.h":"6f82c52279e8f79165f4446be652e5741a49992ac58632470335aa34c564072a","src/zlib/contrib/minizip/unzip.c":"497adf676b1cae2a7afa834e4aba86383f7b697f5fdd03a8179ea9024a431cf9","src/zlib/contrib/minizip/unzip.h":"d8dc58fc0121b6a4b98f3028205bb253f956b1ddf791e9ced3cf44892502a01f","src/zlib/contrib/minizip/zip.c":"00f403cb7810578b4b2687dd55fb132c850c3630fba2f3704a8ab896fcc8209a","src/zlib/contrib/minizip/zip.h":"96163fc140e4bf08752e014d20a1eac3f5adcdc408366f6d79c1895f2599cf08","src/zlib/contrib/pascal/example.pas":"d842d456ecb6ff80e34cee2da31deb2072cc69ca837497bea8b8bee203403474","src/zlib/contrib/pascal/readme.txt":"02f997c37991ddae0cb986039f7b4f6fc816b3fd0ffd332cad371d04c12cf1b9","src/zlib/contrib/pascal/zlibd32.mak":"850e91b6c9ea05de61a411cbda16fa0f10118cd88bb32c4b7226988776f8d511","src/zlib/contrib/pascal/zlibpas.pas":"28b90aeeb3da8d1f6a98ab9f5f1603d08aba5bfabc50827d3f15e661268a51cf","src/zlib/contrib/puff/Makefile":"d9d738030464aaae354196c14fd928adf591832fce7d71ac1977c1d8d4923a4b","src/zlib/contrib/puff/README":"aceca4bc1bce7d9445b8bc9b6640c672d95708185f6070d3a3baae7a9d102caf","src/zlib/contrib/puff/puff.c":"6d0eef92e115a42e570b79d8b07a04af5ccbd6b3f3fbca9cbc61c49db9c9df43","src/zlib/contrib/puff/puff.h":"969b7be2a930db0cdcb19b0e5b29ae6741f5a8f663b6dba6d647e12ec60cfa8e","src/zlib/contrib/puff/pufftest.c":"8ee0da78a1221a3c2036e22eed06c2faa27a671a46565a60e10111d4ee9c30ee","src/zlib/contrib/puff/zeros.raw":"b7b0887089f7af1f6d1e0b4c0a1e8eddd10223b23554299455c6c9be71b653a3","src/zlib/contrib/testzlib/testzlib.c":"c6c37b35c6ecc9986a9041f86d879cc37a9e4d8315af9d725071eb3b2cade0c5","src/zlib/contrib/testzlib/testzlib.txt":"2359bbdc84eb8a04e0f1cd16cd81a2896e957f2ad58dab3ca78ef55b7d0dc577","src/zlib/contrib/untgz/Makefile":"8f5ab1564813e091cea8f1bb63da32fd80ac763d029277b0cabf50f60aceefe1","src/zlib/contrib/untgz/Makefile.msc":"d0f537de11d9e0e36e2a98b3971c537265f4b533b4c48797094365ad9ae8388b","src/zlib/contrib/untgz/untgz.c":"9a12d774301d252dcd38bba07ac369319da4c04c4fef8a50fcbf40aebf29c2a1","src/zlib/contrib/vstudio/readme.txt":"2a9ca40b68274f4d37649dfab9e5e867a000883592b4ab8fdaec8425a63052c3","src/zlib/contrib/vstudio/vc10/miniunz.vcxproj":"dd607d43c64581172c20c22112821924dfe862f56b2e5eb8780bdd0714d9527b","src/zlib/contrib/vstudio/vc10/miniunz.vcxproj.filters":"c3db9f97952683e688ad83c13bb94c816ac3e6b5f277fdea545b0650c125aa6d","src/zlib/contrib/vstudio/vc10/minizip.vcxproj":"af73f2cf8ae51e65e85342faeb40849a2310c97bc77def42b38d7070460a6cf0","src/zlib/contrib/vstudio/vc10/minizip.vcxproj.filters":"83db58d87f5d7ca84b6087aa1f62b15cbc296194c8cf76e47a271f9077b4f3bd","src/zlib/contrib/vstudio/vc10/testzlib.vcxproj":"1525ed0893db56db44ec68675c8da3c229dc7867166dfc0428816783d16ad43b","src/zlib/contrib/vstudio/vc10/testzlib.vcxproj.filters":"d7e04ffa467d417dfa3c0f1c64234cadc84882101bbae483f0a0f5d3d6b566a7","src/zlib/contrib/vstudio/vc10/testzlibdll.vcxproj":"3f317d8964f17901c3e68bff5deaec10b6ccc50a572235999e8097292692984c","src/zlib/contrib/vstudio/vc10/testzlibdll.vcxproj.filters":"682a485f0184aabba94e12e1b284499195f37c176d43ecee0484f31e4d636f6f","src/zlib/contrib/vstudio/vc10/zlib.rc":"e8b581eb16930e0213d37143a5f17868839b22c758b23981a29484e17093c494","src/zlib/contrib/vstudio/vc10/zlibstat.vcxproj":"2a38222d6c034d7e0b843c3f0540dc6c53dd48f942ae29f31620ca0327248c8e","src/zlib/contrib/vstudio/vc10/zlibstat.vcxproj.filters":"d9a2c381e51e4d6f027f3517db7db81656e43cec02ed9abf267a0fde6f360180","src/zlib/contrib/vstudio/vc10/zlibvc.def":"0124fea28bfee49c8a19dad0ed5a49277d451018b4affda5a389e64ad15f44d7","src/zlib/contrib/vstudio/vc10/zlibvc.sln":"e659860f705f31b87ea9139a3cb4ebe1561e120bce495383a54614fc82b49990","src/zlib/contrib/vstudio/vc10/zlibvc.vcxproj":"3108badf710e2f4a64eab4e7deae6642fb68cc0d94018e537149f1761e215133","src/zlib/contrib/vstudio/vc10/zlibvc.vcxproj.filters":"58404ba7703c68025bec64b8a17ff1fc7f3a35d15d17ae3bcc4fa753f1348425","src/zlib/contrib/vstudio/vc11/miniunz.vcxproj":"746e4c11fb8af4bcd6a9d68ba81ed1dc366a5de3bed56b291ee969ad733a7bb0","src/zlib/contrib/vstudio/vc11/minizip.vcxproj":"340617cae9cf4fcb003308021d3782ec3639e60d62d79a3aafc0a50bb55b061e","src/zlib/contrib/vstudio/vc11/testzlib.vcxproj":"589eec6ef6d818564ead938a629fda50abb6cbf8054b9f66ea780765c1a1b3db","src/zlib/contrib/vstudio/vc11/testzlibdll.vcxproj":"583bdef522b0176829f0d8139ea2a88b9cbc14379d1334f3a863989ed3df9b67","src/zlib/contrib/vstudio/vc11/zlib.rc":"e8b581eb16930e0213d37143a5f17868839b22c758b23981a29484e17093c494","src/zlib/contrib/vstudio/vc11/zlibstat.vcxproj":"51aa752698d96df065a9ece02e293492f681b59a8077f036a5a60367dc621e87","src/zlib/contrib/vstudio/vc11/zlibvc.def":"0124fea28bfee49c8a19dad0ed5a49277d451018b4affda5a389e64ad15f44d7","src/zlib/contrib/vstudio/vc11/zlibvc.sln":"27389b515997defd080519f95aff87e89fcbe8b26d73c5ebb73c544cfef4d60e","src/zlib/contrib/vstudio/vc11/zlibvc.vcxproj":"c3dd05e56159aba411475b83656275872524cb3c2fd24d690397d8b634e7e0ed","src/zlib/contrib/vstudio/vc12/miniunz.vcxproj":"1494af54570f6e93852932956d49a8c25e57b5abc1ac979945605ca9143df9f8","src/zlib/contrib/vstudio/vc12/minizip.vcxproj":"9bf128ed6760ca5f019006f178b1c65f4c7ff122dba8d297b64b0eb72feeb120","src/zlib/contrib/vstudio/vc12/testzlib.vcxproj":"367a06caa399bd09f6b9cb60706820943dd6a6cf05794275baaf421da9c2a0b7","src/zlib/contrib/vstudio/vc12/testzlibdll.vcxproj":"93416510256935d79625dc9fd349cfce6968c062d42a138bec404a26b2f92f5e","src/zlib/contrib/vstudio/vc12/zlib.rc":"92d5d3a4938a6350395934153416a7eb74353cdfb2321f45b9ee0b9b16257f39","src/zlib/contrib/vstudio/vc12/zlibstat.vcxproj":"744ff6ac0d4e2dcdf74c7d33b979fbfd2b18550947eb99bfd46dc6a73eb1c68d","src/zlib/contrib/vstudio/vc12/zlibvc.def":"0124fea28bfee49c8a19dad0ed5a49277d451018b4affda5a389e64ad15f44d7","src/zlib/contrib/vstudio/vc12/zlibvc.sln":"162e0faa80a56d89eea71a0b89377708eec2faa0dc72091cc0abb07fbdea49a0","src/zlib/contrib/vstudio/vc12/zlibvc.vcxproj":"754671c59d8996a846241af76082cc8be1aa5fc079eff530d91a9ab15a0bee5b","src/zlib/contrib/vstudio/vc14/miniunz.vcxproj":"0312511d4a30cea979c4e36edf994a537ed8a9d924f6b5c536cbcd094773c11f","src/zlib/contrib/vstudio/vc14/minizip.vcxproj":"9e7bb7a6ac723e4b2db900627c366f9bb93a351381995d9c69a50c0126f64233","src/zlib/contrib/vstudio/vc14/testzlib.vcxproj":"c3a9369670af4ebea13d036b452be7418591fbb4c03a675699facac5d8dff5d0","src/zlib/contrib/vstudio/vc14/testzlibdll.vcxproj":"69f544898b4275cd3d8e19b8f1f8cb39c1cb98a30cdb033242e4b94c57bfa150","src/zlib/contrib/vstudio/vc14/zlib.rc":"92d5d3a4938a6350395934153416a7eb74353cdfb2321f45b9ee0b9b16257f39","src/zlib/contrib/vstudio/vc14/zlibstat.vcxproj":"9c7c096b47e7875412c98525efcd16db62e094215f0011b9cd739a33ab35d48c","src/zlib/contrib/vstudio/vc14/zlibvc.def":"0124fea28bfee49c8a19dad0ed5a49277d451018b4affda5a389e64ad15f44d7","src/zlib/contrib/vstudio/vc14/zlibvc.sln":"47a50bbde8ca6336cecd8c0e4b65e515fc46ae84c7b61008ac9864162f777286","src/zlib/contrib/vstudio/vc14/zlibvc.vcxproj":"71fb6ef3b079bfdf4182af17e74c3361ead757467edfc591d9cbe303ccc47b52","src/zlib/contrib/vstudio/vc9/miniunz.vcproj":"b2b53bd9e704bfbe769b863acdc2a3368692ca149c4b4ed2a0761b0cd16c6726","src/zlib/contrib/vstudio/vc9/minizip.vcproj":"80a701fb41a61871ce1d25f6b03e571edb6c3abf0aa45375554b6fac52115eb6","src/zlib/contrib/vstudio/vc9/testzlib.vcproj":"05fc5a87682b17690d199f424f57f6ad7767b8dabb29a1039bfcb88bca1b302f","src/zlib/contrib/vstudio/vc9/testzlibdll.vcproj":"25c1cc5319f1c4b7dbdb595c3cfd6ec3ba217818b03b7055ef5ef440b575a43d","src/zlib/contrib/vstudio/vc9/zlib.rc":"e8b581eb16930e0213d37143a5f17868839b22c758b23981a29484e17093c494","src/zlib/contrib/vstudio/vc9/zlibstat.vcproj":"e8653eea37f3bef097eec2caa55e1f698c3c74c959689bc4e97568e88d2bbc60","src/zlib/contrib/vstudio/vc9/zlibvc.def":"0124fea28bfee49c8a19dad0ed5a49277d451018b4affda5a389e64ad15f44d7","src/zlib/contrib/vstudio/vc9/zlibvc.sln":"26e58d4b2cfcd941c367fb2a18537b3b9f002f2ac1278b700ea1129c50501452","src/zlib/contrib/vstudio/vc9/zlibvc.vcproj":"86aa6e33db104c0a0ed4a9f21f0db8572cc7755170217aef18219fdd74b75e9d","src/zlib/crc32.c":"a04af273e83ecc351bf3794974ab2098d8d960df4044b7b44734c41443ee26d0","src/zlib/crc32.h":"407af59d0abfea84a6507c603eb29809411797f98249614fe76a661def783ce1","src/zlib/deflate.c":"11fd6b0328b65c4ad4b5c204d892a97a9083628a7e77dc47836c8e0c799f8da0","src/zlib/deflate.h":"0ca7fb0cf1dd63001c6e9e4ff93c8dbff2fe521199be51a4dda38a11b44919f6","src/zlib/doc/algorithm.txt":"992590931e982c0765286c2d83f6e9ff0a95aabb08e28c30c52bae3e8c4bd5ad","src/zlib/doc/rfc1950.txt":"8f0475a5c984657bf26277f73df9456c9b97f175084f0c1748f1eb1f0b9b10b9","src/zlib/doc/rfc1951.txt":"5ebf4b5b7fe1c3a0c0ab9aa3ac8c0f3853a7dc484905e76e03b0b0f301350009","src/zlib/doc/rfc1952.txt":"164ef0897b4cbec63abf1b57f069f3599bd0fb7c72c2a4dee21bd7e03ec9af67","src/zlib/doc/txtvsbin.txt":"47c273bb22c9773248d380549a330e5c262266b1292154b0d3014f731cc73f47","src/zlib/examples/README.examples":"402d72eb69c2e03a25034f4b3c02b110f0f67149ecfa4fa0e4b2bf0ceb49a8b3","src/zlib/examples/enough.c":"704e273f65b62c5d2eb06d5bb10c4ccffba56544aa477f0e3957e2296c501b78","src/zlib/examples/fitblk.c":"950769163c41aff897ee41746a8685d9aa41073b1307f42da19dabe9d3fc8b85","src/zlib/examples/gun.c":"d60ca6eb0a3e62ee7fb4a1ab69e8d1525ff06b06ce46889cbdfc13fb8f7534c2","src/zlib/examples/gzappend.c":"4182d38bf97ffbdf1110df7f65c0e8fab0b28b1ea36ebba8621c14e8e76f1caa","src/zlib/examples/gzjoin.c":"90b9d6c39a5fc91cf1cc9b96b025a508a8015dc502cd9374c754b44078593f57","src/zlib/examples/gzlog.c":"433d34b71b4e769ece1cceb8bd7d902d2c0a24ccd7550ab1856a5ba87f84f835","src/zlib/examples/gzlog.h":"309556e2d7d39250924946b78e2cce0ac927857d6e1a02cab64e438f533c20c3","src/zlib/examples/zlib_how.html":"80fb647be8450bd7a07d8495244e1f061dfbdbdb53172ca24e7ffff8ace9c72f","src/zlib/examples/zpipe.c":"68140a82582ede938159630bca0fb13a93b4bf1cb2e85b08943c26242cf8f3a6","src/zlib/examples/zran.c":"840ebeb058cd0ca9e92dcb1db665932462a4695fc649b34e865b8d1ad7c5bf77","src/zlib/gzclose.c":"94446cf8cde67c30e64d0a335b0c941fd3fbad2e77f30180d12e61f9c2a5a6b8","src/zlib/gzguts.h":"1ef4741cf10441feeca5c8dde2b6c754f0cbd96fcae697d54a604757289a5e9b","src/zlib/gzlib.c":"5daf11e44149e0aba2956d35f73f04f35dca99c3dfa43f5ad43ec20b336e4a1b","src/zlib/gzread.c":"6f928512cb1792cfeab31a51ff0b211814d2e455bc75290eb31079dc1e5ad2ec","src/zlib/gzwrite.c":"ba3b7b7ad2ff7ef0c19319b8408c333491a4cd495da55d0b156bc73d9ddb4df4","src/zlib/infback.c":"abe44873b5af2ea68ea1d281d915b2800f1832f846d2c05442a4711adbe6f269","src/zlib/inffast.c":"4d496ab2a3d29df5fadc3dbff6067e039806aaceae6cfcd09ea77d46c2b848fd","src/zlib/inffast.h":"7d8c1c873ce9bc346ad6005bb9d75cce5c6352aaf7395385be216a9452a34908","src/zlib/inffixed.h":"237ba710f090e432b62ebf963bee8b302867e9691406b2d3f8ee89ee7bfef9b0","src/zlib/inflate.c":"8b6c599c3563c14c447c47db0d7dc9a16e8c246a078ec95a169ddcebaaebd811","src/zlib/inflate.h":"8ec9ac297790276f7e46a961d4c6f9f944fb1dec92401339ec2666973cc5983c","src/zlib/inftrees.c":"1960ca67384376f65b6ce8c08fdb501f8eb33923e11ef5f61a855708c6cb0a8a","src/zlib/inftrees.h":"c510b36402784b1f898be3b049b923469aa92701de2d9195aed19f6b65c0dce2","src/zlib/make_vms.com":"3064eb153a7684115f1494364f80759bc5a2c227799fdf08df7b9e6e50884720","src/zlib/msdos/Makefile.bor":"292ab363f7ffbc4ae84d37cd9bdffd2dac1003bee52d223a8489844870f20702","src/zlib/msdos/Makefile.dj2":"9208450c2ae6dcbfcc25560b5b9ca763f461e7246e37b0552474edf8fa898906","src/zlib/msdos/Makefile.emx":"c749d6ec7f88e8e639d4f03bdbdcbbe9d1c304210be4c4be621ceb22961d3d64","src/zlib/msdos/Makefile.msc":"0e021a6f42212415b060e4ad468eb415d0a8c1f343137fb9dff2cb8f9ead3027","src/zlib/msdos/Makefile.tc":"2ae12ee2a3e62f7c5a0520d0fbe4adee772bc07fe816002b07ccb43db3daa76a","src/zlib/nintendods/Makefile":"ea5823efe6830132294eddf2f56dbd7db8712244c210bb4968c431b1a91bd066","src/zlib/nintendods/README":"e362426c47b39ff6a7d6c75c6660b20abf076cdfa5e1e421716dc629a71aef95","src/zlib/old/Makefile.emx":"d811f032272aae50123a889297af3a02fbd60d1e42bbef11466462f627ff7b5b","src/zlib/old/Makefile.riscos":"d1a488b160fbfd53272b68a913283a4be08ba9d490796b196dddb2ba535b41e0","src/zlib/old/README":"551a0f4d91fe0f827a31cbdfbb4a71d1f3dc4d06564d80a3f526b749dd104d11","src/zlib/old/descrip.mms":"8ff08c35c056df9c986f23c09cf8936db63ccf12c3c42f7d18a48b36f060cff7","src/zlib/old/os2/Makefile.os2":"6ad247c00f00ff42fd2d62555e86251cef06e4079378241b5f320c227507d51d","src/zlib/old/os2/zlib.def":"ea9c61876d2e20b67ef2d9495991a32798eb40d13ede95859a2f4f03b65b9b61","src/zlib/old/visual-basic.txt":"1727650acbde9a9e6aec9438896377e46a12699cca5d46c5399cef524dedc614","src/zlib/os400/README400":"6f95a1beb0fbf943a3312eaa3dd2c279f1cef93062bebbff63dd37ac9e2aa8d6","src/zlib/os400/bndsrc":"cfe00b1528d5c27813cd6b1ad7aa34b493fd63d615623fb21fd1a7bf99d2255e","src/zlib/os400/make.sh":"143394d1e3876c61c29078c0e47310e726e1f5bd42739fe92df9ece65711655f","src/zlib/os400/zlib.inc":"c501c522185ba1f0506caf90d72f1088b34b2addc169471e949e443ab65e8a75","src/zlib/qnx/package.qpg":"90b5c8364d9dc5ef67405b352c19710ebad2905f3f20b9e56ded74661f96743b","src/zlib/test/example.c":"520799662a8286725540d6d5a356efe6f595618e5fe2e591972491d719bd99aa","src/zlib/test/infcover.c":"f654f3fcc74b33bd95cda63d13fe0ce589bcfe965544e0c17ee597d75efbd090","src/zlib/test/minigzip.c":"91089b21e692797bb6208b2b45eeb90f5f1f1e4f6b67b99dea5676f51b811193","src/zlib/treebuild.xml":"d816c764c8ec2d5b2ebfa7f053f747097926c13fce7fa8628c5d14c991411421","src/zlib/trees.c":"f2a5f949ea70dde7c23a54c793aeed630a03df4bb72417cd3aa008000c44699b","src/zlib/trees.h":"bb0a9d3ca88ee00c81adb7c636e73b97085f6ef1b52d6d58edbe2b6dc3adeb4d","src/zlib/uncompr.c":"31922aa982ee12fd28d1ce5fe6a94a3f07c2a941c821b566a881ca21845cdfaf","src/zlib/watcom/watcom_f.mak":"7e039b912f9cffaa40835281430bb284fa9042b0a0d12f6b34700a06bca6576e","src/zlib/watcom/watcom_l.mak":"d11b4064604a034725860e63e3f6d347056372e4b1675b183e20a93533b20cc9","src/zlib/win32/DLL_FAQ.txt":"9e00778319381e6275691dd3a89410c99065b8c0c5db96473abe8c859cbdefd8","src/zlib/win32/Makefile.bor":"e878fed2313417db085fea621c110889f6a32233b5b6db46e3c4e824c1d0ed6b","src/zlib/win32/Makefile.gcc":"ea8feddce7b9707253b9bf86623cf7ebe5294d7aea2b3b0b1b1c1b8cfd73009d","src/zlib/win32/Makefile.msc":"7c495d63c5afea1d77d162a41b73bab89cee952c12e4647e9684a7ac79bfc3f5","src/zlib/win32/README-WIN32.txt":"b71f1f4e4760812c3a11b2bae6f40d1066741a90e6646010a32ce50a0e348cde","src/zlib/win32/VisualC.txt":"9ec0babd46eaa012371dee2d3a8a55d9c7130f7895512c3371c737e4a7f6a997","src/zlib/win32/zlib.def":"24fa6dd00f3f4c0d14507a03ddbfa42707a04e3901bb9ff6f90096037a75185a","src/zlib/win32/zlib1.rc":"8fc5f2b5abee40ad66e6d6cfc9f926c2f446e13a7c9ee7df8bf58a266d8cade5","src/zlib/zconf.h":"9c0087f31cd45fe4bfa0ca79b51df2c69d67c44f2fbb2223d7cf9ab8d971c360","src/zlib/zconf.h.cmakein":"d740b750e9c98e6a4b4529cc2a857a3fa8001514b1ce91e0e1d9d293652bf388","src/zlib/zconf.h.in":"9c0087f31cd45fe4bfa0ca79b51df2c69d67c44f2fbb2223d7cf9ab8d971c360","src/zlib/zlib.3":"5abef003e545566e5599e5ab2e7528e978be59d54546b19d763d062f7a69bac7","src/zlib/zlib.3.pdf":"7f0f633641d782e360eff9fe831716c5767faf1000e38382a8a8c65b0b67f374","src/zlib/zlib.h":"4ddc82b4af931ab55f44d977bde81bfbc4151b5dcdccc03142831a301b5ec3c8","src/zlib/zlib.map":"7eb1070ba6bf12e6895e5da06b84a92af683827587afaa72bdd45e80b9d8e4e9","src/zlib/zlib.pc.cmakein":"2f1d0b18ce37c2af415a469857f02aee2c41a58877aff21d29e9c6db32b55cb7","src/zlib/zlib.pc.in":"04c01cc2e1a0ed123518b5855f585c93a24526dd88982c414111ea1fc9f07997","src/zlib/zlib2ansi":"d316e3e79054f5f9fe921d35f4bbf4bf0a37b859d29d2b34ae4d7d92afc3e55c","src/zlib/zutil.c":"f7fdc9ef326a2683eb33c794face54e83c751ec17f3d1ba581847a62af36ddcd","src/zlib/zutil.h":"9a63f6690fac1620aa3cecee5752af618806da438a256b4a047fbcd289cac159"},"package":"602113192b08db8f38796c4e85c39e960c145965140e918018bcde1952429655"} diff --git a/pkgs/rust/alpine-move-py.patch b/pkgs/rust/alpine-move-py.patch deleted file mode 100644 index 21be36f..0000000 --- a/pkgs/rust/alpine-move-py.patch +++ /dev/null @@ -1,23 +0,0 @@ ---- a/src/etc/rust-gdb -+++ b/src/etc/rust-gdb -@@ -12,7 +12,7 @@ - - # Find out where the pretty printer Python module is - RUSTC_SYSROOT="$("$RUSTC" --print=sysroot)" --GDB_PYTHON_MODULE_DIRECTORY="$RUSTC_SYSROOT/lib/rustlib/etc" -+GDB_PYTHON_MODULE_DIRECTORY="$RUSTC_SYSROOT/share/rust/etc" - - # Run GDB with the additional arguments that load the pretty printers - # Set the environment variable `RUST_GDB` to overwrite the call to a - # Set the environment variable `RUST_GDB` to overwrite the call to a ---- a/src/etc/rust-lldb -+++ b/src/etc/rust-lldb -@@ -8,7 +8,7 @@ - - # Find out where to look for the pretty printer Python module - RUSTC_SYSROOT=$(rustc --print sysroot) --RUST_LLDB="$RUSTC_SYSROOT/lib/rustlib/$host/bin/lldb" -+RUST_LLDB="$RUSTC_SYSROOT/share/rust/etc" - - lldb=lldb - if [ -f "$RUST_LLDB" ]; then diff --git a/pkgs/rust/build.sh b/pkgs/rust/build.sh deleted file mode 100644 index 5eefcfb..0000000 --- a/pkgs/rust/build.sh +++ /dev/null @@ -1,126 +0,0 @@ -# Based on Abyss OS phase1/devel/rust APKBUILD: -# -# Copyright (c) 2019 by the Abyss Authors -# -# Permission to use, copy, modify, and/or distribute this software for any -# purpose with or without fee is hereby granted, provided that the above -# copyright notice and this permission notice appear in all copies. -# -# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES -# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF -# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR -# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES -# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN -# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF -# OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. - -pkgname=rust -pkgver=beta - - -_clear_vendor_checksums() { - sed -i 's/\("files":{\)[^}]*/\1/' vendor/$1/.cargo-checksum.json -} - -fetch() { - curl "https://static.rust-lang.org/dist/rustc-$pkgver-src.tar.gz" -o $pkgname-$pkgver.tar.xz - curl -L "https://github.com/sfackler/rust-openssl/archive/refs/tags/openssl-v0.10.34.tar.gz" -o rust-openssl.tar.gz -# curl -L "https://github.com/sfackler/rust-openssl/archive/master.tar.gz" -o rust-openssl.tar.gz -# curl "https://static.rust-lang.org/dist/rustc-nightly-src.tar.gz" -o $pkgname- - tar -xf $pkgname-$pkgver.tar.xz - tar -xf rust-openssl.tar.gz - - mv rustc-$pkgver-src $pkgname-$pkgver - -# tar -xf rust-openssl.tar.gz - -# cp rust-$pkgver/vendor/openssl/.cargo-checksum.json rust-openssl-master/openssl/ -# cp rust-$pkgver/vendor/openssl-sys/.cargo-checksum.json rust-openssl-master/openssl-sys/ - -# rm -r rust-$pkgver/vendor/openssl-sys -# rm -r rust-$pkgver/vendor/openssl -## cp -r rust-openssl-master/openssl rust-$pkgver/vendor/openssl -# cp -r rust-openssl-master/openssl-sys rust-$pkgver/vendor/openssl-sys - - cp ../*.patch . - cd $pkgname-$pkgver - patch -p1 < ../alpine-move-py.patch - patch -p1 < ../abyss-install-template-shebang.patch - patch -p1 < ../abyss-libunwind.patch - patch -p1 < ../abyss-libz.patch -# patch -p1 < ../vendored-ssl.patch -# patch -p1 < ../openbsd-libressl.patch - patch -p1 < ../alpine-crt.patch - patch -p1 < ../libexec.patch - patch -p1 < ../llvm_crt.patch - patch -p1 < ../unfreeze.patch - - sed -i /LD_LIBRARY_PATH/d src/bootstrap/bootstrap.py - _clear_vendor_checksums libc - _clear_vendor_checksums openssl-sys - _clear_vendor_checksums openssl-src - _clear_vendor_checksums openssl - - cp -r ../rust-openssl-openssl-v0.10.34/openssl/ vendor/ - cp -r ../rust-openssl-openssl-v0.10.34/openssl-sys/ vendor/ - sed vendor/openssl/Cargo.toml -i -e 's/0.10.34/0.10.30/g' - sed vendor/openssl/Cargo.toml -i -e 's/0.9.62/0.9.58/g' - sed vendor/openssl-sys/Cargo.toml -i -e 's/0.9.62/0.9.58/g' - - rm -rf src/llvm-project/ - - cd .. - ln -s /usr/bin/gmake make -} - -build() { - cd $pkgname-$pkgver - - OPENSSL_LIB_DIR=/usr/lib/ ./configure \ - --build="x86_64-unknown-linux-musl" \ - --host="x86_64-unknown-linux-musl" \ - --target="x86_64-unknown-linux-musl" \ - --prefix="/usr" \ - --release-channel="beta" \ - --enable-local-rust \ - --local-rust-root="/usr" \ - --disable-docs \ - --enable-extended \ - --tools="cargo,rls,rustfmt,src" \ - --enable-vendor \ - --disable-locked-deps \ - --enable-option-checking \ - --python="python" \ - --llvm-root="/usr" \ - --enable-llvm-link-shared \ - --set="target.x86_64-unknown-linux-musl.llvm-config=/usr/bin/llvm-config" \ - --set="rust.musl-root=/usr" \ - --set="target.x86_64-unknown-linux-musl.musl-root=/usr" \ - --set="target.x86_64-unknown-linux-musl.crt-static=false" \ - --set="target.x86_64-unknown-linux-musl.cc=cc" \ - --set="target.x86_64-unknown-linux-musl.cxx=c++" \ - --set="target.x86_64-unknown-linux-musl.ar=ar" \ - --set="target.x86_64-unknown-linux-musl.linker=cc" \ - --set="target.x86_64-unknown-linux-musl.musl-root=/usr" \ - --set="target.x86_64-unknown-linux-musl.crt-static=false" \ - --set="target.x86_64-unknown-linux-musl.cc=cc" \ - --set="target.x86_64-unknown-linux-musl.cxx=c++" \ - --set="target.x86_64-unknown-linux-musl.ar=ar" \ - --set="target.x86_64-unknown-linux-musl.linker=cc" - - sed 's/#deny-warnings = .*/deny-warnings = false/' -i config.toml - sed 's|deny(warnings,|deny(|' -i src/bootstrap/lib.rs - - PATH=$(pwd)"/..:$PATH" ./x.py build -} - -package() { - cd $pkgname-$pkgver - DESTDIR="$pkgdir" ./x.py install -} - -license() { - cd $pkgname-$pkgver - cat LICENSE-MIT -# cat COPYING -} diff --git a/pkgs/rust/make b/pkgs/rust/make deleted file mode 120000 index b3fd52a..0000000 --- a/pkgs/rust/make +++ /dev/null @@ -1 +0,0 @@ -/usr/bin/gmake \ No newline at end of file diff --git a/pkgs/rust/openbsd-libressl.patch b/pkgs/rust/openbsd-libressl.patch deleted file mode 100644 index 76c3ce3..0000000 --- a/pkgs/rust/openbsd-libressl.patch +++ /dev/null @@ -1,14 +0,0 @@ -$OpenBSD: patch-vendor_openssl-sys_build_main_rs,v 1.5 2020/11/05 09:21:34 semarie Exp $ -The LibreSSL version in -current isn't explicitly supported. -Index: vendor/openssl-sys/build/main.rs ---- a/vendor/openssl-sys/build/main.rs.orig -+++ b/vendor/openssl-sys/build/main.rs -@@ -221,7 +221,7 @@ See rust-openssl README for more information: - (3, 1, 0) => ('3', '1', '0'), - (3, 1, _) => ('3', '1', 'x'), - (3, 2, 0) => ('3', '2', '0'), -- _ => version_error(), -+ _ => ('3', '2', '0'), - }; - - println!("cargo:libressl=true"); diff --git a/pkgs/rust/vendored-ssl.patch b/pkgs/rust/vendored-ssl.patch deleted file mode 100644 index a72f51a..0000000 --- a/pkgs/rust/vendored-ssl.patch +++ /dev/null @@ -1,65 +0,0 @@ ---- a/vendor/openssl-sys/Cargo.toml -+++ b/vendor/openssl-sys/Cargo.toml -@@ -33,12 +33,11 @@ - - [build-dependencies.openssl-src] - version = "111.0.1" --optional = true - - [build-dependencies.pkg-config] - version = "0.3.9" - - [features] --vendored = ["openssl-src"] -+vendored = [] - [target."cfg(target_env = \"msvc\")".build-dependencies.vcpkg] - version = "0.2.8" -Only in ../../rust-1.49.0/vendor/openssl-sys: Cargo.toml.1 ---- a/vendor/openssl-sys/build/main.rs -+++ b/vendor/openssl-sys/build/main.rs -@@ -2,7 +2,6 @@ - - extern crate autocfg; - extern crate cc; --#[cfg(feature = "vendored")] - extern crate openssl_src; - extern crate pkg_config; - #[cfg(target_env = "msvc")] -@@ -16,7 +15,6 @@ - mod cfgs; - - mod find_normal; --#[cfg(feature = "vendored")] - mod find_vendored; - - enum Version { -@@ -44,15 +42,14 @@ - } - - fn find_openssl(target: &str) -> (PathBuf, PathBuf) { -- #[cfg(feature = "vendored")] - { - // vendor if the feature is present, unless - // OPENSSL_NO_VENDOR exists and isn't `0` -- if env("OPENSSL_NO_VENDOR").map_or(true, |s| s == "0") { -+ //if env("OPENSSL_NO_VENDOR").map_or(true, |s| s == "0") { - return find_vendored::get_openssl(target); -- } -+ //} - } -- find_normal::get_openssl(target) -+ //find_normal::get_openssl(target) - } - - fn main() { ---- a/vendor/openssl-src/src/lib.rs -+++ b/vendor/openssl-src/src/lib.rs -@@ -58,7 +58,7 @@ - { - Command::new("gmake") - } else { -- Command::new("make") -+ Command::new("gmake") - } - } - diff --git a/pkgs/squashfs-tools/build.sh b/pkgs/squashfs-tools/build.sh index 03c88df..11e09d7 100644 --- a/pkgs/squashfs-tools/build.sh +++ b/pkgs/squashfs-tools/build.sh @@ -9,13 +9,13 @@ fetch() { build() { cd $pkgname-$pkgver cd $pkgname - gmake + bad --gmake gmake } package() { cd $pkgname-$pkgver cd $pkgname - gmake install INSTALL_DIR=$pkgdir/usr/bin + bad --gmake gmake install INSTALL_DIR=$pkgdir/usr/bin } license() { diff --git a/pkgs/strace/build.sh b/pkgs/strace/build.sh new file mode 100644 index 0000000..017059c --- /dev/null +++ b/pkgs/strace/build.sh @@ -0,0 +1,28 @@ +pkgname=strace +pkgver=5.13 + +fetch() { + curl "https://strace.io/files/$pkgver/strace-$pkgver.tar.xz" -o $pkgname-$pkgver.tar.xz + tar -xf $pkgname-$pkgver.tar.xz +} + +build() { + cd $pkgname-$pkgver + ./configure \ + --prefix=/usr \ + --build=$TRIPLE \ + --host=$TRIPLE + + make +} + +package() { + cd $pkgname-$pkgver + make install DESTDIR=$pkgdir +} + +license() { + cd $pkgname-$pkgver + cat LICENSE +# cat COPYING +} diff --git a/pkgs/toybox/build.sh b/pkgs/toybox/build.sh deleted file mode 100644 index 62eb73b..0000000 --- a/pkgs/toybox/build.sh +++ /dev/null @@ -1,43 +0,0 @@ -pkgver=0.8.5 -pkgname=toybox -pkgrel=1 -deps="musl:pci-ids" - -fetch() { - curl "http://www.landley.net/toybox/downloads/$pkgname-$pkgver.tar.gz" -o $pkgname-$pkgver.tar.gz - tar -xf $pkgname-$pkgver.tar.gz - cd $pkgname-$pkgver - patch -p1 < ../../ls-colour.patch - patch -p1 < ../../mksh-make.patch -} - -build() { - cd $pkgname-$pkgver - CPUS=1 gmake defconfig - CPUS=1 gmake -} - -package() { - cd $pkgname-$pkgver -# install -d $pkgdir/bin -# install -Dm755 ./toybox $pkgdir/bin/ -# ln -sr $pkgdir/bin/toybox $pkgdir/bin/ln -# ln -sr $pkgdir/bin/toybox $pkgdir/bin/uname -# install -d $pkgdir/usr/bin -# ln -sr $pkgdir/bin/toybox $pkgdir/usr/bin/install -# ln -sr $pkgdir/bin/toybox $pkgdir/usr/bin/lspci - gmake PREFIX=$pkgdir install - - # Provided by NetBSD Curses - rm $pkgdir/usr/bin/clear - rm $pkgdir/usr/bin/reset - - # LLVM Provides this - rm $pkgdir/usr/bin/readelf -# rm $pkgdir/usr/bin/tar -} - -license() { - cd $pkgname-$pkgver - cat LICENSE -} diff --git a/pkgs/toybox/mksh-make.patch b/pkgs/toybox/mksh-make.patch deleted file mode 100644 index ddd6241..0000000 --- a/pkgs/toybox/mksh-make.patch +++ /dev/null @@ -1,14 +0,0 @@ -diff --git a/scripts/make.sh b/scripts/make.sh -index 5b2d5d81..2c5e4b93 100755 ---- a/scripts/make.sh -+++ b/scripts/make.sh -@@ -106,8 +106,7 @@ genbuildsh() - echo '$BUILD $FILES $LINK' - } - --if ! cmp -s <(genbuildsh 2>/dev/null | head -n 6 ; echo LINK="'"$LDOPTIMIZE $LDFLAGS) \ -- <(head -n 7 generated/build.sh 2>/dev/null | $SED '7s/ -o .*//') -+if [ "$(genbuildsh 2>/dev/null | head -n 6 ; echo LINK="'"$LDOPTIMIZE $LDFLAGS)" != "$(head -n 7 generated/build.sh 2>/dev/null | $SED '7s/ -o .*//')" ] - then - echo -n "Library probe" - diff --git a/pkgs/vulkan-validation-layers/build.sh b/pkgs/vulkan-validation-layers/build.sh new file mode 100644 index 0000000..fde01bd --- /dev/null +++ b/pkgs/vulkan-validation-layers/build.sh @@ -0,0 +1,34 @@ +pkgname=vulkan-validation-layers +pkgver=1.2.184 + +fetch() { + curl -L "https://github.com/KhronosGroup/Vulkan-ValidationLayers/archive/refs/tags/v$pkgver.tar.gz" -o $pkgname-$pkgver.tar.xz + tar -xf $pkgname-$pkgver.tar.xz + mv Vulkan-ValidationLayers-$pkgver $pkgname-$pkgver + mkdir $pkgname-$pkgver/build +} + +build() { + cd $pkgname-$pkgver + cd build + ../scripts/update_deps.py + cmake -G Ninja ../ \ + -DCMAKE_BUILD_TYPE=Release \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DCMAKE_INSTALL_LIBDIR=lib \ + -DBUILD_WSI_XLIB_SUPPORT=OFF \ + -DBUILD_WSI_XCB_SUPPORT=OFF + samu +} + +package() { + cd $pkgname-$pkgver + cd build + DESTDIR=$pkgdir samu install +} + +license() { + cd $pkgname-$pkgver + cat LICENSE +# cat COPYING +} diff --git a/pkgs/wld/..tar.xz b/pkgs/wld/..tar.xz deleted file mode 100644 index 79257c8..0000000 Binary files a/pkgs/wld/..tar.xz and /dev/null differ diff --git a/build_utils b/scripts/build_utils similarity index 70% rename from build_utils rename to scripts/build_utils index 7b69825..1ac38a9 100755 --- a/build_utils +++ b/scripts/build_utils @@ -18,9 +18,9 @@ cp_packages (){ fi echo "Going to copy: $pkg to $1" - tar -xf pkgs/${pkg}/out/${pkg}.*.tar.xz -C $1 - tar -xf pkgs/${pkg}/out/${pkg}-dev.*.tar.xz -C $1 2> /dev/null - tar -xf pkgs/${pkg}/out/${pkg}-doc.*.tar.xz -C $1 2> /dev/null + tar -xf pkgs/${pkg}/out/${pkg}.*.tar.zst -I zstd -C $1 + tar -xf pkgs/${pkg}/out/${pkg}-dev.*.tar.zst -I zstd -C $1 2> /dev/null + tar -xf pkgs/${pkg}/out/${pkg}-doc.*.tar.zst -I zstd -C $1 2> /dev/null done } diff --git a/scripts/buildbase.sh b/scripts/buildbase.sh new file mode 100755 index 0000000..dde13c9 --- /dev/null +++ b/scripts/buildbase.sh @@ -0,0 +1,4 @@ +#!/bin/sh + +cd base + diff --git a/createimg.sh b/scripts/createimg.sh similarity index 100% rename from createimg.sh rename to scripts/createimg.sh diff --git a/geninitrd.sh b/scripts/geninitrd.sh similarity index 100% rename from geninitrd.sh rename to scripts/geninitrd.sh diff --git a/scripts/gentar.sh b/scripts/gentar.sh new file mode 100644 index 0000000..6c514f0 --- /dev/null +++ b/scripts/gentar.sh @@ -0,0 +1,6 @@ +#!/bin/sh + +. ./build_utils + +packages=(musl mksh bmake gmake llvm libressl mandoc cmake curl reflex byacc om4 zlib samurai libffi python ca-certificates zlib expat gettext-tiny git kati netbsd-curses kakoune iglunix rust toybox busybox less pci-ids libexecinfo) +cp_packages $(pwd)/_pi_install diff --git a/iglu.sh b/scripts/iglu.sh similarity index 99% rename from iglu.sh rename to scripts/iglu.sh index 0de0116..b0ed380 100755 --- a/iglu.sh +++ b/scripts/iglu.sh @@ -187,7 +187,7 @@ elif [ "$i" = "1" ]; then deps=$(grep deps /tmp/iglunix/$bname_we/usr/share/iglupkg/$bname | tr '=' '\n' | grep -v deps | tr ':' '\n') for dep in $deps; do stat /usr/share/iglupkg/$dep > /dev/null 2> /dev/null || dep_not_found $dep - done + done tar -I zstd -xf $1 -C / rm -r /tmp/iglunix/$bname_we elif [ "$f" = "1" ]; then diff --git a/scripts/iglupkg b/scripts/iglupkg new file mode 100755 index 0000000..42146d9 --- /dev/null +++ b/scripts/iglupkg @@ -0,0 +1,125 @@ +#!/bin/sh +export JOBS="$(nproc)" + +#export RUSTFLAGS="-C target-cpu=native" +export CC=clang +export CXX=clang++ +export ARCH=$(uname -m) +export KERN=linux +export ABI=musl +export TRIPLE=$ARCH-unknown-$KERN-$ABI + +#export CFLAGS="-march=native" +#export CXXFLAGS="-march=native" + +stat /etc/iglupkg.conf > /dev/null 2> /dev/null && . /etc/iglupkg.conf + +export SAMUFLAGS=-j$JOBS + +. ./build.sh +dir=$(pwd) +stat out > /dev/null && rm -rf out +mkdir out + +srcdir=$(pwd)/src + +function do_fetch() { + mkdir -p src + cd src + srcdir=$(pwd) + srcdir=$srcdir fetch + touch $srcdir/.fetched +} + +function do_build() { + srcdir=$(pwd) + srcdir=$srcdir build + touch $srcdir/.built +} + +stat src/.fetched > /dev/null 2>/dev/null || do_fetch +stat src/.fetched > /dev/null 2>/dev/null && echo '========================' +stat src/.fetched > /dev/null 2>/dev/null && echo 'Warning: Already Fetched' +stat src/.fetched > /dev/null 2>/dev/null && echo '========================' + +cd $srcdir +MAKEFLAGS=-j$JOBS stat .built > /dev/null 2> /dev/null || build + +stat .built > /dev/null 2>/dev/null && echo '========================' +stat .built > /dev/null 2>/dev/null && echo ' Warning: Already Built ' +stat .built > /dev/null 2>/dev/null && echo '========================' + +cd $srcdir + +echo " +. $dir/build.sh +mkdir -p $dir/out/$pkgname +pkgdir=$dir/out/$pkgname package + + +mkdir -p $dir/out/$pkgname/usr/share/iglupkg + +cat > $dir/out/$pkgname/usr/share/iglupkg/$pkgname << EOF +[pkg] +name=$pkgname +ver=$pkgver +deps=$deps + +[license] +EOF + +chmod 644 $dir/out/$pkgname/usr/share/iglupkg/$pkgname +cd $srcdir +license >> $dir/out/$pkgname/usr/share/iglupkg/$pkgname + +echo >> $dir/out/$pkgname/usr/share/iglupkg/$pkgname +echo [fs] >> $dir/out/$pkgname/usr/share/iglupkg/$pkgname + +cd $dir/out/$pkgname/ +find * >> $dir/out/$pkgname/usr/share/iglupkg/$pkgname + +cd $dir/out/$pkgname +tar -I zstd -cf ../$pkgname.$pkgver.tar.zst * +if [ $ext ]; then + +echo $ext | tr ':' '\n' | while read e; do + echo \$e + + cd $srcdir + mkdir -p $dir/out/$pkgname-\$e + pkgdir=$dir/out/$pkgname-\$e + + package_\$(echo \$e | tr '-' '_') + + mkdir -p $dir/out/$pkgname-\$e/usr/share/iglupkg + + cat > $dir/out/$pkgname-\$e/usr/share/iglupkg/$pkgname-\$e << EOF +[pkg] +name=$pkgname-\$e +ver=$pkgver +deps=$pkgname + +[license] +EOF + + chmod 644 $dir/out/$pkgname-\$e/usr/share/iglupkg/$pkgname-\$e + cd $srcdir + license >> $dir/out/$pkgname-\$e/usr/share/iglupkg/$pkgname-\$e + + echo >> $dir/out/$pkgname-\$e/usr/share/iglupkg/$pkgname-\$e + echo [fs] >> $dir/out/$pkgname-\$e/usr/share/iglupkg/$pkgname-\$e + + cd $dir/out/$pkgname-\$e + + find * >> $dir/out/$pkgname-\$e/usr/share/iglupkg/$pkgname-\$e + + cd $dir/out/$pkgname-\$e + tar -I zstd -cf ../$pkgname-\$e.$pkgver.tar.zst * + +done + +fi + + +" | sh +cd $dir diff --git a/iglupkg.sh b/scripts/iglupkg.sh similarity index 87% rename from iglupkg.sh rename to scripts/iglupkg.sh index aae71c0..b64e3ae 100755 --- a/iglupkg.sh +++ b/scripts/iglupkg.sh @@ -25,13 +25,14 @@ function do_fetch() { mkdir -p src cd src srcdir=$(pwd) fetch + touch .fetched } srcdir=$(pwd)/src -stat src > /dev/null 2>/dev/null || do_fetch -stat src > /dev/null 2>/dev/null && echo '==========================================' -stat src > /dev/null 2>/dev/null && echo 'Warning: `./src/` found: not running fetch' -stat src > /dev/null 2>/dev/null && echo '==========================================' +stat src/.fetched > /dev/null 2>/dev/null || do_fetch +stat src/.fetched > /dev/null 2>/dev/null && echo '========================' +stat src/.fetched > /dev/null 2>/dev/null && echo 'Warning: Already Fetched' +stat src/.fetched > /dev/null 2>/dev/null && echo '========================' cd $srcdir diff --git a/scripts/install-pc.sh b/scripts/install-pc.sh new file mode 100644 index 0000000..7edaf98 --- /dev/null +++ b/scripts/install-pc.sh @@ -0,0 +1,3 @@ +#!/bin/sh +# TODO: +# should create x86_64 compatible, bios booting ISO diff --git a/scripts/install-pi.sh b/scripts/install-pi.sh new file mode 100755 index 0000000..0d8a034 --- /dev/null +++ b/scripts/install-pi.sh @@ -0,0 +1,115 @@ +#!/bin/sh + + +DIR=$(realpath $(dirname $0)/..) +echo $DIR +cd $DIR + +function install_pkg { + echo Installing $2 + cd $DIR/$1/$2/ + stat $DIR/$1/$2/out/*.tar.* > /dev/null 2> /dev/null && echo "Already built $2" + stat $DIR/$1/$2/out/*.tar.* > /dev/null 2> /dev/null || iglupkg + + stat $DIR/out/usr/share/iglupkg/$2 > /dev/null 2> /dev/null && echo "Already installed $2" + stat $DIR/out/usr/share/iglupkg/$2 > /dev/null 2> /dev/null || tar -C $DIR/out -xf $DIR/$1/$2/out/$2.*.tar.zst -I zstd + + stat $DIR/$1/$2/out/$2-dev.tar.zst > /dev/null 2> /dev/null || return + stat $DIR/out/usr/share/iglupkg/$2-dev > /dev/null 2> /dev/null && echo "Already installed $2-dev" + stat $DIR/out/usr/share/iglupkg/$2-dev > /dev/null 2> /dev/null || tar -C $DIR/out -xf $DIR/$1/$2/out/$2-dev.*.tar.zst -I zstd + + cd $DIR +} + +# install_pkg linux raspberrypi-linux +install_pkg linux raspberrypi-firmware +install_pkg linux linux-firmware +install_pkg linux make_ext4fs +install_pkg linux musl +install_pkg linux busybox + +install_pkg base bmake +install_pkg base byacc +install_pkg base ca-certificates +install_pkg base cmake +install_pkg base curl +install_pkg base expat +install_pkg base fakeroot +install_pkg base gettext-tiny +install_pkg base git +install_pkg base go +install_pkg base iglunix +install_pkg base kakoune +install_pkg base kati +install_pkg base lc-make +install_pkg base libexecinfo +install_pkg base libffi +install_pkg base libnl-tiny +install_pkg base llvm +install_pkg base meson +install_pkg base mksh +install_pkg base netbsd-curses +install_pkg base om4 +install_pkg base openpam +install_pkg base openssh +install_pkg base openssl +install_pkg base pci-ids +install_pkg base pfetch +install_pkg base pkgconf +install_pkg base python +install_pkg base python-mako +install_pkg base python-setuptools +install_pkg base flex +install_pkg base rust +install_pkg base samurai +install_pkg base toybox +install_pkg base wpa_supplicant +install_pkg base zig +install_pkg base zlib-ng +install_pkg base zstd + +exit 1 + +function install + +linux/raspberrypi-linux +linux/raspberrypi-firmware +linux/busybox + +base/bmake +base/byacc +base/ca-certificates +base/cmake +base/curl +base/expat +base/gettext-tiny +base/git +base/go +base/iglunix +base/kakoune +base/kati +base/lc-make +base/libexecinfo +base/libffi +base/libnl-tiny +base/llvm +base/meson +base/mksh +base/netbsd-curses +base/om4 +base/openpam +base/openssl +base/pci-ids +base/pfetch +base/pkgconf +base/python +base/python-mako +base/python-setuptools +base/reflex +base/rust +base/samurai +base/toybox +base/wpa_supplicant +base/zig +base/zlib-ng +base/zstd diff --git a/scripts/install.sh b/scripts/install.sh new file mode 100644 index 0000000..b2b349f --- /dev/null +++ b/scripts/install.sh @@ -0,0 +1,4 @@ +#!/bin/sh + + + diff --git a/repover.sh b/scripts/repover.sh similarity index 88% rename from repover.sh rename to scripts/repover.sh index dc8e18e..8c2f5f0 100755 --- a/repover.sh +++ b/scripts/repover.sh @@ -5,7 +5,7 @@ REPO_MAJOR=$(echo $REPO_VER | tr '.' ' ' | awk '{ print $1; }') REPO_MINOR=$(echo $REPO_VER | tr '.' ' ' | awk '{ print $2; }') REPO_MICRO=$(echo $REPO_VER | tr '.' ' ' | awk '{ print $3; }') -LOCAL_VER=$(cat pkgs/$1/build.sh | grep 'pkgver=' | tr '=' ' ' | awk '{ print $2; }') +LOCAL_VER=$(cat */$1/build.sh | grep 'pkgver=' | tr '=' ' ' | awk '{ print $2; }') LOCAL_MAJOR=$(echo $LOCAL_VER | tr '.' ' ' | awk '{ print $1; }') LOCAL_MINOR=$(echo $LOCAL_VER | tr '.' ' ' | awk '{ print $2; }') diff --git a/updatever.sh b/scripts/updatever.sh similarity index 100% rename from updatever.sh rename to scripts/updatever.sh diff --git a/snd/libpulse/build.sh b/snd/libpulse/build.sh new file mode 100644 index 0000000..1778373 --- /dev/null +++ b/snd/libpulse/build.sh @@ -0,0 +1,44 @@ +pkgname=libpulse +pkgver=15.99.1 + +fetch() { + curl -L "https://freedesktop.org/software/pulseaudio/releases/pulseaudio-$pkgver.tar.xz" -o $pkgname-$pkgver.tar.bz2 + tar -xf $pkgname-$pkgver.tar.bz2 + mv pulseaudio-$pkgver $pkgname-$pkgver + mkdir $pkgname-$pkgver/build + cd $pkgname-$pkgver +} + +build() { + cd $pkgname-$pkgver + cd build + meson .. \ + --buildtype=release \ + --prefix=/usr \ + --libexecdir=lib \ + -Ddaemon=false \ + -Dtests=false \ + -Ddoxygen=false \ + -Dclient=true \ + -Dgtk=disabled \ + -Dman=false + samu +} + +package() { + cd $pkgname-$pkgver + cd build + DESTDIR=$pkgdir samu install + rm -rf $pkgdir/usr/share/locale + rm -rf $pkgdir/usr/share/bash* +} + +backup() { + return +} + +license() { + cd $pkgname-$pkgver + cat LICENSE +# cat COPYING +} diff --git a/snd/libsndfile/build.sh b/snd/libsndfile/build.sh new file mode 100644 index 0000000..e56e658 --- /dev/null +++ b/snd/libsndfile/build.sh @@ -0,0 +1,34 @@ +pkgname=libsndfile +pkgver=1.0.31 + +fetch() { + curl -L "https://github.com/libsndfile/libsndfile/releases/download/$pkgver/libsndfile-$pkgver.tar.bz2" -o $pkgname-$pkgver.tar.bz2 + tar -xf $pkgname-$pkgver.tar.bz2 + mkdir $pkgname-$pkgver/build +} + +build() { + cd $pkgname-$pkgver + cd build + cmake -G Ninja ../ \ + -DCMAKE_BUILD_TYPE=Release \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DCMAKE_INSTALL_LIBDIR=lib \ + -DBUILD_SHARED_LIBS=ON + samu +} + +package() { + cd $pkgname-$pkgver + cd build + DESTDIR=$pkgdir samu install +} + +backup() { + return +} + +license() { + cd $pkgname-$pkgver + cat COPYING +} diff --git a/snd/ncspot/build.sh b/snd/ncspot/build.sh new file mode 100644 index 0000000..379ec6b --- /dev/null +++ b/snd/ncspot/build.sh @@ -0,0 +1,56 @@ +pkgname=ncspot +pkgver=0.9.6 + +_clear_vendor_checksums() { + sed -i 's/\("files":{\)[^}]*/\1/' vendor/$1/.cargo-checksum.json +} + +fetch() { + curl -L "https://github.com/hrkfdn/ncspot/archive/refs/tags/v$pkgver.tar.gz" -o $pkgname-$pkgver.tar.gz + # # curl -L "https://github.com/sfackler/rust-openssl/archive/refs/tags/openssl-v0.10.34.tar.gz" -o rust-openssl.tar.gz + # curl -L "https://github.com/Ella-0/ncurses-rs/archive/refs/heads/master.tar.gz" -o ncurses.tar.gz + # curl -L "https://github.com/Ella-0/pancurses/archive/refs/heads/master.tar.gz" -o pancurses.tar.gz + # tar -xf ncurses.tar.gz + # mv ncurses-rs-master ncurses + # tar -xf pancurses.tar.gz + # mv pancurses-master pancurses + tar -xf $pkgname-$pkgver.tar.gz + # cp ../cursive_ptr.patch . + cd $pkgname-$pkgver + mkdir -p .cargo + cargo vendor > .cargo/config + # # _clear_vendor_checksums openssl-sys + # # _clear_vendor_checksums openssl + # _clear_vendor_checksums ncurses + # _clear_vendor_checksums pancurses + # _clear_vendor_checksums cursive + # # cp -r ../rust-openssl-openssl-v0.10.34/openssl/ vendor/ + # # cp -r ../rust-openssl-openssl-v0.10.34/openssl-sys/ vendor/ + # cp -r ../ncurses/ vendor/ + # cp -r ../pancurses/ vendor/ + # # sed vendor/openssl/Cargo.toml -i -e 's/0.10.34/0.10.33/g' + # # sed vendor/openssl/Cargo.toml -i -e 's/0.9.62/0.9.61/g' + # # sed vendor/openssl-sys/Cargo.toml -i -e 's/0.9.62/0.9.61/g' + # sed vendor/ncurses/Cargo.toml -i -e 's/5.100.0/5.101.0/g' + # patch -p1 < ../cursive_ptr.patch +} + +build() { + cd $pkgname-$pkgver + cargo build --release --no-default-features --features cursive/termion-backend,pulseaudio_backend +} + +package() { + cd $pkgname-$pkgver + install -Dm 755 target/release/$pkgname $pkgdir/usr/bin/ +} + +backup() { + return +} + +license() { + cd $pkgname-$pkgver + cat LICENSE +# cat COPYING +} diff --git a/snd/ncspot/cursive_ptr.patch b/snd/ncspot/cursive_ptr.patch new file mode 100644 index 0000000..342ef6c --- /dev/null +++ b/snd/ncspot/cursive_ptr.patch @@ -0,0 +1,11 @@ +--- a/vendor/cursive/src/backends/curses/pan.rs ++++ b/vendor/cursive/src/backends/curses/pan.rs +@@ -70,7 +70,7 @@ + pancurses::mouseinterval(0); + pancurses::mousemask( + pancurses::ALL_MOUSE_EVENTS | pancurses::REPORT_MOUSE_POSITION, +- ::std::ptr::null_mut(), ++ None, + ); + + // This asks the terminal to provide us with mouse drag events diff --git a/snd/pipewire/build.sh b/snd/pipewire/build.sh new file mode 100644 index 0000000..0d54b2a --- /dev/null +++ b/snd/pipewire/build.sh @@ -0,0 +1,77 @@ +pkgname=pipewire +pkgver=0.3.48 +mver=0.4.1 + +fetch() { + curl "https://gitlab.freedesktop.org/pipewire/pipewire/-/archive/$pkgver/pipewire-$pkgver.tar.bz2" -o $pkgname-$pkgver.tar.bz2 + curl "https://gitlab.freedesktop.org/pipewire/media-session/-/archive/$mver/media-session-$mver.tar.bz2" -O + tar -xf $pkgname-$pkgver.tar.bz2 + mkdir $pkgname-$pkgver/build + tar -xf media-session-$mver.tar.bz2 -C $pkgname-$pkgver/subprojects/ + mv $pkgname-$pkgver/subprojects/media-session-$mver $pkgname-$pkgver/subprojects/media-session + cd $pkgname-$pkgver + patch -p1 < ../../libudev-zero.patch +} + +build() { + cd $pkgname-$pkgver + cd build + meson .. \ + --buildtype=release \ + --prefix=/usr \ + --libexecdir=lib \ + -Ddocs=disabled \ + -Dexamples=disabled \ + -Dman=disabled \ + -Dinstalled_tests=disabled \ + -Dgstreamer=disabled \ + -Dsystemd=disabled \ + -Dpipewire-jack=disabled \ + -Dpipewire-alsa=enabled \ + -Dpipewire-v4l2=disabled \ + -Dspa-plugins=enabled \ + -Dalsa=enabled \ + -Daudiomixer=enabled \ + -Dbluez5=disabled \ + -Dcontrol=enabled \ + -Daudiotestsrc=enabled \ + -Dffmpeg=disabled \ + -Djack=disabled \ + -Dsupport=enabled \ + -Devl=disabled \ + -Dv4l2=disabled \ + -Ddbus=enabled \ + -Dlibcamera=disabled \ + -Dvideoconvert=disabled \ + -Dvideotestsrc=disabled \ + -Dvolume=enabled \ + -Dvulkan=disabled \ + -Dpw-cat=enabled \ + -Dudev=enabled \ + -Dsdl2=disabled \ + -Dsndfile=enabled \ + -Dlibpulse=enabled \ + -Droc=disabled \ + -Davahi=disabled \ + -Dlibusb=disabled \ + -Draop=disabled \ + -Dlv2=disabled \ + -Dsession-managers="['media-session']" + + samu +} + +package() { + cd $pkgname-$pkgver + cd build + DESTDIR=$pkgdir samu install +} + +backup() { + return +} + +license() { + cd $pkgname-$pkgver + cat COPYING +} diff --git a/snd/pipewire/libudev-zero.patch b/snd/pipewire/libudev-zero.patch new file mode 100644 index 0000000..a34220e --- /dev/null +++ b/snd/pipewire/libudev-zero.patch @@ -0,0 +1,37 @@ +diff --git a/spa/plugins/alsa/alsa-udev.c b/spa/plugins/alsa/alsa-udev.c +index 61ad1af..52510b5 100644 +--- a/spa/plugins/alsa/alsa-udev.c ++++ b/spa/plugins/alsa/alsa-udev.c +@@ -148,9 +148,6 @@ static uint32_t get_card_id(struct impl *this, struct udev_device *dev) + if ((str = udev_device_get_property_value(dev, "SOUND_CLASS")) && spa_streq(str, "modem")) + return SPA_ID_INVALID; + +- if (udev_device_get_property_value(dev, "SOUND_INITIALIZED") == NULL) +- return SPA_ID_INVALID; +- + if ((str = udev_device_get_property_value(dev, "DEVPATH")) == NULL) + return SPA_ID_INVALID; + +@@ -627,7 +624,7 @@ static int enum_devices(struct impl *this) + + for (devices = udev_enumerate_get_list_entry(enumerate); devices; + devices = udev_list_entry_get_next(devices)) { +- struct udev_device *dev; ++ struct udev_device *dev, *pdev; + + dev = udev_device_new_from_syspath(this->udev, udev_list_entry_get_name(devices)); + if (dev == NULL) +@@ -635,6 +632,13 @@ static int enum_devices(struct impl *this) + + process_device(this, ACTION_ADD, dev); + ++ pdev = udev_device_get_parent(dev); ++ if (pdev) { ++ process_device(this, ACTION_ADD, pdev); ++ } ++ ++ /* no need to call udev_device_unref(pdev) here. ++ udev_device_unref() will free parent device implicitly */ + udev_device_unref(dev); + } + udev_enumerate_unref(enumerate); diff --git a/templates/simple.build.sh b/templates/simple.build.sh index ddbebfb..54abde0 100644 --- a/templates/simple.build.sh +++ b/templates/simple.build.sh @@ -10,6 +10,7 @@ build() { cd $pkgname-$pkgver ./configure \ --prefix=/usr \ + --sysconfdir=/etc \ --build=$TRIPLE \ --host=$TRIPLE