From 3ded85b35c5b92031e2aba13adb8ef3a75ad4993 Mon Sep 17 00:00:00 2001 From: Daryl Ronningen Date: Wed, 6 Dec 2023 12:20:47 -0800 Subject: [PATCH] remove some busybox packages, add LLVM and VIM --- busybox/PKGBUILD | 2 +- busybox/config | 50 ++++++++--------- llvm-project/PKGBUILD | 124 ++++++++++++++++++++++++++++++++++++++++++ vim/PKGBUILD | 42 ++++++++++++++ 4 files changed, 192 insertions(+), 26 deletions(-) create mode 100644 llvm-project/PKGBUILD create mode 100644 vim/PKGBUILD diff --git a/busybox/PKGBUILD b/busybox/PKGBUILD index 68045d1..5e2c8a8 100644 --- a/busybox/PKGBUILD +++ b/busybox/PKGBUILD @@ -11,7 +11,7 @@ license=('GPL-2.0-ONLY') source=("https://busybox.net/downloads/busybox-$pkgver.tar.bz2" "config") sha256sums=('b8cc24c9574d809e7279c3be349795c5d5ceb6fdf19ca709f80cde50e47de314' - '5292742e2fef3edc1b4d7aa32dfda6229feb169aaa7891aace720608a299e7c8') + '5c5664f75ae5649c9e55f0d3a52fad4e67428f1accf37e555af7f28efbd566e1') build() { cd "$srcdir/$pkgname-$pkgver" diff --git a/busybox/config b/busybox/config index 41d53cc..a221a52 100644 --- a/busybox/config +++ b/busybox/config @@ -1,7 +1,7 @@ # # Automatically generated make config: don't edit # Busybox version: 1.36.1 -# Tue Dec 5 02:55:56 2023 +# Wed Dec 6 20:16:10 2023 # CONFIG_HAVE_DOT_CONFIG=y @@ -427,26 +427,26 @@ CONFIG_RUN_INIT=y CONFIG_ED=y CONFIG_PATCH=y CONFIG_SED=y -CONFIG_VI=y -CONFIG_FEATURE_VI_MAX_LEN=4096 -CONFIG_FEATURE_VI_8BIT=y -CONFIG_FEATURE_VI_COLON=y -CONFIG_FEATURE_VI_COLON_EXPAND=y -CONFIG_FEATURE_VI_YANKMARK=y -CONFIG_FEATURE_VI_SEARCH=y +# CONFIG_VI is not set +CONFIG_FEATURE_VI_MAX_LEN=0 +# CONFIG_FEATURE_VI_8BIT is not set +# CONFIG_FEATURE_VI_COLON is not set +# CONFIG_FEATURE_VI_COLON_EXPAND is not set +# CONFIG_FEATURE_VI_YANKMARK is not set +# CONFIG_FEATURE_VI_SEARCH is not set # CONFIG_FEATURE_VI_REGEX_SEARCH is not set -CONFIG_FEATURE_VI_USE_SIGNALS=y -CONFIG_FEATURE_VI_DOT_CMD=y -CONFIG_FEATURE_VI_READONLY=y -CONFIG_FEATURE_VI_SETOPTS=y -CONFIG_FEATURE_VI_SET=y -CONFIG_FEATURE_VI_WIN_RESIZE=y -CONFIG_FEATURE_VI_ASK_TERMINAL=y -CONFIG_FEATURE_VI_UNDO=y -CONFIG_FEATURE_VI_UNDO_QUEUE=y -CONFIG_FEATURE_VI_UNDO_QUEUE_MAX=256 -CONFIG_FEATURE_VI_VERBOSE_STATUS=y -CONFIG_FEATURE_ALLOW_EXEC=y +# CONFIG_FEATURE_VI_USE_SIGNALS is not set +# CONFIG_FEATURE_VI_DOT_CMD is not set +# CONFIG_FEATURE_VI_READONLY is not set +# CONFIG_FEATURE_VI_SETOPTS is not set +# CONFIG_FEATURE_VI_SET is not set +# CONFIG_FEATURE_VI_WIN_RESIZE is not set +# CONFIG_FEATURE_VI_ASK_TERMINAL is not set +# CONFIG_FEATURE_VI_UNDO is not set +# CONFIG_FEATURE_VI_UNDO_QUEUE is not set +CONFIG_FEATURE_VI_UNDO_QUEUE_MAX=0 +# CONFIG_FEATURE_VI_VERBOSE_STATUS is not set +# CONFIG_FEATURE_ALLOW_EXEC is not set # # Finding Utilities @@ -526,14 +526,14 @@ CONFIG_FEATURE_INIT_MODIFY_CMDLINE=y CONFIG_FEATURE_SHADOWPASSWDS=y CONFIG_USE_BB_PWD_GRP=y CONFIG_USE_BB_SHADOW=y -CONFIG_USE_BB_CRYPT=y -CONFIG_USE_BB_CRYPT_SHA=y +# CONFIG_USE_BB_CRYPT is not set +# CONFIG_USE_BB_CRYPT_SHA is not set CONFIG_ADD_SHELL=y CONFIG_REMOVE_SHELL=y CONFIG_ADDGROUP=y CONFIG_FEATURE_ADDUSER_TO_GROUP=y CONFIG_ADDUSER=y -# CONFIG_FEATURE_CHECK_NAMES is not set +CONFIG_FEATURE_CHECK_NAMES=y CONFIG_LAST_ID=60000 CONFIG_FIRST_SYSTEM_ID=100 CONFIG_LAST_SYSTEM_ID=999 @@ -639,7 +639,7 @@ CONFIG_GETOPT=y CONFIG_FEATURE_GETOPT_LONG=y CONFIG_HEXDUMP=y CONFIG_HD=y -CONFIG_XXD=y +# CONFIG_XXD is not set CONFIG_HWCLOCK=y # CONFIG_FEATURE_HWCLOCK_ADJTIME_FHS is not set CONFIG_IONICE=y @@ -841,7 +841,7 @@ CONFIG_RX=y CONFIG_SEEDRNG=y CONFIG_SETFATTR=y CONFIG_SETSERIAL=y -CONFIG_STRINGS=y +# CONFIG_STRINGS is not set CONFIG_TIME=y CONFIG_TREE=y CONFIG_TS=y diff --git a/llvm-project/PKGBUILD b/llvm-project/PKGBUILD new file mode 100644 index 0000000..2afae42 --- /dev/null +++ b/llvm-project/PKGBUILD @@ -0,0 +1,124 @@ +# Maintainer: Daryl Ronningen + +pkgbase=llvm-project +pkgname=( + llvm + llvm-runtimes + clang + lld +) +pkgver=17.0.6 +pkgrel=1 +pkgdesc="collection of modular and reusable compiler and toolchain technologies." +arch=("x86_64") +url="https://llvm.org" +license=("LLVM-exception") +depends=("zlib-ng") +makedepends=() +source=("https://github.com/llvm/llvm-project/releases/download/llvmorg-17.0.6/llvm-project-$pkgver.src.tar.xz") +sha256sums=('58a8818c60e6627064f312dbf46c02d9949956558340938b71cf731ad8bc0813') + +build() { + cd $pkgbase-$pkgver.src + + local cmake_args=( + -G Ninja \ + -DCMAKE_BUILD_TYPE=Release \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DCMAKE_INSTALL_LIBDIR=lib \ + -DCMAKE_C_COMPILER=clang \ + -DCMAKE_CXX_COMPILER=clang++ \ + -DLLVM_TARGETS_TO_BUILD=X86 \ + -DLLVM_DEFAULT_TARGET_TRIPLE=x86_64-pc-linux-musl \ + -DLLVM_HOST_TRIPLE=x86_64-pc-linux-musl \ + -DLLVM_ENABLE_EH=ON \ + -DLLVM_ENABLE_RTTI=ON \ + -DLLVM_ENABLE_ZLIB=ON \ + -DLLVM_BUILD_LLVM_DYLIB=ON \ + -DLLVM_LINK_LLVM_DYLIB=ON \ + -DENABLE_LINKER_BUILD_ID=ON \ + -DLLVM_ENABLE_LIBCXX=ON \ + -DLLVM_ENABLE_ZSTD=ON \ + -DLLVM_ENABLE_TERMINFO=ON \ + -DLLVM_ENABLE_LIBEDIT=OFF \ + -DLLVM_ENABLE_LIBXML2=OFF \ + -DLLVM_ENABLE_LIBPFM=OFF \ + -DLLVM_ENABLE_OCAMLDOC=OFF \ + -DLLVM_ENABLE_LLD=ON \ + -DLLVM_INSTALL_UTILS=ON \ + -DLLVM_INSTALL_BINUTILS_SYMLINKS=ON \ + -DLLVM_INSTALL_CCTOOLS_SYMLINKS=ON \ + -DLLVM_INCLUDE_BENCHMARKS=OFF \ + -DLLVM_INCLUDE_DOCS=OFF \ + -DLLVM_INCLUDE_EXAMPLES=OFF \ + -DLLVM_INCLUDE_TESTS=OFF \ + -DCOMPILER_RT_DEFAULT_TARGET_TRIPLE=x86_64-pc-linux-musl \ + -DCOMPILER_RT_BUILD_SANITIZERS=OFF \ + -DCOMPILER_RT_BUILD_XRAY=OFF \ + -DCOMPILER_RT_BUILD_LIBFUZZER=OFF \ + -DCOMPILER_RT_BUILD_PROFILE=OFF \ + -DCOMPILER_RT_BUILD_MEMPROF=OFF \ + -DCOMPILER_RT_BUILD_GWP_ASAN=OFF \ + -DCOMPILER_RT_USE_LLVM_UNWINDER=ON \ + -DCOMPILER_RT_USE_BUILTINS_LIBRARY=ON \ + -DCOMPILER_RT_CXX_LIBRARY=libcxx \ + -DCOMPILER_RT_INSTALL_PATH=/usr/lib/clang/${pkgver%%.*} \ + -DCLANG_DEFAULT_CXX_STDLIB=libc++ \ + -DCLANG_DEFAULT_RTLIB=compiler-rt \ + -DCLANG_DEFAULT_UNWINDLIB=libunwind \ + -DCLANG_INCLUDE_TESTS=OFF \ + -DCLANG_VENDOR="Ikeda Linux" \ + -DLIBCXX_HAS_MUSL_LIBC=ON \ + -DLIBCXX_ENABLE_LOCALIZATION=ON \ + -DLIBCXX_ENABLE_NEW_DELETE_DEFINITIONS=ON \ + -DLIBCXX_CXX_ABI=libcxxabi \ + -DLIBCXX_USE_COMPILER_RT=ON \ + -DLIBCXX_ENABLE_STATIC_ABI_LIBRARY=ON \ + -DLIBCXX_ENABLE_ASSERTIONS=ON \ + -DLIBCXXABI_USE_LLVM_UNWINDER=ON \ + -DLIBCXXABI_ENABLE_STATIC_UNWINDER=ON \ + -DLIBCXXABI_USE_COMPILER_RT=ON \ + -DLIBUNWIND_INSTALL_HEADERS=ON \ + -DLIBUNWIND_USE_COMPILER_RT=ON \ + -DLLD_VENDOR="Ikeda Linux" + ) + + cmake -B build-llvm -S llvm "${cmake_args[@]}" + cmake -B build-llvm-runtimes -S runtimes -DLLVM_ENABLE_RUNTIMES="compiler-rt;libunwind;libcxx;libcxxabi" "${cmake_args[@]}" + cmake -B build-clang -S clang "${cmake_args[@]}" + cmake -B build-lld -S lld "${cmake_args[@]}" + + ninja -C build-llvm + ninja -C build-llvm-runtimes + ninja -C build-clang + ninja -C build-lld +} + +package_llvm() { + cd $pkgbase-$pkgver.src + + DESTDIR=$pkgdir ninja -C build-llvm install +} + +package_llvm-runtimes() { + cd $pkgbase-$pkgver.src + + DESTDIR=$pkgdir ninja -C build-llvm-runtimes install +} + +package_clang() { + cd $pkgbase-$pkgver.src + + DESTDIR=$pkgdir ninja -C build-clang install + + ln -s clang $pkgdir/usr/bin/cc + ln -s clang++ $pkgdir/usr/bin/cpp +} + +package_lld() { + cd $pkgbase-$pkgver.src + + DESTDIR=$pkgdir ninja -C build-lld install + + ln -s ld.lld $pkgdir/usr/bin/ld +} diff --git a/vim/PKGBUILD b/vim/PKGBUILD new file mode 100644 index 0000000..40c0c42 --- /dev/null +++ b/vim/PKGBUILD @@ -0,0 +1,42 @@ +pkgname='vim' +pkgver=9.0.2153 +pkgrel=1 +pkgdesc='Vi Improved, a highly configurable, improved version of the vi text editor' +url='https://www.vim.org' +arch=('x86_64') +license=('custom:vim') +source=(https://github.com/vim/vim/archive/refs/tags/v$pkgver.tar.gz) +sha256sums=('94cb108fa9c5454d295ace27fc47b130b68febdc8910dd6d2d899a8531840dde') + +build() { + cd $pkgname-$pkgver + ./configure \ + --prefix=/usr \ + --localstatedir=/var/lib/vim \ + --with-features=huge \ + --with-compiledby='Ikeda Linux' \ + --with-x=no \ + --disable-gui \ + --enable-multibyte \ + --enable-perlinterp=dynamic \ + --enable-python3interp=dynamic \ + --enable-rubyinterp=dynamic \ + --enable-luainterp=dynamic \ + --enable-tclinterp=dynamic \ + --disable-canberra + make +} + +package_vim() { + cd $pkgname-$pkgver + make VIMRCLOC=/etc DESTDIR="${pkgdir}" install + + # remove gvim.desktop as not included + rm "${pkgdir}"/usr/share/applications/gvim.desktop + + ln -s vim $pkgdir/usr/bin/vi + + # license + install -Dm 644 runtime/doc/uganda.txt \ + "${pkgdir}"/usr/share/licenses/${pkgname}/license.txt +}