diff options
-rw-r--r-- | system/musl/APKBUILD | 6 | ||||
-rw-r--r-- | system/musl/dynamic-binary-stack-size.patch | 97 | ||||
-rw-r--r-- | user/kcachegrind/APKBUILD | 43 | ||||
-rw-r--r-- | user/tellico/APKBUILD | 55 | ||||
-rw-r--r-- | user/tellico/btparse-strcasecmp.patch | 20 | ||||
-rw-r--r-- | user/xf86-video-fbdev/APKBUILD | 34 | ||||
-rw-r--r-- | user/youtube-dl/APKBUILD | 68 |
7 files changed, 321 insertions, 2 deletions
diff --git a/system/musl/APKBUILD b/system/musl/APKBUILD index 08f4342dd..dbbfe640c 100644 --- a/system/musl/APKBUILD +++ b/system/musl/APKBUILD @@ -2,7 +2,7 @@ # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=musl pkgver=1.1.20 -pkgrel=4 +pkgrel=5 pkgdesc="System library (libc) implementation" url="http://www.musl-libc.org/" arch="all" @@ -11,7 +11,7 @@ license="MIT" depends="" depends_dev="!uclibc-dev" makedepends="$depends_dev" -subpackages="$pkgname-dev $pkgname-dbg" +subpackages="$pkgname-dev" case "$BOOTSTRAP" in nocc) pkgname="musl-dev" subpackages="" @@ -32,6 +32,7 @@ source="http://www.musl-libc.org/releases/musl-$pkgver.tar.gz dcngettext-null-deref.patch getaddrinfo-regression.patch ppc64-atomic.patch + dynamic-binary-stack-size.patch ldconfig getent.c @@ -127,6 +128,7 @@ b967339d9048161583523e847be91779adb0e16cc225d6ff85ef51748269b2dab08a0b8e558ad014 a08d1b170356beea333ace1da12f8a8399ca80c5d9c32ff2fcd8562537a670214f566e4b1219a11b32129078e22fbf7009bb277b7de8550a89352a64b3b5090d dcngettext-null-deref.patch e3953a3a73ef11696dd3eb216e18b152ae35198d8bff686d157e27bc90fb558f9a0be518025a90534e9afd6ea1bf731ffdb6fcb202bb9368f2c8eec7ca886141 getaddrinfo-regression.patch aae9110eccb8cd7dcd3c957fcb01ed524598f79f7fa1a16b9993af40793545d1ec211e7e6aeabe7af7715d94cc26a473ea0acf6d6e66019bf65f03d4b8e24a4b ppc64-atomic.patch +654f76c96ed0e69e19b1a20569e83751bb207a8c181b26742f505638095dde3f4dd3f785deb92c49a603bd15cd8d4932129f567de8cd2edffdd8551c4dfd6976 dynamic-binary-stack-size.patch cce2f1eeb61e55674469c26871a573cce61d739c3defe9c8f56f2b774f6ba5435849ad542a6714120efddc98c297098e9c98a1a424ac593df2243d4aa479f9a9 ldconfig 378d70e65bcc65bb4e1415354cecfa54b0c1146dfb24474b69e418cdbf7ad730472cd09f6f103e1c99ba6c324c9560bccdf287f5889bbc3ef0bdf0e08da47413 getent.c 9d42d66fb1facce2b85dad919be5be819ee290bd26ca2db00982b2f8e055a0196290a008711cbe2b18ec9eee8d2270e3b3a4692c5a1b807013baa5c2b70a2bbf iconv.c" diff --git a/system/musl/dynamic-binary-stack-size.patch b/system/musl/dynamic-binary-stack-size.patch new file mode 100644 index 000000000..e2e3f12d3 --- /dev/null +++ b/system/musl/dynamic-binary-stack-size.patch @@ -0,0 +1,97 @@ +From 7b3348a98c139b4b4238384e52d4b0eb237e4833 Mon Sep 17 00:00:00 2001 +From: Rich Felker <dalias@aerifal.cx> +Date: Tue, 18 Sep 2018 23:54:18 -0400 +Subject: support setting of default thread stack size via PT_GNU_STACK header + +this facilitates building software that assumes a large default stack +size without any patching to call pthread_setattr_default_np or +pthread_attr_setstacksize at each thread creation site, using just +LDFLAGS. + +normally the PT_GNU_STACK header is used only to reflect whether +executable stack is desired, but with GNU ld at least, passing +-Wl,-z,stack-size=N will set a size on the program header. with this +patch, that size will be incorporated into the default stack size +(subject to increase-only rule and DEFAULT_STACK_MAX limit). + +both static and dynamic linking honor the program header. for dynamic +linking, all libraries loaded at program start, including preloaded +ones, are considered. dlopened libraries are not considered, for +several reasons. extra logic would be needed to defer processing until +the load of the new library is commited, synchronization woud be +needed since other threads may be running concurrently, and the +effectiveness woud be limited since the larger size would not apply to +threads that already existed at the time of dlopen. programs that will +dlopen code expecting a large stack need to declare the requirement +themselves, or pthread_setattr_default_np can be used. +--- + ldso/dynlink.c | 12 ++++++++++++ + src/env/__init_tls.c | 5 +++++ + 2 files changed, 17 insertions(+) + +diff --git a/ldso/dynlink.c b/ldso/dynlink.c +index e4829c3a..3ecbddfa 100644 +--- a/ldso/dynlink.c ++++ b/ldso/dynlink.c +@@ -22,6 +22,7 @@ + #include "dynlink.h" + + static void error(const char *, ...); ++extern size_t __default_stacksize; + + #define MAXP2(a,b) (-(-(a)&-(b))) + #define ALIGN(x,y) ((x)+(y)-1 & -(y)) +@@ -609,6 +610,12 @@ static void *map_library(int fd, struct dso *dso) + } else if (ph->p_type == PT_GNU_RELRO) { + dso->relro_start = ph->p_vaddr & -PAGE_SIZE; + dso->relro_end = (ph->p_vaddr + ph->p_memsz) & -PAGE_SIZE; ++ } else if (ph->p_type == PT_GNU_STACK) { ++ if (!runtime && ph->p_memsz > __default_stacksize) { ++ __default_stacksize = ++ ph->p_memsz < (8<<20) ? ++ ph->p_memsz : (8<<20); ++ } + } + if (ph->p_type != PT_LOAD) continue; + nsegs++; +@@ -1238,6 +1245,12 @@ static void kernel_mapped_dso(struct dso *p) + } else if (ph->p_type == PT_GNU_RELRO) { + p->relro_start = ph->p_vaddr & -PAGE_SIZE; + p->relro_end = (ph->p_vaddr + ph->p_memsz) & -PAGE_SIZE; ++ } else if (ph->p_type == PT_GNU_STACK) { ++ if (!runtime && ph->p_memsz > __default_stacksize) { ++ __default_stacksize = ++ ph->p_memsz < (8<<20) ? ++ ph->p_memsz : (8<<20); ++ } + } + if (ph->p_type != PT_LOAD) continue; + if (ph->p_vaddr < min_addr) +diff --git a/src/env/__init_tls.c b/src/env/__init_tls.c +index e0224243..96d0e284 100644 +--- a/src/env/__init_tls.c ++++ b/src/env/__init_tls.c +@@ -8,6 +8,8 @@ + #include "atomic.h" + #include "syscall.h" + ++extern size_t __default_stacksize; ++ + int __init_tp(void *p) + { + pthread_t td = p; +@@ -90,6 +91,11 @@ static void static_init_tls(size_t *aux) + base = (size_t)_DYNAMIC - phdr->p_vaddr; + if (phdr->p_type == PT_TLS) + tls_phdr = phdr; ++ if (phdr->p_type == PT_GNU_STACK && ++ phdr->p_memsz > __default_stacksize) ++ __default_stacksize = ++ phdr->p_memsz < (8<<20) ? ++ phdr->p_memsz : (8<<20); + } + + if (tls_phdr) { +-- +cgit v1.2.1 + diff --git a/user/kcachegrind/APKBUILD b/user/kcachegrind/APKBUILD new file mode 100644 index 000000000..68dc6519c --- /dev/null +++ b/user/kcachegrind/APKBUILD @@ -0,0 +1,43 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: A. Wilcox <awilfox@adelielinux.org> +pkgname=kcachegrind +pkgver=18.08.3 +pkgrel=0 +pkgdesc="Profile data visualisation tool and call graph viewer" +url="https://kcachegrind.github.io/html/Home.html" +arch="all" +license="GPL-2.0-only" +depends="binutils graphviz" +makedepends="cmake extra-cmake-modules qt5-qtbase-dev qt5-qttools-dev + karchive-dev kconfig-dev kcoreaddons-dev kdoctools-dev ki18n-dev kio-dev + kwidgetsaddons-dev kxmlgui-dev" +subpackages="$pkgname-doc $pkgname-lang" +source="https://download.kde.org/stable/applications/$pkgver/src/kcachegrind-$pkgver.tar.xz" + +build() { + cd "$builddir" + if [ "$CBUILD" != "$CHOST" ]; then + CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux" + fi + cmake \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DCMAKE_INSTALL_LIBDIR=lib \ + -DBUILD_SHARED_LIBS=True \ + -DCMAKE_BUILD_TYPE=RelWithDebugInfo \ + -DCMAKE_CXX_FLAGS="$CXXFLAGS" \ + -DCMAKE_C_FLAGS="$CFLAGS" \ + ${CMAKE_CROSSOPTS} + make +} + +check() { + cd "$builddir" + CTEST_OUTPUT_ON_FAILURE=TRUE ctest +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install +} + +sha512sums="abbbf7ba539da1fa71d31e4603d1b8a76178a48bf503c735ebce9bbc9887e9ec64b2338ce77de2f38114faa27dee51e19af61cf4d3e9fbbe942a417edf2558c1 kcachegrind-18.08.3.tar.xz" diff --git a/user/tellico/APKBUILD b/user/tellico/APKBUILD new file mode 100644 index 000000000..a38fa7618 --- /dev/null +++ b/user/tellico/APKBUILD @@ -0,0 +1,55 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: A. Wilcox <awilfox@adelielinux.org> +pkgname=tellico +pkgver=3.1.3 +pkgrel=0 +pkgdesc="Collection manager" +url="http://tellico-project.org/" +arch="all" +license="GPL-2.0-only OR GPL-3.0-only" +depends="" +makedepends="cmake extra-cmake-modules qt5-qtbase-dev libxml2-dev libxslt-dev + karchive-dev kcodecs-dev kconfig-dev kconfigwidgets-dev kcoreaddons-dev + kcrash-dev kdoctools-dev kguiaddons-dev khtml-dev ki18n-dev + kiconthemes-dev kio-dev kitemmodels-dev kjobwidgets-dev kwallet-dev + kwidgetsaddons-dev kwindowsystem-dev kxmlgui-dev solid-dev + + kfilemetadata-dev knewstuff-dev libcdio-dev libksane-dev poppler-dev + poppler-qt5-dev taglib-dev" +subpackages="$pkgname-doc $pkgname-lang" +source="http://tellico-project.org/files/tellico-$pkgver.tar.xz + btparse-strcasecmp.patch + " + +build() { + cd "$builddir" + if [ "$CBUILD" != "$CHOST" ]; then + CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux" + fi + cmake \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DCMAKE_INSTALL_LIBDIR=lib \ + -DBUILD_SHARED_LIBS=True \ + -DCMAKE_BUILD_TYPE=RelWithDebugInfo \ + -DCMAKE_CXX_FLAGS="$CXXFLAGS" \ + -DCMAKE_C_FLAGS="$CFLAGS -std=gnu99" \ + ${CMAKE_CROSSOPTS} + make +} + +check() { + cd "$builddir" + # imagejob: needs running X11 + # htmlexporter: needs plasma desktop + # filelisting: needs dbus + # tellicoread: needs network + CTEST_OUTPUT_ON_FAILURE=TRUE ctest -E '(filelisting|imagejob|htmlexporter|tellicoread)test' +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install +} + +sha512sums="9024f423f0685e834ed46e7038c5b95fab5b684aaac00d6298e23493fb4290daeda994faf36a0f04973093a477be5506591e6b0e7f57ef5591fb10953ad8ec5e tellico-3.1.3.tar.xz +4627e717d67340de6d88f7a21604a66ba236c651a0ae38d9d3569b76ad58c79f046cfd5686dd688de86d6acafc17ba3959902babdc7f00ab8e9d65717c4fab4a btparse-strcasecmp.patch" diff --git a/user/tellico/btparse-strcasecmp.patch b/user/tellico/btparse-strcasecmp.patch new file mode 100644 index 000000000..2afd4dec3 --- /dev/null +++ b/user/tellico/btparse-strcasecmp.patch @@ -0,0 +1,20 @@ +--- tellico-3.1.3/src/3rdparty/btparse/lex_auxiliary.c.old 2018-09-03 00:35:39.883417043 +0000 ++++ tellico-3.1.3/src/3rdparty/btparse/lex_auxiliary.c 2018-11-25 06:07:20.260000000 +0000 +@@ -32,6 +32,7 @@ + #include "bt_debug.h" + #include <stdlib.h> + #include <string.h> ++#include <strings.h> + #include <ctype.h> + #include <stdarg.h> + #include <assert.h> +--- tellico-3.1.3/src/3rdparty/btparse/sym.c.old 2018-09-03 00:35:39.887417131 +0000 ++++ tellico-3.1.3/src/3rdparty/btparse/sym.c 2018-11-25 06:07:11.570000000 +0000 +@@ -110,6 +110,7 @@ + /*#include "bt_config.h"*/ + #include <stdio.h> + #include <string.h> ++#include <strings.h> + #include <stdlib.h> + #ifdef MEMCHK + #include "trax.h" diff --git a/user/xf86-video-fbdev/APKBUILD b/user/xf86-video-fbdev/APKBUILD new file mode 100644 index 000000000..628551019 --- /dev/null +++ b/user/xf86-video-fbdev/APKBUILD @@ -0,0 +1,34 @@ +# Maintainer: A. Wilcox <awilfox@adelielinux.org> +pkgname=xf86-video-fbdev +pkgver=0.5.0 +pkgrel=0 +pkgdesc="X.Org driver for video over framebuffers" +url="https://www.X.Org/" +arch="all" +license="MIT" +subpackages="$pkgname-doc" +depends="" +makedepends="libxi-dev util-macros xorgproto-dev xorg-server-dev" +source="https://www.X.org/releases/individual/driver/$pkgname-$pkgver.tar.bz2" + +build() { + cd "$builddir" + export LDFLAGS="$LDFLAGS -Wl,-z,lazy" + ./configure \ + --build=$CBUILD \ + --host=$CHOST \ + --prefix=/usr + make +} + +check() { + cd "$builddir" + make check +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + install -Dm644 COPYING "$pkgdir"/usr/share/licenses/$pkgname/COPYING +} +sha512sums="c1217b943bbe3301b3c2a8649ed1004c3c67b02607bd56bbc14f6dfa05e7f0184332c81a6a19595514745501ed88526aee932e555779b7c3a8233646b0979448 xf86-video-fbdev-0.5.0.tar.bz2" diff --git a/user/youtube-dl/APKBUILD b/user/youtube-dl/APKBUILD new file mode 100644 index 000000000..af5d02712 --- /dev/null +++ b/user/youtube-dl/APKBUILD @@ -0,0 +1,68 @@ +# Contributor: Peter Bui <pnutzh4x0r@gmail.com> +# Contributor: Sören Tempel <soeren+alpine@soeren-tempel.net> +# Contributor: Timo Teräs <timo.teras@iki.fi> +# Maintainer: Max Rees <maxcrees@me.com> +pkgname=youtube-dl +pkgver=2018.11.23 +pkgrel=0 +pkgdesc="Command-line program to download videos from YouTube and many other sites" +url="https://youtube-dl.org" +arch="noarch" +options="!check" # Takes way too long, and uses network +license="Unlicense AND Public-Domain" +depends="ffmpeg python3" +subpackages="$pkgname-doc + $pkgname-zsh-completion:zshcomp + $pkgname-bash-completion:bashcomp + $pkgname-fish-completion:fishcomp" +source="https://github.com/rg3/$pkgname/releases/download/$pkgver/$pkgname-$pkgver.tar.gz" +builddir="$srcdir/$pkgname" + +prepare() { + default_prepare + sed -i \ + -e 's|etc/bash_completion.d|share/bash-completion/completions|' \ + -e 's|etc/fish/completions|share/fish/completions|' \ + "$builddir/setup.py" +} + +check() { + cd "$builddir" + python3 -m unittest discover +} + +package() { + cd "$builddir" + python3 setup.py install --root="$pkgdir/" --optimize=1 +} + +zshcomp() { + pkgdesc="Zsh completions for $pkgname" + depends="" + install_if="$pkgname=$pkgver-r$pkgrel zsh" + + install -Dm644 "$builddir/$pkgname.zsh" \ + "$subpkgdir/usr/share/zsh/site-functions/_$pkgname" +} + +bashcomp() { + pkgdesc="Bash completions for $pkgname" + depends="" + install_if="$pkgname=$pkgver-r$pkgrel bash-completion" + + mkdir -p "$subpkgdir/usr/share/bash-completion/completions/" + mv "$pkgdir/usr/share/bash-completion/completions/$pkgname.bash-completion" \ + "$subpkgdir/usr/share/bash-completion/completions/$pkgname" +} + +fishcomp() { + pkgdesc="Fish completions for $pkgname" + depends="" + install_if="$pkgname=$pkgver-r$pkgrel fish" + + mkdir -p "$subpkgdir/usr/share/fish/completions/" + mv "$pkgdir/usr/share/fish/completions/$pkgname.fish" \ + "$subpkgdir/usr/share/fish/completions/" +} + +sha512sums="d4d2813657972c37d3493743a44055d7a776aeb5c5a97902e07caa317a3b2db30332507c37b56b3d8554e0bdc2a0ec6a9862977b449b363343a4de2df12bf059 youtube-dl-2018.11.23.tar.gz" |