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/.gitignore b/.gitignore index 6406cdd..b484360 100644 --- a/.gitignore +++ b/.gitignore @@ -2,3 +2,8 @@ src/ out/ pkgs/*/src pkgs/*/out +isoroot +isoout +fdiskscript +diskroot +*.img 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 8fa3b6e..eaf52ce 100644 --- a/README.md +++ b/README.md @@ -1,13 +1,67 @@ -# lazybox +# [Iglunix](https://iglunix.xyz/) 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 -## TODO - - LLVM (Work out how to split packages) - - FreeBSD Kernel (bootloader?, syslinux should support it) - - FreeBSD libc? Standalone build how? (rly need LLVM libc) - - Init system ( paralel shit and dependencies ) - - QEMU for multiarch - - Lots of work on package manager still required +## 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 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. + +## 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/base/bmake/build.sh b/base/bmake/build.sh new file mode 100644 index 0000000..0b393a5 --- /dev/null +++ b/base/bmake/build.sh @@ -0,0 +1,37 @@ +pkgver=20220303 +pkgname=bmake +mkdeps="" +deps="" +auto_cross + +fetch() { + curl http://www.crufty.net/ftp/pub/sjg/bmake-$pkgver.tar.gz -o $pkgname-$pkgver.tar.gz + tar -xf $pkgname-$pkgver.tar.gz + mv $pkgname $pkgname-$pkgver + cd $pkgname-$pkgver + patch ./boot-strap < ../../no-test.patch + patch ./install-sh < ../../install.patch +} + +build() { + cd $pkgname-$pkgver + ./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 -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 +} + +backup() { + return +} + +license() { + cd $pkgname-$pkgver + cat 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/base/byacc/build.sh b/base/byacc/build.sh new file mode 100644 index 0000000..fe75624 --- /dev/null +++ b/base/byacc/build.sh @@ -0,0 +1,40 @@ +pkgver=20220128 +pkgname=byacc +deps="musl" +mkdeps="bmake" +bad="" +auto_cross + +fetch() { + 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 . +} + +build() { + cd $pkgname-$pkgver + ./configure \ + --prefix=/usr \ + --program-prefix=b \ + --enable-btyacc \ + --build=$HOST_TRIPLE \ + --host=$TRIPLE +# patch -p1 < ../reader-mesa.patch + make +} + +package() { + cd $pkgname-$pkgver + make install DESTDIR=$pkgdir + ln -sr $pkgdir/usr/bin/byacc $pkgdir/usr/bin/yacc +} + +backup() { + return +} + +license() { + cd $pkgname-$pkgver + cat 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/base/expat/build.sh b/base/expat/build.sh new file mode 100644 index 0000000..4225483 --- /dev/null +++ b/base/expat/build.sh @@ -0,0 +1,36 @@ +pkgver=2.2.10 +pkgname=expat +bad="" +mkdeps="bmake" +deps="" +ext="dev" +auto_cross + +fetch() { + pkgver_r=$(echo $pkgver | tr '.' '_') + curl -L https://github.com/libexpat/libexpat/releases/download/R_$pkgver_r/$pkgname-$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 + make +} + +package() { + cd $pkgname-$pkgver + make install DESTDIR=$pkgdir +} + +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/base/gettext-tiny/build.sh b/base/gettext-tiny/build.sh new file mode 100644 index 0000000..a219bf6 --- /dev/null +++ b/base/gettext-tiny/build.sh @@ -0,0 +1,29 @@ +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 + tar -xf $pkgname-$pkgver.tar.gz +} + +build() { + cd $pkgname-$pkgver + bad --gmake gmake +} + +package() { + cd $pkgname-$pkgver + bad --gmake gmake install DESTDIR=$pkgdir prefix=/usr +} + +license() { + cd $pkgname-$pkgver + 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/base/iglunix/build.sh b/base/iglunix/build.sh new file mode 100644 index 0000000..8b47a4c --- /dev/null +++ b/base/iglunix/build.sh @@ -0,0 +1,47 @@ +pkgver=main +pkgname=iglunix +pkgrel=1 +deps="busybox:toybox" +bad="" +ext="dev:doc" + +fetch() { + mkdir $pkgname-$pkgver + cp ../profile.sh . + cp ../motd . + cd $pkgname-$pkgver + cp ../../../../scripts/iglu*.sh . + cp ../../../../man/iglu.8 . + cp ../../../../LICENSE . +} + +build() { + cd $pkgname-$pkgver + echo "Nothing to do" +} + +package() { + cd $pkgname-$pkgver + install -d $pkgdir/etc/ + install -Dm644 ../profile.sh $pkgdir/etc/profile + install -Dm644 ../motd $pkgdir/etc/ + install -d $pkgdir/usr/sbin + install -Dm755 iglu.sh $pkgdir/usr/sbin/iglu +} + +package_dev() { + cd $pkgname-$pkgver + install -d $pkgdir/usr/bin + install -Dm755 iglupkg.sh $pkgdir/usr/bin/iglupkg +} + +package_doc() { + cd $pkgname-$pkgver + install -d $pkgdir/usr/share/man/man8 + install -Dm644 iglu.8 $pkgdir/usr/share/man/man8 +} + +license() { + cd $pkgname-$pkgver + cat LICENSE +} diff --git a/base/iglunix/motd b/base/iglunix/motd new file mode 100644 index 0000000..48ee35c --- /dev/null +++ b/base/iglunix/motd @@ -0,0 +1,14 @@ + | + | | + | +| ________ +| /\ | \ + / \ | \ | + / \ \ | +/ \________\ +\ / / + \ / / + \ / / + \/________/ + +Iglunix: Drop the Packages diff --git a/base/iglunix/profile.sh b/base/iglunix/profile.sh new file mode 100644 index 0000000..4b2f6e4 --- /dev/null +++ b/base/iglunix/profile.sh @@ -0,0 +1,20 @@ +# Setup Path +export PATH=/usr/sbin:/usr/bin:/sbin:/bin +export POSIX_ME_HARDER=1 + +# Setup Shell Prompt +if [ "$(whoami)" == "root" ]; then + export PS1=$(hostname)"# " +else + export PS1=$(hostname)"$ " +fi + +# Replace TERM with xterm because netbsd-curses doesn't include alacritty +if [ "$TERM" == "alacritty" ]; then + export TERM=xterm +fi + +# load profile +for file in $(ls /etc/profile.d); do + . /etc/profile.d/$file +done 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 67% rename from pkgs/kakoune/build.sh rename to base/kakoune/build.sh index d124d7b..26edf8c 100644 --- a/pkgs/kakoune/build.sh +++ b/base/kakoune/build.sh @@ -1,24 +1,23 @@ -pkgver=builtin-terminal-ui +pkgver=master pkgname=kakoune pkgrel=1 +deps="musl:llvm" 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 - cd src - ckati + bad --gmake gmake } package() { cd $pkgname-$pkgver - cd src - 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 @@ -26,7 +25,6 @@ package() { package_doc() { cd $pkgname-$pkgver - cd src ckati install DESTDIR=$pkgdir PREFIX=/usr rm -r $pkgdir/usr/share/kak rm -r $pkgdir/usr/libexec @@ -37,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 70% rename from pkgs/kati/build.sh rename to base/kati/build.sh index 56762b6..c64348d 100644 --- a/pkgs/kati/build.sh +++ b/base/kati/build.sh @@ -3,13 +3,13 @@ pkgname=kati pkgrel=1 fetch() { - curl -L "https://github.com/google/kati/archive/master.tar.gz" -o $pkgname-$pkgver.tar.gz + curl -LL "https://github.com/google/kati/archive/master.tar.gz" -o $pkgname-$pkgver.tar.gz tar -xf $pkgname-$pkgver.tar.gz } build() { cd $pkgname-$pkgver - gmake + bad --gmake gmake } package() { diff --git a/base/lc-make/build.sh b/base/lc-make/build.sh new file mode 100644 index 0000000..9540ddb --- /dev/null +++ b/base/lc-make/build.sh @@ -0,0 +1,28 @@ +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 + tar -xf $pkgname-$pkgver.tar.xz + cd $pkgname-$pkgver + mkdir .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/ +} + +license() { + cd $pkgname-$pkgver + cat LICENSE +# cat COPYING +} 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/base/libnl-tiny/build.sh b/base/libnl-tiny/build.sh new file mode 100644 index 0000000..30702f9 --- /dev/null +++ b/base/libnl-tiny/build.sh @@ -0,0 +1,22 @@ +pkgname=libnl-tiny +pkgver=master + +fetch() { + curl -L "https://github.com/sabotage-linux/libnl-tiny/archive/refs/heads/master.tar.gz" -o $pkgname-$pkgver.tar.xz + tar -xf $pkgname-$pkgver.tar.xz + cd $pkgname-$pkgver +} + +build() { + cd $pkgname-$pkgver + bad --gmake gmake prefix=/usr all CC=cc +} + +package() { + cd $pkgname-$pkgver + bad --gmake gmake prefix=/usr DESTDIR=$pkgdir install +} + +license() { + curl "https://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt" +} diff --git a/base/libnl-tiny/cmake-no-extra-errs.patch b/base/libnl-tiny/cmake-no-extra-errs.patch new file mode 100644 index 0000000..65133e5 --- /dev/null +++ b/base/libnl-tiny/cmake-no-extra-errs.patch @@ -0,0 +1,11 @@ +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -5,7 +5,7 @@ + + INCLUDE_DIRECTORIES(include) + +-ADD_DEFINITIONS(-Wall -Werror -Wextra -Wno-unused-parameter) ++#ADD_DEFINITIONS(-Wall -Werror -Wextra -Wno-unused-parameter) + STRING(REPLACE "-DNDEBUG" "" CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE}") + + ADD_LIBRARY(nl-tiny SHARED 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/base/llvm/default.llvm.conf b/base/llvm/default.llvm.conf new file mode 100644 index 0000000..32fbb89 --- /dev/null +++ b/base/llvm/default.llvm.conf @@ -0,0 +1,5 @@ +#Uncomment this to get the latest release candiate +#export RC + +#Uncomment this to get the latest git version +#export GIT 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/base/man-pages-posix/build.sh b/base/man-pages-posix/build.sh new file mode 100644 index 0000000..ad0139c --- /dev/null +++ b/base/man-pages-posix/build.sh @@ -0,0 +1,25 @@ +pkgname=man-pages-posix +pkgver=2017 + +fetch() { + curl "https://mirrors.edge.kernel.org/pub/linux/docs/man-pages/man-pages-posix/man-pages-posix-2017-a.tar.xz" -o $pkgname-$pkgver.tar.xz + tar -xf $pkgname-$pkgver.tar.xz +} + +build() { + return +} + +package() { + cd $pkgname-$pkgver + 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 77% rename from pkgs/meson/build.sh rename to base/meson/build.sh index f5861c4..9f1a025 100644 --- a/pkgs/meson/build.sh +++ b/base/meson/build.sh @@ -1,12 +1,14 @@ -pkgver=0.55.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 tar -xf $pkgname-$pkgver.tar.gz + cp ../not-darwin.patch . + cd $pkgname-$pkgver + patch -p1 < ../not-darwin.patch } build() { @@ -19,8 +21,8 @@ package() { python setup.py install --prefix=/usr --root=$pkgdir } -package_doc() { - echo $pkgdir +backup() { + return } license() { diff --git a/base/meson/not-darwin.patch b/base/meson/not-darwin.patch new file mode 100644 index 0000000..78b6e4a --- /dev/null +++ b/base/meson/not-darwin.patch @@ -0,0 +1,19 @@ +--- a/mesonbuild/scripts/depfixer.py ++++ b/mesonbuild/scripts/depfixer.py +@@ -16,6 +16,7 @@ + import sys, struct + import shutil, subprocess + import typing as T ++import platform + + from ..mesonlib import OrderedSet + +@@ -478,7 +479,7 @@ + # https://github.com/mesonbuild/meson/pull/6612#discussion_r378581401 + if INSTALL_NAME_TOOL is False: + INSTALL_NAME_TOOL = bool(shutil.which('install_name_tool')) +- if INSTALL_NAME_TOOL: ++ if INSTALL_NAME_TOOL and platform.system() == "Darwin": + if isinstance(new_rpath, bytes): + new_rpath = new_rpath.decode('utf8') + fix_darwin(fname, new_rpath, final_path, install_name_mappings) diff --git a/pkgs/mksh/build.sh b/base/mksh/build.sh similarity index 72% rename from pkgs/mksh/build.sh rename to base/mksh/build.sh index 39a48b0..6c7f7f1 100644 --- a/pkgs/mksh/build.sh +++ b/base/mksh/build.sh @@ -1,5 +1,6 @@ pkgver=59c pkgname=mksh +deps="musl" bad="" ext="doc" @@ -10,6 +11,7 @@ fetch() { build() { cd $pkgname + CPPFLAGS="-DMKSH_BINSHPOSIX" sh Build.sh -L sh Build.sh } @@ -17,13 +19,13 @@ package() { cd $pkgname install -d $pkgdir/bin install -Dm755 ./mksh $pkgdir/bin + install -Dm755 ./lksh $pkgdir/bin ln -sr $pkgdir/bin/mksh $pkgdir/bin/bash + 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 +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 71% rename from pkgs/om4/build.sh rename to base/om4/build.sh index 8679a28..d7c01cc 100644 --- a/pkgs/om4/build.sh +++ b/base/om4/build.sh @@ -1,18 +1,23 @@ pkgver=6.7 pkgname=om4 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() { @@ -23,12 +28,16 @@ package() { } package_doc() { - cd $pkgname-$pkgver + cd $pkgname-$pkgver install -d $pkgdir/usr/share/man/man1 - install -Dm644 m4.1 $pkgdir/share/man/man1 + install -Dm644 m4.1 $pkgdir/usr/share/man/man1 } 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/base/openssh/build.sh b/base/openssh/build.sh new file mode 100644 index 0000000..aa7d761 --- /dev/null +++ b/base/openssh/build.sh @@ -0,0 +1,32 @@ +pkgname=openssh +pkgver=8.8p1 + +fetch() { + curl "https://cdn.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-$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 \ + --libexecdir=/usr/lib + + make +} + +package() { + cd $pkgname-$pkgver + 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/base/perl/build.sh b/base/perl/build.sh new file mode 100644 index 0000000..19fd417 --- /dev/null +++ b/base/perl/build.sh @@ -0,0 +1,57 @@ +pkgname=perl +pkgver=5.34.0 + +fetch() { + curl "https://www.cpan.org/src/5.0/perl-$pkgver.tar.gz" -o $pkgname-$pkgver.tar.xz + tar -xf $pkgname-$pkgver.tar.xz +} + +build() { + cd $pkgname-$pkgver + + ./Configure -des \ + -Dccflags="$CFLAGS" \ + -Dcccdlflags='-fPIC' \ + -Dcccdlflags='-fPIC' \ + -Dccdlflags='-rdynamic' \ + -Dprefix=/usr \ + -Dprivlib=/usr/share/perl5/core_perl \ + -Darchlib=/usr/lib/perl5/core_perl \ + -Dvendorprefix=/usr \ + -Dvendorlib=/usr/share/perl5/vendor_perl \ + -Dvendorarch=/usr/lib/perl5/vendor_perl \ + -Dsiteprefix=/usr/local \ + -Dsitelib=/usr/local/share/perl5/site_perl \ + -Dsitearch=/usr/local/lib/perl5/site_perl \ + -Dlocincpth=' ' \ + -Duselargefiles \ + -Dusethreads \ + -Duseshrplib \ + -Dd_semctl_semun \ + -Dman1dir=/usr/share/man/man1 \ + -Dman3dir=/usr/share/man/man3 \ + -Dinstallman1dir=/usr/share/man/man1 \ + -Dinstallman3dir=/usr/share/man/man3 \ + -Dman1ext='1' \ + -Dman3ext='3pm' \ + -Dcf_by='Iglunix' \ + -Ud_csh \ + -Dusenm + + make libperl.so && make || return 1 +} + +package() { + cd $pkgname-$pkgver + make install DESTDIR=$pkgdir + rm -rf $pkgdir/usr/share/man +} + +backup() { + return +} + +license() { + cd $pkgname-$pkgver + cat Copying +} diff --git a/pkgs/pkgconf/build.sh b/base/pkgconf/build.sh similarity index 79% rename from pkgs/pkgconf/build.sh rename to base/pkgconf/build.sh index 0e86a66..e406532 100644 --- a/pkgs/pkgconf/build.sh +++ b/base/pkgconf/build.sh @@ -1,10 +1,10 @@ -pkgver=1.1.0 +pkgver=1.7.4 pkgname=pkgconf bad="" ext="doc" fetch() { - curl https://distfiles.dereferenced.org/pkgconf/pkgconf-1.1.0.tar.xz -o $pkgname-$pkgver.tar.xz + curl https://distfiles.dereferenced.org/pkgconf/pkgconf-$pkgver.tar.xz -o $pkgname-$pkgver.tar.xz tar -xf $pkgname-$pkgver.tar.xz } diff --git a/base/python-mako/build.sh b/base/python-mako/build.sh new file mode 100644 index 0000000..e40e712 --- /dev/null +++ b/base/python-mako/build.sh @@ -0,0 +1,30 @@ +pkgver=1.1.4 +pkgname=python-mako +deps=python +bad="" +ext="doc" + +fetch() { + curl -L "https://pypi.io/packages/source/M/Mako/Mako-$pkgver.tar.gz" -o $pkgname-$pkgver.tar.gz + tar -xf $pkgname-$pkgver.tar.gz + mv Mako-$pkgver $pkgname-$pkgver +} + +build() { + cd $pkgname-$pkgver + python setup.py build +} + +package() { + cd $pkgname-$pkgver + python setup.py install --prefix=/usr --root=$pkgdir +} + +package_doc() { + echo $pkgdir +} + +license() { + cd $pkgname-$pkgver + cat LICENSE +} 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 72% rename from pkgs/samurai/build.sh rename to base/samurai/build.sh index d7f0200..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,16 +10,20 @@ fetch() { build() { cd $pkgname-$pkgver - samu + make LDFLAGS="$LDFLAGS" } package() { cd $pkgname-$pkgver - install -d $pkgdir/bin - install -Dm755 ./samu $pkgdir/bin/ + install -d $pkgdir/usr/bin + install -Dm755 ./samu $pkgdir/usr/bin/ } 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/base/toybox/ls-colour.patch b/base/toybox/ls-colour.patch new file mode 100644 index 0000000..b39c2fc --- /dev/null +++ b/base/toybox/ls-colour.patch @@ -0,0 +1,15 @@ +--- a/toys/posix/ls.c ++++ b/toys/posix/ls.c +@@ -513,9 +513,11 @@ + if (!FLAG(show_control_chars)) toys.optflags |= FLAG_b; + if (FLAG(l)||FLAG(o)||FLAG(n)||FLAG(g)) toys.optflags |= FLAG_1; + else if (!(FLAG(1)||FLAG(x)||FLAG(m))) toys.optflags |= FLAG_C; ++ if (TT.color && !strcmp(TT.color, "never")) toys.optflags ^= FLAG_color; ++ else toys.optflags |= FLAG_color; + } else { + if (!FLAG(m)) toys.optflags |= FLAG_1; +- if (TT.color) toys.optflags ^= FLAG_color; ++ if (TT.color && strcmp(TT.color, "always")) toys.optflags ^= FLAG_color; + } + + TT.screen_width = 80; 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/base/wpa_supplicant/build.sh b/base/wpa_supplicant/build.sh new file mode 100644 index 0000000..c2efaf7 --- /dev/null +++ b/base/wpa_supplicant/build.sh @@ -0,0 +1,34 @@ +pkgname=wpa_supplicant +pkgver=2.9 + +fetch() { + curl "https://w1.fi/releases/wpa_supplicant-2.9.tar.gz" -o $pkgname-$pkgver.tar.xz + tar -xf $pkgname-$pkgver.tar.xz + cp ../config . +} + +build() { + ############################################################################# + # This software is unlikely to be secure in the way that we are building it # + # # + # USE AT YOUR OWN RISK! # + # # + ############################################################################# + + cd $pkgname-$pkgver + cd $pkgname + cp ../../config .config + + CFLAGS='-D_GNU_SOURCE -DCONFIG_LIBNL20 -DCONFIG_LIBNL20 -DLIBNL1_COMPAT -I/usr/include/libnl-tiny' gmake CONFIG_LIBNL_TINY=y +} + +package() { + cd $pkgname-$pkgver + cd $pkgname + bad --gmake gmake install DESTDIR=$pkgdir BINDIR=/usr/sbin +} + +license() { + cd $pkgname-$pkgver + cat COPYING +} diff --git a/base/wpa_supplicant/config b/base/wpa_supplicant/config new file mode 100644 index 0000000..e5a6752 --- /dev/null +++ b/base/wpa_supplicant/config @@ -0,0 +1,620 @@ +# Example wpa_supplicant build time configuration +# +# This file lists the configuration options that are used when building the +# wpa_supplicant binary. All lines starting with # are ignored. Configuration +# option lines must be commented out complete, if they are not to be included, +# i.e., just setting VARIABLE=n is not disabling that variable. +# +# This file is included in Makefile, so variables like CFLAGS and LIBS can also +# be modified from here. In most cases, these lines should use += in order not +# to override previous values of the variables. + + +# Uncomment following two lines and fix the paths if you have installed OpenSSL +# or GnuTLS in non-default location +#CFLAGS += -I/usr/local/openssl/include +#LIBS += -L/usr/local/openssl/lib + +# Some Red Hat versions seem to include kerberos header files from OpenSSL, but +# the kerberos files are not in the default include path. Following line can be +# used to fix build issues on such systems (krb5.h not found). +#CFLAGS += -I/usr/include/kerberos + +# Driver interface for generic Linux wireless extensions +# Note: WEXT is deprecated in the current Linux kernel version and no new +# functionality is added to it. nl80211-based interface is the new +# replacement for WEXT and its use allows wpa_supplicant to properly control +# the driver to improve existing functionality like roaming and to support new +# functionality. +CONFIG_DRIVER_WEXT=y + +# Driver interface for Linux drivers using the nl80211 kernel interface +CONFIG_DRIVER_NL80211=y + +# QCA vendor extensions to nl80211 +#CONFIG_DRIVER_NL80211_QCA=y + +# driver_nl80211.c requires libnl. If you are compiling it yourself +# you may need to point hostapd to your version of libnl. +# +#CFLAGS += -I$ +#LIBS += -L$ + +# Use libnl v2.0 (or 3.0) libraries. +#CONFIG_LIBNL20=y + +# Use libnl 3.2 libraries (if this is selected, CONFIG_LIBNL20 is ignored) +#CONFIG_LIBNL32=y + + +# Driver interface for FreeBSD net80211 layer (e.g., Atheros driver) +#CONFIG_DRIVER_BSD=y +#CFLAGS += -I/usr/local/include +#LIBS += -L/usr/local/lib +#LIBS_p += -L/usr/local/lib +#LIBS_c += -L/usr/local/lib + +# Driver interface for Windows NDIS +#CONFIG_DRIVER_NDIS=y +#CFLAGS += -I/usr/include/w32api/ddk +#LIBS += -L/usr/local/lib +# For native build using mingw +#CONFIG_NATIVE_WINDOWS=y +# Additional directories for cross-compilation on Linux host for mingw target +#CFLAGS += -I/opt/mingw/mingw32/include/ddk +#LIBS += -L/opt/mingw/mingw32/lib +#CC=mingw32-gcc +# By default, driver_ndis uses WinPcap for low-level operations. This can be +# replaced with the following option which replaces WinPcap calls with NDISUIO. +# However, this requires that WZC is disabled (net stop wzcsvc) before starting +# wpa_supplicant. +# CONFIG_USE_NDISUIO=y + +# Driver interface for wired Ethernet drivers +CONFIG_DRIVER_WIRED=y + +# Driver interface for MACsec capable Qualcomm Atheros drivers +#CONFIG_DRIVER_MACSEC_QCA=y + +# Driver interface for Linux MACsec drivers +#CONFIG_DRIVER_MACSEC_LINUX=y + +# Driver interface for the Broadcom RoboSwitch family +#CONFIG_DRIVER_ROBOSWITCH=y + +# Driver interface for no driver (e.g., WPS ER only) +#CONFIG_DRIVER_NONE=y + +# Solaris libraries +#LIBS += -lsocket -ldlpi -lnsl +#LIBS_c += -lsocket + +# Enable IEEE 802.1X Supplicant (automatically included if any EAP method or +# MACsec is included) +CONFIG_IEEE8021X_EAPOL=y + +# EAP-MD5 +CONFIG_EAP_MD5=y + +# EAP-MSCHAPv2 +CONFIG_EAP_MSCHAPV2=y + +# EAP-TLS +CONFIG_EAP_TLS=y + +# EAL-PEAP +CONFIG_EAP_PEAP=y + +# EAP-TTLS +CONFIG_EAP_TTLS=y + +# EAP-FAST +CONFIG_EAP_FAST=y + +# EAP-TEAP +# Note: The current EAP-TEAP implementation is experimental and should not be +# enabled for production use. The IETF RFC 7170 that defines EAP-TEAP has number +# of conflicting statements and missing details and the implementation has +# vendor specific workarounds for those and as such, may not interoperate with +# any other implementation. This should not be used for anything else than +# experimentation and interoperability testing until those issues has been +# resolved. +#CONFIG_EAP_TEAP=y + +# EAP-GTC +CONFIG_EAP_GTC=y + +# EAP-OTP +CONFIG_EAP_OTP=y + +# EAP-SIM (enable CONFIG_PCSC, if EAP-SIM is used) +#CONFIG_EAP_SIM=y + +# Enable SIM simulator (Milenage) for EAP-SIM +#CONFIG_SIM_SIMULATOR=y + +# EAP-PSK (experimental; this is _not_ needed for WPA-PSK) +#CONFIG_EAP_PSK=y + +# EAP-pwd (secure authentication using only a password) +#CONFIG_EAP_PWD=y + +# EAP-PAX +#CONFIG_EAP_PAX=y + +# LEAP +CONFIG_EAP_LEAP=y + +# EAP-AKA (enable CONFIG_PCSC, if EAP-AKA is used) +#CONFIG_EAP_AKA=y + +# EAP-AKA' (enable CONFIG_PCSC, if EAP-AKA' is used). +# This requires CONFIG_EAP_AKA to be enabled, too. +#CONFIG_EAP_AKA_PRIME=y + +# Enable USIM simulator (Milenage) for EAP-AKA +#CONFIG_USIM_SIMULATOR=y + +# EAP-SAKE +#CONFIG_EAP_SAKE=y + +# EAP-GPSK +#CONFIG_EAP_GPSK=y +# Include support for optional SHA256 cipher suite in EAP-GPSK +#CONFIG_EAP_GPSK_SHA256=y + +# EAP-TNC and related Trusted Network Connect support (experimental) +#CONFIG_EAP_TNC=y + +# Wi-Fi Protected Setup (WPS) +CONFIG_WPS=y +# Enable WPS external registrar functionality +#CONFIG_WPS_ER=y +# Disable credentials for an open network by default when acting as a WPS +# registrar. +#CONFIG_WPS_REG_DISABLE_OPEN=y +# Enable WPS support with NFC config method +#CONFIG_WPS_NFC=y + +# EAP-IKEv2 +#CONFIG_EAP_IKEV2=y + +# EAP-EKE +#CONFIG_EAP_EKE=y + +# MACsec +#CONFIG_MACSEC=y + +# PKCS#12 (PFX) support (used to read private key and certificate file from +# a file that usually has extension .p12 or .pfx) +CONFIG_PKCS12=y + +# Smartcard support (i.e., private key on a smartcard), e.g., with openssl +# engine. +CONFIG_SMARTCARD=y + +# PC/SC interface for smartcards (USIM, GSM SIM) +# Enable this if EAP-SIM or EAP-AKA is included +#CONFIG_PCSC=y + +# Support HT overrides (disable HT/HT40, mask MCS rates, etc.) +CONFIG_HT_OVERRIDES=y + +# Support VHT overrides (disable VHT, mask MCS rates, etc.) +CONFIG_VHT_OVERRIDES=y + +# Development testing +#CONFIG_EAPOL_TEST=y + +# Select control interface backend for external programs, e.g, wpa_cli: +# unix = UNIX domain sockets (default for Linux/*BSD) +# udp = UDP sockets using localhost (127.0.0.1) +# udp6 = UDP IPv6 sockets using localhost (::1) +# named_pipe = Windows Named Pipe (default for Windows) +# udp-remote = UDP sockets with remote access (only for tests systems/purpose) +# udp6-remote = UDP IPv6 sockets with remote access (only for tests purpose) +# y = use default (backwards compatibility) +# If this option is commented out, control interface is not included in the +# build. +CONFIG_CTRL_IFACE=y + +# Include support for GNU Readline and History Libraries in wpa_cli. +# When building a wpa_cli binary for distribution, please note that these +# libraries are licensed under GPL and as such, BSD license may not apply for +# the resulting binary. +#CONFIG_READLINE=y + +# Include internal line edit mode in wpa_cli. This can be used as a replacement +# for GNU Readline to provide limited command line editing and history support. +#CONFIG_WPA_CLI_EDIT=y + +# Remove debugging code that is printing out debug message to stdout. +# This can be used to reduce the size of the wpa_supplicant considerably +# if debugging code is not needed. The size reduction can be around 35% +# (e.g., 90 kB). +#CONFIG_NO_STDOUT_DEBUG=y + +# Remove WPA support, e.g., for wired-only IEEE 802.1X supplicant, to save +# 35-50 kB in code size. +#CONFIG_NO_WPA=y + +# Remove IEEE 802.11i/WPA-Personal ASCII passphrase support +# This option can be used to reduce code size by removing support for +# converting ASCII passphrases into PSK. If this functionality is removed, the +# PSK can only be configured as the 64-octet hexstring (e.g., from +# wpa_passphrase). This saves about 0.5 kB in code size. +#CONFIG_NO_WPA_PASSPHRASE=y + +# Simultaneous Authentication of Equals (SAE), WPA3-Personal +#CONFIG_SAE=y + +# Disable scan result processing (ap_mode=1) to save code size by about 1 kB. +# This can be used if ap_scan=1 mode is never enabled. +#CONFIG_NO_SCAN_PROCESSING=y + +# Select configuration backend: +# file = text file (e.g., wpa_supplicant.conf; note: the configuration file +# path is given on command line, not here; this option is just used to +# select the backend that allows configuration files to be used) +# winreg = Windows registry (see win_example.reg for an example) +CONFIG_BACKEND=file + +# Remove configuration write functionality (i.e., to allow the configuration +# file to be updated based on runtime configuration changes). The runtime +# configuration can still be changed, the changes are just not going to be +# persistent over restarts. This option can be used to reduce code size by +# about 3.5 kB. +#CONFIG_NO_CONFIG_WRITE=y + +# Remove support for configuration blobs to reduce code size by about 1.5 kB. +#CONFIG_NO_CONFIG_BLOBS=y + +# Select program entry point implementation: +# main = UNIX/POSIX like main() function (default) +# main_winsvc = Windows service (read parameters from registry) +# main_none = Very basic example (development use only) +#CONFIG_MAIN=main + +# Select wrapper for operating system and C library specific functions +# unix = UNIX/POSIX like systems (default) +# win32 = Windows systems +# none = Empty template +#CONFIG_OS=unix + +# Select event loop implementation +# eloop = select() loop (default) +# eloop_win = Windows events and WaitForMultipleObject() loop +#CONFIG_ELOOP=eloop + +# Should we use poll instead of select? Select is used by default. +#CONFIG_ELOOP_POLL=y + +# Should we use epoll instead of select? Select is used by default. +#CONFIG_ELOOP_EPOLL=y + +# Should we use kqueue instead of select? Select is used by default. +#CONFIG_ELOOP_KQUEUE=y + +# Select layer 2 packet implementation +# linux = Linux packet socket (default) +# pcap = libpcap/libdnet/WinPcap +# freebsd = FreeBSD libpcap +# winpcap = WinPcap with receive thread +# ndis = Windows NDISUIO (note: requires CONFIG_USE_NDISUIO=y) +# none = Empty template +#CONFIG_L2_PACKET=linux + +# Disable Linux packet socket workaround applicable for station interface +# in a bridge for EAPOL frames. This should be uncommented only if the kernel +# is known to not have the regression issue in packet socket behavior with +# bridge interfaces (commit 'bridge: respect RFC2863 operational state')'). +CONFIG_NO_LINUX_PACKET_SOCKET_WAR=y + +# IEEE 802.11w (management frame protection), also known as PMF +# Driver support is also needed for IEEE 802.11w. +#CONFIG_IEEE80211W=y + +# Support Operating Channel Validation +#CONFIG_OCV=y + +# Select TLS implementation +# openssl = OpenSSL (default) +# gnutls = GnuTLS +# internal = Internal TLSv1 implementation (experimental) +# linux = Linux kernel AF_ALG and internal TLSv1 implementation (experimental) +# none = Empty template +CONFIG_TLS=internal + +# TLS-based EAP methods require at least TLS v1.0. Newer version of TLS (v1.1) +# can be enabled to get a stronger construction of messages when block ciphers +# are used. It should be noted that some existing TLS v1.0 -based +# implementation may not be compatible with TLS v1.1 message (ClientHello is +# sent prior to negotiating which version will be used) +#CONFIG_TLSV11=y + +# TLS-based EAP methods require at least TLS v1.0. Newer version of TLS (v1.2) +# can be enabled to enable use of stronger crypto algorithms. It should be +# noted that some existing TLS v1.0 -based implementation may not be compatible +# with TLS v1.2 message (ClientHello is sent prior to negotiating which version +# will be used) +#CONFIG_TLSV12=y + +# Select which ciphers to use by default with OpenSSL if the user does not +# specify them. +#CONFIG_TLS_DEFAULT_CIPHERS="DEFAULT:!EXP:!LOW" + +# If CONFIG_TLS=internal is used, additional library and include paths are +# needed for LibTomMath. Alternatively, an integrated, minimal version of +# LibTomMath can be used. See beginning of libtommath.c for details on benefits +# and drawbacks of this option. +CONFIG_INTERNAL_LIBTOMMATH=y +#ifndef CONFIG_INTERNAL_LIBTOMMATH +#LTM_PATH=/usr/src/libtommath-0.39 +#CFLAGS += -I$(LTM_PATH) +#LIBS += -L$(LTM_PATH) +#LIBS_p += -L$(LTM_PATH) +#endif +# At the cost of about 4 kB of additional binary size, the internal LibTomMath +# can be configured to include faster routines for exptmod, sqr, and div to +# speed up DH and RSA calculation considerably +CONFIG_INTERNAL_LIBTOMMATH_FAST=y + +# Include NDIS event processing through WMI into wpa_supplicant/wpasvc. +# This is only for Windows builds and requires WMI-related header files and +# WbemUuid.Lib from Platform SDK even when building with MinGW. +#CONFIG_NDIS_EVENTS_INTEGRATED=y +#PLATFORMSDKLIB="/opt/Program Files/Microsoft Platform SDK/Lib" + +# Add support for new DBus control interface +# (fi.w1.hostap.wpa_supplicant1) +#CONFIG_CTRL_IFACE_DBUS_NEW=y + +# Add introspection support for new DBus control interface +#CONFIG_CTRL_IFACE_DBUS_INTRO=y + +# Add support for loading EAP methods dynamically as shared libraries. +# When this option is enabled, each EAP method can be either included +# statically (CONFIG_EAP_=y) or dynamically (CONFIG_EAP_=dyn). +# Dynamic EAP methods are build as shared objects (eap_*.so) and they need to +# be loaded in the beginning of the wpa_supplicant configuration file +# (see load_dynamic_eap parameter in the example file) before being used in +# the network blocks. +# +# Note that some shared parts of EAP methods are included in the main program +# and in order to be able to use dynamic EAP methods using these parts, the +# main program must have been build with the EAP method enabled (=y or =dyn). +# This means that EAP-TLS/PEAP/TTLS/FAST cannot be added as dynamic libraries +# unless at least one of them was included in the main build to force inclusion +# of the shared code. Similarly, at least one of EAP-SIM/AKA must be included +# in the main build to be able to load these methods dynamically. +# +# Please also note that using dynamic libraries will increase the total binary +# size. Thus, it may not be the best option for targets that have limited +# amount of memory/flash. +#CONFIG_DYNAMIC_EAP_METHODS=y + +# IEEE Std 802.11r-2008 (Fast BSS Transition) for station mode +CONFIG_IEEE80211R=y + +# Add support for writing debug log to a file (/tmp/wpa_supplicant-log-#.txt) +#CONFIG_DEBUG_FILE=y + +# Send debug messages to syslog instead of stdout +CONFIG_DEBUG_SYSLOG=y +# Set syslog facility for debug messages +CONFIG_DEBUG_SYSLOG_FACILITY=LOG_DAEMON + +# Add support for sending all debug messages (regardless of debug verbosity) +# to the Linux kernel tracing facility. This helps debug the entire stack by +# making it easy to record everything happening from the driver up into the +# same file, e.g., using trace-cmd. +#CONFIG_DEBUG_LINUX_TRACING=y + +# Add support for writing debug log to Android logcat instead of standard +# output +#CONFIG_ANDROID_LOG=y + +# Enable privilege separation (see README 'Privilege separation' for details) +#CONFIG_PRIVSEP=y + +# Enable mitigation against certain attacks against TKIP by delaying Michael +# MIC error reports by a random amount of time between 0 and 60 seconds +#CONFIG_DELAYED_MIC_ERROR_REPORT=y + +# Enable tracing code for developer debugging +# This tracks use of memory allocations and other registrations and reports +# incorrect use with a backtrace of call (or allocation) location. +#CONFIG_WPA_TRACE=y +# For BSD, uncomment these. +#LIBS += -lexecinfo +#LIBS_p += -lexecinfo +#LIBS_c += -lexecinfo + +# Use libbfd to get more details for developer debugging +# This enables use of libbfd to get more detailed symbols for the backtraces +# generated by CONFIG_WPA_TRACE=y. +#CONFIG_WPA_TRACE_BFD=y +# For BSD, uncomment these. +#LIBS += -lbfd -liberty -lz +#LIBS_p += -lbfd -liberty -lz +#LIBS_c += -lbfd -liberty -lz + +# wpa_supplicant depends on strong random number generation being available +# from the operating system. os_get_random() function is used to fetch random +# data when needed, e.g., for key generation. On Linux and BSD systems, this +# works by reading /dev/urandom. It should be noted that the OS entropy pool +# needs to be properly initialized before wpa_supplicant is started. This is +# important especially on embedded devices that do not have a hardware random +# number generator and may by default start up with minimal entropy available +# for random number generation. +# +# As a safety net, wpa_supplicant is by default trying to internally collect +# additional entropy for generating random data to mix in with the data fetched +# from the OS. This by itself is not considered to be very strong, but it may +# help in cases where the system pool is not initialized properly. However, it +# is very strongly recommended that the system pool is initialized with enough +# entropy either by using hardware assisted random number generator or by +# storing state over device reboots. +# +# wpa_supplicant can be configured to maintain its own entropy store over +# restarts to enhance random number generation. This is not perfect, but it is +# much more secure than using the same sequence of random numbers after every +# reboot. This can be enabled with -e command line option. The +# specified file needs to be readable and writable by wpa_supplicant. +# +# If the os_get_random() is known to provide strong random data (e.g., on +# Linux/BSD, the board in question is known to have reliable source of random +# data from /dev/urandom), the internal wpa_supplicant random pool can be +# disabled. This will save some in binary size and CPU use. However, this +# should only be considered for builds that are known to be used on devices +# that meet the requirements described above. +CONFIG_NO_RANDOM_POOL=y + +# Should we attempt to use the getrandom(2) call that provides more reliable +# yet secure randomness source than /dev/random on Linux 3.17 and newer. +# Requires glibc 2.25 to build, falls back to /dev/random if unavailable. +CONFIG_GETRANDOM=y + +# IEEE 802.11n (High Throughput) support (mainly for AP mode) +#CONFIG_IEEE80211N=y + +# IEEE 802.11ac (Very High Throughput) support (mainly for AP mode) +# (depends on CONFIG_IEEE80211N) +#CONFIG_IEEE80211AC=y + +# Wireless Network Management (IEEE Std 802.11v-2011) +# Note: This is experimental and not complete implementation. +CONFIG_WNM=y + +# Interworking (IEEE 802.11u) +# This can be used to enable functionality to improve interworking with +# external networks (GAS/ANQP to learn more about the networks and network +# selection based on available credentials). +#CONFIG_INTERWORKING=y + +# Hotspot 2.0 +#CONFIG_HS20=y + +# Enable interface matching in wpa_supplicant +#CONFIG_MATCH_IFACE=y + +# Disable roaming in wpa_supplicant +#CONFIG_NO_ROAMING=y + +# AP mode operations with wpa_supplicant +# This can be used for controlling AP mode operations with wpa_supplicant. It +# should be noted that this is mainly aimed at simple cases like +# WPA2-Personal while more complex configurations like WPA2-Enterprise with an +# external RADIUS server can be supported with hostapd. +#CONFIG_AP=y + +# P2P (Wi-Fi Direct) +# This can be used to enable P2P support in wpa_supplicant. See README-P2P for +# more information on P2P operations. +#CONFIG_P2P=y + +# Enable TDLS support +#CONFIG_TDLS=y + +# Wi-Fi Display +# This can be used to enable Wi-Fi Display extensions for P2P using an external +# program to control the additional information exchanges in the messages. +#CONFIG_WIFI_DISPLAY=y + +# Autoscan +# This can be used to enable automatic scan support in wpa_supplicant. +# See wpa_supplicant.conf for more information on autoscan usage. +# +# Enabling directly a module will enable autoscan support. +# For exponential module: +#CONFIG_AUTOSCAN_EXPONENTIAL=y +# For periodic module: +#CONFIG_AUTOSCAN_PERIODIC=y + +# Password (and passphrase, etc.) backend for external storage +# These optional mechanisms can be used to add support for storing passwords +# and other secrets in external (to wpa_supplicant) location. This allows, for +# example, operating system specific key storage to be used +# +# External password backend for testing purposes (developer use) +#CONFIG_EXT_PASSWORD_TEST=y + +# Enable Fast Session Transfer (FST) +#CONFIG_FST=y + +# Enable CLI commands for FST testing +#CONFIG_FST_TEST=y + +# OS X builds. This is only for building eapol_test. +#CONFIG_OSX=y + +# Automatic Channel Selection +# This will allow wpa_supplicant to pick the channel automatically when channel +# is set to "0". +# +# TODO: Extend parser to be able to parse "channel=acs_survey" as an alternative +# to "channel=0". This would enable us to eventually add other ACS algorithms in +# similar way. +# +# Automatic selection is currently only done through initialization, later on +# we hope to do background checks to keep us moving to more ideal channels as +# time goes by. ACS is currently only supported through the nl80211 driver and +# your driver must have survey dump capability that is filled by the driver +# during scanning. +# +# TODO: In analogy to hostapd be able to customize the ACS survey algorithm with +# a newly to create wpa_supplicant.conf variable acs_num_scans. +# +# Supported ACS drivers: +# * ath9k +# * ath5k +# * ath10k +# +# For more details refer to: +# http://wireless.kernel.org/en/users/Documentation/acs +#CONFIG_ACS=y + +# Support Multi Band Operation +#CONFIG_MBO=y + +# Fast Initial Link Setup (FILS) (IEEE 802.11ai) +#CONFIG_FILS=y +# FILS shared key authentication with PFS +#CONFIG_FILS_SK_PFS=y + +# Support RSN on IBSS networks +# This is needed to be able to use mode=1 network profile with proto=RSN and +# key_mgmt=WPA-PSK (i.e., full key management instead of WPA-None). +CONFIG_IBSS_RSN=y + +# External PMKSA cache control +# This can be used to enable control interface commands that allow the current +# PMKSA cache entries to be fetched and new entries to be added. +#CONFIG_PMKSA_CACHE_EXTERNAL=y + +# Mesh Networking (IEEE 802.11s) +#CONFIG_MESH=y + +# Background scanning modules +# These can be used to request wpa_supplicant to perform background scanning +# operations for roaming within an ESS (same SSID). See the bgscan parameter in +# the wpa_supplicant.conf file for more details. +# Periodic background scans based on signal strength +#CONFIG_BGSCAN_SIMPLE=y +# Learn channels used by the network and try to avoid bgscans on other +# channels (experimental) +#CONFIG_BGSCAN_LEARN=y + +# Opportunistic Wireless Encryption (OWE) +# Experimental implementation of draft-harkins-owe-07.txt +#CONFIG_OWE=y + +# Device Provisioning Protocol (DPP) +# This requires CONFIG_IEEE80211W=y to be enabled, too. (see +# wpa_supplicant/README-DPP for details) +#CONFIG_DPP=y + +# uBus IPC/RPC System +# Services can connect to the bus and provide methods +# that can be called by other services or clients. +CONFIG_UBUS=y 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/base/zstd/build.sh b/base/zstd/build.sh new file mode 100644 index 0000000..fd9e28d --- /dev/null +++ b/base/zstd/build.sh @@ -0,0 +1,29 @@ +pkgname=zstd +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 + tar -xf $pkgname-$pkgver.tar.xz +} + +build() { + cd $pkgname-$pkgver + + bad --gmake gmake +} + +package() { + cd $pkgname-$pkgver + bad --gmake gmake install PREFIX=/usr DESTDIR=$pkgdir +} + +license() { + cd $pkgname-$pkgver + 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/docs/index.md b/docs/index.md index 33fd410..4234f5d 100644 --- a/docs/index.md +++ b/docs/index.md @@ -1,4 +1,4 @@ -# Lazybox Linux +# Iglunix Linux ## Building @@ -32,24 +32,24 @@ One needs to cross compile GNU Make and place it in `/usr/bin/gmake` From here one needs to build the first package, `mksh` which will allow one to rebuild `toybox` and `busybox`. -Clone this git repo into `$LBROOT/root/lazybox` and then chroot to `$LBROOT` +Clone this git repo into `$LBROOT/root/iglunix` and then chroot to `$LBROOT` ```sh -cd /root/lazybox +cd /root/iglunix cd pkgs/mksh -../../lazypkg.sh +../../iglupkg.sh tar -xf out/mksh*.tar.xz -C / cd ../.. cd pkgs/bmake -../../lazypkg.sh +../../iglupkg.sh tar -xf out/bmake*.tar.xz -C / cd ../.. cd pkgs/gmake -../../lazypkg.sh +../../iglupkg.sh tar-xf out/gmake*.tar.xz -C / cd ../../ 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/extra/alsa-lib/build.sh b/extra/alsa-lib/build.sh new file mode 100644 index 0000000..09a87d0 --- /dev/null +++ b/extra/alsa-lib/build.sh @@ -0,0 +1,28 @@ +pkgname=alsa-lib +pkgver=1.2.5.1 + +fetch() { + curl -L "http://www.alsa-project.org/files/pub/lib/alsa-lib-$pkgver.tar.bz2" -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/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/extra/bat/build.sh b/extra/bat/build.sh new file mode 100644 index 0000000..b11ab77 --- /dev/null +++ b/extra/bat/build.sh @@ -0,0 +1,22 @@ +pkgname=bat +pkgver=0.17.1 + +fetch() { + curl -L "https://github.com/sharkdp/bat/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 -Dm 755 target/release/${pkgname} "${pkgdir}/usr/bin/" +} + +license() { + cd $pkgname-$pkgver + cat LICENSE-MIT +} diff --git a/extra/brotli/build.sh b/extra/brotli/build.sh new file mode 100644 index 0000000..ca04cf2 --- /dev/null +++ b/extra/brotli/build.sh @@ -0,0 +1,30 @@ +pkgname=brotli +pkgver=1.0.9 + +fetch() { + curl -L "https://github.com/google/brotli/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/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/extra/ccache/build.sh b/extra/ccache/build.sh new file mode 100644 index 0000000..1daf22c --- /dev/null +++ b/extra/ccache/build.sh @@ -0,0 +1,30 @@ +pkgname=ccache +pkgver=4.2.1 + +fetch() { + curl -L "https://github.com/ccache/ccache/releases/download/v4.2.1/ccache-4.2.1.tar.xz" -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/distcc/build.sh b/extra/distcc/build.sh new file mode 100644 index 0000000..eddca3e --- /dev/null +++ b/extra/distcc/build.sh @@ -0,0 +1,35 @@ +pkgname=distcc +pkgver=3.3.5 +bad="gmake" + +fetch() { + curl -L "https://github.com/distcc/distcc/releases/download/v$pkgver/distcc-$pkgver.tar.gz" -o $pkgname-$pkgver.tar.xz + tar -xf $pkgname-$pkgver.tar.xz +} + +build() { + cd $pkgname-$pkgver + ./configure \ + --prefix=/usr \ + --build=x86_64-unknown-linux-musl \ + --host=x86_64-unknown-linux-musl \ + --without-libiberty + + bad --gmake gmake +} + +package() { + cd $pkgname-$pkgver + bad --gmake gmake install DESTDIR=$pkgdir + + install -d $pkgdir/usr/lib/distcc + ln -sr $pkgdir/usr/bin/distcc $pkgdir/usr/lib/distcc/cc + ln -sr $pkgdir/usr/bin/distcc $pkgdir/usr/lib/distcc/c89 + ln -sr $pkgdir/usr/bin/distcc $pkgdir/usr/lib/distcc/c99 + ln -sr $pkgdir/usr/bin/distcc $pkgdir/usr/lib/distcc/c++ +} + +license() { + cd $pkgname-$pkgver + cat COPYING +} 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/extra/exa/build.sh b/extra/exa/build.sh new file mode 100644 index 0000000..f07a652 --- /dev/null +++ b/extra/exa/build.sh @@ -0,0 +1,31 @@ +pkgname=exa +pkgver=0.9.0 +ext="doc" + +fetch() { + curl -L "https://github.com/ogham/exa/archive/v$pkgver.tar.gz" -o $pkgname-$pkgver.tar.xz + tar -xf $pkgname-$pkgver.tar.xz + ln -s /usr/bin/gmake make +} + +build() { + cd $pkgname-$pkgver + PATH=$(pwd)"/..:$PATH" cargo build --release --locked --all-features +} + +package() { + cd $pkgname-$pkgver + cd target/release + install -Dm755 "$pkgname" "$pkgdir/usr/bin/" +} + +package_doc() { + cd $pkgname-$pkgver + cd contrib/man + install -Dm644 $pkgname.1 $pkgdir/usr/share/man/man1/ +} + +license() { + cd $pkgname-$pkgver + cat LICENCE +} diff --git a/extra/extra-cmake-modules/build.sh b/extra/extra-cmake-modules/build.sh new file mode 100644 index 0000000..af0cc3f --- /dev/null +++ b/extra/extra-cmake-modules/build.sh @@ -0,0 +1,31 @@ +pkgname=extra-cmake-modules +_ver_maj_min=5.82 +pkgver=$_ver_maj_min.0 + +fetch() { + 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 +} + +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/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/libudev-zero/build.sh b/extra/glow/build.sh similarity index 54% rename from pkgs/libudev-zero/build.sh rename to extra/glow/build.sh index d7c8a22..2432d02 100644 --- a/pkgs/libudev-zero/build.sh +++ b/extra/glow/build.sh @@ -1,19 +1,19 @@ -pkgname=libudev-zero -pkgver=0.4.7 +pkgname=glow +pkgver=1.3.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/charmbracelet/glow/archive/v$pkgver.tar.gz" -o $pkgname-$pkgver.tar.xz tar -xf $pkgname-$pkgver.tar.xz } build() { cd $pkgname-$pkgver - make + go build -o build/ } package() { cd $pkgname-$pkgver - make install PREFIX=/usr DESTDIR=$pkgdir + install -Dm755 build/$pkgname $pkgdir/usr/bin/$pkgname } license() { diff --git a/extra/go/build.sh b/extra/go/build.sh new file mode 100644 index 0000000..1f2d277 --- /dev/null +++ b/extra/go/build.sh @@ -0,0 +1,32 @@ +pkgname=go +pkgver=1.16 + +# TODO(Ella): should be loaded from `/etc/iglupkg.d/go.conf` +GOROOT_BOOTSTRAP=/usr/lib/go + +fetch() { + curl -L "https://golang.org/dl/go${pkgver/_/}.src.tar.gz" -o $pkgname-$pkgver.tar.xz + tar -xf $pkgname-$pkgver.tar.xz + mv go go-$pkgver +} + +build() { + cd $pkgname-$pkgver + cd src + GOROOT_BOOTSTRAP=/usr/lib/go ./make.bash +} + +package() { + cd $pkgname-$pkgver + install -d $pkgdir/usr/bin + install -d $pkgdir/usr/lib/go + cp -a bin pkg src lib misc api test $pkgdir/usr/lib/go + + ln -sr $pkgdir/usr/lib/go/bin/go $pkgdir/usr/bin/go + ln -sr $pkgdir/usr/lib/go/bin/gofmt $pkgdir/usr/bin/gofmt +} + +license() { + cd $pkgname-$pkgver + cat LICENSE +} 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 82% rename from pkgs/heirloom-doctools/build.sh rename to extra/heirloom-doctools/build.sh index 85171f3..bece1b7 100644 --- a/pkgs/heirloom-doctools/build.sh +++ b/extra/heirloom-doctools/build.sh @@ -1,6 +1,7 @@ pkgver=master pkgname=heirloom-doctools pkgrel=1 +deps="musl" bad="gmake" ext="doc" @@ -14,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 98% rename from pkgs/heirloom-doctools/mk.config rename to extra/heirloom-doctools/mk.config index a02845e..c0f06c4 100644 --- a/pkgs/heirloom-doctools/mk.config +++ b/extra/heirloom-doctools/mk.config @@ -73,12 +73,12 @@ STRIP=strip # # The C compiler. # -CC=clang +CC=cc # # The C++ compiler. # -CXX=clang++ +CXX=c++ # # Compiler flags. 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/extra/libexecinfo/build.sh b/extra/libexecinfo/build.sh new file mode 100644 index 0000000..476658c --- /dev/null +++ b/extra/libexecinfo/build.sh @@ -0,0 +1,28 @@ +pkgname=libexecinfo +pkgver=20180201 + +fetch() { + curl -L "https://github.com/resslinux/libexecinfo/archive/refs/tags/v$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/extra/librespot/build.sh b/extra/librespot/build.sh new file mode 100644 index 0000000..26fd46d --- /dev/null +++ b/extra/librespot/build.sh @@ -0,0 +1,30 @@ +pkgname=librespot +pkgver=0.2.0 + +_clear_vendor_checksums() { + sed -i 's/\("files":{\)[^}]*/\1/' vendor/$1/.cargo-checksum.json +} + +fetch() { + curl -L "https://github.com/librespot-org/librespot/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 --no-default-features --features alsa-backend +} + +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/libxml2/build.sh b/extra/libxml2/build.sh similarity index 78% rename from pkgs/libxml2/build.sh rename to extra/libxml2/build.sh index 4860d0d..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 - make + bad --gmake gmake } package() { cd $pkgname-$pkgver - make install DESTDIR=$pkgdir + bad --gmake gmake install DESTDIR=$pkgdir } package_dev() { cd $pkgname-$pkgver - make 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/extra/lynx/build.sh b/extra/lynx/build.sh new file mode 100644 index 0000000..5f0f2d6 --- /dev/null +++ b/extra/lynx/build.sh @@ -0,0 +1,31 @@ +pkgname=lynx +pkgver=2.8.9 + +fetch() { + curl "https://invisible-mirror.net/archives/lynx/tarballs/lynx2.8.9rel.1.tar.bz2" -o $pkgname-$pkgver.tar.xz + tar -xf $pkgname-$pkgver.tar.xz + mv lynx2.8.9rel.1 $pkgname-$pkgver +} + +build() { + cd $pkgname-$pkgver + ./configure \ + --prefix=/usr \ + --sysconfdir=/etc \ + --with-ssl=/usr \ + --build=x86_64-unknown-linux-musl \ + --host=x86_64-unknown-linux-musl + + bad --gmake gmake +} + +package() { + cd $pkgname-$pkgver + bad --gmake gmake install DESTDIR=$pkgdir +} + +license() { + cd $pkgname-$pkgver + cat LICENSE +# cat COPYING +} diff --git a/extra/mold/build.sh b/extra/mold/build.sh new file mode 100644 index 0000000..8e42f09 --- /dev/null +++ b/extra/mold/build.sh @@ -0,0 +1,27 @@ +pkgname=mold +pkgver=main +deps="musl:libexecinfo" + +fetch() { + curl -L "https://github.com/rui314/mold/archive/refs/heads/main.tar.gz" -o $pkgname-$pkgver.tar.gz + tar -xf $pkgname-$pkgver.tar.gz + cd $pkgname-$pkgver + patch -p1 < ../../musl.patch +} + +build() { + cd $pkgname-$pkgver + bad --gmake gmake +} + +package() { + cd $pkgname-$pkgver + bad --gmake gmake install DESTDIR=$pkgdir + ln -sr $pkgdir/usr/bin/mold $pkgdir/usr/bin/ld.mold +} + +license() { + cd $pkgname-$pkgver + cat LICENSE +# cat COPYING +} diff --git a/extra/mold/musl.patch b/extra/mold/musl.patch new file mode 100644 index 0000000..498e9d2 --- /dev/null +++ b/extra/mold/musl.patch @@ -0,0 +1,95 @@ +diff --git a/Makefile b/Makefile +index 1b36943..c6e0407 100644 +--- a/Makefile ++++ b/Makefile +@@ -8,7 +8,7 @@ CPPFLAGS = -g -Imimalloc/include -pthread -std=c++20 \ + -DGIT_HASH=\"$(GIT_HASH)\" \ + $(EXTRA_CPPFLAGS) + LDFLAGS += $(EXTRA_LDFLAGS) -rdynamic +-LIBS = -Wl,-as-needed -lcrypto -pthread -lz -lxxhash -ldl -lm ++LIBS = -Wl,-as-needed -lcrypto -pthread -lz -lxxhash -lexecinfo -ldl -lm + OBJS = main.o object_file.o input_sections.o output_chunks.o \ + mapfile.o perf.o linker_script.o archive_file.o output_file.o \ + subprocess.o gc_sections.o icf.o symbols.o cmdline.o filepath.o \ +diff --git a/mold.h b/mold.h +index 550545c..8bab9b9 100644 +--- a/mold.h ++++ b/mold.h +@@ -27,6 +27,7 @@ + #include + #include + #include ++#include + #include + #include + +@@ -41,6 +42,9 @@ typedef int32_t i32; + typedef int64_t i64; + + static constexpr i32 SECTOR_SIZE = 512; ++#ifdef PAGE_SIZE ++#undef PAGE_SIZE ++#endif + static constexpr i32 PAGE_SIZE = 4096; + static constexpr i32 SHA256_SIZE = 32; + +@@ -2198,7 +2202,7 @@ InputFile::get_string(Context &ctx, const ElfShdr &shdr) { + u8 *end = begin + shdr.sh_size; + if (mb->data(ctx) + mb->size() < end) + Fatal(ctx) << *this << ": shdr corrupted"; +- return {(char *)begin, (char *)end}; ++ return {(char *)begin, (size_t)(end-begin)}; + } + + template +diff --git a/oneTBB/include/oneapi/tbb/detail/_config.h b/oneTBB/include/oneapi/tbb/detail/_config.h +index 27a3dd7..bb422b0 100644 +--- a/oneTBB/include/oneapi/tbb/detail/_config.h ++++ b/oneTBB/include/oneapi/tbb/detail/_config.h +@@ -257,7 +257,7 @@ + #define __TBB_CPP20_COMPARISONS_PRESENT __TBB_CPP20_PRESENT + #endif + +-#define __TBB_RESUMABLE_TASKS (!__TBB_WIN8UI_SUPPORT && !__ANDROID__) ++#define __TBB_RESUMABLE_TASKS (!__TBB_WIN8UI_SUPPORT && __GLIBC__) + + /* This macro marks incomplete code or comments describing ideas which are considered for the future. + * See also for plain comment with TODO and FIXME marks for small improvement opportunities. +diff --git a/oneTBB/src/tbbmalloc_proxy/proxy.cpp b/oneTBB/src/tbbmalloc_proxy/proxy.cpp +index b286e51..8057708 100644 +--- a/oneTBB/src/tbbmalloc_proxy/proxy.cpp ++++ b/oneTBB/src/tbbmalloc_proxy/proxy.cpp +@@ -24,7 +24,8 @@ + // of aligned_alloc as required by new C++ standard, this makes it hard to + // redefine aligned_alloc here. However, running on systems with new libc + // version, it still needs it to be redefined, thus tricking system headers +-#if defined(__GLIBC_PREREQ) && !__GLIBC_PREREQ(2, 16) && _GLIBCXX_HAVE_ALIGNED_ALLOC ++#if defined(__GLIBC_PREREQ) ++#if !__GLIBC_PREREQ(2, 16) && _GLIBCXX_HAVE_ALIGNED_ALLOC + // tell that there is no aligned_alloc + #undef _GLIBCXX_HAVE_ALIGNED_ALLOC + // trick to define another symbol instead +@@ -33,6 +34,7 @@ + #include + #undef aligned_alloc + #endif // defined(__GLIBC_PREREQ)&&!__GLIBC_PREREQ(2, 16)&&_GLIBCXX_HAVE_ALIGNED_ALLOC ++#endif // defined(__GLIBC_PREREQ) + #endif // __linux__ && !__ANDROID__ + + #include "proxy.h" +@@ -256,6 +258,7 @@ int mallopt(int /*param*/, int /*value*/) __THROW + return 1; + } + ++#ifdef __GLIBC__ + struct mallinfo mallinfo() __THROW + { + struct mallinfo m; +@@ -263,6 +266,7 @@ struct mallinfo mallinfo() __THROW + + return m; + } ++#endif + + #if __ANDROID__ + // Android doesn't have malloc_usable_size, provide it to be compatible diff --git a/extra/ncspot/build.sh b/extra/ncspot/build.sh new file mode 100644 index 0000000..b634376 --- /dev/null +++ b/extra/ncspot/build.sh @@ -0,0 +1,54 @@ +pkgname=ncspot +pkgver=0.8.1 + +_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 + tar -xf rust-openssl.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/pancurses-backend,alsa_backend +} + +package() { + cd $pkgname-$pkgver + install -Dm 755 target/release/$pkgname $pkgdir/usr/bin/ +} + +license() { + cd $pkgname-$pkgver + cat LICENSE +# cat COPYING +} + diff --git a/extra/ncspot/cursive_ptr.patch b/extra/ncspot/cursive_ptr.patch new file mode 100644 index 0000000..342ef6c --- /dev/null +++ b/extra/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/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/extra/openpam/build.sh b/extra/openpam/build.sh new file mode 100644 index 0000000..83f179e --- /dev/null +++ b/extra/openpam/build.sh @@ -0,0 +1,28 @@ +pkgname=openpam +pkgver=20190224 + +fetch() { + curl "https://www.openpam.org/downloads/38" -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/pcre/build.sh b/extra/pcre/build.sh new file mode 100644 index 0000000..52b52e2 --- /dev/null +++ b/extra/pcre/build.sh @@ -0,0 +1,32 @@ +pkgname=pcre +pkgver=8.45 + +fetch() { + curl "https://ftp.pcre.org/pub/pcre/pcre-$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 +} + +package() { + cd $pkgname-$pkgver + make install DESTDIR=$pkgdir +} + +backup() { + return +} + +license() { + cd $pkgname-$pkgver + cat LICENSE +# cat COPYING +} 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/extra/rust/alpine-crt.patch b/extra/rust/alpine-crt.patch new file mode 100644 index 0000000..deaefd4 --- /dev/null +++ b/extra/rust/alpine-crt.patch @@ -0,0 +1,11 @@ +--- a/compiler/rustc_target/src/spec/linux_musl_base.rs ++++ b/compiler/rustc_target/src/spec/linux_musl_base.rs +@@ -10,7 +10,7 @@ + base.crt_objects_fallback = Some(CrtObjectsFallback::Musl); + + // These targets statically link libc by default +- base.crt_static_default = true; ++ base.crt_static_default = false; + + base + } 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/extra/rust/libexec.patch b/extra/rust/libexec.patch new file mode 100644 index 0000000..1675db4 --- /dev/null +++ b/extra/rust/libexec.patch @@ -0,0 +1,22 @@ +--- a/src/bootstrap/dist.rs ++++ b/src/bootstrap/dist.rs +@@ -980,7 +980,7 @@ + for dirent in fs::read_dir(cargo.parent().unwrap()).expect("read_dir") { + let dirent = dirent.expect("read dir entry"); + if dirent.file_name().to_str().expect("utf8").starts_with("cargo-credential-") { +- tarball.add_file(&dirent.path(), "libexec", 0o755); ++ tarball.add_file(&dirent.path(), "lib", 0o755); + } + } + +--- a/src/tools/cargo/src/cargo/ops/registry/auth.rs ++++ b/src/tools/cargo/src/cargo/ops/registry/auth.rs +@@ -223,7 +223,7 @@ + .parent() + .and_then(|p| p.parent()) + .ok_or_else(|| format_err!("expected cargo path {}", cargo.display()))?; +- let exe = root.join("libexec").join(format!( ++ let exe = root.join("lib").join(format!( + "cargo-credential-{}{}", + cred_name, + std::env::consts::EXE_SUFFIX diff --git a/extra/rust/llvm_crt.patch b/extra/rust/llvm_crt.patch new file mode 100644 index 0000000..07788cd --- /dev/null +++ b/extra/rust/llvm_crt.patch @@ -0,0 +1,45 @@ +--- a/src/bootstrap/compile.rs ++++ b/src/bootstrap/compile.rs +@@ -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 @@ + + pub(super) fn pre_musl_fallback() -> CrtObjects { + new(&[ +- (LinkOutputKind::DynamicNoPicExe, &["crt1.o", "crti.o", "crtbegin.o"]), +- (LinkOutputKind::DynamicPicExe, &["Scrt1.o", "crti.o", "crtbeginS.o"]), +- (LinkOutputKind::StaticNoPicExe, &["crt1.o", "crti.o", "crtbegin.o"]), +- (LinkOutputKind::StaticPicExe, &["rcrt1.o", "crti.o", "crtbeginS.o"]), +- (LinkOutputKind::DynamicDylib, &["crti.o", "crtbeginS.o"]), +- (LinkOutputKind::StaticDylib, &["crti.o", "crtbeginS.o"]), ++ (LinkOutputKind::DynamicNoPicExe, &["crt1.o", "crti.o"]), ++ (LinkOutputKind::DynamicPicExe, &["Scrt1.o", "crti.o"]), ++ (LinkOutputKind::StaticNoPicExe, &["crt1.o", "crti.o"]), ++ (LinkOutputKind::StaticPicExe, &["rcrt1.o", "crti.o"]), ++ (LinkOutputKind::DynamicDylib, &["crti.o"]), ++ (LinkOutputKind::StaticDylib, &["crti.o"]), + ]) + } + + pub(super) fn post_musl_fallback() -> CrtObjects { +- new(&[ +- (LinkOutputKind::DynamicNoPicExe, &["crtend.o", "crtn.o"]), +- (LinkOutputKind::DynamicPicExe, &["crtendS.o", "crtn.o"]), +- (LinkOutputKind::StaticNoPicExe, &["crtend.o", "crtn.o"]), +- (LinkOutputKind::StaticPicExe, &["crtendS.o", "crtn.o"]), +- (LinkOutputKind::DynamicDylib, &["crtendS.o", "crtn.o"]), +- (LinkOutputKind::StaticDylib, &["crtendS.o", "crtn.o"]), +- ]) ++ all("crtn.o") + } + + pub(super) fn pre_mingw_fallback() -> CrtObjects { diff --git a/extra/rust/unfreeze.patch b/extra/rust/unfreeze.patch new file mode 100644 index 0000000..0f6e0e7 --- /dev/null +++ b/extra/rust/unfreeze.patch @@ -0,0 +1,23 @@ +--- a/src/bootstrap/bootstrap.py ++++ b/src/bootstrap/bootstrap.py +@@ -889,8 +889,6 @@ + args.append("--verbose") + if self.use_locked_deps: + args.append("--locked") +- if self.use_vendored_sources: +- args.append("--frozen") + run(args, env=env, verbose=self.verbose) + + def build_triple(self): +--- a/src/bootstrap/builder.rs ++++ b/src/bootstrap/builder.rs +@@ -1459,9 +1459,6 @@ + if self.config.locked_deps { + cargo.arg("--locked"); + } +- if self.config.vendor || self.is_sudo { +- cargo.arg("--frozen"); +- } + + // Try to use a sysroot-relative bindir, in case it was configured absolutely. + cargo.env("RUSTC_INSTALL_BINDIR", self.config.bindir_relative()); diff --git a/extra/sqlite/build.sh b/extra/sqlite/build.sh new file mode 100644 index 0000000..c639853 --- /dev/null +++ b/extra/sqlite/build.sh @@ -0,0 +1,29 @@ +pkgname=sqlite +pkgver=3350100 + +fetch() { + curl "https://sqlite.org/2021/sqlite-autoconf-3350100.tar.gz" -o $pkgname-$pkgver.tar.xz + tar -xf $pkgname-$pkgver.tar.xz + mv $pkgname-autoconf-$pkgver $pkgname-$pkgver +} + +build() { + cd $pkgname-$pkgver + ./configure \ + --prefix=/usr \ + --build=x86_64-unknown-linux-musl \ + --host=x86_64-unknown-linux-musl + + make +} + +package() { + cd $pkgname-$pkgver + make install DESTDIR=$pkgdir +} + +license() { + cd $pkgname-$pkgver + cat LICENSE +# cat COPYING +} diff --git a/extra/tbb/build.sh b/extra/tbb/build.sh new file mode 100644 index 0000000..b44a5be --- /dev/null +++ b/extra/tbb/build.sh @@ -0,0 +1,36 @@ +pkgname=tbb +pkgver=master + +fetch() { + curl -L "https://github.com/oneapi-src/oneTBB/archive/refs/heads/master.tar.gz" -o $pkgname-$pkgver.tar.xz + tar -xf $pkgname-$pkgver.tar.xz + mv oneTBB-$pkgver $pkgname-$pkgver + mkdir $pkgname-$pkgver/build + cd $pkgname-$pkgver + patch -p1 < ../../musl-malloc-proxy.patch + patch -p1 < ../../musl-rtld.patch +} + +build() { + cd $pkgname-$pkgver + cd build + cmake -G Ninja ../ \ + -DCMAKE_BUILD_TYPE=Release \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DCMAKE_INSTALL_LIBDIR=lib \ + -DTBB_TEST=OFF \ + -DCMAKE_CXX_FLAGS=-Wno-unused-command-line-argument + samu +} + +package() { + cd $pkgname-$pkgver + cd build + DESTDIR=$pkgdir samu install +} + +license() { + cd $pkgname-$pkgver + cat LICENSE.txt +# cat COPYING +} diff --git a/extra/tbb/musl-malloc-proxy.patch b/extra/tbb/musl-malloc-proxy.patch new file mode 100644 index 0000000..410cf58 --- /dev/null +++ b/extra/tbb/musl-malloc-proxy.patch @@ -0,0 +1,38 @@ +--- a/src/tbbmalloc_proxy/proxy.cpp ++++ b/src/tbbmalloc_proxy/proxy.cpp +@@ -24,7 +24,8 @@ + // of aligned_alloc as required by new C++ standard, this makes it hard to + // redefine aligned_alloc here. However, running on systems with new libc + // version, it still needs it to be redefined, thus tricking system headers +-#if defined(__GLIBC_PREREQ) && !__GLIBC_PREREQ(2, 16) && _GLIBCXX_HAVE_ALIGNED_ALLOC ++#if defined(__GLIBC_PREREQ) ++#if !__GLIBC_PREREQ(2, 16) && _GLIBCXX_HAVE_ALIGNED_ALLOC + // tell that there is no aligned_alloc + #undef _GLIBCXX_HAVE_ALIGNED_ALLOC + // trick to define another symbol instead +@@ -32,7 +33,8 @@ + // Fix the state and undefine the trick + #include + #undef aligned_alloc +-#endif // defined(__GLIBC_PREREQ)&&!__GLIBC_PREREQ(2, 16)&&_GLIBCXX_HAVE_ALIGNED_ALLOC ++#endif // !__GLIBC_PREREQ(2, 16)&&_GLIBCXX_HAVE_ALIGNED_ALLOC ++#endif // defined(__GLIBC_PREREQ) + #endif // __linux__ && !__ANDROID__ + + #include "proxy.h" +@@ -253,6 +255,7 @@ + return 1; + } + ++#ifdef __GLIBC__ + struct mallinfo mallinfo() __THROW + { + struct mallinfo m; +@@ -260,6 +263,7 @@ + + return m; + } ++#endif + + #if __ANDROID__ + // Android doesn't have malloc_usable_size, provide it to be compatible diff --git a/extra/tbb/musl-rtld.patch b/extra/tbb/musl-rtld.patch new file mode 100644 index 0000000..2e8a37a --- /dev/null +++ b/extra/tbb/musl-rtld.patch @@ -0,0 +1,14 @@ +--- a/src/tbb/dynamic_link.cpp ++++ b/src/tbb/dynamic_link.cpp +@@ -413,9 +413,9 @@ + int flags = RTLD_NOW; + if (local_binding) { + flags = flags | RTLD_LOCAL; +-#if __linux__ && !__ANDROID__ && !__TBB_USE_ADDRESS_SANITIZER ++#if __linux__ && defined(__GLIBC__) && !__TBB_USE_ADDRESS_SANITIZER + flags = flags | RTLD_DEEPBIND; +-#endif /*__linux__ && !__ANDROID__ && !__TBB_USE_ADDRESS_SANITIZER*/ ++#endif /*__linux__ && defined(__GLIBC__) && !__TBB_USE_ADDRESS_SANITIZER*/ + } else { + flags = flags | RTLD_GLOBAL; + } diff --git a/extra/xxhash/build.sh b/extra/xxhash/build.sh new file mode 100644 index 0000000..76758b3 --- /dev/null +++ b/extra/xxhash/build.sh @@ -0,0 +1,25 @@ +pkgname=xxhash +pkgver=0.8.0 +deps=musl + +fetch() { + curl -L "https://github.com/Cyan4973/xxHash/archive/refs/tags/v$pkgver.tar.gz" -o $pkgname-$pkgver.tar.xz + tar -xf $pkgname-$pkgver.tar.xz + mv xxHash-$pkgver $pkgname-$pkgver +} + +build() { + cd $pkgname-$pkgver + bad --gmake gmake PREFIX=/usr +} + +package() { + cd $pkgname-$pkgver + bad --gmake gmake install PREFIX=/usr DESTDIR=$pkgdir +} + +license() { + cd $pkgname-$pkgver + cat LICENSE +# cat COPYING +} 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/extra/youtube-dl/build.sh b/extra/youtube-dl/build.sh new file mode 100644 index 0000000..1a9bd2d --- /dev/null +++ b/extra/youtube-dl/build.sh @@ -0,0 +1,29 @@ +pkgver=2021.04.07 +pkgname=youtube-dl +deps=python +bad="" + +fetch() { + curl -L "https://github.com/ytdl-org/youtube-dl/releases/download/2021.04.07/youtube-dl-2021.04.07.tar.gz" -o $pkgname-$pkgver.tar.gz + tar -xf $pkgname-$pkgver.tar.gz + mv $pkgname $pkgname-$pkgver +} + +build() { + cd $pkgname-$pkgver + python setup.py build +} + +package() { + cd $pkgname-$pkgver + python setup.py install --prefix=/usr --root=$pkgdir +} + +package_doc() { + echo $pkgdir +} + +license() { + cd $pkgname-$pkgver + cat LICENSE +} diff --git a/extra/zig/build.sh b/extra/zig/build.sh new file mode 100644 index 0000000..a7bf32d --- /dev/null +++ b/extra/zig/build.sh @@ -0,0 +1,40 @@ +pkgname=zig +pkgver=0.8.0 + +fetch() { + curl "https://ziglang.org/download/$pkgver/zig-$pkgver.tar.xz" -o $pkgname-$pkgver.tar.gz + tar -xf $pkgname-$pkgver.tar.gz + mkdir $pkgname-$pkgver/build + cp ../llvm-req-arch.patch . + cd $pkgname-$pkgver + patch -p1 < ../llvm-req-arch.patch +} + +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 + rm -rf $pkgdir/usr/lib/zig/libc/glibc + rm -rf $pkgdir/usr/lib/zig/libc/mingw + rm -rf $pkgdir/usr/lib/zig/libc/wasi + + rm -rf $pkgdir/usr/lib/zig/libc/include/*gnu* + rm -rf $pkgdir/usr/lib/zig/libc/include/*glibc* + rm -rf $pkgdir/usr/lib/zig/libc/include/*windows* +} + +license() { + cd $pkgname-$pkgver + cat LICENSE +# cat COPYING +} diff --git a/extra/zig/llvm-req-arch.patch b/extra/zig/llvm-req-arch.patch new file mode 100644 index 0000000..cfc9d17 --- /dev/null +++ b/extra/zig/llvm-req-arch.patch @@ -0,0 +1,25 @@ +--- a/cmake/Findllvm.cmake ++++ b/cmake/Findllvm.cmake +@@ -107,22 +107,8 @@ + endif() + endfunction(NEED_TARGET) + NEED_TARGET("AArch64") +- NEED_TARGET("AMDGPU") +- NEED_TARGET("ARM") +- NEED_TARGET("AVR") +- NEED_TARGET("BPF") +- NEED_TARGET("Hexagon") +- NEED_TARGET("Lanai") +- NEED_TARGET("Mips") +- NEED_TARGET("MSP430") +- NEED_TARGET("NVPTX") +- NEED_TARGET("PowerPC") + NEED_TARGET("RISCV") +- NEED_TARGET("Sparc") +- NEED_TARGET("SystemZ") +- NEED_TARGET("WebAssembly") + NEED_TARGET("X86") +- NEED_TARGET("XCore") + + if(ZIG_STATIC_LLVM) + execute_process( 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/extra/zsh-autosuggestions/build.sh b/extra/zsh-autosuggestions/build.sh new file mode 100644 index 0000000..1751575 --- /dev/null +++ b/extra/zsh-autosuggestions/build.sh @@ -0,0 +1,25 @@ +pkgname=zsh-autosuggestions +pkgver=0.6.4 + +fetch() { + curl -L "https://github.com/zsh-users/$pkgname/archive/v$pkgver.tar.gz" -o $pkgname-$pkgver.tar.xz + tar -xf $pkgname-$pkgver.tar.xz + #mv zsh-users-$pkgname-* $pkgname-$pkgver +} + +build() { + cd $pkgname-$pkgver + make +} + +package() { + cd $pkgname-$pkgver + install -Dm644 ./$pkgname.zsh "$pkgdir/usr/share/zsh/plugins/$pkgname/" + install -Dm644 ./$pkgname.plugin.zsh "$pkgdir/usr/share/zsh/plugins/$pkgname/" + +} + +license() { + cd $pkgname-$pkgver + cat LICENSE +} diff --git a/extra/zsh-syntax-highlighting/build.sh b/extra/zsh-syntax-highlighting/build.sh new file mode 100644 index 0000000..d3a4c2d --- /dev/null +++ b/extra/zsh-syntax-highlighting/build.sh @@ -0,0 +1,23 @@ +pkgname=zsh-syntax-highlighting +pkgver=0.7.1 + +fetch() { + curl -L "https://github.com/zsh-users/$pkgname/tarball/$pkgver" -o $pkgname-$pkgver.tar.xz + tar -xf $pkgname-$pkgver.tar.xz + mv zsh-users-$pkgname-* $pkgname-$pkgver +} + +build() { + cd $pkgname-$pkgver + make +} + +package() { + cd $pkgname-$pkgver + make PREFIX="/usr" SHARE_DIR="$pkgdir/usr/share/zsh/plugins/$pkgname" DESTDIR="$pkgdir" install +} + +license() { + cd $pkgname-$pkgver + cat COPYING.md +} diff --git a/extra/zsh/build.sh b/extra/zsh/build.sh new file mode 100644 index 0000000..603e766 --- /dev/null +++ b/extra/zsh/build.sh @@ -0,0 +1,38 @@ +pkgname=zsh +pkgver=5.8 +ext=doc + +fetch() { + curl "https://www.zsh.org/pub/zsh-$pkgver.tar.xz" -o $pkgname-$pkgver.tar.xz + tar -xf $pkgname-$pkgver.tar.xz + cp ../zprofile.zsh . +} + +build() { + cd $pkgname-$pkgver + ./configure \ + --prefix=/usr \ + --build=$TRIPLE \ + --host=$TRIPLE + + make +} + +package() { + cd $pkgname-$pkgver + make install DESTDIR=$pkgdir + install -d /etc + install -Dm644 ../zprofile.zsh $pkgdir/etc/zprofile + rm -rf $pkgdir/usr/share/man +} + +package_doc() { + cd $pkgname-$pkgver + make install.man DESTDIR=$pkgdir +} + +license() { + cd $pkgname-$pkgver + cat LICENCE +# cat COPYING +} diff --git a/extra/zsh/zprofile.zsh b/extra/zsh/zprofile.zsh new file mode 100644 index 0000000..75759ba --- /dev/null +++ b/extra/zsh/zprofile.zsh @@ -0,0 +1,2 @@ +emulate sh -c 'source /etc/profile' +export PS1='%m%# ' 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/gnome/pango/build.sh b/gnome/pango/build.sh new file mode 100644 index 0000000..2e0721b --- /dev/null +++ b/gnome/pango/build.sh @@ -0,0 +1,31 @@ +pkgname=pango +_pkgver=1.49 +pkgver=$_pkgver.1 + +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 +} + +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/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/gui/anthy/build.sh b/gui/anthy/build.sh new file mode 100644 index 0000000..d08fc0c --- /dev/null +++ b/gui/anthy/build.sh @@ -0,0 +1,28 @@ +pkgname=anthy +pkgver=9100h + +fetch() { + curl -L "https://ftp.halifax.rwth-aachen.de/osdn/anthy/37536/anthy-$pkgver.tar.gz" -o $pkgname-$pkgver.tar.xz + tar -xf $pkgname-$pkgver.tar.xz +} + +build() { + cd $pkgname-$pkgver + ./configure \ + --prefix=/usr \ + --build=$(echo $TRIPLE | sed 's/musl/gnu/g') \ + --host=$(echo $TRIPLE | sed 's/musl/gnu/g') + + make +} + +package() { + cd $pkgname-$pkgver + make install DESTDIR=$pkgdir +} + +license() { + cd $pkgname-$pkgver + cat LICENSE +# cat COPYING +} 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/gui/cairo/build.sh b/gui/cairo/build.sh new file mode 100644 index 0000000..5108112 --- /dev/null +++ b/gui/cairo/build.sh @@ -0,0 +1,34 @@ +pkgname=cairo +pkgver=master + +fetch() { + curl "https://gitlab.freedesktop.org/cairo/cairo/-/archive/master/cairo-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 \ + -Dglib=enabled + samu +} + +package() { + cd $pkgname-$pkgver + cd build + DESTDIR=$pkgdir samu install +} + +backup() { + return +} + +license() { + cd $pkgname-$pkgver + cat COPYING* +} diff --git a/gui/ffmpeg/build.sh b/gui/ffmpeg/build.sh new file mode 100644 index 0000000..15e98e7 --- /dev/null +++ b/gui/ffmpeg/build.sh @@ -0,0 +1,28 @@ +pkgname=ffmpeg +pkgver=4.4 + +fetch() { + curl "https://ffmpeg.org/releases/ffmpeg-$pkgver.tar.xz" -o $pkgname-$pkgver.tar.xz + tar -xf $pkgname-$pkgver.tar.xz +} + +build() { + cd $pkgname-$pkgver + ./configure \ + --prefix=/usr \ + --enable-openssl \ + --cc=cc + + bad --gmake gmake +} + +package() { + cd $pkgname-$pkgver + bad --gmake gmake install DESTDIR=$pkgdir +} + +license() { + cd $pkgname-$pkgver + cat LICENSE +# cat COPYING +} 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/gui/fontconfig/fcobjshash.h b/gui/fontconfig/fcobjshash.h new file mode 100644 index 0000000..fb927fa --- /dev/null +++ b/gui/fontconfig/fcobjshash.h @@ -0,0 +1,347 @@ +/* ANSI-C code produced by gperf version 3.1 */ +/* Command-line: /root/gperf-3.1/src/gperf --pic -m 100 --output-file src/fcobjshash.h src/fcobjshash.gperf */ +/* Computed positions: -k'3,5' */ + +#if !((' ' == 32) && ('!' == 33) && ('"' == 34) && ('#' == 35) \ + && ('%' == 37) && ('&' == 38) && ('\'' == 39) && ('(' == 40) \ + && (')' == 41) && ('*' == 42) && ('+' == 43) && (',' == 44) \ + && ('-' == 45) && ('.' == 46) && ('/' == 47) && ('0' == 48) \ + && ('1' == 49) && ('2' == 50) && ('3' == 51) && ('4' == 52) \ + && ('5' == 53) && ('6' == 54) && ('7' == 55) && ('8' == 56) \ + && ('9' == 57) && (':' == 58) && (';' == 59) && ('<' == 60) \ + && ('=' == 61) && ('>' == 62) && ('?' == 63) && ('A' == 65) \ + && ('B' == 66) && ('C' == 67) && ('D' == 68) && ('E' == 69) \ + && ('F' == 70) && ('G' == 71) && ('H' == 72) && ('I' == 73) \ + && ('J' == 74) && ('K' == 75) && ('L' == 76) && ('M' == 77) \ + && ('N' == 78) && ('O' == 79) && ('P' == 80) && ('Q' == 81) \ + && ('R' == 82) && ('S' == 83) && ('T' == 84) && ('U' == 85) \ + && ('V' == 86) && ('W' == 87) && ('X' == 88) && ('Y' == 89) \ + && ('Z' == 90) && ('[' == 91) && ('\\' == 92) && (']' == 93) \ + && ('^' == 94) && ('_' == 95) && ('a' == 97) && ('b' == 98) \ + && ('c' == 99) && ('d' == 100) && ('e' == 101) && ('f' == 102) \ + && ('g' == 103) && ('h' == 104) && ('i' == 105) && ('j' == 106) \ + && ('k' == 107) && ('l' == 108) && ('m' == 109) && ('n' == 110) \ + && ('o' == 111) && ('p' == 112) && ('q' == 113) && ('r' == 114) \ + && ('s' == 115) && ('t' == 116) && ('u' == 117) && ('v' == 118) \ + && ('w' == 119) && ('x' == 120) && ('y' == 121) && ('z' == 122) \ + && ('{' == 123) && ('|' == 124) && ('}' == 125) && ('~' == 126)) +/* The character set is not based on ISO-646. */ +#error "gperf generated tables don't work with this execution character set. Please report a bug to ." +#endif + +#line 1 "src/fcobjshash.gperf" + +#line 13 "src/fcobjshash.gperf" +struct FcObjectTypeInfo { +int name; +int id; +}; +#include +/* maximum key range = 59, duplicates = 0 */ + +#ifdef __GNUC__ +__inline +#else +#ifdef __cplusplus +inline +#endif +#endif +static unsigned int +FcObjectTypeHash (register const char *str, register size_t len) +{ + static const unsigned char asso_values[] = + { + 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, + 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, + 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, + 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, + 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, + 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, + 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, + 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, + 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, + 66, 66, 66, 66, 66, 66, 66, 4, 10, 32, + 21, 29, 28, 49, 14, 4, 66, 66, 5, 31, + 18, 22, 27, 66, 15, 9, 8, 23, 23, 13, + 23, 16, 4, 66, 66, 66, 66, 66, 66, 66, + 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, + 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, + 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, + 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, + 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, + 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, + 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, + 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, + 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, + 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, + 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, + 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, + 66, 66, 66, 66, 66, 66 + }; + register unsigned int hval = len; + + switch (hval) + { + default: + hval += asso_values[(unsigned char)str[4]]; + /*FALLTHROUGH*/ + case 4: + case 3: + hval += asso_values[(unsigned char)str[2]]; + break; + } + return hval; +} + +struct FcObjectTypeNamePool_t + { + char FcObjectTypeNamePool_str7[sizeof("dpi")]; + char FcObjectTypeNamePool_str8[sizeof("size")]; + char FcObjectTypeNamePool_str9[sizeof("file")]; + char FcObjectTypeNamePool_str13[sizeof("hash")]; + char FcObjectTypeNamePool_str14[sizeof("rgba")]; + char FcObjectTypeNamePool_str15[sizeof("spacing")]; + char FcObjectTypeNamePool_str16[sizeof("scalable")]; + char FcObjectTypeNamePool_str17[sizeof("slant")]; + char FcObjectTypeNamePool_str18[sizeof("matrix")]; + char FcObjectTypeNamePool_str19[sizeof("outline")]; + char FcObjectTypeNamePool_str20[sizeof("charset")]; + char FcObjectTypeNamePool_str21[sizeof("antialias")]; + char FcObjectTypeNamePool_str22[sizeof("lang")]; + char FcObjectTypeNamePool_str23[sizeof("embolden")]; + char FcObjectTypeNamePool_str24[sizeof("weight")]; + char FcObjectTypeNamePool_str25[sizeof("color")]; + char FcObjectTypeNamePool_str26[sizeof("charwidth")]; + char FcObjectTypeNamePool_str27[sizeof("variable")]; + char FcObjectTypeNamePool_str28[sizeof("charheight")]; + char FcObjectTypeNamePool_str29[sizeof("hinting")]; + char FcObjectTypeNamePool_str30[sizeof("autohint")]; + char FcObjectTypeNamePool_str31[sizeof("fullname")]; + char FcObjectTypeNamePool_str32[sizeof("postscriptname")]; + char FcObjectTypeNamePool_str33[sizeof("verticallayout")]; + char FcObjectTypeNamePool_str34[sizeof("lcdfilter")]; + char FcObjectTypeNamePool_str35[sizeof("fullnamelang")]; + char FcObjectTypeNamePool_str36[sizeof("hintstyle")]; + char FcObjectTypeNamePool_str37[sizeof("pixelsize")]; + char FcObjectTypeNamePool_str38[sizeof("scale")]; + char FcObjectTypeNamePool_str39[sizeof("globaladvance")]; + char FcObjectTypeNamePool_str40[sizeof("width")]; + char FcObjectTypeNamePool_str41[sizeof("order")]; + char FcObjectTypeNamePool_str42[sizeof("family")]; + char FcObjectTypeNamePool_str43[sizeof("fonthashint")]; + char FcObjectTypeNamePool_str44[sizeof("namelang")]; + char FcObjectTypeNamePool_str45[sizeof("embeddedbitmap")]; + char FcObjectTypeNamePool_str46[sizeof("familylang")]; + char FcObjectTypeNamePool_str47[sizeof("capability")]; + char FcObjectTypeNamePool_str48[sizeof("rasterizer")]; + char FcObjectTypeNamePool_str49[sizeof("index")]; + char FcObjectTypeNamePool_str50[sizeof("style")]; + char FcObjectTypeNamePool_str51[sizeof("foundry")]; + char FcObjectTypeNamePool_str52[sizeof("fontversion")]; + char FcObjectTypeNamePool_str53[sizeof("minspace")]; + char FcObjectTypeNamePool_str54[sizeof("stylelang")]; + char FcObjectTypeNamePool_str55[sizeof("fontvariations")]; + char FcObjectTypeNamePool_str56[sizeof("fontformat")]; + char FcObjectTypeNamePool_str57[sizeof("decorative")]; + char FcObjectTypeNamePool_str58[sizeof("fontfeatures")]; + char FcObjectTypeNamePool_str59[sizeof("symbol")]; + char FcObjectTypeNamePool_str60[sizeof("prgname")]; + char FcObjectTypeNamePool_str65[sizeof("aspect")]; + }; +static const struct FcObjectTypeNamePool_t FcObjectTypeNamePool_contents = + { + "dpi", + "size", + "file", + "hash", + "rgba", + "spacing", + "scalable", + "slant", + "matrix", + "outline", + "charset", + "antialias", + "lang", + "embolden", + "weight", + "color", + "charwidth", + "variable", + "charheight", + "hinting", + "autohint", + "fullname", + "postscriptname", + "verticallayout", + "lcdfilter", + "fullnamelang", + "hintstyle", + "pixelsize", + "scale", + "globaladvance", + "width", + "order", + "family", + "fonthashint", + "namelang", + "embeddedbitmap", + "familylang", + "capability", + "rasterizer", + "index", + "style", + "foundry", + "fontversion", + "minspace", + "stylelang", + "fontvariations", + "fontformat", + "decorative", + "fontfeatures", + "symbol", + "prgname", + "aspect" + }; +#define FcObjectTypeNamePool ((const char *) &FcObjectTypeNamePool_contents) +const struct FcObjectTypeInfo * +FcObjectTypeLookup (register const char *str, register size_t len) +{ + enum + { + TOTAL_KEYWORDS = 52, + MIN_WORD_LENGTH = 3, + MAX_WORD_LENGTH = 14, + MIN_HASH_VALUE = 7, + MAX_HASH_VALUE = 65 + }; + + static const struct FcObjectTypeInfo wordlist[] = + { + {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, +#line 43 "src/fcobjshash.gperf" + {(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str7,FC_DPI_OBJECT}, +#line 27 "src/fcobjshash.gperf" + {(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str8,FC_SIZE_OBJECT}, +#line 38 "src/fcobjshash.gperf" + {(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str9,FC_FILE_OBJECT}, + {-1}, {-1}, {-1}, +#line 62 "src/fcobjshash.gperf" + {(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str13,FC_HASH_OBJECT}, +#line 44 "src/fcobjshash.gperf" + {(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str14,FC_RGBA_OBJECT}, +#line 30 "src/fcobjshash.gperf" + {(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str15,FC_SPACING_OBJECT}, +#line 42 "src/fcobjshash.gperf" + {(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str16,FC_SCALABLE_OBJECT}, +#line 24 "src/fcobjshash.gperf" + {(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str17,FC_SLANT_OBJECT}, +#line 49 "src/fcobjshash.gperf" + {(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str18,FC_MATRIX_OBJECT}, +#line 41 "src/fcobjshash.gperf" + {(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str19,FC_OUTLINE_OBJECT}, +#line 50 "src/fcobjshash.gperf" + {(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str20,FC_CHARSET_OBJECT}, +#line 32 "src/fcobjshash.gperf" + {(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str21,FC_ANTIALIAS_OBJECT}, +#line 51 "src/fcobjshash.gperf" + {(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str22,FC_LANG_OBJECT}, +#line 55 "src/fcobjshash.gperf" + {(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str23,FC_EMBOLDEN_OBJECT}, +#line 25 "src/fcobjshash.gperf" + {(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str24,FC_WEIGHT_OBJECT}, +#line 64 "src/fcobjshash.gperf" + {(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str25,FC_COLOR_OBJECT}, +#line 47 "src/fcobjshash.gperf" + {(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str26,FC_CHARWIDTH_OBJECT}, +#line 67 "src/fcobjshash.gperf" + {(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str27,FC_VARIABLE_OBJECT}, +#line 48 "src/fcobjshash.gperf" + {(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str28,FC_CHAR_HEIGHT_OBJECT}, +#line 34 "src/fcobjshash.gperf" + {(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str29,FC_HINTING_OBJECT}, +#line 36 "src/fcobjshash.gperf" + {(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str30,FC_AUTOHINT_OBJECT}, +#line 22 "src/fcobjshash.gperf" + {(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str31,FC_FULLNAME_OBJECT}, +#line 63 "src/fcobjshash.gperf" + {(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str32,FC_POSTSCRIPT_NAME_OBJECT}, +#line 35 "src/fcobjshash.gperf" + {(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str33,FC_VERTICAL_LAYOUT_OBJECT}, +#line 58 "src/fcobjshash.gperf" + {(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str34,FC_LCD_FILTER_OBJECT}, +#line 23 "src/fcobjshash.gperf" + {(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str35,FC_FULLNAMELANG_OBJECT}, +#line 33 "src/fcobjshash.gperf" + {(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str36,FC_HINT_STYLE_OBJECT}, +#line 29 "src/fcobjshash.gperf" + {(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str37,FC_PIXEL_SIZE_OBJECT}, +#line 45 "src/fcobjshash.gperf" + {(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str38,FC_SCALE_OBJECT}, +#line 37 "src/fcobjshash.gperf" + {(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str39,FC_GLOBAL_ADVANCE_OBJECT}, +#line 26 "src/fcobjshash.gperf" + {(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str40,FC_WIDTH_OBJECT}, +#line 69 "src/fcobjshash.gperf" + {(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str41,FC_ORDER_OBJECT}, +#line 18 "src/fcobjshash.gperf" + {(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str42,FC_FAMILY_OBJECT}, +#line 68 "src/fcobjshash.gperf" + {(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str43,FC_FONT_HAS_HINT_OBJECT}, +#line 59 "src/fcobjshash.gperf" + {(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str44,FC_NAMELANG_OBJECT}, +#line 56 "src/fcobjshash.gperf" + {(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str45,FC_EMBEDDED_BITMAP_OBJECT}, +#line 19 "src/fcobjshash.gperf" + {(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str46,FC_FAMILYLANG_OBJECT}, +#line 53 "src/fcobjshash.gperf" + {(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str47,FC_CAPABILITY_OBJECT}, +#line 40 "src/fcobjshash.gperf" + {(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str48,FC_RASTERIZER_OBJECT}, +#line 39 "src/fcobjshash.gperf" + {(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str49,FC_INDEX_OBJECT}, +#line 20 "src/fcobjshash.gperf" + {(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str50,FC_STYLE_OBJECT}, +#line 31 "src/fcobjshash.gperf" + {(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str51,FC_FOUNDRY_OBJECT}, +#line 52 "src/fcobjshash.gperf" + {(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str52,FC_FONTVERSION_OBJECT}, +#line 46 "src/fcobjshash.gperf" + {(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str53,FC_MINSPACE_OBJECT}, +#line 21 "src/fcobjshash.gperf" + {(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str54,FC_STYLELANG_OBJECT}, +#line 66 "src/fcobjshash.gperf" + {(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str55,FC_FONT_VARIATIONS_OBJECT}, +#line 54 "src/fcobjshash.gperf" + {(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str56,FC_FONTFORMAT_OBJECT}, +#line 57 "src/fcobjshash.gperf" + {(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str57,FC_DECORATIVE_OBJECT}, +#line 60 "src/fcobjshash.gperf" + {(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str58,FC_FONT_FEATURES_OBJECT}, +#line 65 "src/fcobjshash.gperf" + {(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str59,FC_SYMBOL_OBJECT}, +#line 61 "src/fcobjshash.gperf" + {(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str60,FC_PRGNAME_OBJECT}, + {-1}, {-1}, {-1}, {-1}, +#line 28 "src/fcobjshash.gperf" + {(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str65,FC_ASPECT_OBJECT} + }; + + if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH) + { + register unsigned int key = FcObjectTypeHash (str, len); + + if (key <= MAX_HASH_VALUE) + { + register int o = wordlist[key].name; + if (o >= 0) + { + register const char *s = o + FcObjectTypeNamePool; + + if (*str == *s && !strcmp (str + 1, s + 1)) + return &wordlist[key]; + } + } + } + return 0; +} 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/gui/freetype/build.sh b/gui/freetype/build.sh new file mode 100644 index 0000000..1d14ff7 --- /dev/null +++ b/gui/freetype/build.sh @@ -0,0 +1,35 @@ +pkgname=freetype +pkgver=2.11.0 + +fetch() { + curl "https://download-mirror.savannah.gnu.org/releases/freetype/freetype-$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 \ + -Dharfbuzz=disabled + 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/glfw/build.sh b/gui/glfw/build.sh new file mode 100644 index 0000000..fcdf976 --- /dev/null +++ b/gui/glfw/build.sh @@ -0,0 +1,34 @@ +pkgname=glfw +pkgver=3.3.4 + +fetch() { + curl -L "https://github.com/glfw/glfw/archive/refs/tags/3.3.4.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 \ + -DGLFW_USE_WAYLAND=1 \ + -DGLFW_BUILD_DOCS=0 \ + -DGLFW_BUILD_EXAMPLES=1 \ + -DBUILD_SHARED_LIBS=ON + samu +} + +package() { + cd $pkgname-$pkgver + cd build + DESTDIR=$pkgdir samu install +} + +license() { + cd $pkgname-$pkgver + cat LICENSE +# cat COPYING +} 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 77% rename from pkgs/glslang/build.sh rename to gui/glslang/build.sh index dbef325..8b617b6 100644 --- a/pkgs/glslang/build.sh +++ b/gui/glslang/build.sh @@ -1,8 +1,8 @@ pkgname=glslang -pkgver=11.1.0 +pkgver=master fetch() { - curl -L "https://github.com/KhronosGroup/glslang/archive/11.1.0.tar.gz" -o $pkgname-$pkgver.tar.xz + curl -L "https://github.com/KhronosGroup/glslang/archive/refs/heads/master.tar.gz" -o $pkgname-$pkgver.tar.xz tar -xf $pkgname-$pkgver.tar.xz mkdir $pkgname-$pkgver/build } diff --git a/gui/grim/build.sh b/gui/grim/build.sh new file mode 100644 index 0000000..60d6efa --- /dev/null +++ b/gui/grim/build.sh @@ -0,0 +1,31 @@ +pkgname=grim +pkgver=1.3.2 +deps="wayland:cairo" + +fetch() { + curl -L "https://github.com/emersion/grim/releases/download/v$pkgver/grim-$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/gui/harfbuzz/build.sh b/gui/harfbuzz/build.sh new file mode 100644 index 0000000..b4d4215 --- /dev/null +++ b/gui/harfbuzz/build.sh @@ -0,0 +1,33 @@ +pkgname=harfbuzz +pkgver=3.0.0 + +fetch() { + 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 +} + +build() { + cd $pkgname-$pkgver + cd build + CFLAGS="$CFLAGS -Wunused-but-set-variable" meson .. \ + --buildtype=release \ + --prefix=/usr \ + --libexecdir=lib \ + -Dglib=disabled \ + -Dgobject=disabled \ + -Dicu=enabled + + samu +} + +package() { + cd $pkgname-$pkgver + cd build + DESTDIR=$pkgdir samu install +} + +license() { + cd $pkgname-$pkgver + cat COPYING +} 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/gui/icu/build.sh b/gui/icu/build.sh new file mode 100644 index 0000000..80e4a97 --- /dev/null +++ b/gui/icu/build.sh @@ -0,0 +1,34 @@ +pkgname=icu +pkgver=69.1 + +_pkg_ver=$(echo $pkgver | tr '.' '_') + +fetch() { + curl -L "https://github.com/unicode-org/icu/releases/download/release-69-1/icu4c-$_pkg_ver-src.tgz" -o $pkgname-$pkgver.tar.xz + tar -xf $pkgname-$pkgver.tar.xz + mv $pkgname $pkgname-$pkgver +} + +build() { + cd $pkgname-$pkgver + + cd source + ./configure \ + --prefix=/usr \ + --build=$TRIPLE \ + --host=$TRIPLE + + bad --gmake gmake +} + +package() { + cd $pkgname-$pkgver + cd source + bad --gmake gmake install DESTDIR=$pkgdir +} + +license() { + cd $pkgname-$pkgver + cat LICENSE +# cat COPYING +} diff --git a/gui/kanshi/build.sh b/gui/kanshi/build.sh new file mode 100644 index 0000000..de26571 --- /dev/null +++ b/gui/kanshi/build.sh @@ -0,0 +1,29 @@ +pkgname=kanshi +pkgver=1.1.0 + +fetch() { + curl -L "https://github.com/emersion/kanshi/releases/download/v$pkgver/kanshi-$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 + samu +} + +package() { + cd $pkgname-$pkgver + cd build + DESTDIR=$pkgdir samu install +} + +license() { + cd $pkgname-$pkgver + cat LICENSE +} diff --git a/gui/libass/build.sh b/gui/libass/build.sh new file mode 100644 index 0000000..09bf809 --- /dev/null +++ b/gui/libass/build.sh @@ -0,0 +1,28 @@ +pkgname=libass +pkgver=0.15.0 + +fetch() { + curl -L "https://github.com/libass/libass/releases/download/0.15.0/libass-0.15.0.tar.xz" -o $pkgname-$pkgver.tar.xz + tar -xf $pkgname-$pkgver.tar.xz +} + +build() { + cd $pkgname-$pkgver + ./configure \ + --prefix=/usr \ + --build=$TRIPLE \ + --host=$TRIPLE \ + --disable-asm + + make +} + +package() { + cd $pkgname-$pkgver + make install DESTDIR=$pkgdir +} + +license() { + cd $pkgname-$pkgver + cat COPYING +} 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 55% rename from pkgs/libdrm/build.sh rename to gui/libdrm/build.sh index 3097280..8e5be2c 100644 --- a/pkgs/libdrm/build.sh +++ b/gui/libdrm/build.sh @@ -1,16 +1,16 @@ -pkgver=2.4.103 +pkgver=2.4.109 pkgname=libdrm +dep="libpciaccess" bad="" -ext="dev" fetch() { - curl -L "https://dri.freedesktop.org/libdrm/libdrm-2.4.103.tar.xz" -o $pkgname-$pkgver.tar.gz + curl -L "https://dri.freedesktop.org/libdrm/libdrm-$pkgver.tar.xz" -o $pkgname-$pkgver.tar.gz tar -xf $pkgname-$pkgver.tar.gz } build() { cd $pkgname-$pkgver - meson build -Dintel=false --prefix /usr + meson build --prefix /usr samu -C build } @@ -19,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/gui/libepoxy/build.sh b/gui/libepoxy/build.sh new file mode 100644 index 0000000..a2cddbe --- /dev/null +++ b/gui/libepoxy/build.sh @@ -0,0 +1,31 @@ +pkgname=libepoxy +pkgver=1.5.9 + +fetch() { + 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 +} + +build() { + cd $pkgname-$pkgver + cd build + meson .. \ + --buildtype=release \ + --prefix=/usr \ + --libexecdir=lib \ + -Dglx=no \ + -Dx11=false + samu +} + +package() { + cd $pkgname-$pkgver + cd build + DESTDIR=$pkgdir samu install +} + +license() { + cd $pkgname-$pkgver + cat COPYING +} diff --git a/gui/libevdev/build.sh b/gui/libevdev/build.sh new file mode 100644 index 0000000..1ddc0ae --- /dev/null +++ b/gui/libevdev/build.sh @@ -0,0 +1,31 @@ +pkgname=libevdev +pkgver=1.10.1 + +fetch() { + curl "https://www.freedesktop.org/software/libevdev/libevdev-$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=disabled \ + -Ddocumentation=disabled + samu +} + +package() { + cd $pkgname-$pkgver + cd build + DESTDIR=$pkgdir samu install +} + +license() { + cd $pkgname-$pkgver + cat COPYING +} 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/gui/libpciaccess/build.sh b/gui/libpciaccess/build.sh new file mode 100644 index 0000000..58a11cc --- /dev/null +++ b/gui/libpciaccess/build.sh @@ -0,0 +1,30 @@ +pkgname=libpciaccess +pkgver=master + +fetch() { + curl "https://gitlab.freedesktop.org/xorg/lib/libpciaccess/-/archive/master/libpciaccess-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 + samu +} + +package() { + cd $pkgname-$pkgver + cd build + DESTDIR=$pkgdir samu install +} + +license() { + cd $pkgname-$pkgver +# cat LICENSE + cat COPYING +} 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/gui/libudev-zero/build.sh b/gui/libudev-zero/build.sh new file mode 100644 index 0000000..3f2c92e --- /dev/null +++ b/gui/libudev-zero/build.sh @@ -0,0 +1,30 @@ +pkgname=libudev-zero +pkgver=1.0.0 + +fetch() { + curl -L "https://github.com/illiliti/libudev-zero/archive/$pkgver.tar.gz" -o $pkgname-$pkgver.tar.xz + tar -xf $pkgname-$pkgver.tar.xz +} + +build() { + cd $pkgname-$pkgver + make + cd contrib + cc helper.c -o libudev-zero-hotplug-helper +} + +package() { + cd $pkgname-$pkgver + make install PREFIX=/usr DESTDIR=$pkgdir + install -d $pkgdir/usr/sbin + install -Dm755 ./contrib/libudev-zero-hotplug-helper $pkgdir/usr/sbin/ +} + +backup() { + return +} + +license() { + cd $pkgname-$pkgver + cat LICENSE +} diff --git a/gui/libxkbcommon/build.sh b/gui/libxkbcommon/build.sh new file mode 100644 index 0000000..9665d55 --- /dev/null +++ b/gui/libxkbcommon/build.sh @@ -0,0 +1,34 @@ +pkgname=libxkbcommon +pkgver=1.0.3 + +fetch() { + curl -L "https://github.com/xkbcommon/libxkbcommon/archive/xkbcommon-1.0.3.tar.gz" -o $pkgname-$pkgver.tar.xz + tar -xf $pkgname-$pkgver.tar.xz + mv $pkgname-xkbcommon-$pkgver $pkgname-$pkgver + mkdir $pkgname-$pkgver/build +} + +build() { + cd $pkgname-$pkgver + cd build + meson .. \ + --buildtype=release \ + --prefix=/usr \ + --libexecdir=lib \ + -Denable-x11=false \ + -Denable-wayland=true \ + -Denable-docs=false + samu +} + +package() { + cd $pkgname-$pkgver + cd build + DESTDIR=$pkgdir samu install +} + +license() { + cd $pkgname-$pkgver + cat LICENSE +# cat COPYING +} 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/gui/mesa/alpine-tls.patch b/gui/mesa/alpine-tls.patch new file mode 100644 index 0000000..d5d47c3 --- /dev/null +++ b/gui/mesa/alpine-tls.patch @@ -0,0 +1,24 @@ +--- a/meson_options.txt ++++ b/meson_options.txt +@@ -464,3 +464,9 @@ + value : true, + description : 'use msse2 flag for mingw x86. Default: true', + ) ++option( ++ 'use-elf-tls', ++ type : 'boolean', ++ value : false, ++ description : 'Build support for initial-exec TLS model' ++) +--- a/meson.build ++++ b/meson.build +@@ -447,7 +447,8 @@ + + # Android uses emutls for versions <= P/28. For USE_ELF_TLS we need ELF TLS. + use_elf_tls = false +-if (not ['freebsd', 'openbsd', 'haiku'].contains(host_machine.system()) and ++with_use_elf_tls = get_option('use-elf-tls') ++if with_use_elf_tls and (not ['freebsd', 'openbsd', 'haiku'].contains(host_machine.system()) and + (not with_platform_android or get_option('platform-sdk-version') >= 29) and + (not with_platform_windows or not with_shared_glapi)) + pre_args += '-DUSE_ELF_TLS' diff --git a/pkgs/mesa/build.sh b/gui/mesa/build.sh similarity index 54% rename from pkgs/mesa/build.sh rename to gui/mesa/build.sh index 6029791..48bfdf9 100644 --- a/pkgs/mesa/build.sh +++ b/gui/mesa/build.sh @@ -1,25 +1,51 @@ pkgname=mesa -pkgver=build-byacc +#pkgver=21.2.1 +pkgver=main +deps="musl:wayland:wayland-protocols:llvm:zlib-ng:expat:libffi:libdrm:python-mako" ext=dev fetch() { - curl "https://gitlab.freedesktop.org/Ella-0/mesa/-/archive/build/byacc/mesa-build-byacc.tar.gz" -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 . + cp ../alpine-tls.patch . cp ../LICENSE . + cd $pkgname-$pkgver + patch -p1 < ../alpine-tls.patch } +_dri_drivers="" +_gallium_drivers="" +_vulkan_drivers="" +case $ARCH in + x86_64) + _dri_drivers="i915,i965,nouveau" + _gallium_drivers="iris" + _vulkan_drivers="intel" + ;; + + aarch64) + _dri_drivers="" + _gallium_drivers="vc4,v3d,zink" + _vulkan_drivers="broadcom" + ;; +esac + build() { cd $pkgname-$pkgver cd build + echo "dri drivers: "$_dri_drivers + echo "gallium drivers: "$_gallium_drivers + echo "vulkan drivers: "$_vulkan_drivers + meson .. \ --prefix=/usr \ - --buildtype=release \ - -Dplatforms= \ + -Dplatforms=wayland \ + -Ddri-drivers=$_dri_drivers \ -Ddri3=true \ - -Ddri-drivers=i915,i965 \ - -Dgallium-drivers= \ + -Dgallium-drivers=$_gallium_drivers \ -Dgallium-vdpau=false \ -Dgallium-xvmc=false \ -Dgallium-omx=disabled \ @@ -27,7 +53,7 @@ build() { -Dgallium-xz=false \ -Dgallium-nine=false \ -Dgallium-opencl=disabled \ - -Dvulkan-drivers=intel \ + -Dvulkan-drivers=$_vulkan_drivers \ -Dvulkan-overlay-layer=true \ -Dvulkan-device-select-layer=true \ -Dshared-glapi=enabled \ @@ -36,18 +62,20 @@ build() { -Dopengl=true \ -Dgbm=true \ -Dglx=disabled \ - -Dglvnd=false \ + -Dglvnd=true \ -Degl=true \ -Dllvm=true \ -Dshared-llvm=true \ -Dvalgrind=false \ -Dlibunwind=false \ -Dlmsensors=false \ - -Dbuild-tests=false + -Dbuild-tests=false \ + -Duse-elf-tls=false samu # NEEDED IF NOT USING A PATCHED BYACC +# OR BYACC >= 20210328 # =================================== # patch -p1 < ../../byacc-out-mid-build.patch # samu 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/gui/mtdev/build.sh b/gui/mtdev/build.sh new file mode 100644 index 0000000..8dfeef9 --- /dev/null +++ b/gui/mtdev/build.sh @@ -0,0 +1,27 @@ +pkgname=mtdev +pkgver=1.1.6 + +fetch() { + curl "http://bitmath.org/code/mtdev/mtdev-$pkgver.tar.gz" -o $pkgname-$pkgver.tar.xz + tar -xf $pkgname-$pkgver.tar.xz +} + +build() { + cd $pkgname-$pkgver + ./configure \ + --prefix=/usr \ + --build=$(echo $TRIPLE | sed 's/musl/gnu/g') \ + --host=$(echo $TRIPLE | sed 's/musl/gnu/g') + + make +} + +package() { + cd $pkgname-$pkgver + make install DESTDIR=$pkgdir +} + +license() { + cd $pkgname-$pkgver + cat COPYING +} 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/gui/pixman/build.sh b/gui/pixman/build.sh new file mode 100644 index 0000000..1912baa --- /dev/null +++ b/gui/pixman/build.sh @@ -0,0 +1,31 @@ +pkgname=pixman +pkgver=master + +fetch() { + curl "https://gitlab.freedesktop.org/pixman/pixman/-/archive/master/pixman-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 .. \ + --prefix=/usr \ + --buildtype=release \ + --libexecdir=lib + + samu +} + +package() { + cd $pkgname-$pkgver + cd build + DESTDIR=$pkgdir samu install +} + +license() { + cd $pkgname-$pkgver +# cat LICENSE + cat COPYING +} 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/gui/ribidi/build.sh b/gui/ribidi/build.sh new file mode 100644 index 0000000..f32a601 --- /dev/null +++ b/gui/ribidi/build.sh @@ -0,0 +1,30 @@ +pkgname=ribidi +pkgver=main + +fetch() { + curl -L "https://github.com/iglunix/ribidi/archive/refs/heads/main.tar.gz" -o $pkgname-$pkgver.tar.xz + tar -xf $pkgname-$pkgver.tar.xz +} + +build() { + cd $pkgname-$pkgver + cargo build --release --all-features +} + +package() { + cd $pkgname-$pkgver + install -Dm755 target/release/lib$pkgname.so $pkgdir/usr/lib/ + install -Dm644 include/ribidi.h $pkgdir/usr/include/ribidi/ + install -d $pkgdir/usr/include/fribidi + ln -sr $pkgdir/usr/include/ribidi/ribidi.h $pkgdir/usr/include/fribidi/fribidi.h + + + install -Dm644 $pkgname.pc $pkgdir/usr/lib/pkgconfig/ + install -Dm644 f$pkgname.pc $pkgdir/usr/lib/pkgconfig/ +} + +license() { + cd $pkgname-$pkgver + cat LICENSE +# cat COPYING +} 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/gui/seatd/build.sh b/gui/seatd/build.sh new file mode 100644 index 0000000..cfcb640 --- /dev/null +++ b/gui/seatd/build.sh @@ -0,0 +1,36 @@ +pkgname=seatd +pkgver=0.6.3 + +fetch() { + curl "https://git.sr.ht/~kennylevinsen/seatd/archive/$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 \ + -Dexamples=disabled \ + -Dc_args=-Wno-sign-compare + 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/shaderc/build.sh b/gui/shaderc/build.sh new file mode 100644 index 0000000..2c1b320 --- /dev/null +++ b/gui/shaderc/build.sh @@ -0,0 +1,36 @@ +pkgname=shaderc +pkgver=main + +fetch() { + curl -L "https://github.com/google/shaderc/archive/refs/heads/main.tar.gz" -o $pkgname-$pkgver.tar.xz + tar -xf $pkgname-$pkgver.tar.xz + cp ../third-party.patch . + mkdir $pkgname-$pkgver/build + cd $pkgname-$pkgver + patch -p1 < ../third-party.patch + echo \"$pkgver\" > glslc/src/build-version.inc +} + +build() { + cd $pkgname-$pkgver + cd build + cmake -G Ninja ../ \ + -DCMAKE_BUILD_TYPE=Release \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DCMAKE_INSTALL_LIBDIR=lib \ + -DSHADERC_SKIP_TESTS=ON \ + -Dglslang_SOURCE_DIR=/usr/include/glslang + samu +} + +package() { + cd $pkgname-$pkgver + cd build + DESTDIR=$pkgdir samu install +} + +license() { + cd $pkgname-$pkgver + cat LICENSE +# cat COPYING +} diff --git a/gui/shaderc/third-party.patch b/gui/shaderc/third-party.patch new file mode 100644 index 0000000..5ad5dfd --- /dev/null +++ b/gui/shaderc/third-party.patch @@ -0,0 +1,23 @@ +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -92,7 +92,6 @@ endif(MSVC) + + # Configure subdirectories. + # We depend on these for later projects, so they should come first. +-add_subdirectory(third_party) + + if(SHADERC_ENABLE_SPVC) + add_subdirectory(libshaderc_spvc) +@@ -103,11 +102,6 @@ add_subdirectory(libshaderc) + add_subdirectory(glslc) + add_subdirectory(examples) + +-add_custom_target(build-version +- ${PYTHON_EXECUTABLE} +- ${CMAKE_CURRENT_SOURCE_DIR}/utils/update_build_version.py +- ${shaderc_SOURCE_DIR} ${spirv-tools_SOURCE_DIR} ${glslang_SOURCE_DIR} ${CMAKE_CURRENT_BINARY_DIR}/build-version.inc +- COMMENT "Update build-version.inc in the Shaderc build directory (if necessary).") + + function(define_pkg_config_file NAME LIBS) + add_custom_target(${NAME}-pkg-config ALL + diff --git a/gui/slurp/build.sh b/gui/slurp/build.sh new file mode 100644 index 0000000..6c13e09 --- /dev/null +++ b/gui/slurp/build.sh @@ -0,0 +1,31 @@ +pkgname=slurp +pkgver=1.3.2 +deps="wayland:cairo:libxkbcommon" + +fetch() { + curl -L "https://github.com/emersion/slurp/releases/download/v$pkgver/slurp-$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/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/gui/spirv-headers/build.sh b/gui/spirv-headers/build.sh new file mode 100644 index 0000000..9951839 --- /dev/null +++ b/gui/spirv-headers/build.sh @@ -0,0 +1,31 @@ +pkgname=spirv-headers +pkgver=master + +fetch() { + curl -L "https://github.com/KhronosGroup/SPIRV-Headers/archive/refs/heads/master.tar.gz" -o $pkgname-$pkgver.tar.xz + tar -xf $pkgname-$pkgver.tar.xz + mv SPIRV-Headers-$pkgver spirv-headers-$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/gui/spirv-tools/build.sh b/gui/spirv-tools/build.sh new file mode 100644 index 0000000..0236d39 --- /dev/null +++ b/gui/spirv-tools/build.sh @@ -0,0 +1,33 @@ +pkgname=spirv-tools +pkgver=master + +fetch() { + curl -L "https://github.com/KhronosGroup/SPIRV-Tools/archive/refs/heads/master.tar.gz" -o $pkgname-$pkgver.tar.xz + tar -xf $pkgname-$pkgver.tar.xz + mv SPIRV-Tools-$pkgver spirv-tools-$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 \ + -DSPIRV-Headers_SOURCE_DIR=/usr \ + -DSPIRV_WERROR=Off + samu +} + +package() { + cd $pkgname-$pkgver + cd build + DESTDIR=$pkgdir samu install +} + +license() { + cd $pkgname-$pkgver + cat LICENSE +# cat COPYING +} 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/gui/wayland-protocols/build.sh b/gui/wayland-protocols/build.sh new file mode 100644 index 0000000..8f5483a --- /dev/null +++ b/gui/wayland-protocols/build.sh @@ -0,0 +1,34 @@ +pkgname=wayland-protocols +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 + cd build + meson .. \ + --buildtype=release \ + --prefix=/usr \ + --libexecdir=lib + samu +} + +package() { + cd $pkgname-$pkgver + cd build + DESTDIR=$pkgdir samu install +} + +backup() { + return +} + +license() { + cd $pkgname-$pkgver + cat COPYING +} 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 97% rename from pkgs/weston/build.sh rename to gui/weston/build.sh index 69994cb..b7b93da 100644 --- a/pkgs/weston/build.sh +++ b/gui/weston/build.sh @@ -19,7 +19,7 @@ build() { -Dimage-jpeg=false \ -Dimage-webp=false \ -Dlauncher-logind=false \ - -Dweston-launch=false \ + -Dweston-launch=true \ -Dbackend-drm-screencast-vaapi=false \ -Dbackend-rdp=false \ -Dbackend-x11=false \ 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/gui/wlanthy/build.sh b/gui/wlanthy/build.sh new file mode 100644 index 0000000..fe1bdd2 --- /dev/null +++ b/gui/wlanthy/build.sh @@ -0,0 +1,30 @@ +pkgname=wlanthy +pkgver=main + +fetch() { + curl -L "https://github.com/st3r4g/wlanthy/archive/refs/heads/main.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/gui/wlroots/build.sh b/gui/wlroots/build.sh new file mode 100644 index 0000000..8cfdbd9 --- /dev/null +++ b/gui/wlroots/build.sh @@ -0,0 +1,39 @@ +pkgname=wlroots +pkgver=0.15.0 + +fetch() { + 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 +} + +build() { + cd $pkgname-$pkgver + cd build + meson .. \ + --buildtype=release \ + --prefix=/usr \ + --libexecdir=lib \ + -Dxcb-errors=disabled \ + -Dxwayland=disabled \ + -Dexamples=false \ + -Drenderers="['gles2', 'vulkan']" \ + -Dbackends="['drm', 'libinput']" + 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/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/init/init.d/dev b/init/init.d/dev new file mode 100755 index 0000000..08b02f9 --- /dev/null +++ b/init/init.d/dev @@ -0,0 +1,6 @@ +#!/bin/sh + +for id in $(find /sys -name modalias -print0 | xargs -0 cat | sort -u); do + echo $id + modprobe $id +done diff --git a/init/init.d/net b/init/init.d/net new file mode 100755 index 0000000..565f807 --- /dev/null +++ b/init/init.d/net @@ -0,0 +1,4 @@ +#!/bin/sh +ip link set lo up +ip link set eth0 up +udhcpc -i eth0 -x hostname:$(cat /etc/hostname) diff --git a/init/init.d/ntp b/init/init.d/ntp new file mode 100755 index 0000000..16634c4 --- /dev/null +++ b/init/init.d/ntp @@ -0,0 +1,3 @@ +#!/bin/sh + +ntpd -q -p pool.ntp.org diff --git a/init/init.d/rcS b/init/init.d/rcS new file mode 100755 index 0000000..d432fbc --- /dev/null +++ b/init/init.d/rcS @@ -0,0 +1,29 @@ +#!/bin/sh + +mount -t proc proc /proc +mount -t sysfs sysfs /sys +mount -t tmpfs tmpfs /tmp + +echo 0 > /proc/sys/kernel/printk + +ln -s /proc/self/fs/0 /dev/stdin +ln -s /proc/self/fs/1 /dev/stdout +ln -s /proc/self/fs/2 /dev/stderr + +mkdir -p /dev/pts +mount -t devpts devpts /dev/pts + +hostname -F /etc/hostname + +mdev -s +mdev -d + +mount -a + +/etc/init.d/net +/etc/init.d/sshd + +#See https://github.com/landley/toybox/issues/111 +echo 0 9999999 > /proc/sys/net/ipv4/ping_group_range + +/bin/sh diff --git a/init/init.d/sshd b/init/init.d/sshd new file mode 100755 index 0000000..5d3f040 --- /dev/null +++ b/init/init.d/sshd @@ -0,0 +1,3 @@ +#!/bin/sh + +/usr/sbin/sshd -R -s diff --git a/init/init.d/wifi b/init/init.d/wifi new file mode 100755 index 0000000..e3b9659 --- /dev/null +++ b/init/init.d/wifi @@ -0,0 +1,3 @@ +#!/bin/sh + +wpa_supplicant -B -i wlan0 -D nl80211 -c /etc/wpa_supplicant.conf diff --git a/init/inittab b/init/inittab new file mode 100644 index 0000000..0d9cd4a --- /dev/null +++ b/init/inittab @@ -0,0 +1,8 @@ +::sysinit:/etc/init.d/rcS +::ctrlaltdel:/sbin/reboot +::shutdown:/sbin/swapoff -a +::shutdown:/bin/umount -a -r +::restart:/sbin/init +ttyS0::askfirst:-/bin/sh +::respawn:/sbin/getty 38400 tty1 +::respawn:/sbin/getty 38400 tty2 diff --git a/lazy.sh b/lazy.sh deleted file mode 100755 index 0663633..0000000 --- a/lazy.sh +++ /dev/null @@ -1,60 +0,0 @@ -#!/bin/sh -usage() { - echo $(basename "$0"): ERROR: "$@" 1>&2 - echo usage: $(basename "$0") '([-i]|[-u]|[-f]|[-l]) [-o root] - [pkg.tar]' 1>&2 - exit 1 -} - -tar_fail() { - echo "Failed to extract tar" - exit 1 -} - -stat_fail() { - echo "Not a valid package" - echo "Missing package meta file" - exit 1 -} - -find_fail() { - echo "Package not installed" - exit 1 -} - -i= u= l= f= o= - -case "$1" in - -i) i=1;; - -u) u=1;; - -l) l=1;; - -f) f=1;; - *) usage "bad argument $i";; -esac -shift - -while : -do - case "$1" in - -o) shift; o="$1";; - --) shift; break;; - -*) usage "bad argument $1";; - *) break;; - esac - shift -done - -if [ "$i" = "1" ]; then - echo "Installing $1" - mkdir -p /tmp/lazybox/$1 || exit 1 - tar -xf $1 -C /tmp/lazybox/$1 || tar_fail - stat /tmp/lazybox/$1/usr/share/lazypkg/ >/dev/null || stat_fail - tar -xf $1 -C / - rm -r /tmp/lazybox/$1 -elif [ "$f" = "1" ]; then - stat /usr/share/lazypkg/$1 > /dev/null || find_fail - sed -n '/\[fs\]/,$p' /usr/share/lazypkg/$1 | grep -v "\[fs\]" -elif [ "$l" = "1" ]; then - stat /usr/share/lazypkg/$1 > /dev/null || find_fail - sed -n '/\[license\]/,/\[fs\]/{/\[license\]\|\[fs\]/!p}' /usr/share/lazypkg/$1 -fi diff --git a/lazypkg.sh b/lazypkg.sh deleted file mode 100755 index 5346030..0000000 --- a/lazypkg.sh +++ /dev/null @@ -1,91 +0,0 @@ -#!/bin/sh -export MAKEFLAGS="-j6" -export CC=clang -export CXX=clang++ - -. ./build.sh -dir=$(pwd) -stat out > /dev/null && rm -rf out -mkdir out - -function do_fetch() { - mkdir -p src - cd src - srcdir=$(pwd) fetch -} - -stat src > /dev/null 2>/dev/null || do_fetch -srcdir=$(pwd)/src - -cd $srcdir - -build -cd $srcdir - -echo " -. $dir/build.sh -mkdir -p $dir/out/$pkgname -pkgdir=$dir/out/$pkgname package - - -mkdir -p $dir/out/$pkgname/usr/share/lazypkg - -cat > $dir/out/$pkgname/usr/share/lazypkg/$pkgname << EOF -[pkg] -name=$pkgname -ver=$pkgver - -[license] -EOF - -chmod 644 $dir/out/$pkgname/usr/share/lazypkg/$pkgname -cd $srcdir -license >> $dir/out/$pkgname/usr/share/lazypkg/$pkgname - -echo >> $dir/out/$pkgname/usr/share/lazypkg/$pkgname -echo [fs] >> $dir/out/$pkgname/usr/share/lazypkg/$pkgname - -cd $dir/out/$pkgname/ -find * >> $dir/out/$pkgname/usr/share/lazypkg/$pkgname - -cd $dir/out/$pkgname -tar -cf ../$pkgname.$pkgver.tar.xz * - -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/lazypkg - - cat > $dir/out/$pkgname-\$e/usr/share/lazypkg/$pkgname-\$e << EOF -[pkg] -name=$pkgname-\$e -ver=$pkgver - -[license] -EOF - - chmod 644 $dir/out/$pkgname-\$e/usr/share/lazypkg/$pkgname-\$e - cd $srcdir - license >> $dir/out/$pkgname-\$e/usr/share/lazypkg/$pkgname-\$e - - echo >> $dir/out/$pkgname-\$e/usr/share/lazypkg/$pkgname-\$e - echo [fs] >> $dir/out/$pkgname-\$e/usr/share/lazypkg/$pkgname-\$e - - cd $dir/out/$pkgname-\$e - - find * >> $dir/out/$pkgname-\$e/usr/share/lazypkg/$pkgname-\$e - - cd $dir/out/$pkgname-\$e - tar -cf ../$pkgname-\$e.$pkgver.tar.xz * - -done - - -" | sh -cd $dir 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/linux/busybox/build.sh b/linux/busybox/build.sh new file mode 100644 index 0000000..c612d0f --- /dev/null +++ b/linux/busybox/build.sh @@ -0,0 +1,205 @@ +pkgver=1.34.1 +pkgname=busybox +bad=gmake +deps="musl" +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 + 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() { + cd $pkgname-$pkgver + install -d $pkgdir + cp -r ./_install/* $pkgdir + chmod 4755 $pkgdir/bin/busybox + + install -d $pkgdir/etc/profile.d + # 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 + rm $pkgdir/usr/bin/install + rm $pkgdir/usr/bin/lspci + rm $pkgdir/bin/cat + rm $pkgdir/bin/chattr + rm $pkgdir/bin/chgrp + rm $pkgdir/bin/chmod + rm $pkgdir/bin/chown + rm $pkgdir/bin/cp + rm $pkgdir/bin/cpio + rm $pkgdir/bin/date + rm $pkgdir/bin/dmesg + rm $pkgdir/bin/dnsdomainname + rm $pkgdir/bin/echo + rm $pkgdir/bin/egrep + rm $pkgdir/bin/false + rm $pkgdir/bin/fgrep + rm $pkgdir/bin/fsync + rm $pkgdir/bin/grep + rm $pkgdir/bin/hostname + rm $pkgdir/bin/kill + rm $pkgdir/bin/login + rm $pkgdir/bin/ls + rm $pkgdir/bin/lsattr + rm $pkgdir/bin/mkdir + rm $pkgdir/bin/mknod + rm $pkgdir/bin/mktemp + rm $pkgdir/bin/mount + rm $pkgdir/bin/mountpoint + rm $pkgdir/bin/mv + rm $pkgdir/bin/netstat + rm $pkgdir/bin/nice + rm $pkgdir/bin/pidof + rm $pkgdir/bin/printenv + rm $pkgdir/bin/ps + rm $pkgdir/bin/pwd + rm $pkgdir/bin/rm + rm $pkgdir/bin/rmdir + rm $pkgdir/bin/sed + rm $pkgdir/bin/sleep + rm $pkgdir/bin/stat + rm $pkgdir/bin/su + rm $pkgdir/bin/sh + rm $pkgdir/bin/sync + rm $pkgdir/bin/touch + rm $pkgdir/bin/true + rm $pkgdir/bin/umount + rm $pkgdir/bin/usleep + rm $pkgdir/bin/tar + + rm $pkgdir/sbin/blockdev + rm $pkgdir/sbin/freeramdisk + rm $pkgdir/sbin/halt + rm $pkgdir/sbin/hwclock + rm $pkgdir/sbin/ifconfig + rm $pkgdir/sbin/insmod + rm $pkgdir/sbin/losetup + rm $pkgdir/sbin/lsmod + rm $pkgdir/sbin/mkswap + rm $pkgdir/sbin/modinfo + rm $pkgdir/sbin/pivot_root + rm $pkgdir/sbin/poweroff + rm $pkgdir/sbin/reboot + rm $pkgdir/sbin/rmmod + rm $pkgdir/sbin/swapoff + rm $pkgdir/sbin/swapon + rm $pkgdir/sbin/switch_root + rm $pkgdir/sbin/sysctl + rm $pkgdir/sbin/vconfig + + rm $pkgdir/usr/bin/basename + rm $pkgdir/usr/bin/bunzip2 + rm $pkgdir/usr/bin/bzcat + rm $pkgdir/usr/bin/cal + rm $pkgdir/usr/bin/chrt + rm $pkgdir/usr/bin/chvt + rm $pkgdir/usr/bin/clear + rm $pkgdir/usr/bin/cmp + rm $pkgdir/usr/bin/comm + rm $pkgdir/usr/bin/cut + rm $pkgdir/usr/bin/dirname + rm $pkgdir/usr/bin/du + rm $pkgdir/usr/bin/eject + rm $pkgdir/usr/bin/env + rm $pkgdir/usr/bin/expand + rm $pkgdir/usr/bin/factor + rm $pkgdir/usr/bin/fallocate + rm $pkgdir/usr/bin/find + rm $pkgdir/usr/bin/flock + rm $pkgdir/usr/bin/free + rm $pkgdir/usr/bin/ftpget + rm $pkgdir/usr/bin/ftpput + rm $pkgdir/usr/bin/groups + rm $pkgdir/usr/bin/head + rm $pkgdir/usr/bin/hexedit + rm $pkgdir/usr/bin/id + rm $pkgdir/usr/bin/killall + rm $pkgdir/usr/bin/less + rm $pkgdir/usr/bin/logger + rm $pkgdir/usr/bin/logname + rm $pkgdir/usr/bin/lsusb + rm $pkgdir/usr/bin/md5sum + rm $pkgdir/usr/bin/microcom + rm $pkgdir/usr/bin/mkfifo + rm $pkgdir/usr/bin/mkpasswd + rm $pkgdir/usr/bin/nc + rm $pkgdir/usr/bin/nl + rm $pkgdir/usr/bin/nohup + rm $pkgdir/usr/bin/nproc + rm $pkgdir/usr/bin/nsenter + rm $pkgdir/usr/bin/od + rm $pkgdir/usr/bin/passwd + rm $pkgdir/usr/bin/paste + rm $pkgdir/usr/bin/patch + rm $pkgdir/usr/bin/pgrep + rm $pkgdir/usr/bin/pkill + rm $pkgdir/usr/bin/pmap + rm $pkgdir/usr/bin/printf + rm $pkgdir/usr/bin/pwdx + rm $pkgdir/usr/bin/readlink + rm $pkgdir/usr/bin/realpath + rm $pkgdir/usr/bin/renice + rm $pkgdir/usr/bin/reset + rm $pkgdir/usr/bin/seq + rm $pkgdir/usr/bin/setfattr + rm $pkgdir/usr/bin/setsid + rm $pkgdir/usr/bin/sha1sum + rm $pkgdir/usr/bin/shred + rm $pkgdir/usr/bin/sort + rm $pkgdir/usr/bin/split + rm $pkgdir/usr/bin/strings + rm $pkgdir/usr/bin/tac + rm $pkgdir/usr/bin/tail + rm $pkgdir/usr/bin/taskset + rm $pkgdir/usr/bin/tee + rm $pkgdir/usr/bin/test + rm $pkgdir/usr/bin/time + rm $pkgdir/usr/bin/timeout + rm $pkgdir/usr/bin/top + rm $pkgdir/usr/bin/truncate + rm $pkgdir/usr/bin/tty + rm $pkgdir/usr/bin/uniq + rm $pkgdir/usr/bin/unlink + rm $pkgdir/usr/bin/unshare + rm $pkgdir/usr/bin/uptime + rm $pkgdir/usr/bin/uudecode + rm $pkgdir/usr/bin/uuencode + rm $pkgdir/usr/bin/w + rm $pkgdir/usr/bin/wc + rm $pkgdir/usr/bin/which + rm $pkgdir/usr/bin/who + rm $pkgdir/usr/bin/whoami + rm $pkgdir/usr/bin/xargs + rm $pkgdir/usr/bin/xxd + rm $pkgdir/usr/bin/yes + + rm $pkgdir/usr/sbin/chroot + rm $pkgdir/usr/sbin/fsfreeze + + 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/linux/busybox/man.sh b/linux/busybox/man.sh new file mode 100644 index 0000000..05954b0 --- /dev/null +++ b/linux/busybox/man.sh @@ -0,0 +1,8 @@ +export LESS_TERMCAP_md=$'\e[01;34m' \ +export LESS_TERMCAP_me=$'\e[0m' \ +export LESS_TERMCAP_se=$'\e[0m' \ +export LESS_TERMCAP_so=$'\e[01;44;35m' \ +export LESS_TERMCAP_ue=$'\e[0m' \ +export LESS_TERMCAP_us=$'\e[01;33m' \ + +export MANPAGER="less -r" 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/linux/linux-firmware/build.sh b/linux/linux-firmware/build.sh new file mode 100644 index 0000000..0130b45 --- /dev/null +++ b/linux/linux-firmware/build.sh @@ -0,0 +1,21 @@ +pkgname=linux-firmware +pkgver=20210208 + +fetch() { + curl "https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/snapshot/linux-firmware-20210208.tar.gz" -o $pkgname-$pkgver.tar.gz + tar -xf $pkgname-$pkgver.tar.gz +} + +build() { + echo "Nothing to do" +} + +package() { + cd $pkgname-$pkgver + make install DESTDIR=$pkgdir FIRMWAREDIR="/lib/firmware" +} + +license() { + cd $pkgname-$pkgver + cat LICENCE.* +} 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/linux/linux/reflex.patch b/linux/linux/reflex.patch new file mode 100644 index 0000000..9bf9b85 --- /dev/null +++ b/linux/linux/reflex.patch @@ -0,0 +1,14 @@ +--- a/scripts/kconfig/lexer.l ++++ b/scripts/kconfig/lexer.l +@@ -3,9 +3,10 @@ + * Copyright (C) 2002 Roman Zippel + */ + %option nostdinit noyywrap never-interactive full ecs +-%option 8bit nodefault yylineno ++%option 8bit nodefault + %x ASSIGN_VAL HELP STRING + %{ ++int yylineno = 0; + + #include + #include 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/linux/raspberrypi-firmware/build.sh b/linux/raspberrypi-firmware/build.sh new file mode 100644 index 0000000..2fb1d1e --- /dev/null +++ b/linux/raspberrypi-firmware/build.sh @@ -0,0 +1,27 @@ +pkgname=raspberrypi-firmware +pkgver=20210805 + +fetch() { + curl -L "https://github.com/raspberrypi/firmware/archive/refs/tags/1.$pkgver.tar.gz" -o $pkgname-$pkgver.tar.xz + tar -xf $pkgname-$pkgver.tar.xz + mv firmware-1.$pkgver $pkgname-$pkgver +} + +build() { + cd $pkgname-$pkgver + +} + +package() { + cd $pkgname-$pkgver + install -d $pkgdir/boot + cp ./boot/*.bin $pkgdir/boot + cp ./boot/*.dat $pkgdir/boot + cp ./boot/*.elf $pkgdir/boot +} + +license() { + cd $pkgname-$pkgver + cat LICENSE +# cat COPYING +} 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/linux/raspberrypi-linux/kernel-byacc.patch b/linux/raspberrypi-linux/kernel-byacc.patch new file mode 100644 index 0000000..b2aa286 --- /dev/null +++ b/linux/raspberrypi-linux/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/linux/raspberrypi-linux/reflex.patch b/linux/raspberrypi-linux/reflex.patch new file mode 100644 index 0000000..5f5266a --- /dev/null +++ b/linux/raspberrypi-linux/reflex.patch @@ -0,0 +1,60 @@ +--- a/scripts/kconfig/lexer.l ++++ b/scripts/kconfig/lexer.l +@@ -3,9 +3,10 @@ + * Copyright (C) 2002 Roman Zippel + */ + %option nostdinit noyywrap never-interactive full ecs +-%option 8bit nodefault yylineno ++%option 8bit nodefault + %x ASSIGN_VAL HELP STRING + %{ ++int yylineno = 0; + + #include + #include +--- a/scripts/dtc/dtc-lexer.l ++++ b/scripts/dtc/dtc-lexer.l +@@ -3,7 +3,7 @@ + * (C) Copyright David Gibson , IBM Corporation. 2005. + */ + +-%option noyywrap nounput noinput never-interactive ++%option noyywrap nounput noinput never-interactive stack + + %x BYTESTRING + %x PROPNODENAME +@@ -270,7 +270,8 @@ + + yyin = current_srcfile->f; + +- yypush_buffer_state(yy_create_buffer(yyin, YY_BUF_SIZE)); ++// yypush_buffer_state(yy_create_buffer(yyin, YY_BUF_SIZE)); ++ yy_push_state(yy_create_buffer(yyin, YY_BUF_SIZE)); + } + + +@@ -279,7 +280,8 @@ + if (srcfile_pop() == 0) + return false; + +- yypop_buffer_state(); ++// yypop_buffer_state(); ++ yy_pop_state(); + yyin = current_srcfile->f; + + return true; +--- a/scripts/genksyms/genksyms.c ++++ b/scripts/genksyms/genksyms.c +@@ -822,10 +822,10 @@ + } + { + extern int yydebug; +- extern int yy_flex_debug; ++ /* extern int yy_flex_debug; */ + + yydebug = (flag_debug > 1); +- yy_flex_debug = (flag_debug > 2); ++ /* yy_flex_debug = (flag_debug > 2); */ + + debugfile = stderr; + /* setlinebuf(debugfile); */ 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/logo b/logo new file mode 100644 index 0000000..fa6f31d --- /dev/null +++ b/logo @@ -0,0 +1,12 @@ + | + | | + | +| ________ +| /\ | \ + / \ | \ | + / \ \ | +/ \________\ +\ / / + \ / / + \ / / + \/________/ diff --git a/man/iglu.8 b/man/iglu.8 new file mode 100644 index 0000000..336785c --- /dev/null +++ b/man/iglu.8 @@ -0,0 +1,49 @@ +.TH IGLU "8" "May 2021" "iglu" "System Administration" +.SH NAME +iglu: \- manual page for iglu +.SH DESCRIPTION +usage: iglu [\-biu|\-l|\-f|\-d|\-h] [target] +.TP +\fB\-h\fR +Simple Help +.HP +\fB\-\-help\fR alias to `\-h` +.TP +\fB\-i\fR +install +.TP +\fB\-u\fR +uninstall +.TP +\fB\-l\fR +outputs the license +.TP +\fB\-f\fR +lists installed files +.TP +\fB\-d\fR +list dependencies +.TP +\fB\-iu\fR +install update or install upgrade +.TP +\fB\-ui\fR +alias to `\-iu` +.PP +These needs iglunix\-dev (iglupkg) installed +.TP +\fB\-b\fR +build +.TP +\fB\-bi\fR +build and install the current package +.TP +\fB\-biu\fR +build and install update the current package +.TP +\fB\-bui\fR +alias to `\-iu` +.SS "NOT IMPLEMENTED:" +.TP +\fB\-o\fR +install to alternative root 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/old/alacritty/build.sh b/old/alacritty/build.sh new file mode 100644 index 0000000..6061f19 --- /dev/null +++ b/old/alacritty/build.sh @@ -0,0 +1,22 @@ +pkgname=alacritty +pkgver=0.8.0 + +fetch() { + curl -L "https://github.com/alacritty/alacritty/archive/refs/tags/v$pkgver.tar.gz" -o $pkgname-$pkgver.tar.xz + tar -xf $pkgname-$pkgver.tar.xz +} + +build() { + cd $pkgname-$pkgver + cargo build --release --locked --no-default-features --features wayland +} + +package() { + cd $pkgname-$pkgver + install -Dm755 target/release/$pkgname $pkgdir/usr/bin/ +} + +license() { + cd $pkgname-$pkgver + cat LICENSE-APACHE +} diff --git a/old/bin86/build.sh b/old/bin86/build.sh new file mode 100644 index 0000000..460556d --- /dev/null +++ b/old/bin86/build.sh @@ -0,0 +1,26 @@ +pkgname=bin86 +pkgver=0.16.21 + +fetch() { + curl "https://sources.archlinux.org/other/community/dev86/$pkgname-$pkgver.tar.gz" -o $pkgname-$pkgver.tar.xz + tar -xf $pkgname-$pkgver.tar.xz + cd $pkgname-$pkgver + curl -L "https://github.com/ataraxialinux/ataraxia/raw/master/stuff/bin86/bin86-0.16.17-x86_64-1.patch" | patch -p1 +} + +build() { + cd $pkgname-$pkgver + bad --gmake gmake PREFIX=/usr +} + +package() { + cd $pkgname-$pkgver + install -d $pkgdir/usr/bin + install -d $pkgdir/usr/share/man/man1 + bad --gmake gmake PREFIX=$pkgdir/usr MANDIR=$pkgdir/usr/share/man/man1 install +} + +license() { + cd $pkgname-$pkgver + cat README +} diff --git a/old/dropbear/build.sh b/old/dropbear/build.sh new file mode 100644 index 0000000..765e98d --- /dev/null +++ b/old/dropbear/build.sh @@ -0,0 +1,40 @@ +pkgname=dropbear +pkgver=2020.81 +bad=gmake +ext=doc + +fetch() { + curl "https://matt.ucc.asn.au/dropbear/releases/dropbear-$pkgver.tar.bz2" -o $pkgname-$pkgver.tar.bz2 + tar -xf $pkgname-$pkgver.tar.bz2 +} + +build() { + cd $pkgname-$pkgver + ./configure \ + --prefix=/usr \ + --build=x86_64-unknown-linux-musl \ + --host=x86_64-unknown-linux-musl + + bad --gmake gmake PROGRAMS='dropbear dbclient dropbearkey dropbearconvert scp' +} + +package() { + cd $pkgname-$pkgver + 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 +} + +package_doc() { + cd $pkgname-$pkgver + bad --gmake gmake install DESTDIR=$pkgdir PROGRAMS='dropbear dbclient dropbearkey dropbearconvert scp' + rm -r $pkgdir/usr/bin + rm -r $pkgdir/usr/sbin +} + +license() { + cd $pkgname-$pkgver + cat LICENSE +# cat COPYING +} diff --git a/old/e2fsprogs/build.sh b/old/e2fsprogs/build.sh new file mode 100644 index 0000000..65d14e1 --- /dev/null +++ b/old/e2fsprogs/build.sh @@ -0,0 +1,51 @@ +pkgname=e2fsprogs +pkgver=1.45.6 +bad="gmake" + + +fetch() { + curl -L "https://mirrors.edge.kernel.org/pub/linux/kernel/people/tytso/e2fsprogs/v$pkgver/$pkgname-$pkgver.tar.xz" -o $pkgname-$pkgver.tar.xz + tar -xf $pkgname-$pkgver.tar.xz +} + +build() { + cd $pkgname-$pkgver + + echo "$pkgdir" + ./configure \ + --prefix=/usr \ + --build=x86_64-unknown-linux-musl \ + --host=x86_64-unknown-linux-musl \ + + #--exec_prefix=/ + + bad --gmake gmake +} + +package() { + cd $pkgname-$pkgver + # Doesn't work :( + #gmake install DESTDIR=$pkgdir PREFIX=/usr + + # We're not moving util/subst + # Do we need to? IDK + + mkdir -p $pkgdir/usr/bin + mkdir -p $pkgdir/usr/lib + + + mv misc/badblocks misc/blkid misc/chattr misc/dumpe2fs misc/e2freefrag misc/e2fuzz misc/e2image \ + misc/e2initrd_helper misc/e2undo misc/e4crypt misc/e4defrag misc/filefrag misc/fsck \ + misc/logsave misc/lsattr misc/mke2fs misc/mklost+found misc/tune2fs misc/uuidd misc/uuidgen \ + $pkgdir/usr/bin + + mv e2fsck/e2fsck debugfs/debugfs resize/resize2fs $pkgdir/usr/bin + + cd lib + mv libblkid.a libe2p.a libss.a libuuid.a libcom_err.a libext2fs.a libsupport.a $pkgdir/usr/lib +} + +license() { + cd $pkgname-$pkgver + cat NOTICE +} 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/old/glibr/build.sh b/old/glibr/build.sh new file mode 100644 index 0000000..23dcb28 --- /dev/null +++ b/old/glibr/build.sh @@ -0,0 +1,23 @@ +pkgname=glibr +pkgver=main + +fetch() { + curl -L "https://github.com/iglunix/glibr/archive/main.tar.gz" -o $pkgname-$pkgver.tar.gz + tar -xf $pkgname-$pkgver.tar.gz +} + +build() { + cd $pkgname-$pkgver + make +} + +package() { + cd $pkgname-$pkgver + make install PREFIX=/usr DESTDIR=$pkgdir +} + +license() { + cd $pkgname-$pkgver + cat LICENSE +# cat COPYING +} diff --git a/old/graphicsmagick/build.sh b/old/graphicsmagick/build.sh new file mode 100644 index 0000000..6cf7093 --- /dev/null +++ b/old/graphicsmagick/build.sh @@ -0,0 +1,39 @@ +pkgname=graphicsmagick +pkgver=1.3.36 + +fetch() { + curl "http://ftp.icm.edu.pl/pub/unix/graphics/GraphicsMagick/GraphicsMagick-LATEST.tar.zst" -o $pkgname-$pkgver.tar.zst + tar -I zstd -xf $pkgname-$pkgver.tar.zst + mv GraphicsMagick-$pkgver $pkgname-$pkgver +} + +build() { + cd $pkgname-$pkgver + ./configure \ + --prefix=/usr \ + --build=$TRIPLE \ + --host=$TRIPLE + + make +} + +package() { + cd $pkgname-$pkgver + make install DESTDIR=$pkgdir + ln -sr $pkgdir/usr/bin/gm $pkgdir/usr/bin/animate + ln -sr $pkgdir/usr/bin/gm $pkgdir/usr/bin/compare + ln -sr $pkgdir/usr/bin/gm $pkgdir/usr/bin/composite + ln -sr $pkgdir/usr/bin/gm $pkgdir/usr/bin/conjure + ln -sr $pkgdir/usr/bin/gm $pkgdir/usr/bin/convert + ln -sr $pkgdir/usr/bin/gm $pkgdir/usr/bin/display + ln -sr $pkgdir/usr/bin/gm $pkgdir/usr/bin/identify + ln -sr $pkgdir/usr/bin/gm $pkgdir/usr/bin/import + ln -sr $pkgdir/usr/bin/gm $pkgdir/usr/bin/mogrify + ln -sr $pkgdir/usr/bin/gm $pkgdir/usr/bin/montage + +} + +license() { + cd $pkgname-$pkgver + cat Copyright.txt +} 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/old/kbd/build.sh b/old/kbd/build.sh new file mode 100644 index 0000000..8082685 --- /dev/null +++ b/old/kbd/build.sh @@ -0,0 +1,32 @@ +pkgname=kbd +pkgver=2.4.0 + +fetch() { + curl "https://mirrors.edge.kernel.org/pub/linux/utils/kbd/kbd-$pkgver.tar.xz" -o $pkgname-$pkgver.tar.xz + curl "https://raw.githubusercontent.com/workman-layout/Workman/master/linux_console/workman.iso15.kmap" -o workman.map + tar -xf $pkgname-$pkgver.tar.xz +} + +build() { + cd $pkgname-$pkgver + ./configure \ + --prefix=/usr \ + --build=x86_64-unknown-linux-musl \ + --host=x86_64-unknown-linux-musl \ + --disable-tests \ + --sysconfdir=/etc + + make +} + +package() { + cd $pkgname-$pkgver + make install DESTDIR=$pkgdir + install -d $pkgdir/usr/share/keymaps/i386/workman/ + install -Dm 644 ../workman.map $pkgdir/usr/share/keymaps/i386/workman/ +} + +license() { + cd $pkgname-$pkgver + cat COPYING +} diff --git a/old/libnl/build.sh b/old/libnl/build.sh new file mode 100644 index 0000000..4a04fbd --- /dev/null +++ b/old/libnl/build.sh @@ -0,0 +1,46 @@ +pkgname=libnl +pkgver=3.5.0 + +fetch() { + curl -L "https://github.com/thom311/libnl/releases/download/libnl3_5_0/libnl-3.5.0.tar.gz" -o $pkgname-$pkgver.tar.xz + tar -xf $pkgname-$pkgver.tar.xz + cp ../byacc-p-makefile.patch . + cp ../byacc-syntax.patch . + cp ../byacc-comment-defines.patch . + cd $pkgname-$pkgver + patch -p1 < ../byacc-syntax.patch + + echo "###############################" + echo "# WARNING #" + echo "# THIS IS PROBABLY NOT SECURE #" + echo "###############################" + +} + +build() { + cd $pkgname-$pkgver + YACC=byacc ./configure \ + --prefix=/usr \ + --sysconfdir=/etc \ + --build=x86_64-unknown-linux-musl \ + --host=x86_64-unknown-linux-musl + + patch -p1 < ../byacc-p-makefile.patch + + bad --gmake gmake + + patch -p1 < ../byacc-comment-defines.patch + + bad --gmake gmake +} + +package() { + cd $pkgname-$pkgver + make install DESTDIR=$pkgdir +} + +license() { + cd $pkgname-$pkgver + cat LICENSE +# cat COPYING +} diff --git a/old/libnl/byacc-comment-defines.patch b/old/libnl/byacc-comment-defines.patch new file mode 100644 index 0000000..1912114 --- /dev/null +++ b/old/libnl/byacc-comment-defines.patch @@ -0,0 +1,34 @@ +--- a/lib/route/cls/ematch_syntax.c ++++ b/lib/route/cls/ematch_syntax.c +@@ -218,12 +218,12 @@ + #define KW_CLOSE 265 + #define KW_PLUS 266 + #define KW_MASK 267 +-#define mask 268 ++// #define mask 268 + #define KW_SHIFT 269 + #define KW_AT 271 + #define at 272 + #define EMATCH_CMP 273 +-#define cmp 274 ++// #define cmp 274 + #define EMATCH_NBYTE 275 + #define pattern 276 + #define EMATCH_TEXT 277 +--- a/lib/route/cls/ematch_syntax.h ++++ b/lib/route/cls/ematch_syntax.h +@@ -12,12 +12,12 @@ + #define KW_CLOSE 265 + #define KW_PLUS 266 + #define KW_MASK 267 +-#define mask 268 ++// #define mask 268 + #define KW_SHIFT 269 + #define KW_AT 271 + #define at 272 + #define EMATCH_CMP 273 +-#define cmp 274 ++// #define cmp 274 + #define EMATCH_NBYTE 275 + #define pattern 276 + #define EMATCH_TEXT 277 diff --git a/old/libnl/byacc-p-makefile.patch b/old/libnl/byacc-p-makefile.patch new file mode 100644 index 0000000..2eeaf58 --- /dev/null +++ b/old/libnl/byacc-p-makefile.patch @@ -0,0 +1,20 @@ +--- a/Makefile ++++ b/Makefile +@@ -7619,7 +7619,7 @@ + @true + + lib/route/pktloc_syntax.c: lib/route/pktloc_syntax.y lib/route/.dirstamp +- $(AM_V_GEN) $(YACC) -d $(YFLAGS) -o $@ $< ++ $(AM_V_GEN) $(YACC) -p pktloc_ -d $(YFLAGS) -o $@ $< + + lib/route/cls/ematch_grammar.h: lib/route/cls/ematch_grammar.c + @true +@@ -7631,7 +7631,7 @@ + @true + + lib/route/cls/ematch_syntax.c: lib/route/cls/ematch_syntax.y lib/route/cls/.dirstamp +- $(AM_V_GEN) $(YACC) -d $(YFLAGS) -o $@ $< ++ $(AM_V_GEN) $(YACC) -p ematch_ -d $(YFLAGS) -o $@ $< + + $(lib_libnl_route_3_la_OBJECTS): $(grammar_files_headers) + diff --git a/old/libnl/byacc-syntax.patch b/old/libnl/byacc-syntax.patch new file mode 100644 index 0000000..55b0b53 --- /dev/null +++ b/old/libnl/byacc-syntax.patch @@ -0,0 +1,64 @@ +--- a/lib/route/cls/ematch_syntax.y ++++ b/lib/route/cls/ematch_syntax.y +@@ -30,8 +30,9 @@ + %} + + %error-verbose +-%define api.pure +-%name-prefix "ematch_" ++%pure-parser ++//%define api.pure ++//%name-prefix "ematch_" + + %parse-param {void *scanner} + %parse-param {char **errp} +--- a/lib/route/pktloc_syntax.y ++++ b/lib/route/pktloc_syntax.y +@@ -6,10 +6,22 @@ + #include + %} + ++%{ ++struct YYLTYPE; ++union YYSTYPE; ++extern int pktloc_lex(union YYSTYPE *, struct YYLTYPE *, void *); ++ ++static void yyerror(struct YYLTYPE *locp, void *scanner, const char *msg) ++{ ++ NL_DBG(1, "Error while parsing packet location file: %s\n", msg); ++} ++%} ++ + %locations + %error-verbose +-%define api.pure +-%name-prefix "pktloc_" ++//%define api.pure ++%pure-parser ++//%name-prefix "pktloc_" + + %parse-param {void *scanner} + %lex-param {void *scanner} +@@ -21,15 +33,6 @@ + char *s; + } + +-%{ +-extern int pktloc_lex(YYSTYPE *, YYLTYPE *, void *); +- +-static void yyerror(YYLTYPE *locp, void *scanner, const char *msg) +-{ +- NL_DBG(1, "Error while parsing packet location file: %s\n", msg); +-} +-%} +- + %token ERROR NUMBER LAYER ALIGN + %token NAME + +@@ -101,3 +104,6 @@ + | NUMBER + { $$ = $1; } + ; ++ ++%% ++ diff --git a/pkgs/libressl/build.sh b/old/libressl/build.sh similarity index 70% rename from pkgs/libressl/build.sh rename to old/libressl/build.sh index f9fcc34..643e1ae 100644 --- a/pkgs/libressl/build.sh +++ b/old/libressl/build.sh @@ -1,11 +1,11 @@ -pkgver=3.3.1 +pkgver=3.3.2 pkgname=libressl pkgrel=1 bad="" ext="doc:dev" fetch() { - curl -L "https://ftp.openbsd.org/pub/OpenBSD/LibreSSL/libressl-3.3.1.tar.gz" -o $pkgname-$pkgver.tar.gz + curl -L "https://ftp.openbsd.org/pub/OpenBSD/LibreSSL/libressl-$pkgver.tar.gz" -o $pkgname-$pkgver.tar.gz tar -xf $pkgname-$pkgver.tar.gz } @@ -31,7 +31,15 @@ package() { rm -r $pkgdir/usr/lib/pkgconfig } -package_doc() { +package_dev() { + cd $pkgname-$pkgver + cd build + DESTDIR=$pkgdir samu install + rm -r $pkgdir/etc + rm -r $pkgdir/usr/share + rm -r $pkgdir/usr/bin + rm $pkgdir/usr/lib/*.so + rm $pkgdir/usr/lib/*.so.* samu } diff --git a/old/lilo/build.sh b/old/lilo/build.sh new file mode 100644 index 0000000..3704927 --- /dev/null +++ b/old/lilo/build.sh @@ -0,0 +1,42 @@ +pkgname=lilo +pkgver=24.2 + +fetch() { + curl "http://ftp.debian.org/debian/pool/main/l/lilo/lilo_$pkgver.orig.tar.gz" -o $pkgname-$pkgver.tar.xz + tar -xf $pkgname-$pkgver.tar.xz + cd $pkgname-$pkgver + curl -L "https://raw.githubusercontent.com/ataraxialinux/ataraxia/master/stuff/lilo/0001-fix-build-with-clang.patch" | patch -p1 + curl -L "https://raw.githubusercontent.com/ataraxialinux/ataraxia/master/stuff/lilo/01_makefile-adds.patch" | patch -p1 + curl -L "https://raw.githubusercontent.com/ataraxialinux/ataraxia/master/stuff/lilo/03_keytab-lilo.8-debian-based.patch" | patch -p1 + curl -L "https://raw.githubusercontent.com/ataraxialinux/ataraxia/master/stuff/lilo/05_readme.disk-change.patch" | patch -p1 + curl -L "https://raw.githubusercontent.com/ataraxialinux/ataraxia/master/stuff/lilo/06_notinteractive.patch" | patch -p1 + curl -L "https://raw.githubusercontent.com/ataraxialinux/ataraxia/master/stuff/lilo/07_hardening-cflags%2Bcppflags.patch" | patch -p1 + curl -L "https://raw.githubusercontent.com/ataraxialinux/ataraxia/master/stuff/lilo/08_small-typos-in-manpages.patch" | patch -p1 + curl -L "https://raw.githubusercontent.com/ataraxialinux/ataraxia/master/stuff/lilo/09_fix-manpage-lilo-conf-5.patch" | patch -p1 + curl -L "https://raw.githubusercontent.com/ataraxialinux/ataraxia/master/stuff/lilo/10_fix-manpage-lilo-conf-5.patch" | patch -p1 + curl -L "https://raw.githubusercontent.com/ataraxialinux/ataraxia/master/stuff/lilo/11_fix-gcc-10.patch" | patch -p1 + curl -L "https://raw.githubusercontent.com/ataraxialinux/ataraxia/master/stuff/lilo/lilo-24.1-remove-O_ACCMODE.patch" | patch -p1 + curl -L "https://raw.githubusercontent.com/ataraxialinux/ataraxia/master/stuff/lilo/lilo-24.1-remove__GLIBC__.patch" | patch -p1 + + sed -i Makefile src/Makefile \ + -e '/strip/d;s|^ make| $(MAKE)|g' \ + -e '/images install/d' \ + -e '/images all/d' + + patch -p1 < ../../checkit.patch +} + +build() { + cd $pkgname-$pkgver + bad --gmake gmake CC="${CC:-clang}" +} + +package() { + cd $pkgname-$pkgver + bad --gmake gmake install DESTDIR=$pkgdir +} + +license() { + cd $pkgname-$pkgver + cat COPYING +} diff --git a/old/lilo/checkit.patch b/old/lilo/checkit.patch new file mode 100644 index 0000000..4a59529 --- /dev/null +++ b/old/lilo/checkit.patch @@ -0,0 +1,10 @@ +--- Makefile ++++ Makefile +@@ -88,7 +88,6 @@ + # + test: test.img + test.img: +- ./checkit + echo Tested >test.img + + # diff --git a/old/linux-pam/build.sh b/old/linux-pam/build.sh new file mode 100644 index 0000000..c891887 --- /dev/null +++ b/old/linux-pam/build.sh @@ -0,0 +1,30 @@ +pkgname=linux-pam +pkgver=1.5.1 + +fetch() { + curl -L "https://github.com/linux-pam/linux-pam/releases/download/v1.5.1/Linux-PAM-1.5.1.tar.xz" -o $pkgname-$pkgver.tar.xz + tar -xf $pkgname-$pkgver.tar.xz + mv Linux-PAM-$pkgver $pkgname-$pkgver +} + +build() { + cd $pkgname-$pkgver + ./configure \ + --prefix=/usr \ + --build=x86_64-unknown-linux-musl \ + --host=x86_64-unknown-linux-musl \ + --libdir=/usr/lib \ + --sbindir=/usr/sbin + + make +} + +package() { + cd $pkgname-$pkgver + make install DESTDIR=$pkgdir +} + +license() { + cd $pkgname-$pkgver + cat COPYING +} 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/old/rawk/build.sh b/old/rawk/build.sh new file mode 100644 index 0000000..cd8712a --- /dev/null +++ b/old/rawk/build.sh @@ -0,0 +1,27 @@ +pkgname=rawk +pkgver=master + +fetch() { + curl -L "https://github.com/kisom/rawk/archive/refs/heads/master.tar.gz" -o $pkgname-$pkgver.tar.xz + tar -xf $pkgname-$pkgver.tar.xz + cp ../cp-u.patch . + cd $pkgname-$pkgver + patch -p1 < ../cp-u.patch +} + +build() { + cd $pkgname-$pkgver + PREFIX=/usr ./config.sh + make +} + +package() { + cd $pkgname-$pkgver + make install PREFIX=$pkgdir/usr/ +} + +license() { + cd $pkgname-$pkgver + cat LICENSE +# cat COPYING +} diff --git a/old/rawk/cp-u.patch b/old/rawk/cp-u.patch new file mode 100644 index 0000000..4e631f0 --- /dev/null +++ b/old/rawk/cp-u.patch @@ -0,0 +1,20 @@ +--- a/rawk ++++ b/rawk +@@ -98,7 +98,7 @@ + + if [ -n "$stylesheet" ]; then + mkdir -p "$target"/styles +- cp -u "$stylesheet" "$target"/styles/style.css ++ cp "$stylesheet" "$target"/styles/style.css + fi + + cd "$src_dir" +@@ -119,7 +119,7 @@ + if [ -d "$i" ]; then + mkdir -p "$o" + else +- cp -u "$i" "$o" ++ cp "$i" "$o" + fi + ;; + esac diff --git a/old/reflex/build.sh b/old/reflex/build.sh new file mode 100644 index 0000000..da0f7ad --- /dev/null +++ b/old/reflex/build.sh @@ -0,0 +1,29 @@ +pkgname=reflex +pkgver=20210510 + +fetch() { + curl "https://invisible-island.net/datafiles/release/reflex.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 +} + +package() { + cd $pkgname-$pkgver + make install DESTDIR=$pkgdir + + ln -sr $pkgdir/usr/bin/reflex $pkgdir/usr/bin/lex +} + +license() { + cd $pkgname-$pkgver + cat COPYING +} diff --git a/old/river/build.sh b/old/river/build.sh new file mode 100644 index 0000000..47c211b --- /dev/null +++ b/old/river/build.sh @@ -0,0 +1,43 @@ +pkgname=river +pkgver=master +_zig_wayland_ver=master +_zig_xkbcommon_ver=master +_zig_pixman_ver=master +_zig_wlroots_ver=master + +fetch() { + curl -L "https://github.com/ifreund/river/archive/refs/heads/master.tar.gz" -o $pkgname-$pkgver.tar.gz + curl -L "https://github.com/ifreund/zig-wayland/archive/refs/heads/master.tar.gz" -o zig-wayland-$_zig_wayland_ver.tar.gz + curl -L "https://github.com/ifreund/zig-xkbcommon/archive/refs/heads/master.tar.gz" -o zig-xkbcommon-$_zig_xkbcommon_ver.tar.gz + curl -L "https://github.com/ifreund/zig-pixman/archive/refs/heads/master.tar.gz" -o zig-pixman-$_zig_pixman_ver.tar.gz + curl -L "https://github.com/swaywm/zig-wlroots/archive/refs/heads/master.tar.gz" -o zig-wlroots-$_zig_wlroots_ver.tar.gz + tar -xf $pkgname-$pkgver.tar.gz + cd $pkgname-$pkgver + cd deps + tar -xf ../../zig-wayland-$_zig_wayland_ver.tar.gz + mv zig-wayland-$_zig_wayland_ver/* zig-wayland + tar -xf ../../zig-xkbcommon-$_zig_xkbcommon_ver.tar.gz + mv zig-xkbcommon-$_zig_xkbcommon_ver/* zig-xkbcommon + tar -xf ../../zig-pixman-$_zig_pixman_ver.tar.gz + mv zig-pixman-$_zig_pixman_ver/* zig-pixman + tar -xf ../../zig-wlroots-$_zig_wlroots_ver.tar.gz + mv zig-wlroots-$_zig_wlroots_ver/* zig-wlroots +} + +build() { + cd $pkgname-$pkgver + zig build -Drelease-safe --prefix /usr +} + +package() { + cd $pkgname-$pkgver + DESTDIR=$pkgdir zig build -Drelease-safe --prefix /usr install + # Igluinx has alacritty packaged + sed -i 's/foot/alacritty/g' $pkgdir/etc/river/init +} + +license() { + cd $pkgname-$pkgver + cat LICENSE +# cat COPYING +} diff --git a/old/rsync/build.sh b/old/rsync/build.sh new file mode 100644 index 0000000..ebe3f0a --- /dev/null +++ b/old/rsync/build.sh @@ -0,0 +1,30 @@ +pkgname=rsync +pkgver=3.2.3 + +fetch() { + curl "https://download.samba.org/pub/rsync/src/rsync-3.2.3.tar.gz" -o $pkgname-$pkgver.tar.xz + tar -xf $pkgname-$pkgver.tar.xz +} + +build() { + cd $pkgname-$pkgver + ./configure \ + --prefix=/usr \ + --build=x86_64-unknown-linux-musl \ + --host=x86_64-unknown-linux-musl \ + --disable-xxhash \ + --disable-zstd \ + --disable-lz4 + + make +} + +package() { + cd $pkgname-$pkgver + make install DESTDIR=$pkgdir +} + +license() { + cd $pkgname-$pkgver + cat COPYING +} diff --git a/old/swc/build.sh b/old/swc/build.sh new file mode 100644 index 0000000..9325ca1 --- /dev/null +++ b/old/swc/build.sh @@ -0,0 +1,26 @@ +pkgname=swc +deps="wld:pixman" +pkgver=intel-tiling + +fetch() { + curl -L "https://github.com/michaelforney/swc/archive/refs/heads/intel-tiling.tar.gz" -o $pkgname-$pkgver.tar.xz + tar -xf $pkgname-$pkgver.tar.xz + cp ../config.mk . +} + +build() { + cd $pkgname-$pkgver + cp ../config.mk . + + bad --gmake gmake PREFIX=/usr CC=cc +} + +package() { + cd $pkgname-$pkgver + bad --gmake gmake install DESTDIR=$pkgdir PREFIX=/usr +} + +license() { + cd $pkgname-$pkgver + cat LICENSE +} diff --git a/old/swc/config.mk b/old/swc/config.mk new file mode 100644 index 0000000..ac131c5 --- /dev/null +++ b/old/swc/config.mk @@ -0,0 +1,5 @@ +ENABLE_DEBUG = 0 +ENABLE_STATIC = 0 +ENABLE_SHARED = 1 +ENABLE_LIBUDEV = 1 +ENABLE_XWAYLAND = 0 diff --git a/pkgs/swvkc/build.sh b/old/swvkc/build.sh similarity index 67% rename from pkgs/swvkc/build.sh rename to old/swvkc/build.sh index ed96ec5..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 } @@ -11,7 +11,7 @@ build() { cd $pkgname-$pkgver cd build meson .. \ - --buildtype=release \ + --buildtype=debug \ --prefix=/usr samu } diff --git a/old/tiny-linux-bootloader/bsect.patch b/old/tiny-linux-bootloader/bsect.patch new file mode 100644 index 0000000..d8466ba --- /dev/null +++ b/old/tiny-linux-bootloader/bsect.patch @@ -0,0 +1,10 @@ +--- bsect.asm ++++ bsect.asm +@@ -15,7 +15,6 @@ + ; You should have received a copy of the GNU General Public License + ; along with this program. If not, see . + +-%define DEBUG + %include "config.inc" + + [BITS 16] diff --git a/old/tiny-linux-bootloader/build.patch b/old/tiny-linux-bootloader/build.patch new file mode 100644 index 0000000..d5fcb56 --- /dev/null +++ b/old/tiny-linux-bootloader/build.patch @@ -0,0 +1,15 @@ +--- build.sh ++++ build.sh +@@ -16,9 +16,9 @@ + # along with this program. If not, see . + + INPUT="bsect.asm" +-OUTPUT="disk" +-KERN="./barebones" +-RD="./big.init" ++OUTPUT="/tiny-linux-bootloader/disk" ++KERN="/iglunix/isoout/vmlinuz" ++RD="/iglunix/isoout/initramfs.img" + + #size of kern + ramdisk + K_SZ=`stat -c %s $KERN` diff --git a/old/tiny-linux-bootloader/build.sh b/old/tiny-linux-bootloader/build.sh new file mode 100644 index 0000000..72819ea --- /dev/null +++ b/old/tiny-linux-bootloader/build.sh @@ -0,0 +1,33 @@ +pkgname=tiny-linux-bootloader +pkgver=master + +fetch() { + curl -L "https://github.com/owenson/tiny-linux-bootloader/archive/master.tar.gz" -o $pkgname-$pkgver.tar.xz + tar -xf $pkgname-$pkgver.tar.xz + cd $pkgname-$pkgver + patch -p1 < ../../build.patch + patch -p1 < ../../bsect.patch + patch -p1 < ../../remove-dead.patch +} + +package() { + cd $pkgname-$pkgver + + rm -rf /tiny-linux-bootloader + mkdir /tiny-linux-bootloader + CURR_DIR=$(pwd) + + cd ./../../../../ + ./geninitrd.sh + + cd $CURR_DIR + ./build.sh + + cd ./../../../../ + ./createimg.sh +} + +license() { + cd $pkgname-$pkgver + cat LICENSE +} diff --git a/old/tiny-linux-bootloader/fstab b/old/tiny-linux-bootloader/fstab new file mode 100644 index 0000000..939a6db --- /dev/null +++ b/old/tiny-linux-bootloader/fstab @@ -0,0 +1,5 @@ +# information about the filesystems. +# See fstab(5) for details. + +# +/dev/sda1 / ext4 rw,relatime 0 1 diff --git a/old/tiny-linux-bootloader/remove-dead.patch b/old/tiny-linux-bootloader/remove-dead.patch new file mode 100644 index 0000000..6d5547e --- /dev/null +++ b/old/tiny-linux-bootloader/remove-dead.patch @@ -0,0 +1,11 @@ +--- a/bsect.asm ++++ b/bsect.asm +@@ -135,7 +135,7 @@ + .loop: + cmp edx, 127*512 + jl loader.part_2 +- jz loader.finish ++; jz loader.finish + + mov ax, 127 ;count + xor bx, bx ; offset diff --git a/old/toolchain-aarch64/build.sh b/old/toolchain-aarch64/build.sh new file mode 100644 index 0000000..281d64c --- /dev/null +++ b/old/toolchain-aarch64/build.sh @@ -0,0 +1,64 @@ +pkgname=toolchain-aarch64 +pkgver=12.0.0 + +fetch() { + curl -L "https://github.com/llvm/llvm-project/releases/download/llvmorg-$pkgver/llvm-project-$pkgver.src.tar.xz" -o llvm-$pkgver.tar.gz + curl "https://musl.libc.org/releases/musl-1.2.2.tar.gz" -o musl-1.2.2.tar.gz + tar -xf llvm-$pkgver.tar.gz + tar -xf musl-1.2.2.tar.gz + mv llvm-project-$pkgver.src llvm-$pkgver + mkdir llvm-$pkgver/build-compiler-rt + mkdir sysroot +} + +build() { + export pkgdir=$(pwd)/sysroot + cd llvm-$pkgver + cd build-compiler-rt + cmake -G Ninja ../compiler-rt \ + -DCMAKE_BUILD_TYPE=Release \ + -DCMAKE_INSTALL_PREFIX=/usr/aarch64-linux-musl \ + -DCMAKE_INSTALL_LIBDIR=lib \ + -DCMAKE_C_COMPILER=clang \ + -DCMAKE_C_COMPILER_TARGET=aarch64-linux-musl \ + -DCMAKE_ASM_COMPILER=clang \ + -DCMAKE_ASM_COMPILER_TARGET=aarch64-linux-musl \ + -DCOMPILER_RT_USE_BUILTINS_LIBRARY=ON \ + -DCOMPILER_RT_BUILD_BUILTINS=ON \ + -DCOMPILER_RT_DEFAULT_TARGET_ONLY=OFF \ + -DCOMPILER_RT_DEFAULT_TARGET_TRIPLE=aarch64-linux-musl \ + -DCOMPILER_RT_INCLUDE_TESTS=OFF \ + -DCOMPILER_RT_BUILD_SANITIZERS=OFF \ + -DCOMPILER_RT_BUILD_XRAY=OFF \ + -DCOMPILER_RT_BUILD_MEMPROF=OFF \ + -DCOMPILER_RT_BUILD_PROFILE=OFF \ + -DCOMPILER_RT_INCLUDE_TESTS=OFF \ + -DCOMPILER_RT_BUILD_LIBFUZZER=OFF \ + -DCMAKE_C_FLAGS='-nostdlib' \ + -DCMAKE_ASM_FLAGS='-nostdlib' \ + -DCAN_TARGET_aarch64=YES \ + -DLIBCXX_HAS_MUSL_LIBC=ON \ + -DLLVM_CONFIG_PATH=/usr/bin/llvm-config + + DESTDIR=$pkgdir samu install + cd ../.. + + cd musl-1.2.2 + CFLAGS="--sysroot=$pkgdir/usr/aarch64-linux-musl/ --target=aarch64-unknown-linux-musl" AR=ar LIBCC=$pkgdir/usr/aarch64-linux-musl/lib/linux/libclang_rt.builtins-aarch64.a ./configure \ + --prefix=/usr/aarch64-linux-musl \ + --target=aarch64-unknown-linux-musl \ + --enable-wrappers=no + + bad --gmake gmake + bad --gmake gmake install DESTDIR=$pkgdir +} + +package() { + mv sysroot/* $pkgdir +} + +license() { + cd $pkgname-$pkgver + cat LICENSE +# cat COPYING +} diff --git a/old/util-linux/build.sh b/old/util-linux/build.sh new file mode 100644 index 0000000..a5b9ce6 --- /dev/null +++ b/old/util-linux/build.sh @@ -0,0 +1,37 @@ +pkgver=2.36.2 +pkgname=util-linux +pkgrel=1 + +fetch() { + curl "https://mirrors.edge.kernel.org/pub/linux/utils/$pkgname/v2.36/$pkgname-$pkgver.tar.xz" -o $pkgname-$pkgver.tar.xz + tar -xf $pkgname-$pkgver.tar.xz + cd $pkgname-$pkgver +} + +build() { + cd $pkgname-$pkgver + ./configure \ + --prefix=/usr \ + --build=x86_64-unknown-linux-musl \ + --host=x86_64-unknown-linux-musl \ + --disable-all-programs \ + --enable-libsmartcols \ + --enable-libuuid \ + --enable-libfdisk \ + --enable-fdisks + + + make LDFLAGS="-lterminfo" + +} + +package() { + cd $pkgname-$pkgver + make install DESTDIR=$pkgdir +} + + +license() { + cd $pkgname-$pkgver + cat COPYING +} diff --git a/old/velox/build.sh b/old/velox/build.sh new file mode 100644 index 0000000..34a07e7 --- /dev/null +++ b/old/velox/build.sh @@ -0,0 +1,29 @@ +pkgname=velox +pkgver=master + +fetch() { + curl -L "https://github.com/michaelforney/velox/archive/refs/heads/master.tar.gz" -o $pkgname-$pkgver.tar.xz + tar -xf $pkgname-$pkgver.tar.xz + cp ../config.mk . + cp ../velox.conf . +} + +build() { + cd $pkgname-$pkgver + cp ../config.mk . + cp ../velox.conf . + + bad --gmake gmake PREFIX=/usr CC=cc +} + +package() { + cd $pkgname-$pkgver + bad --gmake gmake install DESTDIR=$pkgdir PREFIX=/usr + install -d $pkgdir/etc + install -Dm644 velox.conf $pkgdir/etc/ +} + +license() { + cd $pkgname-$pkgver + cat LICENSE +} diff --git a/old/velox/config.mk b/old/velox/config.mk new file mode 100644 index 0000000..140e66d --- /dev/null +++ b/old/velox/config.mk @@ -0,0 +1,2 @@ +ENABLE_DEBUG = 0 +LIBEXECDIR = /usr/lib diff --git a/old/velox/velox.conf b/old/velox/velox.conf new file mode 100644 index 0000000..93f8d8b --- /dev/null +++ b/old/velox/velox.conf @@ -0,0 +1,80 @@ +# velox.conf + +# property value +set mod logo +set window.border_color_active 0xff338833 +set window.border_color_inactive 0xff888888 +set window.border_width 2 + +set tap_to_click 1 + +set tag.1.name 1 +set tag.2.name 2 +set tag.3.name 3 +set tag.4.name 4 +set tag.5.name 5 +set tag.6.name 6 +set tag.7.name 7 +set tag.8.name 8 +set tag.9.name 9 + +# name type arguments +action spawn_terminal spawn exec weston-terminal +action spawn_run spawn exec dmenu_run -b +action spawn_browser spawn exec netsurf + +# key modifiers action +key j mod focus_next +key k mod focus_prev +key Return mod zoom +key space mod layout_next +key Tab mod previous_tags +key q mod,shift quit + +key g mod window.switch_layer +key c mod,shift window.close + +key h mod tall.decrease_master_size +key l mod tall.increase_master_size +key h mod,shift tall.increase_num_masters +key l mod,shift tall.decrease_num_masters +key h mod,ctrl tall.increase_num_columns +key l mod,ctrl tall.decrease_num_columns + +key Return mod,shift spawn_terminal +key r mod spawn_run +key b mod spawn_browser + +key 1 mod tag.1.activate +key 2 mod tag.2.activate +key 3 mod tag.3.activate +key 4 mod tag.4.activate +key 5 mod tag.5.activate +key 6 mod tag.6.activate +key 7 mod tag.7.activate +key 8 mod tag.8.activate +key 9 mod tag.9.activate + +key 1 mod,ctrl tag.1.toggle +key 2 mod,ctrl tag.2.toggle +key 3 mod,ctrl tag.3.toggle +key 4 mod,ctrl tag.4.toggle +key 5 mod,ctrl tag.5.toggle +key 6 mod,ctrl tag.6.toggle +key 7 mod,ctrl tag.7.toggle +key 8 mod,ctrl tag.8.toggle +key 9 mod,ctrl tag.9.toggle + +key 1 mod,shift tag.1.apply +key 2 mod,shift tag.2.apply +key 3 mod,shift tag.3.apply +key 4 mod,shift tag.4.apply +key 5 mod,shift tag.5.apply +key 6 mod,shift tag.6.apply +key 7 mod,shift tag.7.apply +key 8 mod,shift tag.8.apply +key 9 mod,shift tag.9.apply + +button left mod window.begin_move:window.end_move +button left mod,shift window.begin_resize:window.end_resize + 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/old/wld/build.sh b/old/wld/build.sh new file mode 100644 index 0000000..89ac4af --- /dev/null +++ b/old/wld/build.sh @@ -0,0 +1,23 @@ +pkgname=wld +pkgver=master +deps="fontconfig" + +fetch() { + curl -L "https://github.com/michaelforney/wld/archive/refs/heads/master.tar.gz" -o $pkgname-$pkgver.tar.xz + tar -xf $pkgname-$pkgver.tar.xz +} + +build() { + cd $pkgname-$pkgver + bad --gmake gmake PREFIX=/usr CC=cc +} + +package() { + cd $pkgname-$pkgver + bad --gmake gmake install DESTDIR=$pkgdir PREFIX=/usr +} + +license() { + cd $pkgname-$pkgver + cat COPYING +} diff --git a/pkgs/zlib/build.sh b/old/zlib/build.sh similarity index 69% rename from pkgs/zlib/build.sh rename to old/zlib/build.sh index 24ecf1c..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 @@ -24,13 +29,16 @@ package() { rm -r $pkgdir/usr/share } -package_doc() { +package_dev() { cd $pkgname-$pkgver make install DESTDIR=$pkgdir rm -r $pkgdir/usr/bin + rm $pkgdir/usr/lib/*.so + rm $pkgdir/usr/lib/*.so.* + rm -r $pkgdir/usr/share } license() { cd $pkgname-$pkgver - cat LICENSE + grep -A 24 '^ Copyright' zlib.h } diff --git a/pkgs/bmake/build.sh b/pkgs/bmake/build.sh deleted file mode 100644 index f48d43e..0000000 --- a/pkgs/bmake/build.sh +++ /dev/null @@ -1,38 +0,0 @@ -pkgver=20201212 -pkgname=bmake -bad="" -ext="doc" - -fetch() { - curl http://www.crufty.net/ftp/pub/sjg/bmake-20201212.tar.gz -o $pkgname-$pkgver.tar.gz - tar -xf $pkgname-$pkgver.tar.gz - mv $pkgname $pkgname-$pkgver - cd $pkgname-$pkgver - patch ./boot-strap < ../../no-test.patch - patch ./install-sh < ../../install.patch -} - -build() { - cd $pkgname-$pkgver - ./configure --prefix=/usr - 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 -} - -package_doc() { - cd $pkgname-$pkgver - ./bmake -m ./mk install DESTDIR=$pkgdir - rm -r $pkgdir/usr/bin - rm -r $pkgdir/usr/share/mk -} - -license() { - cd $pkgname-$pkgver - cat LICENSE -} 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/busybox/build.sh b/pkgs/busybox/build.sh deleted file mode 100644 index 37c3626..0000000 --- a/pkgs/busybox/build.sh +++ /dev/null @@ -1,33 +0,0 @@ -pkgver=1.33.0 -pkgname=busybox -bad=gmake -pkgrel=1 - -fetch() { - curl "https://busybox.net/downloads/busybox-1.33.0.tar.bz2" -o $pkgname-$pkgver.tar.gz - tar -xf $pkgname-$pkgver.tar.gz -} - -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 -} - -package() { - cd $pkgname-$pkgver - install -d $pkgdir - cp -r ./_install/* $pkgdir - chmod 4755 $pkgdir/bin/busybox - rm $pkgdir/linuxrc - rm $pkgdir/bin/ln - rm $pkgdir/bin/uname - rm $pkgdir/usr/bin/install - rm $pkgdir/usr/bin/lspci -} - -license() { - cd $pkgname-$pkgver - cat LICENSE -} diff --git a/pkgs/byacc/build.sh b/pkgs/byacc/build.sh deleted file mode 100644 index 64ec2e7..0000000 --- a/pkgs/byacc/build.sh +++ /dev/null @@ -1,38 +0,0 @@ -pkgver=20210109 -pkgname=byacc -bad="" -ext="doc" - -fetch() { - curl https://invisible-island.net/datafiles/release/byacc.tar.gz -o $pkgname-$pkgver.tar.gz - tar -xf $pkgname-$pkgver.tar.gz - cp ../reader-mesa.patch . -} - -build() { - cd $pkgname-$pkgver - ./configure \ - --prefix=/usr \ - --program-prefix=b \ - --enable-btyacc - patch -p1 < ../reader-mesa.patch - make -} - -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 -} - -license() { - cd $pkgname-$pkgver - cat LICENSE -} 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 96bb2c1..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=/share/man \ - --datadir=/share/$pkgname \ - --docdir=/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/cmph/build.sh b/pkgs/cmph/build.sh new file mode 100644 index 0000000..f7462c7 --- /dev/null +++ b/pkgs/cmph/build.sh @@ -0,0 +1,28 @@ +pkgname=cmph +pkgver=2.0.2 + +fetch() { + curl -L "http://downloads.sourceforge.net/$pkgname/$pkgname-$pkgver.tar.gz" -o $pkgname-$pkgver.tar.xz + tar -xf $pkgname-$pkgver.tar.xz +} + +build() { + cd $pkgname-$pkgver + ./configure \ + --prefix=/usr \ + --build=x86_64-unknown-linux-musl \ + --host=x86_64-unknown-linux-musl + + make +} + +package() { + cd $pkgname-$pkgver + make install DESTDIR=$pkgdir +} + +license() { + cd $pkgname-$pkgver + cat LICENSE +# cat COPYING +} diff --git a/pkgs/curl/build.sh b/pkgs/curl/build.sh deleted file mode 100644 index 32bb5c0..0000000 --- a/pkgs/curl/build.sh +++ /dev/null @@ -1,40 +0,0 @@ -pkgver=7.74.0 -pkgname=curl -pkgrel=1 -bad="" -ext="doc:dev" - -fetch() { - curl -L "https://github.com/curl/curl/releases/download/curl-7_74_0/curl-7.74.0.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 - 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_doc() { - samu -} - -license() { - cd $pkgname-$pkgver - cat COPYING -} diff --git a/pkgs/expat/build.sh b/pkgs/expat/build.sh deleted file mode 100644 index 76a1e59..0000000 --- a/pkgs/expat/build.sh +++ /dev/null @@ -1,38 +0,0 @@ -pkgver=2.2.10 -pkgname=expat -bad="" -ext="dev" - -fetch() { - pkgver_r = $(echo $pkgver | tr '.' '_') - curl -L https://github.com/libexpat/libexpat/releases/download/R_2_2_10/$pkgname-$pkgver.tar.xz -o $pkgname-$pkgver.tar.gz - tar -xf $pkgname-$pkgver.tar.gz -} - -build() { - cd $pkgname-$pkgver - ./configure \ - --prefix=/usr - 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_doc() { - cd $pkgname-$pkgver - make install DESTDIR=$pkgdir - rm -r $pkgdir/usr/bin -} - -license() { - cd $pkgname-$pkgver - cat LICENSE -} diff --git a/pkgs/flex/build.sh b/pkgs/flex/build.sh deleted file mode 100644 index d078506..0000000 --- a/pkgs/flex/build.sh +++ /dev/null @@ -1,36 +0,0 @@ -pkgver=2.6.4 -pkgname=flex -bad="" -ext="doc" - -fetch() { - curl -L https://github.com/westes/flex/releases/download/v2.6.4/flex-2.6.4.tar.gz -o $pkgname-$pkgver.tar.gz - tar -xf $pkgname-$pkgver.tar.gz -} - -build() { - cd $pkgname-$pkgver - ./configure \ - --prefix=/usr - make -} - -package() { - cd $pkgname-$pkgver - make install DESTDIR=$pkgdir - ln -sr $pkgdir/usr/bin/flex $pkgdir/usr/bin/lex - rm -r $pkgdir/usr/share - rm -r $pkgdir/usr/lib/*.a - rm -r $pkgdir/usr/lib/*.la -} - -package_doc() { - cd $pkgname-$pkgver - make install DESTDIR=$pkgdir - rm -r $pkgdir/usr/bin -} - -license() { - cd $pkgname-$pkgver - cat LICENSE -} diff --git a/pkgs/git/build.sh b/pkgs/git/build.sh deleted file mode 100644 index de40440..0000000 --- a/pkgs/git/build.sh +++ /dev/null @@ -1,32 +0,0 @@ -pkgver=2.30.0 -pkgname=git -pkgrel=1 -bad="gmake" -ext="doc" - -fetch() { - curl -L "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/github-cli/build.sh b/pkgs/github-cli/build.sh new file mode 100644 index 0000000..69236c0 --- /dev/null +++ b/pkgs/github-cli/build.sh @@ -0,0 +1,24 @@ +pkgname=github-cli +pkgver=1.6.2 + +fetch() { + curl -L "https://github.com/cli/cli/archive/v1.6.2.tar.gz" -o $pkgname-$pkgver.tar.xz + tar -xf $pkgname-$pkgver.tar.xz + mv cli-$pkgver $pkgname-$pkgver +} + +build() { + cd $pkgname-$pkgver + ckati +} + +package() { + cd $pkgname-$pkgver + install -Dm755 bin/gh $pkgdir/usr/bin/gh +} + +license() { + cd $pkgname-$pkgver + cat LICENSE +# cat COPYING +} diff --git a/pkgs/gmake/build.sh b/pkgs/gmake/build.sh deleted file mode 100644 index a7d4e58..0000000 --- a/pkgs/gmake/build.sh +++ /dev/null @@ -1,46 +0,0 @@ -pkgver=4.3 -pkgname=gmake -pkgrel=1 -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 - gmake -} - -package() { - cd $pkgname-$pkgver - gmake install DESTDIR=$pkgdir - rm -r $pkgdir/usr/share - rm -r $pkgdir/usr/include -} - -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/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 new file mode 100644 index 0000000..e69de29 diff --git a/pkgs/lazybox/build.sh b/pkgs/lazybox/build.sh deleted file mode 100644 index fa20269..0000000 --- a/pkgs/lazybox/build.sh +++ /dev/null @@ -1,34 +0,0 @@ -pkgver=main -pkgname=lazybox -pkgrel=1 -bad="" -ext="dev" - -fetch() { - mkdir $pkgname-$pkgver - cd $pkgname-$pkgver - cp ../../../../lazy*.sh . - cp ../../../../LICENSE . -} - -build() { - cd $pkgname-$pkgver - echo "Nothing to do" -} - -package() { - cd $pkgname-$pkgver - install -d $pkgdir/bin - install -Dm755 lazy.sh $pkgdir/usr/sbin/lazy -} - -package_dev() { - cd $pkgname-$pkgver - install -d $pkgdir/bin - install -Dm755 lazypkg.sh $pkgdir/usr/bin/lazypkg -} - -license() { - cd $pkgname-$pkgver - cat LICENSE -} diff --git a/pkgs/less/build.sh b/pkgs/less/build.sh index b9608ed..05477a2 100644 --- a/pkgs/less/build.sh +++ b/pkgs/less/build.sh @@ -1,5 +1,6 @@ pkgname=less pkgver=563 +deps="musl:netbsd-curses" ext="doc" fetch() { diff --git a/pkgs/libpsl/build.sh b/pkgs/libpsl/build.sh new file mode 100644 index 0000000..2986f0d --- /dev/null +++ b/pkgs/libpsl/build.sh @@ -0,0 +1,30 @@ +pkgname=libpsl +pkgver=0.21.1 + +fetch() { + curl -L "https://github.com/rockdaboot/libpsl/releases/download/0.21.1/libpsl-0.21.1.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 + samu +} + +package() { + cd $pkgname-$pkgver + cd build + DESTDIR=$pkgdir samu install +} + +license() { + cd $pkgname-$pkgver + cat LICENSE +# cat COPYING +} 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 ff4c95a..0000000 --- a/pkgs/linux/build.sh +++ /dev/null @@ -1,39 +0,0 @@ -pkgver=5.10.11 -pkgname=linux -pkgrel=1 -ext="dev" - -fetch() { - curl "https://k1ss.org/wiki/kernel/patches/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 - patch -p1 < ../kernel-no-perl.patch - patch -p1 < ../../kernel-byacc.patch - cp ../../x86_64.config .config -} - -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++ YACC=yacc LLVM_IAS=1 menuconfig - gmake CC=cc CXX=c++ HOSTCC=cc HOSTCXX=c++ YACC=yacc LLVM_IAS=1 oldconfig - gmake CC=cc CXX=c++ HOSTCC=cc HOSTCXX=c++ 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 - gmake CC=cc CXX=c++ HOSTCC=cc HOSTCXX=c++ YACC=yacc LLVM_IAS=1 INSTALL_HDR_PATH=$pkgdir/usr headers_install -} - -license() { - cd $pkgname-$pkgver - cat COPYING -} diff --git a/pkgs/linux/x86_64.config b/pkgs/linux/x86_64.config deleted file mode 100644 index 0303ae7..0000000 --- a/pkgs/linux/x86_64.config +++ /dev/null @@ -1,4769 +0,0 @@ -# -# Automatically generated file; DO NOT EDIT. -# Linux/x86 5.10.7 Kernel Configuration -# -CONFIG_CC_VERSION_TEXT="Abyss OS clang version 11.0.1" -CONFIG_GCC_VERSION=0 -CONFIG_LD_VERSION=0 -CONFIG_CC_IS_CLANG=y -CONFIG_LD_IS_LLD=y -CONFIG_CLANG_VERSION=110001 -CONFIG_LLD_VERSION=110001 -CONFIG_CC_CAN_LINK=y -CONFIG_CC_CAN_LINK_STATIC=y -CONFIG_CC_HAS_ASM_GOTO=y -CONFIG_CC_HAS_ASM_GOTO_OUTPUT=y -CONFIG_CC_HAS_ASM_INLINE=y -CONFIG_IRQ_WORK=y -CONFIG_BUILDTIME_TABLE_SORT=y -CONFIG_THREAD_INFO_IN_TASK=y - -# -# General setup -# -CONFIG_INIT_ENV_ARG_LIMIT=32 -# CONFIG_COMPILE_TEST is not set -CONFIG_LOCALVERSION="" -# CONFIG_LOCALVERSION_AUTO is not set -CONFIG_BUILD_SALT="" -CONFIG_HAVE_KERNEL_GZIP=y -CONFIG_HAVE_KERNEL_BZIP2=y -CONFIG_HAVE_KERNEL_LZMA=y -CONFIG_HAVE_KERNEL_XZ=y -CONFIG_HAVE_KERNEL_LZO=y -CONFIG_HAVE_KERNEL_LZ4=y -CONFIG_HAVE_KERNEL_ZSTD=y -CONFIG_KERNEL_GZIP=y -# CONFIG_KERNEL_BZIP2 is not set -# CONFIG_KERNEL_LZMA is not set -# CONFIG_KERNEL_XZ is not set -# CONFIG_KERNEL_LZO is not set -# CONFIG_KERNEL_LZ4 is not set -# CONFIG_KERNEL_ZSTD is not set -CONFIG_DEFAULT_INIT="" -CONFIG_DEFAULT_HOSTNAME="(none)" -CONFIG_SWAP=y -CONFIG_SYSVIPC=y -CONFIG_SYSVIPC_SYSCTL=y -CONFIG_POSIX_MQUEUE=y -CONFIG_POSIX_MQUEUE_SYSCTL=y -# CONFIG_WATCH_QUEUE is not set -CONFIG_CROSS_MEMORY_ATTACH=y -CONFIG_USELIB=y -CONFIG_AUDIT=y -CONFIG_HAVE_ARCH_AUDITSYSCALL=y -CONFIG_AUDITSYSCALL=y - -# -# IRQ subsystem -# -CONFIG_GENERIC_IRQ_PROBE=y -CONFIG_GENERIC_IRQ_SHOW=y -CONFIG_GENERIC_IRQ_EFFECTIVE_AFF_MASK=y -CONFIG_GENERIC_PENDING_IRQ=y -CONFIG_GENERIC_IRQ_MIGRATION=y -CONFIG_HARDIRQS_SW_RESEND=y -CONFIG_IRQ_DOMAIN=y -CONFIG_IRQ_DOMAIN_HIERARCHY=y -CONFIG_GENERIC_MSI_IRQ=y -CONFIG_GENERIC_MSI_IRQ_DOMAIN=y -CONFIG_IRQ_MSI_IOMMU=y -CONFIG_GENERIC_IRQ_MATRIX_ALLOCATOR=y -CONFIG_GENERIC_IRQ_RESERVATION_MODE=y -CONFIG_IRQ_FORCED_THREADING=y -CONFIG_SPARSE_IRQ=y -# CONFIG_GENERIC_IRQ_DEBUGFS is not set -# end of IRQ subsystem - -CONFIG_CLOCKSOURCE_WATCHDOG=y -CONFIG_ARCH_CLOCKSOURCE_INIT=y -CONFIG_CLOCKSOURCE_VALIDATE_LAST_CYCLE=y -CONFIG_GENERIC_TIME_VSYSCALL=y -CONFIG_GENERIC_CLOCKEVENTS=y -CONFIG_GENERIC_CLOCKEVENTS_BROADCAST=y -CONFIG_GENERIC_CLOCKEVENTS_MIN_ADJUST=y -CONFIG_GENERIC_CMOS_UPDATE=y -CONFIG_HAVE_POSIX_CPU_TIMERS_TASK_WORK=y -CONFIG_POSIX_CPU_TIMERS_TASK_WORK=y - -# -# Timers subsystem -# -CONFIG_TICK_ONESHOT=y -CONFIG_NO_HZ_COMMON=y -# CONFIG_HZ_PERIODIC is not set -CONFIG_NO_HZ_IDLE=y -# CONFIG_NO_HZ_FULL is not set -CONFIG_NO_HZ=y -CONFIG_HIGH_RES_TIMERS=y -# end of Timers subsystem - -# CONFIG_PREEMPT_NONE is not set -CONFIG_PREEMPT_VOLUNTARY=y -# CONFIG_PREEMPT is not set - -# -# CPU/Task time and stats accounting -# -CONFIG_TICK_CPU_ACCOUNTING=y -# CONFIG_VIRT_CPU_ACCOUNTING_GEN is not set -# CONFIG_IRQ_TIME_ACCOUNTING is not set -CONFIG_BSD_PROCESS_ACCT=y -# CONFIG_BSD_PROCESS_ACCT_V3 is not set -CONFIG_TASKSTATS=y -CONFIG_TASK_DELAY_ACCT=y -CONFIG_TASK_XACCT=y -CONFIG_TASK_IO_ACCOUNTING=y -# CONFIG_PSI is not set -# end of CPU/Task time and stats accounting - -CONFIG_CPU_ISOLATION=y - -# -# RCU Subsystem -# -CONFIG_TREE_RCU=y -# CONFIG_RCU_EXPERT is not set -CONFIG_SRCU=y -CONFIG_TREE_SRCU=y -CONFIG_RCU_STALL_COMMON=y -CONFIG_RCU_NEED_SEGCBLIST=y -# end of RCU Subsystem - -# CONFIG_IKCONFIG is not set -# CONFIG_IKHEADERS is not set -CONFIG_LOG_BUF_SHIFT=18 -CONFIG_LOG_CPU_MAX_BUF_SHIFT=12 -CONFIG_PRINTK_SAFE_LOG_BUF_SHIFT=13 -CONFIG_HAVE_UNSTABLE_SCHED_CLOCK=y - -# -# Scheduler features -# -# CONFIG_UCLAMP_TASK is not set -# end of Scheduler features - -CONFIG_ARCH_SUPPORTS_NUMA_BALANCING=y -CONFIG_ARCH_WANT_BATCHED_UNMAP_TLB_FLUSH=y -CONFIG_CC_HAS_INT128=y -CONFIG_ARCH_SUPPORTS_INT128=y -# CONFIG_NUMA_BALANCING is not set -CONFIG_CGROUPS=y -# CONFIG_MEMCG is not set -# CONFIG_BLK_CGROUP is not set -CONFIG_CGROUP_SCHED=y -CONFIG_FAIR_GROUP_SCHED=y -# CONFIG_CFS_BANDWIDTH is not set -# CONFIG_RT_GROUP_SCHED is not set -# CONFIG_CGROUP_PIDS is not set -# CONFIG_CGROUP_RDMA is not set -CONFIG_CGROUP_FREEZER=y -# CONFIG_CGROUP_HUGETLB is not set -CONFIG_CPUSETS=y -CONFIG_PROC_PID_CPUSET=y -# CONFIG_CGROUP_DEVICE is not set -CONFIG_CGROUP_CPUACCT=y -# CONFIG_CGROUP_PERF is not set -# CONFIG_CGROUP_DEBUG is not set -CONFIG_NAMESPACES=y -CONFIG_UTS_NS=y -CONFIG_TIME_NS=y -CONFIG_IPC_NS=y -# CONFIG_USER_NS is not set -CONFIG_PID_NS=y -CONFIG_NET_NS=y -# CONFIG_CHECKPOINT_RESTORE is not set -# CONFIG_SCHED_AUTOGROUP is not set -# CONFIG_SYSFS_DEPRECATED is not set -CONFIG_RELAY=y -CONFIG_BLK_DEV_INITRD=y -CONFIG_INITRAMFS_SOURCE="" -CONFIG_RD_GZIP=y -CONFIG_RD_BZIP2=y -CONFIG_RD_LZMA=y -CONFIG_RD_XZ=y -CONFIG_RD_LZO=y -CONFIG_RD_LZ4=y -CONFIG_RD_ZSTD=y -# CONFIG_BOOT_CONFIG is not set -CONFIG_CC_OPTIMIZE_FOR_PERFORMANCE=y -# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set -CONFIG_LD_ORPHAN_WARN=y -CONFIG_SYSCTL=y -CONFIG_HAVE_UID16=y -CONFIG_SYSCTL_EXCEPTION_TRACE=y -CONFIG_HAVE_PCSPKR_PLATFORM=y -CONFIG_BPF=y -# CONFIG_EXPERT is not set -CONFIG_UID16=y -CONFIG_MULTIUSER=y -CONFIG_SGETMASK_SYSCALL=y -CONFIG_SYSFS_SYSCALL=y -CONFIG_FHANDLE=y -CONFIG_POSIX_TIMERS=y -CONFIG_PRINTK=y -CONFIG_PRINTK_NMI=y -CONFIG_BUG=y -CONFIG_ELF_CORE=y -CONFIG_PCSPKR_PLATFORM=y -CONFIG_BASE_FULL=y -CONFIG_FUTEX=y -CONFIG_FUTEX_PI=y -CONFIG_EPOLL=y -CONFIG_SIGNALFD=y -CONFIG_TIMERFD=y -CONFIG_EVENTFD=y -CONFIG_SHMEM=y -CONFIG_AIO=y -CONFIG_IO_URING=y -CONFIG_ADVISE_SYSCALLS=y -CONFIG_MEMBARRIER=y -CONFIG_KALLSYMS=y -# CONFIG_KALLSYMS_ALL is not set -CONFIG_KALLSYMS_ABSOLUTE_PERCPU=y -CONFIG_KALLSYMS_BASE_RELATIVE=y -# CONFIG_BPF_SYSCALL is not set -CONFIG_ARCH_WANT_DEFAULT_BPF_JIT=y -# CONFIG_USERFAULTFD is not set -CONFIG_ARCH_HAS_MEMBARRIER_SYNC_CORE=y -CONFIG_RSEQ=y -# CONFIG_EMBEDDED is not set -CONFIG_HAVE_PERF_EVENTS=y - -# -# Kernel Performance Events And Counters -# -CONFIG_PERF_EVENTS=y -# CONFIG_DEBUG_PERF_USE_VMALLOC is not set -# end of Kernel Performance Events And Counters - -CONFIG_VM_EVENT_COUNTERS=y -CONFIG_SLUB_DEBUG=y -# CONFIG_COMPAT_BRK is not set -# CONFIG_SLAB is not set -CONFIG_SLUB=y -CONFIG_SLAB_MERGE_DEFAULT=y -# CONFIG_SLAB_FREELIST_RANDOM is not set -# CONFIG_SLAB_FREELIST_HARDENED is not set -# CONFIG_SHUFFLE_PAGE_ALLOCATOR is not set -CONFIG_SLUB_CPU_PARTIAL=y -CONFIG_SYSTEM_DATA_VERIFICATION=y -CONFIG_PROFILING=y -CONFIG_TRACEPOINTS=y -# end of General setup - -CONFIG_64BIT=y -CONFIG_X86_64=y -CONFIG_X86=y -CONFIG_INSTRUCTION_DECODER=y -CONFIG_OUTPUT_FORMAT="elf64-x86-64" -CONFIG_LOCKDEP_SUPPORT=y -CONFIG_STACKTRACE_SUPPORT=y -CONFIG_MMU=y -CONFIG_ARCH_MMAP_RND_BITS_MIN=28 -CONFIG_ARCH_MMAP_RND_BITS_MAX=32 -CONFIG_ARCH_MMAP_RND_COMPAT_BITS_MIN=8 -CONFIG_ARCH_MMAP_RND_COMPAT_BITS_MAX=16 -CONFIG_GENERIC_ISA_DMA=y -CONFIG_GENERIC_BUG=y -CONFIG_GENERIC_BUG_RELATIVE_POINTERS=y -CONFIG_ARCH_MAY_HAVE_PC_FDC=y -CONFIG_GENERIC_CALIBRATE_DELAY=y -CONFIG_ARCH_HAS_CPU_RELAX=y -CONFIG_ARCH_HAS_CACHE_LINE_SIZE=y -CONFIG_ARCH_HAS_FILTER_PGPROT=y -CONFIG_HAVE_SETUP_PER_CPU_AREA=y -CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK=y -CONFIG_NEED_PER_CPU_PAGE_FIRST_CHUNK=y -CONFIG_ARCH_HIBERNATION_POSSIBLE=y -CONFIG_ARCH_SUSPEND_POSSIBLE=y -CONFIG_ARCH_WANT_GENERAL_HUGETLB=y -CONFIG_ZONE_DMA32=y -CONFIG_AUDIT_ARCH=y -CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y -CONFIG_HAVE_INTEL_TXT=y -CONFIG_X86_64_SMP=y -CONFIG_ARCH_SUPPORTS_UPROBES=y -CONFIG_FIX_EARLYCON_MEM=y -CONFIG_PGTABLE_LEVELS=5 -CONFIG_CC_HAS_SANE_STACKPROTECTOR=y - -# -# Processor type and features -# -CONFIG_ZONE_DMA=y -CONFIG_SMP=y -CONFIG_X86_FEATURE_NAMES=y -CONFIG_X86_MPPARSE=y -# CONFIG_GOLDFISH is not set -CONFIG_RETPOLINE=y -# CONFIG_X86_CPU_RESCTRL is not set -CONFIG_X86_EXTENDED_PLATFORM=y -# CONFIG_X86_VSMP is not set -# CONFIG_X86_GOLDFISH is not set -# CONFIG_X86_INTEL_MID is not set -# CONFIG_X86_INTEL_LPSS is not set -# CONFIG_X86_AMD_PLATFORM_DEVICE is not set -CONFIG_IOSF_MBI=y -# CONFIG_IOSF_MBI_DEBUG is not set -CONFIG_X86_SUPPORTS_MEMORY_FAILURE=y -CONFIG_SCHED_OMIT_FRAME_POINTER=y -# CONFIG_HYPERVISOR_GUEST is not set -# CONFIG_MK8 is not set -# CONFIG_MPSC is not set -# CONFIG_MCORE2 is not set -# CONFIG_MATOM is not set -CONFIG_GENERIC_CPU=y -CONFIG_X86_INTERNODE_CACHE_SHIFT=6 -CONFIG_X86_L1_CACHE_SHIFT=6 -CONFIG_X86_TSC=y -CONFIG_X86_CMPXCHG64=y -CONFIG_X86_CMOV=y -CONFIG_X86_MINIMUM_CPU_FAMILY=64 -CONFIG_X86_DEBUGCTLMSR=y -CONFIG_IA32_FEAT_CTL=y -CONFIG_X86_VMX_FEATURE_NAMES=y -CONFIG_CPU_SUP_INTEL=y -CONFIG_CPU_SUP_AMD=y -CONFIG_CPU_SUP_HYGON=y -CONFIG_CPU_SUP_CENTAUR=y -CONFIG_CPU_SUP_ZHAOXIN=y -CONFIG_HPET_TIMER=y -CONFIG_HPET_EMULATE_RTC=y -CONFIG_DMI=y -# CONFIG_GART_IOMMU is not set -# CONFIG_MAXSMP is not set -CONFIG_NR_CPUS_RANGE_BEGIN=2 -CONFIG_NR_CPUS_RANGE_END=512 -CONFIG_NR_CPUS_DEFAULT=64 -CONFIG_NR_CPUS=64 -CONFIG_SCHED_SMT=y -CONFIG_SCHED_MC=y -CONFIG_SCHED_MC_PRIO=y -CONFIG_X86_LOCAL_APIC=y -CONFIG_X86_IO_APIC=y -CONFIG_X86_REROUTE_FOR_BROKEN_BOOT_IRQS=y -CONFIG_X86_MCE=y -# CONFIG_X86_MCELOG_LEGACY is not set -CONFIG_X86_MCE_INTEL=y -CONFIG_X86_MCE_AMD=y -CONFIG_X86_MCE_THRESHOLD=y -# CONFIG_X86_MCE_INJECT is not set -CONFIG_X86_THERMAL_VECTOR=y - -# -# Performance monitoring -# -CONFIG_PERF_EVENTS_INTEL_UNCORE=y -CONFIG_PERF_EVENTS_INTEL_RAPL=y -CONFIG_PERF_EVENTS_INTEL_CSTATE=y -# CONFIG_PERF_EVENTS_AMD_POWER is not set -# end of Performance monitoring - -CONFIG_X86_16BIT=y -CONFIG_X86_ESPFIX64=y -CONFIG_X86_VSYSCALL_EMULATION=y -CONFIG_X86_IOPL_IOPERM=y -# CONFIG_I8K is not set -CONFIG_MICROCODE=y -CONFIG_MICROCODE_INTEL=y -CONFIG_MICROCODE_AMD=y -# CONFIG_MICROCODE_OLD_INTERFACE is not set -CONFIG_X86_MSR=y -CONFIG_X86_CPUID=y -CONFIG_X86_5LEVEL=y -CONFIG_X86_DIRECT_GBPAGES=y -# CONFIG_X86_CPA_STATISTICS is not set -# CONFIG_AMD_MEM_ENCRYPT is not set -CONFIG_NUMA=y -CONFIG_AMD_NUMA=y -CONFIG_X86_64_ACPI_NUMA=y -# CONFIG_NUMA_EMU is not set -CONFIG_NODES_SHIFT=6 -CONFIG_ARCH_SPARSEMEM_ENABLE=y -CONFIG_ARCH_SPARSEMEM_DEFAULT=y -CONFIG_ARCH_SELECT_MEMORY_MODEL=y -CONFIG_ARCH_PROC_KCORE_TEXT=y -CONFIG_ILLEGAL_POINTER_VALUE=0xdead000000000000 -# CONFIG_X86_PMEM_LEGACY is not set -CONFIG_X86_CHECK_BIOS_CORRUPTION=y -CONFIG_X86_BOOTPARAM_MEMORY_CORRUPTION_CHECK=y -CONFIG_X86_RESERVE_LOW=64 -CONFIG_MTRR=y -# CONFIG_MTRR_SANITIZER is not set -CONFIG_X86_PAT=y -CONFIG_ARCH_USES_PG_UNCACHED=y -CONFIG_ARCH_RANDOM=y -CONFIG_X86_SMAP=y -CONFIG_X86_UMIP=y -CONFIG_X86_INTEL_MEMORY_PROTECTION_KEYS=y -CONFIG_X86_INTEL_TSX_MODE_OFF=y -# CONFIG_X86_INTEL_TSX_MODE_ON is not set -# CONFIG_X86_INTEL_TSX_MODE_AUTO is not set -CONFIG_EFI=y -CONFIG_EFI_STUB=y -CONFIG_EFI_MIXED=y -# CONFIG_HZ_100 is not set -# CONFIG_HZ_250 is not set -# CONFIG_HZ_300 is not set -CONFIG_HZ_1000=y -CONFIG_HZ=1000 -CONFIG_SCHED_HRTICK=y -CONFIG_KEXEC=y -# CONFIG_KEXEC_FILE is not set -CONFIG_CRASH_DUMP=y -# CONFIG_KEXEC_JUMP is not set -CONFIG_PHYSICAL_START=0x1000000 -CONFIG_RELOCATABLE=y -CONFIG_RANDOMIZE_BASE=y -CONFIG_X86_NEED_RELOCS=y -CONFIG_PHYSICAL_ALIGN=0x200000 -CONFIG_DYNAMIC_MEMORY_LAYOUT=y -CONFIG_RANDOMIZE_MEMORY=y -CONFIG_RANDOMIZE_MEMORY_PHYSICAL_PADDING=0x0 -CONFIG_HOTPLUG_CPU=y -# CONFIG_BOOTPARAM_HOTPLUG_CPU0 is not set -# CONFIG_DEBUG_HOTPLUG_CPU0 is not set -# CONFIG_COMPAT_VDSO is not set -# CONFIG_LEGACY_VSYSCALL_EMULATE is not set -CONFIG_LEGACY_VSYSCALL_XONLY=y -# CONFIG_LEGACY_VSYSCALL_NONE is not set -# CONFIG_CMDLINE_BOOL is not set -CONFIG_MODIFY_LDT_SYSCALL=y -CONFIG_HAVE_LIVEPATCH=y -# end of Processor type and features - -CONFIG_ARCH_HAS_ADD_PAGES=y -CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y -CONFIG_USE_PERCPU_NUMA_NODE_ID=y -CONFIG_ARCH_ENABLE_SPLIT_PMD_PTLOCK=y -CONFIG_ARCH_ENABLE_HUGEPAGE_MIGRATION=y - -# -# Power management and ACPI options -# -CONFIG_ARCH_HIBERNATION_HEADER=y -CONFIG_SUSPEND=y -CONFIG_SUSPEND_FREEZER=y -CONFIG_HIBERNATE_CALLBACKS=y -CONFIG_HIBERNATION=y -CONFIG_HIBERNATION_SNAPSHOT_DEV=y -CONFIG_PM_STD_PARTITION="" -CONFIG_PM_SLEEP=y -CONFIG_PM_SLEEP_SMP=y -# CONFIG_PM_AUTOSLEEP is not set -# CONFIG_PM_WAKELOCKS is not set -CONFIG_PM=y -CONFIG_PM_DEBUG=y -# CONFIG_PM_ADVANCED_DEBUG is not set -# CONFIG_PM_TEST_SUSPEND is not set -CONFIG_PM_SLEEP_DEBUG=y -CONFIG_PM_TRACE=y -CONFIG_PM_TRACE_RTC=y -CONFIG_PM_CLK=y -# CONFIG_WQ_POWER_EFFICIENT_DEFAULT is not set -# CONFIG_ENERGY_MODEL is not set -CONFIG_ARCH_SUPPORTS_ACPI=y -CONFIG_ACPI=y -CONFIG_ACPI_LEGACY_TABLES_LOOKUP=y -CONFIG_ARCH_MIGHT_HAVE_ACPI_PDC=y -CONFIG_ACPI_SYSTEM_POWER_STATES_SUPPORT=y -# CONFIG_ACPI_DEBUGGER is not set -CONFIG_ACPI_SPCR_TABLE=y -CONFIG_ACPI_LPIT=y -CONFIG_ACPI_SLEEP=y -CONFIG_ACPI_REV_OVERRIDE_POSSIBLE=y -# CONFIG_ACPI_EC_DEBUGFS is not set -CONFIG_ACPI_AC=y -CONFIG_ACPI_BATTERY=y -CONFIG_ACPI_BUTTON=y -CONFIG_ACPI_VIDEO=y -CONFIG_ACPI_FAN=y -# CONFIG_ACPI_TAD is not set -CONFIG_ACPI_DOCK=y -CONFIG_ACPI_CPU_FREQ_PSS=y -CONFIG_ACPI_PROCESSOR_CSTATE=y -CONFIG_ACPI_PROCESSOR_IDLE=y -CONFIG_ACPI_CPPC_LIB=y -CONFIG_ACPI_PROCESSOR=y -CONFIG_ACPI_HOTPLUG_CPU=y -# CONFIG_ACPI_PROCESSOR_AGGREGATOR is not set -CONFIG_ACPI_THERMAL=y -CONFIG_ARCH_HAS_ACPI_TABLE_UPGRADE=y -CONFIG_ACPI_TABLE_UPGRADE=y -# CONFIG_ACPI_DEBUG is not set -# CONFIG_ACPI_PCI_SLOT is not set -CONFIG_ACPI_CONTAINER=y -CONFIG_ACPI_HOTPLUG_IOAPIC=y -# CONFIG_ACPI_SBS is not set -# CONFIG_ACPI_HED is not set -# CONFIG_ACPI_CUSTOM_METHOD is not set -CONFIG_ACPI_BGRT=y -# CONFIG_ACPI_NFIT is not set -CONFIG_ACPI_NUMA=y -# CONFIG_ACPI_HMAT is not set -CONFIG_HAVE_ACPI_APEI=y -CONFIG_HAVE_ACPI_APEI_NMI=y -# CONFIG_ACPI_APEI is not set -# CONFIG_ACPI_DPTF is not set -# CONFIG_ACPI_CONFIGFS is not set -# CONFIG_PMIC_OPREGION is not set -CONFIG_X86_PM_TIMER=y -# CONFIG_SFI is not set - -# -# CPU Frequency scaling -# -CONFIG_CPU_FREQ=y -CONFIG_CPU_FREQ_GOV_ATTR_SET=y -CONFIG_CPU_FREQ_GOV_COMMON=y -# CONFIG_CPU_FREQ_STAT is not set -# CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE is not set -# CONFIG_CPU_FREQ_DEFAULT_GOV_POWERSAVE is not set -CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE=y -# CONFIG_CPU_FREQ_DEFAULT_GOV_SCHEDUTIL is not set -CONFIG_CPU_FREQ_GOV_PERFORMANCE=y -# CONFIG_CPU_FREQ_GOV_POWERSAVE is not set -CONFIG_CPU_FREQ_GOV_USERSPACE=y -CONFIG_CPU_FREQ_GOV_ONDEMAND=y -# CONFIG_CPU_FREQ_GOV_CONSERVATIVE is not set -CONFIG_CPU_FREQ_GOV_SCHEDUTIL=y - -# -# CPU frequency scaling drivers -# -CONFIG_X86_INTEL_PSTATE=y -# CONFIG_X86_PCC_CPUFREQ is not set -CONFIG_X86_ACPI_CPUFREQ=y -CONFIG_X86_ACPI_CPUFREQ_CPB=y -# CONFIG_X86_POWERNOW_K8 is not set -# CONFIG_X86_AMD_FREQ_SENSITIVITY is not set -# CONFIG_X86_SPEEDSTEP_CENTRINO is not set -# CONFIG_X86_P4_CLOCKMOD is not set - -# -# shared options -# -# end of CPU Frequency scaling - -# -# CPU Idle -# -CONFIG_CPU_IDLE=y -# CONFIG_CPU_IDLE_GOV_LADDER is not set -CONFIG_CPU_IDLE_GOV_MENU=y -# CONFIG_CPU_IDLE_GOV_TEO is not set -# end of CPU Idle - -# CONFIG_INTEL_IDLE is not set -# end of Power management and ACPI options - -# -# Bus options (PCI etc.) -# -CONFIG_PCI_DIRECT=y -CONFIG_PCI_MMCONFIG=y -CONFIG_MMCONF_FAM10H=y -CONFIG_ISA_DMA_API=y -CONFIG_AMD_NB=y -# CONFIG_X86_SYSFB is not set -# end of Bus options (PCI etc.) - -# -# Binary Emulations -# -CONFIG_IA32_EMULATION=y -# CONFIG_X86_X32 is not set -CONFIG_COMPAT_32=y -CONFIG_COMPAT=y -CONFIG_COMPAT_FOR_U64_ALIGNMENT=y -CONFIG_SYSVIPC_COMPAT=y -# end of Binary Emulations - -# -# Firmware Drivers -# -# CONFIG_EDD is not set -CONFIG_FIRMWARE_MEMMAP=y -CONFIG_DMIID=y -# CONFIG_DMI_SYSFS is not set -CONFIG_DMI_SCAN_MACHINE_NON_EFI_FALLBACK=y -# CONFIG_FW_CFG_SYSFS is not set -# CONFIG_GOOGLE_FIRMWARE is not set - -# -# EFI (Extensible Firmware Interface) Support -# -CONFIG_EFI_VARS=y -CONFIG_EFI_ESRT=y -CONFIG_EFI_RUNTIME_MAP=y -# CONFIG_EFI_FAKE_MEMMAP is not set -CONFIG_EFI_RUNTIME_WRAPPERS=y -CONFIG_EFI_GENERIC_STUB_INITRD_CMDLINE_LOADER=y -# CONFIG_EFI_BOOTLOADER_CONTROL is not set -# CONFIG_EFI_CAPSULE_LOADER is not set -# CONFIG_EFI_TEST is not set -# CONFIG_APPLE_PROPERTIES is not set -# CONFIG_RESET_ATTACK_MITIGATION is not set -# CONFIG_EFI_RCI2_TABLE is not set -# CONFIG_EFI_DISABLE_PCI_DMA is not set -# end of EFI (Extensible Firmware Interface) Support - -CONFIG_EFI_EARLYCON=y -CONFIG_EFI_CUSTOM_SSDT_OVERLAYS=y - -# -# Tegra firmware driver -# -# end of Tegra firmware driver -# end of Firmware Drivers - -CONFIG_HAVE_KVM=y -CONFIG_VIRTUALIZATION=y -# CONFIG_KVM is not set -CONFIG_AS_AVX512=y -CONFIG_AS_SHA1_NI=y -CONFIG_AS_SHA256_NI=y -CONFIG_AS_TPAUSE=y - -# -# General architecture-dependent options -# -CONFIG_CRASH_CORE=y -CONFIG_KEXEC_CORE=y -CONFIG_HOTPLUG_SMT=y -CONFIG_GENERIC_ENTRY=y -# CONFIG_OPROFILE is not set -CONFIG_HAVE_OPROFILE=y -CONFIG_OPROFILE_NMI_TIMER=y -CONFIG_KPROBES=y -CONFIG_JUMP_LABEL=y -# CONFIG_STATIC_KEYS_SELFTEST is not set -# CONFIG_STATIC_CALL_SELFTEST is not set -CONFIG_OPTPROBES=y -CONFIG_UPROBES=y -CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS=y -CONFIG_ARCH_USE_BUILTIN_BSWAP=y -CONFIG_KRETPROBES=y -CONFIG_HAVE_IOREMAP_PROT=y -CONFIG_HAVE_KPROBES=y -CONFIG_HAVE_KRETPROBES=y -CONFIG_HAVE_OPTPROBES=y -CONFIG_HAVE_KPROBES_ON_FTRACE=y -CONFIG_HAVE_FUNCTION_ERROR_INJECTION=y -CONFIG_HAVE_NMI=y -CONFIG_HAVE_ARCH_TRACEHOOK=y -CONFIG_HAVE_DMA_CONTIGUOUS=y -CONFIG_GENERIC_SMP_IDLE_THREAD=y -CONFIG_ARCH_HAS_FORTIFY_SOURCE=y -CONFIG_ARCH_HAS_SET_MEMORY=y -CONFIG_ARCH_HAS_SET_DIRECT_MAP=y -CONFIG_HAVE_ARCH_THREAD_STRUCT_WHITELIST=y -CONFIG_ARCH_WANTS_DYNAMIC_TASK_STRUCT=y -CONFIG_HAVE_ASM_MODVERSIONS=y -CONFIG_HAVE_REGS_AND_STACK_ACCESS_API=y -CONFIG_HAVE_RSEQ=y -CONFIG_HAVE_FUNCTION_ARG_ACCESS_API=y -CONFIG_HAVE_HW_BREAKPOINT=y -CONFIG_HAVE_MIXED_BREAKPOINTS_REGS=y -CONFIG_HAVE_USER_RETURN_NOTIFIER=y -CONFIG_HAVE_PERF_EVENTS_NMI=y -CONFIG_HAVE_HARDLOCKUP_DETECTOR_PERF=y -CONFIG_HAVE_PERF_REGS=y -CONFIG_HAVE_PERF_USER_STACK_DUMP=y -CONFIG_HAVE_ARCH_JUMP_LABEL=y -CONFIG_HAVE_ARCH_JUMP_LABEL_RELATIVE=y -CONFIG_ARCH_HAVE_NMI_SAFE_CMPXCHG=y -CONFIG_HAVE_ALIGNED_STRUCT_PAGE=y -CONFIG_HAVE_CMPXCHG_LOCAL=y -CONFIG_HAVE_CMPXCHG_DOUBLE=y -CONFIG_ARCH_WANT_COMPAT_IPC_PARSE_VERSION=y -CONFIG_ARCH_WANT_OLD_COMPAT_IPC=y -CONFIG_HAVE_ARCH_SECCOMP=y -CONFIG_HAVE_ARCH_SECCOMP_FILTER=y -CONFIG_SECCOMP=y -CONFIG_SECCOMP_FILTER=y -CONFIG_HAVE_ARCH_STACKLEAK=y -CONFIG_HAVE_STACKPROTECTOR=y -CONFIG_STACKPROTECTOR=y -CONFIG_STACKPROTECTOR_STRONG=y -CONFIG_HAVE_ARCH_WITHIN_STACK_FRAMES=y -CONFIG_HAVE_CONTEXT_TRACKING=y -CONFIG_HAVE_VIRT_CPU_ACCOUNTING_GEN=y -CONFIG_HAVE_IRQ_TIME_ACCOUNTING=y -CONFIG_HAVE_MOVE_PMD=y -CONFIG_HAVE_ARCH_TRANSPARENT_HUGEPAGE=y -CONFIG_HAVE_ARCH_TRANSPARENT_HUGEPAGE_PUD=y -CONFIG_HAVE_ARCH_HUGE_VMAP=y -CONFIG_ARCH_WANT_HUGE_PMD_SHARE=y -CONFIG_HAVE_ARCH_SOFT_DIRTY=y -CONFIG_HAVE_MOD_ARCH_SPECIFIC=y -CONFIG_MODULES_USE_ELF_RELA=y -CONFIG_ARCH_HAS_ELF_RANDOMIZE=y -CONFIG_HAVE_ARCH_MMAP_RND_BITS=y -CONFIG_HAVE_EXIT_THREAD=y -CONFIG_ARCH_MMAP_RND_BITS=28 -CONFIG_HAVE_ARCH_MMAP_RND_COMPAT_BITS=y -CONFIG_ARCH_MMAP_RND_COMPAT_BITS=8 -CONFIG_HAVE_ARCH_COMPAT_MMAP_BASES=y -CONFIG_HAVE_STACK_VALIDATION=y -CONFIG_HAVE_RELIABLE_STACKTRACE=y -CONFIG_OLD_SIGSUSPEND3=y -CONFIG_COMPAT_OLD_SIGACTION=y -CONFIG_COMPAT_32BIT_TIME=y -CONFIG_HAVE_ARCH_VMAP_STACK=y -CONFIG_VMAP_STACK=y -CONFIG_ARCH_HAS_STRICT_KERNEL_RWX=y -CONFIG_STRICT_KERNEL_RWX=y -CONFIG_ARCH_HAS_STRICT_MODULE_RWX=y -CONFIG_STRICT_MODULE_RWX=y -CONFIG_HAVE_ARCH_PREL32_RELOCATIONS=y -CONFIG_ARCH_USE_MEMREMAP_PROT=y -# CONFIG_LOCK_EVENT_COUNTS is not set -CONFIG_ARCH_HAS_MEM_ENCRYPT=y -CONFIG_HAVE_STATIC_CALL=y -CONFIG_HAVE_STATIC_CALL_INLINE=y -CONFIG_ARCH_WANT_LD_ORPHAN_WARN=y - -# -# GCOV-based kernel profiling -# -# CONFIG_GCOV_KERNEL is not set -CONFIG_ARCH_HAS_GCOV_PROFILE_ALL=y -# end of GCOV-based kernel profiling - -CONFIG_HAVE_GCC_PLUGINS=y -# end of General architecture-dependent options - -CONFIG_RT_MUTEXES=y -CONFIG_BASE_SMALL=0 -CONFIG_MODULES=y -# CONFIG_MODULE_FORCE_LOAD is not set -CONFIG_MODULE_UNLOAD=y -CONFIG_MODULE_FORCE_UNLOAD=y -# CONFIG_MODVERSIONS is not set -# CONFIG_MODULE_SRCVERSION_ALL is not set -# CONFIG_MODULE_SIG is not set -# CONFIG_MODULE_COMPRESS is not set -# CONFIG_MODULE_ALLOW_MISSING_NAMESPACE_IMPORTS is not set -# CONFIG_UNUSED_SYMBOLS is not set -# CONFIG_TRIM_UNUSED_KSYMS is not set -CONFIG_MODULES_TREE_LOOKUP=y -CONFIG_BLOCK=y -CONFIG_BLK_SCSI_REQUEST=y -CONFIG_BLK_DEV_BSG=y -# CONFIG_BLK_DEV_BSGLIB is not set -# CONFIG_BLK_DEV_INTEGRITY is not set -# CONFIG_BLK_DEV_ZONED is not set -# CONFIG_BLK_CMDLINE_PARSER is not set -# CONFIG_BLK_WBT is not set -CONFIG_BLK_DEBUG_FS=y -# CONFIG_BLK_SED_OPAL is not set -# CONFIG_BLK_INLINE_ENCRYPTION is not set - -# -# Partition Types -# -# CONFIG_PARTITION_ADVANCED is not set -CONFIG_MSDOS_PARTITION=y -CONFIG_EFI_PARTITION=y -# end of Partition Types - -CONFIG_BLOCK_COMPAT=y -CONFIG_BLK_MQ_PCI=y -CONFIG_BLK_PM=y - -# -# IO Schedulers -# -CONFIG_MQ_IOSCHED_DEADLINE=y -CONFIG_MQ_IOSCHED_KYBER=y -# CONFIG_IOSCHED_BFQ is not set -# end of IO Schedulers - -CONFIG_ASN1=y -CONFIG_INLINE_SPIN_UNLOCK_IRQ=y -CONFIG_INLINE_READ_UNLOCK=y -CONFIG_INLINE_READ_UNLOCK_IRQ=y -CONFIG_INLINE_WRITE_UNLOCK=y -CONFIG_INLINE_WRITE_UNLOCK_IRQ=y -CONFIG_ARCH_SUPPORTS_ATOMIC_RMW=y -CONFIG_MUTEX_SPIN_ON_OWNER=y -CONFIG_RWSEM_SPIN_ON_OWNER=y -CONFIG_LOCK_SPIN_ON_OWNER=y -CONFIG_ARCH_USE_QUEUED_SPINLOCKS=y -CONFIG_QUEUED_SPINLOCKS=y -CONFIG_ARCH_USE_QUEUED_RWLOCKS=y -CONFIG_QUEUED_RWLOCKS=y -CONFIG_ARCH_HAS_NON_OVERLAPPING_ADDRESS_SPACE=y -CONFIG_ARCH_HAS_SYNC_CORE_BEFORE_USERMODE=y -CONFIG_ARCH_HAS_SYSCALL_WRAPPER=y -CONFIG_FREEZER=y - -# -# Executable file formats -# -CONFIG_BINFMT_ELF=y -CONFIG_COMPAT_BINFMT_ELF=y -CONFIG_ELFCORE=y -CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS=y -CONFIG_BINFMT_SCRIPT=y -CONFIG_BINFMT_MISC=y -CONFIG_COREDUMP=y -# end of Executable file formats - -# -# Memory Management options -# -CONFIG_SELECT_MEMORY_MODEL=y -CONFIG_SPARSEMEM_MANUAL=y -CONFIG_SPARSEMEM=y -CONFIG_NEED_MULTIPLE_NODES=y -CONFIG_SPARSEMEM_EXTREME=y -CONFIG_SPARSEMEM_VMEMMAP_ENABLE=y -CONFIG_SPARSEMEM_VMEMMAP=y -CONFIG_HAVE_FAST_GUP=y -# CONFIG_MEMORY_HOTPLUG is not set -CONFIG_SPLIT_PTLOCK_CPUS=4 -CONFIG_COMPACTION=y -# CONFIG_PAGE_REPORTING is not set -CONFIG_MIGRATION=y -CONFIG_PHYS_ADDR_T_64BIT=y -CONFIG_BOUNCE=y -CONFIG_VIRT_TO_BUS=y -CONFIG_MMU_NOTIFIER=y -# CONFIG_KSM is not set -CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 -CONFIG_ARCH_SUPPORTS_MEMORY_FAILURE=y -# CONFIG_MEMORY_FAILURE is not set -# CONFIG_TRANSPARENT_HUGEPAGE is not set -CONFIG_ARCH_WANTS_THP_SWAP=y -# CONFIG_CLEANCACHE is not set -# CONFIG_FRONTSWAP is not set -# CONFIG_CMA is not set -# CONFIG_ZPOOL is not set -# CONFIG_ZBUD is not set -# CONFIG_ZSMALLOC is not set -CONFIG_GENERIC_EARLY_IOREMAP=y -# CONFIG_DEFERRED_STRUCT_PAGE_INIT is not set -# CONFIG_IDLE_PAGE_TRACKING is not set -CONFIG_ARCH_HAS_PTE_DEVMAP=y -CONFIG_VMAP_PFN=y -CONFIG_ARCH_USES_HIGH_VMA_FLAGS=y -CONFIG_ARCH_HAS_PKEYS=y -# CONFIG_PERCPU_STATS is not set -# CONFIG_GUP_BENCHMARK is not set -CONFIG_ARCH_HAS_PTE_SPECIAL=y -# end of Memory Management options - -CONFIG_NET=y -CONFIG_NET_INGRESS=y -CONFIG_SKB_EXTENSIONS=y - -# -# Networking options -# -CONFIG_PACKET=y -# CONFIG_PACKET_DIAG is not set -CONFIG_UNIX=y -CONFIG_UNIX_SCM=y -# CONFIG_UNIX_DIAG is not set -# CONFIG_TLS is not set -CONFIG_XFRM=y -CONFIG_XFRM_ALGO=y -CONFIG_XFRM_USER=y -# CONFIG_XFRM_USER_COMPAT is not set -# CONFIG_XFRM_INTERFACE is not set -# CONFIG_XFRM_SUB_POLICY is not set -# CONFIG_XFRM_MIGRATE is not set -# CONFIG_XFRM_STATISTICS is not set -CONFIG_XFRM_AH=y -CONFIG_XFRM_ESP=y -# CONFIG_NET_KEY is not set -CONFIG_INET=y -CONFIG_IP_MULTICAST=y -CONFIG_IP_ADVANCED_ROUTER=y -# CONFIG_IP_FIB_TRIE_STATS is not set -CONFIG_IP_MULTIPLE_TABLES=y -CONFIG_IP_ROUTE_MULTIPATH=y -CONFIG_IP_ROUTE_VERBOSE=y -CONFIG_IP_PNP=y -CONFIG_IP_PNP_DHCP=y -CONFIG_IP_PNP_BOOTP=y -CONFIG_IP_PNP_RARP=y -# CONFIG_NET_IPIP is not set -# CONFIG_NET_IPGRE_DEMUX is not set -CONFIG_NET_IP_TUNNEL=y -CONFIG_IP_MROUTE_COMMON=y -CONFIG_IP_MROUTE=y -# CONFIG_IP_MROUTE_MULTIPLE_TABLES is not set -CONFIG_IP_PIMSM_V1=y -CONFIG_IP_PIMSM_V2=y -CONFIG_SYN_COOKIES=y -# CONFIG_NET_IPVTI is not set -# CONFIG_NET_FOU is not set -# CONFIG_NET_FOU_IP_TUNNELS is not set -# CONFIG_INET_AH is not set -# CONFIG_INET_ESP is not set -# CONFIG_INET_IPCOMP is not set -CONFIG_INET_TUNNEL=y -# CONFIG_INET_DIAG is not set -CONFIG_TCP_CONG_ADVANCED=y -# CONFIG_TCP_CONG_BIC is not set -CONFIG_TCP_CONG_CUBIC=y -# CONFIG_TCP_CONG_WESTWOOD is not set -# CONFIG_TCP_CONG_HTCP is not set -# CONFIG_TCP_CONG_HSTCP is not set -# CONFIG_TCP_CONG_HYBLA is not set -# CONFIG_TCP_CONG_VEGAS is not set -# CONFIG_TCP_CONG_NV is not set -# CONFIG_TCP_CONG_SCALABLE is not set -# CONFIG_TCP_CONG_LP is not set -# CONFIG_TCP_CONG_VENO is not set -# CONFIG_TCP_CONG_YEAH is not set -# CONFIG_TCP_CONG_ILLINOIS is not set -# CONFIG_TCP_CONG_DCTCP is not set -# CONFIG_TCP_CONG_CDG is not set -# CONFIG_TCP_CONG_BBR is not set -CONFIG_DEFAULT_CUBIC=y -# CONFIG_DEFAULT_RENO is not set -CONFIG_DEFAULT_TCP_CONG="cubic" -CONFIG_TCP_MD5SIG=y -CONFIG_IPV6=y -# CONFIG_IPV6_ROUTER_PREF is not set -# CONFIG_IPV6_OPTIMISTIC_DAD is not set -CONFIG_INET6_AH=y -CONFIG_INET6_ESP=y -# CONFIG_INET6_ESP_OFFLOAD is not set -# CONFIG_INET6_ESPINTCP is not set -# CONFIG_INET6_IPCOMP is not set -# CONFIG_IPV6_MIP6 is not set -# CONFIG_IPV6_ILA is not set -# CONFIG_IPV6_VTI is not set -CONFIG_IPV6_SIT=y -# CONFIG_IPV6_SIT_6RD is not set -CONFIG_IPV6_NDISC_NODETYPE=y -# CONFIG_IPV6_TUNNEL is not set -# CONFIG_IPV6_MULTIPLE_TABLES is not set -# CONFIG_IPV6_MROUTE is not set -# CONFIG_IPV6_SEG6_LWTUNNEL is not set -# CONFIG_IPV6_SEG6_HMAC is not set -# CONFIG_IPV6_RPL_LWTUNNEL is not set -CONFIG_NETLABEL=y -# CONFIG_MPTCP is not set -CONFIG_NETWORK_SECMARK=y -CONFIG_NET_PTP_CLASSIFY=y -# CONFIG_NETWORK_PHY_TIMESTAMPING is not set -CONFIG_NETFILTER=y -# CONFIG_NETFILTER_ADVANCED is not set - -# -# Core Netfilter Configuration -# -CONFIG_NETFILTER_INGRESS=y -CONFIG_NETFILTER_NETLINK=y -CONFIG_NETFILTER_NETLINK_LOG=y -CONFIG_NF_CONNTRACK=y -CONFIG_NF_LOG_COMMON=m -# CONFIG_NF_LOG_NETDEV is not set -CONFIG_NF_CONNTRACK_SECMARK=y -CONFIG_NF_CONNTRACK_PROCFS=y -# CONFIG_NF_CONNTRACK_LABELS is not set -CONFIG_NF_CONNTRACK_FTP=y -CONFIG_NF_CONNTRACK_IRC=y -# CONFIG_NF_CONNTRACK_NETBIOS_NS is not set -CONFIG_NF_CONNTRACK_SIP=y -CONFIG_NF_CT_NETLINK=y -# CONFIG_NETFILTER_NETLINK_GLUE_CT is not set -CONFIG_NF_NAT=y -CONFIG_NF_NAT_FTP=y -CONFIG_NF_NAT_IRC=y -CONFIG_NF_NAT_SIP=y -CONFIG_NF_NAT_MASQUERADE=y -# CONFIG_NF_TABLES is not set -CONFIG_NETFILTER_XTABLES=y - -# -# Xtables combined modules -# -CONFIG_NETFILTER_XT_MARK=m - -# -# Xtables targets -# -CONFIG_NETFILTER_XT_TARGET_CONNSECMARK=y -CONFIG_NETFILTER_XT_TARGET_LOG=m -CONFIG_NETFILTER_XT_NAT=m -# CONFIG_NETFILTER_XT_TARGET_NETMAP is not set -CONFIG_NETFILTER_XT_TARGET_NFLOG=y -# CONFIG_NETFILTER_XT_TARGET_REDIRECT is not set -CONFIG_NETFILTER_XT_TARGET_MASQUERADE=m -CONFIG_NETFILTER_XT_TARGET_SECMARK=y -CONFIG_NETFILTER_XT_TARGET_TCPMSS=y - -# -# Xtables matches -# -CONFIG_NETFILTER_XT_MATCH_ADDRTYPE=m -CONFIG_NETFILTER_XT_MATCH_CONNTRACK=y -CONFIG_NETFILTER_XT_MATCH_POLICY=y -CONFIG_NETFILTER_XT_MATCH_STATE=y -# end of Core Netfilter Configuration - -# CONFIG_IP_SET is not set -# CONFIG_IP_VS is not set - -# -# IP: Netfilter Configuration -# -CONFIG_NF_DEFRAG_IPV4=y -# CONFIG_NF_SOCKET_IPV4 is not set -# CONFIG_NF_TPROXY_IPV4 is not set -# CONFIG_NF_DUP_IPV4 is not set -CONFIG_NF_LOG_ARP=m -CONFIG_NF_LOG_IPV4=m -CONFIG_NF_REJECT_IPV4=y -CONFIG_IP_NF_IPTABLES=y -CONFIG_IP_NF_FILTER=y -CONFIG_IP_NF_TARGET_REJECT=y -CONFIG_IP_NF_NAT=m -CONFIG_IP_NF_TARGET_MASQUERADE=m -CONFIG_IP_NF_MANGLE=y -# CONFIG_IP_NF_RAW is not set -# end of IP: Netfilter Configuration - -# -# IPv6: Netfilter Configuration -# -# CONFIG_NF_SOCKET_IPV6 is not set -# CONFIG_NF_TPROXY_IPV6 is not set -# CONFIG_NF_DUP_IPV6 is not set -CONFIG_NF_REJECT_IPV6=y -CONFIG_NF_LOG_IPV6=m -CONFIG_IP6_NF_IPTABLES=y -CONFIG_IP6_NF_MATCH_IPV6HEADER=y -CONFIG_IP6_NF_FILTER=y -CONFIG_IP6_NF_TARGET_REJECT=y -CONFIG_IP6_NF_MANGLE=y -# CONFIG_IP6_NF_RAW is not set -# end of IPv6: Netfilter Configuration - -CONFIG_NF_DEFRAG_IPV6=y -# CONFIG_NF_CONNTRACK_BRIDGE is not set -# CONFIG_BPFILTER is not set -# CONFIG_IP_DCCP is not set -# CONFIG_IP_SCTP is not set -# CONFIG_RDS is not set -# CONFIG_TIPC is not set -# CONFIG_ATM is not set -# CONFIG_L2TP is not set -# CONFIG_BRIDGE is not set -CONFIG_HAVE_NET_DSA=y -# CONFIG_NET_DSA is not set -# CONFIG_VLAN_8021Q is not set -# CONFIG_DECNET is not set -# CONFIG_LLC2 is not set -# CONFIG_ATALK is not set -# CONFIG_X25 is not set -# CONFIG_LAPB is not set -# CONFIG_PHONET is not set -# CONFIG_6LOWPAN is not set -# CONFIG_IEEE802154 is not set -CONFIG_NET_SCHED=y - -# -# Queueing/Scheduling -# -# CONFIG_NET_SCH_CBQ is not set -# CONFIG_NET_SCH_HTB is not set -# CONFIG_NET_SCH_HFSC is not set -# CONFIG_NET_SCH_PRIO is not set -# CONFIG_NET_SCH_MULTIQ is not set -# CONFIG_NET_SCH_RED is not set -# CONFIG_NET_SCH_SFB is not set -# CONFIG_NET_SCH_SFQ is not set -# CONFIG_NET_SCH_TEQL is not set -# CONFIG_NET_SCH_TBF is not set -# CONFIG_NET_SCH_CBS is not set -# CONFIG_NET_SCH_ETF is not set -# CONFIG_NET_SCH_TAPRIO is not set -# CONFIG_NET_SCH_GRED is not set -# CONFIG_NET_SCH_DSMARK is not set -# CONFIG_NET_SCH_NETEM is not set -# CONFIG_NET_SCH_DRR is not set -# CONFIG_NET_SCH_MQPRIO is not set -# CONFIG_NET_SCH_SKBPRIO is not set -# CONFIG_NET_SCH_CHOKE is not set -# CONFIG_NET_SCH_QFQ is not set -# CONFIG_NET_SCH_CODEL is not set -# CONFIG_NET_SCH_FQ_CODEL is not set -# CONFIG_NET_SCH_CAKE is not set -# CONFIG_NET_SCH_FQ is not set -# CONFIG_NET_SCH_HHF is not set -# CONFIG_NET_SCH_PIE is not set -# CONFIG_NET_SCH_INGRESS is not set -# CONFIG_NET_SCH_PLUG is not set -# CONFIG_NET_SCH_ETS is not set -# CONFIG_NET_SCH_DEFAULT is not set - -# -# Classification -# -CONFIG_NET_CLS=y -# CONFIG_NET_CLS_BASIC is not set -# CONFIG_NET_CLS_TCINDEX is not set -# CONFIG_NET_CLS_ROUTE4 is not set -# CONFIG_NET_CLS_FW is not set -# CONFIG_NET_CLS_U32 is not set -# CONFIG_NET_CLS_RSVP is not set -# CONFIG_NET_CLS_RSVP6 is not set -# CONFIG_NET_CLS_FLOW is not set -# CONFIG_NET_CLS_CGROUP is not set -# CONFIG_NET_CLS_BPF is not set -# CONFIG_NET_CLS_FLOWER is not set -# CONFIG_NET_CLS_MATCHALL is not set -CONFIG_NET_EMATCH=y -CONFIG_NET_EMATCH_STACK=32 -# CONFIG_NET_EMATCH_CMP is not set -# CONFIG_NET_EMATCH_NBYTE is not set -# CONFIG_NET_EMATCH_U32 is not set -# CONFIG_NET_EMATCH_META is not set -# CONFIG_NET_EMATCH_TEXT is not set -# CONFIG_NET_EMATCH_IPT is not set -CONFIG_NET_CLS_ACT=y -# CONFIG_NET_ACT_POLICE is not set -# CONFIG_NET_ACT_GACT is not set -# CONFIG_NET_ACT_MIRRED is not set -# CONFIG_NET_ACT_SAMPLE is not set -# CONFIG_NET_ACT_IPT is not set -# CONFIG_NET_ACT_NAT is not set -# CONFIG_NET_ACT_PEDIT is not set -# CONFIG_NET_ACT_SIMP is not set -# CONFIG_NET_ACT_SKBEDIT is not set -# CONFIG_NET_ACT_CSUM is not set -# CONFIG_NET_ACT_MPLS is not set -# CONFIG_NET_ACT_VLAN is not set -# CONFIG_NET_ACT_BPF is not set -# CONFIG_NET_ACT_SKBMOD is not set -# CONFIG_NET_ACT_IFE is not set -# CONFIG_NET_ACT_TUNNEL_KEY is not set -# CONFIG_NET_ACT_GATE is not set -# CONFIG_NET_TC_SKB_EXT is not set -CONFIG_NET_SCH_FIFO=y -# CONFIG_DCB is not set -CONFIG_DNS_RESOLVER=y -# CONFIG_BATMAN_ADV is not set -# CONFIG_OPENVSWITCH is not set -# CONFIG_VSOCKETS is not set -# CONFIG_NETLINK_DIAG is not set -# CONFIG_MPLS is not set -# CONFIG_NET_NSH is not set -# CONFIG_HSR is not set -# CONFIG_NET_SWITCHDEV is not set -# CONFIG_NET_L3_MASTER_DEV is not set -# CONFIG_QRTR is not set -# CONFIG_NET_NCSI is not set -CONFIG_RPS=y -CONFIG_RFS_ACCEL=y -CONFIG_XPS=y -# CONFIG_CGROUP_NET_PRIO is not set -# CONFIG_CGROUP_NET_CLASSID is not set -CONFIG_NET_RX_BUSY_POLL=y -CONFIG_BQL=y -# CONFIG_BPF_JIT is not set -CONFIG_NET_FLOW_LIMIT=y - -# -# Network testing -# -# CONFIG_NET_PKTGEN is not set -# CONFIG_NET_DROP_MONITOR is not set -# end of Network testing -# end of Networking options - -# CONFIG_HAMRADIO is not set -# CONFIG_CAN is not set -# CONFIG_BT is not set -# CONFIG_AF_RXRPC is not set -# CONFIG_AF_KCM is not set -CONFIG_FIB_RULES=y -CONFIG_WIRELESS=y -CONFIG_CFG80211=y -# CONFIG_NL80211_TESTMODE is not set -# CONFIG_CFG80211_DEVELOPER_WARNINGS is not set -CONFIG_CFG80211_REQUIRE_SIGNED_REGDB=y -CONFIG_CFG80211_USE_KERNEL_REGDB_KEYS=y -CONFIG_CFG80211_DEFAULT_PS=y -# CONFIG_CFG80211_DEBUGFS is not set -CONFIG_CFG80211_CRDA_SUPPORT=y -# CONFIG_CFG80211_WEXT is not set -CONFIG_MAC80211=y -CONFIG_MAC80211_HAS_RC=y -CONFIG_MAC80211_RC_MINSTREL=y -CONFIG_MAC80211_RC_DEFAULT_MINSTREL=y -CONFIG_MAC80211_RC_DEFAULT="minstrel_ht" -# CONFIG_MAC80211_MESH is not set -CONFIG_MAC80211_LEDS=y -# CONFIG_MAC80211_DEBUGFS is not set -# CONFIG_MAC80211_MESSAGE_TRACING is not set -# CONFIG_MAC80211_DEBUG_MENU is not set -CONFIG_MAC80211_STA_HASH_MAX_SIZE=0 -# CONFIG_WIMAX is not set -CONFIG_RFKILL=y -CONFIG_RFKILL_LEDS=y -CONFIG_RFKILL_INPUT=y -# CONFIG_NET_9P is not set -# CONFIG_CAIF is not set -# CONFIG_CEPH_LIB is not set -# CONFIG_NFC is not set -# CONFIG_PSAMPLE is not set -# CONFIG_NET_IFE is not set -# CONFIG_LWTUNNEL is not set -CONFIG_DST_CACHE=y -CONFIG_GRO_CELLS=y -# CONFIG_FAILOVER is not set -CONFIG_ETHTOOL_NETLINK=y -CONFIG_HAVE_EBPF_JIT=y - -# -# Device Drivers -# -CONFIG_HAVE_EISA=y -# CONFIG_EISA is not set -CONFIG_HAVE_PCI=y -CONFIG_PCI=y -CONFIG_PCI_DOMAINS=y -CONFIG_PCIEPORTBUS=y -# CONFIG_HOTPLUG_PCI_PCIE is not set -# CONFIG_PCIEAER is not set -CONFIG_PCIEASPM=y -CONFIG_PCIEASPM_DEFAULT=y -# CONFIG_PCIEASPM_POWERSAVE is not set -# CONFIG_PCIEASPM_POWER_SUPERSAVE is not set -# CONFIG_PCIEASPM_PERFORMANCE is not set -CONFIG_PCIE_PME=y -# CONFIG_PCIE_PTM is not set -# CONFIG_PCIE_BW is not set -CONFIG_PCI_MSI=y -CONFIG_PCI_MSI_IRQ_DOMAIN=y -CONFIG_PCI_QUIRKS=y -# CONFIG_PCI_DEBUG is not set -# CONFIG_PCI_STUB is not set -CONFIG_PCI_ATS=y -CONFIG_PCI_LOCKLESS_CONFIG=y -# CONFIG_PCI_IOV is not set -CONFIG_PCI_PRI=y -CONFIG_PCI_PASID=y -CONFIG_PCI_LABEL=y -CONFIG_HOTPLUG_PCI=y -# CONFIG_HOTPLUG_PCI_ACPI is not set -# CONFIG_HOTPLUG_PCI_CPCI is not set -# CONFIG_HOTPLUG_PCI_SHPC is not set - -# -# PCI controller drivers -# -# CONFIG_VMD is not set - -# -# DesignWare PCI Core Support -# -# CONFIG_PCIE_DW_PLAT_HOST is not set -# CONFIG_PCI_MESON is not set -# end of DesignWare PCI Core Support - -# -# Mobiveil PCIe Core Support -# -# end of Mobiveil PCIe Core Support - -# -# Cadence PCIe controllers support -# -# end of Cadence PCIe controllers support -# end of PCI controller drivers - -# -# PCI Endpoint -# -# CONFIG_PCI_ENDPOINT is not set -# end of PCI Endpoint - -# -# PCI switch controller drivers -# -# CONFIG_PCI_SW_SWITCHTEC is not set -# end of PCI switch controller drivers - -CONFIG_PCCARD=y -CONFIG_PCMCIA=y -CONFIG_PCMCIA_LOAD_CIS=y -CONFIG_CARDBUS=y - -# -# PC-card bridges -# -CONFIG_YENTA=y -CONFIG_YENTA_O2=y -CONFIG_YENTA_RICOH=y -CONFIG_YENTA_TI=y -CONFIG_YENTA_ENE_TUNE=y -CONFIG_YENTA_TOSHIBA=y -# CONFIG_PD6729 is not set -# CONFIG_I82092 is not set -CONFIG_PCCARD_NONSTATIC=y -# CONFIG_RAPIDIO is not set - -# -# Generic Driver Options -# -# CONFIG_UEVENT_HELPER is not set -CONFIG_DEVTMPFS=y -CONFIG_DEVTMPFS_MOUNT=y -CONFIG_STANDALONE=y -CONFIG_PREVENT_FIRMWARE_BUILD=y - -# -# Firmware loader -# -CONFIG_FW_LOADER=y -CONFIG_EXTRA_FIRMWARE="" -# CONFIG_FW_LOADER_USER_HELPER is not set -# CONFIG_FW_LOADER_COMPRESS is not set -CONFIG_FW_CACHE=y -# end of Firmware loader - -CONFIG_ALLOW_DEV_COREDUMP=y -# CONFIG_DEBUG_DRIVER is not set -CONFIG_DEBUG_DEVRES=y -# CONFIG_DEBUG_TEST_DRIVER_REMOVE is not set -# CONFIG_TEST_ASYNC_DRIVER_PROBE is not set -CONFIG_GENERIC_CPU_AUTOPROBE=y -CONFIG_GENERIC_CPU_VULNERABILITIES=y -CONFIG_REGMAP=y -CONFIG_DMA_SHARED_BUFFER=y -# CONFIG_DMA_FENCE_TRACE is not set -# end of Generic Driver Options - -# -# Bus devices -# -# CONFIG_MHI_BUS is not set -# end of Bus devices - -CONFIG_CONNECTOR=y -CONFIG_PROC_EVENTS=y -# CONFIG_GNSS is not set -# CONFIG_MTD is not set -# CONFIG_OF is not set -CONFIG_ARCH_MIGHT_HAVE_PC_PARPORT=y -# CONFIG_PARPORT is not set -CONFIG_PNP=y -CONFIG_PNP_DEBUG_MESSAGES=y - -# -# Protocols -# -CONFIG_PNPACPI=y -CONFIG_BLK_DEV=y -# CONFIG_BLK_DEV_NULL_BLK is not set -# CONFIG_BLK_DEV_FD is not set -CONFIG_CDROM=y -# CONFIG_BLK_DEV_PCIESSD_MTIP32XX is not set -# CONFIG_BLK_DEV_UMEM is not set -CONFIG_BLK_DEV_LOOP=y -CONFIG_BLK_DEV_LOOP_MIN_COUNT=8 -# CONFIG_BLK_DEV_CRYPTOLOOP is not set -# CONFIG_BLK_DEV_DRBD is not set -# CONFIG_BLK_DEV_NBD is not set -# CONFIG_BLK_DEV_SKD is not set -# CONFIG_BLK_DEV_SX8 is not set -# CONFIG_BLK_DEV_RAM is not set -# CONFIG_CDROM_PKTCDVD is not set -# CONFIG_ATA_OVER_ETH is not set -# CONFIG_BLK_DEV_RBD is not set -# CONFIG_BLK_DEV_RSXX is not set - -# -# NVME Support -# -# CONFIG_BLK_DEV_NVME is not set -# CONFIG_NVME_FC is not set -# end of NVME Support - -# -# Misc devices -# -# CONFIG_AD525X_DPOT is not set -# CONFIG_DUMMY_IRQ is not set -# CONFIG_IBM_ASM is not set -# CONFIG_PHANTOM is not set -# CONFIG_TIFM_CORE is not set -# CONFIG_ICS932S401 is not set -# CONFIG_ENCLOSURE_SERVICES is not set -# CONFIG_HP_ILO is not set -# CONFIG_APDS9802ALS is not set -# CONFIG_ISL29003 is not set -# CONFIG_ISL29020 is not set -# CONFIG_SENSORS_TSL2550 is not set -# CONFIG_SENSORS_BH1770 is not set -# CONFIG_SENSORS_APDS990X is not set -# CONFIG_HMC6352 is not set -# CONFIG_DS1682 is not set -# CONFIG_SRAM is not set -# CONFIG_PCI_ENDPOINT_TEST is not set -# CONFIG_XILINX_SDFEC is not set -# CONFIG_PVPANIC is not set -# CONFIG_C2PORT is not set - -# -# EEPROM support -# -# CONFIG_EEPROM_AT24 is not set -# CONFIG_EEPROM_LEGACY is not set -# CONFIG_EEPROM_MAX6875 is not set -# CONFIG_EEPROM_93CX6 is not set -# CONFIG_EEPROM_IDT_89HPESX is not set -# CONFIG_EEPROM_EE1004 is not set -# end of EEPROM support - -# CONFIG_CB710_CORE is not set - -# -# Texas Instruments shared transport line discipline -# -# end of Texas Instruments shared transport line discipline - -# CONFIG_SENSORS_LIS3_I2C is not set -# CONFIG_ALTERA_STAPL is not set -# CONFIG_INTEL_MEI is not set -# CONFIG_INTEL_MEI_ME is not set -# CONFIG_INTEL_MEI_TXE is not set -# CONFIG_INTEL_MEI_HDCP is not set -# CONFIG_VMWARE_VMCI is not set -# CONFIG_GENWQE is not set -# CONFIG_ECHO is not set -# CONFIG_MISC_ALCOR_PCI is not set -# CONFIG_MISC_RTSX_PCI is not set -# CONFIG_MISC_RTSX_USB is not set -# CONFIG_HABANA_AI is not set -# CONFIG_UACCE is not set -# end of Misc devices - -CONFIG_HAVE_IDE=y -# CONFIG_IDE is not set - -# -# SCSI device support -# -CONFIG_SCSI_MOD=y -# CONFIG_RAID_ATTRS is not set -CONFIG_SCSI=y -CONFIG_SCSI_DMA=y -CONFIG_SCSI_PROC_FS=y - -# -# SCSI support type (disk, tape, CD-ROM) -# -CONFIG_BLK_DEV_SD=y -# CONFIG_CHR_DEV_ST is not set -CONFIG_BLK_DEV_SR=y -CONFIG_CHR_DEV_SG=y -# CONFIG_CHR_DEV_SCH is not set -CONFIG_SCSI_CONSTANTS=y -# CONFIG_SCSI_LOGGING is not set -# CONFIG_SCSI_SCAN_ASYNC is not set - -# -# SCSI Transports -# -CONFIG_SCSI_SPI_ATTRS=y -# CONFIG_SCSI_FC_ATTRS is not set -# CONFIG_SCSI_ISCSI_ATTRS is not set -# CONFIG_SCSI_SAS_ATTRS is not set -# CONFIG_SCSI_SAS_LIBSAS is not set -# CONFIG_SCSI_SRP_ATTRS is not set -# end of SCSI Transports - -# CONFIG_SCSI_LOWLEVEL is not set -# CONFIG_SCSI_DH is not set -# end of SCSI device support - -CONFIG_ATA=y -CONFIG_SATA_HOST=y -CONFIG_PATA_TIMINGS=y -CONFIG_ATA_VERBOSE_ERROR=y -CONFIG_ATA_FORCE=y -CONFIG_ATA_ACPI=y -# CONFIG_SATA_ZPODD is not set -CONFIG_SATA_PMP=y - -# -# Controllers with non-SFF native interface -# -CONFIG_SATA_AHCI=y -CONFIG_SATA_MOBILE_LPM_POLICY=0 -# CONFIG_SATA_AHCI_PLATFORM is not set -# CONFIG_SATA_INIC162X is not set -# CONFIG_SATA_ACARD_AHCI is not set -# CONFIG_SATA_SIL24 is not set -CONFIG_ATA_SFF=y - -# -# SFF controllers with custom DMA interface -# -# CONFIG_PDC_ADMA is not set -# CONFIG_SATA_QSTOR is not set -# CONFIG_SATA_SX4 is not set -CONFIG_ATA_BMDMA=y - -# -# SATA SFF controllers with BMDMA -# -CONFIG_ATA_PIIX=y -# CONFIG_SATA_DWC is not set -# CONFIG_SATA_MV is not set -# CONFIG_SATA_NV is not set -# CONFIG_SATA_PROMISE is not set -# CONFIG_SATA_SIL is not set -# CONFIG_SATA_SIS is not set -# CONFIG_SATA_SVW is not set -# CONFIG_SATA_ULI is not set -# CONFIG_SATA_VIA is not set -# CONFIG_SATA_VITESSE is not set - -# -# PATA SFF controllers with BMDMA -# -# CONFIG_PATA_ALI is not set -CONFIG_PATA_AMD=y -# CONFIG_PATA_ARTOP is not set -# CONFIG_PATA_ATIIXP is not set -# CONFIG_PATA_ATP867X is not set -# CONFIG_PATA_CMD64X is not set -# CONFIG_PATA_CYPRESS is not set -# CONFIG_PATA_EFAR is not set -# CONFIG_PATA_HPT366 is not set -# CONFIG_PATA_HPT37X is not set -# CONFIG_PATA_HPT3X2N is not set -# CONFIG_PATA_HPT3X3 is not set -# CONFIG_PATA_IT8213 is not set -# CONFIG_PATA_IT821X is not set -# CONFIG_PATA_JMICRON is not set -# CONFIG_PATA_MARVELL is not set -# CONFIG_PATA_NETCELL is not set -# CONFIG_PATA_NINJA32 is not set -# CONFIG_PATA_NS87415 is not set -CONFIG_PATA_OLDPIIX=y -# CONFIG_PATA_OPTIDMA is not set -# CONFIG_PATA_PDC2027X is not set -# CONFIG_PATA_PDC_OLD is not set -# CONFIG_PATA_RADISYS is not set -# CONFIG_PATA_RDC is not set -CONFIG_PATA_SCH=y -# CONFIG_PATA_SERVERWORKS is not set -# CONFIG_PATA_SIL680 is not set -# CONFIG_PATA_SIS is not set -# CONFIG_PATA_TOSHIBA is not set -# CONFIG_PATA_TRIFLEX is not set -# CONFIG_PATA_VIA is not set -# CONFIG_PATA_WINBOND is not set - -# -# PIO-only SFF controllers -# -# CONFIG_PATA_CMD640_PCI is not set -# CONFIG_PATA_MPIIX is not set -# CONFIG_PATA_NS87410 is not set -# CONFIG_PATA_OPTI is not set -# CONFIG_PATA_PCMCIA is not set -# CONFIG_PATA_RZ1000 is not set - -# -# Generic fallback / legacy drivers -# -# CONFIG_PATA_ACPI is not set -# CONFIG_ATA_GENERIC is not set -# CONFIG_PATA_LEGACY is not set -CONFIG_MD=y -CONFIG_BLK_DEV_MD=y -CONFIG_MD_AUTODETECT=y -# CONFIG_MD_LINEAR is not set -# CONFIG_MD_RAID0 is not set -# CONFIG_MD_RAID1 is not set -# CONFIG_MD_RAID10 is not set -# CONFIG_MD_RAID456 is not set -# CONFIG_MD_MULTIPATH is not set -# CONFIG_MD_FAULTY is not set -# CONFIG_BCACHE is not set -CONFIG_BLK_DEV_DM_BUILTIN=y -CONFIG_BLK_DEV_DM=y -# CONFIG_DM_DEBUG is not set -# CONFIG_DM_UNSTRIPED is not set -# CONFIG_DM_CRYPT is not set -# CONFIG_DM_SNAPSHOT is not set -# CONFIG_DM_THIN_PROVISIONING is not set -# CONFIG_DM_CACHE is not set -# CONFIG_DM_WRITECACHE is not set -# CONFIG_DM_EBS is not set -# CONFIG_DM_ERA is not set -# CONFIG_DM_CLONE is not set -CONFIG_DM_MIRROR=y -# CONFIG_DM_LOG_USERSPACE is not set -# CONFIG_DM_RAID is not set -CONFIG_DM_ZERO=y -# CONFIG_DM_MULTIPATH is not set -# CONFIG_DM_DELAY is not set -# CONFIG_DM_DUST is not set -# CONFIG_DM_INIT is not set -# CONFIG_DM_UEVENT is not set -# CONFIG_DM_FLAKEY is not set -# CONFIG_DM_VERITY is not set -# CONFIG_DM_SWITCH is not set -# CONFIG_DM_LOG_WRITES is not set -# CONFIG_DM_INTEGRITY is not set -# CONFIG_TARGET_CORE is not set -# CONFIG_FUSION is not set - -# -# IEEE 1394 (FireWire) support -# -# CONFIG_FIREWIRE is not set -# CONFIG_FIREWIRE_NOSY is not set -# end of IEEE 1394 (FireWire) support - -CONFIG_MACINTOSH_DRIVERS=y -CONFIG_MAC_EMUMOUSEBTN=y -CONFIG_NETDEVICES=y -CONFIG_MII=y -CONFIG_NET_CORE=y -# CONFIG_BONDING is not set -# CONFIG_DUMMY is not set -# CONFIG_WIREGUARD is not set -# CONFIG_EQUALIZER is not set -# CONFIG_NET_FC is not set -# CONFIG_IFB is not set -# CONFIG_NET_TEAM is not set -# CONFIG_MACVLAN is not set -# CONFIG_IPVLAN is not set -# CONFIG_VXLAN is not set -# CONFIG_GENEVE is not set -# CONFIG_BAREUDP is not set -# CONFIG_GTP is not set -# CONFIG_MACSEC is not set -CONFIG_NETCONSOLE=y -CONFIG_NETPOLL=y -CONFIG_NET_POLL_CONTROLLER=y -# CONFIG_TUN is not set -# CONFIG_TUN_VNET_CROSS_LE is not set -# CONFIG_VETH is not set -# CONFIG_NLMON is not set -# CONFIG_ARCNET is not set - -# -# Distributed Switch Architecture drivers -# -# end of Distributed Switch Architecture drivers - -CONFIG_ETHERNET=y -CONFIG_NET_VENDOR_3COM=y -# CONFIG_PCMCIA_3C574 is not set -# CONFIG_PCMCIA_3C589 is not set -# CONFIG_VORTEX is not set -# CONFIG_TYPHOON is not set -CONFIG_NET_VENDOR_ADAPTEC=y -# CONFIG_ADAPTEC_STARFIRE is not set -CONFIG_NET_VENDOR_AGERE=y -# CONFIG_ET131X is not set -CONFIG_NET_VENDOR_ALACRITECH=y -# CONFIG_SLICOSS is not set -CONFIG_NET_VENDOR_ALTEON=y -# CONFIG_ACENIC is not set -# CONFIG_ALTERA_TSE is not set -CONFIG_NET_VENDOR_AMAZON=y -# CONFIG_ENA_ETHERNET is not set -CONFIG_NET_VENDOR_AMD=y -# CONFIG_AMD8111_ETH is not set -# CONFIG_PCNET32 is not set -# CONFIG_PCMCIA_NMCLAN is not set -# CONFIG_AMD_XGBE is not set -CONFIG_NET_VENDOR_AQUANTIA=y -# CONFIG_AQTION is not set -CONFIG_NET_VENDOR_ARC=y -CONFIG_NET_VENDOR_ATHEROS=y -# CONFIG_ATL2 is not set -# CONFIG_ATL1 is not set -# CONFIG_ATL1E is not set -# CONFIG_ATL1C is not set -# CONFIG_ALX is not set -CONFIG_NET_VENDOR_AURORA=y -# CONFIG_AURORA_NB8800 is not set -CONFIG_NET_VENDOR_BROADCOM=y -# CONFIG_B44 is not set -# CONFIG_BCMGENET is not set -# CONFIG_BNX2 is not set -# CONFIG_CNIC is not set -CONFIG_TIGON3=y -CONFIG_TIGON3_HWMON=y -# CONFIG_BNX2X is not set -# CONFIG_SYSTEMPORT is not set -# CONFIG_BNXT is not set -CONFIG_NET_VENDOR_BROCADE=y -# CONFIG_BNA is not set -CONFIG_NET_VENDOR_CADENCE=y -# CONFIG_MACB is not set -CONFIG_NET_VENDOR_CAVIUM=y -# CONFIG_THUNDER_NIC_PF is not set -# CONFIG_THUNDER_NIC_VF is not set -# CONFIG_THUNDER_NIC_BGX is not set -# CONFIG_THUNDER_NIC_RGX is not set -# CONFIG_CAVIUM_PTP is not set -# CONFIG_LIQUIDIO is not set -# CONFIG_LIQUIDIO_VF is not set -CONFIG_NET_VENDOR_CHELSIO=y -# CONFIG_CHELSIO_T1 is not set -# CONFIG_CHELSIO_T3 is not set -# CONFIG_CHELSIO_T4 is not set -# CONFIG_CHELSIO_T4VF is not set -CONFIG_NET_VENDOR_CISCO=y -# CONFIG_ENIC is not set -CONFIG_NET_VENDOR_CORTINA=y -# CONFIG_CX_ECAT is not set -# CONFIG_DNET is not set -CONFIG_NET_VENDOR_DEC=y -CONFIG_NET_TULIP=y -# CONFIG_DE2104X is not set -# CONFIG_TULIP is not set -# CONFIG_DE4X5 is not set -# CONFIG_WINBOND_840 is not set -# CONFIG_DM9102 is not set -# CONFIG_ULI526X is not set -# CONFIG_PCMCIA_XIRCOM is not set -CONFIG_NET_VENDOR_DLINK=y -# CONFIG_DL2K is not set -# CONFIG_SUNDANCE is not set -CONFIG_NET_VENDOR_EMULEX=y -# CONFIG_BE2NET is not set -CONFIG_NET_VENDOR_EZCHIP=y -CONFIG_NET_VENDOR_FUJITSU=y -# CONFIG_PCMCIA_FMVJ18X is not set -CONFIG_NET_VENDOR_GOOGLE=y -# CONFIG_GVE is not set -CONFIG_NET_VENDOR_HUAWEI=y -# CONFIG_HINIC is not set -CONFIG_NET_VENDOR_I825XX=y -CONFIG_NET_VENDOR_INTEL=y -CONFIG_E100=y -CONFIG_E1000=y -CONFIG_E1000E=y -CONFIG_E1000E_HWTS=y -# CONFIG_IGB is not set -# CONFIG_IGBVF is not set -# CONFIG_IXGB is not set -# CONFIG_IXGBE is not set -# CONFIG_IXGBEVF is not set -# CONFIG_I40E is not set -# CONFIG_I40EVF is not set -# CONFIG_ICE is not set -# CONFIG_FM10K is not set -# CONFIG_IGC is not set -# CONFIG_JME is not set -CONFIG_NET_VENDOR_MARVELL=y -# CONFIG_MVMDIO is not set -# CONFIG_SKGE is not set -CONFIG_SKY2=y -# CONFIG_SKY2_DEBUG is not set -CONFIG_NET_VENDOR_MELLANOX=y -# CONFIG_MLX4_EN is not set -# CONFIG_MLX5_CORE is not set -# CONFIG_MLXSW_CORE is not set -# CONFIG_MLXFW is not set -CONFIG_NET_VENDOR_MICREL=y -# CONFIG_KS8842 is not set -# CONFIG_KS8851_MLL is not set -# CONFIG_KSZ884X_PCI is not set -CONFIG_NET_VENDOR_MICROCHIP=y -# CONFIG_LAN743X is not set -CONFIG_NET_VENDOR_MICROSEMI=y -CONFIG_NET_VENDOR_MYRI=y -# CONFIG_MYRI10GE is not set -# CONFIG_FEALNX is not set -CONFIG_NET_VENDOR_NATSEMI=y -# CONFIG_NATSEMI is not set -# CONFIG_NS83820 is not set -CONFIG_NET_VENDOR_NETERION=y -# CONFIG_S2IO is not set -# CONFIG_VXGE is not set -CONFIG_NET_VENDOR_NETRONOME=y -# CONFIG_NFP is not set -CONFIG_NET_VENDOR_NI=y -# CONFIG_NI_XGE_MANAGEMENT_ENET is not set -CONFIG_NET_VENDOR_8390=y -# CONFIG_PCMCIA_AXNET is not set -# CONFIG_NE2K_PCI is not set -# CONFIG_PCMCIA_PCNET is not set -CONFIG_NET_VENDOR_NVIDIA=y -CONFIG_FORCEDETH=y -CONFIG_NET_VENDOR_OKI=y -# CONFIG_ETHOC is not set -CONFIG_NET_VENDOR_PACKET_ENGINES=y -# CONFIG_HAMACHI is not set -# CONFIG_YELLOWFIN is not set -CONFIG_NET_VENDOR_PENSANDO=y -# CONFIG_IONIC is not set -CONFIG_NET_VENDOR_QLOGIC=y -# CONFIG_QLA3XXX is not set -# CONFIG_QLCNIC is not set -# CONFIG_NETXEN_NIC is not set -# CONFIG_QED is not set -CONFIG_NET_VENDOR_QUALCOMM=y -# CONFIG_QCOM_EMAC is not set -# CONFIG_RMNET is not set -CONFIG_NET_VENDOR_RDC=y -# CONFIG_R6040 is not set -CONFIG_NET_VENDOR_REALTEK=y -# CONFIG_8139CP is not set -CONFIG_8139TOO=y -CONFIG_8139TOO_PIO=y -# CONFIG_8139TOO_TUNE_TWISTER is not set -# CONFIG_8139TOO_8129 is not set -# CONFIG_8139_OLD_RX_RESET is not set -CONFIG_R8169=y -CONFIG_NET_VENDOR_RENESAS=y -CONFIG_NET_VENDOR_ROCKER=y -CONFIG_NET_VENDOR_SAMSUNG=y -# CONFIG_SXGBE_ETH is not set -CONFIG_NET_VENDOR_SEEQ=y -CONFIG_NET_VENDOR_SOLARFLARE=y -# CONFIG_SFC is not set -# CONFIG_SFC_FALCON is not set -CONFIG_NET_VENDOR_SILAN=y -# CONFIG_SC92031 is not set -CONFIG_NET_VENDOR_SIS=y -# CONFIG_SIS900 is not set -# CONFIG_SIS190 is not set -CONFIG_NET_VENDOR_SMSC=y -# CONFIG_PCMCIA_SMC91C92 is not set -# CONFIG_EPIC100 is not set -# CONFIG_SMSC911X is not set -# CONFIG_SMSC9420 is not set -CONFIG_NET_VENDOR_SOCIONEXT=y -CONFIG_NET_VENDOR_STMICRO=y -# CONFIG_STMMAC_ETH is not set -CONFIG_NET_VENDOR_SUN=y -# CONFIG_HAPPYMEAL is not set -# CONFIG_SUNGEM is not set -# CONFIG_CASSINI is not set -# CONFIG_NIU is not set -CONFIG_NET_VENDOR_SYNOPSYS=y -# CONFIG_DWC_XLGMAC is not set -CONFIG_NET_VENDOR_TEHUTI=y -# CONFIG_TEHUTI is not set -CONFIG_NET_VENDOR_TI=y -# CONFIG_TI_CPSW_PHY_SEL is not set -# CONFIG_TLAN is not set -CONFIG_NET_VENDOR_VIA=y -# CONFIG_VIA_RHINE is not set -# CONFIG_VIA_VELOCITY is not set -CONFIG_NET_VENDOR_WIZNET=y -# CONFIG_WIZNET_W5100 is not set -# CONFIG_WIZNET_W5300 is not set -CONFIG_NET_VENDOR_XILINX=y -# CONFIG_XILINX_AXI_EMAC is not set -# CONFIG_XILINX_LL_TEMAC is not set -CONFIG_NET_VENDOR_XIRCOM=y -# CONFIG_PCMCIA_XIRC2PS is not set -# CONFIG_FDDI is not set -# CONFIG_HIPPI is not set -# CONFIG_NET_SB1000 is not set -CONFIG_PHYLIB=y -# CONFIG_LED_TRIGGER_PHY is not set -# CONFIG_FIXED_PHY is not set - -# -# MII PHY device drivers -# -# CONFIG_AMD_PHY is not set -# CONFIG_ADIN_PHY is not set -# CONFIG_AQUANTIA_PHY is not set -# CONFIG_AX88796B_PHY is not set -# CONFIG_BROADCOM_PHY is not set -# CONFIG_BCM54140_PHY is not set -# CONFIG_BCM7XXX_PHY is not set -# CONFIG_BCM84881_PHY is not set -# CONFIG_BCM87XX_PHY is not set -# CONFIG_CICADA_PHY is not set -# CONFIG_CORTINA_PHY is not set -# CONFIG_DAVICOM_PHY is not set -# CONFIG_ICPLUS_PHY is not set -# CONFIG_LXT_PHY is not set -# CONFIG_INTEL_XWAY_PHY is not set -# CONFIG_LSI_ET1011C_PHY is not set -# CONFIG_MARVELL_PHY is not set -# CONFIG_MARVELL_10G_PHY is not set -# CONFIG_MICREL_PHY is not set -# CONFIG_MICROCHIP_PHY is not set -# CONFIG_MICROCHIP_T1_PHY is not set -# CONFIG_MICROSEMI_PHY is not set -# CONFIG_NATIONAL_PHY is not set -# CONFIG_NXP_TJA11XX_PHY is not set -# CONFIG_QSEMI_PHY is not set -CONFIG_REALTEK_PHY=y -# CONFIG_RENESAS_PHY is not set -# CONFIG_ROCKCHIP_PHY is not set -# CONFIG_SMSC_PHY is not set -# CONFIG_STE10XP is not set -# CONFIG_TERANETICS_PHY is not set -# CONFIG_DP83822_PHY is not set -# CONFIG_DP83TC811_PHY is not set -# CONFIG_DP83848_PHY is not set -# CONFIG_DP83867_PHY is not set -# CONFIG_DP83869_PHY is not set -# CONFIG_VITESSE_PHY is not set -# CONFIG_XILINX_GMII2RGMII is not set -CONFIG_MDIO_DEVICE=y -CONFIG_MDIO_BUS=y -CONFIG_MDIO_DEVRES=y -# CONFIG_MDIO_BITBANG is not set -# CONFIG_MDIO_BCM_UNIMAC is not set -# CONFIG_MDIO_MVUSB is not set -# CONFIG_MDIO_MSCC_MIIM is not set -# CONFIG_MDIO_THUNDER is not set - -# -# MDIO Multiplexers -# - -# -# PCS device drivers -# -# CONFIG_PCS_XPCS is not set -# end of PCS device drivers - -# CONFIG_PPP is not set -# CONFIG_SLIP is not set -CONFIG_USB_NET_DRIVERS=y -# CONFIG_USB_CATC is not set -# CONFIG_USB_KAWETH is not set -# CONFIG_USB_PEGASUS is not set -# CONFIG_USB_RTL8150 is not set -# CONFIG_USB_RTL8152 is not set -# CONFIG_USB_LAN78XX is not set -# CONFIG_USB_USBNET is not set -# CONFIG_USB_HSO is not set -# CONFIG_USB_IPHETH is not set -CONFIG_WLAN=y -CONFIG_WLAN_VENDOR_ADMTEK=y -# CONFIG_ADM8211 is not set -CONFIG_WLAN_VENDOR_ATH=y -# CONFIG_ATH_DEBUG is not set -# CONFIG_ATH5K is not set -# CONFIG_ATH5K_PCI is not set -# CONFIG_ATH9K is not set -# CONFIG_ATH9K_HTC is not set -# CONFIG_CARL9170 is not set -# CONFIG_ATH6KL is not set -# CONFIG_AR5523 is not set -# CONFIG_WIL6210 is not set -# CONFIG_ATH10K is not set -# CONFIG_WCN36XX is not set -CONFIG_WLAN_VENDOR_ATMEL=y -# CONFIG_ATMEL is not set -# CONFIG_AT76C50X_USB is not set -CONFIG_WLAN_VENDOR_BROADCOM=y -# CONFIG_B43 is not set -# CONFIG_B43LEGACY is not set -# CONFIG_BRCMSMAC is not set -# CONFIG_BRCMFMAC is not set -CONFIG_WLAN_VENDOR_CISCO=y -# CONFIG_AIRO is not set -# CONFIG_AIRO_CS is not set -CONFIG_WLAN_VENDOR_INTEL=y -# CONFIG_IPW2100 is not set -# CONFIG_IPW2200 is not set -# CONFIG_IWL4965 is not set -# CONFIG_IWL3945 is not set -# CONFIG_IWLWIFI is not set -CONFIG_WLAN_VENDOR_INTERSIL=y -# CONFIG_HOSTAP is not set -# CONFIG_HERMES is not set -# CONFIG_P54_COMMON is not set -# CONFIG_PRISM54 is not set -CONFIG_WLAN_VENDOR_MARVELL=y -# CONFIG_LIBERTAS is not set -# CONFIG_LIBERTAS_THINFIRM is not set -# CONFIG_MWIFIEX is not set -# CONFIG_MWL8K is not set -CONFIG_WLAN_VENDOR_MEDIATEK=y -# CONFIG_MT7601U is not set -# CONFIG_MT76x0U is not set -# CONFIG_MT76x0E is not set -# CONFIG_MT76x2E is not set -# CONFIG_MT76x2U is not set -# CONFIG_MT7603E is not set -# CONFIG_MT7615E is not set -# CONFIG_MT7663U is not set -# CONFIG_MT7915E is not set -CONFIG_WLAN_VENDOR_MICROCHIP=y -CONFIG_WLAN_VENDOR_RALINK=y -# CONFIG_RT2X00 is not set -CONFIG_WLAN_VENDOR_REALTEK=y -# CONFIG_RTL8180 is not set -# CONFIG_RTL8187 is not set -CONFIG_RTL_CARDS=y -# CONFIG_RTL8192CE is not set -# CONFIG_RTL8192SE is not set -# CONFIG_RTL8192DE is not set -# CONFIG_RTL8723AE is not set -# CONFIG_RTL8723BE is not set -# CONFIG_RTL8188EE is not set -# CONFIG_RTL8192EE is not set -# CONFIG_RTL8821AE is not set -# CONFIG_RTL8192CU is not set -# CONFIG_RTL8XXXU is not set -# CONFIG_RTW88 is not set -CONFIG_WLAN_VENDOR_RSI=y -# CONFIG_RSI_91X is not set -CONFIG_WLAN_VENDOR_ST=y -# CONFIG_CW1200 is not set -CONFIG_WLAN_VENDOR_TI=y -# CONFIG_WL1251 is not set -# CONFIG_WL12XX is not set -# CONFIG_WL18XX is not set -# CONFIG_WLCORE is not set -CONFIG_WLAN_VENDOR_ZYDAS=y -# CONFIG_USB_ZD1201 is not set -# CONFIG_ZD1211RW is not set -CONFIG_WLAN_VENDOR_QUANTENNA=y -# CONFIG_QTNFMAC_PCIE is not set -# CONFIG_PCMCIA_RAYCS is not set -# CONFIG_PCMCIA_WL3501 is not set -# CONFIG_MAC80211_HWSIM is not set -# CONFIG_USB_NET_RNDIS_WLAN is not set -# CONFIG_VIRT_WIFI is not set - -# -# Enable WiMAX (Networking options) to see the WiMAX drivers -# -# CONFIG_WAN is not set -# CONFIG_VMXNET3 is not set -# CONFIG_FUJITSU_ES is not set -# CONFIG_NETDEVSIM is not set -# CONFIG_NET_FAILOVER is not set -# CONFIG_ISDN is not set -# CONFIG_NVM is not set - -# -# Input device support -# -CONFIG_INPUT=y -CONFIG_INPUT_LEDS=y -CONFIG_INPUT_FF_MEMLESS=y -CONFIG_INPUT_POLLDEV=y -CONFIG_INPUT_SPARSEKMAP=y -# CONFIG_INPUT_MATRIXKMAP is not set - -# -# Userland interfaces -# -# CONFIG_INPUT_MOUSEDEV is not set -# CONFIG_INPUT_JOYDEV is not set -CONFIG_INPUT_EVDEV=y -# CONFIG_INPUT_EVBUG is not set - -# -# Input Device Drivers -# -CONFIG_INPUT_KEYBOARD=y -# CONFIG_KEYBOARD_ADP5588 is not set -# CONFIG_KEYBOARD_ADP5589 is not set -CONFIG_KEYBOARD_ATKBD=y -# CONFIG_KEYBOARD_QT1050 is not set -# CONFIG_KEYBOARD_QT1070 is not set -# CONFIG_KEYBOARD_QT2160 is not set -# CONFIG_KEYBOARD_DLINK_DIR685 is not set -# CONFIG_KEYBOARD_LKKBD is not set -# CONFIG_KEYBOARD_TCA6416 is not set -# CONFIG_KEYBOARD_TCA8418 is not set -# CONFIG_KEYBOARD_LM8323 is not set -# CONFIG_KEYBOARD_LM8333 is not set -# CONFIG_KEYBOARD_MAX7359 is not set -# CONFIG_KEYBOARD_MCS is not set -# CONFIG_KEYBOARD_MPR121 is not set -# CONFIG_KEYBOARD_NEWTON is not set -# CONFIG_KEYBOARD_OPENCORES is not set -# CONFIG_KEYBOARD_SAMSUNG is not set -# CONFIG_KEYBOARD_STOWAWAY is not set -# CONFIG_KEYBOARD_SUNKBD is not set -# CONFIG_KEYBOARD_TM2_TOUCHKEY is not set -# CONFIG_KEYBOARD_XTKBD is not set -CONFIG_INPUT_MOUSE=y -CONFIG_MOUSE_PS2=y -CONFIG_MOUSE_PS2_ALPS=y -CONFIG_MOUSE_PS2_BYD=y -CONFIG_MOUSE_PS2_LOGIPS2PP=y -CONFIG_MOUSE_PS2_SYNAPTICS=y -CONFIG_MOUSE_PS2_SYNAPTICS_SMBUS=y -CONFIG_MOUSE_PS2_CYPRESS=y -CONFIG_MOUSE_PS2_LIFEBOOK=y -CONFIG_MOUSE_PS2_TRACKPOINT=y -# CONFIG_MOUSE_PS2_ELANTECH is not set -# CONFIG_MOUSE_PS2_SENTELIC is not set -# CONFIG_MOUSE_PS2_TOUCHKIT is not set -CONFIG_MOUSE_PS2_FOCALTECH=y -CONFIG_MOUSE_PS2_SMBUS=y -# CONFIG_MOUSE_SERIAL is not set -# CONFIG_MOUSE_APPLETOUCH is not set -# CONFIG_MOUSE_BCM5974 is not set -# CONFIG_MOUSE_CYAPA is not set -# CONFIG_MOUSE_ELAN_I2C is not set -# CONFIG_MOUSE_VSXXXAA is not set -# CONFIG_MOUSE_SYNAPTICS_I2C is not set -# CONFIG_MOUSE_SYNAPTICS_USB is not set -CONFIG_INPUT_JOYSTICK=y -# CONFIG_JOYSTICK_ANALOG is not set -# CONFIG_JOYSTICK_A3D is not set -# CONFIG_JOYSTICK_ADI is not set -# CONFIG_JOYSTICK_COBRA is not set -# CONFIG_JOYSTICK_GF2K is not set -# CONFIG_JOYSTICK_GRIP is not set -# CONFIG_JOYSTICK_GRIP_MP is not set -# CONFIG_JOYSTICK_GUILLEMOT is not set -# CONFIG_JOYSTICK_INTERACT is not set -# CONFIG_JOYSTICK_SIDEWINDER is not set -# CONFIG_JOYSTICK_TMDC is not set -# CONFIG_JOYSTICK_IFORCE is not set -# CONFIG_JOYSTICK_WARRIOR is not set -# CONFIG_JOYSTICK_MAGELLAN is not set -# CONFIG_JOYSTICK_SPACEORB is not set -# CONFIG_JOYSTICK_SPACEBALL is not set -# CONFIG_JOYSTICK_STINGER is not set -# CONFIG_JOYSTICK_TWIDJOY is not set -# CONFIG_JOYSTICK_ZHENHUA is not set -# CONFIG_JOYSTICK_AS5011 is not set -# CONFIG_JOYSTICK_JOYDUMP is not set -# CONFIG_JOYSTICK_XPAD is not set -# CONFIG_JOYSTICK_PXRC is not set -# CONFIG_JOYSTICK_FSIA6B is not set -CONFIG_INPUT_TABLET=y -# CONFIG_TABLET_USB_ACECAD is not set -# CONFIG_TABLET_USB_AIPTEK is not set -# CONFIG_TABLET_USB_GTCO is not set -# CONFIG_TABLET_USB_HANWANG is not set -# CONFIG_TABLET_USB_KBTAB is not set -# CONFIG_TABLET_USB_PEGASUS is not set -# CONFIG_TABLET_SERIAL_WACOM4 is not set -CONFIG_INPUT_TOUCHSCREEN=y -CONFIG_TOUCHSCREEN_PROPERTIES=y -# CONFIG_TOUCHSCREEN_AD7879 is not set -# CONFIG_TOUCHSCREEN_ATMEL_MXT is not set -# CONFIG_TOUCHSCREEN_BU21013 is not set -# CONFIG_TOUCHSCREEN_BU21029 is not set -# CONFIG_TOUCHSCREEN_CHIPONE_ICN8505 is not set -# CONFIG_TOUCHSCREEN_CY8CTMA140 is not set -# CONFIG_TOUCHSCREEN_CYTTSP_CORE is not set -# CONFIG_TOUCHSCREEN_CYTTSP4_CORE is not set -# CONFIG_TOUCHSCREEN_DYNAPRO is not set -# CONFIG_TOUCHSCREEN_HAMPSHIRE is not set -# CONFIG_TOUCHSCREEN_EETI is not set -# CONFIG_TOUCHSCREEN_EGALAX_SERIAL is not set -# CONFIG_TOUCHSCREEN_EXC3000 is not set -# CONFIG_TOUCHSCREEN_FUJITSU is not set -# CONFIG_TOUCHSCREEN_HIDEEP is not set -# CONFIG_TOUCHSCREEN_ILI210X is not set -# CONFIG_TOUCHSCREEN_S6SY761 is not set -# CONFIG_TOUCHSCREEN_GUNZE is not set -# CONFIG_TOUCHSCREEN_EKTF2127 is not set -# CONFIG_TOUCHSCREEN_ELAN is not set -# CONFIG_TOUCHSCREEN_ELO is not set -# CONFIG_TOUCHSCREEN_WACOM_W8001 is not set -# CONFIG_TOUCHSCREEN_WACOM_I2C is not set -# CONFIG_TOUCHSCREEN_MAX11801 is not set -# CONFIG_TOUCHSCREEN_MCS5000 is not set -# CONFIG_TOUCHSCREEN_MMS114 is not set -# CONFIG_TOUCHSCREEN_MELFAS_MIP4 is not set -# CONFIG_TOUCHSCREEN_MTOUCH is not set -# CONFIG_TOUCHSCREEN_INEXIO is not set -# CONFIG_TOUCHSCREEN_MK712 is not set -# CONFIG_TOUCHSCREEN_PENMOUNT is not set -# CONFIG_TOUCHSCREEN_EDT_FT5X06 is not set -# CONFIG_TOUCHSCREEN_TOUCHRIGHT is not set -# CONFIG_TOUCHSCREEN_TOUCHWIN is not set -# CONFIG_TOUCHSCREEN_PIXCIR is not set -# CONFIG_TOUCHSCREEN_WDT87XX_I2C is not set -# CONFIG_TOUCHSCREEN_USB_COMPOSITE is not set -# CONFIG_TOUCHSCREEN_TOUCHIT213 is not set -# CONFIG_TOUCHSCREEN_TSC_SERIO is not set -# CONFIG_TOUCHSCREEN_TSC2004 is not set -# CONFIG_TOUCHSCREEN_TSC2007 is not set -# CONFIG_TOUCHSCREEN_SILEAD is not set -# CONFIG_TOUCHSCREEN_ST1232 is not set -# CONFIG_TOUCHSCREEN_STMFTS is not set -# CONFIG_TOUCHSCREEN_SX8654 is not set -# CONFIG_TOUCHSCREEN_TPS6507X is not set -# CONFIG_TOUCHSCREEN_ZET6223 is not set -# CONFIG_TOUCHSCREEN_ROHM_BU21023 is not set -# CONFIG_TOUCHSCREEN_IQS5XX is not set -# CONFIG_TOUCHSCREEN_ZINITIX is not set -CONFIG_INPUT_MISC=y -# CONFIG_INPUT_AD714X is not set -# CONFIG_INPUT_BMA150 is not set -# CONFIG_INPUT_E3X0_BUTTON is not set -# CONFIG_INPUT_PCSPKR is not set -# CONFIG_INPUT_MMA8450 is not set -# CONFIG_INPUT_APANEL is not set -# CONFIG_INPUT_ATLAS_BTNS is not set -# CONFIG_INPUT_ATI_REMOTE2 is not set -# CONFIG_INPUT_KEYSPAN_REMOTE is not set -# CONFIG_INPUT_KXTJ9 is not set -# CONFIG_INPUT_POWERMATE is not set -# CONFIG_INPUT_YEALINK is not set -# CONFIG_INPUT_CM109 is not set -# CONFIG_INPUT_UINPUT is not set -# CONFIG_INPUT_PCF8574 is not set -# CONFIG_INPUT_ADXL34X is not set -# CONFIG_INPUT_IMS_PCU is not set -# CONFIG_INPUT_IQS269A is not set -# CONFIG_INPUT_CMA3000 is not set -# CONFIG_INPUT_IDEAPAD_SLIDEBAR is not set -# CONFIG_INPUT_DRV2665_HAPTICS is not set -# CONFIG_INPUT_DRV2667_HAPTICS is not set -# CONFIG_RMI4_CORE is not set - -# -# Hardware I/O ports -# -CONFIG_SERIO=y -CONFIG_ARCH_MIGHT_HAVE_PC_SERIO=y -CONFIG_SERIO_I8042=y -CONFIG_SERIO_SERPORT=y -# CONFIG_SERIO_CT82C710 is not set -# CONFIG_SERIO_PCIPS2 is not set -CONFIG_SERIO_LIBPS2=y -# CONFIG_SERIO_RAW is not set -# CONFIG_SERIO_ALTERA_PS2 is not set -# CONFIG_SERIO_PS2MULT is not set -# CONFIG_SERIO_ARC_PS2 is not set -# CONFIG_USERIO is not set -# CONFIG_GAMEPORT is not set -# end of Hardware I/O ports -# end of Input device support - -# -# Character devices -# -CONFIG_TTY=y -CONFIG_VT=y -CONFIG_CONSOLE_TRANSLATIONS=y -CONFIG_VT_CONSOLE=y -CONFIG_VT_CONSOLE_SLEEP=y -CONFIG_HW_CONSOLE=y -CONFIG_VT_HW_CONSOLE_BINDING=y -CONFIG_UNIX98_PTYS=y -# CONFIG_LEGACY_PTYS is not set -CONFIG_LDISC_AUTOLOAD=y - -# -# Serial drivers -# -CONFIG_SERIAL_EARLYCON=y -CONFIG_SERIAL_8250=y -CONFIG_SERIAL_8250_DEPRECATED_OPTIONS=y -CONFIG_SERIAL_8250_PNP=y -# CONFIG_SERIAL_8250_16550A_VARIANTS is not set -# CONFIG_SERIAL_8250_FINTEK is not set -CONFIG_SERIAL_8250_CONSOLE=y -CONFIG_SERIAL_8250_DMA=y -CONFIG_SERIAL_8250_PCI=y -CONFIG_SERIAL_8250_EXAR=y -# CONFIG_SERIAL_8250_CS is not set -CONFIG_SERIAL_8250_NR_UARTS=32 -CONFIG_SERIAL_8250_RUNTIME_UARTS=4 -CONFIG_SERIAL_8250_EXTENDED=y -CONFIG_SERIAL_8250_MANY_PORTS=y -CONFIG_SERIAL_8250_SHARE_IRQ=y -CONFIG_SERIAL_8250_DETECT_IRQ=y -CONFIG_SERIAL_8250_RSA=y -CONFIG_SERIAL_8250_DWLIB=y -# CONFIG_SERIAL_8250_DW is not set -# CONFIG_SERIAL_8250_RT288X is not set -CONFIG_SERIAL_8250_LPSS=y -CONFIG_SERIAL_8250_MID=y - -# -# Non-8250 serial port support -# -# CONFIG_SERIAL_UARTLITE is not set -CONFIG_SERIAL_CORE=y -CONFIG_SERIAL_CORE_CONSOLE=y -# CONFIG_SERIAL_JSM is not set -# CONFIG_SERIAL_LANTIQ is not set -# CONFIG_SERIAL_SCCNXP is not set -# CONFIG_SERIAL_SC16IS7XX is not set -# CONFIG_SERIAL_ALTERA_JTAGUART is not set -# CONFIG_SERIAL_ALTERA_UART is not set -# CONFIG_SERIAL_ARC is not set -# CONFIG_SERIAL_RP2 is not set -# CONFIG_SERIAL_FSL_LPUART is not set -# CONFIG_SERIAL_FSL_LINFLEXUART is not set -# CONFIG_SERIAL_SPRD is not set -# end of Serial drivers - -CONFIG_SERIAL_NONSTANDARD=y -# CONFIG_ROCKETPORT is not set -# CONFIG_CYCLADES is not set -# CONFIG_MOXA_INTELLIO is not set -# CONFIG_MOXA_SMARTIO is not set -# CONFIG_SYNCLINK is not set -# CONFIG_SYNCLINKMP is not set -# CONFIG_SYNCLINK_GT is not set -# CONFIG_ISI is not set -# CONFIG_N_HDLC is not set -# CONFIG_N_GSM is not set -# CONFIG_NOZOMI is not set -# CONFIG_NULL_TTY is not set -# CONFIG_TRACE_SINK is not set -# CONFIG_SERIAL_DEV_BUS is not set -# CONFIG_VIRTIO_CONSOLE is not set -# CONFIG_IPMI_HANDLER is not set -CONFIG_HW_RANDOM=y -# CONFIG_HW_RANDOM_TIMERIOMEM is not set -# CONFIG_HW_RANDOM_INTEL is not set -# CONFIG_HW_RANDOM_AMD is not set -# CONFIG_HW_RANDOM_BA431 is not set -CONFIG_HW_RANDOM_VIA=y -# CONFIG_HW_RANDOM_XIPHERA is not set -# CONFIG_APPLICOM is not set - -# -# PCMCIA character devices -# -# CONFIG_SYNCLINK_CS is not set -# CONFIG_CARDMAN_4000 is not set -# CONFIG_CARDMAN_4040 is not set -# CONFIG_SCR24X is not set -# CONFIG_IPWIRELESS is not set -# end of PCMCIA character devices - -# CONFIG_MWAVE is not set -CONFIG_DEVMEM=y -# CONFIG_DEVKMEM is not set -CONFIG_NVRAM=y -# CONFIG_RAW_DRIVER is not set -CONFIG_DEVPORT=y -CONFIG_HPET=y -# CONFIG_HPET_MMAP is not set -# CONFIG_HANGCHECK_TIMER is not set -# CONFIG_TCG_TPM is not set -# CONFIG_TELCLOCK is not set -# CONFIG_XILLYBUS is not set -# end of Character devices - -# CONFIG_RANDOM_TRUST_CPU is not set -# CONFIG_RANDOM_TRUST_BOOTLOADER is not set - -# -# I2C support -# -CONFIG_I2C=y -CONFIG_ACPI_I2C_OPREGION=y -CONFIG_I2C_BOARDINFO=y -CONFIG_I2C_COMPAT=y -# CONFIG_I2C_CHARDEV is not set -# CONFIG_I2C_MUX is not set -CONFIG_I2C_HELPER_AUTO=y -CONFIG_I2C_SMBUS=y -CONFIG_I2C_ALGOBIT=y - -# -# I2C Hardware Bus support -# - -# -# PC SMBus host controller drivers -# -# CONFIG_I2C_ALI1535 is not set -# CONFIG_I2C_ALI1563 is not set -# CONFIG_I2C_ALI15X3 is not set -# CONFIG_I2C_AMD756 is not set -# CONFIG_I2C_AMD8111 is not set -# CONFIG_I2C_AMD_MP2 is not set -CONFIG_I2C_I801=y -# CONFIG_I2C_ISCH is not set -# CONFIG_I2C_ISMT is not set -# CONFIG_I2C_PIIX4 is not set -# CONFIG_I2C_NFORCE2 is not set -# CONFIG_I2C_NVIDIA_GPU is not set -# CONFIG_I2C_SIS5595 is not set -# CONFIG_I2C_SIS630 is not set -# CONFIG_I2C_SIS96X is not set -# CONFIG_I2C_VIA is not set -# CONFIG_I2C_VIAPRO is not set - -# -# ACPI drivers -# -# CONFIG_I2C_SCMI is not set - -# -# I2C system bus drivers (mostly embedded / system-on-chip) -# -# CONFIG_I2C_DESIGNWARE_PLATFORM is not set -# CONFIG_I2C_DESIGNWARE_PCI is not set -# CONFIG_I2C_EMEV2 is not set -# CONFIG_I2C_OCORES is not set -# CONFIG_I2C_PCA_PLATFORM is not set -# CONFIG_I2C_SIMTEC is not set -# CONFIG_I2C_XILINX is not set - -# -# External I2C/SMBus adapter drivers -# -# CONFIG_I2C_DIOLAN_U2C is not set -# CONFIG_I2C_ROBOTFUZZ_OSIF is not set -# CONFIG_I2C_TAOS_EVM is not set -# CONFIG_I2C_TINY_USB is not set - -# -# Other I2C/SMBus bus drivers -# -# CONFIG_I2C_MLXCPLD is not set -# end of I2C Hardware Bus support - -# CONFIG_I2C_STUB is not set -# CONFIG_I2C_SLAVE is not set -# CONFIG_I2C_DEBUG_CORE is not set -# CONFIG_I2C_DEBUG_ALGO is not set -# CONFIG_I2C_DEBUG_BUS is not set -# end of I2C support - -# CONFIG_I3C is not set -# CONFIG_SPI is not set -# CONFIG_SPMI is not set -# CONFIG_HSI is not set -CONFIG_PPS=y -# CONFIG_PPS_DEBUG is not set - -# -# PPS clients support -# -# CONFIG_PPS_CLIENT_KTIMER is not set -# CONFIG_PPS_CLIENT_LDISC is not set -# CONFIG_PPS_CLIENT_GPIO is not set - -# -# PPS generators support -# - -# -# PTP clock support -# -CONFIG_PTP_1588_CLOCK=y - -# -# Enable PHYLIB and NETWORK_PHY_TIMESTAMPING to see the additional clocks. -# -# CONFIG_PTP_1588_CLOCK_IDT82P33 is not set -# CONFIG_PTP_1588_CLOCK_IDTCM is not set -# end of PTP clock support - -# CONFIG_PINCTRL is not set -# CONFIG_GPIOLIB is not set -# CONFIG_W1 is not set -# CONFIG_POWER_RESET is not set -CONFIG_POWER_SUPPLY=y -# CONFIG_POWER_SUPPLY_DEBUG is not set -CONFIG_POWER_SUPPLY_HWMON=y -# CONFIG_PDA_POWER is not set -# CONFIG_TEST_POWER is not set -# CONFIG_CHARGER_ADP5061 is not set -# CONFIG_BATTERY_CW2015 is not set -# CONFIG_BATTERY_DS2780 is not set -# CONFIG_BATTERY_DS2781 is not set -# CONFIG_BATTERY_DS2782 is not set -# CONFIG_BATTERY_SBS is not set -# CONFIG_CHARGER_SBS is not set -# CONFIG_BATTERY_BQ27XXX is not set -# CONFIG_BATTERY_MAX17040 is not set -# CONFIG_BATTERY_MAX17042 is not set -# CONFIG_CHARGER_MAX8903 is not set -# CONFIG_CHARGER_LP8727 is not set -# CONFIG_CHARGER_BQ2415X is not set -# CONFIG_CHARGER_SMB347 is not set -# CONFIG_BATTERY_GAUGE_LTC2941 is not set -# CONFIG_CHARGER_BD99954 is not set -CONFIG_HWMON=y -# CONFIG_HWMON_DEBUG_CHIP is not set - -# -# Native drivers -# -# CONFIG_SENSORS_ABITUGURU is not set -# CONFIG_SENSORS_ABITUGURU3 is not set -# CONFIG_SENSORS_AD7414 is not set -# CONFIG_SENSORS_AD7418 is not set -# CONFIG_SENSORS_ADM1021 is not set -# CONFIG_SENSORS_ADM1025 is not set -# CONFIG_SENSORS_ADM1026 is not set -# CONFIG_SENSORS_ADM1029 is not set -# CONFIG_SENSORS_ADM1031 is not set -# CONFIG_SENSORS_ADM1177 is not set -# CONFIG_SENSORS_ADM9240 is not set -# CONFIG_SENSORS_ADT7410 is not set -# CONFIG_SENSORS_ADT7411 is not set -# CONFIG_SENSORS_ADT7462 is not set -# CONFIG_SENSORS_ADT7470 is not set -# CONFIG_SENSORS_ADT7475 is not set -# CONFIG_SENSORS_AS370 is not set -# CONFIG_SENSORS_ASC7621 is not set -# CONFIG_SENSORS_AXI_FAN_CONTROL is not set -# CONFIG_SENSORS_K8TEMP is not set -# CONFIG_SENSORS_K10TEMP is not set -# CONFIG_SENSORS_FAM15H_POWER is not set -# CONFIG_SENSORS_AMD_ENERGY is not set -# CONFIG_SENSORS_APPLESMC is not set -# CONFIG_SENSORS_ASB100 is not set -# CONFIG_SENSORS_ASPEED is not set -# CONFIG_SENSORS_ATXP1 is not set -# CONFIG_SENSORS_CORSAIR_CPRO is not set -# CONFIG_SENSORS_DRIVETEMP is not set -# CONFIG_SENSORS_DS620 is not set -# CONFIG_SENSORS_DS1621 is not set -# CONFIG_SENSORS_DELL_SMM is not set -# CONFIG_SENSORS_I5K_AMB is not set -# CONFIG_SENSORS_F71805F is not set -# CONFIG_SENSORS_F71882FG is not set -# CONFIG_SENSORS_F75375S is not set -# CONFIG_SENSORS_FSCHMD is not set -# CONFIG_SENSORS_FTSTEUTATES is not set -# CONFIG_SENSORS_GL518SM is not set -# CONFIG_SENSORS_GL520SM is not set -# CONFIG_SENSORS_G760A is not set -# CONFIG_SENSORS_G762 is not set -# CONFIG_SENSORS_HIH6130 is not set -# CONFIG_SENSORS_I5500 is not set -# CONFIG_SENSORS_CORETEMP is not set -# CONFIG_SENSORS_IT87 is not set -# CONFIG_SENSORS_JC42 is not set -# CONFIG_SENSORS_POWR1220 is not set -# CONFIG_SENSORS_LINEAGE is not set -# CONFIG_SENSORS_LTC2945 is not set -# CONFIG_SENSORS_LTC2947_I2C is not set -# CONFIG_SENSORS_LTC2990 is not set -# CONFIG_SENSORS_LTC4151 is not set -# CONFIG_SENSORS_LTC4215 is not set -# CONFIG_SENSORS_LTC4222 is not set -# CONFIG_SENSORS_LTC4245 is not set -# CONFIG_SENSORS_LTC4260 is not set -# CONFIG_SENSORS_LTC4261 is not set -# CONFIG_SENSORS_MAX16065 is not set -# CONFIG_SENSORS_MAX1619 is not set -# CONFIG_SENSORS_MAX1668 is not set -# CONFIG_SENSORS_MAX197 is not set -# CONFIG_SENSORS_MAX31730 is not set -# CONFIG_SENSORS_MAX6621 is not set -# CONFIG_SENSORS_MAX6639 is not set -# CONFIG_SENSORS_MAX6642 is not set -# CONFIG_SENSORS_MAX6650 is not set -# CONFIG_SENSORS_MAX6697 is not set -# CONFIG_SENSORS_MAX31790 is not set -# CONFIG_SENSORS_MCP3021 is not set -# CONFIG_SENSORS_TC654 is not set -# CONFIG_SENSORS_MR75203 is not set -# CONFIG_SENSORS_LM63 is not set -# CONFIG_SENSORS_LM73 is not set -# CONFIG_SENSORS_LM75 is not set -# CONFIG_SENSORS_LM77 is not set -# CONFIG_SENSORS_LM78 is not set -# CONFIG_SENSORS_LM80 is not set -# CONFIG_SENSORS_LM83 is not set -# CONFIG_SENSORS_LM85 is not set -# CONFIG_SENSORS_LM87 is not set -# CONFIG_SENSORS_LM90 is not set -# CONFIG_SENSORS_LM92 is not set -# CONFIG_SENSORS_LM93 is not set -# CONFIG_SENSORS_LM95234 is not set -# CONFIG_SENSORS_LM95241 is not set -# CONFIG_SENSORS_LM95245 is not set -# CONFIG_SENSORS_PC87360 is not set -# CONFIG_SENSORS_PC87427 is not set -# CONFIG_SENSORS_NTC_THERMISTOR is not set -# CONFIG_SENSORS_NCT6683 is not set -# CONFIG_SENSORS_NCT6775 is not set -# CONFIG_SENSORS_NCT7802 is not set -# CONFIG_SENSORS_NCT7904 is not set -# CONFIG_SENSORS_NPCM7XX is not set -# CONFIG_SENSORS_PCF8591 is not set -# CONFIG_PMBUS is not set -# CONFIG_SENSORS_SHT21 is not set -# CONFIG_SENSORS_SHT3x is not set -# CONFIG_SENSORS_SHTC1 is not set -# CONFIG_SENSORS_SIS5595 is not set -# CONFIG_SENSORS_DME1737 is not set -# CONFIG_SENSORS_EMC1403 is not set -# CONFIG_SENSORS_EMC2103 is not set -# CONFIG_SENSORS_EMC6W201 is not set -# CONFIG_SENSORS_SMSC47M1 is not set -# CONFIG_SENSORS_SMSC47M192 is not set -# CONFIG_SENSORS_SMSC47B397 is not set -# CONFIG_SENSORS_SCH5627 is not set -# CONFIG_SENSORS_SCH5636 is not set -# CONFIG_SENSORS_STTS751 is not set -# CONFIG_SENSORS_SMM665 is not set -# CONFIG_SENSORS_ADC128D818 is not set -# CONFIG_SENSORS_ADS7828 is not set -# CONFIG_SENSORS_AMC6821 is not set -# CONFIG_SENSORS_INA209 is not set -# CONFIG_SENSORS_INA2XX is not set -# CONFIG_SENSORS_INA3221 is not set -# CONFIG_SENSORS_TC74 is not set -# CONFIG_SENSORS_THMC50 is not set -# CONFIG_SENSORS_TMP102 is not set -# CONFIG_SENSORS_TMP103 is not set -# CONFIG_SENSORS_TMP108 is not set -# CONFIG_SENSORS_TMP401 is not set -# CONFIG_SENSORS_TMP421 is not set -# CONFIG_SENSORS_TMP513 is not set -# CONFIG_SENSORS_VIA_CPUTEMP is not set -# CONFIG_SENSORS_VIA686A is not set -# CONFIG_SENSORS_VT1211 is not set -# CONFIG_SENSORS_VT8231 is not set -# CONFIG_SENSORS_W83773G is not set -# CONFIG_SENSORS_W83781D is not set -# CONFIG_SENSORS_W83791D is not set -# CONFIG_SENSORS_W83792D is not set -# CONFIG_SENSORS_W83793 is not set -# CONFIG_SENSORS_W83795 is not set -# CONFIG_SENSORS_W83L785TS is not set -# CONFIG_SENSORS_W83L786NG is not set -# CONFIG_SENSORS_W83627HF is not set -# CONFIG_SENSORS_W83627EHF is not set -# CONFIG_SENSORS_XGENE is not set - -# -# ACPI drivers -# -# CONFIG_SENSORS_ACPI_POWER is not set -# CONFIG_SENSORS_ATK0110 is not set -CONFIG_THERMAL=y -# CONFIG_THERMAL_NETLINK is not set -# CONFIG_THERMAL_STATISTICS is not set -CONFIG_THERMAL_EMERGENCY_POWEROFF_DELAY_MS=0 -CONFIG_THERMAL_HWMON=y -CONFIG_THERMAL_WRITABLE_TRIPS=y -CONFIG_THERMAL_DEFAULT_GOV_STEP_WISE=y -# CONFIG_THERMAL_DEFAULT_GOV_FAIR_SHARE is not set -# CONFIG_THERMAL_DEFAULT_GOV_USER_SPACE is not set -# CONFIG_THERMAL_GOV_FAIR_SHARE is not set -CONFIG_THERMAL_GOV_STEP_WISE=y -# CONFIG_THERMAL_GOV_BANG_BANG is not set -CONFIG_THERMAL_GOV_USER_SPACE=y -# CONFIG_THERMAL_EMULATION is not set - -# -# Intel thermal drivers -# -# CONFIG_INTEL_POWERCLAMP is not set -CONFIG_X86_PKG_TEMP_THERMAL=m -# CONFIG_INTEL_SOC_DTS_THERMAL is not set - -# -# ACPI INT340X thermal drivers -# -# CONFIG_INT340X_THERMAL is not set -# end of ACPI INT340X thermal drivers - -# CONFIG_INTEL_PCH_THERMAL is not set -# end of Intel thermal drivers - -CONFIG_WATCHDOG=y -# CONFIG_WATCHDOG_CORE is not set -# CONFIG_WATCHDOG_NOWAYOUT is not set -CONFIG_WATCHDOG_HANDLE_BOOT_ENABLED=y -CONFIG_WATCHDOG_OPEN_TIMEOUT=0 -# CONFIG_WATCHDOG_SYSFS is not set - -# -# Watchdog Pretimeout Governors -# - -# -# Watchdog Device Drivers -# -# CONFIG_SOFT_WATCHDOG is not set -# CONFIG_WDAT_WDT is not set -# CONFIG_XILINX_WATCHDOG is not set -# CONFIG_ZIIRAVE_WATCHDOG is not set -# CONFIG_CADENCE_WATCHDOG is not set -# CONFIG_DW_WATCHDOG is not set -# CONFIG_MAX63XX_WATCHDOG is not set -# CONFIG_ACQUIRE_WDT is not set -# CONFIG_ADVANTECH_WDT is not set -# CONFIG_ALIM1535_WDT is not set -# CONFIG_ALIM7101_WDT is not set -# CONFIG_EBC_C384_WDT is not set -# CONFIG_F71808E_WDT is not set -# CONFIG_SP5100_TCO is not set -# CONFIG_SBC_FITPC2_WATCHDOG is not set -# CONFIG_EUROTECH_WDT is not set -# CONFIG_IB700_WDT is not set -# CONFIG_IBMASR is not set -# CONFIG_WAFER_WDT is not set -# CONFIG_I6300ESB_WDT is not set -# CONFIG_IE6XX_WDT is not set -# CONFIG_ITCO_WDT is not set -# CONFIG_IT8712F_WDT is not set -# CONFIG_IT87_WDT is not set -# CONFIG_HP_WATCHDOG is not set -# CONFIG_SC1200_WDT is not set -# CONFIG_PC87413_WDT is not set -# CONFIG_NV_TCO is not set -# CONFIG_60XX_WDT is not set -# CONFIG_CPU5_WDT is not set -# CONFIG_SMSC_SCH311X_WDT is not set -# CONFIG_SMSC37B787_WDT is not set -# CONFIG_TQMX86_WDT is not set -# CONFIG_VIA_WDT is not set -# CONFIG_W83627HF_WDT is not set -# CONFIG_W83877F_WDT is not set -# CONFIG_W83977F_WDT is not set -# CONFIG_MACHZ_WDT is not set -# CONFIG_SBC_EPX_C3_WATCHDOG is not set -# CONFIG_NI903X_WDT is not set -# CONFIG_NIC7018_WDT is not set - -# -# PCI-based Watchdog Cards -# -# CONFIG_PCIPCWATCHDOG is not set -# CONFIG_WDTPCI is not set - -# -# USB-based Watchdog Cards -# -# CONFIG_USBPCWATCHDOG is not set -CONFIG_SSB_POSSIBLE=y -# CONFIG_SSB is not set -CONFIG_BCMA_POSSIBLE=y -# CONFIG_BCMA is not set - -# -# Multifunction device drivers -# -# CONFIG_MFD_AS3711 is not set -# CONFIG_PMIC_ADP5520 is not set -# CONFIG_MFD_BCM590XX is not set -# CONFIG_MFD_BD9571MWV is not set -# CONFIG_MFD_AXP20X_I2C is not set -# CONFIG_MFD_MADERA is not set -# CONFIG_PMIC_DA903X is not set -# CONFIG_MFD_DA9052_I2C is not set -# CONFIG_MFD_DA9055 is not set -# CONFIG_MFD_DA9062 is not set -# CONFIG_MFD_DA9063 is not set -# CONFIG_MFD_DA9150 is not set -# CONFIG_MFD_DLN2 is not set -# CONFIG_MFD_MC13XXX_I2C is not set -# CONFIG_MFD_MP2629 is not set -# CONFIG_HTC_PASIC3 is not set -# CONFIG_MFD_INTEL_QUARK_I2C_GPIO is not set -# CONFIG_LPC_ICH is not set -# CONFIG_LPC_SCH is not set -# CONFIG_MFD_INTEL_LPSS_ACPI is not set -# CONFIG_MFD_INTEL_LPSS_PCI is not set -# CONFIG_MFD_INTEL_PMC_BXT is not set -# CONFIG_MFD_IQS62X is not set -# CONFIG_MFD_JANZ_CMODIO is not set -# CONFIG_MFD_KEMPLD is not set -# CONFIG_MFD_88PM800 is not set -# CONFIG_MFD_88PM805 is not set -# CONFIG_MFD_88PM860X is not set -# CONFIG_MFD_MAX14577 is not set -# CONFIG_MFD_MAX77693 is not set -# CONFIG_MFD_MAX77843 is not set -# CONFIG_MFD_MAX8907 is not set -# CONFIG_MFD_MAX8925 is not set -# CONFIG_MFD_MAX8997 is not set -# CONFIG_MFD_MAX8998 is not set -# CONFIG_MFD_MT6360 is not set -# CONFIG_MFD_MT6397 is not set -# CONFIG_MFD_MENF21BMC is not set -# CONFIG_MFD_VIPERBOARD is not set -# CONFIG_MFD_RETU is not set -# CONFIG_MFD_PCF50633 is not set -# CONFIG_MFD_RDC321X is not set -# CONFIG_MFD_RT5033 is not set -# CONFIG_MFD_RC5T583 is not set -# CONFIG_MFD_SEC_CORE is not set -# CONFIG_MFD_SI476X_CORE is not set -# CONFIG_MFD_SM501 is not set -# CONFIG_MFD_SKY81452 is not set -# CONFIG_ABX500_CORE is not set -# CONFIG_MFD_SYSCON is not set -# CONFIG_MFD_TI_AM335X_TSCADC is not set -# CONFIG_MFD_LP3943 is not set -# CONFIG_MFD_LP8788 is not set -# CONFIG_MFD_TI_LMU is not set -# CONFIG_MFD_PALMAS is not set -# CONFIG_TPS6105X is not set -# CONFIG_TPS6507X is not set -# CONFIG_MFD_TPS65086 is not set -# CONFIG_MFD_TPS65090 is not set -# CONFIG_MFD_TI_LP873X is not set -# CONFIG_MFD_TPS6586X is not set -# CONFIG_MFD_TPS65912_I2C is not set -# CONFIG_MFD_TPS80031 is not set -# CONFIG_TWL4030_CORE is not set -# CONFIG_TWL6040_CORE is not set -# CONFIG_MFD_WL1273_CORE is not set -# CONFIG_MFD_LM3533 is not set -# CONFIG_MFD_TQMX86 is not set -# CONFIG_MFD_VX855 is not set -# CONFIG_MFD_ARIZONA_I2C is not set -# CONFIG_MFD_WM8400 is not set -# CONFIG_MFD_WM831X_I2C is not set -# CONFIG_MFD_WM8350_I2C is not set -# CONFIG_MFD_WM8994 is not set -# end of Multifunction device drivers - -# CONFIG_REGULATOR is not set -# CONFIG_RC_CORE is not set -# CONFIG_MEDIA_CEC_SUPPORT is not set -# CONFIG_MEDIA_SUPPORT is not set - -# -# Graphics support -# -CONFIG_AGP=y -CONFIG_AGP_AMD64=y -CONFIG_AGP_INTEL=y -# CONFIG_AGP_SIS is not set -# CONFIG_AGP_VIA is not set -CONFIG_INTEL_GTT=y -CONFIG_VGA_ARB=y -CONFIG_VGA_ARB_MAX_GPUS=16 -# CONFIG_VGA_SWITCHEROO is not set -CONFIG_DRM=y -CONFIG_DRM_MIPI_DSI=y -# CONFIG_DRM_DP_AUX_CHARDEV is not set -# CONFIG_DRM_DEBUG_MM is not set -# CONFIG_DRM_DEBUG_SELFTEST is not set -CONFIG_DRM_KMS_HELPER=y -CONFIG_DRM_KMS_FB_HELPER=y -CONFIG_DRM_FBDEV_EMULATION=y -CONFIG_DRM_FBDEV_OVERALLOC=100 -# CONFIG_DRM_LOAD_EDID_FIRMWARE is not set -# CONFIG_DRM_DP_CEC is not set - -# -# I2C encoder or helper chips -# -# CONFIG_DRM_I2C_CH7006 is not set -# CONFIG_DRM_I2C_SIL164 is not set -# CONFIG_DRM_I2C_NXP_TDA998X is not set -# CONFIG_DRM_I2C_NXP_TDA9950 is not set -# end of I2C encoder or helper chips - -# -# ARM devices -# -# end of ARM devices - -# CONFIG_DRM_RADEON is not set -# CONFIG_DRM_AMDGPU is not set -# CONFIG_DRM_NOUVEAU is not set -CONFIG_DRM_I915=y -CONFIG_DRM_I915_FORCE_PROBE="" -CONFIG_DRM_I915_CAPTURE_ERROR=y -CONFIG_DRM_I915_COMPRESS_ERROR=y -CONFIG_DRM_I915_USERPTR=y -# CONFIG_DRM_I915_GVT is not set -CONFIG_DRM_I915_FENCE_TIMEOUT=10000 -CONFIG_DRM_I915_USERFAULT_AUTOSUSPEND=250 -CONFIG_DRM_I915_HEARTBEAT_INTERVAL=2500 -CONFIG_DRM_I915_PREEMPT_TIMEOUT=640 -CONFIG_DRM_I915_MAX_REQUEST_BUSYWAIT=8000 -CONFIG_DRM_I915_STOP_TIMEOUT=100 -CONFIG_DRM_I915_TIMESLICE_DURATION=1 -# CONFIG_DRM_VGEM is not set -# CONFIG_DRM_VKMS is not set -# CONFIG_DRM_VMWGFX is not set -# CONFIG_DRM_GMA500 is not set -# CONFIG_DRM_UDL is not set -# CONFIG_DRM_AST is not set -# CONFIG_DRM_MGAG200 is not set -# CONFIG_DRM_QXL is not set -# CONFIG_DRM_BOCHS is not set -CONFIG_DRM_PANEL=y - -# -# Display Panels -# -# CONFIG_DRM_PANEL_RASPBERRYPI_TOUCHSCREEN is not set -# end of Display Panels - -CONFIG_DRM_BRIDGE=y -CONFIG_DRM_PANEL_BRIDGE=y - -# -# Display Interface Bridges -# -# CONFIG_DRM_ANALOGIX_ANX78XX is not set -# end of Display Interface Bridges - -# CONFIG_DRM_ETNAVIV is not set -# CONFIG_DRM_CIRRUS_QEMU is not set -# CONFIG_DRM_GM12U320 is not set -# CONFIG_DRM_VBOXVIDEO is not set -# CONFIG_DRM_LEGACY is not set -CONFIG_DRM_PANEL_ORIENTATION_QUIRKS=y - -# -# Frame buffer Devices -# -CONFIG_FB_CMDLINE=y -CONFIG_FB_NOTIFY=y -CONFIG_FB=y -# CONFIG_FIRMWARE_EDID is not set -CONFIG_FB_CFB_FILLRECT=y -CONFIG_FB_CFB_COPYAREA=y -CONFIG_FB_CFB_IMAGEBLIT=y -CONFIG_FB_SYS_FILLRECT=y -CONFIG_FB_SYS_COPYAREA=y -CONFIG_FB_SYS_IMAGEBLIT=y -# CONFIG_FB_FOREIGN_ENDIAN is not set -CONFIG_FB_SYS_FOPS=y -CONFIG_FB_DEFERRED_IO=y -CONFIG_FB_MODE_HELPERS=y -CONFIG_FB_TILEBLITTING=y - -# -# Frame buffer hardware drivers -# -# CONFIG_FB_CIRRUS is not set -# CONFIG_FB_PM2 is not set -# CONFIG_FB_CYBER2000 is not set -# CONFIG_FB_ARC is not set -# CONFIG_FB_ASILIANT is not set -# CONFIG_FB_IMSTT is not set -# CONFIG_FB_VGA16 is not set -# CONFIG_FB_UVESA is not set -# CONFIG_FB_VESA is not set -CONFIG_FB_EFI=y -# CONFIG_FB_N411 is not set -# CONFIG_FB_HGA is not set -# CONFIG_FB_OPENCORES is not set -# CONFIG_FB_S1D13XXX is not set -# CONFIG_FB_NVIDIA is not set -# CONFIG_FB_RIVA is not set -# CONFIG_FB_I740 is not set -# CONFIG_FB_LE80578 is not set -# CONFIG_FB_MATROX is not set -# CONFIG_FB_RADEON is not set -# CONFIG_FB_ATY128 is not set -# CONFIG_FB_ATY is not set -# CONFIG_FB_S3 is not set -# CONFIG_FB_SAVAGE is not set -# CONFIG_FB_SIS is not set -# CONFIG_FB_NEOMAGIC is not set -# CONFIG_FB_KYRO is not set -# CONFIG_FB_3DFX is not set -# CONFIG_FB_VOODOO1 is not set -# CONFIG_FB_VT8623 is not set -# CONFIG_FB_TRIDENT is not set -# CONFIG_FB_ARK is not set -# CONFIG_FB_PM3 is not set -# CONFIG_FB_CARMINE is not set -# CONFIG_FB_SMSCUFX is not set -# CONFIG_FB_UDL is not set -# CONFIG_FB_IBM_GXT4500 is not set -# CONFIG_FB_VIRTUAL is not set -# CONFIG_FB_METRONOME is not set -# CONFIG_FB_MB862XX is not set -# CONFIG_FB_SIMPLE is not set -# CONFIG_FB_SM712 is not set -# end of Frame buffer Devices - -# -# Backlight & LCD device support -# -# CONFIG_LCD_CLASS_DEVICE is not set -CONFIG_BACKLIGHT_CLASS_DEVICE=y -# CONFIG_BACKLIGHT_APPLE is not set -# CONFIG_BACKLIGHT_QCOM_WLED is not set -# CONFIG_BACKLIGHT_SAHARA is not set -# CONFIG_BACKLIGHT_ADP8860 is not set -# CONFIG_BACKLIGHT_ADP8870 is not set -# CONFIG_BACKLIGHT_LM3639 is not set -# CONFIG_BACKLIGHT_LV5207LP is not set -# CONFIG_BACKLIGHT_BD6107 is not set -# CONFIG_BACKLIGHT_ARCXCNN is not set -# end of Backlight & LCD device support - -CONFIG_HDMI=y - -# -# Console display driver support -# -CONFIG_VGA_CONSOLE=y -CONFIG_DUMMY_CONSOLE=y -CONFIG_DUMMY_CONSOLE_COLUMNS=80 -CONFIG_DUMMY_CONSOLE_ROWS=25 -CONFIG_FRAMEBUFFER_CONSOLE=y -CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY=y -# CONFIG_FRAMEBUFFER_CONSOLE_ROTATION is not set -# CONFIG_FRAMEBUFFER_CONSOLE_DEFERRED_TAKEOVER is not set -# end of Console display driver support - -CONFIG_LOGO=y -# CONFIG_LOGO_LINUX_MONO is not set -# CONFIG_LOGO_LINUX_VGA16 is not set -CONFIG_LOGO_LINUX_CLUT224=y -# end of Graphics support - -CONFIG_SOUND=y -CONFIG_SND=y -CONFIG_SND_TIMER=y -CONFIG_SND_PCM=y -CONFIG_SND_HWDEP=y -CONFIG_SND_SEQ_DEVICE=y -CONFIG_SND_JACK=y -CONFIG_SND_JACK_INPUT_DEV=y -# CONFIG_SND_OSSEMUL is not set -CONFIG_SND_PCM_TIMER=y -CONFIG_SND_HRTIMER=y -# CONFIG_SND_DYNAMIC_MINORS is not set -CONFIG_SND_SUPPORT_OLD_API=y -CONFIG_SND_PROC_FS=y -CONFIG_SND_VERBOSE_PROCFS=y -# CONFIG_SND_VERBOSE_PRINTK is not set -# CONFIG_SND_DEBUG is not set -CONFIG_SND_VMASTER=y -CONFIG_SND_DMA_SGBUF=y -CONFIG_SND_SEQUENCER=y -CONFIG_SND_SEQ_DUMMY=y -CONFIG_SND_SEQ_HRTIMER_DEFAULT=y -CONFIG_SND_DRIVERS=y -# CONFIG_SND_PCSP is not set -# CONFIG_SND_DUMMY is not set -# CONFIG_SND_ALOOP is not set -# CONFIG_SND_VIRMIDI is not set -# CONFIG_SND_MTPAV is not set -# CONFIG_SND_SERIAL_U16550 is not set -# CONFIG_SND_MPU401 is not set -CONFIG_SND_PCI=y -# CONFIG_SND_AD1889 is not set -# CONFIG_SND_ALS300 is not set -# CONFIG_SND_ALS4000 is not set -# CONFIG_SND_ALI5451 is not set -# CONFIG_SND_ASIHPI is not set -# CONFIG_SND_ATIIXP is not set -# CONFIG_SND_ATIIXP_MODEM is not set -# CONFIG_SND_AU8810 is not set -# CONFIG_SND_AU8820 is not set -# CONFIG_SND_AU8830 is not set -# CONFIG_SND_AW2 is not set -# CONFIG_SND_AZT3328 is not set -# CONFIG_SND_BT87X is not set -# CONFIG_SND_CA0106 is not set -# CONFIG_SND_CMIPCI is not set -# CONFIG_SND_OXYGEN is not set -# CONFIG_SND_CS4281 is not set -# CONFIG_SND_CS46XX is not set -# CONFIG_SND_CTXFI is not set -# CONFIG_SND_DARLA20 is not set -# CONFIG_SND_GINA20 is not set -# CONFIG_SND_LAYLA20 is not set -# CONFIG_SND_DARLA24 is not set -# CONFIG_SND_GINA24 is not set -# CONFIG_SND_LAYLA24 is not set -# CONFIG_SND_MONA is not set -# CONFIG_SND_MIA is not set -# CONFIG_SND_ECHO3G is not set -# CONFIG_SND_INDIGO is not set -# CONFIG_SND_INDIGOIO is not set -# CONFIG_SND_INDIGODJ is not set -# CONFIG_SND_INDIGOIOX is not set -# CONFIG_SND_INDIGODJX is not set -# CONFIG_SND_EMU10K1 is not set -# CONFIG_SND_EMU10K1X is not set -# CONFIG_SND_ENS1370 is not set -# CONFIG_SND_ENS1371 is not set -# CONFIG_SND_ES1938 is not set -# CONFIG_SND_ES1968 is not set -# CONFIG_SND_FM801 is not set -# CONFIG_SND_HDSP is not set -# CONFIG_SND_HDSPM is not set -# CONFIG_SND_ICE1712 is not set -# CONFIG_SND_ICE1724 is not set -# CONFIG_SND_INTEL8X0 is not set -# CONFIG_SND_INTEL8X0M is not set -# CONFIG_SND_KORG1212 is not set -# CONFIG_SND_LOLA is not set -# CONFIG_SND_LX6464ES is not set -# CONFIG_SND_MAESTRO3 is not set -# CONFIG_SND_MIXART is not set -# CONFIG_SND_NM256 is not set -# CONFIG_SND_PCXHR is not set -# CONFIG_SND_RIPTIDE is not set -# CONFIG_SND_RME32 is not set -# CONFIG_SND_RME96 is not set -# CONFIG_SND_RME9652 is not set -# CONFIG_SND_SE6X is not set -# CONFIG_SND_SONICVIBES is not set -# CONFIG_SND_TRIDENT is not set -# CONFIG_SND_VIA82XX is not set -# CONFIG_SND_VIA82XX_MODEM is not set -# CONFIG_SND_VIRTUOSO is not set -# CONFIG_SND_VX222 is not set -# CONFIG_SND_YMFPCI is not set - -# -# HD-Audio -# -CONFIG_SND_HDA=y -CONFIG_SND_HDA_INTEL=y -CONFIG_SND_HDA_HWDEP=y -# CONFIG_SND_HDA_RECONFIG is not set -# CONFIG_SND_HDA_INPUT_BEEP is not set -# CONFIG_SND_HDA_PATCH_LOADER is not set -# CONFIG_SND_HDA_CODEC_REALTEK is not set -# CONFIG_SND_HDA_CODEC_ANALOG is not set -# CONFIG_SND_HDA_CODEC_SIGMATEL is not set -# CONFIG_SND_HDA_CODEC_VIA is not set -# CONFIG_SND_HDA_CODEC_HDMI is not set -# CONFIG_SND_HDA_CODEC_CIRRUS is not set -# CONFIG_SND_HDA_CODEC_CONEXANT is not set -# CONFIG_SND_HDA_CODEC_CA0110 is not set -# CONFIG_SND_HDA_CODEC_CA0132 is not set -# CONFIG_SND_HDA_CODEC_CMEDIA is not set -# CONFIG_SND_HDA_CODEC_SI3054 is not set -# CONFIG_SND_HDA_GENERIC is not set -CONFIG_SND_HDA_POWER_SAVE_DEFAULT=0 -# CONFIG_SND_HDA_INTEL_HDMI_SILENT_STREAM is not set -# end of HD-Audio - -CONFIG_SND_HDA_CORE=y -CONFIG_SND_HDA_COMPONENT=y -CONFIG_SND_HDA_I915=y -CONFIG_SND_HDA_PREALLOC_SIZE=2048 -CONFIG_SND_INTEL_NHLT=y -CONFIG_SND_INTEL_DSP_CONFIG=y -CONFIG_SND_USB=y -# CONFIG_SND_USB_AUDIO is not set -# CONFIG_SND_USB_UA101 is not set -# CONFIG_SND_USB_USX2Y is not set -# CONFIG_SND_USB_CAIAQ is not set -# CONFIG_SND_USB_US122L is not set -# CONFIG_SND_USB_6FIRE is not set -# CONFIG_SND_USB_HIFACE is not set -# CONFIG_SND_BCD2000 is not set -# CONFIG_SND_USB_POD is not set -# CONFIG_SND_USB_PODHD is not set -# CONFIG_SND_USB_TONEPORT is not set -# CONFIG_SND_USB_VARIAX is not set -CONFIG_SND_PCMCIA=y -# CONFIG_SND_VXPOCKET is not set -# CONFIG_SND_PDAUDIOCF is not set -# CONFIG_SND_SOC is not set -CONFIG_SND_X86=y -# CONFIG_HDMI_LPE_AUDIO is not set - -# -# HID support -# -CONFIG_HID=y -# CONFIG_HID_BATTERY_STRENGTH is not set -CONFIG_HIDRAW=y -# CONFIG_UHID is not set -CONFIG_HID_GENERIC=y - -# -# Special HID drivers -# -CONFIG_HID_A4TECH=y -# CONFIG_HID_ACCUTOUCH is not set -# CONFIG_HID_ACRUX is not set -CONFIG_HID_APPLE=y -# CONFIG_HID_APPLEIR is not set -# CONFIG_HID_ASUS is not set -# CONFIG_HID_AUREAL is not set -CONFIG_HID_BELKIN=y -# CONFIG_HID_BETOP_FF is not set -# CONFIG_HID_BIGBEN_FF is not set -CONFIG_HID_CHERRY=y -CONFIG_HID_CHICONY=y -# CONFIG_HID_CORSAIR is not set -# CONFIG_HID_COUGAR is not set -# CONFIG_HID_MACALLY is not set -# CONFIG_HID_PRODIKEYS is not set -# CONFIG_HID_CMEDIA is not set -# CONFIG_HID_CREATIVE_SB0540 is not set -CONFIG_HID_CYPRESS=y -# CONFIG_HID_DRAGONRISE is not set -# CONFIG_HID_EMS_FF is not set -# CONFIG_HID_ELAN is not set -# CONFIG_HID_ELECOM is not set -# CONFIG_HID_ELO is not set -CONFIG_HID_EZKEY=y -# CONFIG_HID_GEMBIRD is not set -# CONFIG_HID_GFRM is not set -# CONFIG_HID_GLORIOUS is not set -# CONFIG_HID_HOLTEK is not set -# CONFIG_HID_VIVALDI is not set -# CONFIG_HID_GT683R is not set -# CONFIG_HID_KEYTOUCH is not set -# CONFIG_HID_KYE is not set -# CONFIG_HID_UCLOGIC is not set -# CONFIG_HID_WALTOP is not set -# CONFIG_HID_VIEWSONIC is not set -CONFIG_HID_GYRATION=y -# CONFIG_HID_ICADE is not set -CONFIG_HID_ITE=y -# CONFIG_HID_JABRA is not set -# CONFIG_HID_TWINHAN is not set -CONFIG_HID_KENSINGTON=y -# CONFIG_HID_LCPOWER is not set -# CONFIG_HID_LED is not set -# CONFIG_HID_LENOVO is not set -CONFIG_HID_LOGITECH=y -# CONFIG_HID_LOGITECH_DJ is not set -# CONFIG_HID_LOGITECH_HIDPP is not set -CONFIG_LOGITECH_FF=y -# CONFIG_LOGIRUMBLEPAD2_FF is not set -# CONFIG_LOGIG940_FF is not set -CONFIG_LOGIWHEELS_FF=y -# CONFIG_HID_MAGICMOUSE is not set -# CONFIG_HID_MALTRON is not set -# CONFIG_HID_MAYFLASH is not set -CONFIG_HID_REDRAGON=y -CONFIG_HID_MICROSOFT=y -CONFIG_HID_MONTEREY=y -# CONFIG_HID_MULTITOUCH is not set -# CONFIG_HID_NTI is not set -CONFIG_HID_NTRIG=y -# CONFIG_HID_ORTEK is not set -CONFIG_HID_PANTHERLORD=y -CONFIG_PANTHERLORD_FF=y -# CONFIG_HID_PENMOUNT is not set -CONFIG_HID_PETALYNX=y -# CONFIG_HID_PICOLCD is not set -# CONFIG_HID_PLANTRONICS is not set -# CONFIG_HID_PRIMAX is not set -# CONFIG_HID_RETRODE is not set -# CONFIG_HID_ROCCAT is not set -# CONFIG_HID_SAITEK is not set -CONFIG_HID_SAMSUNG=y -CONFIG_HID_SONY=y -# CONFIG_SONY_FF is not set -# CONFIG_HID_SPEEDLINK is not set -# CONFIG_HID_STEAM is not set -# CONFIG_HID_STEELSERIES is not set -CONFIG_HID_SUNPLUS=y -# CONFIG_HID_RMI is not set -# CONFIG_HID_GREENASIA is not set -# CONFIG_HID_SMARTJOYPLUS is not set -# CONFIG_HID_TIVO is not set -CONFIG_HID_TOPSEED=y -# CONFIG_HID_THINGM is not set -# CONFIG_HID_THRUSTMASTER is not set -# CONFIG_HID_UDRAW_PS3 is not set -# CONFIG_HID_U2FZERO is not set -# CONFIG_HID_WACOM is not set -# CONFIG_HID_WIIMOTE is not set -# CONFIG_HID_XINMO is not set -# CONFIG_HID_ZEROPLUS is not set -# CONFIG_HID_ZYDACRON is not set -# CONFIG_HID_SENSOR_HUB is not set -# CONFIG_HID_ALPS is not set -# end of Special HID drivers - -# -# USB HID support -# -CONFIG_USB_HID=y -CONFIG_HID_PID=y -CONFIG_USB_HIDDEV=y -# end of USB HID support - -# -# I2C HID support -# -# CONFIG_I2C_HID is not set -# end of I2C HID support - -# -# Intel ISH HID support -# -# CONFIG_INTEL_ISH_HID is not set -# end of Intel ISH HID support -# end of HID support - -CONFIG_USB_OHCI_LITTLE_ENDIAN=y -CONFIG_USB_SUPPORT=y -CONFIG_USB_COMMON=y -# CONFIG_USB_LED_TRIG is not set -# CONFIG_USB_ULPI_BUS is not set -CONFIG_USB_ARCH_HAS_HCD=y -CONFIG_USB=y -CONFIG_USB_PCI=y -CONFIG_USB_ANNOUNCE_NEW_DEVICES=y - -# -# Miscellaneous USB options -# -CONFIG_USB_DEFAULT_PERSIST=y -# CONFIG_USB_FEW_INIT_RETRIES is not set -# CONFIG_USB_DYNAMIC_MINORS is not set -# CONFIG_USB_OTG is not set -# CONFIG_USB_OTG_PRODUCTLIST is not set -# CONFIG_USB_LEDS_TRIGGER_USBPORT is not set -CONFIG_USB_AUTOSUSPEND_DELAY=2 -CONFIG_USB_MON=y - -# -# USB Host Controller Drivers -# -# CONFIG_USB_C67X00_HCD is not set -CONFIG_USB_XHCI_HCD=y -# CONFIG_USB_XHCI_DBGCAP is not set -CONFIG_USB_XHCI_PCI=y -# CONFIG_USB_XHCI_PCI_RENESAS is not set -# CONFIG_USB_XHCI_PLATFORM is not set -CONFIG_USB_EHCI_HCD=y -# CONFIG_USB_EHCI_ROOT_HUB_TT is not set -CONFIG_USB_EHCI_TT_NEWSCHED=y -CONFIG_USB_EHCI_PCI=y -# CONFIG_USB_EHCI_FSL is not set -# CONFIG_USB_EHCI_HCD_PLATFORM is not set -# CONFIG_USB_OXU210HP_HCD is not set -# CONFIG_USB_ISP116X_HCD is not set -# CONFIG_USB_FOTG210_HCD is not set -CONFIG_USB_OHCI_HCD=y -CONFIG_USB_OHCI_HCD_PCI=y -# CONFIG_USB_OHCI_HCD_PLATFORM is not set -CONFIG_USB_UHCI_HCD=y -# CONFIG_USB_SL811_HCD is not set -# CONFIG_USB_R8A66597_HCD is not set -# CONFIG_USB_HCD_TEST_MODE is not set - -# -# USB Device Class drivers -# -# CONFIG_USB_ACM is not set -CONFIG_USB_PRINTER=y -# CONFIG_USB_WDM is not set -# CONFIG_USB_TMC is not set - -# -# NOTE: USB_STORAGE depends on SCSI but BLK_DEV_SD may -# - -# -# also be needed; see USB_STORAGE Help for more info -# -CONFIG_USB_STORAGE=y -# CONFIG_USB_STORAGE_DEBUG is not set -# CONFIG_USB_STORAGE_REALTEK is not set -# CONFIG_USB_STORAGE_DATAFAB is not set -# CONFIG_USB_STORAGE_FREECOM is not set -# CONFIG_USB_STORAGE_ISD200 is not set -# CONFIG_USB_STORAGE_USBAT is not set -# CONFIG_USB_STORAGE_SDDR09 is not set -# CONFIG_USB_STORAGE_SDDR55 is not set -# CONFIG_USB_STORAGE_JUMPSHOT is not set -# CONFIG_USB_STORAGE_ALAUDA is not set -# CONFIG_USB_STORAGE_ONETOUCH is not set -# CONFIG_USB_STORAGE_KARMA is not set -# CONFIG_USB_STORAGE_CYPRESS_ATACB is not set -# CONFIG_USB_STORAGE_ENE_UB6250 is not set -# CONFIG_USB_UAS is not set - -# -# USB Imaging devices -# -# CONFIG_USB_MDC800 is not set -# CONFIG_USB_MICROTEK is not set -# CONFIG_USBIP_CORE is not set -# CONFIG_USB_CDNS3 is not set -# CONFIG_USB_MUSB_HDRC is not set -# CONFIG_USB_DWC3 is not set -# CONFIG_USB_DWC2 is not set -# CONFIG_USB_CHIPIDEA is not set -# CONFIG_USB_ISP1760 is not set - -# -# USB port drivers -# -# CONFIG_USB_SERIAL is not set - -# -# USB Miscellaneous drivers -# -# CONFIG_USB_EMI62 is not set -# CONFIG_USB_EMI26 is not set -# CONFIG_USB_ADUTUX is not set -# CONFIG_USB_SEVSEG is not set -# CONFIG_USB_LEGOTOWER is not set -# CONFIG_USB_LCD is not set -# CONFIG_USB_CYPRESS_CY7C63 is not set -# CONFIG_USB_CYTHERM is not set -# CONFIG_USB_IDMOUSE is not set -# CONFIG_USB_FTDI_ELAN is not set -# CONFIG_USB_APPLEDISPLAY is not set -# CONFIG_APPLE_MFI_FASTCHARGE is not set -# CONFIG_USB_SISUSBVGA is not set -# CONFIG_USB_LD is not set -# CONFIG_USB_TRANCEVIBRATOR is not set -# CONFIG_USB_IOWARRIOR is not set -# CONFIG_USB_TEST is not set -# CONFIG_USB_EHSET_TEST_FIXTURE is not set -# CONFIG_USB_ISIGHTFW is not set -# CONFIG_USB_YUREX is not set -# CONFIG_USB_EZUSB_FX2 is not set -# CONFIG_USB_HUB_USB251XB is not set -# CONFIG_USB_HSIC_USB3503 is not set -# CONFIG_USB_HSIC_USB4604 is not set -# CONFIG_USB_LINK_LAYER_TEST is not set -# CONFIG_USB_CHAOSKEY is not set - -# -# USB Physical Layer drivers -# -# CONFIG_NOP_USB_XCEIV is not set -# CONFIG_USB_ISP1301 is not set -# end of USB Physical Layer drivers - -# CONFIG_USB_GADGET is not set -# CONFIG_TYPEC is not set -# CONFIG_USB_ROLE_SWITCH is not set -# CONFIG_MMC is not set -# CONFIG_MEMSTICK is not set -CONFIG_NEW_LEDS=y -CONFIG_LEDS_CLASS=y -# CONFIG_LEDS_CLASS_FLASH is not set -# CONFIG_LEDS_CLASS_MULTICOLOR is not set -# CONFIG_LEDS_BRIGHTNESS_HW_CHANGED is not set - -# -# LED drivers -# -# CONFIG_LEDS_APU is not set -# CONFIG_LEDS_LM3530 is not set -# CONFIG_LEDS_LM3532 is not set -# CONFIG_LEDS_LM3642 is not set -# CONFIG_LEDS_PCA9532 is not set -# CONFIG_LEDS_LP3944 is not set -# CONFIG_LEDS_CLEVO_MAIL is not set -# CONFIG_LEDS_PCA955X is not set -# CONFIG_LEDS_PCA963X is not set -# CONFIG_LEDS_BD2802 is not set -# CONFIG_LEDS_INTEL_SS4200 is not set -# CONFIG_LEDS_TCA6507 is not set -# CONFIG_LEDS_TLC591XX is not set -# CONFIG_LEDS_LM355x is not set - -# -# LED driver for blink(1) USB RGB LED is under Special HID drivers (HID_THINGM) -# -# CONFIG_LEDS_BLINKM is not set -# CONFIG_LEDS_MLXCPLD is not set -# CONFIG_LEDS_MLXREG is not set -# CONFIG_LEDS_USER is not set -# CONFIG_LEDS_NIC78BX is not set -# CONFIG_LEDS_TI_LMU_COMMON is not set - -# -# LED Triggers -# -CONFIG_LEDS_TRIGGERS=y -# CONFIG_LEDS_TRIGGER_TIMER is not set -# CONFIG_LEDS_TRIGGER_ONESHOT is not set -# CONFIG_LEDS_TRIGGER_DISK is not set -# CONFIG_LEDS_TRIGGER_HEARTBEAT is not set -# CONFIG_LEDS_TRIGGER_BACKLIGHT is not set -# CONFIG_LEDS_TRIGGER_CPU is not set -# CONFIG_LEDS_TRIGGER_ACTIVITY is not set -# CONFIG_LEDS_TRIGGER_DEFAULT_ON is not set - -# -# iptables trigger is under Netfilter config (LED target) -# -# CONFIG_LEDS_TRIGGER_TRANSIENT is not set -# CONFIG_LEDS_TRIGGER_CAMERA is not set -# CONFIG_LEDS_TRIGGER_PANIC is not set -# CONFIG_LEDS_TRIGGER_NETDEV is not set -# CONFIG_LEDS_TRIGGER_PATTERN is not set -# CONFIG_LEDS_TRIGGER_AUDIO is not set -# CONFIG_ACCESSIBILITY is not set -# CONFIG_INFINIBAND is not set -CONFIG_EDAC_ATOMIC_SCRUB=y -CONFIG_EDAC_SUPPORT=y -CONFIG_RTC_LIB=y -CONFIG_RTC_MC146818_LIB=y -CONFIG_RTC_CLASS=y -# CONFIG_RTC_HCTOSYS is not set -CONFIG_RTC_SYSTOHC=y -CONFIG_RTC_SYSTOHC_DEVICE="rtc0" -# CONFIG_RTC_DEBUG is not set -CONFIG_RTC_NVMEM=y - -# -# RTC interfaces -# -CONFIG_RTC_INTF_SYSFS=y -CONFIG_RTC_INTF_PROC=y -CONFIG_RTC_INTF_DEV=y -# CONFIG_RTC_INTF_DEV_UIE_EMUL is not set -# CONFIG_RTC_DRV_TEST is not set - -# -# I2C RTC drivers -# -# CONFIG_RTC_DRV_ABB5ZES3 is not set -# CONFIG_RTC_DRV_ABEOZ9 is not set -# CONFIG_RTC_DRV_ABX80X is not set -# CONFIG_RTC_DRV_DS1307 is not set -# CONFIG_RTC_DRV_DS1374 is not set -# CONFIG_RTC_DRV_DS1672 is not set -# CONFIG_RTC_DRV_MAX6900 is not set -# CONFIG_RTC_DRV_RS5C372 is not set -# CONFIG_RTC_DRV_ISL1208 is not set -# CONFIG_RTC_DRV_ISL12022 is not set -# CONFIG_RTC_DRV_X1205 is not set -# CONFIG_RTC_DRV_PCF8523 is not set -# CONFIG_RTC_DRV_PCF85063 is not set -# CONFIG_RTC_DRV_PCF85363 is not set -# CONFIG_RTC_DRV_PCF8563 is not set -# CONFIG_RTC_DRV_PCF8583 is not set -# CONFIG_RTC_DRV_M41T80 is not set -# CONFIG_RTC_DRV_BQ32K is not set -# CONFIG_RTC_DRV_S35390A is not set -# CONFIG_RTC_DRV_FM3130 is not set -# CONFIG_RTC_DRV_RX8010 is not set -# CONFIG_RTC_DRV_RX8581 is not set -# CONFIG_RTC_DRV_RX8025 is not set -# CONFIG_RTC_DRV_EM3027 is not set -# CONFIG_RTC_DRV_RV3028 is not set -# CONFIG_RTC_DRV_RV3032 is not set -# CONFIG_RTC_DRV_RV8803 is not set -# CONFIG_RTC_DRV_SD3078 is not set - -# -# SPI RTC drivers -# -CONFIG_RTC_I2C_AND_SPI=y - -# -# SPI and I2C RTC drivers -# -# CONFIG_RTC_DRV_DS3232 is not set -# CONFIG_RTC_DRV_PCF2127 is not set -# CONFIG_RTC_DRV_RV3029C2 is not set - -# -# Platform RTC drivers -# -CONFIG_RTC_DRV_CMOS=y -# CONFIG_RTC_DRV_DS1286 is not set -# CONFIG_RTC_DRV_DS1511 is not set -# CONFIG_RTC_DRV_DS1553 is not set -# CONFIG_RTC_DRV_DS1685_FAMILY is not set -# CONFIG_RTC_DRV_DS1742 is not set -# CONFIG_RTC_DRV_DS2404 is not set -# CONFIG_RTC_DRV_STK17TA8 is not set -# CONFIG_RTC_DRV_M48T86 is not set -# CONFIG_RTC_DRV_M48T35 is not set -# CONFIG_RTC_DRV_M48T59 is not set -# CONFIG_RTC_DRV_MSM6242 is not set -# CONFIG_RTC_DRV_BQ4802 is not set -# CONFIG_RTC_DRV_RP5C01 is not set -# CONFIG_RTC_DRV_V3020 is not set - -# -# on-CPU RTC drivers -# -# CONFIG_RTC_DRV_FTRTC010 is not set - -# -# HID Sensor RTC drivers -# -CONFIG_DMADEVICES=y -# CONFIG_DMADEVICES_DEBUG is not set - -# -# DMA Devices -# -CONFIG_DMA_ENGINE=y -CONFIG_DMA_VIRTUAL_CHANNELS=y -CONFIG_DMA_ACPI=y -# CONFIG_ALTERA_MSGDMA is not set -# CONFIG_INTEL_IDMA64 is not set -# CONFIG_INTEL_IDXD is not set -# CONFIG_INTEL_IOATDMA is not set -# CONFIG_PLX_DMA is not set -# CONFIG_XILINX_ZYNQMP_DPDMA is not set -# CONFIG_QCOM_HIDMA_MGMT is not set -# CONFIG_QCOM_HIDMA is not set -CONFIG_DW_DMAC_CORE=y -# CONFIG_DW_DMAC is not set -# CONFIG_DW_DMAC_PCI is not set -# CONFIG_DW_EDMA is not set -# CONFIG_DW_EDMA_PCIE is not set -CONFIG_HSU_DMA=y -# CONFIG_SF_PDMA is not set - -# -# DMA Clients -# -# CONFIG_ASYNC_TX_DMA is not set -# CONFIG_DMATEST is not set - -# -# DMABUF options -# -CONFIG_SYNC_FILE=y -# CONFIG_SW_SYNC is not set -# CONFIG_UDMABUF is not set -# CONFIG_DMABUF_MOVE_NOTIFY is not set -# CONFIG_DMABUF_SELFTESTS is not set -# CONFIG_DMABUF_HEAPS is not set -# end of DMABUF options - -# CONFIG_AUXDISPLAY is not set -# CONFIG_UIO is not set -# CONFIG_VFIO is not set -# CONFIG_VIRT_DRIVERS is not set -CONFIG_VIRTIO_MENU=y -# CONFIG_VIRTIO_PCI is not set -# CONFIG_VIRTIO_MMIO is not set -# CONFIG_VDPA is not set -CONFIG_VHOST_MENU=y -# CONFIG_VHOST_NET is not set -# CONFIG_VHOST_CROSS_ENDIAN_LEGACY is not set - -# -# Microsoft Hyper-V guest support -# -# end of Microsoft Hyper-V guest support - -# CONFIG_GREYBUS is not set -# CONFIG_STAGING is not set -CONFIG_X86_PLATFORM_DEVICES=y -# CONFIG_ACPI_WMI is not set -# CONFIG_ACERHDF is not set -# CONFIG_ACER_WIRELESS is not set -# CONFIG_APPLE_GMUX is not set -# CONFIG_ASUS_LAPTOP is not set -# CONFIG_ASUS_WIRELESS is not set -CONFIG_EEEPC_LAPTOP=y -# CONFIG_DCDBAS is not set -# CONFIG_DELL_SMBIOS is not set -# CONFIG_DELL_RBTN is not set -# CONFIG_DELL_RBU is not set -# CONFIG_DELL_SMO8800 is not set -# CONFIG_AMILO_RFKILL is not set -# CONFIG_FUJITSU_LAPTOP is not set -# CONFIG_FUJITSU_TABLET is not set -# CONFIG_GPD_POCKET_FAN is not set -# CONFIG_HP_ACCEL is not set -# CONFIG_HP_WIRELESS is not set -# CONFIG_IBM_RTL is not set -# CONFIG_IDEAPAD_LAPTOP is not set -# CONFIG_SENSORS_HDAPS is not set -# CONFIG_THINKPAD_ACPI is not set -# CONFIG_INTEL_ATOMISP2_PM is not set -# CONFIG_INTEL_HID_EVENT is not set -# CONFIG_INTEL_MENLOW is not set -# CONFIG_INTEL_OAKTRAIL is not set -# CONFIG_INTEL_VBTN is not set -# CONFIG_SURFACE_3_POWER_OPREGION is not set -# CONFIG_SURFACE_PRO3_BUTTON is not set -# CONFIG_MSI_LAPTOP is not set -# CONFIG_SAMSUNG_LAPTOP is not set -# CONFIG_SAMSUNG_Q10 is not set -# CONFIG_TOSHIBA_BT_RFKILL is not set -# CONFIG_TOSHIBA_HAPS is not set -# CONFIG_ACPI_CMPC is not set -# CONFIG_COMPAL_LAPTOP is not set -# CONFIG_PANASONIC_LAPTOP is not set -# CONFIG_SONY_LAPTOP is not set -# CONFIG_SYSTEM76_ACPI is not set -# CONFIG_TOPSTAR_LAPTOP is not set -# CONFIG_I2C_MULTI_INSTANTIATE is not set -# CONFIG_MLX_PLATFORM is not set -# CONFIG_INTEL_IPS is not set -# CONFIG_INTEL_RST is not set -# CONFIG_INTEL_SMARTCONNECT is not set - -# -# Intel Speed Select Technology interface support -# -# CONFIG_INTEL_SPEED_SELECT_INTERFACE is not set -# end of Intel Speed Select Technology interface support - -# CONFIG_INTEL_TURBO_MAX_3 is not set -# CONFIG_INTEL_UNCORE_FREQ_CONTROL is not set -# CONFIG_INTEL_PMC_CORE is not set -# CONFIG_INTEL_PUNIT_IPC is not set -# CONFIG_INTEL_SCU_PCI is not set -# CONFIG_INTEL_SCU_PLATFORM is not set -CONFIG_PMC_ATOM=y -# CONFIG_CHROME_PLATFORMS is not set -# CONFIG_MELLANOX_PLATFORM is not set -CONFIG_HAVE_CLK=y -CONFIG_CLKDEV_LOOKUP=y -CONFIG_HAVE_CLK_PREPARE=y -CONFIG_COMMON_CLK=y -# CONFIG_COMMON_CLK_MAX9485 is not set -# CONFIG_COMMON_CLK_SI5341 is not set -# CONFIG_COMMON_CLK_SI5351 is not set -# CONFIG_COMMON_CLK_SI544 is not set -# CONFIG_COMMON_CLK_CDCE706 is not set -# CONFIG_COMMON_CLK_CS2000_CP is not set -# CONFIG_HWSPINLOCK is not set - -# -# Clock Source drivers -# -CONFIG_CLKEVT_I8253=y -CONFIG_I8253_LOCK=y -CONFIG_CLKBLD_I8253=y -# end of Clock Source drivers - -CONFIG_MAILBOX=y -CONFIG_PCC=y -# CONFIG_ALTERA_MBOX is not set -CONFIG_IOMMU_IOVA=y -CONFIG_IOASID=y -CONFIG_IOMMU_API=y -CONFIG_IOMMU_SUPPORT=y - -# -# Generic IOMMU Pagetable Support -# -# end of Generic IOMMU Pagetable Support - -# CONFIG_IOMMU_DEBUGFS is not set -# CONFIG_IOMMU_DEFAULT_PASSTHROUGH is not set -CONFIG_IOMMU_DMA=y -CONFIG_AMD_IOMMU=y -# CONFIG_AMD_IOMMU_V2 is not set -CONFIG_DMAR_TABLE=y -CONFIG_INTEL_IOMMU=y -# CONFIG_INTEL_IOMMU_SVM is not set -# CONFIG_INTEL_IOMMU_DEFAULT_ON is not set -CONFIG_INTEL_IOMMU_FLOPPY_WA=y -# CONFIG_INTEL_IOMMU_SCALABLE_MODE_DEFAULT_ON is not set -# CONFIG_IRQ_REMAP is not set - -# -# Remoteproc drivers -# -# CONFIG_REMOTEPROC is not set -# end of Remoteproc drivers - -# -# Rpmsg drivers -# -# CONFIG_RPMSG_QCOM_GLINK_RPM is not set -# CONFIG_RPMSG_VIRTIO is not set -# end of Rpmsg drivers - -# CONFIG_SOUNDWIRE is not set - -# -# SOC (System On Chip) specific Drivers -# - -# -# Amlogic SoC drivers -# -# end of Amlogic SoC drivers - -# -# Aspeed SoC drivers -# -# end of Aspeed SoC drivers - -# -# Broadcom SoC drivers -# -# end of Broadcom SoC drivers - -# -# NXP/Freescale QorIQ SoC drivers -# -# end of NXP/Freescale QorIQ SoC drivers - -# -# i.MX SoC drivers -# -# end of i.MX SoC drivers - -# -# Qualcomm SoC drivers -# -# end of Qualcomm SoC drivers - -# CONFIG_SOC_TI is not set - -# -# Xilinx SoC drivers -# -# CONFIG_XILINX_VCU is not set -# end of Xilinx SoC drivers -# end of SOC (System On Chip) specific Drivers - -# CONFIG_PM_DEVFREQ is not set -# CONFIG_EXTCON is not set -# CONFIG_MEMORY is not set -# CONFIG_IIO is not set -# CONFIG_NTB is not set -# CONFIG_VME_BUS is not set -# CONFIG_PWM is not set - -# -# IRQ chip support -# -# end of IRQ chip support - -# CONFIG_IPACK_BUS is not set -# CONFIG_RESET_CONTROLLER is not set - -# -# PHY Subsystem -# -# CONFIG_GENERIC_PHY is not set -# CONFIG_USB_LGM_PHY is not set -# CONFIG_BCM_KONA_USB2_PHY is not set -# CONFIG_PHY_PXA_28NM_HSIC is not set -# CONFIG_PHY_PXA_28NM_USB2 is not set -# CONFIG_PHY_INTEL_LGM_EMMC is not set -# end of PHY Subsystem - -# CONFIG_POWERCAP is not set -# CONFIG_MCB is not set - -# -# Performance monitor support -# -# end of Performance monitor support - -# CONFIG_RAS is not set -# CONFIG_USB4 is not set - -# -# Android -# -# CONFIG_ANDROID is not set -# end of Android - -# CONFIG_LIBNVDIMM is not set -# CONFIG_DAX is not set -CONFIG_NVMEM=y -CONFIG_NVMEM_SYSFS=y - -# -# HW tracing support -# -# CONFIG_STM is not set -# CONFIG_INTEL_TH is not set -# end of HW tracing support - -# CONFIG_FPGA is not set -# CONFIG_TEE is not set -# CONFIG_UNISYS_VISORBUS is not set -# CONFIG_SIOX is not set -# CONFIG_SLIMBUS is not set -# CONFIG_INTERCONNECT is not set -# CONFIG_COUNTER is not set -# end of Device Drivers - -# -# File systems -# -CONFIG_DCACHE_WORD_ACCESS=y -# CONFIG_VALIDATE_FS_PARSER is not set -CONFIG_FS_IOMAP=y -# CONFIG_EXT2_FS is not set -# CONFIG_EXT3_FS is not set -CONFIG_EXT4_FS=y -CONFIG_EXT4_USE_FOR_EXT2=y -CONFIG_EXT4_FS_POSIX_ACL=y -CONFIG_EXT4_FS_SECURITY=y -# CONFIG_EXT4_DEBUG is not set -CONFIG_JBD2=y -# CONFIG_JBD2_DEBUG is not set -CONFIG_FS_MBCACHE=y -# CONFIG_REISERFS_FS is not set -# CONFIG_JFS_FS is not set -# CONFIG_XFS_FS is not set -# CONFIG_GFS2_FS is not set -# CONFIG_BTRFS_FS is not set -# CONFIG_NILFS2_FS is not set -# CONFIG_F2FS_FS is not set -# CONFIG_FS_DAX is not set -CONFIG_FS_POSIX_ACL=y -CONFIG_EXPORTFS=y -# CONFIG_EXPORTFS_BLOCK_OPS is not set -CONFIG_FILE_LOCKING=y -CONFIG_MANDATORY_FILE_LOCKING=y -# CONFIG_FS_ENCRYPTION is not set -# CONFIG_FS_VERITY is not set -CONFIG_FSNOTIFY=y -CONFIG_DNOTIFY=y -CONFIG_INOTIFY_USER=y -# CONFIG_FANOTIFY is not set -CONFIG_QUOTA=y -CONFIG_QUOTA_NETLINK_INTERFACE=y -# CONFIG_PRINT_QUOTA_WARNING is not set -# CONFIG_QUOTA_DEBUG is not set -CONFIG_QUOTA_TREE=y -# CONFIG_QFMT_V1 is not set -CONFIG_QFMT_V2=y -CONFIG_QUOTACTL=y -CONFIG_AUTOFS4_FS=y -CONFIG_AUTOFS_FS=y -# CONFIG_FUSE_FS is not set -# CONFIG_OVERLAY_FS is not set - -# -# Caches -# -# CONFIG_FSCACHE is not set -# end of Caches - -# -# CD-ROM/DVD Filesystems -# -CONFIG_ISO9660_FS=y -CONFIG_JOLIET=y -CONFIG_ZISOFS=y -# CONFIG_UDF_FS is not set -# end of CD-ROM/DVD Filesystems - -# -# DOS/FAT/EXFAT/NT Filesystems -# -CONFIG_FAT_FS=y -CONFIG_MSDOS_FS=y -CONFIG_VFAT_FS=y -CONFIG_FAT_DEFAULT_CODEPAGE=437 -CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1" -# CONFIG_FAT_DEFAULT_UTF8 is not set -# CONFIG_EXFAT_FS is not set -# CONFIG_NTFS_FS is not set -# end of DOS/FAT/EXFAT/NT Filesystems - -# -# Pseudo filesystems -# -CONFIG_PROC_FS=y -CONFIG_PROC_KCORE=y -CONFIG_PROC_VMCORE=y -# CONFIG_PROC_VMCORE_DEVICE_DUMP is not set -CONFIG_PROC_SYSCTL=y -CONFIG_PROC_PAGE_MONITOR=y -# CONFIG_PROC_CHILDREN is not set -CONFIG_PROC_PID_ARCH_STATUS=y -CONFIG_KERNFS=y -CONFIG_SYSFS=y -CONFIG_TMPFS=y -CONFIG_TMPFS_POSIX_ACL=y -CONFIG_TMPFS_XATTR=y -# CONFIG_TMPFS_INODE64 is not set -CONFIG_HUGETLBFS=y -CONFIG_HUGETLB_PAGE=y -CONFIG_MEMFD_CREATE=y -CONFIG_ARCH_HAS_GIGANTIC_PAGE=y -# CONFIG_CONFIGFS_FS is not set -CONFIG_EFIVAR_FS=m -# end of Pseudo filesystems - -CONFIG_MISC_FILESYSTEMS=y -# CONFIG_ORANGEFS_FS is not set -# CONFIG_ADFS_FS is not set -# CONFIG_AFFS_FS is not set -# CONFIG_ECRYPT_FS is not set -# CONFIG_HFS_FS is not set -# CONFIG_HFSPLUS_FS is not set -# CONFIG_BEFS_FS is not set -# CONFIG_BFS_FS is not set -# CONFIG_EFS_FS is not set -# CONFIG_CRAMFS is not set -# CONFIG_SQUASHFS is not set -# CONFIG_VXFS_FS is not set -# CONFIG_MINIX_FS is not set -# CONFIG_OMFS_FS is not set -# CONFIG_HPFS_FS is not set -# CONFIG_QNX4FS_FS is not set -# CONFIG_QNX6FS_FS is not set -# CONFIG_ROMFS_FS is not set -# CONFIG_PSTORE is not set -# CONFIG_SYSV_FS is not set -# CONFIG_UFS_FS is not set -# CONFIG_EROFS_FS is not set -CONFIG_NETWORK_FILESYSTEMS=y -CONFIG_NFS_FS=y -CONFIG_NFS_V2=y -CONFIG_NFS_V3=y -CONFIG_NFS_V3_ACL=y -CONFIG_NFS_V4=y -# CONFIG_NFS_SWAP is not set -# CONFIG_NFS_V4_1 is not set -CONFIG_ROOT_NFS=y -# CONFIG_NFS_USE_LEGACY_DNS is not set -CONFIG_NFS_USE_KERNEL_DNS=y -CONFIG_NFS_DISABLE_UDP_SUPPORT=y -# CONFIG_NFSD is not set -CONFIG_GRACE_PERIOD=y -CONFIG_LOCKD=y -CONFIG_LOCKD_V4=y -CONFIG_NFS_ACL_SUPPORT=y -CONFIG_NFS_COMMON=y -CONFIG_SUNRPC=y -CONFIG_SUNRPC_GSS=y -# CONFIG_SUNRPC_DEBUG is not set -# CONFIG_CEPH_FS is not set -# CONFIG_CIFS is not set -# CONFIG_CODA_FS is not set -# CONFIG_AFS_FS is not set -CONFIG_NLS=y -CONFIG_NLS_DEFAULT="utf8" -CONFIG_NLS_CODEPAGE_437=y -# CONFIG_NLS_CODEPAGE_737 is not set -# CONFIG_NLS_CODEPAGE_775 is not set -# CONFIG_NLS_CODEPAGE_850 is not set -# CONFIG_NLS_CODEPAGE_852 is not set -# CONFIG_NLS_CODEPAGE_855 is not set -# CONFIG_NLS_CODEPAGE_857 is not set -# CONFIG_NLS_CODEPAGE_860 is not set -# CONFIG_NLS_CODEPAGE_861 is not set -# CONFIG_NLS_CODEPAGE_862 is not set -# CONFIG_NLS_CODEPAGE_863 is not set -# CONFIG_NLS_CODEPAGE_864 is not set -# CONFIG_NLS_CODEPAGE_865 is not set -# CONFIG_NLS_CODEPAGE_866 is not set -# CONFIG_NLS_CODEPAGE_869 is not set -# CONFIG_NLS_CODEPAGE_936 is not set -# CONFIG_NLS_CODEPAGE_950 is not set -# CONFIG_NLS_CODEPAGE_932 is not set -# CONFIG_NLS_CODEPAGE_949 is not set -# CONFIG_NLS_CODEPAGE_874 is not set -# CONFIG_NLS_ISO8859_8 is not set -# CONFIG_NLS_CODEPAGE_1250 is not set -# CONFIG_NLS_CODEPAGE_1251 is not set -CONFIG_NLS_ASCII=y -CONFIG_NLS_ISO8859_1=y -# CONFIG_NLS_ISO8859_2 is not set -# CONFIG_NLS_ISO8859_3 is not set -# CONFIG_NLS_ISO8859_4 is not set -# CONFIG_NLS_ISO8859_5 is not set -# CONFIG_NLS_ISO8859_6 is not set -# CONFIG_NLS_ISO8859_7 is not set -# CONFIG_NLS_ISO8859_9 is not set -# CONFIG_NLS_ISO8859_13 is not set -# CONFIG_NLS_ISO8859_14 is not set -# CONFIG_NLS_ISO8859_15 is not set -# CONFIG_NLS_KOI8_R is not set -# CONFIG_NLS_KOI8_U is not set -# CONFIG_NLS_MAC_ROMAN is not set -# CONFIG_NLS_MAC_CELTIC is not set -# CONFIG_NLS_MAC_CENTEURO is not set -# CONFIG_NLS_MAC_CROATIAN is not set -# CONFIG_NLS_MAC_CYRILLIC is not set -# CONFIG_NLS_MAC_GAELIC is not set -# CONFIG_NLS_MAC_GREEK is not set -# CONFIG_NLS_MAC_ICELAND is not set -# CONFIG_NLS_MAC_INUIT is not set -# CONFIG_NLS_MAC_ROMANIAN is not set -# CONFIG_NLS_MAC_TURKISH is not set -CONFIG_NLS_UTF8=y -# CONFIG_UNICODE is not set -CONFIG_IO_WQ=y -# end of File systems - -# -# Security options -# -CONFIG_KEYS=y -# CONFIG_KEYS_REQUEST_CACHE is not set -# CONFIG_PERSISTENT_KEYRINGS is not set -# CONFIG_ENCRYPTED_KEYS is not set -# CONFIG_KEY_DH_OPERATIONS is not set -# CONFIG_SECURITY_DMESG_RESTRICT is not set -CONFIG_SECURITY=y -CONFIG_SECURITY_WRITABLE_HOOKS=y -# CONFIG_SECURITYFS is not set -CONFIG_SECURITY_NETWORK=y -CONFIG_PAGE_TABLE_ISOLATION=y -# CONFIG_SECURITY_NETWORK_XFRM is not set -# CONFIG_SECURITY_PATH is not set -# CONFIG_INTEL_TXT is not set -CONFIG_LSM_MMAP_MIN_ADDR=65536 -CONFIG_HAVE_HARDENED_USERCOPY_ALLOCATOR=y -# CONFIG_HARDENED_USERCOPY is not set -# CONFIG_FORTIFY_SOURCE is not set -# CONFIG_STATIC_USERMODEHELPER is not set -CONFIG_SECURITY_SELINUX=y -CONFIG_SECURITY_SELINUX_BOOTPARAM=y -CONFIG_SECURITY_SELINUX_DISABLE=y -CONFIG_SECURITY_SELINUX_DEVELOP=y -CONFIG_SECURITY_SELINUX_AVC_STATS=y -CONFIG_SECURITY_SELINUX_CHECKREQPROT_VALUE=0 -CONFIG_SECURITY_SELINUX_SIDTAB_HASH_BITS=9 -CONFIG_SECURITY_SELINUX_SID2STR_CACHE_SIZE=256 -# CONFIG_SECURITY_SMACK is not set -# CONFIG_SECURITY_TOMOYO is not set -# CONFIG_SECURITY_APPARMOR is not set -# CONFIG_SECURITY_LOADPIN is not set -# CONFIG_SECURITY_YAMA is not set -# CONFIG_SECURITY_SAFESETID is not set -# CONFIG_SECURITY_LOCKDOWN_LSM is not set -CONFIG_INTEGRITY=y -# CONFIG_INTEGRITY_SIGNATURE is not set -CONFIG_INTEGRITY_AUDIT=y -# CONFIG_IMA is not set -# CONFIG_IMA_SECURE_AND_OR_TRUSTED_BOOT is not set -# CONFIG_EVM is not set -CONFIG_DEFAULT_SECURITY_SELINUX=y -# CONFIG_DEFAULT_SECURITY_DAC is not set -CONFIG_LSM="lockdown,yama,loadpin,safesetid,integrity,selinux,smack,tomoyo,apparmor,bpf" - -# -# Kernel hardening options -# - -# -# Memory initialization -# -CONFIG_CC_HAS_AUTO_VAR_INIT_PATTERN=y -CONFIG_CC_HAS_AUTO_VAR_INIT_ZERO=y -CONFIG_INIT_STACK_NONE=y -# CONFIG_INIT_STACK_ALL_PATTERN is not set -# CONFIG_INIT_STACK_ALL_ZERO is not set -# CONFIG_INIT_ON_ALLOC_DEFAULT_ON is not set -# CONFIG_INIT_ON_FREE_DEFAULT_ON is not set -# end of Memory initialization -# end of Kernel hardening options -# end of Security options - -CONFIG_CRYPTO=y - -# -# Crypto core or helper -# -CONFIG_CRYPTO_ALGAPI=y -CONFIG_CRYPTO_ALGAPI2=y -CONFIG_CRYPTO_AEAD=y -CONFIG_CRYPTO_AEAD2=y -CONFIG_CRYPTO_SKCIPHER=y -CONFIG_CRYPTO_SKCIPHER2=y -CONFIG_CRYPTO_HASH=y -CONFIG_CRYPTO_HASH2=y -CONFIG_CRYPTO_RNG=y -CONFIG_CRYPTO_RNG2=y -CONFIG_CRYPTO_RNG_DEFAULT=y -CONFIG_CRYPTO_AKCIPHER2=y -CONFIG_CRYPTO_AKCIPHER=y -CONFIG_CRYPTO_KPP2=y -CONFIG_CRYPTO_ACOMP2=y -CONFIG_CRYPTO_MANAGER=y -CONFIG_CRYPTO_MANAGER2=y -# CONFIG_CRYPTO_USER is not set -CONFIG_CRYPTO_MANAGER_DISABLE_TESTS=y -CONFIG_CRYPTO_GF128MUL=y -CONFIG_CRYPTO_NULL=y -CONFIG_CRYPTO_NULL2=y -# CONFIG_CRYPTO_PCRYPT is not set -# CONFIG_CRYPTO_CRYPTD is not set -CONFIG_CRYPTO_AUTHENC=y -# CONFIG_CRYPTO_TEST is not set - -# -# Public-key cryptography -# -CONFIG_CRYPTO_RSA=y -# CONFIG_CRYPTO_DH is not set -# CONFIG_CRYPTO_ECDH is not set -# CONFIG_CRYPTO_ECRDSA is not set -# CONFIG_CRYPTO_SM2 is not set -# CONFIG_CRYPTO_CURVE25519 is not set -# CONFIG_CRYPTO_CURVE25519_X86 is not set - -# -# Authenticated Encryption with Associated Data -# -CONFIG_CRYPTO_CCM=y -CONFIG_CRYPTO_GCM=y -# CONFIG_CRYPTO_CHACHA20POLY1305 is not set -# CONFIG_CRYPTO_AEGIS128 is not set -# CONFIG_CRYPTO_AEGIS128_AESNI_SSE2 is not set -CONFIG_CRYPTO_SEQIV=y -CONFIG_CRYPTO_ECHAINIV=y - -# -# Block modes -# -CONFIG_CRYPTO_CBC=y -# CONFIG_CRYPTO_CFB is not set -CONFIG_CRYPTO_CTR=y -# CONFIG_CRYPTO_CTS is not set -# CONFIG_CRYPTO_ECB is not set -# CONFIG_CRYPTO_LRW is not set -# CONFIG_CRYPTO_OFB is not set -# CONFIG_CRYPTO_PCBC is not set -# CONFIG_CRYPTO_XTS is not set -# CONFIG_CRYPTO_KEYWRAP is not set -# CONFIG_CRYPTO_NHPOLY1305_SSE2 is not set -# CONFIG_CRYPTO_NHPOLY1305_AVX2 is not set -# CONFIG_CRYPTO_ADIANTUM is not set -# CONFIG_CRYPTO_ESSIV is not set - -# -# Hash modes -# -CONFIG_CRYPTO_CMAC=y -CONFIG_CRYPTO_HMAC=y -# CONFIG_CRYPTO_XCBC is not set -# CONFIG_CRYPTO_VMAC is not set - -# -# Digest -# -CONFIG_CRYPTO_CRC32C=y -# CONFIG_CRYPTO_CRC32C_INTEL is not set -# CONFIG_CRYPTO_CRC32 is not set -# CONFIG_CRYPTO_CRC32_PCLMUL is not set -# CONFIG_CRYPTO_XXHASH is not set -# CONFIG_CRYPTO_BLAKE2B is not set -# CONFIG_CRYPTO_BLAKE2S is not set -# CONFIG_CRYPTO_BLAKE2S_X86 is not set -# CONFIG_CRYPTO_CRCT10DIF is not set -CONFIG_CRYPTO_GHASH=y -# CONFIG_CRYPTO_POLY1305 is not set -# CONFIG_CRYPTO_POLY1305_X86_64 is not set -# CONFIG_CRYPTO_MD4 is not set -CONFIG_CRYPTO_MD5=y -# CONFIG_CRYPTO_MICHAEL_MIC is not set -# CONFIG_CRYPTO_RMD128 is not set -# CONFIG_CRYPTO_RMD160 is not set -# CONFIG_CRYPTO_RMD256 is not set -# CONFIG_CRYPTO_RMD320 is not set -# CONFIG_CRYPTO_SHA1 is not set -# CONFIG_CRYPTO_SHA1_SSSE3 is not set -# CONFIG_CRYPTO_SHA256_SSSE3 is not set -# CONFIG_CRYPTO_SHA512_SSSE3 is not set -CONFIG_CRYPTO_SHA256=y -# CONFIG_CRYPTO_SHA512 is not set -# CONFIG_CRYPTO_SHA3 is not set -# CONFIG_CRYPTO_SM3 is not set -# CONFIG_CRYPTO_STREEBOG is not set -# CONFIG_CRYPTO_TGR192 is not set -# CONFIG_CRYPTO_WP512 is not set -# CONFIG_CRYPTO_GHASH_CLMUL_NI_INTEL is not set - -# -# Ciphers -# -CONFIG_CRYPTO_AES=y -# CONFIG_CRYPTO_AES_TI is not set -# CONFIG_CRYPTO_AES_NI_INTEL is not set -# CONFIG_CRYPTO_BLOWFISH is not set -# CONFIG_CRYPTO_BLOWFISH_X86_64 is not set -# CONFIG_CRYPTO_CAMELLIA is not set -# CONFIG_CRYPTO_CAMELLIA_X86_64 is not set -# CONFIG_CRYPTO_CAMELLIA_AESNI_AVX_X86_64 is not set -# CONFIG_CRYPTO_CAMELLIA_AESNI_AVX2_X86_64 is not set -# CONFIG_CRYPTO_CAST5 is not set -# CONFIG_CRYPTO_CAST5_AVX_X86_64 is not set -# CONFIG_CRYPTO_CAST6 is not set -# CONFIG_CRYPTO_CAST6_AVX_X86_64 is not set -# CONFIG_CRYPTO_DES is not set -# CONFIG_CRYPTO_DES3_EDE_X86_64 is not set -# CONFIG_CRYPTO_FCRYPT is not set -# CONFIG_CRYPTO_SALSA20 is not set -# CONFIG_CRYPTO_CHACHA20 is not set -# CONFIG_CRYPTO_CHACHA20_X86_64 is not set -# CONFIG_CRYPTO_SERPENT is not set -# CONFIG_CRYPTO_SERPENT_SSE2_X86_64 is not set -# CONFIG_CRYPTO_SERPENT_AVX_X86_64 is not set -# CONFIG_CRYPTO_SERPENT_AVX2_X86_64 is not set -# CONFIG_CRYPTO_SM4 is not set -# CONFIG_CRYPTO_TWOFISH is not set -# CONFIG_CRYPTO_TWOFISH_X86_64 is not set -# CONFIG_CRYPTO_TWOFISH_X86_64_3WAY is not set -# CONFIG_CRYPTO_TWOFISH_AVX_X86_64 is not set - -# -# Compression -# -# CONFIG_CRYPTO_DEFLATE is not set -# CONFIG_CRYPTO_LZO is not set -# CONFIG_CRYPTO_842 is not set -# CONFIG_CRYPTO_LZ4 is not set -# CONFIG_CRYPTO_LZ4HC is not set -# CONFIG_CRYPTO_ZSTD is not set - -# -# Random Number Generation -# -# CONFIG_CRYPTO_ANSI_CPRNG is not set -CONFIG_CRYPTO_DRBG_MENU=y -CONFIG_CRYPTO_DRBG_HMAC=y -# CONFIG_CRYPTO_DRBG_HASH is not set -# CONFIG_CRYPTO_DRBG_CTR is not set -CONFIG_CRYPTO_DRBG=y -CONFIG_CRYPTO_JITTERENTROPY=y -# CONFIG_CRYPTO_USER_API_HASH is not set -# CONFIG_CRYPTO_USER_API_SKCIPHER is not set -# CONFIG_CRYPTO_USER_API_RNG is not set -# CONFIG_CRYPTO_USER_API_AEAD is not set -CONFIG_CRYPTO_HASH_INFO=y - -# -# Crypto library routines -# -CONFIG_CRYPTO_LIB_AES=y -CONFIG_CRYPTO_LIB_ARC4=y -# CONFIG_CRYPTO_LIB_BLAKE2S is not set -# CONFIG_CRYPTO_LIB_CHACHA is not set -# CONFIG_CRYPTO_LIB_CURVE25519 is not set -CONFIG_CRYPTO_LIB_POLY1305_RSIZE=11 -# CONFIG_CRYPTO_LIB_POLY1305 is not set -# CONFIG_CRYPTO_LIB_CHACHA20POLY1305 is not set -CONFIG_CRYPTO_LIB_SHA256=y -CONFIG_CRYPTO_HW=y -# CONFIG_CRYPTO_DEV_PADLOCK is not set -# CONFIG_CRYPTO_DEV_ATMEL_ECC is not set -# CONFIG_CRYPTO_DEV_ATMEL_SHA204A is not set -# CONFIG_CRYPTO_DEV_CCP is not set -# CONFIG_CRYPTO_DEV_QAT_DH895xCC is not set -# CONFIG_CRYPTO_DEV_QAT_C3XXX is not set -# CONFIG_CRYPTO_DEV_QAT_C62X is not set -# CONFIG_CRYPTO_DEV_QAT_DH895xCCVF is not set -# CONFIG_CRYPTO_DEV_QAT_C3XXXVF is not set -# CONFIG_CRYPTO_DEV_QAT_C62XVF is not set -# CONFIG_CRYPTO_DEV_NITROX_CNN55XX is not set -# CONFIG_CRYPTO_DEV_SAFEXCEL is not set -# CONFIG_CRYPTO_DEV_AMLOGIC_GXL is not set -CONFIG_ASYMMETRIC_KEY_TYPE=y -CONFIG_ASYMMETRIC_PUBLIC_KEY_SUBTYPE=y -CONFIG_X509_CERTIFICATE_PARSER=y -# CONFIG_PKCS8_PRIVATE_KEY_PARSER is not set -CONFIG_PKCS7_MESSAGE_PARSER=y -# CONFIG_PKCS7_TEST_KEY is not set -# CONFIG_SIGNED_PE_FILE_VERIFICATION is not set - -# -# Certificates for signature checking -# -CONFIG_SYSTEM_TRUSTED_KEYRING=y -CONFIG_SYSTEM_TRUSTED_KEYS="" -# CONFIG_SYSTEM_EXTRA_CERTIFICATE is not set -# CONFIG_SECONDARY_TRUSTED_KEYRING is not set -# CONFIG_SYSTEM_BLACKLIST_KEYRING is not set -# end of Certificates for signature checking - -CONFIG_BINARY_PRINTF=y - -# -# Library routines -# -# CONFIG_PACKING is not set -CONFIG_BITREVERSE=y -CONFIG_GENERIC_STRNCPY_FROM_USER=y -CONFIG_GENERIC_STRNLEN_USER=y -CONFIG_GENERIC_NET_UTILS=y -CONFIG_GENERIC_FIND_FIRST_BIT=y -# CONFIG_CORDIC is not set -# CONFIG_PRIME_NUMBERS is not set -CONFIG_RATIONAL=y -CONFIG_GENERIC_PCI_IOMAP=y -CONFIG_GENERIC_IOMAP=y -CONFIG_ARCH_USE_CMPXCHG_LOCKREF=y -CONFIG_ARCH_HAS_FAST_MULTIPLIER=y -CONFIG_ARCH_USE_SYM_ANNOTATIONS=y -CONFIG_CRC_CCITT=y -CONFIG_CRC16=y -# CONFIG_CRC_T10DIF is not set -# CONFIG_CRC_ITU_T is not set -CONFIG_CRC32=y -# CONFIG_CRC32_SELFTEST is not set -CONFIG_CRC32_SLICEBY8=y -# CONFIG_CRC32_SLICEBY4 is not set -# CONFIG_CRC32_SARWATE is not set -# CONFIG_CRC32_BIT is not set -# CONFIG_CRC64 is not set -# CONFIG_CRC4 is not set -# CONFIG_CRC7 is not set -# CONFIG_LIBCRC32C is not set -# CONFIG_CRC8 is not set -CONFIG_XXHASH=y -# CONFIG_RANDOM32_SELFTEST is not set -CONFIG_ZLIB_INFLATE=y -CONFIG_ZLIB_DEFLATE=y -CONFIG_LZO_COMPRESS=y -CONFIG_LZO_DECOMPRESS=y -CONFIG_LZ4_DECOMPRESS=y -CONFIG_ZSTD_DECOMPRESS=y -CONFIG_XZ_DEC=y -CONFIG_XZ_DEC_X86=y -CONFIG_XZ_DEC_POWERPC=y -CONFIG_XZ_DEC_IA64=y -CONFIG_XZ_DEC_ARM=y -CONFIG_XZ_DEC_ARMTHUMB=y -CONFIG_XZ_DEC_SPARC=y -CONFIG_XZ_DEC_BCJ=y -# CONFIG_XZ_DEC_TEST is not set -CONFIG_DECOMPRESS_GZIP=y -CONFIG_DECOMPRESS_BZIP2=y -CONFIG_DECOMPRESS_LZMA=y -CONFIG_DECOMPRESS_XZ=y -CONFIG_DECOMPRESS_LZO=y -CONFIG_DECOMPRESS_LZ4=y -CONFIG_DECOMPRESS_ZSTD=y -CONFIG_GENERIC_ALLOCATOR=y -CONFIG_INTERVAL_TREE=y -CONFIG_ASSOCIATIVE_ARRAY=y -CONFIG_HAS_IOMEM=y -CONFIG_HAS_IOPORT_MAP=y -CONFIG_HAS_DMA=y -CONFIG_DMA_OPS=y -CONFIG_NEED_SG_DMA_LENGTH=y -CONFIG_NEED_DMA_MAP_STATE=y -CONFIG_ARCH_DMA_ADDR_T_64BIT=y -CONFIG_SWIOTLB=y -# CONFIG_DMA_API_DEBUG is not set -CONFIG_SGL_ALLOC=y -CONFIG_CHECK_SIGNATURE=y -CONFIG_CPU_RMAP=y -CONFIG_DQL=y -CONFIG_GLOB=y -# CONFIG_GLOB_SELFTEST is not set -CONFIG_NLATTR=y -CONFIG_CLZ_TAB=y -# CONFIG_IRQ_POLL is not set -CONFIG_MPILIB=y -CONFIG_OID_REGISTRY=y -CONFIG_UCS2_STRING=y -CONFIG_HAVE_GENERIC_VDSO=y -CONFIG_GENERIC_GETTIMEOFDAY=y -CONFIG_GENERIC_VDSO_TIME_NS=y -CONFIG_FONT_SUPPORT=y -# CONFIG_FONTS is not set -CONFIG_FONT_8x8=y -CONFIG_FONT_8x16=y -CONFIG_SG_POOL=y -CONFIG_ARCH_HAS_PMEM_API=y -CONFIG_ARCH_HAS_UACCESS_FLUSHCACHE=y -CONFIG_ARCH_HAS_COPY_MC=y -CONFIG_ARCH_STACKWALK=y -CONFIG_SBITMAP=y -# CONFIG_STRING_SELFTEST is not set -# end of Library routines - -# -# Kernel hacking -# - -# -# printk and dmesg options -# -CONFIG_PRINTK_TIME=y -# CONFIG_PRINTK_CALLER is not set -CONFIG_CONSOLE_LOGLEVEL_DEFAULT=7 -CONFIG_CONSOLE_LOGLEVEL_QUIET=4 -CONFIG_MESSAGE_LOGLEVEL_DEFAULT=4 -# CONFIG_BOOT_PRINTK_DELAY is not set -# CONFIG_DYNAMIC_DEBUG is not set -# CONFIG_DYNAMIC_DEBUG_CORE is not set -CONFIG_SYMBOLIC_ERRNAME=y -CONFIG_DEBUG_BUGVERBOSE=y -# end of printk and dmesg options - -# -# Compile-time checks and compiler options -# -# CONFIG_DEBUG_INFO is not set -CONFIG_ENABLE_MUST_CHECK=y -CONFIG_FRAME_WARN=2048 -# CONFIG_STRIP_ASM_SYMS is not set -# CONFIG_READABLE_ASM is not set -# CONFIG_HEADERS_INSTALL is not set -# CONFIG_DEBUG_SECTION_MISMATCH is not set -CONFIG_SECTION_MISMATCH_WARN_ONLY=y -# CONFIG_STACK_VALIDATION is not set -# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set -# end of Compile-time checks and compiler options - -# -# Generic Kernel Debugging Instruments -# -CONFIG_MAGIC_SYSRQ=y -CONFIG_MAGIC_SYSRQ_DEFAULT_ENABLE=0x1 -CONFIG_MAGIC_SYSRQ_SERIAL=y -CONFIG_MAGIC_SYSRQ_SERIAL_SEQUENCE="" -CONFIG_DEBUG_FS=y -CONFIG_DEBUG_FS_ALLOW_ALL=y -# CONFIG_DEBUG_FS_DISALLOW_MOUNT is not set -# CONFIG_DEBUG_FS_ALLOW_NONE is not set -CONFIG_HAVE_ARCH_KGDB=y -# CONFIG_KGDB is not set -CONFIG_ARCH_HAS_UBSAN_SANITIZE_ALL=y -# CONFIG_UBSAN is not set -CONFIG_HAVE_ARCH_KCSAN=y -CONFIG_HAVE_KCSAN_COMPILER=y -# CONFIG_KCSAN is not set -# end of Generic Kernel Debugging Instruments - -CONFIG_DEBUG_KERNEL=y -CONFIG_DEBUG_MISC=y - -# -# Memory Debugging -# -# CONFIG_PAGE_EXTENSION is not set -# CONFIG_DEBUG_PAGEALLOC is not set -# CONFIG_PAGE_OWNER is not set -# CONFIG_PAGE_POISONING is not set -# CONFIG_DEBUG_PAGE_REF is not set -# CONFIG_DEBUG_RODATA_TEST is not set -CONFIG_ARCH_HAS_DEBUG_WX=y -# CONFIG_DEBUG_WX is not set -CONFIG_GENERIC_PTDUMP=y -# CONFIG_PTDUMP_DEBUGFS is not set -# CONFIG_DEBUG_OBJECTS is not set -# CONFIG_SLUB_DEBUG_ON is not set -# CONFIG_SLUB_STATS is not set -CONFIG_HAVE_DEBUG_KMEMLEAK=y -# CONFIG_DEBUG_KMEMLEAK is not set -CONFIG_DEBUG_STACK_USAGE=y -# CONFIG_SCHED_STACK_END_CHECK is not set -CONFIG_ARCH_HAS_DEBUG_VM_PGTABLE=y -# CONFIG_DEBUG_VM is not set -# CONFIG_DEBUG_VM_PGTABLE is not set -CONFIG_ARCH_HAS_DEBUG_VIRTUAL=y -# CONFIG_DEBUG_VIRTUAL is not set -CONFIG_DEBUG_MEMORY_INIT=y -# CONFIG_DEBUG_PER_CPU_MAPS is not set -CONFIG_HAVE_ARCH_KASAN=y -CONFIG_HAVE_ARCH_KASAN_VMALLOC=y -CONFIG_CC_HAS_KASAN_GENERIC=y -CONFIG_CC_HAS_KASAN_SW_TAGS=y -CONFIG_CC_HAS_WORKING_NOSANITIZE_ADDRESS=y -# CONFIG_KASAN is not set -# end of Memory Debugging - -# CONFIG_DEBUG_SHIRQ is not set - -# -# Debug Oops, Lockups and Hangs -# -# CONFIG_PANIC_ON_OOPS is not set -CONFIG_PANIC_ON_OOPS_VALUE=0 -CONFIG_PANIC_TIMEOUT=0 -# CONFIG_SOFTLOCKUP_DETECTOR is not set -CONFIG_HARDLOCKUP_CHECK_TIMESTAMP=y -# CONFIG_HARDLOCKUP_DETECTOR is not set -# CONFIG_DETECT_HUNG_TASK is not set -# CONFIG_WQ_WATCHDOG is not set -# CONFIG_TEST_LOCKUP is not set -# end of Debug Oops, Lockups and Hangs - -# -# Scheduler Debugging -# -# CONFIG_SCHED_DEBUG is not set -CONFIG_SCHED_INFO=y -CONFIG_SCHEDSTATS=y -# end of Scheduler Debugging - -# CONFIG_DEBUG_TIMEKEEPING is not set - -# -# Lock Debugging (spinlocks, mutexes, etc...) -# -CONFIG_LOCK_DEBUGGING_SUPPORT=y -# CONFIG_PROVE_LOCKING is not set -# CONFIG_LOCK_STAT is not set -# CONFIG_DEBUG_RT_MUTEXES is not set -# CONFIG_DEBUG_SPINLOCK is not set -# CONFIG_DEBUG_MUTEXES is not set -# CONFIG_DEBUG_WW_MUTEX_SLOWPATH is not set -# CONFIG_DEBUG_RWSEMS is not set -# CONFIG_DEBUG_LOCK_ALLOC is not set -# CONFIG_DEBUG_ATOMIC_SLEEP is not set -# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set -# CONFIG_LOCK_TORTURE_TEST is not set -# CONFIG_WW_MUTEX_SELFTEST is not set -# CONFIG_SCF_TORTURE_TEST is not set -# CONFIG_CSD_LOCK_WAIT_DEBUG is not set -# end of Lock Debugging (spinlocks, mutexes, etc...) - -CONFIG_STACKTRACE=y -# CONFIG_WARN_ALL_UNSEEDED_RANDOM is not set -# CONFIG_DEBUG_KOBJECT is not set - -# -# Debug kernel data structures -# -# CONFIG_DEBUG_LIST is not set -# CONFIG_DEBUG_PLIST is not set -# CONFIG_DEBUG_SG is not set -# CONFIG_DEBUG_NOTIFIERS is not set -# CONFIG_BUG_ON_DATA_CORRUPTION is not set -# end of Debug kernel data structures - -# CONFIG_DEBUG_CREDENTIALS is not set - -# -# RCU Debugging -# -# CONFIG_RCU_SCALE_TEST is not set -# CONFIG_RCU_TORTURE_TEST is not set -# CONFIG_RCU_REF_SCALE_TEST is not set -CONFIG_RCU_CPU_STALL_TIMEOUT=21 -CONFIG_RCU_TRACE=y -# CONFIG_RCU_EQS_DEBUG is not set -# end of RCU Debugging - -# CONFIG_DEBUG_WQ_FORCE_RR_CPU is not set -# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set -# CONFIG_CPU_HOTPLUG_STATE_CONTROL is not set -# CONFIG_LATENCYTOP is not set -CONFIG_USER_STACKTRACE_SUPPORT=y -CONFIG_NOP_TRACER=y -CONFIG_HAVE_FUNCTION_TRACER=y -CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y -CONFIG_HAVE_DYNAMIC_FTRACE=y -CONFIG_HAVE_DYNAMIC_FTRACE_WITH_REGS=y -CONFIG_HAVE_DYNAMIC_FTRACE_WITH_DIRECT_CALLS=y -CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y -CONFIG_HAVE_SYSCALL_TRACEPOINTS=y -CONFIG_HAVE_FENTRY=y -CONFIG_HAVE_C_RECORDMCOUNT=y -CONFIG_TRACE_CLOCK=y -CONFIG_RING_BUFFER=y -CONFIG_EVENT_TRACING=y -CONFIG_CONTEXT_SWITCH_TRACER=y -CONFIG_TRACING=y -CONFIG_GENERIC_TRACER=y -CONFIG_TRACING_SUPPORT=y -CONFIG_FTRACE=y -# CONFIG_BOOTTIME_TRACING is not set -# CONFIG_FUNCTION_TRACER is not set -# CONFIG_STACK_TRACER is not set -# CONFIG_IRQSOFF_TRACER is not set -# CONFIG_SCHED_TRACER is not set -# CONFIG_HWLAT_TRACER is not set -# CONFIG_MMIOTRACE is not set -# CONFIG_FTRACE_SYSCALLS is not set -# CONFIG_TRACER_SNAPSHOT is not set -CONFIG_BRANCH_PROFILE_NONE=y -# CONFIG_PROFILE_ANNOTATED_BRANCHES is not set -# CONFIG_PROFILE_ALL_BRANCHES is not set -CONFIG_BLK_DEV_IO_TRACE=y -CONFIG_KPROBE_EVENTS=y -CONFIG_UPROBE_EVENTS=y -CONFIG_DYNAMIC_EVENTS=y -CONFIG_PROBE_EVENTS=y -# CONFIG_SYNTH_EVENTS is not set -# CONFIG_HIST_TRIGGERS is not set -# CONFIG_TRACE_EVENT_INJECT is not set -# CONFIG_TRACEPOINT_BENCHMARK is not set -# CONFIG_RING_BUFFER_BENCHMARK is not set -# CONFIG_TRACE_EVAL_MAP_FILE is not set -# CONFIG_FTRACE_STARTUP_TEST is not set -# CONFIG_RING_BUFFER_STARTUP_TEST is not set -# CONFIG_PREEMPTIRQ_DELAY_TEST is not set -# CONFIG_KPROBE_EVENT_GEN_TEST is not set -CONFIG_PROVIDE_OHCI1394_DMA_INIT=y -# CONFIG_SAMPLES is not set -CONFIG_ARCH_HAS_DEVMEM_IS_ALLOWED=y -CONFIG_STRICT_DEVMEM=y -# CONFIG_IO_STRICT_DEVMEM is not set - -# -# x86 Debugging -# -CONFIG_TRACE_IRQFLAGS_SUPPORT=y -CONFIG_TRACE_IRQFLAGS_NMI_SUPPORT=y -CONFIG_EARLY_PRINTK_USB=y -CONFIG_X86_VERBOSE_BOOTUP=y -CONFIG_EARLY_PRINTK=y -CONFIG_EARLY_PRINTK_DBGP=y -# CONFIG_EARLY_PRINTK_USB_XDBC is not set -# CONFIG_EFI_PGT_DUMP is not set -# CONFIG_DEBUG_TLBFLUSH is not set -CONFIG_HAVE_MMIOTRACE_SUPPORT=y -# CONFIG_X86_DECODER_SELFTEST is not set -CONFIG_IO_DELAY_0X80=y -# CONFIG_IO_DELAY_0XED is not set -# CONFIG_IO_DELAY_UDELAY is not set -# CONFIG_IO_DELAY_NONE is not set -CONFIG_DEBUG_BOOT_PARAMS=y -# CONFIG_CPA_DEBUG is not set -# CONFIG_DEBUG_ENTRY is not set -# CONFIG_DEBUG_NMI_SELFTEST is not set -CONFIG_X86_DEBUG_FPU=y -# CONFIG_PUNIT_ATOM_DEBUG is not set -# CONFIG_UNWINDER_ORC is not set -CONFIG_UNWINDER_FRAME_POINTER=y -# end of x86 Debugging - -# -# Kernel Testing and Coverage -# -# CONFIG_KUNIT is not set -# CONFIG_NOTIFIER_ERROR_INJECTION is not set -CONFIG_FUNCTION_ERROR_INJECTION=y -# CONFIG_FAULT_INJECTION is not set -CONFIG_ARCH_HAS_KCOV=y -CONFIG_CC_HAS_SANCOV_TRACE_PC=y -# CONFIG_KCOV is not set -CONFIG_RUNTIME_TESTING_MENU=y -# CONFIG_LKDTM is not set -# CONFIG_TEST_LIST_SORT is not set -# CONFIG_TEST_MIN_HEAP is not set -# CONFIG_TEST_SORT is not set -# CONFIG_KPROBES_SANITY_TEST is not set -# CONFIG_BACKTRACE_SELF_TEST is not set -# CONFIG_RBTREE_TEST is not set -# CONFIG_REED_SOLOMON_TEST is not set -# CONFIG_INTERVAL_TREE_TEST is not set -# CONFIG_PERCPU_TEST is not set -# CONFIG_ATOMIC64_SELFTEST is not set -# CONFIG_TEST_HEXDUMP is not set -# CONFIG_TEST_STRING_HELPERS is not set -# CONFIG_TEST_STRSCPY is not set -# CONFIG_TEST_KSTRTOX is not set -# CONFIG_TEST_PRINTF is not set -# CONFIG_TEST_BITMAP is not set -# CONFIG_TEST_UUID is not set -# CONFIG_TEST_XARRAY is not set -# CONFIG_TEST_OVERFLOW is not set -# CONFIG_TEST_RHASHTABLE is not set -# CONFIG_TEST_HASH is not set -# CONFIG_TEST_IDA is not set -# CONFIG_TEST_LKM is not set -# CONFIG_TEST_BITOPS is not set -# CONFIG_TEST_VMALLOC is not set -# CONFIG_TEST_USER_COPY is not set -# CONFIG_TEST_BPF is not set -# CONFIG_TEST_BLACKHOLE_DEV is not set -# CONFIG_FIND_BIT_BENCHMARK is not set -# CONFIG_TEST_FIRMWARE is not set -# CONFIG_TEST_SYSCTL is not set -# CONFIG_TEST_UDELAY is not set -# CONFIG_TEST_STATIC_KEYS is not set -# CONFIG_TEST_KMOD is not set -# CONFIG_TEST_MEMCAT_P is not set -# CONFIG_TEST_STACKINIT is not set -# CONFIG_TEST_MEMINIT is not set -# CONFIG_TEST_FREE_PAGES is not set -# CONFIG_TEST_FPU is not set -# CONFIG_MEMTEST is not set -# end of Kernel Testing and Coverage -# end of Kernel hacking diff --git a/pkgs/llvm/build.sh b/pkgs/llvm/build.sh deleted file mode 100644 index d4b1f87..0000000 --- a/pkgs/llvm/build.sh +++ /dev/null @@ -1,110 +0,0 @@ -pkgver=11.0.1 -pkgname=llvm -bad="" -ext="dev" - -fetch() { - curl -L "https://github.com/llvm/llvm-project/releases/download/llvmorg-11.0.1/llvm-project-11.0.1.src.tar.xz" -o $pkgname-$pkgver.tar.gz - tar -xf $pkgname-$pkgver.tar.gz - mv llvm-project-$pkgver.src $pkgname-$pkgver -} - -build() { - cd $pkgname-$pkgver - mkdir -p build - cd build - cmake -G Ninja -Wno-dev \ - -DCMAKE_C_COMPILER=clang \ - -DCMAKE_CXX_COMPILER=clang++ \ - -DCMAKE_C_COMPILER_TARGET=x86_64-musl-linux-musl \ - -DCMAKE_CXX_COMPILER_TARGET=x86_64-musl-linux-musl \ - -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;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=x86_64-unknown-linux-musl \ - -DLLVM_DEFAULT_TARGET_TRIPLE=x86_64-unknown-linux-musl \ - -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=OFF \ - -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="LazyBox" \ - -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_INCLUDE_TESTS=OFF \ - -DCOMPILER_RT_BUILD_LIBFUZZER=OFF \ - -DENABLE_EXPERIMENTAL_NEW_PASS_MANAGER=TRUE \ - ../llvm - - samu -} - -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/c++ -} - -package_dev() { - echo "No... Shut" -} - -license() { - cd $pkgname-$pkgver - cat */LICENSE.TXT -} diff --git a/pkgs/mandoc/build.sh b/pkgs/mandoc/build.sh new file mode 100644 index 0000000..160bf79 --- /dev/null +++ b/pkgs/mandoc/build.sh @@ -0,0 +1,35 @@ +pkgname=mandoc +pkgver=1.14.5 + +fetch() { + curl "https://mandoc.bsd.lv/snapshots/mandoc-$pkgver.tar.gz" -o $pkgname-$pkgver.tar.gz + tar -xf $pkgname-$pkgver.tar.gz + cp ../configure.local . + cp ../term-size.patch . + cp ../man.sh . + cd $pkgname-$pkgver + cp ../configure.local . + patch -p1 < ../term-size.patch +} + +build() { + cd $pkgname-$pkgver + ./configure \ + --prefix=/usr \ + --build=x86_64-unknown-linux-musl \ + --host=x86_64-unknown-linux-musl + + make +} + +package() { + install -Dm644 ./man.sh $pkgdir/etc/profile.d/man.sh + cd $pkgname-$pkgver + make install DESTDIR=$pkgdir +} + +license() { + cd $pkgname-$pkgver + cat LICENSE +# cat COPYING +} diff --git a/pkgs/mandoc/configure.local b/pkgs/mandoc/configure.local new file mode 100644 index 0000000..911a5ed --- /dev/null +++ b/pkgs/mandoc/configure.local @@ -0,0 +1,10 @@ +PREFIX=/usr +MANDIR=/usr/share/man +LIBDIR=/usr/lib +UTF8_LOCALE="en_US.UTF-8" +MANPATH_DEFAULT="/usr/share/man" +MANPATH_BASE="/usr/share/man" +LN="ln -sf" +HAVE_LESS_T=0 +LDFLAGS=-Wl,--allow-multiple-definition +BUILD_TARGETS= diff --git a/pkgs/mandoc/man.sh b/pkgs/mandoc/man.sh new file mode 100644 index 0000000..05954b0 --- /dev/null +++ b/pkgs/mandoc/man.sh @@ -0,0 +1,8 @@ +export LESS_TERMCAP_md=$'\e[01;34m' \ +export LESS_TERMCAP_me=$'\e[0m' \ +export LESS_TERMCAP_se=$'\e[0m' \ +export LESS_TERMCAP_so=$'\e[01;44;35m' \ +export LESS_TERMCAP_ue=$'\e[0m' \ +export LESS_TERMCAP_us=$'\e[01;33m' \ + +export MANPAGER="less -r" diff --git a/pkgs/mandoc/term-size.patch b/pkgs/mandoc/term-size.patch new file mode 100644 index 0000000..eb28fde --- /dev/null +++ b/pkgs/mandoc/term-size.patch @@ -0,0 +1,11 @@ +--- a/main.c ++++ b/main.c +@@ -321,7 +321,7 @@ + (conf.output.width == 0 || conf.output.indent == 0) && + ioctl(STDOUT_FILENO, TIOCGWINSZ, &ws) != -1 && + ws.ws_col > 1) { +- if (conf.output.width == 0 && ws.ws_col < 79) ++ if (conf.output.width == 0) + conf.output.width = ws.ws_col - 1; + if (conf.output.indent == 0 && ws.ws_col < 66) + conf.output.indent = 3; diff --git a/pkgs/md4c/build.sh b/pkgs/md4c/build.sh new file mode 100644 index 0000000..c9d1579 --- /dev/null +++ b/pkgs/md4c/build.sh @@ -0,0 +1,30 @@ +pkgname=md4c +pkgver=master + +fetch() { + curl -L "https://github.com/mity/md4c/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 + 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/mdtohtml/build.sh b/pkgs/mdtohtml/build.sh new file mode 100644 index 0000000..92e7f2c --- /dev/null +++ b/pkgs/mdtohtml/build.sh @@ -0,0 +1,31 @@ +pkgname=mdtohtml +pkgver=master + +fetch() { + curl -L "https://github.com/gomarkdown/mdtohtml/archive/refs/heads/master.tar.gz" -o $pkgname-$pkgver.tar.xz + tar -xf $pkgname-$pkgver.tar.xz + cp ../go.mod . + cp ../go.sum . + cp ../exts.patch . + cd $pkgname-$pkgver + patch -p1 < ../exts.patch +} + +build() { + cd $pkgname-$pkgver + mkdir build + cp ../go.mod . + cp ../go.sum . + go build -o build +} + +package() { + cd $pkgname-$pkgver + install -Dm755 build/$pkgname $pkgdir/usr/bin/$pkgname +} + +license() { + cd $pkgname-$pkgver + cat LICENSE +# cat COPYING +} diff --git a/pkgs/mdtohtml/exts.patch b/pkgs/mdtohtml/exts.patch new file mode 100644 index 0000000..c9e6b83 --- /dev/null +++ b/pkgs/mdtohtml/exts.patch @@ -0,0 +1,37 @@ +--- a/main.go ++++ b/main.go +@@ -17,7 +17,7 @@ + + func main() { + var page, toc, xhtml, latex, smartypants, latexdashes, fractions bool +- var css, cpuprofile string ++ var css, cpuprofile, head string + var repeat int + flag.BoolVar(&page, "page", false, + "Generate a standalone HTML page (implies -latex=false)") +@@ -39,6 +39,7 @@ + "Write cpu profile to a file") + flag.IntVar(&repeat, "repeat", 1, + "Process the input multiple times (for benchmarking)") ++ flag.StringVar(&head, "head", "", "Add extra stuff to header") + flag.Usage = func() { + fmt.Fprintf(os.Stderr, "Markdown Processor "+ + "\nAvailable at http://github.com/gomarkdown/markdown/cmd/mdtohtml\n\n"+ +@@ -100,7 +101,8 @@ + parser.FencedCode | + parser.Autolink | + parser.Strikethrough | +- parser.SpaceHeadings ++ parser.SpaceHeadings | ++ parser.Footnotes + + var renderer markdown.Renderer + if latex { +@@ -133,6 +135,7 @@ + Flags: htmlFlags, + Title: title, + CSS: css, ++ Head: []byte(head), + } + renderer = html.NewRenderer(params) + } diff --git a/pkgs/mdtohtml/go.mod b/pkgs/mdtohtml/go.mod new file mode 100644 index 0000000..f8a83ca --- /dev/null +++ b/pkgs/mdtohtml/go.mod @@ -0,0 +1,5 @@ +module github.com/gomarkdown/mdtohtml + +go 1.16 + +require github.com/gomarkdown/markdown v0.0.0-20210208175418-bda154fe17d8 // indirect diff --git a/pkgs/mdtohtml/go.sum b/pkgs/mdtohtml/go.sum new file mode 100644 index 0000000..876f1d5 --- /dev/null +++ b/pkgs/mdtohtml/go.sum @@ -0,0 +1,3 @@ +github.com/gomarkdown/markdown v0.0.0-20210208175418-bda154fe17d8 h1:nWU6p08f1VgIalT6iZyqXi4o5cZsz4X6qa87nusfcsc= +github.com/gomarkdown/markdown v0.0.0-20210208175418-bda154fe17d8/go.mod h1:aii0r/K0ZnHv7G0KF7xy1v0A7s2Ljrb5byB7MO5p6TU= +golang.org/dl v0.0.0-20190829154251-82a15e2f2ead/go.mod h1:IUMfjQLJQd4UTqG1Z90tenwKoCX93Gn3MAQJMOSBsDQ= diff --git a/pkgs/mpv/build.sh b/pkgs/mpv/build.sh new file mode 100644 index 0000000..28c4403 --- /dev/null +++ b/pkgs/mpv/build.sh @@ -0,0 +1,26 @@ +pkgname=mpv +pkgver=0.33.1 + +fetch() { + curl -L "https://github.com/mpv-player/mpv/archive/refs/tags/v0.33.1.tar.gz" -o $pkgname-$pkgver.tar.xz + tar -xf $pkgname-$pkgver.tar.xz +} + +build() { + cd $pkgname-$pkgver + ./bootstrap.py + ./waf configure --prefix=/usr --confdir=/etc/mpv --enable-libmpv-shared + + ./waf build +} + +package() { + cd $pkgname-$pkgver + ./waf install --destdir=$pkgdir +} + +license() { + cd $pkgname-$pkgver + cat LICENSE +# cat COPYING +} diff --git a/pkgs/musl/build.sh b/pkgs/musl/build.sh deleted file mode 100644 index c80b2c3..0000000 --- a/pkgs/musl/build.sh +++ /dev/null @@ -1,35 +0,0 @@ -pkgver=1.2.2 -pkgname=musl -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 \ - --enable-wrapper=no - gmake -} - -package() { - cd $pkgname-$pkgver - gmake install DESTDIR=$pkgdir - rm -r $pkgdir/usr/include - ln -sr $pkgdir/lib/ld-musl*.so? $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 new file mode 100644 index 0000000..1c27ca3 --- /dev/null +++ b/pkgs/nasm/build.sh @@ -0,0 +1,36 @@ +pkgname=nasm +pkgver=2.15 +pkgrel=1 +bad="gmake" +ext="doc" + +fetch(){ + curl "https://www.nasm.us/pub/nasm/releasebuilds/$pkgver/$pkgname-$pkgver.tar.xz" -o $pkgname-$pkgver.tar.gz + tar -xf $pkgname-$pkgver.tar.gz +} + +build(){ + cd $pkgname-$pkgver + ./configure \ + --build=x86_64-unknown-linux-musl \ + --host=x86_64-unknown-linux-musl \ + --prefix=/usr + bad --gmake gmake +} + +package() { + cd $pkgname-$pkgver + bad --gmake gmake DESTDIR="$pkgdir" install + rm -r $pkgdir/usr/share +} + +package_doc() { + cd $pkgname-$pkgver + bad --gmake gmake DESTDIR="$pkgdir" install + rm -r $pkgdir/usr/bin +} + +license() { + cd $pkgname-$pkgver + cat LICENSE +} diff --git a/pkgs/netbsd-curses/build.sh b/pkgs/netbsd-curses/build.sh deleted file mode 100644 index 3431722..0000000 --- a/pkgs/netbsd-curses/build.sh +++ /dev/null @@ -1,45 +0,0 @@ -pkgver=0.3.1 -pkgname=netbsd-curses -bad="" -ext="doc:dev" - -fetch() { - curl -L https://github.com/sabotage-linux/netbsd-curses/archive/v$pkgver.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/include - 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/pico/build.sh b/pkgs/pico/build.sh new file mode 100644 index 0000000..3a1aaea --- /dev/null +++ b/pkgs/pico/build.sh @@ -0,0 +1,36 @@ +pkgname=pico +pkgver=2.00 + +fetch() { + curl "http://ftp.swin.edu.au/alpine/alpine-$pkgver.tar.bz2" -o $pkgname-$pkgver.tar.bz2 + tar -xf $pkgname-$pkgver.tar.bz2 + mv alpine-$pkgver $pkgname-$pkgver +} + +build() { + cd $pkgname-$pkgver + ./configure \ + --prefix=/usr \ + --without-ldap \ + --without-ssl \ + --without-krb5 + + make -s c-client + make -s c-client.d + make -s -C pith + make -s -C pico +} + +package() { + cd $pkgname-$pkgver + install -d /usr/bin + install -Dm755 ./pico/pico $pkgdir/usr/bin/ + install -Dm755 ./pico/pilot $pkgdir/usr/bin/ + ln -sr $pkgdir/usr/bin/pico $pkgdir/usr/bin/nano +} + +license() { + cd $pkgname-$pkgver + cat LICENSE +# cat COPYING +} diff --git a/pkgs/python/build.sh b/pkgs/python/build.sh deleted file mode 100644 index ec70707..0000000 --- a/pkgs/python/build.sh +++ /dev/null @@ -1,47 +0,0 @@ -pkgname=python -pkgver=3.9.1 -bad="" -ext="doc" - -fetch() { - curl "https://www.python.org/ftp/python/3.9.1/Python-3.9.1.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 \ - --with-system-ffi=false \ - 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/slang/build.sh b/pkgs/slang/build.sh new file mode 100644 index 0000000..934660c --- /dev/null +++ b/pkgs/slang/build.sh @@ -0,0 +1,28 @@ +pkgname=slang +pkgver=2.3.2 + +fetch() { + curl "https://www.jedsoft.org/releases/slang/$pkgname-$pkgver.tar.bz2" -o $pkgname-$pkgver.tar.xz + tar -xf $pkgname-$pkgver.tar.xz +} + +build() { + cd $pkgname-$pkgver + ./configure \ + --prefix=/usr \ + --build=x86_64-unknown-linux-musl \ + --host=x86_64-unknown-linux-musl + + make +} + +package() { + cd $pkgname-$pkgver + make install DESTDIR=$pkgdir +} + +license() { + cd $pkgname-$pkgver + cat LICENSE +# cat COPYING +} diff --git a/pkgs/smu/build.sh b/pkgs/smu/build.sh new file mode 100644 index 0000000..f568b5e --- /dev/null +++ b/pkgs/smu/build.sh @@ -0,0 +1,24 @@ +pkgname=smu +pkgver=master + +fetch() { + curl -L "https://github.com/Gottox/smu/archive/refs/heads/master.tar.gz" -o $pkgname-$pkgver.tar.xz + tar -xf $pkgname-$pkgver.tar.xz + cp ../config.mk . +} + +build() { + cd $pkgname-$pkgver + cp ../config.mk . +} + +package() { + cd $pkgname-$pkgver + make install DESTDIR=$pkgdir +} + +license() { + cd $pkgname-$pkgver + cat LICENSE +# cat COPYING +} diff --git a/pkgs/smu/config.mk b/pkgs/smu/config.mk new file mode 100644 index 0000000..48c0c93 --- /dev/null +++ b/pkgs/smu/config.mk @@ -0,0 +1,20 @@ +# smu version +VERSION = 1.5 + +# paths +PREFIX = /usr +MANPREFIX = ${PREFIX}/share/man + +# includes and libs +INCS = -I. -I/usr/include +LIBS = -L/usr/lib + +# flags +CFLAGS = -g -O0 -Wall -Werror -ansi ${INCS} -DVERSION=\"${VERSION}\" +#CFLAGS = -fprofile-arcs -ftest-coverage -pg -g -O0 -Wall -Werror -ansi ${INCS} -DVERSION=\"${VERSION}\" +#CFLAGS = -Os -Wall -Werror -ansi ${INCS} -DVERSION=\"${VERSION}\" +#LDFLAGS = -fprofile-arcs -ftest-coverage -pg ${LIBS} +LDFLAGS = ${LIBS} + +# compiler +CC = cc diff --git a/pkgs/squashfs-tools/build.sh b/pkgs/squashfs-tools/build.sh new file mode 100644 index 0000000..11e09d7 --- /dev/null +++ b/pkgs/squashfs-tools/build.sh @@ -0,0 +1,24 @@ +pkgname=squashfs-tools +pkgver=master + +fetch() { + curl -L "https://github.com/plougher/squashfs-tools/archive/refs/heads/master.tar.gz" -o $pkgname-$pkgver.tar.xz + tar -xf $pkgname-$pkgver.tar.xz +} + +build() { + cd $pkgname-$pkgver + cd $pkgname + bad --gmake gmake +} + +package() { + cd $pkgname-$pkgver + cd $pkgname + bad --gmake gmake install INSTALL_DIR=$pkgdir/usr/bin +} + +license() { + cd $pkgname-$pkgver + cat COPYING +} 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 0f2f212..0000000 --- a/pkgs/toybox/build.sh +++ /dev/null @@ -1,32 +0,0 @@ -pkgver=0.8.4 -pkgname=toybox -pkgrel=1 - -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 < ../../mksh-make.patch -} - -build() { - cd $pkgname-$pkgver - gmake defconfig - 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 -} - -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/wlroots/build.sh b/pkgs/wlroots/build.sh deleted file mode 100644 index 88db05c..0000000 --- a/pkgs/wlroots/build.sh +++ /dev/null @@ -1,41 +0,0 @@ -pkgname=wlroots -pkgver=0.12.0 -ext="dev" - -fetch() { - curl -L "https://github.com/swaywm/wlroots/releases/download/0.12.0/wlroots-0.12.0.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 - samu -} - -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.* -} - -license() { - cd $pkgname-$pkgver - cat LICENSE -# cat COPYING -} diff --git a/pkgs/xkbcommon/build.sh b/pkgs/xkbcommon/build.sh deleted file mode 100644 index be6f500..0000000 --- a/pkgs/xkbcommon/build.sh +++ /dev/null @@ -1,35 +0,0 @@ -pkgver=1.2.1 -pkgname=musl -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=/ --enable-wrapper=no - make -} - -package() { - cd $pkgname-$pkgver - make install DESTDIR=$pkgdir - rm -r $pkgdir/include - rm $pkgdir/lib/*.a - rm $pkgdir/lib/*.o -} - -package_dev() { - cd $pkgname-$pkgver - make install DESTDIR=$pkgdir - rm $pkgdir/lib/*.so - rm $pkgdir/lib/*.so.? -} - -license() { - cd $pkgname-$pkgver - cat COPYRIGHT -} diff --git a/scripts/build_utils b/scripts/build_utils new file mode 100755 index 0000000..1ac38a9 --- /dev/null +++ b/scripts/build_utils @@ -0,0 +1,27 @@ + + +cp_packages (){ + #IMPORTANT: must be run from the folder where the iglunix repo is. + #NOTE: this will assume that there always is a '*-dev'/'*-doc' package,\n this is not true. + # That's why the errors are shown to some one who cares. + + echo "Hello this is build-utils" + + + for pkg in ${packages[@]} + do + if [ ! -d pkgs/${pkg}/out ]; then + echo "NOTE: ${pkg} was not yet build, building it now" + cd pkgs/${pkg}/ + ../../iglupkg.sh + cd ../.. + fi + + echo "Going to copy: $pkg to $1" + 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/scripts/createimg.sh b/scripts/createimg.sh new file mode 100755 index 0000000..7c7f541 --- /dev/null +++ b/scripts/createimg.sh @@ -0,0 +1,92 @@ +#!/bin/sh + +echo "Createimg.sh" + +rm iglunix.img + +dd if=/tiny-linux-bootloader/disk of=iglunix.img + +source build_utils + +FILE_SIZE=$(stat -c %s iglunix.img) +echo "FILE_SIZE=${FILE_SIZE}" +PARTITION_START=$(($FILE_SIZE / 512)) +PARTITION_START=$(($PARTITION_START + 1)) +echo "PARTITION_START=${PARTITION_START}" + +#create room for a partition +ls -al iglunix.img -h +dd if=/dev/zero bs=1 count=0 seek=2560M of=iglunix.img +ls -al iglunix.img -h + +echo "n +p +1 +${PARTITION_START} + +w +" | fdisk iglunix.img + +PARTITION_START2=$((${PARTITION_START} * 512)) +echo "PARTITION_START2: ${PARTITION_START2}" +LOOPBACK=$(losetup -o ${PARTITION_START2} -s -f iglunix.img) +echo "loopback interface: ${LOOPBACK}" + +#ERROR IF NO LOOPBACK +[ -z "$LOOPBACK" ] && echo "loopback creation failed!" && exit -1 + +mke2fs -t ext4 -L "__IGLUNIX_ROOT" ${LOOPBACK} + +ROOT=/mnt/__IGLUNIX_ROOT +umount ${ROOT} +rm -rf ${ROOT} + +mkdir -p ${ROOT} +mount ${LOOPBACK} ${ROOT} + +packages=(musl mksh bmake gmake llvm libressl mandoc cmake curl rsync 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 e2fsprogs util-linux linux-pam kbd) +cp_packages ${ROOT} + +echo "Linked ld.lld (from llvm) to ld" +ln -s ${ROOT}/usr/bin/ld.lld ${ROOT}/usr/bin/ld + +echo "Copying misc files & creating misc dirs for live-usb" +mkdir ${ROOT}/proc/ +mkdir ${ROOT}/dev/ +mkdir ${ROOT}/tmp/ +mkdir ${ROOT}/sys/ + +mkdir ${ROOT}/mnt/ +mkdir ${ROOT}/etc/ +mkdir ${ROOT}/root/ +cp ./pkgs/tiny-linux-bootloader/fstab ${ROOT}/etc/fstab +cp ./etc/hostname ${ROOT}/etc/hostname +cp ./etc/passwd ${ROOT}/etc/passwd +cp ./etc/group ${ROOT}/etc/group +touch ${ROOT}/etc/shadow + +echo "Using the host keymap" +cp /etc/vconsole.conf ${ROOT}/etc/vconsole.conf +#TODO: this is a systemd file, +# use udev/kbd + +echo "Copying init.d files& inittab" +mkdir ${ROOT}/etc/init.d/ +cp -r ./init/init.d ${ROOT}/etc/ +cp ./init/inittab ${ROOT}/etc/ + +echo "Unmounting & closing loopback" + +#umount ${ROOT} + +#losetup -d ${LOOPBACK} + +#zstd iglunix.img --ultra -22 -T +exit + +# losetup -o 32256 /dev/loop0 iglunix.img +# mkfs.vfat /dev/loop0 +# mount /dev/loop0 ./isoroot +# #rm -r isoroot/* +# #cp -r isoout/* isoroot +# umount ./isoroot diff --git a/scripts/geninitrd.sh b/scripts/geninitrd.sh new file mode 100755 index 0000000..33dce4a --- /dev/null +++ b/scripts/geninitrd.sh @@ -0,0 +1,137 @@ +#!/bin/mksh +# +# Creates an ISO from the following built packages. +# mksh bmake gmake libressl cmake curl rsync linux flex +# byacc om4 zlib samurai libffi python ca-certificates +# zlib expat gettext-tiny git kati netbsd-curses kakoune +# iglunix llvm musl +# +# This should be enough to completely rebuild Iglunix from Source +# + +# Create the root fs dir + +echo "geninitrd.sh" + +source build_utils + +rm -rf isoout isoroot +mkdir isoroot +mkdir isoout + + +# This should be a minimal number of packages, if we want fast boot times. +# The remaining packages are in createimg.sh + +#packages=(musl mksh bmake gmake libressl cmake curl rsync linux flex byacc om4 zlib samurai libffi python ca-certificates zlib expat gettext-tiny git kati netbsd-curses kakoune iglunix) +packages=(musl linux mksh busybox toybox iglunix) +cp_packages ./isoroot + +cat >isoroot/init << EOF +#!/bin/sh +exec /sbin/init +EOF + +rm isoroot/sbin/init +cat >isoroot/sbin/init << 'EOF' +#!/bin/sh + +export PATH=/usr/sbin:/usr/bin:/sbin:/bin +mkdir /proc +mkdir /sys +mkdir /tmp +mount -t proc proc /proc +mount -t sysfs sysfs /sys +mount -t tmpfs tmpfs /tmp + +busybox mdev -s +busybox mdev -d + +mkdir /mnt + +while ! mount $(findfs LABEL=__IGLUNIX_ROOT) /mnt; do + echo "Failed to mount boot disk" + echo "Retrying" + sleep 0.5 +done + + +echo "Starting switch_root" +#exec switch_root /mnt /etc/init.d/rcS +exec switch_root /mnt /sbin/init + +EOF + +chmod +x isoroot/init +chmod +x isoroot/sbin/init + +# mkdir -p isoroot/etc/init.d/ + + +# cat >isoroot/etc/init.d/rcS << EOF +# #!/bin/sh +# export PATH=/usr/sbin:/usr/bin:/sbin:/bin +# mkdir /proc +# mkdir /sys +# mkdir /tmp +# mount -t proc proc /proc +# mount -t sysfs sysfs /sys +# mount -t tmpfs tmpfs /tmp + +# echo 0 > /proc/sys/kernel/printk + +# ln -s /proc/self/fd/0 /dev/stdin +# ln -s /proc/self/fd/1 /dev/stdout +# ln -s /proc/self/fd/2 /dev/stderr + +# busybox mdev -s +# busybox mdev -d + +# mkdir -p /dev/pts +# mount -t devpts devpts /dev/pts + +# hostname -F /etc/hostname + +# mount -a + +# #busybox modprobe broadcom +# #busybox modprobe tg3 +# #ifconfig eth0 192.168.2.16 +# #busybox route add default gw 192.168.2.1 +# #busybox modprobe radeon + +# #busybox telnetd + +# #clear + +# EOF +# chmod +x isoroot/etc/init.d/rcS + +# cp /etc/inittab isoroot/etc/ + +cp /etc/hostname ./isoroot/hostname + +cd isoroot +find . | cpio -ov | gzip -9 >../isoout/initramfs.img +cp boot/vmlinuz ../isoout/vmlinuz + +# cd ../isoout +# mkdir -p EFI/BOOT +# cp ~/Shell.efi EFI/BOOT/BOOTX64.EFI + +# cat >startup.nsh << EOF +# \vmlinuz initrd=\initramfs.img console=ttyS0 console=tty0 + + +# EOF + +exit + +dd if=/dev/zero of=iglunix.img count=524288 +fdisk iglunix.img + +#losetup -o 32256 /dev/loop0 iglunix.img +mount /dev/loop0 ./isoroot +rm -r isoroot/* +cp -r isoout/* isoroot +umount ./isoroot 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/scripts/iglu.sh b/scripts/iglu.sh new file mode 100755 index 0000000..b0ed380 --- /dev/null +++ b/scripts/iglu.sh @@ -0,0 +1,242 @@ +#!/bin/sh + + + +HELP=" + -h This help window + --help alias to \`-h\` + + -i install + -u uninstall + -l outputs the license + -f lists installed files + -d list dependencies + -iu install update or install upgrade + -ui alias to \`-iu\` + + +These needs iglunix-dev (iglupkg) installed + -b build + -bi build and install the current package + -biu build and install update the current package + -bui alias to \`-iu\` + +NOT IMPLEMENTED: + -o root" + + + +usage() { + echo usage: $(basename "$0") '[-biu|-l|-f|-d|-h]' '[target]' "${HELP}" 1>&2 + exit 1 +} + +error_usage() { + echo $(basename "$0"): ERROR: "$@" 1>&2 + usage +} + +tar_fail() { + echo "Failed to extract tar" + exit 1 +} + +stat_fail() { + echo "Not a valid package" + echo "Missing package meta file" + exit 1 +} + +find_fail() { + echo "Package not installed" + exit 1 +} + +continue_interactive() { + printf '%s' "Do you wish to proceed?: " + read yn + case $yn in + [Yy]* ) echo "Proceeding";; + [Nn]* ) exit;; + * ) exit;; + esac +} + +already_exists() { + echo "Package already installed" + echo "pass -u and -i to upgrade" + exit 1 +} + +dep_not_found() { + echo "Missing dep: $1" + exit 1 +} + +iglupkg_check() { + if ! command -v iglupkg > /dev/null 2>&1; then + echo "iglupkg from iglunix-dev needs to be installed" + exit 1 + fi +} + +b= bi= i= u= l= f= o= d= iu= + + + +# Handle commandline arguments. +case "$1" in + -i) i=1;; + -u) u=1;; + -l) l=1;; + -f) f=1;; + -d) d=1;; + -iu) iu=1;; + -ui) iu=1;; + -b) b=1;; + -bi) bi=1;; + -biu) biu=1;; + -bui) biu=1;; + + -h) usage;; + --help) usage;; + + *) error_usage "bad argument $i";; +esac +shift + +while : +do + case "$1" in + -o) shift; o="$1";; + --) shift; break;; + -*) usage "bad argument $1";; + *) break;; + esac + shift +done + +if [ "$d" = "1" ]; then +#LIST DEPS + stat /usr/share/iglupkg/$1 > /dev/null 2> /dev/null || find_fail + grep deps /usr/share/iglupkg/$1 | tr '=' '\n' | grep -v deps | tr ':' '\n' + +elif [ "$iu" = "1" ]; then +#INSTALL & UPDATE + # Setup names + bname_we=$(basename "$1") + bname=$(echo "$bname_we" | cut -f 1 -d '.') + + # locate installed package + stat /usr/share/iglupkg/$bname > /dev/null 2> /dev/null || find_fail + + echo "Upgrading $bname_we" + continue_interactive + + # Extract new package and verify + mkdir -p /tmp/iglunix/$bname_we || exit 1 + tar -I zstd -xf $1 -C /tmp/iglunix/$bname_we || tar_fail + stat /tmp/iglunix/$bname_we/usr/share/iglupkg/$bname >/dev/null || stat_fail + + # Check deps + 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 + + # Grab a list of old files and new files to install + OFILES=$(sed -n '/\[fs\]/,$p' /usr/share/iglupkg/$bname | + grep -v "\[fs\]" | awk '{print length, $0}' | sort -rn | cut -d " " -f2-) + NFILES=$(sed -n '/\[fs\]/,$p' /tmp/iglunix/$bname_we/usr/share/iglupkg/$bname | + grep -v "\[fs\]" | awk '{print length, $0}' | sort -rn | cut -d " " -f2-) + + # Extract tar + tar -I zstd -xf $1 -C / + rm -r /tmp/iglunix/$bname_we + + + # Remove old files (don't know if this works yet) + for file in $OFILES; do + if echo $NFILES | grep -q $file; then + echo "not removing $file" + else + echo "attempting to remove $file" + case $(stat -c "%F" /$file) in + directory) rmdir 2>/dev/null /$file;; + "regular file") rm /$file;; + "regular empty file") rm /$file;; + "symbolic link") rm /$file;; + *) break;; + esac + fi + done + + echo $OFILES + echo $NFILES + +elif [ "$i" = "1" ]; then +#INSTALL + bname_we=$(basename "$1") + bname=$(echo "$bname_we" | cut -f 1 -d '.') + stat /usr/share/iglupkg/$bname > /dev/null 2> /dev/null && already_exists + echo "Installing $bname_we" + continue_interactive + mkdir -p /tmp/iglunix/$bname_we || exit 1 + tar -I zstd -xf $1 -C /tmp/iglunix/$bname_we || tar_fail + stat /tmp/iglunix/$bname_we/usr/share/iglupkg/$bname >/dev/null || stat_fail + 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 + tar -I zstd -xf $1 -C / + rm -r /tmp/iglunix/$bname_we +elif [ "$f" = "1" ]; then +#LIST INSTALLED FILES + stat /usr/share/iglupkg/$1 > /dev/null 2> /dev/null || find_fail + sed -n '/\[fs\]/,$p' /usr/share/iglupkg/$1 | grep -v "\[fs\]" + +elif [ "$l" = "1" ]; then +#LICENSE + stat /usr/share/iglupkg/$1 > /dev/null 2> /dev/null || find_fail + sed -n '/\[license\]/,/\[fs\]/{/\[license\]\|\[fs\]/!p}' /usr/share/iglupkg/$1 + +elif [ "$u" = "1" ]; then +#UNINSTALL + stat /usr/share/iglupkg/$1 > /dev/null 2> /dev/null || find_fail + FILES=$(sed -n '/\[fs\]/,$p' /usr/share/iglupkg/$1 | grep -v "\[fs\]" | awk '{print length, $0}' | sort -rn | cut -d " " -f2-) + + echo "Uninstalling $1" + continue_interactive + + for file in $FILES; do + case $(stat -c "%F" /$file) in + directory) rmdir 2>/dev/null /$file;; + "regular file") rm /$file;; + "regular empty file") rm /$file;; + "symbolic link") rm /$file;; + *) echo "can't remove /$file";; + esac + done +elif [ "$b" = "1" ]; then +#BUILD + iglupkg_check + iglupkg || exit 1 + +elif [ "$bi" = "1" ]; then +#BUILD INSTALL + iglupkg_check + iglupkg || exit 1 + cd out/ + for pkg in *.tar.xz; do + iglu -i "$pkg" + done + +elif [ "$biu" = "1" ]; then +#BUILD INSTALL UPDATE + iglupkg_check + iglupkg || exit 1 + cd out/ + for pkg in *.tar.xz; do + iglu -iu "$pkg" + done +fi 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/scripts/iglupkg.sh b/scripts/iglupkg.sh new file mode 100755 index 0000000..b64e3ae --- /dev/null +++ b/scripts/iglupkg.sh @@ -0,0 +1,113 @@ +#!/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 + +function do_fetch() { + mkdir -p src + cd src + srcdir=$(pwd) fetch + touch .fetched +} + +srcdir=$(pwd)/src +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 build +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/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/scripts/repover.sh b/scripts/repover.sh new file mode 100755 index 0000000..8c2f5f0 --- /dev/null +++ b/scripts/repover.sh @@ -0,0 +1,16 @@ +#!/bin/sh +REPO_VER=$(curl "https://repology.org/project/$1/history" 2>/dev/null | grep "version-newest" | tr '>' ' ' | tr '<' ' ' | awk '{ print $5; }' | head -n1) + +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 */$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; }') +LOCAL_MICRO=$(echo $LOCAL_VER | tr '.' ' ' | awk '{ print $3; }') + +echo "Remote Version:" $REPO_VER >&2 +echo "Local Version:" $LOCAL_VER >&2 +echo $REPO_VER diff --git a/scripts/updatever.sh b/scripts/updatever.sh new file mode 100755 index 0000000..18beff5 --- /dev/null +++ b/scripts/updatever.sh @@ -0,0 +1,5 @@ +#!/bin/sh +NVER=$(./repover.sh $1) +TMP=$(mktemp) +sed 's/pkgver=.*/pkgver='$NVER'/g' pkgs/$1/build.sh > $TMP +mv $TMP pkgs/$1/build.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/cmake.build.sh b/templates/cmake.build.sh index bfabf27..6448116 100644 --- a/templates/cmake.build.sh +++ b/templates/cmake.build.sh @@ -12,7 +12,8 @@ build() { cd build cmake -G Ninja ../ \ -DCMAKE_BUILD_TYPE=Release \ - -DCMAKE_INSTALL_PREFIX=/usr + -DCMAKE_INSTALL_PREFIX=/usr \ + -DCMAKE_INSTALL_LIBDIR=lib samu } diff --git a/templates/go.build.sh b/templates/go.build.sh new file mode 100644 index 0000000..7c9095b --- /dev/null +++ b/templates/go.build.sh @@ -0,0 +1,23 @@ +pkgname= +pkgver= + +fetch() { + curl "" -o $pkgname-$pkgver.tar.xz + tar -xf $pkgname-$pkgver.tar.xz +} + +build() { + cd $pkgname-$pkgver + go build -o build +} + +package() { + cd $pkgname-$pkgver + install -Dm755 build/$pkgname $pkgdir/usr/bin/$pkgname +} + +license() { + cd $pkgname-$pkgver + cat LICENSE +# cat COPYING +} diff --git a/templates/meson.build.sh b/templates/meson.build.sh new file mode 100644 index 0000000..835908c --- /dev/null +++ b/templates/meson.build.sh @@ -0,0 +1,30 @@ +pkgname= +pkgver= + +fetch() { + curl "" -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/templates/python.build.sh b/templates/python.build.sh new file mode 100644 index 0000000..55789d8 --- /dev/null +++ b/templates/python.build.sh @@ -0,0 +1,23 @@ +pkgname=python- +pkgver= + +fetch() { + curl "" -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 --skip-build +} + +license() { + cd $pkgname-$pkgver + cat LICENSE +# cat COPYING +} diff --git a/templates/rust.build.sh b/templates/rust.build.sh new file mode 100644 index 0000000..8d00d61 --- /dev/null +++ b/templates/rust.build.sh @@ -0,0 +1,30 @@ +pkgname= +pkgver= + +_clear_vendor_checksums() { + sed -i 's/\("files":{\)[^}]*/\1/' vendor/$1/.cargo-checksum.json +} + +fetch() { + curl "" -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/templates/simple.build.sh b/templates/simple.build.sh index 83e0e3e..54abde0 100644 --- a/templates/simple.build.sh +++ b/templates/simple.build.sh @@ -10,8 +10,9 @@ build() { cd $pkgname-$pkgver ./configure \ --prefix=/usr \ - --build=x86_64-unknown-linux-musl \ - --host=x86_64-unknown-linux-musl + --sysconfdir=/etc \ + --build=$TRIPLE \ + --host=$TRIPLE make }