diff options
794 files changed, 34756 insertions, 5174 deletions
diff --git a/experimental/perl-task-freecellsolver-testing/APKBUILD b/experimental/perl-task-freecellsolver-testing/APKBUILD deleted file mode 100644 index 5176d50b0..000000000 --- a/experimental/perl-task-freecellsolver-testing/APKBUILD +++ /dev/null @@ -1,46 +0,0 @@ -# Automatically generated by apkbuild-cpan, template 1 -# Contributor: A. Wilcox <awilfox@adelielinux.org> -# Maintainer: A. Wilcox <awilfox@adelielinux.org> -pkgname=perl-task-freecellsolver-testing -_pkgreal=Task-FreecellSolver-Testing -pkgver=0.0.11 -pkgrel=0 -pkgdesc="Perl module for testing the Freecell Solver package" -url="http://search.cpan.org/dist/Task-FreecellSolver-Testing/" -arch="noarch" -license="MIT" -cpandepends="" -cpanmakedepends="perl-module-build" -depends="$cpandepends" -makedepends="perl-dev $cpanmakedepends" -subpackages="$pkgname-doc" -source="http://search.cpan.org/CPAN/authors/id/S/SH/SHLOMIF/$_pkgreal-v$pkgver.tar.gz" -builddir="$srcdir/$_pkgreal-v$pkgver" - -prepare() { - cd "$builddir" - if [ -e Build.PL ]; then - perl Build.PL installdirs=vendor - else - PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor - fi -} - -build() { - cd "$builddir" - export CFLAGS=`perl -MConfig -E 'say $Config{ccflags}'` - ./Build -} - -check() { - cd "$builddir" - ./Build test -} - -package() { - cd "$builddir" - ./Build install destdir="$pkgdir" - find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete -} - -sha512sums="85c3d7e68e0fa14abac2442ec7b6e90cc4df9f6733fbd87e5a872043a03a71d8cd3a262c816d861a1c729646ff379665c1d5d6e0bc80ae476db089d9d3793b82 Task-FreecellSolver-Testing-v0.0.11.tar.gz" diff --git a/experimental/qt5-qtwebkit/APKBUILD b/experimental/qt5-qtwebkit/APKBUILD index c6e8103ba..fb6c39631 100644 --- a/experimental/qt5-qtwebkit/APKBUILD +++ b/experimental/qt5-qtwebkit/APKBUILD @@ -15,18 +15,42 @@ makedepends="$depends_dev ninja sqlite-dev icu-dev ruby perl bison flex gperf libxml2-dev libxslt-dev libjpeg-turbo-dev libpng-dev zlib-dev glib-dev gstreamer-dev fontconfig-dev qt5-qtsensors-dev qt5-qtpositioning-dev qt5-qtdeclarative-dev qt5-qtwebchannel-dev libxcomposite-dev - libxrender-dev gst-plugins-base-dev" + libxrender-dev gst-plugins-base-dev hyphen-dev libexecinfo-dev" subpackages="$pkgname-dev $pkgname-doc" source="https://github.com/annulen/webkit/releases/download/$_realname-$_realver/$_realname-$_realver.tar.xz - js-py3.patch + jsc-port-to-musl.patch + musl-thread-stacksize.patch " builddir="$srcdir"/$_realname-$_realver +unpack() { + default_unpack + # just ripped from Firefox's APKBUILD... + [ -z $SKIP_PYTHON ] || return 0 + msg "Killing all remaining hope for humanity and building Python 2..." + cd "$srcdir" + [ -d python ] && rm -r python + mkdir python + cd python + # 19:39 <+solar> just make the firefox build process build its own py2 copy + curl -O https://www.python.org/ftp/python/2.7.15/Python-2.7.15.tar.xz + tar xJf Python-2.7.15.tar.xz + cd Python-2.7.15 + # 20:03 <calvin> TheWilfox: there's always violence + ./configure --prefix="$srcdir/python" + make -j $JOBS + # 6 tests failed: + # test__locale test_os test_posix test_re test_strptime test_time + # make test + make -j $JOBS install +} + build() { cd "$builddir" if [ "$CBUILD" != "$CHOST" ]; then CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux" fi + export PATH="$srcdir/python/bin:$PATH" # We can enable the JIT when it is stable on all Tier 1 platforms: # pmmx (ensure no SSE) # ppc @@ -45,10 +69,14 @@ build() { -DCMAKE_C_FLAGS="$CFLAGS" \ -DENABLE_JIT=OFF \ -DPORT=Qt \ - -DUSE_LIBHYPHEN=OFF \ -DUSE_SYSTEM_MALLOC=ON \ ${CMAKE_CROSSOPTS} - make + # too memory hungry + if [ -z "$JOBS" -o $JOBS -gt 32 ]; then + make -j32 + else + make + fi } check() { @@ -56,15 +84,11 @@ check() { CTEST_OUTPUT_ON_FAILURE=TRUE ctest } -check() { - cd "$builddir" - make check -} - package() { cd "$builddir" make DESTDIR="$pkgdir" install } sha512sums="b15985aab20c5618dc1f71a0d91f02dbed993516272090a4a12990714bf4c9554ccbdcf9d6a143bf46fcc2c170f691e571114d61686fe49791f8d5c540785758 qtwebkit-5.212.0-alpha2.tar.xz -cee23bc493e2b207119a8ae26691d9d75f91535a39780b9438539c8f3789d9b28377b135b64738a34cf10ebbb30e3bc29eb2f56988a7a0d0cf8ddc9bbca7c8ca js-py3.patch" +19efd97c5f628108d30cc0e5e53f689725cc480ffe1ea90577e5f961d7f35a6a434dda5a03c73c0fb74a30c46ced32bcf580340a2eaf4e72960e61c28ed34dba jsc-port-to-musl.patch +a8df6d20346882e49745dbdf9bdf2eddf2f3e1ac3301e9fd826397fa746d1d9228deaf2eab0316fa977a85032d6c091559cd5404b7a576e3adc0bec64a5a4ad9 musl-thread-stacksize.patch" diff --git a/experimental/qt5-qtwebkit/js-py3.patch b/experimental/qt5-qtwebkit/js-py3.patch deleted file mode 100644 index 44e77cde0..000000000 --- a/experimental/qt5-qtwebkit/js-py3.patch +++ /dev/null @@ -1,35 +0,0 @@ ---- qtwebkit-5.212.0-alpha2/Source/JavaScriptCore/generate-bytecode-files (original) -+++ qtwebkit-5.212.0-alpha2/Source/JavaScriptCore/generate-bytecode-files (refactored) -@@ -91,7 +91,7 @@ - try: - return open(path, mode) - except IOError as e: -- print "I/O error opening {0}, ({1}): {2}".format(path, e.errno, e.strerror) -+ print("I/O error opening {0}, ({1}): {2}".format(path, e.errno, e.strerror)) - exit(1) - - def hashFile(file): -@@ -165,7 +165,7 @@ - try: - bytecodeSections = json.load(bytecodeFile, encoding = "utf-8") - except: -- print "Unexpected error parsing {0}: {1}".format(bytecodeJSONFile, sys.exc_info()) -+ print("Unexpected error parsing {0}: {1}".format(bytecodeJSONFile, sys.exc_info())) - - if bytecodeHFilename: - bytecodeHFile.write(hFileHashString) ---- qtwebkit-5.212.0-alpha2/Source/JavaScriptCore/generate-bytecode-files.old 2018-07-16 10:18:49.850000000 +0000 -+++ qtwebkit-5.212.0-alpha2/Source/JavaScriptCore/generate-bytecode-files 2018-07-16 10:22:35.290000000 +0000 -@@ -157,10 +157,10 @@ - exit(0) - - if bytecodeHFilename: -- bytecodeHFile = openOrExit(bytecodeHFilename, "wb") -+ bytecodeHFile = openOrExit(bytecodeHFilename, "w") - - if initASMFileName: -- initBytecodesFile = openOrExit(initASMFileName, "wb") -+ initBytecodesFile = openOrExit(initASMFileName, "w") - - try: - bytecodeSections = json.load(bytecodeFile, encoding = "utf-8") diff --git a/experimental/qt5-qtwebkit/jsc-port-to-musl.patch b/experimental/qt5-qtwebkit/jsc-port-to-musl.patch new file mode 100644 index 000000000..0b2d7dfce --- /dev/null +++ b/experimental/qt5-qtwebkit/jsc-port-to-musl.patch @@ -0,0 +1,81 @@ +diff -Naur qtwebkit-5.212.0-alpha2-original/Source/JavaScriptCore/heap/MachineStackMarker.cpp qtwebkit-5.212.0-alpha2/Source/JavaScriptCore/heap/MachineStackMarker.cpp +--- qtwebkit-5.212.0-alpha2-original/Source/JavaScriptCore/heap/MachineStackMarker.cpp 2017-06-04 20:16:05.000000000 +0000 ++++ qtwebkit-5.212.0-alpha2/Source/JavaScriptCore/heap/MachineStackMarker.cpp 2018-09-26 02:13:44.660000000 +0000 +@@ -566,7 +566,7 @@ + #error Unknown Architecture + #endif + +-#elif defined(__GLIBC__) && ENABLE(JIT) ++#elif defined(__linux__) && ENABLE(JIT) + + #if CPU(X86) + return reinterpret_cast<void*>((uintptr_t) regs.machineContext.gregs[REG_ESP]); +@@ -665,7 +665,7 @@ + #error Unknown Architecture + #endif + +-#elif defined(__GLIBC__) ++#elif defined(__linux__) + + // The following sequence depends on glibc's sys/ucontext.h. + #if CPU(X86) +@@ -747,7 +747,7 @@ + #error Unknown Architecture + #endif + +-#elif defined(__GLIBC__) ++#elif defined(__linux__) + + // The following sequence depends on glibc's sys/ucontext.h. + #if CPU(X86) +@@ -838,7 +838,7 @@ + #error Unknown Architecture + #endif + +-#elif defined(__GLIBC__) ++#elif defined(__linux__) + + // The following sequence depends on glibc's sys/ucontext.h. + #if CPU(X86) +diff -Naur qtwebkit-5.212.0-alpha2-original/Source/ThirdParty/ANGLE/src/compiler/preprocessor/ExpressionParser.cpp qtwebkit-5.212.0-alpha2/Source/ThirdParty/ANGLE/src/compiler/preprocessor/ExpressionParser.cpp +--- qtwebkit-5.212.0-alpha2-original/Source/ThirdParty/ANGLE/src/compiler/preprocessor/ExpressionParser.cpp 2017-06-04 20:16:06.000000000 +0000 ++++ qtwebkit-5.212.0-alpha2/Source/ThirdParty/ANGLE/src/compiler/preprocessor/ExpressionParser.cpp 2018-09-26 02:12:36.770000000 +0000 +@@ -828,7 +828,7 @@ + #if YYERROR_VERBOSE + + # ifndef yystrlen +-# if defined __GLIBC__ && defined _STRING_H ++# if defined __linux__ && defined _STRING_H + # define yystrlen strlen + # else + /* Return the length of YYSTR. */ +@@ -844,7 +844,7 @@ + # endif + + # ifndef yystpcpy +-# if defined __GLIBC__ && defined _STRING_H && defined _GNU_SOURCE ++# if defined __linux__ && defined _STRING_H && defined _GNU_SOURCE + # define yystpcpy stpcpy + # else + /* Copy YYSRC to YYDEST, returning the address of the terminating '\0' in +diff -Naur qtwebkit-5.212.0-alpha2-original/Source/ThirdParty/ANGLE/src/compiler/translator/glslang_tab.cpp qtwebkit-5.212.0-alpha2/Source/ThirdParty/ANGLE/src/compiler/translator/glslang_tab.cpp +--- qtwebkit-5.212.0-alpha2-original/Source/ThirdParty/ANGLE/src/compiler/translator/glslang_tab.cpp 2017-06-04 20:16:06.000000000 +0000 ++++ qtwebkit-5.212.0-alpha2/Source/ThirdParty/ANGLE/src/compiler/translator/glslang_tab.cpp 2018-09-26 02:12:54.740000000 +0000 +@@ -1835,7 +1835,7 @@ + #if YYERROR_VERBOSE + + # ifndef yystrlen +-# if defined __GLIBC__ && defined _STRING_H ++# if defined __linux__ && defined _STRING_H + # define yystrlen strlen + # else + /* Return the length of YYSTR. */ +@@ -1851,7 +1851,7 @@ + # endif + + # ifndef yystpcpy +-# if defined __GLIBC__ && defined _STRING_H && defined _GNU_SOURCE ++# if defined __linux__ && defined _STRING_H && defined _GNU_SOURCE + # define yystpcpy stpcpy + # else + /* Copy YYSRC to YYDEST, returning the address of the terminating '\0' in diff --git a/experimental/qt5-qtwebkit/musl-thread-stacksize.patch b/experimental/qt5-qtwebkit/musl-thread-stacksize.patch new file mode 100644 index 000000000..e790222dc --- /dev/null +++ b/experimental/qt5-qtwebkit/musl-thread-stacksize.patch @@ -0,0 +1,49 @@ +--- qtwebkit-5.212.0-alpha2/Source/WTF/wtf/ThreadingPthreads.cpp.old 2017-06-04 15:16:06.000000000 -0500 ++++ qtwebkit-5.212.0-alpha2/Source/WTF/wtf/ThreadingPthreads.cpp 2018-09-05 02:29:45.980000000 +0000 +@@ -107,10 +107,11 @@ + void initializeThreading() + { + static bool isInitialized; ++ pthread_attr_t attr; + + if (isInitialized) + return; + + isInitialized = true; + + WTF::double_conversion::initialize(); +@@ -122,6 +122,11 @@ + ThreadIdentifierData::initializeOnce(); + wtfThreadData(); + initializeDates(); ++ ++ pthread_attr_init(&attr); ++ pthread_attr_setstacksize(&attr, 2097152); ++ pthread_setattr_default_np(&attr); ++ pthread_attr_destroy(&attr); + } + + static ThreadMap& threadMap() +@@ -171,6 +171,7 @@ + pthread_t threadHandle; + pthread_attr_t attr; + pthread_attr_init(&attr); ++ pthread_attr_setstacksize(&attr, 2097152); + #if HAVE(QOS_CLASSES) + pthread_attr_set_qos_class_np(&attr, QOS_CLASS_USER_INITIATED, 0); + #endif +--- qtwebkit-5.212.0-alpha2/Source/JavaScriptCore/runtime/Options.h.old 2017-06-04 20:16:05.000000000 +0000 ++++ qtwebkit-5.212.0-alpha2/Source/JavaScriptCore/runtime/Options.h 2018-09-26 03:02:39.700000000 +0000 +@@ -112,9 +112,9 @@ + \ + v(bool, reportMustSucceedExecutableAllocations, false, nullptr) \ + \ +- v(unsigned, maxPerThreadStackUsage, 4 * MB, nullptr) \ +- v(unsigned, reservedZoneSize, 128 * KB, nullptr) \ +- v(unsigned, errorModeReservedZoneSize, 64 * KB, nullptr) \ ++ v(unsigned, maxPerThreadStackUsage, 512 * KB, nullptr) \ ++ v(unsigned, reservedZoneSize, 32 * KB, nullptr) \ ++ v(unsigned, errorModeReservedZoneSize, 16 * KB, nullptr) \ + \ + v(bool, crashIfCantAllocateJITMemory, false, nullptr) \ + v(unsigned, jitMemoryReservationSize, 0, "Set this number to change the executable allocation size in ExecutableAllocatorFixedVMPool. (In bytes.)") \ diff --git a/system/mkinitfs/0001-features-add-virtio_net-to-network-modules.patch b/legacy/mkinitfs/0001-features-add-virtio_net-to-network-modules.patch index 012738163..012738163 100644 --- a/system/mkinitfs/0001-features-add-virtio_net-to-network-modules.patch +++ b/legacy/mkinitfs/0001-features-add-virtio_net-to-network-modules.patch diff --git a/system/mkinitfs/0001-features-virtio_net-depends-on-virtio_pci.patch b/legacy/mkinitfs/0001-features-virtio_net-depends-on-virtio_pci.patch index 8b01d294a..8b01d294a 100644 --- a/system/mkinitfs/0001-features-virtio_net-depends-on-virtio_pci.patch +++ b/legacy/mkinitfs/0001-features-virtio_net-depends-on-virtio_pci.patch diff --git a/system/mkinitfs/0001-generate-mkinitfs.conf.patch b/legacy/mkinitfs/0001-generate-mkinitfs.conf.patch index a556879d7..a556879d7 100644 --- a/system/mkinitfs/0001-generate-mkinitfs.conf.patch +++ b/legacy/mkinitfs/0001-generate-mkinitfs.conf.patch diff --git a/system/mkinitfs/0001-initramfs-do-not-relocate-mountpoint-for-netboot.patch b/legacy/mkinitfs/0001-initramfs-do-not-relocate-mountpoint-for-netboot.patch index e6e580a14..e6e580a14 100644 --- a/system/mkinitfs/0001-initramfs-do-not-relocate-mountpoint-for-netboot.patch +++ b/legacy/mkinitfs/0001-initramfs-do-not-relocate-mountpoint-for-netboot.patch diff --git a/system/mkinitfs/0001-nlplug-findfs-add-primitive-support-for-LUKS2-contai.patch b/legacy/mkinitfs/0001-nlplug-findfs-add-primitive-support-for-LUKS2-contai.patch index 7681be46b..7681be46b 100644 --- a/system/mkinitfs/0001-nlplug-findfs-add-primitive-support-for-LUKS2-contai.patch +++ b/legacy/mkinitfs/0001-nlplug-findfs-add-primitive-support-for-LUKS2-contai.patch diff --git a/system/mkinitfs/0001-skip-hooks-on-diskless-install.patch b/legacy/mkinitfs/0001-skip-hooks-on-diskless-install.patch index a20ebc200..a20ebc200 100644 --- a/system/mkinitfs/0001-skip-hooks-on-diskless-install.patch +++ b/legacy/mkinitfs/0001-skip-hooks-on-diskless-install.patch diff --git a/system/mkinitfs/0002-initramfs-init-add-disk-and-network-detection-on-s39.patch b/legacy/mkinitfs/0002-initramfs-init-add-disk-and-network-detection-on-s39.patch index aef8293a1..aef8293a1 100644 --- a/system/mkinitfs/0002-initramfs-init-add-disk-and-network-detection-on-s39.patch +++ b/legacy/mkinitfs/0002-initramfs-init-add-disk-and-network-detection-on-s39.patch diff --git a/system/mkinitfs/0003-initramfs-init-add-support-for-ssh-installer.patch b/legacy/mkinitfs/0003-initramfs-init-add-support-for-ssh-installer.patch index bcc4e0d49..bcc4e0d49 100644 --- a/system/mkinitfs/0003-initramfs-init-add-support-for-ssh-installer.patch +++ b/legacy/mkinitfs/0003-initramfs-init-add-support-for-ssh-installer.patch diff --git a/system/mkinitfs/APKBUILD b/legacy/mkinitfs/APKBUILD index fe21413e3..fe21413e3 100644 --- a/system/mkinitfs/APKBUILD +++ b/legacy/mkinitfs/APKBUILD diff --git a/system/mkinitfs/mkinitfs.post-install b/legacy/mkinitfs/mkinitfs.post-install index a2a404b09..a2a404b09 100644 --- a/system/mkinitfs/mkinitfs.post-install +++ b/legacy/mkinitfs/mkinitfs.post-install diff --git a/system/mkinitfs/mkinitfs.post-upgrade b/legacy/mkinitfs/mkinitfs.post-upgrade index 78caf2e57..78caf2e57 120000 --- a/system/mkinitfs/mkinitfs.post-upgrade +++ b/legacy/mkinitfs/mkinitfs.post-upgrade diff --git a/system/mkinitfs/mkinitfs.pre-upgrade b/legacy/mkinitfs/mkinitfs.pre-upgrade index 0ece527f9..0ece527f9 100644 --- a/system/mkinitfs/mkinitfs.pre-upgrade +++ b/legacy/mkinitfs/mkinitfs.pre-upgrade diff --git a/system/mkinitfs/mkinitfs.trigger b/legacy/mkinitfs/mkinitfs.trigger index e8acc9785..e8acc9785 100644 --- a/system/mkinitfs/mkinitfs.trigger +++ b/legacy/mkinitfs/mkinitfs.trigger diff --git a/system/abuild/APKBUILD b/system/abuild/APKBUILD index baf4aac5c..5e462a8c9 100644 --- a/system/abuild/APKBUILD +++ b/system/abuild/APKBUILD @@ -1,7 +1,7 @@ # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=abuild pkgver=3.2.0_rc1 -pkgrel=4 +pkgrel=5 pkgdesc="Script to build APK packages" url="https://code.foxkit.us/adelie/aports" arch="all" @@ -24,6 +24,7 @@ source="https://distfiles.adelielinux.org/source/abuild-$pkgver+adelie.tar.xz 0001-newapkbuild-fix-typo.patch 0002-newapkbuild-move-checksum-call-to-after-fetch.patch use-pigz.patch + checkapk-libarchive-tar.patch " builddir="$srcdir/$pkgname-$pkgver+adelie" @@ -69,4 +70,5 @@ sha512sums="8d9e66ec6a4e814f9be0a10b53c4b183afa97c9969d9bb86fdec0b9096756d6343ce b7aa7ff9858eee2ff20eeed3b8da60d40e608b4da2676acb9c8b16ca6639283e5d70884888efd505fcd239bb462f726203e4773a4f706b16d07742b2a8631b6c 0001-abuild-continue-faking-POSIX-support-for-now.patch 4ef673998b8f28469eeb4d1448a664f7052686466a67b1a3f3cab1e249ad44308df92737da4eae3c3ffea06806f460e23fc1c0ddccd7f9e82c4e308cb63be029 0001-newapkbuild-fix-typo.patch c6ebe8219c2e8ec9fc75da1c597b2d8d960e632286a6c7f1d1ffb6623b4d4acca54ae90a6c07637c589cbbe3ed2fb0da0c26a41df20cac0318b4894991e2dbf4 0002-newapkbuild-move-checksum-call-to-after-fetch.patch -b428baddee9b719898a6e7f87d3a990aa1000cac0b6bcf3890e7cafd0ee164164551e7c4699d12f29ea9b6364cc18722a5560b0b65b9d8f586caf739a5432313 use-pigz.patch" +b428baddee9b719898a6e7f87d3a990aa1000cac0b6bcf3890e7cafd0ee164164551e7c4699d12f29ea9b6364cc18722a5560b0b65b9d8f586caf739a5432313 use-pigz.patch +0acff1a66e327236aad85ab3b77724dd1ac398cc4db305fee82c6ead64ab9c9332c9ffa5d08c8607494e5925ced8d7b315670b2fe589c0df3b3fc61caea3acba checkapk-libarchive-tar.patch" diff --git a/system/abuild/checkapk-libarchive-tar.patch b/system/abuild/checkapk-libarchive-tar.patch new file mode 100644 index 000000000..fb5243d02 --- /dev/null +++ b/system/abuild/checkapk-libarchive-tar.patch @@ -0,0 +1,11 @@ +--- abuild-3.2.0_rc1+adelie/checkapk.in 2017-08-13 13:39:10.730229975 -0400 ++++ abuild-3.2.0_rc1+adelie/checkapk.in 2018-09-15 17:52:51.160104742 -0400 +@@ -72,7 +72,7 @@ + fi + + apk fetch --quiet --repositories-file $tmpdir/repositories --stdout $_pkgname \ +- | tar -zt | grep -v '^\.SIGN\.' | sort > filelist-$_pkgname-old \ ++ | tar -ztf - | grep -v '^\.SIGN\.' | sort > filelist-$_pkgname-old \ + || die "failed to download old pkg, maybe run 'apk update'?" + + tar -ztf "$filepath" | grep -v '^\.SIGN\.' | sort > "filelist-$_pkgname" diff --git a/system/adelie-base/APKBUILD b/system/adelie-base/APKBUILD index 5cebd3c92..fecfdbe3e 100644 --- a/system/adelie-base/APKBUILD +++ b/system/adelie-base/APKBUILD @@ -1,13 +1,14 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=adelie-base -pkgver=0.8.1 -pkgrel=6 +pkgver=0.9.0 +pkgrel=1 pkgdesc="The Adélie Linux Base System" url="http://adelielinux.org/" arch="noarch" +options="!check !fhs" license="NCSA" -_core_depends="apk-tools adelie-keys shadow +_core_depends="apk-tools adelie-keys musl-utils shadow shimmy grep procps bash coreutils diffutils findutils sharutils util-linux net-tools @@ -17,8 +18,6 @@ depends="adelie-core debianutils libarchive-tools file zsh binutils console-setup sysklogd man-db tzdata gettys-openrc" makedepends="" makedepends_host="$depends" -install="" -options="!check !fhs" subpackages="adelie-core:core $pkgname-doc $pkgname-posix $pkgname-lsb dev-kit:devkit" provides="alpine-base" source="https://distfiles.adelielinux.org/source/$pkgname/$pkgname-$pkgver.tar.xz @@ -94,7 +93,7 @@ devkit() { return 0 } -sha512sums="6eb6e2798e924caa911f3d070b1c955aa1abde42ac7b51224b2c4dc851a7dcfc586915ef8b3977a1cfb13a4f503003ea62acf59417daa8a2d4b6cc2e27b755ad adelie-base-0.8.1.tar.xz +sha512sums="6afa6750162d91d005fa1a0a789e06e9599be7063ed6847376c3b740a22afb273d405760f52249de233476c8b578c469a6e2d17b8f01d7f7ef8dd7b4fc5f9a4c adelie-base-0.9.0.tar.xz 37260d9315fd8d8b0df3dfb5bd3e1035a47ba1e43f33aa195e3feca6d169da282c1b067ef4603e7e9acaedbfef8b58cf490c00bdca444d43c9d570355ad29eac group 1288d9d1ee77e1159bacbc94a44b2ae9c6dff94c5001be6e560cd5859f86181c47341317025d4999bc7d57cfcebb7974804514d981b7bd66ffd00c5edaf5360c passwd 5b87e0c73e7d73715467b09c9c228b14abfdc1567b3d8a3e6ef86694a9d016c798c22411c9c8ccf41920fbe185199f6d6dbd45d4bceb6652ab4a7bea87c4fe51 addgroup diff --git a/system/apk-tools/APKBUILD b/system/apk-tools/APKBUILD index 2ba1d846b..746468fab 100644 --- a/system/apk-tools/APKBUILD +++ b/system/apk-tools/APKBUILD @@ -1,9 +1,9 @@ # Contributor: Natanael Copa <ncopa@alpinelinux.org> # Maintainer: Adelie Platform Group <adelie-devel@lists.adelielinux.org> pkgname=apk-tools -pkgver=2.9.1 -pkgrel=2 -pkgdesc="Alpine Package Keeper - package manager for alpine" +pkgver=2.10.1 +pkgrel=0 +pkgdesc="Alpine Package Keeper - package manager" url="https://git.alpinelinux.org/cgit/apk-tools/" arch="all" license="GPL-2.0-only" @@ -13,8 +13,6 @@ makedepends_host="zlib-dev openssl openssl-dev linux-headers" makedepends="$makedepends_build $makedepends_host" subpackages="$pkgname-static" source="http://dev.alpinelinux.org/archive/$pkgname/$pkgname-$pkgver.tar.xz - 0001-solver-allow-names-with-only-one-provider-to-be-auto.patch - openssl-compat.patch " prepare() { @@ -68,6 +66,4 @@ static() { "$subpkgdir"/sbin/apk.static } -sha512sums="4ffb8d1716bbb94421b1cc4277beb47d369c429f4c3bf597d08949abb7586d30c4504edf2f775bea3b93614a280c12391b956ca8f914fb0ec27799a4a005a145 apk-tools-2.9.1.tar.xz -5ca2d2f2646032ed8f9f86357e986b054045a80ddb944be6a540566ff7092f38591ec8dfc7ac06b9daededa95e86c0e892ead55f9e8907eb318aed76644f7f97 0001-solver-allow-names-with-only-one-provider-to-be-auto.patch -5640b746cd3c6d966d5f778ffe2307902503b1fc966bedb35b50dedee34ec3d5fe2c7f200dfd3893d6640150ff6dd4efd2df9aa110b4a7fd162b84904dacb493 openssl-compat.patch" +sha512sums="f994dba20b9ba7ee0ad4cbd9d137f65b814851f348f0d5eb75eb60c7d6a21f88648b472239e14298eaf1348c517de00652432e7f8c8abd54565914c7d49e3cd3 apk-tools-2.10.1.tar.xz" diff --git a/system/binutils/APKBUILD b/system/binutils/APKBUILD index 57eb9688c..d8fc3e7c5 100644 --- a/system/binutils/APKBUILD +++ b/system/binutils/APKBUILD @@ -1,7 +1,7 @@ # Maintainer: Adelie Platform Group <adelie-devel@lists.adelielinux.org> pkgname=binutils -pkgver=2.30 -pkgrel=2 +pkgver=2.31.1 +pkgrel=0 pkgdesc="Tools necessary to build programs" url="http://www.gnu.org/software/binutils/" depends="" @@ -19,7 +19,6 @@ source="http://ftp.gnu.org/gnu/$pkgname/$pkgname-$pkgver.tar.xz disable-gnu-mbind.patch disable-ifunc-tests.patch disable-preinit-array-tests.patch - mips-illegal-memcpy.patch remove-no-static-plt-test.patch remove-pr2404-tests.patch remove-pr19719-test.patch @@ -111,12 +110,11 @@ libs() { mv "$pkgdir"/usr/lib/lib*.so "$subpkgdir"/usr/lib/ } -sha512sums="e747ea20d8d79fcd21b9d9f6695059caa7189d60f19256da398e34b789fea9a133c32b192e9693b5828d27683739b0198431bf8b3e39fb3b04884cf89d9aa839 binutils-2.30.tar.xz +sha512sums="0fca326feb1d5f5fe505a827b20237fe3ec9c13eaf7ec7e35847fd71184f605ba1cefe1314b1b8f8a29c0aa9d88162849ee1c1a3e70c2f7407d88339b17edb30 binutils-2.31.1.tar.xz ecee33b0e435aa704af1c334e560f201638ff79e199aa11ed78a72f7c9b46f85fbb227af5748e735fd681d1965fcc42ac81b0c8824e540430ce0c706c81e8b49 binutils-ld-fix-static-linking.patch d378fdf1964f8f2bd0b1e62827ac5884bdf943aa435ec89c29fc84bb045d406b733fffaff8fdd8bd1cba8ddea7701c4cf6ccf3ed76a8a3df9c72b447737575a6 disable-gnu-mbind.patch -ba2b5c8cdfa95db7a1f05da8a2c1ffc3bcb35300abf7061e52249d9b29037e3fdef1aed830686bca2df74b9f5d48684e9c8e2f49715455bf90dca6e3bfc077eb disable-ifunc-tests.patch +474ab24097bbb5b24433620549e5234fe65c547824c1342f693c718ffbc81e2d968259cce2d650b55200dd1ec89da207ea2db10c551cd9941285c4600b4297b2 disable-ifunc-tests.patch 3537752e63cef0b5ef136d003ff7e814ba66b12624d817430112d0f291a792e8960fa69a78036f526af835441b3ee483d6a53d55c7b3dd8ee96f0399682dbcbe disable-preinit-array-tests.patch -06422157349abf02e79a5ef8bd9f51100e7e996aab65250d518e0cf0d7ac8ed922d3bf1603c4f5b4fd8fb179266b7b4c41db32dcb241d60a7f1c21d1df0c36dd mips-illegal-memcpy.patch b40f9a3841a7af8fc12e8a4044cd672df5614bfda8461b0ca45efa57a42c3bc8490e491ea490c6c05d319a52d69993c4fca33a0aeb044090e7b7f4e4e30c6517 remove-no-static-plt-test.patch 32ab4215669c728648179c124632467573a3d4675e79f0f0d221c22eb2ec1ca5488b79910bd09142f90a1e0d0b81d99ca4846297f4f9561f158db63745facb66 remove-pr2404-tests.patch a193d1fa7f42d91915960460a15e4d24e0df529d81e23014bcf45d283fae76bb7b300fdcb0d0a9d521cdb9137322efa1dc357112596d6ae7a7fd05988ac359b9 remove-pr19719-test.patch diff --git a/system/binutils/CVE-2017-7614.patch b/system/binutils/CVE-2017-7614.patch deleted file mode 100644 index 5f3b550f2..000000000 --- a/system/binutils/CVE-2017-7614.patch +++ /dev/null @@ -1,84 +0,0 @@ -From ad32986fdf9da1c8748e47b8b45100398223dba8 Mon Sep 17 00:00:00 2001 -From: Nick Clifton <nickc@redhat.com> -Date: Tue, 4 Apr 2017 11:23:36 +0100 -Subject: [PATCH] Fix null pointer dereferences when using a link built with - clang. - - PR binutils/21342 - * elflink.c (_bfd_elf_define_linkage_sym): Prevent null pointer - dereference. - (bfd_elf_final_link): Only initialize the extended symbol index - section if there are extended symbol tables to list. ---- - bfd/elflink.c | 35 +++++++++++++++++++++-------------- - 2 files changed, 29 insertions(+), 14 deletions(-) - -diff --git a/bfd/elflink.c b/bfd/elflink.c -index 776357f..9bf75c8 100644 ---- a/bfd/elflink.c -+++ b/bfd/elflink.c -@@ -119,15 +119,18 @@ _bfd_elf_define_linkage_sym (bfd *abfd, - defined in shared libraries can't be overridden, because we - lose the link to the bfd which is via the symbol section. */ - h->root.type = bfd_link_hash_new; -+ bh = &h->root; - } -+ else -+ bh = NULL; - -- bh = &h->root; - bed = get_elf_backend_data (abfd); - if (!_bfd_generic_link_add_one_symbol (info, abfd, name, BSF_GLOBAL, - sec, 0, NULL, FALSE, bed->collect, - &bh)) - return NULL; - h = (struct elf_link_hash_entry *) bh; -+ BFD_ASSERT (h != NULL); - h->def_regular = 1; - h->non_elf = 0; - h->root.linker_def = 1; -@@ -12038,24 +12041,28 @@ bfd_elf_final_link (bfd *abfd, struct bfd_link_info *info) - { - /* Finish up and write out the symbol string table (.strtab) - section. */ -- Elf_Internal_Shdr *symstrtab_hdr; -+ Elf_Internal_Shdr *symstrtab_hdr = NULL; - file_ptr off = symtab_hdr->sh_offset + symtab_hdr->sh_size; - -- symtab_shndx_hdr = & elf_symtab_shndx_list (abfd)->hdr; -- if (symtab_shndx_hdr != NULL && symtab_shndx_hdr->sh_name != 0) -+ if (elf_symtab_shndx_list (abfd)) - { -- symtab_shndx_hdr->sh_type = SHT_SYMTAB_SHNDX; -- symtab_shndx_hdr->sh_entsize = sizeof (Elf_External_Sym_Shndx); -- symtab_shndx_hdr->sh_addralign = sizeof (Elf_External_Sym_Shndx); -- amt = bfd_get_symcount (abfd) * sizeof (Elf_External_Sym_Shndx); -- symtab_shndx_hdr->sh_size = amt; -+ symtab_shndx_hdr = & elf_symtab_shndx_list (abfd)->hdr; - -- off = _bfd_elf_assign_file_position_for_section (symtab_shndx_hdr, -- off, TRUE); -+ if (symtab_shndx_hdr != NULL && symtab_shndx_hdr->sh_name != 0) -+ { -+ symtab_shndx_hdr->sh_type = SHT_SYMTAB_SHNDX; -+ symtab_shndx_hdr->sh_entsize = sizeof (Elf_External_Sym_Shndx); -+ symtab_shndx_hdr->sh_addralign = sizeof (Elf_External_Sym_Shndx); -+ amt = bfd_get_symcount (abfd) * sizeof (Elf_External_Sym_Shndx); -+ symtab_shndx_hdr->sh_size = amt; - -- if (bfd_seek (abfd, symtab_shndx_hdr->sh_offset, SEEK_SET) != 0 -- || (bfd_bwrite (flinfo.symshndxbuf, amt, abfd) != amt)) -- return FALSE; -+ off = _bfd_elf_assign_file_position_for_section (symtab_shndx_hdr, -+ off, TRUE); -+ -+ if (bfd_seek (abfd, symtab_shndx_hdr->sh_offset, SEEK_SET) != 0 -+ || (bfd_bwrite (flinfo.symshndxbuf, amt, abfd) != amt)) -+ return FALSE; -+ } - } - - symstrtab_hdr = &elf_tdata (abfd)->strtab_hdr; --- -2.9.3 - diff --git a/system/binutils/disable-ifunc-tests.patch b/system/binutils/disable-ifunc-tests.patch index 6fbc5c874..b50d20b0e 100644 --- a/system/binutils/disable-ifunc-tests.patch +++ b/system/binutils/disable-ifunc-tests.patch @@ -1,12 +1,12 @@ ---- binutils-2.30/ld/testsuite/ld-ifunc/ifunc.exp.old 2018-01-13 07:31:16.000000000 -0600 -+++ binutils-2.30/ld/testsuite/ld-ifunc/ifunc.exp 2018-02-27 14:46:07.596544780 -0600 -@@ -36,7 +36,8 @@ - || (([istarget "*-*-linux*"] - || [istarget "*-*-gnu*"]) - && ![istarget "*-*-*aout*"] -- && ![istarget "*-*-*oldld*"]))) } { -+ && ![istarget "*-*-*oldld*"] -+ && ![istarget "*-*-*musl*"]))) } { +--- binutils-2.31.1/ld/testsuite/ld-ifunc/ifunc.exp.old 2018-06-27 07:55:16.000000000 +0000 ++++ binutils-2.31.1/ld/testsuite/ld-ifunc/ifunc.exp 2018-10-12 03:23:09.240000000 +0000 +@@ -34,7 +34,8 @@ + && ([istarget "*-*-elf*"] + || [istarget "*-*-nacl*"] + || [istarget "*-*-linux*"] +- || [istarget "*-*-gnu*"])) } { ++ || [istarget "*-*-gnu*"]) ++ && ![istarget "*-*-musl*"]) } { verbose "IFUNC tests not run - target does not support IFUNC" return } diff --git a/system/binutils/hash-style-configure-flag.patch b/system/binutils/hash-style-configure-flag.patch deleted file mode 100644 index 6d4db4bca..000000000 --- a/system/binutils/hash-style-configure-flag.patch +++ /dev/null @@ -1,348 +0,0 @@ -From 2760f24c4942853eac7b921e4b8843d57a602654 Mon Sep 17 00:00:00 2001 -From: Romain Geissler <romain.geissler@gmail.com> -Date: Tue, 8 Aug 2017 07:25:39 +0930 -Subject: [PATCH] Add configure flag to enable gnu hash style by default. - -ld/ - * configure.ac: Add --enable-default-hash-style option. - * ldmain.c (main): Set link_info.emit_hash to DEFAULT_EMIT_SYSV_HASH. - Set link_info.emit_gnu_hash to DEFAULT_EMIT_GNU_HASH. - * configure: Regenerate. - * config.in: Regenerate. - -gold/ - * configure.ac: Add --enable-default-hash-style option. - * options.h (hash_style): Use DEFAULT_HASH_STYLE as default value. - * configure: Regenerate. - * config.in: Regenerate. ---- - gold/ChangeLog | 8 ++++++++ - gold/config.in | 3 +++ - gold/configure | 27 +++++++++++++++++++++++++++ - gold/configure.ac | 20 ++++++++++++++++++++ - gold/options.h | 2 +- - ld/ChangeLog | 9 +++++++++ - ld/config.in | 6 ++++++ - ld/configure | 42 ++++++++++++++++++++++++++++++++++++++---- - ld/configure.ac | 34 ++++++++++++++++++++++++++++++++++ - ld/ldmain.c | 3 ++- - 10 files changed, 148 insertions(+), 6 deletions(-) - -diff --git a/gold/ChangeLog b/gold/ChangeLog -index d598386..93836dd 100644 ---- a/gold/ChangeLog -+++ b/gold/ChangeLog -@@ -1,3 +1,11 @@ -+2017-08-08 Romain Geissler <romain.geissler@gmail.com> -+ Alan Modra <amodra@gmail.com> -+ -+ * configure.ac: Add --enable-default-hash-style option. -+ * options.h (hash_style): Use DEFAULT_HASH_STYLE as default value. -+ * configure: Regenerate. -+ * config.in: Regenerate. -+ - 2017-02-22 Alan Modra <amodra@gmail.com> - - * powerpc.cc (Target_powerpc::make_iplt_section): Check that -diff --git a/gold/config.in b/gold/config.in -index d9f7b76..5855fca 100644 ---- a/gold/config.in -+++ b/gold/config.in -@@ -10,6 +10,9 @@ - /* Define if building universal (internal helper macro) */ - #undef AC_APPLE_UNIVERSAL_BUILD - -+/* Set the default --hash-style value */ -+#undef DEFAULT_HASH_STYLE -+ - /* Define to 1 if you want to enable -z relro in ELF linker by default. */ - #undef DEFAULT_LD_Z_RELRO - -diff --git a/gold/configure b/gold/configure -index cb020be..90a706d 100755 ---- a/gold/configure -+++ b/gold/configure -@@ -797,6 +797,7 @@ enable_threads - enable_plugins - enable_relro - enable_targets -+enable_default_hash_style - with_lib_path - enable_dependency_tracking - enable_nls -@@ -1447,6 +1448,8 @@ Optional Features: - --enable-plugins linker plugins - --enable-relro enable -z relro in ELF linker by default - --enable-targets alternative target configurations -+ --enable-default-hash-style={sysv,gnu,both} -+ use this default hash style - --disable-dependency-tracking speeds up one-time build - --enable-dependency-tracking do not reject slow dependency extractors - --disable-nls do not use Native Language Support -@@ -3410,6 +3413,30 @@ if test -n "$enable_targets"; then - done - fi - -+# Decide which "--hash-style" to use by default -+# Provide a configure time option to override our default. -+# Check whether --enable-default-hash-style was given. -+if test "${enable_default_hash_style+set}" = set; then : -+ enableval=$enable_default_hash_style; case "${enable_default_hash_style}" in -+ sysv | gnu | both) ;; -+ *) as_fn_error "bad value ${enable_default_hash_style} for enable-default-hash-style option" "$LINENO" 5 ;; -+esac -+else -+ case "${target}" in -+ # Enable gnu hash only on GNU targets, but not mips -+ mips*-*-*) enable_default_hash_style=sysv ;; -+ *-*-gnu* | *-*-linux* | *-*-nacl*) enable_default_hash_style=both ;; -+ *) enable_default_hash_style=sysv ;; -+esac -+fi -+ -+ -+ -+cat >>confdefs.h <<_ACEOF -+#define DEFAULT_HASH_STYLE "${enable_default_hash_style}" -+_ACEOF -+ -+ - # See which specific instantiations we need. - targetobjs= - all_targets= -diff --git a/gold/configure.ac b/gold/configure.ac -index cbe3380..d7fa1f8 100644 ---- a/gold/configure.ac -+++ b/gold/configure.ac -@@ -161,6 +161,26 @@ if test -n "$enable_targets"; then - done - fi - -+# Decide which "--hash-style" to use by default -+# Provide a configure time option to override our default. -+AC_ARG_ENABLE([default-hash-style], -+AS_HELP_STRING([--enable-default-hash-style={sysv,gnu,both}], -+ [use this default hash style]), -+[case "${enable_default_hash_style}" in -+ sysv | gnu | both) ;; -+ *) AC_MSG_ERROR([bad value ${enable_default_hash_style} for enable-default-hash-style option]) ;; -+esac], -+[case "${target}" in -+ # Enable gnu hash only on GNU targets, but not mips -+ mips*-*-*) enable_default_hash_style=sysv ;; -+ *-*-gnu* | *-*-linux* | *-*-nacl*) enable_default_hash_style=both ;; -+ *) enable_default_hash_style=sysv ;; -+esac]) -+ -+AC_DEFINE_UNQUOTED([DEFAULT_HASH_STYLE], -+ ["${enable_default_hash_style}"], -+ [Set the default --hash-style value]) -+ - # See which specific instantiations we need. - targetobjs= - all_targets= -diff --git a/gold/options.h b/gold/options.h -index a8b1d46..ce21a42 100644 ---- a/gold/options.h -+++ b/gold/options.h -@@ -921,7 +921,7 @@ class General_options - N_("Min fraction of empty buckets in dynamic hash"), - N_("FRACTION")); - -- DEFINE_enum(hash_style, options::TWO_DASHES, '\0', "sysv", -+ DEFINE_enum(hash_style, options::TWO_DASHES, '\0', DEFAULT_HASH_STYLE, - N_("Dynamic hash style"), N_("[sysv,gnu,both]"), - {"sysv", "gnu", "both"}); - -diff --git a/ld/ChangeLog b/ld/ChangeLog -index ba7d1d4..cf91d55 100644 ---- a/ld/ChangeLog -+++ b/ld/ChangeLog -@@ -1,3 +1,12 @@ -+2017-08-08 Romain Geissler <romain.geissler@gmail.com> -+ Alan Modra <amodra@gmail.com> -+ -+ * configure.ac: Add --enable-default-hash-style option. -+ * ldmain.c (main): Set link_info.emit_hash to DEFAULT_EMIT_SYSV_HASH. -+ Set link_info.emit_gnu_hash to DEFAULT_EMIT_GNU_HASH. -+ * configure: Regenerate. -+ * config.in: Regenerate. -+ - 2017-03-02 Tristan Gingold <gingold@adacore.com> - - * configure: Regenerate. -diff --git a/ld/config.in b/ld/config.in -index 2c6d698..b2318e1 100644 ---- a/ld/config.in -+++ b/ld/config.in -@@ -7,6 +7,12 @@ - #endif - #define __CONFIG_H__ 1 - -+/* Define to 1 if you want to emit gnu hash in the ELF linker by default. */ -+#undef DEFAULT_EMIT_GNU_HASH -+ -+/* Define to 1 if you want to emit sysv hash in the ELF linker by default. */ -+#undef DEFAULT_EMIT_SYSV_HASH -+ - /* Define if you want compressed debug sections by default. */ - #undef DEFAULT_FLAG_COMPRESS_DEBUG - -diff --git a/ld/configure b/ld/configure -index 36af969..40c67fd 100755 ---- a/ld/configure -+++ b/ld/configure -@@ -793,6 +793,7 @@ enable_gold - enable_got - enable_compressed_debug_sections - enable_relro -+enable_default_hash_style - enable_werror - enable_build_warnings - enable_nls -@@ -1452,6 +1453,8 @@ Optional Features: - --enable-compressed-debug-sections={all,ld,none} - compress debug sections by default] - --enable-relro enable -z relro in ELF linker by default -+ --enable-default-hash-style={sysv,gnu,both} -+ use this default hash style - --enable-werror treat compile warnings as errors - --enable-build-warnings enable build-time compiler warnings - --disable-nls do not use Native Language Support -@@ -11724,7 +11727,7 @@ else - lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 - lt_status=$lt_dlunknown - cat > conftest.$ac_ext <<_LT_EOF --#line 11727 "configure" -+#line 11730 "configure" - #include "confdefs.h" - - #if HAVE_DLFCN_H -@@ -11830,7 +11833,7 @@ else - lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 - lt_status=$lt_dlunknown - cat > conftest.$ac_ext <<_LT_EOF --#line 11833 "configure" -+#line 11836 "configure" - #include "confdefs.h" - - #if HAVE_DLFCN_H -@@ -15555,6 +15558,33 @@ if test "${enable_relro+set}" = set; then : - esac - fi - -+# Decide which "--hash-style" to use by default -+# Provide a configure time option to override our default. -+# Check whether --enable-default-hash-style was given. -+if test "${enable_default_hash_style+set}" = set; then : -+ enableval=$enable_default_hash_style; case "${enable_default_hash_style}" in -+ sysv | gnu | both) ;; -+ *) as_fn_error "bad value ${enable_default_hash_style} for enable-default-hash-style option" "$LINENO" 5 ;; -+esac -+else -+ case "${target}" in -+ # Enable gnu hash only on GNU targets, but not mips -+ mips*-*-*) enable_default_hash_style=sysv ;; -+ *-*-gnu* | *-*-linux* | *-*-nacl*) enable_default_hash_style=both ;; -+ *) enable_default_hash_style=sysv ;; -+esac -+fi -+ -+ -+case "${enable_default_hash_style}" in -+ sysv | both) ac_default_emit_sysv_hash=1 ;; -+ *) ac_default_emit_sysv_hash=0 ;; -+esac -+ -+case "${enable_default_hash_style}" in -+ gnu | both) ac_default_emit_gnu_hash=1 ;; -+ *) ac_default_emit_gnu_hash=0 ;; -+esac - - # Set the 'development' global. - . $srcdir/../bfd/development.sh -@@ -17212,9 +17242,13 @@ cat >>confdefs.h <<_ACEOF - #define DEFAULT_LD_Z_RELRO $ac_default_ld_z_relro - _ACEOF - -+cat >>confdefs.h <<_ACEOF -+#define DEFAULT_EMIT_SYSV_HASH $ac_default_emit_sysv_hash -+_ACEOF - -- -- -+cat >>confdefs.h <<_ACEOF -+#define DEFAULT_EMIT_GNU_HASH $ac_default_emit_gnu_hash -+_ACEOF - - - -diff --git a/ld/configure.ac b/ld/configure.ac -index 36a9f50..1876ad7 100644 ---- a/ld/configure.ac -+++ b/ld/configure.ac -@@ -166,6 +166,32 @@ AC_ARG_ENABLE(relro, - no) ac_default_ld_z_relro=0 ;; - esac])dnl - -+# Decide which "--hash-style" to use by default -+# Provide a configure time option to override our default. -+AC_ARG_ENABLE([default-hash-style], -+AS_HELP_STRING([--enable-default-hash-style={sysv,gnu,both}], -+ [use this default hash style]), -+[case "${enable_default_hash_style}" in -+ sysv | gnu | both) ;; -+ *) AC_MSG_ERROR([bad value ${enable_default_hash_style} for enable-default-hash-style option]) ;; -+esac], -+[case "${target}" in -+ # Enable gnu hash only on GNU targets, but not mips -+ mips*-*-*) enable_default_hash_style=sysv ;; -+ *-*-gnu* | *-*-linux* | *-*-nacl*) enable_default_hash_style=both ;; -+ *) enable_default_hash_style=sysv ;; -+esac]) -+ -+case "${enable_default_hash_style}" in -+ sysv | both) ac_default_emit_sysv_hash=1 ;; -+ *) ac_default_emit_sysv_hash=0 ;; -+esac -+ -+case "${enable_default_hash_style}" in -+ gnu | both) ac_default_emit_gnu_hash=1 ;; -+ *) ac_default_emit_gnu_hash=0 ;; -+esac -+ - AM_BINUTILS_WARNINGS - - AM_LC_MESSAGES -@@ -394,6 +420,14 @@ AC_DEFINE_UNQUOTED(DEFAULT_LD_Z_RELRO, - $ac_default_ld_z_relro, - [Define to 1 if you want to enable -z relro in ELF linker by default.]) - -+AC_DEFINE_UNQUOTED([DEFAULT_EMIT_SYSV_HASH], -+ [$ac_default_emit_sysv_hash], -+ [Define to 1 if you want to emit sysv hash in the ELF linker by default.]) -+ -+AC_DEFINE_UNQUOTED([DEFAULT_EMIT_GNU_HASH], -+ [$ac_default_emit_gnu_hash], -+ [Define to 1 if you want to emit gnu hash in the ELF linker by default.]) -+ - AC_SUBST(elf_list_options) - AC_SUBST(elf_shlib_list_options) - AC_SUBST(elf_plt_unwind_list_options) -diff --git a/ld/ldmain.c b/ld/ldmain.c -index 1e48b1a..579d961 100644 ---- a/ld/ldmain.c -+++ b/ld/ldmain.c -@@ -282,7 +282,8 @@ main (int argc, char **argv) - link_info.keep_memory = TRUE; - link_info.combreloc = TRUE; - link_info.strip_discarded = TRUE; -- link_info.emit_hash = TRUE; -+ link_info.emit_hash = DEFAULT_EMIT_SYSV_HASH; -+ link_info.emit_gnu_hash = DEFAULT_EMIT_GNU_HASH; - link_info.callbacks = &link_callbacks; - link_info.input_bfds_tail = &link_info.input_bfds; - /* SVR4 linkers seem to set DT_INIT and DT_FINI based on magic _init --- -2.14.2 - diff --git a/system/binutils/mips-illegal-memcpy.patch b/system/binutils/mips-illegal-memcpy.patch deleted file mode 100644 index d76af178a..000000000 --- a/system/binutils/mips-illegal-memcpy.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- binutils-2.29/gas/config/tc-mips.c.old 2017-07-04 03:43:20.000000000 -0500 -+++ binutils-2.29/gas/config/tc-mips.c 2017-08-25 17:21:51.449460074 -0500 -@@ -13956,7 +13956,7 @@ - suffix = 0; - if (suffix) - { -- memcpy (name + opend - 2, name + opend, length - opend + 1); -+ memmove (name + opend - 2, name + opend, length - opend + 1); - insn = (struct mips_opcode *) hash_find (hash, name); - if (insn) - { diff --git a/system/bubblewrap/APKBUILD b/system/bubblewrap/APKBUILD index 2e1c8a628..0147c92c6 100644 --- a/system/bubblewrap/APKBUILD +++ b/system/bubblewrap/APKBUILD @@ -1,7 +1,7 @@ # Contributor: Timo Teräs <timo.teras@iki.fi> # Maintainer: pkgname=bubblewrap -pkgver=0.3.0 +pkgver=0.3.1 pkgrel=0 pkgdesc="Unprivileged sandboxing tool" url="https://github.com/projectatomic/bubblewrap" @@ -46,6 +46,6 @@ bashcomp() { mv "$pkgdir"/usr/share/bash-completion/ "$subpkgdir"/usr/share/ } -sha512sums="0dc033f83547112cedc706e4ef80e39ba0ee63f3750f93454a7b1a38aeb922ee660b3491a5a5d060fce9a7c4b326798a66814ad94f53f1e666c27a557fec17a4 bubblewrap-0.3.0.tar.gz +sha512sums="fbc44976f53fdf8913b94c57d1f26a3b87c773e86a289e58fd3d7b1c4ea7f33c862f1a38a4f791315358990928768a68334f0a171302c18a16c7e2e9f1a146dd bubblewrap-0.3.1.tar.gz 400a0446670ebf80f16739f1a7a2878aadc3099424f957ba09ec3df780506c23a11368f0578c9e352d7ca6473fa713df826fad7a20c50338aa5f9fa9ac6b84a4 realpath-workaround.patch f59cda3b09dd99db9ca6d97099a15bb2523e054063d677502317ae3165ba2e32105a0ae8f877afc3827bd28d093c9d9d413270f4c87d9fe5f26f3eee670d916e musl-fixes.patch" diff --git a/system/clang/APKBUILD b/system/clang/APKBUILD deleted file mode 100644 index f21b0f63b..000000000 --- a/system/clang/APKBUILD +++ /dev/null @@ -1,104 +0,0 @@ -# Contributor Travis Tilley <ttilley@gmail.com> -# Maintainer: A. Wilcox <awilfox@adelielinux.org> -pkgname=clang -# Note: Update together with llvm. -pkgver=4.0.0 -pkgrel=0 -_llvmver=${pkgver%%.*} -pkgdesc="A C language family front-end for LLVM" -arch="all" -options="!dbg" -url="http://llvm.org/" -license="NCSA" -makedepends=" - cmake - isl-dev - libedit-dev - libxml2-dev - libxml2-utils - llvm-dev>=$_llvmver - llvm-static>=$_llvmver - llvm-test-utils>=$_llvmver - " -depends_dev="$pkgname=$pkgver-r$pkgrel" -subpackages="$pkgname-static $pkgname-dev $pkgname-doc $pkgname-libs - $pkgname-analyzer::noarch" -source="https://llvm.org/releases/$pkgver/cfe-$pkgver.src.tar.xz - clang-0001-Add-Alpine-Linux-distro.patch - clang-0002-Use-z-relro-on-Alpine-Linux.patch - clang-0003-Use-hash-style-gnu-for-Alpine-Linux.patch - clang-0004-Add-musl-targets.patch - clang-0005-Enable-PIE-by-default-for-alpine-linux.patch - clang-0006-Link-with-z-now-by-default-for-Alpine-Linux.patch - clang-0007-Enable-stack-protector-by-default-for-alpine-linux.patch - " -builddir="$srcdir/cfe-$pkgver.src" - -build() { - mkdir -p "$builddir"/build - cd "$builddir"/build - - cmake .. -Wno-dev \ - -DCMAKE_BUILD_TYPE=MinSizeRel \ - -DCMAKE_INSTALL_PREFIX=/usr \ - -DCMAKE_VERBOSE_MAKEFILE=OFF \ - \ - -DCLANG_VENDOR=${DISTRO_SHORT_NAME:-Alpine} \ - -DCLANG_BUILD_EXAMPLES=OFF \ - -DCLANG_INCLUDE_DOCS=ON \ - -DCLANG_INCLUDE_TESTS=ON \ - -DCLANG_PLUGIN_SUPPORT=ON \ - -DLIBCLANG_BUILD_STATIC=ON \ - -DLLVM_ENABLE_EH=ON \ - -DLLVM_ENABLE_RTTI=ON - - make clang-tblgen - make -} - -check() { - cd "$builddir"/build - - make check-clang -} - -package() { - cd "$builddir"/build - - make DESTDIR="$pkgdir" install - install -m 644 lib/libclang.a "$pkgdir"/usr/lib - mkdir -p "$pkgdir"/etc - cat >"$pkgdir"/etc/alpine-release <<-EOF -Adélie Linux 1.0 (like Alpine 3.8) -EOF -} - -static() { - pkgdesc="Static libraries for clang" - - mkdir -p "$subpkgdir"/usr/lib - mv "$pkgdir"/usr/lib/*.a "$subpkgdir"/usr/lib/ -} - -analyzer() { - pkgdesc="Clang source code analysis framework" - depends="$pkgname=$pkgver-r$pkgrel perl python3" - - cd "$pkgdir" - - mkdir -p "$subpkgdir"/usr/bin \ - "$subpkgdir"/usr/libexec \ - "$subpkgdir"/usr/share/ - mv usr/bin/scan-* "$subpkgdir"/usr/bin/ - mv usr/libexec/*-analyzer "$subpkgdir"/usr/libexec/ - mv usr/share/scan-* "$subpkgdir"/usr/share/ -} - -sha512sums="a0d9972ec337a5c105fcbe7abc4076ba1e580f28908a3318f43bbfe59143f446ed5b78dad210f624145d7e5a3d56c15bfead78826c068422b60120fa1cfa482a cfe-4.0.0.src.tar.xz -4014984a187e4d0331d8315727d1b831e573843cd8d113df43424524cb348bc73ce3d12783351d9a14f9fd14111d75ce71d8f2a85d82b6437a61b11d85796cfb clang-0001-Add-Alpine-Linux-distro.patch -53741890ec3805dd0d5a930ed526cb5bac5f75c459c6910c9461017719186383cf54638af4eea7a38eb7f9f423b18086bd5584b11f7e4babf6cd0edf8b4f4f48 clang-0002-Use-z-relro-on-Alpine-Linux.patch -f06e351785d5755827459f17d3533415772ba84b4fbd4e49f418bafd20394e98d42b33a94aa34cff2a7b54c79cf06a6f5d382af5a55cba63a81116f0568d4b25 clang-0003-Use-hash-style-gnu-for-Alpine-Linux.patch -2998ab2dfbc3d5629dd7e65e7e39dc0ab96f61e24733cb8d2d4faee50a89f0f159ad44d10182ed4c96f060180f4e22510881f4e9eb00ced01278bde99adf3389 clang-0004-Add-musl-targets.patch -6215080a796fa1fc6f7634781ef77fc245037880dbf075a656823aae5f9f4911294dc6d61172db399b063adbe445c38b73cec12fc66dbe16bd9d84dc58035846 clang-0005-Enable-PIE-by-default-for-alpine-linux.patch -d151a6ecca470abb1f4dbc06910155db0688322475655e28cdcb9c0b21930c8bcaf166e9df9fc9dca1be654cf497587961e461d91ee2871fdf454bbd33c5fffe clang-0006-Link-with-z-now-by-default-for-Alpine-Linux.patch -f8c46bb64202c9233595362eb54288c30fbd28309308cbcafe1802dc50ffd676c7a70e6cbdbfd73464f872b40a90acd2eb736dcc9622fd434dbd44a5b0005027 clang-0007-Enable-stack-protector-by-default-for-alpine-linux.patch" diff --git a/system/clang/clang-0001-Add-Alpine-Linux-distro.patch b/system/clang/clang-0001-Add-Alpine-Linux-distro.patch deleted file mode 100644 index f69baf5b8..000000000 --- a/system/clang/clang-0001-Add-Alpine-Linux-distro.patch +++ /dev/null @@ -1,37 +0,0 @@ -From: Natanael Copa <ncopa@alpinelinux.org> -From: Jakub Jirutka <jakub@jirutka.cz> -Date: Sun, 16 Apr 2017 16:49:00 +0100 -Subject: [PATCH] Add Alpine Linux distro - ---- a/include/clang/Driver/Distro.h -+++ b/include/clang/Driver/Distro.h -@@ -26,6 +26,7 @@ - // NB: Releases of a particular Linux distro should be kept together - // in this enum, because some tests are done by integer comparison against - // the first and last known member in the family, e.g. IsRedHat(). -+ AlpineLinux, - ArchLinux, - DebianLenny, - DebianSqueeze, -@@ -97,6 +98,10 @@ - /// @name Convenience Predicates - /// @{ - -+ bool IsAlpineLinux() const { -+ return DistroVal == AlpineLinux; -+ } -+ - bool IsRedhat() const { - return DistroVal == Fedora || (DistroVal >= RHEL5 && DistroVal <= RHEL7); - } ---- a/lib/Driver/Distro.cpp -+++ b/lib/Driver/Distro.cpp -@@ -128,6 +128,9 @@ - if (VFS.exists("/etc/arch-release")) - return Distro::ArchLinux; - -+ if (VFS.exists("/etc/alpine-release")) -+ return Distro::AlpineLinux; -+ - return Distro::UnknownDistro; - } diff --git a/system/clang/clang-0002-Use-z-relro-on-Alpine-Linux.patch b/system/clang/clang-0002-Use-z-relro-on-Alpine-Linux.patch deleted file mode 100644 index 45fce6e13..000000000 --- a/system/clang/clang-0002-Use-z-relro-on-Alpine-Linux.patch +++ /dev/null @@ -1,16 +0,0 @@ -From: Natanael Copa <ncopa@alpinelinux.org> -From: Jakub Jirutka <jakub@jirutka.cz> -Date: Sun, 16 Apr 2017 16:49:00 +0100 -Subject: [PATCH] Use "-z relro" on Alpine Linux - ---- a/lib/Driver/ToolChains.cpp -+++ b/lib/Driver/ToolChains.cpp -@@ -4112,7 +4112,7 @@ - - Distro Distro(D.getVFS()); - -- if (Distro.IsOpenSUSE() || Distro.IsUbuntu()) { -+ if (Distro.IsOpenSUSE() || Distro.IsUbuntu() || Distro.IsAlpineLinux()) { - ExtraOpts.push_back("-z"); - ExtraOpts.push_back("relro"); - } diff --git a/system/clang/clang-0003-Use-hash-style-gnu-for-Alpine-Linux.patch b/system/clang/clang-0003-Use-hash-style-gnu-for-Alpine-Linux.patch deleted file mode 100644 index 0b6632328..000000000 --- a/system/clang/clang-0003-Use-hash-style-gnu-for-Alpine-Linux.patch +++ /dev/null @@ -1,16 +0,0 @@ -From: Natanael Copa <ncopa@alpinelinux.org> -From: Jakub Jirutka <jakub@jirutka.cz> -Date: Sun, 16 Apr 2017 16:49:00 +0100 -Subject: [PATCH] Use --hash-style=gnu for Alpine Linux - ---- a/lib/Driver/ToolChains.cpp -+++ b/lib/Driver/ToolChains.cpp -@@ -4132,7 +4132,7 @@ - // ABI requires a mapping between the GOT and the symbol table. - // Android loader does not support .gnu.hash. - if (!IsMips && !IsAndroid) { -- if (Distro.IsRedhat() || Distro.IsOpenSUSE() || -+ if (Distro.IsRedhat() || Distro.IsOpenSUSE() || Distro.IsAlpineLinux() || - (Distro.IsUbuntu() && Distro >= Distro::UbuntuMaverick)) - ExtraOpts.push_back("--hash-style=gnu"); - diff --git a/system/clang/clang-0004-Add-musl-targets.patch b/system/clang/clang-0004-Add-musl-targets.patch deleted file mode 100644 index d77294980..000000000 --- a/system/clang/clang-0004-Add-musl-targets.patch +++ /dev/null @@ -1,116 +0,0 @@ -From: Natanael Copa <ncopa@alpinelinux.org> -From: Jakub Jirutka <jakub@jirutka.cz> -Date: Sun, 16 Apr 2017 16:49:00 +0100 -Subject: [PATCH] Add musl targets - ---- a/lib/Driver/ToolChains.cpp -+++ b/lib/Driver/ToolChains.cpp -@@ -1644,7 +1644,8 @@ - case llvm::Triple::arm: - case llvm::Triple::thumb: - LibDirs.append(begin(ARMLibDirs), end(ARMLibDirs)); -- if (TargetTriple.getEnvironment() == llvm::Triple::GNUEABIHF) { -+ if (TargetTriple.getEnvironment() == llvm::Triple::GNUEABIHF || -+ TargetTriple.getEnvironment() == llvm::Triple::MuslEABIHF) { - TripleAliases.append(begin(ARMHFTriples), end(ARMHFTriples)); - } else { - TripleAliases.append(begin(ARMTriples), end(ARMTriples)); -@@ -1653,7 +1654,8 @@ - case llvm::Triple::armeb: - case llvm::Triple::thumbeb: - LibDirs.append(begin(ARMebLibDirs), end(ARMebLibDirs)); -- if (TargetTriple.getEnvironment() == llvm::Triple::GNUEABIHF) { -+ if (TargetTriple.getEnvironment() == llvm::Triple::GNUEABIHF || -+ TargetTriple.getEnvironment() == llvm::Triple::MuslEABIHF) { - TripleAliases.append(begin(ARMebHFTriples), end(ARMebHFTriples)); - } else { - TripleAliases.append(begin(ARMebTriples), end(ARMebTriples)); -@@ -3956,7 +3958,8 @@ - // regardless of what the actual target triple is. - case llvm::Triple::arm: - case llvm::Triple::thumb: -- if (TargetEnvironment == llvm::Triple::GNUEABIHF) { -+ if (TargetEnvironment == llvm::Triple::GNUEABIHF || -+ TargetEnvironment == llvm::Triple::MuslEABIHF) { - if (D.getVFS().exists(SysRoot + "/lib/arm-linux-gnueabihf")) - return "arm-linux-gnueabihf"; - } else { -@@ -3966,7 +3969,8 @@ - break; - case llvm::Triple::armeb: - case llvm::Triple::thumbeb: -- if (TargetEnvironment == llvm::Triple::GNUEABIHF) { -+ if (TargetEnvironment == llvm::Triple::GNUEABIHF || -+ TargetEnvironment == llvm::Triple::MuslEABIHF) { - if (D.getVFS().exists(SysRoot + "/lib/armeb-linux-gnueabihf")) - return "armeb-linux-gnueabihf"; - } else { -@@ -4334,6 +4338,12 @@ - ArchName = "armeb"; - IsArm = true; - break; -+ case llvm::Triple::ppc: -+ ArchName = "powerpc"; -+ break; -+ case llvm::Triple::x86: -+ ArchName = "i386"; -+ break; - default: - ArchName = Triple.getArchName().str(); - } -@@ -4544,7 +4554,8 @@ - break; - case llvm::Triple::arm: - case llvm::Triple::thumb: -- if (getTriple().getEnvironment() == llvm::Triple::GNUEABIHF) -+ if (getTriple().getEnvironment() == llvm::Triple::GNUEABIHF || -+ getTriple().getEnvironment() == llvm::Triple::MuslEABIHF) - MultiarchIncludeDirs = ARMHFMultiarchIncludeDirs; - else - MultiarchIncludeDirs = ARMMultiarchIncludeDirs; - ---- a/lib/Driver/Tools.cpp -+++ b/lib/Driver/Tools.cpp -@@ -953,6 +953,7 @@ - case llvm::Triple::FreeBSD: - switch (Triple.getEnvironment()) { - case llvm::Triple::GNUEABIHF: -+ case llvm::Triple::MuslEABIHF: - ABI = FloatABI::Hard; - break; - default: -@@ -9198,6 +9200,8 @@ - switch (getToolChain().getTriple().getEnvironment()) { - case llvm::Triple::GNUEABIHF: - case llvm::Triple::GNUEABI: -+ case llvm::Triple::MuslEABIHF: -+ case llvm::Triple::MuslEABI: - case llvm::Triple::EABI: - CmdArgs.push_back("-meabi=5"); - break; -@@ -9541,10 +9545,12 @@ - switch (getToolChain().getTriple().getEnvironment()) { - case llvm::Triple::EABI: - case llvm::Triple::GNUEABI: -+ case llvm::Triple::MuslEABI: - CmdArgs.push_back("armelf_nbsd_eabi"); - break; - case llvm::Triple::EABIHF: - case llvm::Triple::GNUEABIHF: -+ case llvm::Triple::MuslEABIHF: - CmdArgs.push_back("armelf_nbsd_eabihf"); - break; - default: -@@ -9559,10 +9565,12 @@ - switch (getToolChain().getTriple().getEnvironment()) { - case llvm::Triple::EABI: - case llvm::Triple::GNUEABI: -+ case llvm::Triple::MuslEABI: - CmdArgs.push_back("armelfb_nbsd_eabi"); - break; - case llvm::Triple::EABIHF: - case llvm::Triple::GNUEABIHF: -+ case llvm::Triple::MuslEABIHF: - CmdArgs.push_back("armelfb_nbsd_eabihf"); - break; - default: diff --git a/system/clang/clang-0005-Enable-PIE-by-default-for-alpine-linux.patch b/system/clang/clang-0005-Enable-PIE-by-default-for-alpine-linux.patch deleted file mode 100644 index 7cd79addc..000000000 --- a/system/clang/clang-0005-Enable-PIE-by-default-for-alpine-linux.patch +++ /dev/null @@ -1,55 +0,0 @@ -From: Natanael Copa <ncopa@alpinelinux.org> -From: Jakub Jirutka <jakub@jirutka.cz> -Date: Sun, 16 Apr 2017 16:49:00 +0100 -Subject: [PATCH] Enable PIE by default for Alpine Linux - -Alpine Linux uses PIE by default. - ---- a/lib/Driver/ToolChains.cpp -+++ b/lib/Driver/ToolChains.cpp -@@ -4721,7 +4721,10 @@ - } - } - --bool Linux::isPIEDefault() const { return getSanitizerArgs().requiresPIE(); } -+bool Linux::isPIEDefault() const { -+ return getSanitizerArgs().requiresPIE() || -+ Linux::getTriple().getVendorName().compare("alpine") == 0; -+} - - SanitizerMask Linux::getSupportedSanitizers() const { - const bool IsX86 = getTriple().getArch() == llvm::Triple::x86; ---- a/lib/Driver/Tools.cpp -+++ b/lib/Driver/Tools.cpp -@@ -9258,7 +9258,9 @@ - if (!D.SysRoot.empty()) - CmdArgs.push_back(Args.MakeArgString("--sysroot=" + D.SysRoot)); - -- if (IsPIE) -+ if (Args.hasArg(options::OPT_nopie)) -+ CmdArgs.push_back("-nopie"); -+ else if (IsPIE) - CmdArgs.push_back("-pie"); - - CmdArgs.push_back("--eh-frame-hdr"); ---- a/test/Driver/pic.c -+++ b/test/Driver/pic.c -@@ -244,6 +244,18 @@ - // RUN: %clang %s -target i386-pc-openbsd -nopie -### 2>&1 \ - // RUN: | FileCheck %s --check-prefix=CHECK-NOPIE-LD - // -+// On Alpine Linux, we want similar PIE-by-default behavior -+// RUN: %clang -c %s -target x86_64-alpine-linux-musl -### 2>&1 \ -+// RUN: | FileCheck %s --check-prefix=CHECK-PIE2 -+// RUN: %clang -c %s -target i686-alpine-linux-musl -### 2>&1 \ -+// RUN: | FileCheck %s --check-prefix=CHECK-PIE2 -+// RUN: %clang -c %s -target armv6-alpine-linux-musleabihf -### 2>&1 \ -+// RUN: | FileCheck %s --check-prefix=CHECK-PIE2 -+// RUN: %clang -c %s -target armv7-alpine-linux-musleabihf -### 2>&1 \ -+// RUN: | FileCheck %s --check-prefix=CHECK-PIE2 -+// RUN: %clang %s -target x86_64-alpine-linux-musl -nopie -### 2>&1 \ -+// RUN: | FileCheck %s --check-prefix=CHECK-NOPIE-LD -+// - // On Android PIC is enabled by default - // RUN: %clang -c %s -target i686-linux-android -### 2>&1 \ - // RUN: | FileCheck %s --check-prefix=CHECK-PIC2 diff --git a/system/clang/clang-0006-Link-with-z-now-by-default-for-Alpine-Linux.patch b/system/clang/clang-0006-Link-with-z-now-by-default-for-Alpine-Linux.patch deleted file mode 100644 index 90de948f6..000000000 --- a/system/clang/clang-0006-Link-with-z-now-by-default-for-Alpine-Linux.patch +++ /dev/null @@ -1,19 +0,0 @@ -From: Natanael Copa <ncopa@alpinelinux.org> -From: Jakub Jirutka <jakub@jirutka.cz> -Date: Sun, 16 Apr 2017 16:49:00 +0100 -Subject: [PATCH] Link with -z now by default for Alpine Linux - ---- a/lib/Driver/ToolChains.cpp -+++ b/lib/Driver/ToolChains.cpp -@@ -4116,6 +4116,11 @@ - - Distro Distro(D.getVFS()); - -+ if (Distro.IsAlpineLinux()) { -+ ExtraOpts.push_back("-z"); -+ ExtraOpts.push_back("now"); -+ } -+ - if (Distro.IsOpenSUSE() || Distro.IsUbuntu() || Distro.IsAlpineLinux()) { - ExtraOpts.push_back("-z"); - ExtraOpts.push_back("relro"); diff --git a/system/clang/clang-0007-Enable-stack-protector-by-default-for-alpine-linux.patch b/system/clang/clang-0007-Enable-stack-protector-by-default-for-alpine-linux.patch deleted file mode 100644 index 3487799b1..000000000 --- a/system/clang/clang-0007-Enable-stack-protector-by-default-for-alpine-linux.patch +++ /dev/null @@ -1,54 +0,0 @@ -From: Natanael Copa <ncopa@alpinelinux.org> -From: Jakub Jirutka <jakub@jirutka.cz> -Date: Sun, 16 Apr 2017 16:49:00 +0100 -Subject: [PATCH] Enable stack protector by default for Alpine Linux - ---- a/lib/Driver/ToolChains.cpp -+++ b/lib/Driver/ToolChains.cpp -@@ -4866,6 +4866,13 @@ - CmdArgs.push_back("-lunwind"); - } - -+unsigned Linux::GetDefaultStackProtectorLevel(bool KernelOrKext) const { -+ StringRef VendorName = Linux::getTriple().getVendorName(); -+ if (VendorName.compare("alpine") == 0) -+ return 2; -+ return 1; -+} -+ - /// DragonFly - DragonFly tool chain which can call as(1) and ld(1) directly. - - DragonFly::DragonFly(const Driver &D, const llvm::Triple &Triple, ---- a/lib/Driver/ToolChains.h -+++ b/lib/Driver/ToolChains.h -@@ -880,6 +880,7 @@ - void AddIAMCUIncludeArgs(const llvm::opt::ArgList &DriverArgs, - llvm::opt::ArgStringList &CC1Args) const override; - bool isPIEDefault() const override; -+ unsigned GetDefaultStackProtectorLevel(bool KernelOrKext) const override; - SanitizerMask getSupportedSanitizers() const override; - void addProfileRTLibs(const llvm::opt::ArgList &Args, - llvm::opt::ArgStringList &CmdArgs) const override; ---- a/test/Driver/stack-protector.c -+++ b/test/Driver/stack-protector.c -@@ -24,6 +24,20 @@ - // SSP-ALL: "-stack-protector" "3" - // SSP-ALL-NOT: "-stack-protector-buffer-size" - -+// RUN: %clang -target x86_64-alpine-linux-musl -### %s 2>&1 | FileCheck %s -check-prefix=ALPINE -+// ALPINE: "-stack-protector" "2" -+ -+// RUN: %clang -target x86_64-alpine-linux-musl -fstack-protector -### %s 2>&1 | FileCheck %s -check-prefix=ALPINE_SPS -+// ALPINE_SPS: "-stack-protector" "2" -+ -+// RUN: %clang -target x86_64-alpine-linux-musl -fstack-protector-all -### %s 2>&1 | FileCheck %s -check-prefix=ALPINE_ALL -+// ALPINE_ALL: "-stack-protector" "3" -+// ALPINE_ALL-NOT: "-stack-protector-buffer-size" -+ -+// RUN: %clang -target x86_64-alpine-linux-musl -fno-stack-protector -### %s 2>&1 | FileCheck %s -check-prefix=ALPINE_NOSSP -+// ALPINE_NOSSP-NOT: "-stack-protector" -+// ALPINE_NOSSP-NOT: "-stack-protector-buffer-size" -+ - // RUN: %clang -target x86_64-scei-ps4 -### %s 2>&1 | FileCheck %s -check-prefix=SSP-PS4 - // RUN: %clang -target x86_64-scei-ps4 -fstack-protector -### %s 2>&1 | FileCheck %s -check-prefix=SSP-PS4 - // SSP-PS4: "-stack-protector" "2" diff --git a/system/cmake/APKBUILD b/system/cmake/APKBUILD index 9ea4e8c6f..672ed2e3d 100644 --- a/system/cmake/APKBUILD +++ b/system/cmake/APKBUILD @@ -1,7 +1,7 @@ # Contributor: Valery Kartel <valery.kartel@gmail.com> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=cmake -pkgver=3.12.1 +pkgver=3.12.3 pkgrel=0 pkgdesc="Cross-platform build system" url="https://cmake.org" @@ -55,4 +55,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="7a0a769ef060785a8dc8c6aa272435a90a07cc8079f6c83c916da0b79d8bcdefca0d7be21f55f408ab4dfa6a57caa9ff8dec4be993145f4e3337ff392481b692 cmake-3.12.1.tar.gz" +sha512sums="2b5b006bd0fa09431eb525a7f419c64b811afbe1cc81d34e6167e04112966d9f48f28652b21b5a04c889de6227315db57dd2099a17ea6329e27f3e97eac9051c cmake-3.12.3.tar.gz" diff --git a/system/console-setup/APKBUILD b/system/console-setup/APKBUILD index b9cbf8525..4269c9b29 100644 --- a/system/console-setup/APKBUILD +++ b/system/console-setup/APKBUILD @@ -1,8 +1,8 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=console-setup -pkgver=1.184 -pkgrel=2 +pkgver=1.186 +pkgrel=0 pkgdesc="Set up console font and keyboard layout" url="https://salsa.debian.org/installer-team/console-setup" arch="noarch" @@ -16,7 +16,6 @@ subpackages="$pkgname-doc console-fonts:fonts console-keymaps:keymaps source="http://ftp.de.debian.org/debian/pool/main/c/$pkgname/${pkgname}_$pkgver.tar.xz console-setup.initd " -builddir="$srcdir/$pkgname" build() { cd "$builddir" @@ -48,5 +47,5 @@ ckbcomp() { mv "$pkgdir"/usr/bin/ckbcomp "$subpkgdir"/usr/bin/ } -sha512sums="3e970497d32ea7c04e7c41377b92378f3449deabc067d988c2f68d3d4d5e436726f2bd6bad0862518447e043a43a084288369d088e121d10fff14c780ecab4ba console-setup_1.184.tar.xz +sha512sums="d3ca291cca5025a483f4ce0be9a5c351a3ee0f9ce791deb167089cfba2f77cceb8e4cc82e21c385f42da26534bb103c70c4f0cfcb038b80a1e05ab9ca4b52c7e console-setup_1.186.tar.xz 3b8e2c9d8551f9a51bcd33e58771a4f55ff2840f8fe392e0070bd2b6a3911cd9ed9377873538f6904fd99836ac4e0280c712be69d275aae9183dd12ff7efddae console-setup.initd" diff --git a/system/cryptsetup/APKBUILD b/system/cryptsetup/APKBUILD index 91bb03928..ed8af18f0 100644 --- a/system/cryptsetup/APKBUILD +++ b/system/cryptsetup/APKBUILD @@ -1,8 +1,8 @@ # Contributor: Sören Tempel <soeren+alpine@soeren-tempel.net> # Maintainer: pkgname=cryptsetup -pkgver=2.0.1 -pkgrel=1 +pkgver=2.0.4 +pkgrel=0 pkgdesc="Setup tool for block device encryption" url="https://gitlab.com/cryptsetup/cryptsetup" arch="all" @@ -14,7 +14,7 @@ makedepends_host="lvm2-dev openssl-dev popt-dev util-linux-dev json-c-dev argon2-dev" makedepends="$makedepends_build $makedepends_host" checkdepends="device-mapper sharutils cmd:which bash" -subpackages="$pkgname-dev $pkgname-doc $pkgname-lang $pkgname-libs" +subpackages="$pkgname-dev $pkgname-doc $pkgname-lang $pkgname-libs $pkgname-openrc" source="https://www.kernel.org/pub/linux/utils/$pkgname/v${pkgver%.*}/$pkgname-$pkgver.tar.gz flush-stdout.patch dmcrypt.confd @@ -62,7 +62,7 @@ libs() { mv "$pkgdir"/lib "$subpkgdir"/ } -sha512sums="9d77e25c0d8569820a021e8c30fe7a3a9fa0ec9fe310e85e7aa1870e0df135baa4975a65aec02a4de6e66ba83661f1c8b1610aed7cc349e73b7e99cc17e08bda cryptsetup-2.0.1.tar.gz +sha512sums="5a671a6759e7f5c586b52c734db806d2240b8d4f9becb319964f637f9c5d959beeaee72608a5caef616710ee98b4299a2e66f8ca597296d2015cd557e60aa480 cryptsetup-2.0.4.tar.gz 301e3e3da5a899e0a6f01f44fbf37bb6a3f5b6a4fb41243bae6d3b7aea747276e784626cd1b19721cc264652c10ae8c560c4d20094e33bb82fb2fae0160682c0 flush-stdout.patch 74422d5e1614b43af894ea01da1ea80d805ec7f77981cbb80a6b1a4becad737a8825d7269812499095a7f50d39fa7da5bf4e4edae63529b1fe87b9176943a733 dmcrypt.confd 81dad61cdecf1dc529b26eb3cdc15979a582c876b01268f88e7a71c8fae6911137c03bfa63fee64e064e5fb31f673610be27ecab9fc432229f13e7040698bd5c dmcrypt.initd" diff --git a/system/debianutils/APKBUILD b/system/debianutils/APKBUILD index c77f146a3..8e79a7eef 100644 --- a/system/debianutils/APKBUILD +++ b/system/debianutils/APKBUILD @@ -2,7 +2,7 @@ # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=debianutils pkgver=4.8.6 -pkgrel=0 +pkgrel=1 pkgdesc="Useful utilities from Debian" url="https://packages.qa.debian.org/d/debianutils.html" arch="all" @@ -32,9 +32,12 @@ package() { } which() { - provides_priority="10" + provider_priority=10 mkdir -p "$subpkgdir"/usr/bin mv "$pkgdir"/usr/bin/which "$subpkgdir"/usr/bin/ + # This will emit a warning about docs on abuild, but this is expected. + mkdir -p "$subpkgdir"/usr/share/man/man1 + mv "${pkgdir}-doc"/usr/share/man/man1/which* "$subpkgdir"/usr/share/man/man1/ } sha512sums="5913729cc3c56962e8939b71803258952df0d7204df8090a7504fbefc7f5d1da8e749d606fe23148ea3294909ef172bc1f4f821690169e861729caab70921a2f debianutils_4.8.6.tar.xz" diff --git a/system/easy-kernel-power8-64k/APKBUILD b/system/easy-kernel-power8-64k/APKBUILD new file mode 100644 index 000000000..5f543bfe1 --- /dev/null +++ b/system/easy-kernel-power8-64k/APKBUILD @@ -0,0 +1,83 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: Adelie Platform Group <adelie-devel@lists.adelielinux.org> +_pkgname=easy-kernel-power8-64k +pkgver=4.14.76 +pkgrel=11 +pkgname=$_pkgname-$pkgver-mc$pkgrel +_kflavour=power8-64k +pkgdesc="The Linux kernel, packaged for POWER8 and POWER9 computers (with 64K page size)" +url="https://kernel.org/" +arch="ppc64" +options="!check !dbg !strip !tracedeps" +license="GPL-2.0-only" +depends="" +makedepends="bc gzip lzop openssl-dev xz" +install="" +provides="easy-kernel-power8-64k=$pkgver-r$pkgrel" +subpackages="$_pkgname-modules-$pkgver-mc$pkgrel:modules" +source="https://cdn.kernel.org/pub/linux/kernel/v4.x/linux-4.14.tar.xz + https://distfiles.adelielinux.org/source/linux-4.14-mc$pkgrel.patch.xz + ast-endianness.patch + config-ppc64 + futex-cmpxchg.patch + " +builddir="$srcdir/linux-4.14" + +prepare() { + default_prepare + cd "$srcdir" + cat linux-4.14-mc$pkgrel.patch.xz | unxz -> linux-4.14-mc$pkgrel.patch + cd "$builddir" + patch -Np1 <../linux-4.14-mc$pkgrel.patch + cd "$srcdir" + cp config-$CARCH linux-4.14/.config + cp -pr linux-4.14 linux-src +} + +build() { + cd "$builddir" + make LDFLAGS="" +} + +package() { + cd "$builddir" + mkdir -p "$pkgdir"/boot + make INSTALL_PATH="$pkgdir"/boot \ + INSTALL_MOD_PATH="$pkgdir" \ + install modules_install + + if [ -f "$pkgdir"/boot/vmlinuz ]; then + mv "$pkgdir"/boot/vmlinuz \ + "$pkgdir"/boot/vmlinuz-$pkgver-mc$pkgrel-easy-$_kflavour + fi + if [ -f "$pkgdir"/boot/vmlinux ]; then + mv "$pkgdir"/boot/vmlinux \ + "$pkgdir"/boot/vmlinux-$pkgver-mc$pkgrel-easy-$_kflavour + fi + + # This allows coexistence of both kernel flavours on media. + mv "$pkgdir"/boot/System.map "$pkgdir"/boot/System.map-$_kflavour + + install -D "$builddir"/include/config/kernel.release \ + "$pkgdir"/usr/share/kernel/easy-$pkgver-mc$pkgrel-$_kflavour/kernel.release +} + +modules() { + pkgdesc="Modules / device drivers for easy-kernel" + provides="easy-kernel-power8-64k-modules=$pkgver-r$pkgrel" + autodeps=0 # modules should not depend on src just for symlink + mkdir -p "$subpkgdir"/lib + mv "$pkgdir"/lib/modules "$subpkgdir"/lib/ + rm "$subpkgdir"/lib/modules/$pkgver-mc$pkgrel-easy-$_kflavour/build + rm "$subpkgdir"/lib/modules/$pkgver-mc$pkgrel-easy-$_kflavour/source + ln -s "../../../usr/src/linux-$pkgver-mc$pkgrel-p8" \ + "$subpkgdir"/lib/modules/$pkgver-mc$pkgrel-easy-$_kflavour/build + ln -s "../../../usr/src/linux-$pkgver-mc$pkgrel-p8" \ + "$subpkgdir"/lib/modules/$pkgver-mc$pkgrel-easy-$_kflavour/source +} + +sha512sums="77e43a02d766c3d73b7e25c4aafb2e931d6b16e870510c22cef0cdb05c3acb7952b8908ebad12b10ef982c6efbe286364b1544586e715cf38390e483927904d8 linux-4.14.tar.xz +114611ae0cfaa3c277d857cd760047a47256f1f068297383b0a8d69b62e09de3c2cde617428ce207d156c63f6d89f4559d3dd29f72698d0e9ce68f27360e108c linux-4.14-mc11.patch.xz +e41d9111219342ad13367902242444ecdd847a93575c3f9709d6c6a075bc650f4a15be9db1a8798435fc0a0b56d41705829bfe0d2c2d88f8d1c28931e27ef5be ast-endianness.patch +615b66b937aac3b2e5081db5bb0abb51bf32b9b1ba1b2d143d6b29187754ba83428a55944e8c81d58cab32d9f7d2909dc5c6156e9fda25bdad5c9e9db3335004 config-ppc64 +64486a4f53046a69f727cecd8c39400b50c2d2b15e3b5ca8c18b8249d25990f3a872ec064800ba3d190f9d25b4518899b9ea3675920f487108102856d6beb51e futex-cmpxchg.patch" diff --git a/system/easy-kernel-power8-64k/ast-endianness.patch b/system/easy-kernel-power8-64k/ast-endianness.patch new file mode 100644 index 000000000..03ee209b8 --- /dev/null +++ b/system/easy-kernel-power8-64k/ast-endianness.patch @@ -0,0 +1,38 @@ +Author: Elizabeth Myers <elizabeth@adelielinux.org> + +I'm certain this fix is wrong fwiw, but it's the best I could come with + +--- linux-4.14/drivers/gpu/drm/ast/ast_fb.c.old 2017-11-12 12:46:13.000000000 -0600 ++++ linux-4.14/drivers/gpu/drm/ast/ast_fb.c 2018-06-30 20:54:43.530000000 -0500 +@@ -109,9 +109,30 @@ + unmap = true; + } + for (i = y; i <= y2; i++) { ++ int copy_width = x2 - x + 1; + /* assume equal stride for now */ + src_offset = dst_offset = i * afbdev->afb.base.pitches[0] + (x * bpp); +- memcpy_toio(bo->kmap.virtual + src_offset, afbdev->sysram + src_offset, (x2 - x + 1) * bpp); ++ switch (bpp) { ++ case 4: ++ while (copy_width) { ++ iowrite32(*(u32 *)(afbdev->sysram + src_offset), ++ bo->kmap.virtual + src_offset); ++ src_offset += 4; ++ copy_width--; ++ } ++ break; ++ case 2: ++ while (copy_width) { ++ iowrite16(*(u16 *)(afbdev->sysram + src_offset), ++ bo->kmap.virtual + src_offset); ++ src_offset += 2; ++ copy_width--; ++ } ++ break; ++ default: ++ memcpy_toio(bo->kmap.virtual + src_offset, afbdev->sysram + src_offset, (x2 - x + 1) * bpp); ++ break; ++ } + + } + if (unmap) diff --git a/system/easy-kernel-power8-64k/config-ppc64 b/system/easy-kernel-power8-64k/config-ppc64 new file mode 100644 index 000000000..52af2adb7 --- /dev/null +++ b/system/easy-kernel-power8-64k/config-ppc64 @@ -0,0 +1,4477 @@ +# +# Automatically generated file; DO NOT EDIT. +# Linux/powerpc 4.14.56-mc9 Kernel Configuration +# +CONFIG_PPC64=y + +# +# Processor support +# +CONFIG_PPC_BOOK3S_64=y +# CONFIG_PPC_BOOK3E_64 is not set +# CONFIG_GENERIC_CPU is not set +# CONFIG_CELL_CPU is not set +# CONFIG_POWER4_CPU is not set +# CONFIG_POWER5_CPU is not set +# CONFIG_POWER6_CPU is not set +# CONFIG_POWER7_CPU is not set +CONFIG_POWER8_CPU=y +CONFIG_PPC_BOOK3S=y +CONFIG_PPC_FPU=y +CONFIG_ALTIVEC=y +CONFIG_VSX=y +CONFIG_PPC_STD_MMU=y +CONFIG_PPC_STD_MMU_64=y +CONFIG_PPC_RADIX_MMU=y +CONFIG_ARCH_ENABLE_HUGEPAGE_MIGRATION=y +CONFIG_PPC_MM_SLICES=y +CONFIG_PPC_HAVE_PMU_SUPPORT=y +CONFIG_PPC_PERF_CTRS=y +CONFIG_FORCE_SMP=y +CONFIG_SMP=y +CONFIG_NR_CPUS=256 +CONFIG_PPC_DOORBELL=y +CONFIG_VDSO32=y +CONFIG_CPU_BIG_ENDIAN=y +# CONFIG_CPU_LITTLE_ENDIAN is not set +CONFIG_64BIT=y +CONFIG_ARCH_PHYS_ADDR_T_64BIT=y +CONFIG_ARCH_DMA_ADDR_T_64BIT=y +CONFIG_MMU=y +CONFIG_ARCH_MMAP_RND_BITS_MAX=29 +CONFIG_ARCH_MMAP_RND_BITS_MIN=14 +CONFIG_ARCH_MMAP_RND_COMPAT_BITS_MAX=13 +CONFIG_ARCH_MMAP_RND_COMPAT_BITS_MIN=7 +CONFIG_HAVE_SETUP_PER_CPU_AREA=y +CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK=y +CONFIG_NR_IRQS=512 +CONFIG_NMI_IPI=y +CONFIG_STACKTRACE_SUPPORT=y +CONFIG_TRACE_IRQFLAGS_SUPPORT=y +CONFIG_LOCKDEP_SUPPORT=y +CONFIG_RWSEM_XCHGADD_ALGORITHM=y +CONFIG_GENERIC_HWEIGHT=y +CONFIG_ARCH_HAS_DMA_SET_COHERENT_MASK=y +CONFIG_PPC=y +# CONFIG_GENERIC_CSUM is not set +CONFIG_EARLY_PRINTK=y +CONFIG_PANIC_TIMEOUT=180 +CONFIG_COMPAT=y +CONFIG_SYSVIPC_COMPAT=y +CONFIG_SCHED_OMIT_FRAME_POINTER=y +CONFIG_ARCH_MAY_HAVE_PC_FDC=y +CONFIG_PPC_UDBG_16550=y +# CONFIG_GENERIC_TBSYNC is not set +CONFIG_AUDIT_ARCH=y +CONFIG_GENERIC_BUG=y +CONFIG_EPAPR_BOOT=y +# CONFIG_DEFAULT_UIMAGE is not set +CONFIG_ARCH_HIBERNATION_POSSIBLE=y +CONFIG_ARCH_SUSPEND_POSSIBLE=y +# CONFIG_PPC_DCR_NATIVE is not set +# CONFIG_PPC_DCR_MMIO is not set +# CONFIG_PPC_OF_PLATFORM_PCI is not set +CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y +CONFIG_ARCH_SUPPORTS_UPROBES=y +CONFIG_ZONE_DMA32=y +CONFIG_PGTABLE_LEVELS=4 +CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" +CONFIG_IRQ_WORK=y +CONFIG_BUILDTIME_EXTABLE_SORT=y + +# +# General setup +# +CONFIG_SCHED_MUQSS=y +CONFIG_INIT_ENV_ARG_LIMIT=32 +CONFIG_CROSS_COMPILE="" +# CONFIG_COMPILE_TEST is not set +CONFIG_LOCALVERSION="-easy-power8-64k" +CONFIG_LOCALVERSION_AUTO=y +CONFIG_HAVE_KERNEL_GZIP=y +CONFIG_HAVE_KERNEL_XZ=y +CONFIG_KERNEL_GZIP=y +# CONFIG_KERNEL_XZ is not set +CONFIG_DEFAULT_HOSTNAME="adelie" +CONFIG_SWAP=y +CONFIG_SYSVIPC=y +CONFIG_SYSVIPC_SYSCTL=y +CONFIG_POSIX_MQUEUE=y +CONFIG_POSIX_MQUEUE_SYSCTL=y +CONFIG_CROSS_MEMORY_ATTACH=y +CONFIG_FHANDLE=y +# CONFIG_USELIB is not set +# CONFIG_AUDIT is not set +CONFIG_HAVE_ARCH_AUDITSYSCALL=y + +# +# IRQ subsystem +# +CONFIG_GENERIC_IRQ_SHOW=y +CONFIG_GENERIC_IRQ_SHOW_LEVEL=y +CONFIG_GENERIC_IRQ_MIGRATION=y +CONFIG_HARDIRQS_SW_RESEND=y +CONFIG_IRQ_DOMAIN=y +CONFIG_GENERIC_MSI_IRQ=y +# CONFIG_IRQ_DOMAIN_DEBUG is not set +CONFIG_IRQ_FORCED_THREADING=y +CONFIG_SPARSE_IRQ=y +# CONFIG_GENERIC_IRQ_DEBUGFS is not set +CONFIG_GENERIC_TIME_VSYSCALL=y +CONFIG_GENERIC_CLOCKEVENTS=y +CONFIG_ARCH_HAS_TICK_BROADCAST=y +CONFIG_GENERIC_CLOCKEVENTS_BROADCAST=y +CONFIG_GENERIC_CMOS_UPDATE=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 + +# +# CPU/Task time and stats accounting +# +CONFIG_VIRT_CPU_ACCOUNTING=y +# CONFIG_TICK_CPU_ACCOUNTING is not set +CONFIG_VIRT_CPU_ACCOUNTING_NATIVE=y +# CONFIG_VIRT_CPU_ACCOUNTING_GEN is not set +CONFIG_BSD_PROCESS_ACCT=y +CONFIG_BSD_PROCESS_ACCT_V3=y +# CONFIG_TASKSTATS is not set + +# +# RCU Subsystem +# +CONFIG_TREE_RCU=y +# CONFIG_RCU_EXPERT is not set +CONFIG_SRCU=y +CONFIG_TREE_SRCU=y +# CONFIG_TASKS_RCU is not set +CONFIG_RCU_STALL_COMMON=y +CONFIG_RCU_NEED_SEGCBLIST=y +CONFIG_BUILD_BIN2C=y +CONFIG_IKCONFIG=y +CONFIG_IKCONFIG_PROC=y +CONFIG_LOG_BUF_SHIFT=17 +CONFIG_LOG_CPU_MAX_BUF_SHIFT=12 +CONFIG_PRINTK_SAFE_LOG_BUF_SHIFT=13 +CONFIG_ARCH_SUPPORTS_NUMA_BALANCING=y +CONFIG_CGROUPS=y +CONFIG_PAGE_COUNTER=y +CONFIG_MEMCG=y +CONFIG_MEMCG_SWAP=y +CONFIG_MEMCG_SWAP_ENABLED=y +CONFIG_BLK_CGROUP=y +# CONFIG_DEBUG_BLK_CGROUP is not set +CONFIG_CGROUP_WRITEBACK=y +CONFIG_CGROUP_SCHED=y +CONFIG_CGROUP_PIDS=y +CONFIG_CGROUP_RDMA=y +CONFIG_CGROUP_FREEZER=y +CONFIG_CGROUP_HUGETLB=y +CONFIG_CPUSETS=y +# CONFIG_PROC_PID_CPUSET is not set +CONFIG_CGROUP_DEVICE=y +CONFIG_CGROUP_PERF=y +# CONFIG_CGROUP_DEBUG is not set +# CONFIG_SOCK_CGROUP_DATA is not set +# CONFIG_CHECKPOINT_RESTORE is not set +CONFIG_NAMESPACES=y +CONFIG_UTS_NS=y +CONFIG_IPC_NS=y +CONFIG_USER_NS=y +CONFIG_PID_NS=y +CONFIG_NET_NS=y +# CONFIG_SYSFS_DEPRECATED is not set +# CONFIG_RELAY is not set +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_CC_OPTIMIZE_FOR_PERFORMANCE=y +# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set +CONFIG_SYSCTL=y +CONFIG_ANON_INODES=y +CONFIG_SYSCTL_EXCEPTION_TRACE=y +CONFIG_HAVE_PCSPKR_PLATFORM=y +CONFIG_BPF=y +# CONFIG_EXPERT is not set +CONFIG_MULTIUSER=y +CONFIG_SGETMASK_SYSCALL=y +CONFIG_SYSFS_SYSCALL=y +# CONFIG_SYSCTL_SYSCALL is not set +CONFIG_POSIX_TIMERS=y +CONFIG_KALLSYMS=y +CONFIG_KALLSYMS_ALL=y +# CONFIG_KALLSYMS_ABSOLUTE_PERCPU is not set +CONFIG_KALLSYMS_BASE_RELATIVE=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_HAVE_FUTEX_CMPXCHG=y +CONFIG_EPOLL=y +CONFIG_SIGNALFD=y +CONFIG_TIMERFD=y +CONFIG_EVENTFD=y +# CONFIG_BPF_SYSCALL is not set +CONFIG_SHMEM=y +CONFIG_AIO=y +CONFIG_ADVISE_SYSCALLS=y +CONFIG_USERFAULTFD=y +CONFIG_PCI_QUIRKS=y +CONFIG_MEMBARRIER=y +# CONFIG_EMBEDDED is not set +CONFIG_HAVE_PERF_EVENTS=y +# CONFIG_PC104 is not set + +# +# Kernel Performance Events And Counters +# +CONFIG_PERF_EVENTS=y +CONFIG_VM_EVENT_COUNTERS=y +CONFIG_SLUB_DEBUG=y +# CONFIG_SLUB_MEMCG_SYSFS_ON is not set +# 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_SLUB_CPU_PARTIAL=y +CONFIG_SYSTEM_DATA_VERIFICATION=y +CONFIG_PROFILING=y +CONFIG_TRACEPOINTS=y +CONFIG_CRASH_CORE=y +CONFIG_KEXEC_CORE=y +CONFIG_OPROFILE=m +CONFIG_HAVE_OPROFILE=y +# CONFIG_KPROBES is not set +CONFIG_JUMP_LABEL=y +# CONFIG_STATIC_KEYS_SELFTEST is not set +CONFIG_UPROBES=y +# CONFIG_HAVE_64BIT_ALIGNED_ACCESS is not set +CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS=y +CONFIG_ARCH_USE_BUILTIN_BSWAP=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_NMI=y +CONFIG_HAVE_ARCH_TRACEHOOK=y +CONFIG_GENERIC_SMP_IDLE_THREAD=y +CONFIG_ARCH_HAS_FORTIFY_SOURCE=y +CONFIG_HAVE_REGS_AND_STACK_ACCESS_API=y +CONFIG_HAVE_DMA_API_DEBUG=y +CONFIG_HAVE_HW_BREAKPOINT=y +CONFIG_HAVE_PERF_EVENTS_NMI=y +CONFIG_HAVE_NMI_WATCHDOG=y +CONFIG_HAVE_HARDLOCKUP_DETECTOR_ARCH=y +CONFIG_HAVE_PERF_REGS=y +CONFIG_HAVE_PERF_USER_STACK_DUMP=y +CONFIG_HAVE_ARCH_JUMP_LABEL=y +CONFIG_HAVE_RCU_TABLE_FREE=y +CONFIG_ARCH_HAVE_NMI_SAFE_CMPXCHG=y +CONFIG_ARCH_WEAK_RELEASE_ACQUIRE=y +CONFIG_ARCH_WANT_IPC_PARSE_VERSION=y +CONFIG_ARCH_WANT_COMPAT_IPC_PARSE_VERSION=y +CONFIG_ARCH_WANT_OLD_COMPAT_IPC=y +CONFIG_HAVE_ARCH_SECCOMP_FILTER=y +CONFIG_SECCOMP_FILTER=y +CONFIG_HAVE_GCC_PLUGINS=y +# CONFIG_GCC_PLUGINS is not set +# CONFIG_CC_STACKPROTECTOR is not set +CONFIG_THIN_ARCHIVES=y +CONFIG_HAVE_CONTEXT_TRACKING=y +CONFIG_HAVE_VIRT_CPU_ACCOUNTING=y +CONFIG_ARCH_HAS_SCALED_CPUTIME=y +CONFIG_HAVE_VIRT_CPU_ACCOUNTING_GEN=y +CONFIG_HAVE_IRQ_TIME_ACCOUNTING=y +CONFIG_HAVE_ARCH_TRANSPARENT_HUGEPAGE=y +CONFIG_HAVE_ARCH_SOFT_DIRTY=y +CONFIG_HAVE_MOD_ARCH_SPECIFIC=y +CONFIG_MODULES_USE_ELF_RELA=y +CONFIG_HAVE_IRQ_EXIT_ON_IRQ_STACK=y +CONFIG_ARCH_HAS_ELF_RANDOMIZE=y +CONFIG_HAVE_ARCH_MMAP_RND_BITS=y +CONFIG_ARCH_MMAP_RND_BITS=14 +CONFIG_HAVE_ARCH_MMAP_RND_COMPAT_BITS=y +CONFIG_ARCH_MMAP_RND_COMPAT_BITS=7 +# CONFIG_HAVE_ARCH_HASH is not set +# CONFIG_ISA_BUS_API is not set +CONFIG_CLONE_BACKWARDS=y +CONFIG_OLD_SIGSUSPEND=y +CONFIG_COMPAT_OLD_SIGACTION=y +# CONFIG_CPU_NO_EFFICIENT_FFS is not set +# CONFIG_HAVE_ARCH_VMAP_STACK is not set +# CONFIG_ARCH_OPTIONAL_KERNEL_RWX is not set +# CONFIG_ARCH_OPTIONAL_KERNEL_RWX_DEFAULT is not set +# CONFIG_ARCH_HAS_STRICT_KERNEL_RWX is not set +# CONFIG_ARCH_HAS_STRICT_MODULE_RWX is not set +# CONFIG_REFCOUNT_FULL is not set + +# +# GCOV-based kernel profiling +# +# CONFIG_GCOV_KERNEL is not set +CONFIG_ARCH_HAS_GCOV_PROFILE_ALL=y +# CONFIG_HAVE_GENERIC_DMA_COHERENT is not set +CONFIG_SLABINFO=y +CONFIG_RT_MUTEXES=y +CONFIG_BASE_SMALL=0 +CONFIG_MODULES=y +CONFIG_MODULE_FORCE_LOAD=y +CONFIG_MODULE_UNLOAD=y +CONFIG_MODULE_FORCE_UNLOAD=y +CONFIG_MODVERSIONS=y +CONFIG_MODULE_SRCVERSION_ALL=y +CONFIG_MODULE_SIG=y +# CONFIG_MODULE_SIG_FORCE is not set +CONFIG_MODULE_SIG_ALL=y +# CONFIG_MODULE_SIG_SHA1 is not set +# CONFIG_MODULE_SIG_SHA224 is not set +# CONFIG_MODULE_SIG_SHA256 is not set +# CONFIG_MODULE_SIG_SHA384 is not set +CONFIG_MODULE_SIG_SHA512=y +CONFIG_MODULE_SIG_HASH="sha512" +CONFIG_MODULE_COMPRESS=y +# CONFIG_MODULE_COMPRESS_GZIP is not set +CONFIG_MODULE_COMPRESS_XZ=y +# 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=y +# CONFIG_BLK_DEV_INTEGRITY is not set +# CONFIG_BLK_DEV_ZONED is not set +# CONFIG_BLK_DEV_THROTTLING 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 + +# +# Partition Types +# +CONFIG_PARTITION_ADVANCED=y +# CONFIG_ACORN_PARTITION is not set +# CONFIG_AIX_PARTITION is not set +# CONFIG_OSF_PARTITION is not set +CONFIG_AMIGA_PARTITION=y +# CONFIG_ATARI_PARTITION is not set +CONFIG_MAC_PARTITION=y +CONFIG_MSDOS_PARTITION=y +# CONFIG_BSD_DISKLABEL is not set +# CONFIG_MINIX_SUBPARTITION is not set +# CONFIG_SOLARIS_X86_PARTITION is not set +# CONFIG_UNIXWARE_DISKLABEL is not set +# CONFIG_LDM_PARTITION is not set +# CONFIG_SGI_PARTITION is not set +# CONFIG_ULTRIX_PARTITION is not set +# CONFIG_SUN_PARTITION is not set +# CONFIG_KARMA_PARTITION is not set +CONFIG_EFI_PARTITION=y +# CONFIG_SYSV68_PARTITION is not set +# CONFIG_CMDLINE_PARTITION is not set +CONFIG_BLOCK_COMPAT=y +CONFIG_BLK_MQ_PCI=y +CONFIG_BLK_MQ_VIRTIO=y + +# +# IO Schedulers +# +CONFIG_IOSCHED_NOOP=y +CONFIG_IOSCHED_DEADLINE=y +CONFIG_IOSCHED_CFQ=y +CONFIG_CFQ_GROUP_IOSCHED=y +# CONFIG_DEFAULT_DEADLINE is not set +CONFIG_DEFAULT_CFQ=y +# CONFIG_DEFAULT_NOOP is not set +CONFIG_DEFAULT_IOSCHED="cfq" +CONFIG_MQ_IOSCHED_DEADLINE=y +CONFIG_MQ_IOSCHED_KYBER=y +CONFIG_IOSCHED_BFQ=y +CONFIG_BFQ_GROUP_IOSCHED=y +CONFIG_PREEMPT_NOTIFIERS=y +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_FREEZER=y +CONFIG_PPC_MSI_BITMAP=y +CONFIG_PPC_XICS=y +CONFIG_PPC_ICP_NATIVE=y +CONFIG_PPC_ICP_HV=y +CONFIG_PPC_ICS_RTAS=y +CONFIG_PPC_XIVE=y +CONFIG_PPC_XIVE_NATIVE=y +CONFIG_PPC_XIVE_SPAPR=y +CONFIG_PPC_SCOM=y +# CONFIG_SCOM_DEBUGFS is not set +# CONFIG_GE_FPGA is not set + +# +# Platform support +# +CONFIG_PPC_POWERNV=y +CONFIG_OPAL_PRD=y +# CONFIG_PPC_MEMTRACE is not set +CONFIG_PPC_VAS=y +CONFIG_PPC_PSERIES=y +CONFIG_PPC_SPLPAR=y +# CONFIG_DTL is not set +CONFIG_PSERIES_ENERGY=m +CONFIG_SCANLOG=m +CONFIG_IO_EVENT_IRQ=y +CONFIG_LPARCFG=y +CONFIG_PPC_SMLPAR=y +CONFIG_CMM=y +CONFIG_HV_PERF_CTRS=y +CONFIG_IBMVIO=y +CONFIG_IBMEBUS=y +# CONFIG_PPC_PMAC is not set +# CONFIG_PPC_MAPLE is not set +# CONFIG_PPC_PASEMI is not set +# CONFIG_PPC_PS3 is not set +# CONFIG_PPC_CELL is not set +# CONFIG_PPC_CELL_NATIVE is not set +# CONFIG_PPC_IBM_CELL_BLADE is not set +# CONFIG_PQ2ADS is not set +CONFIG_KVM_GUEST=y +CONFIG_EPAPR_PARAVIRT=y +CONFIG_PPC_NATIVE=y +CONFIG_PPC_OF_BOOT_TRAMPOLINE=y +CONFIG_PPC_DT_CPU_FTRS=y +CONFIG_UDBG_RTAS_CONSOLE=y +CONFIG_PPC_SMP_MUXED_IPI=y +# CONFIG_IPIC is not set +CONFIG_MPIC=y +# CONFIG_PPC_EPAPR_HV_PIC is not set +# CONFIG_MPIC_WEIRD is not set +# CONFIG_MPIC_MSGR is not set +CONFIG_PPC_I8259=y +# CONFIG_U3_DART is not set +CONFIG_PPC_RTAS=y +CONFIG_RTAS_ERROR_LOGGING=y +CONFIG_PPC_RTAS_DAEMON=y +CONFIG_RTAS_PROC=y +# CONFIG_RTAS_FLASH is not set +# CONFIG_MMIO_NVRAM is not set +# CONFIG_MPIC_U3_HT_IRQS is not set +CONFIG_EEH=y +# CONFIG_PPC_MPC106 is not set +# CONFIG_PPC_970_NAP is not set +CONFIG_PPC_P7_NAP=y +CONFIG_PPC_INDIRECT_PIO=y + +# +# 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_ONDEMAND is not set +# CONFIG_CPU_FREQ_DEFAULT_GOV_CONSERVATIVE is not set +# CONFIG_CPU_FREQ_DEFAULT_GOV_SCHEDUTIL is not set +CONFIG_CPU_FREQ_GOV_PERFORMANCE=y +CONFIG_CPU_FREQ_GOV_POWERSAVE=y +CONFIG_CPU_FREQ_GOV_USERSPACE=y +CONFIG_CPU_FREQ_GOV_ONDEMAND=y +CONFIG_CPU_FREQ_GOV_CONSERVATIVE=y +# CONFIG_CPU_FREQ_GOV_SCHEDUTIL is not set + +# +# CPU frequency scaling drivers +# +CONFIG_POWERNV_CPUFREQ=m + +# +# CPUIdle driver +# + +# +# CPU Idle +# +CONFIG_CPU_IDLE=y +# CONFIG_CPU_IDLE_GOV_LADDER is not set +CONFIG_CPU_IDLE_GOV_MENU=y + +# +# POWERPC CPU Idle Drivers +# +CONFIG_PSERIES_CPUIDLE=y +CONFIG_POWERNV_CPUIDLE=y +# CONFIG_ARCH_NEEDS_CPU_IDLE_COUPLED is not set +# CONFIG_FSL_ULI1575 is not set +CONFIG_GEN_RTC=y +# CONFIG_SIMPLE_GPIO is not set + +# +# Kernel options +# +CONFIG_HZ_100=y +# CONFIG_HZ_250_NODEF is not set +# CONFIG_HZ_300_NODEF is not set +# CONFIG_HZ_1000_NODEF is not set +CONFIG_HZ=100 +CONFIG_SCHED_HRTICK=y +# CONFIG_PREEMPT_NONE is not set +CONFIG_PREEMPT_VOLUNTARY=y +# CONFIG_PREEMPT is not set +CONFIG_BINFMT_ELF=y +CONFIG_COMPAT_BINFMT_ELF=y +CONFIG_ELFCORE=y +CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS=y +CONFIG_BINFMT_SCRIPT=y +# CONFIG_HAVE_AOUT is not set +CONFIG_BINFMT_MISC=m +CONFIG_COREDUMP=y +CONFIG_HUGETLB_PAGE_SIZE_VARIABLE=y +CONFIG_PPC_TRANSACTIONAL_MEM=y +# CONFIG_LD_HEAD_STUB_CATCH is not set +CONFIG_IOMMU_HELPER=y +# CONFIG_SWIOTLB is not set +CONFIG_HOTPLUG_CPU=y +CONFIG_ARCH_CPU_PROBE_RELEASE=y +CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y +CONFIG_ARCH_HAS_WALK_MEMORY=y +CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y +# CONFIG_PPC64_SUPPORTS_MEMORY_FAILURE is not set +CONFIG_KEXEC=y +# CONFIG_RELOCATABLE is not set +# CONFIG_CRASH_DUMP is not set +# CONFIG_FA_DUMP is not set +CONFIG_IRQ_ALL_CPUS=y +CONFIG_NUMA=y +CONFIG_NODES_SHIFT=8 +CONFIG_USE_PERCPU_NUMA_NODE_ID=y +CONFIG_HAVE_MEMORYLESS_NODES=y +CONFIG_ARCH_SELECT_MEMORY_MODEL=y +CONFIG_ARCH_SPARSEMEM_ENABLE=y +CONFIG_ARCH_SPARSEMEM_DEFAULT=y +CONFIG_SYS_SUPPORTS_HUGETLBFS=y +CONFIG_ILLEGAL_POINTER_VALUE=0x5deadbeef0000000 +CONFIG_SELECT_MEMORY_MODEL=y +CONFIG_SPARSEMEM_MANUAL=y +CONFIG_SPARSEMEM=y +CONFIG_NEED_MULTIPLE_NODES=y +CONFIG_HAVE_MEMORY_PRESENT=y +CONFIG_SPARSEMEM_EXTREME=y +CONFIG_SPARSEMEM_VMEMMAP_ENABLE=y +CONFIG_SPARSEMEM_VMEMMAP=y +CONFIG_HAVE_MEMBLOCK=y +CONFIG_HAVE_MEMBLOCK_NODE_MAP=y +CONFIG_HAVE_GENERIC_GUP=y +CONFIG_NO_BOOTMEM=y +CONFIG_MEMORY_ISOLATION=y +CONFIG_HAVE_BOOTMEM_INFO_NODE=y +CONFIG_MEMORY_HOTPLUG=y +CONFIG_MEMORY_HOTPLUG_SPARSE=y +# CONFIG_MEMORY_HOTPLUG_DEFAULT_ONLINE is not set +CONFIG_MEMORY_HOTREMOVE=y +CONFIG_SPLIT_PTLOCK_CPUS=4 +CONFIG_MEMORY_BALLOON=y +CONFIG_BALLOON_COMPACTION=y +CONFIG_COMPACTION=y +CONFIG_MIGRATION=y +CONFIG_PHYS_ADDR_T_64BIT=y +CONFIG_BOUNCE=y +CONFIG_MMU_NOTIFIER=y +CONFIG_KSM=y +CONFIG_UKSM=y +# CONFIG_KSM_LEGACY is not set +CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 +CONFIG_TRANSPARENT_HUGEPAGE=y +# CONFIG_TRANSPARENT_HUGEPAGE_ALWAYS is not set +CONFIG_TRANSPARENT_HUGEPAGE_MADVISE=y +# CONFIG_ARCH_WANTS_THP_SWAP is not set +CONFIG_TRANSPARENT_HUGE_PAGECACHE=y +# CONFIG_CLEANCACHE is not set +# CONFIG_FRONTSWAP is not set +CONFIG_CMA=y +# CONFIG_CMA_DEBUG is not set +# CONFIG_CMA_DEBUGFS is not set +CONFIG_CMA_AREAS=7 +# CONFIG_ZPOOL is not set +# CONFIG_ZBUD is not set +# CONFIG_ZSMALLOC is not set +CONFIG_ARCH_SUPPORTS_DEFERRED_STRUCT_PAGE_INIT=y +# CONFIG_DEFERRED_STRUCT_PAGE_INIT is not set +# CONFIG_IDLE_PAGE_TRACKING is not set +CONFIG_ARCH_HAS_ZONE_DEVICE=y +# CONFIG_ZONE_DEVICE is not set +CONFIG_FRAME_VECTOR=y +# CONFIG_PERCPU_STATS is not set +CONFIG_ARCH_MEMORY_PROBE=y +CONFIG_NODES_SPAN_OTHER_NODES=y +# CONFIG_PPC_4K_PAGES is not set +CONFIG_PPC_64K_PAGES=y +CONFIG_THREAD_SHIFT=14 +CONFIG_FORCE_MAX_ZONEORDER=9 +# CONFIG_PPC_SUBPAGE_PROT is not set +CONFIG_PPC_COPRO_BASE=y +CONFIG_SCHED_SMT=y +CONFIG_PPC_DENORMALISATION=y +# CONFIG_CMDLINE_BOOL is not set +CONFIG_EXTRA_TARGETS="" +CONFIG_SUSPEND=y +CONFIG_SUSPEND_FREEZER=y +CONFIG_HIBERNATE_CALLBACKS=y +CONFIG_HIBERNATION=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 is not set +CONFIG_PM_OPP=y +# CONFIG_WQ_POWER_EFFICIENT_DEFAULT is not set +CONFIG_SECCOMP=y +CONFIG_ISA_DMA_API=y + +# +# Bus options +# +CONFIG_ZONE_DMA=y +CONFIG_NEED_DMA_MAP_STATE=y +CONFIG_NEED_SG_DMA_LENGTH=y +CONFIG_GENERIC_ISA_DMA=y +# CONFIG_PPC_INDIRECT_PCI is not set +# CONFIG_FSL_LBC is not set +CONFIG_PCI=y +CONFIG_PCI_DOMAINS=y +CONFIG_PCI_SYSCALL=y +CONFIG_PCIEPORTBUS=y +# CONFIG_HOTPLUG_PCI_PCIE is not set +CONFIG_PCIEAER=y +# CONFIG_PCIE_ECRC is not set +# CONFIG_PCIEAER_INJECT is not set +CONFIG_PCIEASPM=y +# CONFIG_PCIEASPM_DEBUG is not set +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_DPC is not set +# CONFIG_PCIE_PTM is not set +CONFIG_PCI_BUS_ADDR_T_64BIT=y +CONFIG_PCI_MSI=y +# CONFIG_PCI_MSI_IRQ_DOMAIN is not set +# CONFIG_PCI_DEBUG is not set +# CONFIG_PCI_REALLOC_ENABLE_AUTO is not set +# CONFIG_PCI_STUB is not set +CONFIG_PCI_ATS=y +CONFIG_PCI_IOV=y +# CONFIG_PCI_PRI is not set +# CONFIG_PCI_PASID is not set +CONFIG_HOTPLUG_PCI=y +# CONFIG_HOTPLUG_PCI_CPCI is not set +CONFIG_HOTPLUG_PCI_SHPC=m +CONFIG_HOTPLUG_PCI_POWERNV=m +CONFIG_HOTPLUG_PCI_RPA=m +# CONFIG_HOTPLUG_PCI_RPA_DLPAR is not set + +# +# DesignWare PCI Core Support +# + +# +# PCI host controller drivers +# + +# +# PCI Endpoint +# +# CONFIG_PCI_ENDPOINT is not set + +# +# PCI switch controller drivers +# +# CONFIG_PCI_SW_SWITCHTEC is not set +# CONFIG_PCCARD is not set +# CONFIG_HAS_RAPIDIO is not set +# CONFIG_RAPIDIO is not set +# CONFIG_NONSTATIC_KERNEL is not set +CONFIG_PAGE_OFFSET=0xc000000000000000 +CONFIG_KERNEL_START=0xc000000000000000 +CONFIG_PHYSICAL_START=0x00000000 +CONFIG_ARCH_RANDOM=y +CONFIG_NET=y +CONFIG_COMPAT_NETLINK_MESSAGES=y +CONFIG_NET_INGRESS=y + +# +# Networking options +# +CONFIG_PACKET=y +# CONFIG_PACKET_DIAG is not set +CONFIG_UNIX=y +# CONFIG_UNIX_DIAG is not set +# CONFIG_TLS is not set +CONFIG_XFRM=y +CONFIG_XFRM_ALGO=m +CONFIG_XFRM_USER=m +# CONFIG_XFRM_SUB_POLICY is not set +# CONFIG_XFRM_MIGRATE is not set +# CONFIG_XFRM_STATISTICS is not set +CONFIG_XFRM_IPCOMP=m +CONFIG_NET_KEY=m +# CONFIG_NET_KEY_MIGRATE is not set +CONFIG_INET=y +CONFIG_IP_MULTICAST=y +# CONFIG_IP_ADVANCED_ROUTER is not set +# CONFIG_IP_PNP is not set +CONFIG_NET_IPIP=y +# CONFIG_NET_IPGRE_DEMUX is not set +CONFIG_NET_IP_TUNNEL=y +# CONFIG_IP_MROUTE is not set +CONFIG_SYN_COOKIES=y +# CONFIG_NET_IPVTI is not set +# CONFIG_NET_UDP_TUNNEL is not set +# CONFIG_NET_FOU is not set +# CONFIG_NET_FOU_IP_TUNNELS is not set +CONFIG_INET_AH=m +CONFIG_INET_ESP=m +# CONFIG_INET_ESP_OFFLOAD is not set +CONFIG_INET_IPCOMP=m +CONFIG_INET_XFRM_TUNNEL=m +CONFIG_INET_TUNNEL=y +CONFIG_INET_XFRM_MODE_TRANSPORT=y +CONFIG_INET_XFRM_MODE_TUNNEL=y +CONFIG_INET_XFRM_MODE_BEET=y +CONFIG_INET_DIAG=y +CONFIG_INET_TCP_DIAG=y +# CONFIG_INET_UDP_DIAG is not set +# CONFIG_INET_RAW_DIAG is not set +# CONFIG_INET_DIAG_DESTROY is not set +# CONFIG_TCP_CONG_ADVANCED is not set +CONFIG_TCP_CONG_CUBIC=y +CONFIG_DEFAULT_TCP_CONG="cubic" +# CONFIG_TCP_MD5SIG is not set +CONFIG_IPV6=y +# CONFIG_IPV6_ROUTER_PREF is not set +# CONFIG_IPV6_OPTIMISTIC_DAD is not set +# CONFIG_INET6_AH is not set +# CONFIG_INET6_ESP is not set +# CONFIG_INET6_IPCOMP is not set +# CONFIG_IPV6_MIP6 is not set +# CONFIG_IPV6_ILA is not set +# CONFIG_INET6_XFRM_TUNNEL is not set +# CONFIG_INET6_TUNNEL is not set +CONFIG_INET6_XFRM_MODE_TRANSPORT=y +CONFIG_INET6_XFRM_MODE_TUNNEL=y +CONFIG_INET6_XFRM_MODE_BEET=y +# CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION 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_FOU is not set +# CONFIG_IPV6_FOU_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_NETWORK_SECMARK is not set +CONFIG_NET_PTP_CLASSIFY=y +# CONFIG_NETWORK_PHY_TIMESTAMPING is not set +CONFIG_NETFILTER=y +CONFIG_NETFILTER_ADVANCED=y + +# +# Core Netfilter Configuration +# +CONFIG_NETFILTER_INGRESS=y +CONFIG_NETFILTER_NETLINK=m +# CONFIG_NETFILTER_NETLINK_ACCT is not set +CONFIG_NETFILTER_NETLINK_QUEUE=m +CONFIG_NETFILTER_NETLINK_LOG=m +CONFIG_NF_CONNTRACK=m +# CONFIG_NF_LOG_NETDEV is not set +CONFIG_NF_CONNTRACK_MARK=y +CONFIG_NF_CONNTRACK_PROCFS=y +CONFIG_NF_CONNTRACK_EVENTS=y +# CONFIG_NF_CONNTRACK_TIMEOUT is not set +# CONFIG_NF_CONNTRACK_TIMESTAMP is not set +CONFIG_NF_CT_PROTO_DCCP=y +CONFIG_NF_CT_PROTO_SCTP=y +CONFIG_NF_CT_PROTO_UDPLITE=y +# CONFIG_NF_CONNTRACK_AMANDA is not set +CONFIG_NF_CONNTRACK_FTP=m +# CONFIG_NF_CONNTRACK_H323 is not set +CONFIG_NF_CONNTRACK_IRC=m +# CONFIG_NF_CONNTRACK_NETBIOS_NS is not set +# CONFIG_NF_CONNTRACK_SNMP is not set +# CONFIG_NF_CONNTRACK_PPTP is not set +# CONFIG_NF_CONNTRACK_SANE is not set +# CONFIG_NF_CONNTRACK_SIP is not set +CONFIG_NF_CONNTRACK_TFTP=m +CONFIG_NF_CT_NETLINK=m +# CONFIG_NF_CT_NETLINK_TIMEOUT is not set +# CONFIG_NETFILTER_NETLINK_GLUE_CT is not set +# CONFIG_NF_TABLES is not set +# CONFIG_NETFILTER_XTABLES is not set +# CONFIG_IP_SET is not set +# CONFIG_IP_VS is not set + +# +# IP: Netfilter Configuration +# +CONFIG_NF_DEFRAG_IPV4=m +CONFIG_NF_CONNTRACK_IPV4=m +# CONFIG_NF_SOCKET_IPV4 is not set +# CONFIG_NF_DUP_IPV4 is not set +# CONFIG_NF_LOG_ARP is not set +# CONFIG_NF_LOG_IPV4 is not set +# CONFIG_NF_REJECT_IPV4 is not set +# CONFIG_NF_NAT_IPV4 is not set +# CONFIG_IP_NF_IPTABLES is not set +# CONFIG_IP_NF_ARPTABLES is not set + +# +# IPv6: Netfilter Configuration +# +CONFIG_NF_DEFRAG_IPV6=m +CONFIG_NF_CONNTRACK_IPV6=m +# CONFIG_NF_SOCKET_IPV6 is not set +# CONFIG_NF_DUP_IPV6 is not set +# CONFIG_NF_REJECT_IPV6 is not set +# CONFIG_NF_LOG_IPV6 is not set +# CONFIG_NF_NAT_IPV6 is not set +# CONFIG_IP6_NF_IPTABLES is not set +# CONFIG_IP_DCCP is not set +CONFIG_IP_SCTP=m +# CONFIG_SCTP_DBG_OBJCNT is not set +CONFIG_SCTP_DEFAULT_COOKIE_HMAC_MD5=y +# CONFIG_SCTP_DEFAULT_COOKIE_HMAC_SHA1 is not set +# CONFIG_SCTP_DEFAULT_COOKIE_HMAC_NONE is not set +CONFIG_SCTP_COOKIE_HMAC_MD5=y +CONFIG_SCTP_COOKIE_HMAC_SHA1=y +CONFIG_INET_SCTP_DIAG=m +# 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_LLC=m +# CONFIG_LLC2 is not set +# CONFIG_IPX is not set +CONFIG_ATALK=m +CONFIG_DEV_APPLETALK=m +CONFIG_IPDDP=m +CONFIG_IPDDP_ENCAP=y +# 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 is not set +# 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_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 +CONFIG_HAMRADIO=y + +# +# Packet Radio protocols +# +CONFIG_AX25=m +CONFIG_AX25_DAMA_SLAVE=y +CONFIG_NETROM=m +CONFIG_ROSE=m + +# +# AX.25 network device drivers +# +# CONFIG_MKISS is not set +# CONFIG_6PACK is not set +# CONFIG_BPQETHER is not set +# CONFIG_BAYCOM_SER_FDX is not set +# CONFIG_BAYCOM_SER_HDX is not set +# CONFIG_YAM is not set +# CONFIG_CAN is not set +CONFIG_BT=m +CONFIG_BT_BREDR=y +CONFIG_BT_RFCOMM=m +# CONFIG_BT_RFCOMM_TTY is not set +CONFIG_BT_BNEP=m +# CONFIG_BT_BNEP_MC_FILTER is not set +# CONFIG_BT_BNEP_PROTO_FILTER is not set +CONFIG_BT_HIDP=m +CONFIG_BT_HS=y +CONFIG_BT_LE=y +# CONFIG_BT_LEDS is not set +# CONFIG_BT_SELFTEST is not set +CONFIG_BT_DEBUGFS=y + +# +# Bluetooth device drivers +# +CONFIG_BT_INTEL=m +CONFIG_BT_BCM=m +CONFIG_BT_RTL=m +CONFIG_BT_HCIBTUSB=m +CONFIG_BT_HCIBTUSB_BCM=y +CONFIG_BT_HCIBTUSB_RTL=y +# CONFIG_BT_HCIBTSDIO is not set +CONFIG_BT_HCIUART=m +# CONFIG_BT_HCIUART_H4 is not set +# CONFIG_BT_HCIUART_BCSP is not set +# CONFIG_BT_HCIUART_ATH3K is not set +# CONFIG_BT_HCIUART_3WIRE is not set +# CONFIG_BT_HCIUART_INTEL is not set +# CONFIG_BT_HCIUART_QCA is not set +# CONFIG_BT_HCIUART_AG6XX is not set +# CONFIG_BT_HCIUART_MRVL is not set +CONFIG_BT_HCIBCM203X=m +# CONFIG_BT_HCIBPA10X is not set +CONFIG_BT_HCIBFUSB=m +CONFIG_BT_HCIVHCI=m +CONFIG_BT_MRVL=m +# CONFIG_BT_MRVL_SDIO is not set +CONFIG_BT_ATH3K=m +# CONFIG_AF_RXRPC is not set +# CONFIG_AF_KCM is not set +# CONFIG_STREAM_PARSER is not set +CONFIG_WIRELESS=y +CONFIG_WEXT_CORE=y +CONFIG_WEXT_PROC=y +CONFIG_CFG80211=m +# CONFIG_NL80211_TESTMODE is not set +# CONFIG_CFG80211_DEVELOPER_WARNINGS is not set +CONFIG_CFG80211_DEFAULT_PS=y +# CONFIG_CFG80211_DEBUGFS is not set +# CONFIG_CFG80211_INTERNAL_REGDB is not set +CONFIG_CFG80211_CRDA_SUPPORT=y +CONFIG_CFG80211_WEXT=y +# CONFIG_LIB80211 is not set +CONFIG_MAC80211=m +CONFIG_MAC80211_HAS_RC=y +CONFIG_MAC80211_RC_MINSTREL=y +CONFIG_MAC80211_RC_MINSTREL_HT=y +# CONFIG_MAC80211_RC_MINSTREL_VHT is not set +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 is not set +# 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_NET_DEVLINK is not set +CONFIG_MAY_USE_DEVLINK=y +CONFIG_HAVE_EBPF_JIT=y + +# +# Device Drivers +# + +# +# Generic Driver Options +# +CONFIG_UEVENT_HELPER=y +CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" +CONFIG_DEVTMPFS=y +CONFIG_DEVTMPFS_MOUNT=y +CONFIG_STANDALONE=y +CONFIG_PREVENT_FIRMWARE_BUILD=y +CONFIG_FW_LOADER=y +CONFIG_FIRMWARE_IN_KERNEL=y +CONFIG_EXTRA_FIRMWARE="" +# CONFIG_FW_LOADER_USER_HELPER_FALLBACK is not set +CONFIG_ALLOW_DEV_COREDUMP=y +# CONFIG_DEBUG_DRIVER is not set +# CONFIG_DEBUG_DEVRES is not set +# CONFIG_DEBUG_TEST_DRIVER_REMOVE is not set +# CONFIG_TEST_ASYNC_DRIVER_PROBE is not set +# CONFIG_SYS_HYPERVISOR is not set +# CONFIG_GENERIC_CPU_DEVICES is not set +CONFIG_GENERIC_CPU_AUTOPROBE=y +CONFIG_GENERIC_CPU_VULNERABILITIES=y +CONFIG_REGMAP=y +CONFIG_REGMAP_I2C=y +CONFIG_DMA_SHARED_BUFFER=y +# CONFIG_DMA_FENCE_TRACE is not set + +# +# Bus devices +# +# CONFIG_SIMPLE_PM_BUS is not set +# CONFIG_CONNECTOR is not set +# CONFIG_MTD is not set +CONFIG_DTC=y +CONFIG_OF=y +# CONFIG_OF_UNITTEST is not set +CONFIG_OF_FLATTREE=y +CONFIG_OF_EARLY_FLATTREE=y +CONFIG_OF_DYNAMIC=y +CONFIG_OF_ADDRESS=y +CONFIG_OF_ADDRESS_PCI=y +CONFIG_OF_IRQ=y +CONFIG_OF_NET=y +CONFIG_OF_MDIO=y +CONFIG_OF_PCI=y +CONFIG_OF_PCI_IRQ=y +CONFIG_OF_RESERVED_MEM=y +# CONFIG_OF_OVERLAY is not set +CONFIG_ARCH_MIGHT_HAVE_PC_PARPORT=y +# CONFIG_PARPORT is not set +CONFIG_BLK_DEV=y +# CONFIG_BLK_DEV_NULL_BLK is not set +# CONFIG_BLK_DEV_FD is not set +# CONFIG_BLK_DEV_PCIESSD_MTIP32XX is not set +# CONFIG_BLK_DEV_DAC960 is not set +# CONFIG_BLK_DEV_UMEM is not set +# CONFIG_BLK_DEV_COW_COMMON 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=m +# CONFIG_BLK_DEV_SKD is not set +# CONFIG_BLK_DEV_SX8 is not set +CONFIG_BLK_DEV_RAM=y +CONFIG_BLK_DEV_RAM_COUNT=16 +CONFIG_BLK_DEV_RAM_SIZE=65536 +# CONFIG_BLK_DEV_RAM_DAX is not set +# CONFIG_CDROM_PKTCDVD is not set +# CONFIG_ATA_OVER_ETH is not set +CONFIG_VIRTIO_BLK=y +# CONFIG_VIRTIO_BLK_SCSI is not set +# CONFIG_BLK_DEV_RBD is not set +# CONFIG_BLK_DEV_RSXX is not set +CONFIG_NVME_CORE=y +CONFIG_BLK_DEV_NVME=y +# CONFIG_NVME_FC is not set + +# +# Misc devices +# +# CONFIG_SENSORS_LIS3LV02D is not set +# CONFIG_AD525X_DPOT is not set +# CONFIG_DUMMY_IRQ is not set +# CONFIG_PHANTOM is not set +# CONFIG_SGI_IOC4 is not set +CONFIG_TIFM_CORE=m +CONFIG_TIFM_7XX1=m +# 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_USB_SWITCH_FSA9480 is not set +# CONFIG_SRAM is not set +# CONFIG_PCI_ENDPOINT_TEST 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=m +# CONFIG_EEPROM_IDT_89HPESX is not set +# CONFIG_CB710_CORE is not set + +# +# Texas Instruments shared transport line discipline +# +# CONFIG_SENSORS_LIS3_I2C is not set + +# +# Altera FPGA firmware download module +# +# CONFIG_ALTERA_STAPL is not set + +# +# Intel MIC Bus Driver +# + +# +# SCIF Bus Driver +# + +# +# VOP Bus Driver +# + +# +# Intel MIC Host Driver +# + +# +# Intel MIC Card Driver +# + +# +# SCIF Driver +# + +# +# Intel MIC Coprocessor State Management (COSM) Drivers +# + +# +# VOP Driver +# +# CONFIG_GENWQE is not set +# CONFIG_ECHO is not set +CONFIG_CXL_BASE=y +CONFIG_CXL_AFU_DRIVER_OPS=y +CONFIG_CXL_LIB=y +CONFIG_CXL=m +CONFIG_CXL_BIMODAL=y +CONFIG_HAVE_IDE=y +# CONFIG_IDE is not set + +# +# SCSI device support +# +CONFIG_SCSI_MOD=y +CONFIG_RAID_ATTRS=y +CONFIG_SCSI=y +CONFIG_SCSI_DMA=y +CONFIG_SCSI_NETLINK=y +CONFIG_SCSI_MQ_DEFAULT=y +CONFIG_SCSI_PROC_FS=y + +# +# SCSI support type (disk, tape, CD-ROM) +# +CONFIG_BLK_DEV_SD=y +CONFIG_CHR_DEV_ST=y +# CONFIG_CHR_DEV_OSST is not set +CONFIG_BLK_DEV_SR=y +CONFIG_BLK_DEV_SR_VENDOR=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=m +CONFIG_SCSI_ISCSI_ATTRS=m +CONFIG_SCSI_SAS_ATTRS=y +CONFIG_SCSI_SAS_LIBSAS=y +# CONFIG_SCSI_SAS_ATA is not set +CONFIG_SCSI_SAS_HOST_SMP=y +CONFIG_SCSI_SRP_ATTRS=y +CONFIG_SCSI_LOWLEVEL=y +CONFIG_ISCSI_TCP=m +CONFIG_ISCSI_BOOT_SYSFS=m +# CONFIG_SCSI_CXGB3_ISCSI is not set +# CONFIG_SCSI_CXGB4_ISCSI is not set +# CONFIG_SCSI_BNX2_ISCSI is not set +# CONFIG_BE2ISCSI is not set +CONFIG_CXLFLASH=m +CONFIG_BLK_DEV_3W_XXXX_RAID=m +CONFIG_SCSI_HPSA=m +CONFIG_SCSI_3W_9XXX=m +CONFIG_SCSI_3W_SAS=m +CONFIG_SCSI_ACARD=m +CONFIG_SCSI_AACRAID=m +CONFIG_SCSI_AIC7XXX=m +CONFIG_AIC7XXX_CMDS_PER_DEVICE=32 +CONFIG_AIC7XXX_RESET_DELAY_MS=5000 +CONFIG_AIC7XXX_DEBUG_ENABLE=y +CONFIG_AIC7XXX_DEBUG_MASK=0 +CONFIG_AIC7XXX_REG_PRETTY_PRINT=y +CONFIG_SCSI_AIC79XX=m +CONFIG_AIC79XX_CMDS_PER_DEVICE=32 +CONFIG_AIC79XX_RESET_DELAY_MS=5000 +CONFIG_AIC79XX_DEBUG_ENABLE=y +CONFIG_AIC79XX_DEBUG_MASK=0 +CONFIG_AIC79XX_REG_PRETTY_PRINT=y +CONFIG_SCSI_AIC94XX=y +CONFIG_AIC94XX_DEBUG=y +CONFIG_SCSI_MVSAS=y +CONFIG_SCSI_MVSAS_DEBUG=y +# CONFIG_SCSI_MVSAS_TASKLET is not set +CONFIG_SCSI_MVUMI=m +CONFIG_SCSI_ADVANSYS=m +CONFIG_SCSI_ARCMSR=m +CONFIG_SCSI_ESAS2R=m +# CONFIG_MEGARAID_NEWGEN is not set +CONFIG_MEGARAID_LEGACY=m +CONFIG_MEGARAID_SAS=m +CONFIG_SCSI_MPT3SAS=m +CONFIG_SCSI_MPT2SAS_MAX_SGE=128 +CONFIG_SCSI_MPT3SAS_MAX_SGE=128 +CONFIG_SCSI_MPT2SAS=m +CONFIG_SCSI_SMARTPQI=y +CONFIG_SCSI_UFSHCD=m +# CONFIG_SCSI_UFSHCD_PCI is not set +# CONFIG_SCSI_UFSHCD_PLATFORM is not set +CONFIG_SCSI_HPTIOP=m +CONFIG_LIBFC=m +# CONFIG_LIBFCOE is not set +CONFIG_SCSI_SNIC=m +# CONFIG_SCSI_SNIC_DEBUG_FS is not set +CONFIG_SCSI_DMX3191D=m +CONFIG_SCSI_EATA=m +# CONFIG_SCSI_EATA_TAGGED_QUEUE is not set +# CONFIG_SCSI_EATA_LINKED_COMMANDS is not set +CONFIG_SCSI_EATA_MAX_TAGS=16 +CONFIG_SCSI_FUTURE_DOMAIN=m +CONFIG_SCSI_GDTH=m +CONFIG_SCSI_IPS=y +CONFIG_SCSI_IBMVSCSI=y +CONFIG_SCSI_IBMVFC=m +CONFIG_SCSI_IBMVFC_TRACE=y +CONFIG_SCSI_INITIO=m +CONFIG_SCSI_INIA100=m +CONFIG_SCSI_STEX=m +CONFIG_SCSI_SYM53C8XX_2=m +CONFIG_SCSI_SYM53C8XX_DMA_ADDRESSING_MODE=1 +CONFIG_SCSI_SYM53C8XX_DEFAULT_TAGS=16 +CONFIG_SCSI_SYM53C8XX_MAX_TAGS=64 +CONFIG_SCSI_SYM53C8XX_MMIO=y +CONFIG_SCSI_IPR=y +CONFIG_SCSI_IPR_TRACE=y +CONFIG_SCSI_IPR_DUMP=y +CONFIG_SCSI_QLOGIC_1280=m +CONFIG_SCSI_QLA_FC=m +CONFIG_SCSI_QLA_ISCSI=m +CONFIG_SCSI_LPFC=m +# CONFIG_SCSI_LPFC_DEBUG_FS is not set +CONFIG_SCSI_DC395x=m +CONFIG_SCSI_AM53C974=m +CONFIG_SCSI_WD719X=m +# CONFIG_SCSI_DEBUG is not set +CONFIG_SCSI_PMCRAID=m +CONFIG_SCSI_PM8001=m +CONFIG_SCSI_BFA_FC=m +CONFIG_SCSI_VIRTIO=y +CONFIG_SCSI_CHELSIO_FCOE=m +# CONFIG_SCSI_DH is not set +# CONFIG_SCSI_OSD_INITIATOR is not set +CONFIG_ATA=y +# CONFIG_ATA_NONSTANDARD is not set +CONFIG_ATA_VERBOSE_ERROR=y +CONFIG_SATA_PMP=y + +# +# Controllers with non-SFF native interface +# +CONFIG_SATA_AHCI=y +CONFIG_SATA_AHCI_PLATFORM=y +# CONFIG_AHCI_CEVA is not set +# CONFIG_AHCI_QORIQ 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 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=y +# 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 is not set +# 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 is not set +# 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 is not set +# 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_PLATFORM is not set +# CONFIG_PATA_RZ1000 is not set + +# +# Generic fallback / legacy drivers +# +CONFIG_ATA_GENERIC=y +# CONFIG_PATA_LEGACY is not set +CONFIG_MD=y +CONFIG_BLK_DEV_MD=y +CONFIG_MD_AUTODETECT=y +CONFIG_MD_LINEAR=y +CONFIG_MD_RAID0=y +CONFIG_MD_RAID1=y +CONFIG_MD_RAID10=m +# CONFIG_MD_RAID456 is not set +CONFIG_MD_MULTIPATH=m +CONFIG_MD_FAULTY=m +# CONFIG_BCACHE is not set +CONFIG_BLK_DEV_DM_BUILTIN=y +CONFIG_BLK_DEV_DM=y +CONFIG_DM_MQ_DEFAULT=y +# CONFIG_DM_DEBUG is not set +CONFIG_DM_BUFIO=m +# CONFIG_DM_DEBUG_BLOCK_MANAGER_LOCKING is not set +CONFIG_DM_CRYPT=m +CONFIG_DM_SNAPSHOT=m +# CONFIG_DM_THIN_PROVISIONING is not set +# CONFIG_DM_CACHE is not set +# CONFIG_DM_ERA is not set +CONFIG_DM_MIRROR=m +# CONFIG_DM_LOG_USERSPACE is not set +# CONFIG_DM_RAID is not set +CONFIG_DM_ZERO=m +# CONFIG_DM_MULTIPATH is not set +# CONFIG_DM_DELAY 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 +CONFIG_MACINTOSH_DRIVERS=y +CONFIG_MAC_EMUMOUSEBTN=m +CONFIG_WINDFARM=m +CONFIG_NETDEVICES=y +CONFIG_MII=m +CONFIG_NET_CORE=y +CONFIG_BONDING=m +CONFIG_DUMMY=m +# CONFIG_EQUALIZER is not set +# CONFIG_NET_FC is not set +# CONFIG_NET_TEAM is not set +CONFIG_MACVLAN=m +# CONFIG_MACVTAP is not set +# CONFIG_VXLAN is not set +# CONFIG_MACSEC is not set +# CONFIG_NETCONSOLE is not set +# CONFIG_NETPOLL is not set +# CONFIG_NET_POLL_CONTROLLER is not set +CONFIG_TUN=m +# CONFIG_TUN_VNET_CROSS_LE is not set +CONFIG_VETH=m +CONFIG_VIRTIO_NET=m +# CONFIG_NLMON is not set +CONFIG_SUNGEM_PHY=m +# CONFIG_ARCNET is not set + +# +# CAIF transport drivers +# + +# +# Distributed Switch Architecture drivers +# +CONFIG_ETHERNET=y +CONFIG_NET_VENDOR_3COM=y +# 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=m +CONFIG_ACENIC_OMIT_TIGON_I=y +# CONFIG_ALTERA_TSE is not set +CONFIG_NET_VENDOR_AMAZON=y +CONFIG_NET_VENDOR_AMD=y +# CONFIG_AMD8111_ETH is not set +# CONFIG_PCNET32 is not set +# CONFIG_AMD_XGBE_HAVE_ECC is not set +CONFIG_NET_VENDOR_AQUANTIA=y +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 is not set +CONFIG_NET_CADENCE=y +# CONFIG_MACB 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=m +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_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_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_DNET is not set +CONFIG_NET_VENDOR_DEC=y +CONFIG_NET_TULIP=y +# CONFIG_DE2104X is not set +CONFIG_TULIP=m +# CONFIG_TULIP_MWI is not set +# CONFIG_TULIP_MMIO is not set +# CONFIG_TULIP_NAPI 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_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_EZCHIP_NPS_MANAGEMENT_ENET is not set +CONFIG_NET_VENDOR_EXAR=y +# CONFIG_S2IO is not set +# CONFIG_VXGE is not set +CONFIG_NET_VENDOR_HP=y +# CONFIG_HP100 is not set +CONFIG_NET_VENDOR_HUAWEI=y +CONFIG_NET_VENDOR_IBM=y +CONFIG_IBMVETH=m +# CONFIG_IBM_EMAC_ZMII is not set +# CONFIG_IBM_EMAC_RGMII is not set +# CONFIG_IBM_EMAC_TAH is not set +# CONFIG_IBM_EMAC_EMAC4 is not set +# CONFIG_IBM_EMAC_NO_FLOW_CTRL is not set +# CONFIG_IBM_EMAC_MAL_CLR_ICINTSTAT is not set +# CONFIG_IBM_EMAC_MAL_COMMON_ERR is not set +# CONFIG_EHEA is not set +CONFIG_IBMVNIC=m +CONFIG_NET_VENDOR_INTEL=y +# CONFIG_E100 is not set +CONFIG_E1000=m +CONFIG_E1000E=m +CONFIG_IGB=m +CONFIG_IGB_HWMON=y +# CONFIG_IGBVF is not set +CONFIG_IXGB=m +# CONFIG_IXGBE is not set +# CONFIG_IXGBEVF is not set +# CONFIG_I40E is not set +# CONFIG_I40EVF is not set +# CONFIG_FM10K is not set +CONFIG_NET_VENDOR_I825XX=y +# CONFIG_JME is not set +CONFIG_NET_VENDOR_MARVELL=y +# CONFIG_MVMDIO is not set +# CONFIG_SKGE is not set +# CONFIG_SKY2 is not set +CONFIG_NET_VENDOR_MELLANOX=y +# CONFIG_MLX4_EN is not set +# CONFIG_MLX4_CORE 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_KS8851_MLL is not set +# CONFIG_KSZ884X_PCI is not set +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_NETRONOME=y +# CONFIG_NFP is not set +CONFIG_NET_VENDOR_8390=y +# CONFIG_NE2K_PCI is not set +CONFIG_NET_VENDOR_NVIDIA=y +# CONFIG_FORCEDETH is not set +CONFIG_NET_VENDOR_OKI=y +# CONFIG_ETHOC is not set +CONFIG_NET_PACKET_ENGINE=y +# CONFIG_HAMACHI is not set +# CONFIG_YELLOWFIN is not set +CONFIG_NET_VENDOR_QLOGIC=y +# CONFIG_QLA3XXX is not set +# CONFIG_QLCNIC is not set +# CONFIG_QLGE 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_REALTEK=y +# CONFIG_8139CP is not set +# CONFIG_8139TOO is not set +# CONFIG_R8169 is not set +CONFIG_NET_VENDOR_RENESAS=y +CONFIG_NET_VENDOR_RDC=y +# CONFIG_R6040 is not set +CONFIG_NET_VENDOR_ROCKER=y +CONFIG_NET_VENDOR_SAMSUNG=y +# CONFIG_SXGBE_ETH is not set +CONFIG_NET_VENDOR_SEEQ=y +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_SOLARFLARE=y +# CONFIG_SFC is not set +# CONFIG_SFC_FALCON is not set +CONFIG_NET_VENDOR_SMSC=y +# CONFIG_EPIC100 is not set +# CONFIG_SMSC911X is not set +# CONFIG_SMSC9420 is not set +CONFIG_NET_VENDOR_STMICRO=y +# CONFIG_STMMAC_ETH is not set +CONFIG_NET_VENDOR_SUN=y +# CONFIG_HAPPYMEAL is not set +CONFIG_SUNGEM=m +# CONFIG_CASSINI is not set +# CONFIG_NIU is not set +CONFIG_NET_VENDOR_TEHUTI=y +# CONFIG_TEHUTI is not set +CONFIG_NET_VENDOR_TI=y +# CONFIG_TI_CPSW_ALE 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_NET_VENDOR_SYNOPSYS=y +# CONFIG_DWC_XLGMAC is not set +# CONFIG_FDDI is not set +# CONFIG_HIPPI is not set +CONFIG_MDIO_DEVICE=y +CONFIG_MDIO_BUS=y +# CONFIG_MDIO_BCM_UNIMAC is not set +# CONFIG_MDIO_BITBANG is not set +# CONFIG_MDIO_BUS_MUX_MMIOREG is not set +# CONFIG_MDIO_HISI_FEMAC is not set +# CONFIG_MDIO_OCTEON is not set +# CONFIG_MDIO_THUNDER is not set +CONFIG_PHYLIB=y +CONFIG_SWPHY=y +# CONFIG_LED_TRIGGER_PHY is not set + +# +# MII PHY device drivers +# +# CONFIG_AMD_PHY is not set +# CONFIG_AQUANTIA_PHY is not set +# CONFIG_AT803X_PHY is not set +# CONFIG_BCM7XXX_PHY is not set +# CONFIG_BCM87XX_PHY is not set +# CONFIG_BROADCOM_PHY is not set +# CONFIG_CICADA_PHY is not set +# CONFIG_CORTINA_PHY is not set +# CONFIG_DAVICOM_PHY is not set +# CONFIG_DP83848_PHY is not set +# CONFIG_DP83867_PHY is not set +CONFIG_FIXED_PHY=y +# CONFIG_ICPLUS_PHY is not set +# CONFIG_INTEL_XWAY_PHY is not set +# CONFIG_LSI_ET1011C_PHY is not set +# CONFIG_LXT_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_MICROSEMI_PHY is not set +# CONFIG_NATIONAL_PHY is not set +# CONFIG_QSEMI_PHY is not set +# CONFIG_REALTEK_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_VITESSE_PHY is not set +# CONFIG_XILINX_GMII2RGMII is not set +CONFIG_PPP=m +CONFIG_PPP_BSDCOMP=m +CONFIG_PPP_DEFLATE=m +# CONFIG_PPP_FILTER is not set +# CONFIG_PPP_MPPE is not set +# CONFIG_PPP_MULTILINK is not set +CONFIG_PPPOE=m +CONFIG_PPP_ASYNC=m +CONFIG_PPP_SYNC_TTY=m +# CONFIG_SLIP is not set +CONFIG_SLHC=m +CONFIG_USB_NET_DRIVERS=y +CONFIG_USB_CATC=m +CONFIG_USB_KAWETH=m +CONFIG_USB_PEGASUS=m +CONFIG_USB_RTL8150=m +# CONFIG_USB_RTL8152 is not set +# CONFIG_USB_LAN78XX is not set +CONFIG_USB_USBNET=m +# CONFIG_USB_NET_AX8817X is not set +CONFIG_USB_NET_AX88179_178A=m +CONFIG_USB_NET_CDCETHER=m +# CONFIG_USB_NET_CDC_EEM is not set +CONFIG_USB_NET_CDC_NCM=m +# CONFIG_USB_NET_HUAWEI_CDC_NCM is not set +# CONFIG_USB_NET_CDC_MBIM is not set +# CONFIG_USB_NET_DM9601 is not set +# CONFIG_USB_NET_SR9700 is not set +# CONFIG_USB_NET_SR9800 is not set +# CONFIG_USB_NET_SMSC75XX is not set +# CONFIG_USB_NET_SMSC95XX is not set +# CONFIG_USB_NET_GL620A is not set +# CONFIG_USB_NET_NET1080 is not set +# CONFIG_USB_NET_PLUSB is not set +# CONFIG_USB_NET_MCS7830 is not set +# CONFIG_USB_NET_RNDIS_HOST is not set +# CONFIG_USB_NET_CDC_SUBSET is not set +# CONFIG_USB_NET_ZAURUS is not set +# CONFIG_USB_NET_CX82310_ETH is not set +# CONFIG_USB_NET_KALMIA is not set +# CONFIG_USB_NET_QMI_WWAN is not set +# CONFIG_USB_NET_INT51X1 is not set +# CONFIG_USB_IPHETH is not set +# CONFIG_USB_SIERRA_NET is not set +# CONFIG_USB_VL600 is not set +# CONFIG_USB_NET_CH9200 is not set +CONFIG_WLAN=y +CONFIG_WLAN_VENDOR_ADMTEK=y +# CONFIG_ADM8211 is not set +CONFIG_ATH_COMMON=m +CONFIG_WLAN_VENDOR_ATH=y +# CONFIG_ATH_DEBUG is not set +CONFIG_ATH5K=m +# CONFIG_ATH5K_DEBUG is not set +# CONFIG_ATH5K_TRACER is not set +CONFIG_ATH5K_PCI=y +CONFIG_ATH9K_HW=m +CONFIG_ATH9K_COMMON=m +CONFIG_ATH9K_BTCOEX_SUPPORT=y +CONFIG_ATH9K=m +CONFIG_ATH9K_PCI=y +# CONFIG_ATH9K_AHB is not set +# CONFIG_ATH9K_DEBUGFS is not set +# CONFIG_ATH9K_DYNACK is not set +CONFIG_ATH9K_WOW=y +# CONFIG_ATH9K_CHANNEL_CONTEXT is not set +CONFIG_ATH9K_PCOEM=y +CONFIG_ATH9K_HTC=m +# CONFIG_ATH9K_HTC_DEBUGFS is not set +CONFIG_CARL9170=m +CONFIG_CARL9170_LEDS=y +CONFIG_CARL9170_WPC=y +CONFIG_ATH6KL=m +# CONFIG_ATH6KL_SDIO is not set +CONFIG_ATH6KL_USB=m +# CONFIG_ATH6KL_DEBUG is not set +# CONFIG_ATH6KL_TRACING is not set +CONFIG_AR5523=m +# 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=m +CONFIG_B43_BCMA=y +CONFIG_B43_SSB=y +CONFIG_B43_BUSES_BCMA_AND_SSB=y +# CONFIG_B43_BUSES_BCMA is not set +# CONFIG_B43_BUSES_SSB is not set +CONFIG_B43_PCI_AUTOSELECT=y +CONFIG_B43_PCICORE_AUTOSELECT=y +# CONFIG_B43_SDIO is not set +CONFIG_B43_BCMA_PIO=y +CONFIG_B43_PIO=y +CONFIG_B43_PHY_G=y +CONFIG_B43_PHY_N=y +CONFIG_B43_PHY_LP=y +CONFIG_B43_PHY_HT=y +CONFIG_B43_LEDS=y +# CONFIG_B43_DEBUG 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_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=m +CONFIG_WLAN_VENDOR_MEDIATEK=y +# CONFIG_MT7601U is not set +CONFIG_WLAN_VENDOR_RALINK=y +# CONFIG_RT2X00 is not set +CONFIG_WLAN_VENDOR_REALTEK=y +CONFIG_RTL8180=m +CONFIG_RTL8187=m +CONFIG_RTL8187_LEDS=y +CONFIG_RTL_CARDS=m +CONFIG_RTL8192CE=m +CONFIG_RTL8192SE=m +CONFIG_RTL8192DE=m +CONFIG_RTL8723AE=m +CONFIG_RTL8723BE=m +CONFIG_RTL8188EE=m +CONFIG_RTL8192EE=m +CONFIG_RTL8821AE=m +CONFIG_RTL8192CU=m +CONFIG_RTLWIFI=m +CONFIG_RTLWIFI_PCI=m +CONFIG_RTLWIFI_USB=m +CONFIG_RTLWIFI_DEBUG=y +CONFIG_RTL8192C_COMMON=m +CONFIG_RTL8723_COMMON=m +CONFIG_RTLBTCOEXIST=m +CONFIG_RTL8XXXU=m +# CONFIG_RTL8XXXU_UNTESTED 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_PEARL_PCIE is not set +# CONFIG_MAC80211_HWSIM is not set +# CONFIG_USB_NET_RNDIS_WLAN is not set + +# +# Enable WiMAX (Networking options) to see the WiMAX drivers +# +# CONFIG_WAN 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 is not set +# CONFIG_INPUT_SPARSEKMAP is not set +# CONFIG_INPUT_MATRIXKMAP is not set + +# +# Userland interfaces +# +# CONFIG_INPUT_MOUSEDEV is not set +CONFIG_INPUT_JOYDEV=m +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 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_STOWAWAY is not set +# CONFIG_KEYBOARD_SUNKBD is not set +# CONFIG_KEYBOARD_OMAP4 is not set +# CONFIG_KEYBOARD_TM2_TOUCHKEY is not set +# CONFIG_KEYBOARD_XTKBD is not set +# CONFIG_KEYBOARD_CAP11XX is not set +CONFIG_INPUT_MOUSE=y +# CONFIG_MOUSE_PS2 is not set +# 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 is not set +# CONFIG_INPUT_TABLET is not set +# CONFIG_INPUT_TOUCHSCREEN is not set +# CONFIG_INPUT_MISC 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 is not set +# CONFIG_SERIO_SERPORT is not set +# CONFIG_SERIO_PCIPS2 is not set +# CONFIG_SERIO_LIBPS2 is not set +# CONFIG_SERIO_RAW is not set +# CONFIG_SERIO_XILINX_XPS_PS2 is not set +# CONFIG_SERIO_ALTERA_PS2 is not set +# CONFIG_SERIO_PS2MULT is not set +# CONFIG_SERIO_ARC_PS2 is not set +# CONFIG_SERIO_APBPS2 is not set +# CONFIG_USERIO is not set +# CONFIG_GAMEPORT is not set + +# +# 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=y +CONFIG_LEGACY_PTY_COUNT=256 +# CONFIG_SERIAL_NONSTANDARD is not set +# CONFIG_NOZOMI is not set +# CONFIG_N_GSM is not set +# CONFIG_TRACE_SINK is not set +# CONFIG_PPC_EPAPR_HV_BYTECHAN is not set +CONFIG_DEVMEM=y +# CONFIG_DEVKMEM is not set + +# +# Serial drivers +# +# CONFIG_SERIAL_8250 is not set + +# +# Non-8250 serial port support +# +# CONFIG_SERIAL_UARTLITE is not set +# CONFIG_SERIAL_ICOM is not set +# CONFIG_SERIAL_JSM 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_XILINX_PS_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_CONEXANT_DIGICOLOR is not set +# CONFIG_SERIAL_DEV_BUS is not set +CONFIG_HVC_DRIVER=y +CONFIG_HVC_IRQ=y +CONFIG_HVC_CONSOLE=y +# CONFIG_HVC_OLD_HVSI is not set +CONFIG_HVC_OPAL=y +CONFIG_HVC_RTAS=y +# CONFIG_HVC_UDBG is not set +CONFIG_HVCS=m +# CONFIG_VIRTIO_CONSOLE is not set +# CONFIG_IBM_BSR is not set +CONFIG_POWERNV_OP_PANEL=m +CONFIG_IPMI_HANDLER=m +# CONFIG_IPMI_PANIC_EVENT is not set +# CONFIG_IPMI_DEVICE_INTERFACE is not set +# CONFIG_IPMI_SI is not set +# CONFIG_IPMI_SSIF is not set +CONFIG_IPMI_POWERNV=m +# CONFIG_IPMI_WATCHDOG is not set +# CONFIG_IPMI_POWEROFF is not set +# CONFIG_HW_RANDOM is not set +# CONFIG_R3964 is not set +# CONFIG_APPLICOM is not set +CONFIG_RAW_DRIVER=y +CONFIG_MAX_RAW_DEVS=256 +# CONFIG_HANGCHECK_TIMER is not set +# CONFIG_TCG_TPM is not set +CONFIG_DEVPORT=y +# CONFIG_XILLYBUS is not set + +# +# I2C support +# +CONFIG_I2C=y +CONFIG_I2C_BOARDINFO=y +CONFIG_I2C_COMPAT=y +CONFIG_I2C_CHARDEV=y +CONFIG_I2C_MUX=m + +# +# Multiplexer I2C Chip support +# +# CONFIG_I2C_MUX_GPMUX is not set +# CONFIG_I2C_MUX_LTC4306 is not set +# CONFIG_I2C_MUX_PCA9541 is not set +# CONFIG_I2C_MUX_REG is not set +# CONFIG_I2C_MUX_MLXCPLD is not set +CONFIG_I2C_HELPER_AUTO=y +CONFIG_I2C_ALGOBIT=m + +# +# 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_I801 is not set +# CONFIG_I2C_ISCH is not set +# CONFIG_I2C_PIIX4 is not set +# CONFIG_I2C_NFORCE2 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 + +# +# 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_MPC is not set +# CONFIG_I2C_OCORES is not set +# CONFIG_I2C_PCA_PLATFORM is not set +# CONFIG_I2C_PXA_PCI 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_PARPORT_LIGHT 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_OPAL=y +# 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 +# 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_GPIOLIB is not set +# CONFIG_W1 is not set +# CONFIG_POWER_AVS is not set +# CONFIG_POWER_RESET is not set +CONFIG_POWER_SUPPLY=y +# CONFIG_POWER_SUPPLY_DEBUG is not set +# CONFIG_PDA_POWER is not set +# CONFIG_TEST_POWER 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_DETECTOR_MAX14656 is not set +# CONFIG_CHARGER_BQ2415X is not set +# CONFIG_CHARGER_SMB347 is not set +# CONFIG_BATTERY_GAUGE_LTC2941 is not set +CONFIG_HWMON=y +# CONFIG_HWMON_VID is not set +# CONFIG_HWMON_DEBUG_CHIP is not set + +# +# Native drivers +# +# 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_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_ASC7621 is not set +# CONFIG_SENSORS_ASPEED is not set +# CONFIG_SENSORS_ATXP1 is not set +# CONFIG_SENSORS_DS620 is not set +# CONFIG_SENSORS_DS1621 is not set +# CONFIG_SENSORS_I5K_AMB is not set +# CONFIG_SENSORS_F75375S 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_IBMAEM is not set +# CONFIG_SENSORS_IBMPEX is not set +CONFIG_SENSORS_IBMPOWERNV=y +# 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_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_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_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_NTC_THERMISTOR is not set +# CONFIG_SENSORS_NCT7802 is not set +# CONFIG_SENSORS_NCT7904 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_EMC1403 is not set +# CONFIG_SENSORS_EMC2103 is not set +# CONFIG_SENSORS_EMC6W201 is not set +# CONFIG_SENSORS_SMSC47M192 is not set +# CONFIG_SENSORS_SCH56XX_COMMON is not set +# CONFIG_SENSORS_STTS751 is not set +# CONFIG_SENSORS_SMM665 is not set +# CONFIG_SENSORS_ADC128D818 is not set +# CONFIG_SENSORS_ADS1015 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_VIA686A is not set +# CONFIG_SENSORS_VT8231 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_THERMAL is not set +# CONFIG_WATCHDOG is not set +CONFIG_SSB_POSSIBLE=y + +# +# Sonics Silicon Backplane +# +CONFIG_SSB=m +CONFIG_SSB_SPROM=y +CONFIG_SSB_BLOCKIO=y +CONFIG_SSB_PCIHOST_POSSIBLE=y +CONFIG_SSB_PCIHOST=y +CONFIG_SSB_B43_PCI_BRIDGE=y +CONFIG_SSB_SDIOHOST_POSSIBLE=y +# CONFIG_SSB_SDIOHOST is not set +# CONFIG_SSB_DEBUG is not set +CONFIG_SSB_DRIVER_PCICORE_POSSIBLE=y +CONFIG_SSB_DRIVER_PCICORE=y +CONFIG_BCMA_POSSIBLE=y +CONFIG_BCMA=m +CONFIG_BCMA_BLOCKIO=y +CONFIG_BCMA_HOST_PCI_POSSIBLE=y +CONFIG_BCMA_HOST_PCI=y +# CONFIG_BCMA_HOST_SOC is not set +CONFIG_BCMA_DRIVER_PCI=y +# CONFIG_BCMA_DRIVER_GMAC_CMN is not set +# CONFIG_BCMA_DEBUG is not set + +# +# Multifunction device drivers +# +# CONFIG_MFD_CORE is not set +# CONFIG_MFD_ACT8945A is not set +# CONFIG_MFD_AS3711 is not set +# CONFIG_MFD_AS3722 is not set +# CONFIG_PMIC_ADP5520 is not set +# CONFIG_MFD_ATMEL_FLEXCOM is not set +# CONFIG_MFD_ATMEL_HLCDC is not set +# CONFIG_MFD_BCM590XX is not set +# CONFIG_MFD_BD9571MWV is not set +# CONFIG_MFD_AXP20X_I2C 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_HI6421_PMIC is not set +# CONFIG_HTC_PASIC3 is not set +# CONFIG_LPC_ICH is not set +# CONFIG_LPC_SCH 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_MAX77620 is not set +# CONFIG_MFD_MAX77686 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_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_RTSX_PCI is not set +# CONFIG_MFD_RT5033 is not set +# CONFIG_MFD_RTSX_USB is not set +# CONFIG_MFD_RC5T583 is not set +# CONFIG_MFD_RK808 is not set +# CONFIG_MFD_RN5T618 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_MFD_SMSC is not set +# CONFIG_ABX500_CORE is not set +# CONFIG_MFD_STMPE 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_TPS65217 is not set +# CONFIG_MFD_TI_LP873X is not set +# CONFIG_MFD_TI_LP87565 is not set +# CONFIG_MFD_TPS65218 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_TC3589X is not set +# CONFIG_MFD_TMIO 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 +# CONFIG_REGULATOR is not set +CONFIG_RC_CORE=y +CONFIG_RC_MAP=y +CONFIG_RC_DECODERS=y +# CONFIG_LIRC is not set +CONFIG_IR_NEC_DECODER=y +CONFIG_IR_RC5_DECODER=y +CONFIG_IR_RC6_DECODER=y +CONFIG_IR_JVC_DECODER=y +CONFIG_IR_SONY_DECODER=y +CONFIG_IR_SANYO_DECODER=y +CONFIG_IR_SHARP_DECODER=y +CONFIG_IR_MCE_KBD_DECODER=y +CONFIG_IR_XMP_DECODER=y +# CONFIG_RC_DEVICES is not set +CONFIG_MEDIA_SUPPORT=m + +# +# Multimedia core support +# +# CONFIG_MEDIA_CAMERA_SUPPORT is not set +CONFIG_MEDIA_ANALOG_TV_SUPPORT=y +CONFIG_MEDIA_DIGITAL_TV_SUPPORT=y +CONFIG_MEDIA_RADIO_SUPPORT=y +# CONFIG_MEDIA_SDR_SUPPORT is not set +# CONFIG_MEDIA_CEC_SUPPORT is not set +# CONFIG_MEDIA_CONTROLLER is not set +CONFIG_VIDEO_DEV=m +CONFIG_VIDEO_V4L2=m +# CONFIG_VIDEO_ADV_DEBUG is not set +# CONFIG_VIDEO_FIXED_MINOR_RANGES is not set +CONFIG_VIDEO_TUNER=m +CONFIG_VIDEOBUF_GEN=m +CONFIG_VIDEOBUF_DMA_SG=m +CONFIG_VIDEOBUF_VMALLOC=m +CONFIG_VIDEOBUF_DVB=m +CONFIG_VIDEOBUF2_CORE=m +CONFIG_VIDEOBUF2_MEMOPS=m +CONFIG_VIDEOBUF2_DMA_SG=m +CONFIG_VIDEOBUF2_DVB=m +CONFIG_DVB_CORE=m +CONFIG_DVB_NET=y +# CONFIG_TTPCI_EEPROM is not set +CONFIG_DVB_MAX_ADAPTERS=16 +# CONFIG_DVB_DYNAMIC_MINORS is not set +# CONFIG_DVB_DEMUX_SECTION_LOSS_LOG is not set + +# +# Media drivers +# +CONFIG_MEDIA_USB_SUPPORT=y + +# +# Analog TV USB devices +# +CONFIG_VIDEO_PVRUSB2=m +CONFIG_VIDEO_PVRUSB2_SYSFS=y +CONFIG_VIDEO_PVRUSB2_DVB=y +# CONFIG_VIDEO_PVRUSB2_DEBUGIFC is not set +CONFIG_VIDEO_HDPVR=m +# CONFIG_VIDEO_USBVISION is not set +# CONFIG_VIDEO_STK1160_COMMON is not set +# CONFIG_VIDEO_GO7007 is not set + +# +# Analog/digital TV USB devices +# +# CONFIG_VIDEO_AU0828 is not set +CONFIG_VIDEO_CX231XX=m +CONFIG_VIDEO_CX231XX_RC=y +CONFIG_VIDEO_CX231XX_ALSA=m +CONFIG_VIDEO_CX231XX_DVB=m +# CONFIG_VIDEO_TM6000 is not set + +# +# Digital TV USB devices +# +# CONFIG_DVB_USB is not set +# CONFIG_DVB_USB_V2 is not set +# CONFIG_DVB_TTUSB_BUDGET is not set +# CONFIG_DVB_TTUSB_DEC is not set +# CONFIG_SMS_USB_DRV is not set +# CONFIG_DVB_B2C2_FLEXCOP_USB is not set +# CONFIG_DVB_AS102 is not set + +# +# Webcam, TV (analog/digital) USB devices +# +# CONFIG_VIDEO_EM28XX is not set +CONFIG_MEDIA_PCI_SUPPORT=y + +# +# Media capture/analog TV support +# +CONFIG_VIDEO_IVTV=m +# CONFIG_VIDEO_IVTV_DEPRECATED_IOCTLS is not set +CONFIG_VIDEO_IVTV_ALSA=m +# CONFIG_VIDEO_FB_IVTV is not set +# CONFIG_VIDEO_HEXIUM_GEMINI is not set +# CONFIG_VIDEO_HEXIUM_ORION is not set +# CONFIG_VIDEO_MXB is not set +# CONFIG_VIDEO_DT3155 is not set + +# +# Media capture/analog/hybrid TV support +# +CONFIG_VIDEO_CX18=m +CONFIG_VIDEO_CX18_ALSA=m +CONFIG_VIDEO_CX23885=m +# CONFIG_MEDIA_ALTERA_CI is not set +CONFIG_VIDEO_CX25821=m +CONFIG_VIDEO_CX25821_ALSA=m +CONFIG_VIDEO_CX88=m +CONFIG_VIDEO_CX88_ALSA=m +CONFIG_VIDEO_CX88_BLACKBIRD=m +CONFIG_VIDEO_CX88_DVB=m +CONFIG_VIDEO_CX88_ENABLE_VP3054=y +CONFIG_VIDEO_CX88_VP3054=m +CONFIG_VIDEO_CX88_MPEG=m +CONFIG_VIDEO_BT848=m +CONFIG_DVB_BT8XX=m +# CONFIG_VIDEO_SAA7134 is not set +# CONFIG_VIDEO_SAA7164 is not set + +# +# Media digital TV PCI Adapters +# +# CONFIG_DVB_AV7110 is not set +# CONFIG_DVB_BUDGET_CORE is not set +# CONFIG_DVB_B2C2_FLEXCOP_PCI is not set +# CONFIG_DVB_PLUTO2 is not set +# CONFIG_DVB_DM1105 is not set +# CONFIG_DVB_PT1 is not set +# CONFIG_DVB_PT3 is not set +# CONFIG_MANTIS_CORE is not set +# CONFIG_DVB_NGENE is not set +# CONFIG_DVB_DDBRIDGE is not set +# CONFIG_DVB_SMIPCIE is not set +# CONFIG_DVB_PLATFORM_DRIVERS is not set + +# +# Supported MMC/SDIO adapters +# +# CONFIG_SMS_SDIO_DRV is not set +CONFIG_RADIO_ADAPTERS=y +CONFIG_RADIO_TEA575X=m +# CONFIG_RADIO_SI470X is not set +# CONFIG_RADIO_SI4713 is not set +# CONFIG_USB_MR800 is not set +# CONFIG_USB_DSBR is not set +# CONFIG_RADIO_MAXIRADIO is not set +# CONFIG_RADIO_SHARK is not set +# CONFIG_RADIO_SHARK2 is not set +# CONFIG_USB_KEENE is not set +# CONFIG_USB_RAREMONO is not set +# CONFIG_USB_MA901 is not set +# CONFIG_RADIO_TEA5764 is not set +# CONFIG_RADIO_SAA7706H is not set +# CONFIG_RADIO_TEF6862 is not set +# CONFIG_RADIO_WL1273 is not set + +# +# Texas Instruments WL128x FM driver (ST based) +# +CONFIG_VIDEO_CX2341X=m +CONFIG_VIDEO_TVEEPROM=m +# CONFIG_CYPRESS_FIRMWARE is not set + +# +# Media ancillary drivers (tuners, sensors, i2c, spi, frontends) +# +CONFIG_MEDIA_SUBDRV_AUTOSELECT=y +CONFIG_MEDIA_ATTACH=y +CONFIG_VIDEO_IR_I2C=m + +# +# Audio decoders, processors and mixers +# +CONFIG_VIDEO_TVAUDIO=m +CONFIG_VIDEO_TDA7432=m +CONFIG_VIDEO_MSP3400=m +CONFIG_VIDEO_CS3308=m +CONFIG_VIDEO_CS5345=m +CONFIG_VIDEO_CS53L32A=m +CONFIG_VIDEO_WM8775=m +CONFIG_VIDEO_WM8739=m +CONFIG_VIDEO_VP27SMPX=m + +# +# RDS decoders +# +CONFIG_VIDEO_SAA6588=m + +# +# Video decoders +# +CONFIG_VIDEO_SAA711X=m + +# +# Video and audio decoders +# +CONFIG_VIDEO_SAA717X=m +CONFIG_VIDEO_CX25840=m + +# +# Video encoders +# +CONFIG_VIDEO_SAA7127=m + +# +# Camera sensor devices +# + +# +# Flash devices +# + +# +# Video improvement chips +# +CONFIG_VIDEO_UPD64031A=m +CONFIG_VIDEO_UPD64083=m + +# +# Audio/Video compression chips +# + +# +# SDR tuner chips +# + +# +# Miscellaneous helper chips +# +CONFIG_VIDEO_M52790=m + +# +# Sensors used on soc_camera driver +# +CONFIG_MEDIA_TUNER=m +CONFIG_MEDIA_TUNER_SIMPLE=m +CONFIG_MEDIA_TUNER_TDA8290=m +CONFIG_MEDIA_TUNER_TDA827X=m +CONFIG_MEDIA_TUNER_TDA18271=m +CONFIG_MEDIA_TUNER_TDA9887=m +CONFIG_MEDIA_TUNER_TEA5761=m +CONFIG_MEDIA_TUNER_TEA5767=m +CONFIG_MEDIA_TUNER_MT20XX=m +CONFIG_MEDIA_TUNER_MT2063=m +CONFIG_MEDIA_TUNER_MT2131=m +CONFIG_MEDIA_TUNER_XC2028=m +CONFIG_MEDIA_TUNER_XC5000=m +CONFIG_MEDIA_TUNER_XC4000=m +CONFIG_MEDIA_TUNER_MXL5005S=m +CONFIG_MEDIA_TUNER_MC44S803=m +CONFIG_MEDIA_TUNER_M88RS6000T=m +CONFIG_MEDIA_TUNER_SI2157=m +CONFIG_MEDIA_TUNER_R820T=m + +# +# Multistandard (satellite) frontends +# +CONFIG_DVB_STB6100=m +CONFIG_DVB_STV090x=m +CONFIG_DVB_M88DS3103=m + +# +# Multistandard (cable + terrestrial) frontends +# +CONFIG_DVB_DRXK=m +CONFIG_DVB_TDA18271C2DD=m +CONFIG_DVB_SI2165=m +CONFIG_DVB_MN88473=m + +# +# DVB-S (satellite) frontends +# +CONFIG_DVB_CX24110=m +CONFIG_DVB_CX24123=m +CONFIG_DVB_STV0288=m +CONFIG_DVB_STB6000=m +CONFIG_DVB_STV0299=m +CONFIG_DVB_STV6110=m +CONFIG_DVB_STV0900=m +CONFIG_DVB_CX24116=m +CONFIG_DVB_CX24117=m +CONFIG_DVB_TS2020=m +CONFIG_DVB_DS3000=m +CONFIG_DVB_TDA10071=m + +# +# DVB-T (terrestrial) frontends +# +CONFIG_DVB_SP887X=m +CONFIG_DVB_CX22702=m +CONFIG_DVB_NXT6000=m +CONFIG_DVB_MT352=m +CONFIG_DVB_ZL10353=m +CONFIG_DVB_DIB7000P=m +CONFIG_DVB_TDA10048=m +CONFIG_DVB_STV0367=m +CONFIG_DVB_SI2168=m +# CONFIG_DVB_AS102_FE is not set +# CONFIG_DVB_GP8PSK_FE is not set + +# +# DVB-C (cable) frontends +# + +# +# ATSC (North American/Korean Terrestrial/Cable DTV) frontends +# +CONFIG_DVB_NXT200X=m +CONFIG_DVB_OR51211=m +CONFIG_DVB_OR51132=m +CONFIG_DVB_LGDT330X=m +CONFIG_DVB_LGDT3305=m +CONFIG_DVB_LGDT3306A=m +CONFIG_DVB_S5H1409=m +CONFIG_DVB_S5H1411=m + +# +# ISDB-T (terrestrial) frontends +# +CONFIG_DVB_MB86A20S=m + +# +# ISDB-S (satellite) & ISDB-T (terrestrial) frontends +# + +# +# Digital terrestrial only tuners/PLL +# +CONFIG_DVB_PLL=m +CONFIG_DVB_TUNER_DIB0070=m + +# +# SEC control devices for DVB-S +# +CONFIG_DVB_LNBP21=m +CONFIG_DVB_ISL6421=m +CONFIG_DVB_A8293=m + +# +# Tools to develop new frontends +# +# CONFIG_DVB_DUMMY_FE is not set + +# +# Graphics support +# +CONFIG_AGP=m +CONFIG_VGA_ARB=y +CONFIG_VGA_ARB_MAX_GPUS=16 +CONFIG_DRM=m +# CONFIG_DRM_DP_AUX_CHARDEV is not set +# CONFIG_DRM_DEBUG_MM_SELFTEST is not set +CONFIG_DRM_KMS_HELPER=m +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_TTM=m +CONFIG_DRM_VM=y + +# +# I2C encoder or helper chips +# +CONFIG_DRM_I2C_CH7006=m +CONFIG_DRM_I2C_SIL164=m +# CONFIG_DRM_I2C_NXP_TDA998X is not set +CONFIG_DRM_RADEON=m +CONFIG_DRM_RADEON_USERPTR=y +CONFIG_DRM_AMDGPU=m +CONFIG_DRM_AMDGPU_SI=y +CONFIG_DRM_AMDGPU_CIK=y +CONFIG_DRM_AMDGPU_USERPTR=y +# CONFIG_DRM_AMDGPU_GART_DEBUGFS is not set + +# +# ACP (Audio CoProcessor) Configuration +# +# CONFIG_DRM_AMD_ACP is not set +CONFIG_DRM_NOUVEAU=m +CONFIG_NOUVEAU_DEBUG=5 +CONFIG_NOUVEAU_DEBUG_DEFAULT=3 +CONFIG_DRM_NOUVEAU_BACKLIGHT=y +# CONFIG_DRM_VGEM is not set +# CONFIG_DRM_UDL is not set +CONFIG_DRM_AST=m +CONFIG_DRM_MGAG200=m +CONFIG_DRM_CIRRUS_QEMU=m +# CONFIG_DRM_RCAR_DW_HDMI is not set +CONFIG_DRM_QXL=m +CONFIG_DRM_BOCHS=m +CONFIG_DRM_VIRTIO_GPU=m +CONFIG_DRM_PANEL=y + +# +# Display Panels +# +# CONFIG_DRM_PANEL_LVDS is not set +# CONFIG_DRM_PANEL_SIMPLE is not set +# CONFIG_DRM_PANEL_SAMSUNG_S6E8AA0 is not set +CONFIG_DRM_BRIDGE=y +CONFIG_DRM_PANEL_BRIDGE=y + +# +# Display Interface Bridges +# +# CONFIG_DRM_ANALOGIX_ANX78XX is not set +# CONFIG_DRM_DUMB_VGA_DAC is not set +# CONFIG_DRM_LVDS_ENCODER is not set +# CONFIG_DRM_MEGACHIPS_STDPXXXX_GE_B850V3_FW is not set +# CONFIG_DRM_NXP_PTN3460 is not set +# CONFIG_DRM_PARADE_PS8622 is not set +# CONFIG_DRM_SIL_SII8620 is not set +# CONFIG_DRM_SII902X is not set +# CONFIG_DRM_TOSHIBA_TC358767 is not set +# CONFIG_DRM_TI_TFP410 is not set +# CONFIG_DRM_I2C_ADV7511 is not set +# CONFIG_DRM_ARCPGU is not set +# CONFIG_DRM_HISI_HIBMC is not set +# CONFIG_DRM_TINYDRM is not set +# CONFIG_DRM_LEGACY is not set +# CONFIG_DRM_LIB_RANDOM is not set + +# +# Frame buffer Devices +# +CONFIG_FB=y +CONFIG_FIRMWARE_EDID=y +CONFIG_FB_CMDLINE=y +CONFIG_FB_NOTIFY=y +CONFIG_FB_DDC=m +# CONFIG_FB_BOOT_VESA_SUPPORT is not set +CONFIG_FB_CFB_FILLRECT=y +CONFIG_FB_CFB_COPYAREA=y +CONFIG_FB_CFB_IMAGEBLIT=y +# CONFIG_FB_CFB_REV_PIXELS_IN_BYTE is not set +CONFIG_FB_SYS_FILLRECT=m +CONFIG_FB_SYS_COPYAREA=m +CONFIG_FB_SYS_IMAGEBLIT=m +# CONFIG_FB_PROVIDE_GET_FB_UNMAPPED_AREA is not set +CONFIG_FB_FOREIGN_ENDIAN=y +CONFIG_FB_BOTH_ENDIAN=y +# CONFIG_FB_BIG_ENDIAN is not set +# CONFIG_FB_LITTLE_ENDIAN is not set +CONFIG_FB_SYS_FOPS=m +CONFIG_FB_DEFERRED_IO=y +# CONFIG_FB_SVGALIB is not set +CONFIG_FB_MACMODES=y +CONFIG_FB_BACKLIGHT=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_OF=y +# CONFIG_FB_ASILIANT is not set +# CONFIG_FB_IMSTT is not set +# CONFIG_FB_VGA16 is not set +# CONFIG_FB_OPENCORES is not set +# CONFIG_FB_S1D13XXX is not set +CONFIG_FB_NVIDIA=m +CONFIG_FB_NVIDIA_I2C=y +# CONFIG_FB_NVIDIA_DEBUG is not set +CONFIG_FB_NVIDIA_BACKLIGHT=y +# CONFIG_FB_RIVA is not set +# CONFIG_FB_I740 is not set +# CONFIG_FB_MATROX is not set +CONFIG_FB_RADEON=m +CONFIG_FB_RADEON_I2C=y +CONFIG_FB_RADEON_BACKLIGHT=y +# CONFIG_FB_RADEON_DEBUG 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_BROADSHEET is not set +# CONFIG_FB_AUO_K190X is not set +# CONFIG_FB_SIMPLE is not set +# CONFIG_FB_SM712 is not set +CONFIG_BACKLIGHT_LCD_SUPPORT=y +CONFIG_LCD_CLASS_DEVICE=m +# CONFIG_LCD_PLATFORM is not set +CONFIG_BACKLIGHT_CLASS_DEVICE=y +CONFIG_BACKLIGHT_GENERIC=y +# CONFIG_BACKLIGHT_PM8941_WLED 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 +CONFIG_VGASTATE=m +CONFIG_HDMI=y + +# +# Console display driver support +# +# CONFIG_VGA_CONSOLE is not set +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_LOGO=y +CONFIG_LOGO_LINUX_MONO=y +CONFIG_LOGO_LINUX_VGA16=y +CONFIG_LOGO_LINUX_CLUT224=y +CONFIG_SOUND=m +CONFIG_SOUND_OSS_CORE=y +CONFIG_SOUND_OSS_CORE_PRECLAIM=y +CONFIG_SND=m +CONFIG_SND_TIMER=m +CONFIG_SND_PCM=m +CONFIG_SND_HWDEP=m +CONFIG_SND_SEQ_DEVICE=m +CONFIG_SND_RAWMIDI=m +CONFIG_SND_JACK=y +CONFIG_SND_JACK_INPUT_DEV=y +CONFIG_SND_OSSEMUL=y +CONFIG_SND_MIXER_OSS=m +CONFIG_SND_PCM_OSS=m +CONFIG_SND_PCM_OSS_PLUGINS=y +CONFIG_SND_PCM_TIMER=y +# CONFIG_SND_HRTIMER is not set +# 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_SEQUENCER=m +# CONFIG_SND_SEQ_DUMMY is not set +CONFIG_SND_SEQUENCER_OSS=m +CONFIG_SND_SEQ_MIDI_EVENT=m +CONFIG_SND_SEQ_MIDI=m +CONFIG_SND_SEQ_MIDI_EMUL=m +CONFIG_SND_SEQ_VIRMIDI=m +CONFIG_SND_MPU401_UART=m +CONFIG_SND_OPL3_LIB=m +CONFIG_SND_OPL3_LIB_SEQ=m +# CONFIG_SND_OPL4_LIB_SEQ is not set +CONFIG_SND_VX_LIB=m +CONFIG_SND_AC97_CODEC=m +CONFIG_SND_DRIVERS=y +# 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=m +# CONFIG_SND_AC97_POWER_SAVE is not set +CONFIG_SND_SB_COMMON=m +CONFIG_SND_PCI=y +CONFIG_SND_AD1889=m +CONFIG_SND_ALS300=m +CONFIG_SND_ALS4000=m +CONFIG_SND_ALI5451=m +CONFIG_SND_ATIIXP=m +CONFIG_SND_ATIIXP_MODEM=m +CONFIG_SND_AU8810=m +CONFIG_SND_AU8820=m +CONFIG_SND_AU8830=m +CONFIG_SND_AW2=m +CONFIG_SND_AZT3328=m +CONFIG_SND_BT87X=m +# CONFIG_SND_BT87X_OVERCLOCK is not set +CONFIG_SND_CA0106=m +CONFIG_SND_CMIPCI=m +CONFIG_SND_OXYGEN_LIB=m +CONFIG_SND_OXYGEN=m +CONFIG_SND_CS4281=m +CONFIG_SND_CS46XX=m +CONFIG_SND_CS46XX_NEW_DSP=y +CONFIG_SND_CTXFI=m +CONFIG_SND_DARLA20=m +CONFIG_SND_GINA20=m +CONFIG_SND_LAYLA20=m +CONFIG_SND_DARLA24=m +CONFIG_SND_GINA24=m +CONFIG_SND_LAYLA24=m +CONFIG_SND_MONA=m +CONFIG_SND_MIA=m +CONFIG_SND_ECHO3G=m +CONFIG_SND_INDIGO=m +CONFIG_SND_INDIGOIO=m +CONFIG_SND_INDIGODJ=m +CONFIG_SND_INDIGOIOX=m +CONFIG_SND_INDIGODJX=m +CONFIG_SND_EMU10K1=m +CONFIG_SND_EMU10K1_SEQ=m +CONFIG_SND_EMU10K1X=m +CONFIG_SND_ENS1370=m +CONFIG_SND_ENS1371=m +CONFIG_SND_ES1938=m +CONFIG_SND_ES1968=m +CONFIG_SND_ES1968_INPUT=y +CONFIG_SND_ES1968_RADIO=y +CONFIG_SND_FM801=m +CONFIG_SND_FM801_TEA575X_BOOL=y +CONFIG_SND_HDSP=m +CONFIG_SND_HDSPM=m +CONFIG_SND_ICE1712=m +CONFIG_SND_ICE1724=m +CONFIG_SND_INTEL8X0=m +CONFIG_SND_INTEL8X0M=m +CONFIG_SND_KORG1212=m +CONFIG_SND_LOLA=m +CONFIG_SND_LX6464ES=m +CONFIG_SND_MAESTRO3=m +CONFIG_SND_MAESTRO3_INPUT=y +CONFIG_SND_MIXART=m +CONFIG_SND_NM256=m +CONFIG_SND_PCXHR=m +CONFIG_SND_RIPTIDE=m +CONFIG_SND_RME32=m +CONFIG_SND_RME96=m +CONFIG_SND_RME9652=m +CONFIG_SND_SONICVIBES=m +CONFIG_SND_TRIDENT=m +CONFIG_SND_VIA82XX=m +CONFIG_SND_VIA82XX_MODEM=m +CONFIG_SND_VIRTUOSO=m +CONFIG_SND_VX222=m +CONFIG_SND_YMFPCI=m + +# +# HD-Audio +# +CONFIG_SND_HDA=m +CONFIG_SND_HDA_INTEL=m +# CONFIG_SND_HDA_HWDEP is not set +# CONFIG_SND_HDA_RECONFIG is not set +CONFIG_SND_HDA_INPUT_BEEP=y +CONFIG_SND_HDA_INPUT_BEEP_MODE=1 +# CONFIG_SND_HDA_PATCH_LOADER is not set +CONFIG_SND_HDA_CODEC_REALTEK=m +CONFIG_SND_HDA_CODEC_ANALOG=m +CONFIG_SND_HDA_CODEC_SIGMATEL=m +CONFIG_SND_HDA_CODEC_VIA=m +CONFIG_SND_HDA_CODEC_HDMI=m +CONFIG_SND_HDA_CODEC_CIRRUS=m +CONFIG_SND_HDA_CODEC_CONEXANT=m +CONFIG_SND_HDA_CODEC_CA0110=m +CONFIG_SND_HDA_CODEC_CA0132=m +# CONFIG_SND_HDA_CODEC_CA0132_DSP is not set +CONFIG_SND_HDA_CODEC_CMEDIA=m +CONFIG_SND_HDA_CODEC_SI3054=m +CONFIG_SND_HDA_GENERIC=m +CONFIG_SND_HDA_POWER_SAVE_DEFAULT=0 +CONFIG_SND_HDA_CORE=m +CONFIG_SND_HDA_PREALLOC_SIZE=64 +CONFIG_SND_PPC=y +CONFIG_SND_USB=y +CONFIG_SND_USB_AUDIO=m +# CONFIG_SND_USB_UA101 is not set +# CONFIG_SND_USB_USX2Y is not set +# CONFIG_SND_USB_CAIAQ 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_SOC is not set +CONFIG_SND_SYNTH_EMUX=m +CONFIG_AC97_BUS=m + +# +# HID support +# +CONFIG_HID=y +# CONFIG_HID_BATTERY_STRENGTH is not set +# CONFIG_HIDRAW is not set +# CONFIG_UHID is not set +CONFIG_HID_GENERIC=y + +# +# Special HID drivers +# +CONFIG_HID_A4TECH=m +# CONFIG_HID_ACCUTOUCH is not set +# CONFIG_HID_ACRUX is not set +CONFIG_HID_APPLE=m +# CONFIG_HID_APPLEIR is not set +# CONFIG_HID_ASUS is not set +# CONFIG_HID_AUREAL is not set +CONFIG_HID_BELKIN=m +# CONFIG_HID_BETOP_FF is not set +CONFIG_HID_CHERRY=m +CONFIG_HID_CHICONY=m +# CONFIG_HID_CORSAIR is not set +# CONFIG_HID_PRODIKEYS is not set +# CONFIG_HID_CMEDIA is not set +CONFIG_HID_CYPRESS=m +# CONFIG_HID_DRAGONRISE is not set +# CONFIG_HID_EMS_FF is not set +# CONFIG_HID_ELECOM is not set +# CONFIG_HID_ELO is not set +CONFIG_HID_EZKEY=m +# CONFIG_HID_GEMBIRD is not set +# CONFIG_HID_GFRM is not set +# CONFIG_HID_HOLTEK 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_GYRATION=m +# CONFIG_HID_ICADE is not set +CONFIG_HID_ITE=m +# CONFIG_HID_TWINHAN is not set +CONFIG_HID_KENSINGTON=m +# CONFIG_HID_LCPOWER is not set +# CONFIG_HID_LED is not set +# CONFIG_HID_LENOVO is not set +CONFIG_HID_LOGITECH=m +# 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_MAYFLASH is not set +CONFIG_HID_MICROSOFT=m +CONFIG_HID_MONTEREY=m +# CONFIG_HID_MULTITOUCH is not set +# CONFIG_HID_NTI is not set +# CONFIG_HID_NTRIG is not set +# CONFIG_HID_ORTEK is not set +CONFIG_HID_PANTHERLORD=m +# CONFIG_PANTHERLORD_FF is not set +# CONFIG_HID_PENMOUNT is not set +CONFIG_HID_PETALYNX=m +# 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=m +CONFIG_HID_SONY=m +CONFIG_SONY_FF=y +# CONFIG_HID_SPEEDLINK is not set +# CONFIG_HID_STEELSERIES is not set +CONFIG_HID_SUNPLUS=m +# 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 is not set +# CONFIG_HID_THINGM is not set +# CONFIG_HID_THRUSTMASTER is not set +# CONFIG_HID_UDRAW_PS3 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 + +# +# USB HID support +# +CONFIG_USB_HID=y +CONFIG_HID_PID=y +CONFIG_USB_HIDDEV=y + +# +# I2C HID support +# +# CONFIG_I2C_HID is not set +CONFIG_USB_OHCI_BIG_ENDIAN_DESC=y +CONFIG_USB_OHCI_BIG_ENDIAN_MMIO=y +CONFIG_USB_OHCI_LITTLE_ENDIAN=y +CONFIG_USB_SUPPORT=y +CONFIG_USB_COMMON=y +CONFIG_USB_ARCH_HAS_HCD=y +CONFIG_USB=y +CONFIG_USB_PCI=y +# CONFIG_USB_ANNOUNCE_NEW_DEVICES is not set + +# +# Miscellaneous USB options +# +CONFIG_USB_DEFAULT_PERSIST=y +# CONFIG_USB_DYNAMIC_MINORS is not set +# CONFIG_USB_OTG is not set +# CONFIG_USB_OTG_WHITELIST is not set +# CONFIG_USB_LEDS_TRIGGER_USBPORT is not set +CONFIG_USB_MON=y +# CONFIG_USB_WUSB_CBAF is not set + +# +# USB Host Controller Drivers +# +# CONFIG_USB_C67X00_HCD is not set +CONFIG_USB_XHCI_HCD=y +CONFIG_USB_XHCI_PCI=y +CONFIG_USB_XHCI_PLATFORM=m +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_HCD_PPC_OF 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_ISP1362_HCD is not set +# CONFIG_USB_FOTG210_HCD is not set +CONFIG_USB_OHCI_HCD=y +CONFIG_USB_OHCI_HCD_PPC_OF_BE=y +# CONFIG_USB_OHCI_HCD_PPC_OF_LE is not set +CONFIG_USB_OHCI_HCD_PPC_OF=y +CONFIG_USB_OHCI_HCD_PCI=y +# CONFIG_USB_OHCI_HCD_PLATFORM is not set +# CONFIG_USB_UHCI_HCD is not set +# CONFIG_USB_SL811_HCD is not set +# CONFIG_USB_R8A66597_HCD is not set +# CONFIG_USB_HCD_BCMA is not set +# CONFIG_USB_HCD_SSB is not set +# CONFIG_USB_HCD_TEST_MODE is not set + +# +# USB Device Class drivers +# +CONFIG_USB_ACM=m +CONFIG_USB_PRINTER=m +# 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=m +CONFIG_USB_STORAGE_FREECOM=m +CONFIG_USB_STORAGE_ISD200=m +# CONFIG_USB_STORAGE_USBAT is not set +CONFIG_USB_STORAGE_SDDR09=m +CONFIG_USB_STORAGE_SDDR55=m +CONFIG_USB_STORAGE_JUMPSHOT=m +# 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_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=m +CONFIG_USB_SERIAL_GENERIC=y +# CONFIG_USB_SERIAL_SIMPLE is not set +# CONFIG_USB_SERIAL_AIRCABLE is not set +# CONFIG_USB_SERIAL_ARK3116 is not set +CONFIG_USB_SERIAL_BELKIN=m +# CONFIG_USB_SERIAL_CH341 is not set +# CONFIG_USB_SERIAL_WHITEHEAT is not set +CONFIG_USB_SERIAL_DIGI_ACCELEPORT=m +# CONFIG_USB_SERIAL_CP210X is not set +CONFIG_USB_SERIAL_CYPRESS_M8=m +CONFIG_USB_SERIAL_EMPEG=m +CONFIG_USB_SERIAL_FTDI_SIO=m +CONFIG_USB_SERIAL_VISOR=m +CONFIG_USB_SERIAL_IPAQ=m +CONFIG_USB_SERIAL_IR=m +CONFIG_USB_SERIAL_EDGEPORT=m +CONFIG_USB_SERIAL_EDGEPORT_TI=m +# CONFIG_USB_SERIAL_F81232 is not set +# CONFIG_USB_SERIAL_F8153X is not set +CONFIG_USB_SERIAL_GARMIN=m +CONFIG_USB_SERIAL_IPW=m +# CONFIG_USB_SERIAL_IUU is not set +CONFIG_USB_SERIAL_KEYSPAN_PDA=m +CONFIG_USB_SERIAL_KEYSPAN=m +CONFIG_USB_SERIAL_KEYSPAN_MPR=y +CONFIG_USB_SERIAL_KEYSPAN_USA28=y +CONFIG_USB_SERIAL_KEYSPAN_USA28X=y +CONFIG_USB_SERIAL_KEYSPAN_USA28XA=y +CONFIG_USB_SERIAL_KEYSPAN_USA28XB=y +CONFIG_USB_SERIAL_KEYSPAN_USA19=y +CONFIG_USB_SERIAL_KEYSPAN_USA18X=y +CONFIG_USB_SERIAL_KEYSPAN_USA19W=y +CONFIG_USB_SERIAL_KEYSPAN_USA19QW=y +CONFIG_USB_SERIAL_KEYSPAN_USA19QI=y +CONFIG_USB_SERIAL_KEYSPAN_USA49W=y +CONFIG_USB_SERIAL_KEYSPAN_USA49WLC=y +CONFIG_USB_SERIAL_KLSI=m +CONFIG_USB_SERIAL_KOBIL_SCT=m +CONFIG_USB_SERIAL_MCT_U232=m +# CONFIG_USB_SERIAL_METRO is not set +# CONFIG_USB_SERIAL_MOS7720 is not set +# CONFIG_USB_SERIAL_MOS7840 is not set +# CONFIG_USB_SERIAL_MXUPORT is not set +# CONFIG_USB_SERIAL_NAVMAN is not set +CONFIG_USB_SERIAL_PL2303=m +# CONFIG_USB_SERIAL_OTI6858 is not set +# CONFIG_USB_SERIAL_QCAUX is not set +# CONFIG_USB_SERIAL_QUALCOMM is not set +# CONFIG_USB_SERIAL_SPCP8X5 is not set +CONFIG_USB_SERIAL_SAFE=m +CONFIG_USB_SERIAL_SAFE_PADDED=y +# CONFIG_USB_SERIAL_SIERRAWIRELESS is not set +# CONFIG_USB_SERIAL_SYMBOL is not set +CONFIG_USB_SERIAL_TI=m +CONFIG_USB_SERIAL_CYBERJACK=m +CONFIG_USB_SERIAL_XIRCOM=m +CONFIG_USB_SERIAL_WWAN=m +# CONFIG_USB_SERIAL_OPTION is not set +CONFIG_USB_SERIAL_OMNINET=m +# CONFIG_USB_SERIAL_OPTICON is not set +# CONFIG_USB_SERIAL_XSENS_MT is not set +# CONFIG_USB_SERIAL_WISHBONE is not set +# CONFIG_USB_SERIAL_SSU100 is not set +# CONFIG_USB_SERIAL_QT2 is not set +# CONFIG_USB_SERIAL_UPD78F0730 is not set +# CONFIG_USB_SERIAL_DEBUG 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_RIO500 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=m +# 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=m +# 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 + +# +# USB Physical Layer drivers +# +# CONFIG_USB_PHY is not set +# CONFIG_NOP_USB_XCEIV is not set +# CONFIG_USB_ISP1301 is not set +# CONFIG_USB_GADGET is not set + +# +# USB Power Delivery and Type-C drivers +# +# CONFIG_USB_LED_TRIG is not set +# CONFIG_USB_ULPI_BUS is not set +# CONFIG_UWB is not set +CONFIG_MMC=m +CONFIG_PWRSEQ_EMMC=m +CONFIG_PWRSEQ_SIMPLE=m +CONFIG_MMC_BLOCK=m +CONFIG_MMC_BLOCK_MINORS=8 +# CONFIG_SDIO_UART is not set +# CONFIG_MMC_TEST is not set + +# +# MMC/SD/SDIO Host Controller Drivers +# +# CONFIG_MMC_DEBUG is not set +CONFIG_MMC_SDHCI=m +CONFIG_MMC_SDHCI_IO_ACCESSORS=y +CONFIG_MMC_SDHCI_BIG_ENDIAN_32BIT_BYTE_SWAPPER=y +# CONFIG_MMC_SDHCI_PCI is not set +CONFIG_MMC_SDHCI_PLTFM=m +# CONFIG_MMC_SDHCI_OF_AT91 is not set +# CONFIG_MMC_SDHCI_OF_ESDHC is not set +CONFIG_MMC_SDHCI_OF_HLWD=m +# CONFIG_MMC_SDHCI_CADENCE is not set +# CONFIG_MMC_SDHCI_F_SDH30 is not set +# CONFIG_MMC_WBSD is not set +# CONFIG_MMC_TIFM_SD is not set +# CONFIG_MMC_CB710 is not set +# CONFIG_MMC_VIA_SDMMC is not set +# CONFIG_MMC_VUB300 is not set +# CONFIG_MMC_USHC is not set +# CONFIG_MMC_USDHI6ROL0 is not set +# CONFIG_MMC_TOSHIBA_PCI is not set +# CONFIG_MMC_MTK is not set +# CONFIG_MMC_SDHCI_XENON is not set +CONFIG_MEMSTICK=m +# CONFIG_MEMSTICK_DEBUG is not set + +# +# MemoryStick drivers +# +# CONFIG_MEMSTICK_UNSAFE_RESUME is not set +CONFIG_MSPRO_BLOCK=m +CONFIG_MS_BLOCK=m + +# +# MemoryStick Host Controller Drivers +# +CONFIG_MEMSTICK_TIFM_MS=m +CONFIG_MEMSTICK_JMICRON_38X=m +CONFIG_MEMSTICK_R592=m +CONFIG_NEW_LEDS=y +CONFIG_LEDS_CLASS=y +# CONFIG_LEDS_CLASS_FLASH is not set +# CONFIG_LEDS_BRIGHTNESS_HW_CHANGED is not set + +# +# LED drivers +# +# CONFIG_LEDS_BCM6328 is not set +# CONFIG_LEDS_BCM6358 is not set +# CONFIG_LEDS_LM3530 is not set +# CONFIG_LEDS_LM3642 is not set +# CONFIG_LEDS_PCA9532 is not set +# CONFIG_LEDS_LP3944 is not set +# CONFIG_LEDS_LP5521 is not set +# CONFIG_LEDS_LP5523 is not set +# CONFIG_LEDS_LP5562 is not set +# CONFIG_LEDS_LP8501 is not set +# CONFIG_LEDS_LP8860 is not set +# CONFIG_LEDS_PCA955X is not set +# CONFIG_LEDS_PCA963X is not set +# CONFIG_LEDS_BD2802 is not set +# CONFIG_LEDS_TCA6507 is not set +# CONFIG_LEDS_TLC591XX is not set +# CONFIG_LEDS_LM355x is not set +# CONFIG_LEDS_IS31FL319X is not set +# CONFIG_LEDS_IS31FL32XX 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_POWERNV is not set +# CONFIG_LEDS_USER 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_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_ACCESSIBILITY is not set +# CONFIG_INFINIBAND is not set +CONFIG_EDAC_ATOMIC_SCRUB=y +CONFIG_EDAC_SUPPORT=y +# CONFIG_EDAC is not set +CONFIG_RTC_LIB=y +CONFIG_RTC_CLASS=y +CONFIG_RTC_HCTOSYS=y +CONFIG_RTC_HCTOSYS_DEVICE="rtc0" +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_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_HYM8563 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_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_RV8803 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 is not set +# 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 +CONFIG_RTC_DRV_OPAL=y +# CONFIG_RTC_DRV_ZYNQMP is not set + +# +# on-CPU RTC drivers +# +CONFIG_RTC_DRV_GENERIC=y +# CONFIG_RTC_DRV_FTRTC010 is not set +# CONFIG_RTC_DRV_SNVS is not set +# CONFIG_RTC_DRV_R7301 is not set + +# +# HID Sensor RTC drivers +# +# CONFIG_RTC_DRV_HID_SENSOR_TIME is not set +# CONFIG_DMADEVICES is not set + +# +# DMABUF options +# +CONFIG_SYNC_FILE=y +# CONFIG_SW_SYNC is not set +# CONFIG_AUXDISPLAY is not set +# CONFIG_UIO is not set +# CONFIG_VFIO_IOMMU_TYPE1 is not set +CONFIG_VFIO_IOMMU_SPAPR_TCE=m +CONFIG_VFIO_SPAPR_EEH=m +CONFIG_VFIO_VIRQFD=m +CONFIG_VFIO=m +# CONFIG_VFIO_NOIOMMU is not set +CONFIG_VFIO_PCI=m +CONFIG_VFIO_PCI_MMAP=y +CONFIG_VFIO_PCI_INTX=y +CONFIG_VFIO_MDEV=m +CONFIG_VFIO_MDEV_DEVICE=m +CONFIG_IRQ_BYPASS_MANAGER=y +CONFIG_VIRT_DRIVERS=y +CONFIG_VIRTIO=y + +# +# Virtio drivers +# +CONFIG_VIRTIO_PCI=y +# CONFIG_VIRTIO_PCI_LEGACY is not set +CONFIG_VIRTIO_BALLOON=m +CONFIG_VIRTIO_INPUT=m +CONFIG_VIRTIO_MMIO=m +# CONFIG_VIRTIO_MMIO_CMDLINE_DEVICES is not set + +# +# Microsoft Hyper-V guest support +# +# CONFIG_HYPERV_TSCPAGE is not set +# CONFIG_STAGING is not set +# CONFIG_HWSPINLOCK is not set + +# +# Clock Source drivers +# +CONFIG_I8253_LOCK=y +CONFIG_CLKBLD_I8253=y +# CONFIG_ATMEL_PIT is not set +# CONFIG_SH_TIMER_CMT is not set +# CONFIG_SH_TIMER_MTU2 is not set +# CONFIG_SH_TIMER_TMU is not set +# CONFIG_EM_TIMER_STI is not set +# CONFIG_MAILBOX is not set +CONFIG_IOMMU_API=y +CONFIG_IOMMU_SUPPORT=y + +# +# Generic IOMMU Pagetable Support +# +CONFIG_OF_IOMMU=y +CONFIG_SPAPR_TCE_IOMMU=y + +# +# Remoteproc drivers +# +# CONFIG_REMOTEPROC is not set + +# +# Rpmsg drivers +# + +# +# SOC (System On Chip) specific Drivers +# + +# +# Amlogic SoC drivers +# + +# +# Broadcom SoC drivers +# + +# +# i.MX SoC drivers +# + +# +# Qualcomm SoC drivers +# +# CONFIG_SUNXI_SRAM is not set +# CONFIG_SOC_TI is not set +CONFIG_PM_DEVFREQ=y + +# +# DEVFREQ Governors +# +CONFIG_DEVFREQ_GOV_SIMPLE_ONDEMAND=m +# CONFIG_DEVFREQ_GOV_PERFORMANCE is not set +# CONFIG_DEVFREQ_GOV_POWERSAVE is not set +# CONFIG_DEVFREQ_GOV_USERSPACE is not set +# CONFIG_DEVFREQ_GOV_PASSIVE is not set + +# +# DEVFREQ Drivers +# +# CONFIG_PM_DEVFREQ_EVENT 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 +CONFIG_IRQCHIP=y +CONFIG_ARM_GIC_MAX_NR=1 +# CONFIG_IPACK_BUS is not set +# CONFIG_RESET_CONTROLLER is not set +# CONFIG_FMC is not set + +# +# PHY Subsystem +# +# CONFIG_GENERIC_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_POWERCAP is not set +# CONFIG_MCB is not set + +# +# Performance monitor support +# +CONFIG_RAS=y + +# +# Android +# +# CONFIG_ANDROID is not set +# CONFIG_LIBNVDIMM is not set +CONFIG_DAX=y +# CONFIG_DEV_DAX is not set +CONFIG_NVMEM=y +# CONFIG_STM is not set +# CONFIG_INTEL_TH is not set +# CONFIG_FPGA is not set + +# +# FSI support +# +# CONFIG_FSI is not set + +# +# File systems +# +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_ENCRYPTION is not set +# CONFIG_EXT4_DEBUG is not set +CONFIG_JBD2=y +# CONFIG_JBD2_DEBUG is not set +CONFIG_FS_MBCACHE=y +CONFIG_REISERFS_FS=m +# CONFIG_REISERFS_CHECK is not set +# CONFIG_REISERFS_PROC_INFO is not set +CONFIG_REISERFS_FS_XATTR=y +CONFIG_REISERFS_FS_POSIX_ACL=y +CONFIG_REISERFS_FS_SECURITY=y +CONFIG_JFS_FS=y +CONFIG_JFS_POSIX_ACL=y +# CONFIG_JFS_SECURITY is not set +# CONFIG_JFS_DEBUG is not set +# CONFIG_JFS_STATISTICS is not set +CONFIG_XFS_FS=y +CONFIG_XFS_QUOTA=y +CONFIG_XFS_POSIX_ACL=y +# CONFIG_XFS_RT is not set +# CONFIG_XFS_WARN is not set +# CONFIG_XFS_DEBUG is not set +CONFIG_GFS2_FS=m +CONFIG_BTRFS_FS=m +CONFIG_BTRFS_FS_POSIX_ACL=y +# CONFIG_BTRFS_FS_CHECK_INTEGRITY is not set +# CONFIG_BTRFS_FS_RUN_SANITY_TESTS is not set +# CONFIG_BTRFS_DEBUG is not set +# CONFIG_BTRFS_ASSERT is not set +CONFIG_NILFS2_FS=m +CONFIG_F2FS_FS=m +CONFIG_F2FS_STAT_FS=y +CONFIG_F2FS_FS_XATTR=y +CONFIG_F2FS_FS_POSIX_ACL=y +# CONFIG_F2FS_FS_SECURITY is not set +# CONFIG_F2FS_CHECK_FS is not set +# CONFIG_F2FS_FS_ENCRYPTION is not set +# CONFIG_F2FS_FAULT_INJECTION is not set +CONFIG_FS_DAX=y +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_FSNOTIFY=y +CONFIG_DNOTIFY=y +CONFIG_INOTIFY_USER=y +# CONFIG_FANOTIFY is not set +# CONFIG_QUOTA is not set +# CONFIG_QUOTA_NETLINK_INTERFACE is not set +CONFIG_QUOTACTL=y +# CONFIG_AUTOFS4_FS is not set +CONFIG_FUSE_FS=m +# CONFIG_CUSE is not set +CONFIG_OVERLAY_FS=y +# CONFIG_OVERLAY_FS_REDIRECT_DIR is not set +# CONFIG_OVERLAY_FS_INDEX is not set + +# +# Caches +# +# CONFIG_FSCACHE is not set + +# +# CD-ROM/DVD Filesystems +# +CONFIG_ISO9660_FS=y +CONFIG_JOLIET=y +CONFIG_ZISOFS=y +CONFIG_UDF_FS=m +CONFIG_UDF_NLS=y + +# +# DOS/FAT/NT Filesystems +# +CONFIG_FAT_FS=m +CONFIG_MSDOS_FS=m +CONFIG_VFAT_FS=m +CONFIG_FAT_DEFAULT_CODEPAGE=437 +CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1" +# CONFIG_FAT_DEFAULT_UTF8 is not set +CONFIG_NTFS_FS=m +# CONFIG_NTFS_DEBUG is not set +# CONFIG_NTFS_RW is not set + +# +# Pseudo filesystems +# +CONFIG_PROC_FS=y +CONFIG_PROC_KCORE=y +CONFIG_PROC_SYSCTL=y +CONFIG_PROC_PAGE_MONITOR=y +# CONFIG_PROC_CHILDREN is not set +CONFIG_KERNFS=y +CONFIG_SYSFS=y +CONFIG_TMPFS=y +# CONFIG_TMPFS_POSIX_ACL is not set +# CONFIG_TMPFS_XATTR is not set +CONFIG_HUGETLBFS=y +CONFIG_HUGETLB_PAGE=y +CONFIG_ARCH_HAS_GIGANTIC_PAGE=y +# CONFIG_CONFIGFS_FS is not set +CONFIG_MISC_FILESYSTEMS=y +# CONFIG_ORANGEFS_FS is not set +# CONFIG_ADFS_FS is not set +CONFIG_AFFS_FS=m +# CONFIG_ECRYPT_FS is not set +CONFIG_HFS_FS=m +CONFIG_HFSPLUS_FS=m +# CONFIG_HFSPLUS_FS_POSIX_ACL is not set +# CONFIG_BEFS_FS is not set +# CONFIG_BFS_FS is not set +# CONFIG_EFS_FS is not set +CONFIG_CRAMFS=m +CONFIG_SQUASHFS=y +CONFIG_SQUASHFS_FILE_CACHE=y +# CONFIG_SQUASHFS_FILE_DIRECT is not set +CONFIG_SQUASHFS_DECOMP_SINGLE=y +# CONFIG_SQUASHFS_DECOMP_MULTI is not set +# CONFIG_SQUASHFS_DECOMP_MULTI_PERCPU is not set +# CONFIG_SQUASHFS_XATTR is not set +CONFIG_SQUASHFS_ZLIB=y +CONFIG_SQUASHFS_LZ4=y +CONFIG_SQUASHFS_LZO=y +CONFIG_SQUASHFS_XZ=y +# CONFIG_SQUASHFS_ZSTD is not set +# CONFIG_SQUASHFS_4K_DEVBLK_SIZE is not set +# CONFIG_SQUASHFS_EMBEDDED is not set +CONFIG_SQUASHFS_FRAGMENT_CACHE_SIZE=3 +# 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=m +# CONFIG_UFS_FS_WRITE is not set +# CONFIG_UFS_DEBUG is not set +CONFIG_NETWORK_FILESYSTEMS=y +CONFIG_NFS_FS=y +CONFIG_NFS_V2=m +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_NFS_USE_LEGACY_DNS is not set +CONFIG_NFS_USE_KERNEL_DNS=y +CONFIG_NFSD=m +CONFIG_NFSD_V2_ACL=y +CONFIG_NFSD_V3=y +CONFIG_NFSD_V3_ACL=y +CONFIG_NFSD_V4=y +# CONFIG_NFSD_BLOCKLAYOUT is not set +# CONFIG_NFSD_SCSILAYOUT is not set +# CONFIG_NFSD_FLEXFILELAYOUT is not set +# CONFIG_NFSD_FAULT_INJECTION 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=m +# CONFIG_CIFS_STATS is not set +# CONFIG_CIFS_WEAK_PW_HASH is not set +# CONFIG_CIFS_UPCALL is not set +# CONFIG_CIFS_XATTR is not set +CONFIG_CIFS_DEBUG=y +# CONFIG_CIFS_DEBUG2 is not set +# CONFIG_CIFS_DEBUG_DUMP_KEYS is not set +# CONFIG_CIFS_DFS_UPCALL is not set +# CONFIG_CIFS_SMB311 is not set +# CONFIG_NCP_FS is not set +# CONFIG_CODA_FS is not set +# CONFIG_AFS_FS is not set +CONFIG_NLS=y +CONFIG_NLS_DEFAULT="iso8859-1" +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=y +CONFIG_NLS_CODEPAGE_1251=y +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=y +# 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_BINARY_PRINTF=y + +# +# Library routines +# +CONFIG_RAID6_PQ=m +CONFIG_BITREVERSE=y +# CONFIG_HAVE_ARCH_BITREVERSE is not set +CONFIG_RATIONAL=y +CONFIG_GENERIC_STRNCPY_FROM_USER=y +CONFIG_GENERIC_STRNLEN_USER=y +CONFIG_GENERIC_NET_UTILS=y +CONFIG_GENERIC_PCI_IOMAP=y +CONFIG_GENERIC_IOMAP=y +CONFIG_GENERIC_IO=y +CONFIG_ARCH_USE_CMPXCHG_LOCKREF=y +CONFIG_ARCH_HAS_FAST_MULTIPLIER=y +CONFIG_CRC_CCITT=m +CONFIG_CRC16=y +CONFIG_CRC_T10DIF=y +CONFIG_CRC_ITU_T=m +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_CRC4 is not set +# CONFIG_CRC7 is not set +CONFIG_LIBCRC32C=y +# CONFIG_CRC8 is not set +CONFIG_XXHASH=m +# CONFIG_AUDIT_ARCH_COMPAT_GENERIC is not set +# 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_COMPRESS=m +CONFIG_ZSTD_DECOMPRESS=m +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_BTREE=y +CONFIG_INTERVAL_TREE=y +CONFIG_RADIX_TREE_MULTIORDER=y +CONFIG_ASSOCIATIVE_ARRAY=y +CONFIG_HAS_IOMEM=y +CONFIG_HAS_IOPORT_MAP=y +CONFIG_HAS_DMA=y +# CONFIG_DMA_NOOP_OPS is not set +# CONFIG_DMA_VIRT_OPS is not set +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_CORDIC is not set +# CONFIG_DDR is not set +CONFIG_IRQ_POLL=y +CONFIG_MPILIB=y +CONFIG_LIBFDT=y +CONFIG_OID_REGISTRY=y +CONFIG_FONT_SUPPORT=y +# CONFIG_FONTS is not set +CONFIG_FONT_8x8=y +CONFIG_FONT_8x16=y +# CONFIG_SG_SPLIT is not set +CONFIG_SG_POOL=y +CONFIG_ARCH_HAS_SG_CHAIN=y +CONFIG_SBITMAP=y +# CONFIG_STRING_SELFTEST is not set + +# +# Kernel hacking +# + +# +# printk and dmesg options +# +# CONFIG_PRINTK_TIME is not set +CONFIG_CONSOLE_LOGLEVEL_DEFAULT=7 +CONFIG_MESSAGE_LOGLEVEL_DEFAULT=4 +# CONFIG_DYNAMIC_DEBUG is not set + +# +# Compile-time checks and compiler options +# +# CONFIG_DEBUG_INFO is not set +CONFIG_ENABLE_WARN_DEPRECATED=y +CONFIG_ENABLE_MUST_CHECK=y +CONFIG_FRAME_WARN=2048 +# CONFIG_STRIP_ASM_SYMS is not set +# CONFIG_READABLE_ASM is not set +# CONFIG_UNUSED_SYMBOLS is not set +# CONFIG_PAGE_OWNER is not set +CONFIG_DEBUG_FS=y +# CONFIG_HEADERS_CHECK is not set +# CONFIG_DEBUG_SECTION_MISMATCH is not set +CONFIG_SECTION_MISMATCH_WARN_ONLY=y +# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set +CONFIG_MAGIC_SYSRQ=y +CONFIG_MAGIC_SYSRQ_DEFAULT_ENABLE=0x1 +CONFIG_MAGIC_SYSRQ_SERIAL=y +CONFIG_DEBUG_KERNEL=y + +# +# Memory Debugging +# +# CONFIG_PAGE_EXTENSION is not set +# CONFIG_PAGE_POISONING is not set +# CONFIG_DEBUG_PAGE_REF 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 is not set +# CONFIG_DEBUG_VM is not set +CONFIG_DEBUG_MEMORY_INIT=y +# CONFIG_DEBUG_PER_CPU_MAPS is not set +CONFIG_HAVE_DEBUG_STACKOVERFLOW=y +# CONFIG_DEBUG_STACKOVERFLOW is not set +# CONFIG_DEBUG_SHIRQ is not set + +# +# Debug Lockups and Hangs +# +# CONFIG_SOFTLOCKUP_DETECTOR is not set +# CONFIG_HARDLOCKUP_DETECTOR is not set +# CONFIG_DETECT_HUNG_TASK is not set +# CONFIG_WQ_WATCHDOG is not set +# CONFIG_PANIC_ON_OOPS is not set +CONFIG_PANIC_ON_OOPS_VALUE=0 +CONFIG_SCHED_DEBUG=y +CONFIG_SCHED_INFO=y +CONFIG_SCHEDSTATS=y +# CONFIG_SCHED_STACK_END_CHECK is not set +# CONFIG_DEBUG_TIMEKEEPING is not set + +# +# Lock Debugging (spinlocks, mutexes, etc...) +# +# CONFIG_DEBUG_RT_MUTEXES is not set +# CONFIG_DEBUG_SPINLOCK is not set +CONFIG_DEBUG_MUTEXES=y +# CONFIG_DEBUG_WW_MUTEX_SLOWPATH is not set +# CONFIG_DEBUG_LOCK_ALLOC is not set +# CONFIG_PROVE_LOCKING is not set +# CONFIG_LOCK_STAT 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_STACKTRACE=y +# CONFIG_WARN_ALL_UNSEEDED_RANDOM is not set +# CONFIG_DEBUG_KOBJECT is not set +CONFIG_DEBUG_BUGVERBOSE=y +# CONFIG_DEBUG_LIST is not set +# CONFIG_DEBUG_PI_LIST is not set +# CONFIG_DEBUG_SG is not set +# CONFIG_DEBUG_NOTIFIERS is not set +# CONFIG_DEBUG_CREDENTIALS is not set + +# +# RCU Debugging +# +# CONFIG_PROVE_RCU is not set +# CONFIG_TORTURE_TEST is not set +# CONFIG_RCU_PERF_TEST is not set +# CONFIG_RCU_TORTURE_TEST is not set +CONFIG_RCU_CPU_STALL_TIMEOUT=21 +CONFIG_RCU_TRACE=y +# CONFIG_RCU_EQS_DEBUG is not set +# 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_NOTIFIER_ERROR_INJECTION is not set +# CONFIG_FAULT_INJECTION is not set +CONFIG_LATENCYTOP=y +CONFIG_NOP_TRACER=y +CONFIG_HAVE_FUNCTION_TRACER=y +CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y +CONFIG_HAVE_DYNAMIC_FTRACE=y +CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y +CONFIG_HAVE_SYSCALL_TRACEPOINTS=y +CONFIG_TRACE_CLOCK=y +CONFIG_RING_BUFFER=y +CONFIG_EVENT_TRACING=y +CONFIG_CONTEXT_SWITCH_TRACER=y +CONFIG_RING_BUFFER_ALLOW_SWAP=y +CONFIG_TRACING=y +CONFIG_TRACING_SUPPORT=y +CONFIG_FTRACE=y +# CONFIG_FUNCTION_TRACER is not set +# CONFIG_IRQSOFF_TRACER is not set +# CONFIG_SCHED_TRACER is not set +# CONFIG_HWLAT_TRACER is not set +# CONFIG_ENABLE_DEFAULT_TRACERS 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_STACK_TRACER is not set +# CONFIG_BLK_DEV_IO_TRACE is not set +CONFIG_UPROBE_EVENTS=y +CONFIG_PROBE_EVENTS=y +# CONFIG_HIST_TRIGGERS is not set +# CONFIG_TRACEPOINT_BENCHMARK is not set +# CONFIG_RING_BUFFER_BENCHMARK is not set +# CONFIG_RING_BUFFER_STARTUP_TEST is not set +# CONFIG_TRACE_EVAL_MAP_FILE is not set +# CONFIG_DMA_API_DEBUG is not set + +# +# Runtime Testing +# +# CONFIG_LKDTM is not set +# CONFIG_TEST_LIST_SORT is not set +# CONFIG_TEST_SORT is not set +# CONFIG_BACKTRACE_SELF_TEST is not set +# CONFIG_RBTREE_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_KSTRTOX is not set +# CONFIG_TEST_PRINTF is not set +# CONFIG_TEST_BITMAP is not set +# CONFIG_TEST_UUID is not set +# CONFIG_TEST_RHASHTABLE is not set +# CONFIG_TEST_HASH is not set +# CONFIG_TEST_LKM is not set +# CONFIG_TEST_USER_COPY is not set +# CONFIG_TEST_BPF 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_MEMTEST is not set +# CONFIG_BUG_ON_DATA_CORRUPTION is not set +# CONFIG_SAMPLES is not set +CONFIG_HAVE_ARCH_KGDB=y +# CONFIG_KGDB is not set +CONFIG_ARCH_HAS_UBSAN_SANITIZE_ALL=y +# CONFIG_ARCH_WANTS_UBSAN_NO_NULL is not set +# CONFIG_UBSAN is not set +CONFIG_ARCH_HAS_DEVMEM_IS_ALLOWED=y +CONFIG_STRICT_DEVMEM=y +# CONFIG_IO_STRICT_DEVMEM is not set +# CONFIG_PPC_DISABLE_WERROR is not set +CONFIG_PPC_WERROR=y +CONFIG_PRINT_STACK_DEPTH=64 +# CONFIG_HCALL_STATS is not set +# CONFIG_PPC_EMULATED_STATS is not set +# CONFIG_CODE_PATCHING_SELFTEST is not set +CONFIG_JUMP_LABEL_FEATURE_CHECKS=y +# CONFIG_JUMP_LABEL_FEATURE_CHECK_DEBUG is not set +# CONFIG_FTR_FIXUP_SELFTEST is not set +# CONFIG_MSI_BITMAP_SELFTEST is not set +# CONFIG_XMON is not set +# CONFIG_BOOTX_TEXT is not set +# CONFIG_PPC_EARLY_DEBUG is not set +# CONFIG_PPC_PTDUMP is not set + +# +# Security options +# +CONFIG_KEYS=y +CONFIG_KEYS_COMPAT=y +# CONFIG_PERSISTENT_KEYRINGS is not set +# CONFIG_BIG_KEYS 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 is not set +# CONFIG_SECURITYFS is not set +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_DEFAULT_SECURITY_DAC=y +CONFIG_DEFAULT_SECURITY="" +CONFIG_XOR_BLOCKS=m +CONFIG_CRYPTO=y + +# +# Crypto core or helper +# +CONFIG_CRYPTO_ALGAPI=y +CONFIG_CRYPTO_ALGAPI2=y +CONFIG_CRYPTO_AEAD=m +CONFIG_CRYPTO_AEAD2=y +CONFIG_CRYPTO_BLKCIPHER=m +CONFIG_CRYPTO_BLKCIPHER2=y +CONFIG_CRYPTO_HASH=y +CONFIG_CRYPTO_HASH2=y +CONFIG_CRYPTO_RNG=m +CONFIG_CRYPTO_RNG2=y +CONFIG_CRYPTO_RNG_DEFAULT=m +CONFIG_CRYPTO_AKCIPHER2=y +CONFIG_CRYPTO_AKCIPHER=y +CONFIG_CRYPTO_KPP2=y +CONFIG_CRYPTO_KPP=m +CONFIG_CRYPTO_ACOMP2=y +CONFIG_CRYPTO_RSA=y +# CONFIG_CRYPTO_DH is not set +CONFIG_CRYPTO_ECDH=m +CONFIG_CRYPTO_MANAGER=y +CONFIG_CRYPTO_MANAGER2=y +# CONFIG_CRYPTO_USER is not set +CONFIG_CRYPTO_MANAGER_DISABLE_TESTS=y +CONFIG_CRYPTO_GF128MUL=m +CONFIG_CRYPTO_NULL=m +CONFIG_CRYPTO_NULL2=y +# CONFIG_CRYPTO_PCRYPT is not set +CONFIG_CRYPTO_WORKQUEUE=y +# CONFIG_CRYPTO_CRYPTD is not set +# CONFIG_CRYPTO_MCRYPTD is not set +CONFIG_CRYPTO_AUTHENC=m +CONFIG_CRYPTO_TEST=m + +# +# Authenticated Encryption with Associated Data +# +CONFIG_CRYPTO_CCM=m +CONFIG_CRYPTO_GCM=m +# CONFIG_CRYPTO_CHACHA20POLY1305 is not set +CONFIG_CRYPTO_SEQIV=m +CONFIG_CRYPTO_ECHAINIV=m + +# +# Block modes +# +CONFIG_CRYPTO_CBC=m +CONFIG_CRYPTO_CTR=m +# CONFIG_CRYPTO_CTS is not set +CONFIG_CRYPTO_ECB=m +# CONFIG_CRYPTO_LRW is not set +CONFIG_CRYPTO_PCBC=m +CONFIG_CRYPTO_XTS=m +# CONFIG_CRYPTO_KEYWRAP is not set + +# +# Hash modes +# +CONFIG_CRYPTO_CMAC=m +CONFIG_CRYPTO_HMAC=y +# CONFIG_CRYPTO_XCBC is not set +# CONFIG_CRYPTO_VMAC is not set + +# +# Digest +# +CONFIG_CRYPTO_CRC32C=y +# CONFIG_CRYPTO_CRC32C_VPMSUM is not set +CONFIG_CRYPTO_CRC32=m +CONFIG_CRYPTO_CRCT10DIF=y +# CONFIG_CRYPTO_CRCT10DIF_VPMSUM is not set +CONFIG_CRYPTO_GHASH=m +# CONFIG_CRYPTO_POLY1305 is not set +CONFIG_CRYPTO_MD4=m +CONFIG_CRYPTO_MD5=m +# CONFIG_CRYPTO_MD5_PPC is not set +CONFIG_CRYPTO_MICHAEL_MIC=m +# 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=m +# CONFIG_CRYPTO_SHA1_PPC is not set +CONFIG_CRYPTO_SHA256=m +CONFIG_CRYPTO_SHA512=y +# CONFIG_CRYPTO_SHA3 is not set +# CONFIG_CRYPTO_TGR192 is not set +CONFIG_CRYPTO_WP512=m + +# +# Ciphers +# +CONFIG_CRYPTO_AES=y +# CONFIG_CRYPTO_AES_TI is not set +CONFIG_CRYPTO_ANUBIS=m +CONFIG_CRYPTO_ARC4=m +CONFIG_CRYPTO_BLOWFISH=m +CONFIG_CRYPTO_BLOWFISH_COMMON=m +# CONFIG_CRYPTO_CAMELLIA is not set +CONFIG_CRYPTO_CAST_COMMON=m +CONFIG_CRYPTO_CAST5=m +CONFIG_CRYPTO_CAST6=m +CONFIG_CRYPTO_DES=m +# CONFIG_CRYPTO_FCRYPT is not set +CONFIG_CRYPTO_KHAZAD=m +# CONFIG_CRYPTO_SALSA20 is not set +# CONFIG_CRYPTO_CHACHA20 is not set +# CONFIG_CRYPTO_SEED is not set +CONFIG_CRYPTO_SERPENT=m +CONFIG_CRYPTO_TEA=m +CONFIG_CRYPTO_TWOFISH=m +CONFIG_CRYPTO_TWOFISH_COMMON=m + +# +# Compression +# +CONFIG_CRYPTO_DEFLATE=m +# CONFIG_CRYPTO_LZO is not set +# CONFIG_CRYPTO_842 is not set +# CONFIG_CRYPTO_LZ4 is not set +# CONFIG_CRYPTO_LZ4HC is not set + +# +# Random Number Generation +# +# CONFIG_CRYPTO_ANSI_CPRNG is not set +CONFIG_CRYPTO_DRBG_MENU=m +CONFIG_CRYPTO_DRBG_HMAC=y +# CONFIG_CRYPTO_DRBG_HASH is not set +# CONFIG_CRYPTO_DRBG_CTR is not set +CONFIG_CRYPTO_DRBG=m +CONFIG_CRYPTO_JITTERENTROPY=m +# 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 +# CONFIG_CRYPTO_HW is not set +CONFIG_ASYMMETRIC_KEY_TYPE=y +CONFIG_ASYMMETRIC_PUBLIC_KEY_SUBTYPE=y +CONFIG_X509_CERTIFICATE_PARSER=y +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_MODULE_SIG_KEY="certs/signing_key.pem" +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 +CONFIG_HAVE_KVM_IRQCHIP=y +CONFIG_HAVE_KVM_IRQFD=y +CONFIG_HAVE_KVM_EVENTFD=y +CONFIG_KVM_MMIO=y +CONFIG_KVM_VFIO=y +CONFIG_KVM_COMPAT=y +CONFIG_HAVE_KVM_IRQ_BYPASS=y +CONFIG_VIRTUALIZATION=y +CONFIG_KVM=y +CONFIG_KVM_BOOK3S_HANDLER=y +CONFIG_KVM_BOOK3S_64_HANDLER=y +CONFIG_KVM_BOOK3S_PR_POSSIBLE=y +CONFIG_KVM_BOOK3S_HV_POSSIBLE=y +CONFIG_KVM_BOOK3S_64=m +CONFIG_KVM_BOOK3S_64_HV=m +CONFIG_KVM_BOOK3S_64_PR=m +# CONFIG_KVM_BOOK3S_HV_EXIT_TIMING is not set +CONFIG_KVM_XICS=y +CONFIG_KVM_XIVE=y +CONFIG_VHOST_NET=m +CONFIG_VHOST=m +CONFIG_VHOST_CROSS_ENDIAN_LEGACY=y diff --git a/system/easy-kernel-power8-64k/futex-cmpxchg.patch b/system/easy-kernel-power8-64k/futex-cmpxchg.patch new file mode 100644 index 000000000..9e2aabfb7 --- /dev/null +++ b/system/easy-kernel-power8-64k/futex-cmpxchg.patch @@ -0,0 +1,12 @@ +diff --git a/arch/powerpc/Kconfig b/arch/powerpc/Kconfig +index 9f2b75f..d75d8ea 100644 +--- a/arch/powerpc/Kconfig ++++ b/arch/powerpc/Kconfig +@@ -190,6 +190,7 @@ config PPC + select HAVE_FTRACE_MCOUNT_RECORD + select HAVE_FUNCTION_GRAPH_TRACER + select HAVE_FUNCTION_TRACER ++ select HAVE_FUTEX_CMPXCHG if FUTEX + select HAVE_GCC_PLUGINS + select HAVE_GENERIC_GUP + select HAVE_HW_BREAKPOINT if PERF_EVENTS && (PPC_BOOK3S || PPC_8xx) diff --git a/system/easy-kernel-power8/APKBUILD b/system/easy-kernel-power8/APKBUILD index e11528e2d..06d0ecb79 100644 --- a/system/easy-kernel-power8/APKBUILD +++ b/system/easy-kernel-power8/APKBUILD @@ -1,8 +1,8 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: Adelie Platform Group <adelie-devel@lists.adelielinux.org> _pkgname=easy-kernel-power8 -pkgver=4.14.56 -pkgrel=9 +pkgver=4.14.76 +pkgrel=11 pkgname=$_pkgname-$pkgver-mc$pkgrel pkgdesc="The Linux kernel, packaged for POWER8 and POWER9 computers" url="https://kernel.org/" @@ -55,6 +55,9 @@ package() { "$pkgdir"/boot/vmlinux-$pkgver-mc$pkgrel-easy-p8 fi + # This allows coexistence of both kernel flavours on media. + mv "$pkgdir"/boot/System.map "$pkgdir"/boot/System.map-p8 + install -D "$builddir"/include/config/kernel.release \ "$pkgdir"/usr/share/kernel/easy-$pkgver-mc$pkgrel-p8/kernel.release } @@ -80,7 +83,7 @@ src() { mv "$srcdir"/linux-src "$subpkgdir"/usr/src/linux-$pkgver-mc$pkgrel-p8 } sha512sums="77e43a02d766c3d73b7e25c4aafb2e931d6b16e870510c22cef0cdb05c3acb7952b8908ebad12b10ef982c6efbe286364b1544586e715cf38390e483927904d8 linux-4.14.tar.xz -f76ae636da104c6f1d299a6aff18a5aa1166c9c06efbdf3270c911f26adc1760fbb4271ca2338ced47c7787c2ff54880e1945e2d6cf25fda880b5f735029d7a8 linux-4.14-mc9.patch.xz +114611ae0cfaa3c277d857cd760047a47256f1f068297383b0a8d69b62e09de3c2cde617428ce207d156c63f6d89f4559d3dd29f72698d0e9ce68f27360e108c linux-4.14-mc11.patch.xz e41d9111219342ad13367902242444ecdd847a93575c3f9709d6c6a075bc650f4a15be9db1a8798435fc0a0b56d41705829bfe0d2c2d88f8d1c28931e27ef5be ast-endianness.patch fd810263d9aeeb2ec33c7872a9ccf52f474d79995d7f265f457226d62ab44456edf583e67fd4425c1e8025df0d359ebab566fbdcf8ce0a6c8c7ce36d726d3da6 config-ppc64 64486a4f53046a69f727cecd8c39400b50c2d2b15e3b5ca8c18b8249d25990f3a872ec064800ba3d190f9d25b4518899b9ea3675920f487108102856d6beb51e futex-cmpxchg.patch" diff --git a/system/easy-kernel/APKBUILD b/system/easy-kernel/APKBUILD index 4a9395acd..49a532ca8 100644 --- a/system/easy-kernel/APKBUILD +++ b/system/easy-kernel/APKBUILD @@ -1,8 +1,8 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: Adelie Platform Group <adelie-devel@lists.adelielinux.org> _pkgname=easy-kernel -pkgver=4.14.56 -pkgrel=9 +pkgver=4.14.76 +pkgrel=11 pkgname=$_pkgname-$pkgver-mc$pkgrel pkgdesc="The Linux kernel, packaged for your convenience" url="https://kernel.org/" @@ -23,6 +23,7 @@ source="https://cdn.kernel.org/pub/linux/kernel/v4.x/linux-4.14.tar.xz config-x86_64 config-pmmx config-aarch64 + futex-cmpxchg.patch " builddir="$srcdir/linux-4.14" @@ -102,10 +103,11 @@ src() { mv "$srcdir"/linux-src "$subpkgdir"/usr/src/linux-$pkgver-mc$pkgrel } sha512sums="77e43a02d766c3d73b7e25c4aafb2e931d6b16e870510c22cef0cdb05c3acb7952b8908ebad12b10ef982c6efbe286364b1544586e715cf38390e483927904d8 linux-4.14.tar.xz -f76ae636da104c6f1d299a6aff18a5aa1166c9c06efbdf3270c911f26adc1760fbb4271ca2338ced47c7787c2ff54880e1945e2d6cf25fda880b5f735029d7a8 linux-4.14-mc9.patch.xz +d8bfe29549e0a1a7e86d8ead682e93e704c8d0b4b454f8a75306aa7ef5d628cab3a65847e27502866ed5901aff189eb440d47d8e07c2c34ebb7d2d82b717a64b linux-4.14-mc11.patch.xz e41d9111219342ad13367902242444ecdd847a93575c3f9709d6c6a075bc650f4a15be9db1a8798435fc0a0b56d41705829bfe0d2c2d88f8d1c28931e27ef5be ast-endianness.patch 3d3ee8f7c27ff20b9569ec4dadabd2c733102d1cf5fd3f6abfefaa4dc34e5161b793d82bce7c29f02aafe74791b345b516bf5b1503d36bf714ef2e70507a2bc3 config-ppc64 1112f6c3fcfd7fdc0ef4d5e85df5d3adea430a9c7b4c2b34508a215f7ba14c863ccd7a5e17f13ed46c518bafec30cfb3ced70c465137c14ef5fc998b6cbcca1f config-ppc 438a66561200d570b3bf6ab0481d9725a9f482b1fcf852a90f99c6db5aa4ee02d2b67b57235bb7afc01515a79289407cbe111536340824d7a391ce1a658c9a76 config-x86_64 e8f7749877c5b2574e7e853b757477b8f99d757b43225d4f83d611c20215b8b2690cc85369608c2dc8f7d6a619136a2d7dde4648031e37d2ae4dcc5ba85652c8 config-pmmx -0174e758ea318171c8036426ed0ad22aaafbdbac755732a46397686ec8dd24e977447f6fc275d59eed43ea047fc8a36061b7ad0d5862d522222455a60c943027 config-aarch64" +0174e758ea318171c8036426ed0ad22aaafbdbac755732a46397686ec8dd24e977447f6fc275d59eed43ea047fc8a36061b7ad0d5862d522222455a60c943027 config-aarch64 +64486a4f53046a69f727cecd8c39400b50c2d2b15e3b5ca8c18b8249d25990f3a872ec064800ba3d190f9d25b4518899b9ea3675920f487108102856d6beb51e futex-cmpxchg.patch" diff --git a/system/easy-kernel/futex-cmpxchg.patch b/system/easy-kernel/futex-cmpxchg.patch new file mode 100644 index 000000000..9e2aabfb7 --- /dev/null +++ b/system/easy-kernel/futex-cmpxchg.patch @@ -0,0 +1,12 @@ +diff --git a/arch/powerpc/Kconfig b/arch/powerpc/Kconfig +index 9f2b75f..d75d8ea 100644 +--- a/arch/powerpc/Kconfig ++++ b/arch/powerpc/Kconfig +@@ -190,6 +190,7 @@ config PPC + select HAVE_FTRACE_MCOUNT_RECORD + select HAVE_FUNCTION_GRAPH_TRACER + select HAVE_FUNCTION_TRACER ++ select HAVE_FUTEX_CMPXCHG if FUTEX + select HAVE_GCC_PLUGINS + select HAVE_GENERIC_GUP + select HAVE_HW_BREAKPOINT if PERF_EVENTS && (PPC_BOOK3S || PPC_8xx) diff --git a/system/iproute2/APKBUILD b/system/iproute2/APKBUILD index afebbb5cf..ce85af071 100644 --- a/system/iproute2/APKBUILD +++ b/system/iproute2/APKBUILD @@ -1,7 +1,7 @@ # Contributor: Natanael Copa <ncopa@alpinelinux.org> # Maintainer: Dan Theisen <djt@hxx.in> pkgname=iproute2 -pkgver=4.17.0 +pkgver=4.18.0 pkgrel=0 pkgdesc="IP configuration, routing, and traffic control utilities" url="https://wiki.linuxfoundation.org/networking/iproute2" @@ -13,7 +13,7 @@ makedepends="bison flex bash libelf-dev libmnl-dev libcap-dev" # the testsuite in this package seems to be geared towards kernel developers options="!check" subpackages="$pkgname-doc $pkgname-bash-completion:bashcomp:noarch" -source="http://kernel.org/pub/linux/utils/net/iproute2/iproute2-$pkgver.tar.xz +source="https://kernel.org/pub/linux/utils/net/iproute2/iproute2-$pkgver.tar.xz fix-uapi-garbage.patch" prepare() { @@ -55,5 +55,5 @@ bashcomp() { rmdir -p "$pkgdir"/usr/share 2>/dev/null || true } -sha512sums="ccd7fb70afd58f1fcd4e17c38a24607207da853c4d6118fda423efa6e51faad3ad03c4d6d58a579c40ef9c68aaf13b1c455e12b0c36e155712d3d4db3c2ff4b5 iproute2-4.17.0.tar.xz +sha512sums="c7c8e8e76c78faf63548da641769cf9f51811a308cd8eeec171f5f46423f116ff123033f11a554609825aba6d078c95dbbe36aa7ab23bd8d87b3a0d5100be1a9 iproute2-4.18.0.tar.xz d9b40539f4ac074f20b0bb10381de9c3b64aadf612f0d599814cdb632fe97c76c9b4730406b08a6e53739670ca51ea0f699862156247cf20c3b7f4c78394fa46 fix-uapi-garbage.patch" diff --git a/system/kbd/APKBUILD b/system/kbd/APKBUILD index 38a367e10..61d755e27 100644 --- a/system/kbd/APKBUILD +++ b/system/kbd/APKBUILD @@ -2,7 +2,7 @@ # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kbd pkgver=2.0.4 -pkgrel=0 +pkgrel=1 pkgdesc="Console keyboard and font management utilities" url=" " arch="all" @@ -10,8 +10,8 @@ license="GPL-2.0+" depends="" makedepends="linux-headers linux-pam-dev" checkdepends="check-dev" -subpackages="$pkgname-dev $pkgname-doc $pkgname-fonts::noarch - $pkgname-keymaps::noarch $pkgname-lang" +subpackages="$pkgname-doc $pkgname-fonts::noarch $pkgname-keymaps::noarch + $pkgname-lang" source="https://mirrors.kernel.org/pub/linux/utils/kbd/kbd-$pkgver.tar.xz" build() { diff --git a/system/llvm4/fix-CheckAtomic.cmake.patch b/system/llvm4/fix-CheckAtomic.cmake.patch deleted file mode 100644 index a5309de6c..000000000 --- a/system/llvm4/fix-CheckAtomic.cmake.patch +++ /dev/null @@ -1,22 +0,0 @@ -This cmake file uses command CHECK_LIBRARY_EXISTS that is defined in -module CheckLibraryExists, but it does not include that module. - -This caused build error in lldb, but only on x86 (not x86_64)... - - -- Performing Test HAVE_CXX_ATOMICS64_WITHOUT_LIB - Failed - CMake Error at /usr/lib/llvm4/lib/cmake/llvm/CheckAtomic.cmake:66 (check_library_exists): - Unknown CMake command "check_library_exists". - Call Stack (most recent call first): - cmake/modules/LLDBStandalone.cmake:90 (include) - CMakeLists.txt:3 (include) - ---- a/cmake/modules/CheckAtomic.cmake -+++ b/cmake/modules/CheckAtomic.cmake -@@ -1,6 +1,7 @@ - # atomic builtins are required for threading support. - - INCLUDE(CheckCXXSourceCompiles) -+INCLUDE(CheckLibraryExists) - - # Sometimes linking against libatomic is required for atomic ops, if - # the platform doesn't support lock-free atomics. diff --git a/system/llvm4/llvm-fix-DynamicLibrary-to-build-with-musl-libc.patch b/system/llvm4/llvm-fix-DynamicLibrary-to-build-with-musl-libc.patch deleted file mode 100644 index d5d7f07b5..000000000 --- a/system/llvm4/llvm-fix-DynamicLibrary-to-build-with-musl-libc.patch +++ /dev/null @@ -1,33 +0,0 @@ -From d12ecb83d01dcb580dd94f4d57828f33d3eb4c35 Mon Sep 17 00:00:00 2001 -From: Natanael Copa <ncopa@alpinelinux.org> -Date: Thu, 18 Feb 2016 15:33:21 +0100 -Subject: [PATCH 3/3] Fix DynamicLibrary to build with musl libc - -stdin/out/err is part of the libc and not the kernel so we check for the -specific libc that does the unexpected instead of linux. - -This is needed for making it build with musl libc. ---- - lib/Support/DynamicLibrary.cpp | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/lib/Support/DynamicLibrary.cpp b/lib/Support/DynamicLibrary.cpp -index 9a7aeb5..0c1c8f8 100644 ---- a/lib/Support/DynamicLibrary.cpp -+++ b/lib/Support/DynamicLibrary.cpp -@@ -140,10 +140,10 @@ void* DynamicLibrary::SearchForAddressOfSymbol(const char *symbolName) { - #define EXPLICIT_SYMBOL(SYM) \ - if (!strcmp(symbolName, #SYM)) return &SYM - --// On linux we have a weird situation. The stderr/out/in symbols are both -+// On GNU libc we have a weird situation. The stderr/out/in symbols are both - // macros and global variables because of standards requirements. So, we - // boldly use the EXPLICIT_SYMBOL macro without checking for a #define first. --#if defined(__linux__) and !defined(__ANDROID__) -+#if defined(__GLIBC__) - { - EXPLICIT_SYMBOL(stderr); - EXPLICIT_SYMBOL(stdout); --- -2.7.3 - diff --git a/system/llvm4/musl-ppc64-elfv2.patch b/system/llvm4/musl-ppc64-elfv2.patch deleted file mode 100644 index 5e3021911..000000000 --- a/system/llvm4/musl-ppc64-elfv2.patch +++ /dev/null @@ -1,14 +0,0 @@ ---- llvm-4.0.0.src/lib/Target/PowerPC/PPCTargetMachine.cpp.old 2016-12-14 18:01:53.000000000 -0600 -+++ llvm-4.0.0.src/lib/Target/PowerPC/PPCTargetMachine.cpp 2018-07-02 20:34:48.470000000 -0500 -@@ -169,7 +169,11 @@ - case Triple::ppc64le: - return PPCTargetMachine::PPC_ABI_ELFv2; - case Triple::ppc64: -+#if defined(__linux__) && !defined(__GLIBC__) -+ return PPCTargetMachine::PPC_ABI_ELFv2; -+#else - return PPCTargetMachine::PPC_ABI_ELFv1; -+#endif - default: - // Fallthrough. - ; diff --git a/system/llvm4/silent-amdgpu-test-failing.patch b/system/llvm4/silent-amdgpu-test-failing.patch deleted file mode 100644 index e20cee595..000000000 --- a/system/llvm4/silent-amdgpu-test-failing.patch +++ /dev/null @@ -1,40 +0,0 @@ -See https://bugs.llvm.org//show_bug.cgi?id=31610 - ---- a/test/CodeGen/AMDGPU/invalid-opencl-version-metadata1.ll -+++ b/test/CodeGen/AMDGPU/invalid-opencl-version-metadata1.ll -@@ -2,5 +2,6 @@ - ; check llc does not crash for invalid opencl version metadata - - ; CHECK: { amd.MDVersion: [ 2, 0 ] } -+; XFAIL: * - - !opencl.ocl.version = !{} ---- a/test/CodeGen/AMDGPU/invalid-opencl-version-metadata2.ll -+++ b/test/CodeGen/AMDGPU/invalid-opencl-version-metadata2.ll -@@ -2,6 +2,7 @@ - ; check llc does not crash for invalid opencl version metadata - - ; CHECK: { amd.MDVersion: [ 2, 0 ] } -+; XFAIL: * - - !opencl.ocl.version = !{!0} - !0 = !{} ---- a/test/CodeGen/AMDGPU/invalid-opencl-version-metadata3.ll -+++ b/test/CodeGen/AMDGPU/invalid-opencl-version-metadata3.ll -@@ -2,6 +2,7 @@ - ; check llc does not crash for invalid opencl version metadata - - ; CHECK: { amd.MDVersion: [ 2, 0 ] } -+; XFAIL: * - - !opencl.ocl.version = !{!0} - !0 = !{i32 1} ---- a/test/CodeGen/AMDGPU/runtime-metadata.ll -+++ b/test/CodeGen/AMDGPU/runtime-metadata.ll -@@ -1,5 +1,6 @@ - ; RUN: llc -mtriple=amdgcn--amdhsa -filetype=obj -o - < %s | llvm-readobj -amdgpu-runtime-metadata | FileCheck %s - ; RUN: llc -mtriple=amdgcn--amdhsa -filetype=obj -amdgpu-dump-rtmd -amdgpu-check-rtmd-parser %s -o - 2>&1 | FileCheck --check-prefix=CHECK --check-prefix=PARSER %s -+; XFAIL: * - - %struct.A = type { i8, float } - %opencl.image1d_t = type opaque diff --git a/system/lua5.3/APKBUILD b/system/lua5.3/APKBUILD index c09f2f7a5..1589f14d1 100644 --- a/system/lua5.3/APKBUILD +++ b/system/lua5.3/APKBUILD @@ -1,9 +1,9 @@ # Maintainer: pkgname=lua5.3 _pkgname=lua -pkgver=5.3.4 +pkgver=5.3.5 _luaver=${pkgname#lua} -pkgrel=5 +pkgrel=0 pkgdesc="Light-weight programming language" url="https://www.lua.org/" arch="all" @@ -131,7 +131,7 @@ libs() { mv "$pkgdir"/usr/lib "$subpkgdir"/usr/ } -sha512sums="739e31f82e6a60fa99910c2005e991b3a1e21339af52847f653cb190b30842054d189ca116ffcfdf9b36e07888c9ce5642b1dd2988cc7eff9f8789f9a2e34997 lua-5.3.4.tar.gz +sha512sums="4f9516acc4659dfd0a9e911bfa00c0788f0ad9348e5724fe8fb17aac59e9c0060a64378f82be86f8534e49c6c013e7488ad17321bafcc787831d3d67406bd0f4 lua-5.3.5.tar.gz 1bc6c623024c1738155b30ff9c0edcce0f336edc25aa20c3a1400c859421ea2015d75175cce8d515e055ac3e96028426b74812e04022af18a0ed4c4601556027 lua-5.3-make.patch bc68772390dc8d8940176af0b9fbacc0af61891b5d27de5f1466a4e7f9b3291a1c08ba5add829bc96b789a53fa5ec2dadaa096ca6eabe54ec27724fa2810940f lua-5.3-module_paths.patch 49880d1131b7bd2a3169a26f401769a91d9a6a62cefe68aa5a89097139289588b7ef753535a2d0ba7f45c0369c760554940fd810716b7b1353deace32432fcfe linenoise.patch" diff --git a/system/lvm2/APKBUILD b/system/lvm2/APKBUILD index 0f222a8dc..0b9d4428d 100644 --- a/system/lvm2/APKBUILD +++ b/system/lvm2/APKBUILD @@ -1,7 +1,7 @@ # Contributor: Natanael Copa <ncopa@alpinelinux.org> # Maintainer: Dan Theisen <djt@hxx.in> pkgname=lvm2 -pkgver=2.02.178 +pkgver=2.02.181 pkgrel=0 pkgdesc="Logical Volume Manager 2 utilities" url="http://sourceware.org/lvm2/" @@ -14,7 +14,7 @@ depends_dev="linux-headers" makedepends_build="coreutils libaio-dev" makedepends_host="$depends_dev util-linux-dev" makedepends="$makedepends_build $makedepends_host" -source="https://mirrors.kernel.org/sourceware/$pkgname/releases/LVM2.$pkgver.tgz +source="https://mirrors.kernel.org/sourceware/$pkgname/LVM2.$pkgver.tgz fix-stdio-usage.patch mallinfo.patch library_dir-default-config.patch @@ -121,7 +121,7 @@ extra() { done } -sha512sums="7bc35e9d2f808f50885993d8e36f3eb048d9435b3e475d1bbf1657bc6021121816818b7170a6f86f2dd7b5696e66ad2fec120551557532eef1849bf5a1e23784 LVM2.2.02.178.tgz +sha512sums="599d992823510e27f3ec3ceaf0d2332402b731afc0d2df88096ab55ed98dba8c3bdc5408d51b9f5b0ffbbb9ac3760ee37b878a0f36ab379449dc076c58e59511 LVM2.2.02.181.tgz 6ea4efad03f8632f2883f33f9d9f8ca295f7d8d2aa1bfbfa7738e7d711727a511758848dde5776b222bd74e6fb60bed8b56a3cd2f74ca448b8d86f50470a42b9 fix-stdio-usage.patch 9272ec8c5184ef5dc776ead8f74132e072b7563b5119a3a38b712f00d92a1e3878c9b3a54eb2b01dcba038110c686b39d4c17ecd0eb258537e9217d7ed03c408 mallinfo.patch 33004594a5cce7af1e493a2a66ce8ad2f864dde3b2ec0960d0fda9df9b7bcf65d9455f9eccf7860f48726c48f14111b843b0a0c9bd395ef2952b41aaab8092b2 library_dir-default-config.patch diff --git a/system/man-pages/APKBUILD b/system/man-pages/APKBUILD index 395fe52d6..20d15124c 100644 --- a/system/man-pages/APKBUILD +++ b/system/man-pages/APKBUILD @@ -3,7 +3,7 @@ pkgname=man-pages pkgver=4.16 _posixver=2013-a -pkgrel=0 +pkgrel=1 pkgdesc="Linux man pages" url="https://www.kernel.org/doc/man-pages/" arch="noarch" @@ -48,6 +48,9 @@ package() { # provided by libbsd rm -f "$pkgdir"/usr/share/man/man3/explicit_bzero* + + # provided by shimmy + rm -f "$pkgdir"/usr/share/man/man1/localedef* } sha512sums="df282a0480e2c1cc74e4ba02d6ff02ba95886b6583058c737028ea609b916270ba7dcaf075e0c450fd4b49b335979765abfc7d0a75f5570eec5fa2381c10201c man-pages-4.16.tar.xz diff --git a/system/musl/APKBUILD b/system/musl/APKBUILD index 0505e9ebd..08f4342dd 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=0 +pkgrel=4 pkgdesc="System library (libc) implementation" url="http://www.musl-libc.org/" arch="all" @@ -13,15 +13,25 @@ depends_dev="!uclibc-dev" makedepends="$depends_dev" subpackages="$pkgname-dev $pkgname-dbg" case "$BOOTSTRAP" in -nocc) pkgname="musl-dev"; subpackages=""; options="$options !dbg" builddir="$srcdir"/musl-$pkgver;; +nocc) pkgname="musl-dev" + subpackages="" + options="$options !dbg" + builddir="$srcdir"/musl-$pkgver + ;; nolibc) ;; -*) subpackages="$subpackages $pkgname-utils";; +*) subpackages="$subpackages $pkgname-utils" + triggers="$pkgname-utils.trigger=/etc/ld.so.conf.d" + ;; esac source="http://www.musl-libc.org/releases/musl-$pkgver.tar.gz amalgamation.patch 2000-pthread-internals-increase-DEFAULT_GUARD_SIZE-to-2-p.patch 3001-make-real-lastlog-h.patch handle-aux-at_base.patch + fix-file-locking-race.patch + dcngettext-null-deref.patch + getaddrinfo-regression.patch + ppc64-atomic.patch ldconfig getent.c @@ -113,6 +123,10 @@ sha512sums="d3a7a30aa375ca50d7dcfbd618581d59e1aa5378417f50a0ca5510099336fd74cc9d 2c8e1dde1834238097b2ee8a7bfb53471a0d9cff4a5e38b55f048b567deff1cdd47c170d0578a67b1a039f95a6c5fbb8cff369c75b6a3e4d7ed171e8e86ebb8c 2000-pthread-internals-increase-DEFAULT_GUARD_SIZE-to-2-p.patch 88ae443dbb8e0a4368235bdc3a1c5c7b718495afa75e06deb8e01becc76cb1f0d6964589e2204fc749c9c1b3190b8b9ac1ae2c0099cab8e2ce3ec877103d4332 3001-make-real-lastlog-h.patch 6a7ff16d95b5d1be77e0a0fbb245491817db192176496a57b22ab037637d97a185ea0b0d19da687da66c2a2f5578e4343d230f399d49fe377d8f008410974238 handle-aux-at_base.patch -8d3a2d5315fc56fee7da9abb8b89bb38c6046c33d154c10d168fb35bfde6b0cf9f13042a3bceee34daf091bc409d699223735dcf19f382eeee1f6be34154f26f ldconfig +b967339d9048161583523e847be91779adb0e16cc225d6ff85ef51748269b2dab08a0b8e558ad01469135837a9df76a59bf9a31791dd4063d75bc5efe6e94861 fix-file-locking-race.patch +a08d1b170356beea333ace1da12f8a8399ca80c5d9c32ff2fcd8562537a670214f566e4b1219a11b32129078e22fbf7009bb277b7de8550a89352a64b3b5090d dcngettext-null-deref.patch +e3953a3a73ef11696dd3eb216e18b152ae35198d8bff686d157e27bc90fb558f9a0be518025a90534e9afd6ea1bf731ffdb6fcb202bb9368f2c8eec7ca886141 getaddrinfo-regression.patch +aae9110eccb8cd7dcd3c957fcb01ed524598f79f7fa1a16b9993af40793545d1ec211e7e6aeabe7af7715d94cc26a473ea0acf6d6e66019bf65f03d4b8e24a4b ppc64-atomic.patch +cce2f1eeb61e55674469c26871a573cce61d739c3defe9c8f56f2b774f6ba5435849ad542a6714120efddc98c297098e9c98a1a424ac593df2243d4aa479f9a9 ldconfig 378d70e65bcc65bb4e1415354cecfa54b0c1146dfb24474b69e418cdbf7ad730472cd09f6f103e1c99ba6c324c9560bccdf287f5889bbc3ef0bdf0e08da47413 getent.c 9d42d66fb1facce2b85dad919be5be819ee290bd26ca2db00982b2f8e055a0196290a008711cbe2b18ec9eee8d2270e3b3a4692c5a1b807013baa5c2b70a2bbf iconv.c" diff --git a/system/musl/dcngettext-null-deref.patch b/system/musl/dcngettext-null-deref.patch new file mode 100644 index 000000000..bcc385e86 --- /dev/null +++ b/system/musl/dcngettext-null-deref.patch @@ -0,0 +1,82 @@ +From 017e67ddde79fa2b6187a5e56b1e92bafc7c4cd2 Mon Sep 17 00:00:00 2001 +From: Rich Felker <dalias@aerifal.cx> +Date: Fri, 14 Sep 2018 13:00:41 -0400 +Subject: drop lazy plural forms init in dcngettext + +there is no good reason to wait to find and process the plural rules +for a translated message file until a gettext form requesting plural +rule processing is used. it just imposes additional synchronization, +here in the form of clunky use of atomics. + +it looks like there may also have been a race condition where nplurals +could be seen without plural_rule being seen, possibly leading to null +pointer dereference. if so, this commit fixes it. +--- + src/locale/dcngettext.c | 35 +++++++++++++++++------------------ + 1 file changed, 17 insertions(+), 18 deletions(-) + +diff --git a/src/locale/dcngettext.c b/src/locale/dcngettext.c +index 7fbe7196..8b891d00 100644 +--- a/src/locale/dcngettext.c ++++ b/src/locale/dcngettext.c +@@ -100,8 +100,8 @@ struct msgcat { + struct msgcat *next; + const void *map; + size_t map_size; +- void *volatile plural_rule; +- volatile int nplurals; ++ const char *plural_rule; ++ int nplurals; + struct binding *binding; + const struct __locale_map *lm; + int cat; +@@ -200,20 +200,7 @@ notrans: + p->lm = lm; + p->map = map; + p->map_size = map_size; +- do { +- old_cats = cats; +- p->next = old_cats; +- } while (a_cas_p(&cats, old_cats, p) != old_cats); +- } +- +- const char *trans = __mo_lookup(p->map, p->map_size, msgid1); +- if (!trans) goto notrans; +- +- /* Non-plural-processing gettext forms pass a null pointer as +- * msgid2 to request that dcngettext suppress plural processing. */ +- if (!msgid2) return (char *)trans; + +- if (!p->plural_rule) { + const char *rule = "n!=1;"; + unsigned long np = 2; + const char *r = __mo_lookup(p->map, p->map_size, ""); +@@ -237,10 +224,22 @@ notrans: + rule = r+7; + } + } +- a_store(&p->nplurals, np); +- a_cas_p(&p->plural_rule, 0, (void *)rule); ++ p->nplurals = np; ++ p->plural_rule = rule; ++ ++ do { ++ old_cats = cats; ++ p->next = old_cats; ++ } while (a_cas_p(&cats, old_cats, p) != old_cats); + } +- if (p->nplurals) { ++ ++ const char *trans = __mo_lookup(p->map, p->map_size, msgid1); ++ if (!trans) goto notrans; ++ ++ /* Non-plural-processing gettext forms pass a null pointer as ++ * msgid2 to request that dcngettext suppress plural processing. */ ++ ++ if (msgid2 && p->nplurals) { + unsigned long plural = __pleval(p->plural_rule, n); + if (plural > p->nplurals) goto notrans; + while (plural--) { +-- +cgit v1.2.1 + diff --git a/system/musl/fix-file-locking-race.patch b/system/musl/fix-file-locking-race.patch new file mode 100644 index 000000000..2ef91390a --- /dev/null +++ b/system/musl/fix-file-locking-race.patch @@ -0,0 +1,54 @@ +From 0db393d3a77bb9f300a356c6a5484fc2dddb161d Mon Sep 17 00:00:00 2001 +From: Kaarle Ritvanen <kaarle.ritvanen@datakunkku.fi> +Date: Tue, 18 Sep 2018 10:03:27 +0300 +Subject: fix race condition in file locking + +The condition occurs when +- thread #1 is holding the lock +- thread #2 is waiting for it on __futexwait +- thread #1 is about to release the lock and performs a_swap +- thread #3 enters the __lockfile function and manages to grab the lock + before thread #1 calls __wake, resetting the MAYBE_WAITERS flag +- thread #1 calls __wake +- thread #2 wakes up but goes again to __futexwait as the lock is + held by thread #3 +- thread #3 releases the lock but does not call __wake as the + MAYBE_WAITERS flag is not set + +This condition results in thread #2 not being woken up. This patch fixes +the problem by making the woken up thread ensure that the flag is +properly set before going to sleep again. + +Mainainer's note: This fixes a regression introduced in commit +c21f750727515602a9e84f2a190ee8a0a2aeb2a1. +--- + src/stdio/__lockfile.c | 12 ++++++------ + 1 file changed, 6 insertions(+), 6 deletions(-) + +diff --git a/src/stdio/__lockfile.c b/src/stdio/__lockfile.c +index 2ff75d8a..0dcb2a42 100644 +--- a/src/stdio/__lockfile.c ++++ b/src/stdio/__lockfile.c +@@ -8,13 +8,13 @@ int __lockfile(FILE *f) + int owner = f->lock, tid = __pthread_self()->tid; + if ((owner & ~MAYBE_WAITERS) == tid) + return 0; +- for (;;) { +- owner = a_cas(&f->lock, 0, tid); +- if (!owner) return 1; +- if (a_cas(&f->lock, owner, owner|MAYBE_WAITERS)==owner) break; ++ owner = a_cas(&f->lock, 0, tid); ++ if (!owner) return 1; ++ while ((owner = a_cas(&f->lock, 0, tid|MAYBE_WAITERS))) { ++ if ((owner & MAYBE_WAITERS) || ++ a_cas(&f->lock, owner, owner|MAYBE_WAITERS)==owner) ++ __futexwait(&f->lock, owner|MAYBE_WAITERS, 1); + } +- while ((owner = a_cas(&f->lock, 0, tid|MAYBE_WAITERS))) +- __futexwait(&f->lock, owner, 1); + return 1; + } + +-- +cgit v1.2.1 + diff --git a/system/musl/getaddrinfo-regression.patch b/system/musl/getaddrinfo-regression.patch new file mode 100644 index 000000000..28d4558b8 --- /dev/null +++ b/system/musl/getaddrinfo-regression.patch @@ -0,0 +1,51 @@ +From f381c118b2d4f7d914481d3cdc830ce41369b002 Mon Sep 17 00:00:00 2001 +From: Rich Felker <dalias@aerifal.cx> +Date: Wed, 19 Sep 2018 18:03:22 -0400 +Subject: fix getaddrinfo regression with AI_ADDRCONFIG on some configurations + +despite not being documented to do so in the standard or Linux +documentation, attempts to udp connect to 127.0.0.1 or ::1 generate +EADDRNOTAVAIL when the loopback device is not configured and there is +no default route for IPv6. this caused getaddrinfo with AI_ADDRCONFIG +to fail with EAI_SYSTEM and EADDRNOTAVAIL on some no-IPv6 +configurations, rather than the intended behavior of detecting IPv6 as +unsuppported and producing IPv4-only results. + +previously, only EAFNOSUPPORT was treated as unavailability of the +address family being probed. instead, treat all errors related to +inability to get an address or route as conclusive that the family +being probed is unsupported, and only fail with EAI_SYSTEM on other +errors. + +further improvements may be desirable, such as reporting EAI_AGAIN +instead of EAI_SYSTEM for errors which are expected to be transient, +but this patch should suffice to fix the serious regression. +--- + src/network/getaddrinfo.c | 11 ++++++++++- + 1 file changed, 10 insertions(+), 1 deletion(-) + +diff --git a/src/network/getaddrinfo.c b/src/network/getaddrinfo.c +index ba26847a..e33bfa28 100644 +--- a/src/network/getaddrinfo.c ++++ b/src/network/getaddrinfo.c +@@ -76,7 +76,16 @@ int getaddrinfo(const char *restrict host, const char *restrict serv, const stru + close(s); + if (!r) continue; + } +- if (errno != EAFNOSUPPORT) return EAI_SYSTEM; ++ switch (errno) { ++ case EADDRNOTAVAIL: ++ case EAFNOSUPPORT: ++ case EHOSTUNREACH: ++ case ENETDOWN: ++ case ENETUNREACH: ++ break; ++ default: ++ return EAI_SYSTEM; ++ } + if (family == tf[i]) return EAI_NONAME; + family = tf[1-i]; + } +-- +cgit v1.2.1 + diff --git a/system/musl/ldconfig b/system/musl/ldconfig index ccf7c2aa4..7699c6722 100644 --- a/system/musl/ldconfig +++ b/system/musl/ldconfig @@ -1,18 +1,184 @@ -#!/bin/sh -scan_dirs() { - scanelf -qS "$@" | while read SONAME FILE; do - TARGET="${FILE##*/}" - LINK="${FILE%/*}/$SONAME" - case "$FILE" in - /lib/*|/usr/lib/*|/usr/local/lib/*) ;; - *) [ -h "$LINK" -o ! -e "$LINK" ] && ln -sf "$TARGET" "$LINK" - esac +#!/bin/sh -eu +# Copyright 2016-2018 Samuel Holland <samuel@sholland.org> +# SPDX-License-Identifier: 0BSD + +ME=${0##*/} +VERSION=0.2.0 + +echo() { + printf '%s\n' "$*" +} + +echo_lines() { + printf '%s\n' "$@" +} + +msg() { + printf >&2 '%s: %s\n' "$ME" "$*" +} + +musl_arch() { + $ROOT/usr/lib/libc.so |& sed -n 's/^musl libc (\(.*\))$/\1/p' +} + +musl_version() { + $ROOT/usr/lib/libc.so |& sed -n 's/^Version //p' +} + +read_ldso_conf() { + local conf="$*" d dir file glob line + + # Start with the default "trusted" directories + set -- /lib /usr/lib + for file in $conf; do + test -r "$file" || continue + $VERBOSE && msg "Reading ${file}" + while read -r line; do + line=$(tokenize ${line%%#*}) + if test "${line#include }" != "$line"; then + glob=${file%/*}/${line#include } + $VERBOSE && msg "Including ${glob}" + line=$(read_ldso_conf $glob) + fi + for dir in $line; do + # Ignore missing directories + test -d "$ROOT$dir" || continue + # Ignore duplicate directories + for d; do test "$d" = "$dir" && continue 2; done + set -- "$@" "$dir" + done + done < "$file" done - return 0 + + echo_lines "$@" +} + +tokenize() { + echo "$*" | sed 's/=libc[456]//g;y/:,/ /' | xargs } -# eat ldconfig options -while getopts "nNvXvf:C:r:" opt; do - : + +LDSO_CACHE="/etc/ld.so.cache" +LDSO_CONF="/etc/ld.so.conf" +LIBRARY_MODE=false +ONLYARG_MODE=false +PRINT_CACHE=false +PRINT_VERSION=false +ROOT= +UPDATE_CACHE=true +UPDATE_LINKS=true +VERBOSE=false + +while getopts ":c:C:Df:ilnNpr:vVX" OPTION; do + case "$OPTION" in + C) + LDSO_CACHE=$OPTARG + ;; + D) + UPDATE_CACHE=false + UPDATE_LINKS=false + ;; + f) + LDSO_CONF=$OPTARG + ;; + l) + LIBRARY_MODE=true + ;; + n) + ONLYARG_MODE=true + ;; + N) + UPDATE_CACHE=false + ;; + p) + PRINT_CACHE=true + ;; + r) + ROOT=$OPTARG + if ! test -x $ROOT/usr/lib/libc.so; then + msg "${ROOT} does not appear to be a valid root directory" + exit 1 + fi + ;; + v) + VERBOSE=true + ;; + V) + PRINT_VERSION=true + ;; + X) + UPDATE_LINKS=false + ;; + c|i) + msg "Ignored option -${OPTION}" + ;; + \?) + msg "Invalid option -${OPTARG}" + cat >&2 <<- EOF + Usage: $ME [-DnNvX] [-C cache] [-f conf] [-r root] [dir...] + $ME [-v] -l lib... + $ME [-v] [-C cache] [-r root] -p + $ME -V + EOF + exit 1 + ;; + esac done -shift $(( $OPTIND - 1 )) -[ $# -gt 0 ] && scan_dirs "$@" +shift $((OPTIND-1)) + +BANNER="ldconfig ${VERSION} for musl $(musl_version)" +LDSO_CACHE="$ROOT$LDSO_CACHE" +LDSO_CONF="$ROOT$LDSO_CONF" +LDSO_PATH="$ROOT/etc/ld-musl-$(musl_arch).path" +LDSO_PATH_TMP="$LDSO_PATH.$$" + +if $PRINT_VERSION; then + echo "$BANNER" + exit 0 +elif $PRINT_CACHE; then + test -r "$LDSO_PATH" && cat "$LDSO_PATH" + exit 0 +fi + +$VERBOSE && echo "$BANNER" + +if $LIBRARY_MODE; then + for lib; do + soname=$(scanelf -qS "$ROOT$lib") + soname=${soname%% *} + done + exit 0 +fi + +# Update musl's list of library paths +if ! test -w "${LDSO_PATH%/*}"; then + msg "You do not have permission to update ${LDSO_PATH}" + exit 0 +fi +trap 'rm -f "$LDSO_PATH_TMP"' EXIT +read_ldso_conf "$LDSO_CONF" > "$LDSO_PATH_TMP" +$VERBOSE && msg "Writing ${LDSO_PATH}" +mv "$LDSO_PATH_TMP" "$LDSO_PATH" +trap - EXIT + +# Read the updated list of library paths +$ONLYARG_MODE || set -- "$@" $(cat "$LDSO_PATH") + +if $UPDATE_LINKS; then + for dir; do + # Packages are responsible for libraries in these directories + if test "$dir" = /lib || test "$dir" = /usr/lib; then + continue + fi + $VERBOSE && msg "Scanning ${ROOT}${dir}" + scanelf -qS "$ROOT$dir" | while read soname file; do + link=${file%/*}/$soname + test -f "$link" && continue + $VERBOSE && msg "Creating link ${link}" + ln -fns "${file##*/}" "$link" + done + done +fi + +if $UPDATE_CACHE && test $# -gt 0; then + touch "$ROOT$LDSO_CACHE" +fi diff --git a/system/musl/musl-utils.trigger b/system/musl/musl-utils.trigger new file mode 100755 index 000000000..ee3a3c053 --- /dev/null +++ b/system/musl/musl-utils.trigger @@ -0,0 +1,3 @@ +#!/bin/sh + +ldconfig -NX diff --git a/system/musl/ppc64-atomic.patch b/system/musl/ppc64-atomic.patch new file mode 100644 index 000000000..6e96a9048 --- /dev/null +++ b/system/musl/ppc64-atomic.patch @@ -0,0 +1,74 @@ +From 12817793301398241b6cb00c740f0d3ca41076e9 Mon Sep 17 00:00:00 2001 +From: Rich Felker <dalias@aerifal.cx> +Date: Fri, 14 Sep 2018 10:47:16 -0400 +Subject: fix broken atomic store on powerpc[64] + +in our memory model, all atomics are supposed to be full barriers; +stores are not release-only. this is important because store is used +as an unlock operation in places where it needs to acquire the waiter +count to determine if a futex wake is needed. at least in the +malloc-internal locks, but possibly elsewhere, soft deadlocks from +missing futex wake (breakable by poking the threads to restart the +syscall, e.g. by attaching a tracer) were reported to occur. + +once the malloc lock is replaced with Jens Gustedt's new lock +implementation (see commit 47d0bcd4762f223364e5b58d5a381aaa0cbd7c38), +malloc will not be affected by the issue, but it's not clear that +other uses won't be. reducing the strength of the ordering properties +required from a_store would require a thorough analysis of how it's +used. + +to fix the problem, I'm removing the powerpc[64]-specific a_store +definition; now, the top-level atomic.h will implement a_store using +a_barrier on both sides of the store. + +it's not clear to me yet whether there might be issues with the other +atomics. it's possible that a_post_llsc needs to be replaced with a +full barrier to guarantee the formal semanics we want, but either way +I think the difference is unlikely to impact the way we use them. +--- + arch/powerpc/atomic_arch.h | 8 -------- + arch/powerpc64/atomic_arch.h | 8 -------- + 2 files changed, 16 deletions(-) + +diff --git a/arch/powerpc/atomic_arch.h b/arch/powerpc/atomic_arch.h +index 5b65cde7..c2673919 100644 +--- a/arch/powerpc/atomic_arch.h ++++ b/arch/powerpc/atomic_arch.h +@@ -30,14 +30,6 @@ static inline void a_post_llsc() + __asm__ __volatile__ ("isync" : : : "memory"); + } + +-#define a_store a_store +-static inline void a_store(volatile int *p, int v) +-{ +- a_pre_llsc(); +- *p = v; +- a_post_llsc(); +-} +- + #define a_clz_32 a_clz_32 + static inline int a_clz_32(uint32_t x) + { +diff --git a/arch/powerpc64/atomic_arch.h b/arch/powerpc64/atomic_arch.h +index 17cababd..2bed82be 100644 +--- a/arch/powerpc64/atomic_arch.h ++++ b/arch/powerpc64/atomic_arch.h +@@ -48,14 +48,6 @@ static inline void a_post_llsc() + __asm__ __volatile__ ("isync" : : : "memory"); + } + +-#define a_store a_store +-static inline void a_store(volatile int *p, int v) +-{ +- a_pre_llsc(); +- *p = v; +- a_post_llsc(); +-} +- + #define a_crash a_crash + static inline void a_crash() + { +-- +cgit v1.2.1 + diff --git a/system/nvi/APKBUILD b/system/nvi/APKBUILD index 3f5bf0eb9..03a6d54e8 100644 --- a/system/nvi/APKBUILD +++ b/system/nvi/APKBUILD @@ -2,7 +2,7 @@ # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=nvi pkgver=1.79 -pkgrel=0 +pkgrel=1 pkgdesc="Berkeley text editor" url="https://sites.google.com/a/bostic.com/keithbostic/vi/" arch="all" @@ -33,7 +33,11 @@ package() { mkdir -p "$pkgdir" make prefix="$pkgdir"/usr install mv "$pkgdir"/usr/bin/ex "$pkgdir"/usr/bin/ex.nvi + mv "$pkgdir"/usr/share/man/cat1/ex.0 "$pkgdir"/usr/share/man/cat1/ex.nvi.0 + mv "$pkgdir"/usr/share/man/man1/ex.1 "$pkgdir"/usr/share/man/man1/ex.nvi.1 mv "$pkgdir"/usr/bin/view "$pkgdir"/usr/bin/view.nvi + mv "$pkgdir"/usr/share/man/cat1/view.0 "$pkgdir"/usr/share/man/cat1/view.nvi.0 + mv "$pkgdir"/usr/share/man/man1/view.1 "$pkgdir"/usr/share/man/man1/view.nvi.1 } sha512sums="d1d8adb2aeeee127f5e6fe5cc8b9e3e26fe22084075d17cceecd9cee7956131becee764d721af69626d60d6d75873d5073dc9817995f0274ed307e044921a1d0 nvi-1.79.tar.gz diff --git a/system/pcre/APKBUILD b/system/pcre/APKBUILD index f58826716..eb2d468a9 100644 --- a/system/pcre/APKBUILD +++ b/system/pcre/APKBUILD @@ -2,7 +2,7 @@ # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=pcre pkgver=8.42 -pkgrel=0 +pkgrel=1 pkgdesc="Perl-compatible regular expression library" url="http://pcre.sourceforge.net" arch="all" @@ -13,6 +13,7 @@ checkdepends="paxmark" subpackages="$pkgname-dev $pkgname-doc $pkgname-tools libpcrecpp libpcre16 libpcre32" source="ftp://ftp.csx.cam.ac.uk/pub/software/programming/$pkgname/$pkgname-$pkgver.tar.bz2 + ppc64-elfv2-fix.patch " # secfixes: @@ -25,7 +26,8 @@ builddir="$srcdir/$pkgname-$pkgver" build() { cd "$builddir" - ([ "$CARCH" = "s390x" ] || [ "$CARCH" = "ppc64" ]) && _enable_jit="" || _enable_jit="--enable-jit" + local _enable_jit="--enable-jit" + [ "$CARCH" = "s390x" ] && _enable_jit="" ./configure \ --build=$CBUILD \ --host=$CHOST \ @@ -87,4 +89,5 @@ tools() { mv "$pkgdir"/usr/bin "$subpkgdir"/usr/ } -sha512sums="b47b923108f6ee0c31409b79d0888314271b482a22590e164d02f21d2112fba22dd0342c24f9ba0f5fcc5b8c65550bad08c476e30a2fc79b34ecf4601ed82f3d pcre-8.42.tar.bz2" +sha512sums="b47b923108f6ee0c31409b79d0888314271b482a22590e164d02f21d2112fba22dd0342c24f9ba0f5fcc5b8c65550bad08c476e30a2fc79b34ecf4601ed82f3d pcre-8.42.tar.bz2 +61f06b2fb1d1d0d512056da4b8eb4905948b45a26ee177b0bcc6d25a75ffbdaff29c4b52ec461a7287b4f47ae20dbec31382188934e855c960f5877c31948a4b ppc64-elfv2-fix.patch" diff --git a/system/pcre/ppc64-elfv2-fix.patch b/system/pcre/ppc64-elfv2-fix.patch new file mode 100644 index 000000000..040f93ee9 --- /dev/null +++ b/system/pcre/ppc64-elfv2-fix.patch @@ -0,0 +1,25 @@ +diff -Naur pcre-8.42-original/sljit/sljitConfigInternal.h pcre-8.42/sljit/sljitConfigInternal.h +--- pcre-8.42-original/sljit/sljitConfigInternal.h 2018-03-13 16:15:23.000000000 +0000 ++++ pcre-8.42/sljit/sljitConfigInternal.h 2018-09-13 01:16:46.640000000 +0000 +@@ -530,7 +530,7 @@ + #endif /* !SLJIT_FUNC */ + + #ifndef SLJIT_INDIRECT_CALL +-#if ((defined SLJIT_CONFIG_PPC_64 && SLJIT_CONFIG_PPC_64) && (defined SLJIT_BIG_ENDIAN && SLJIT_BIG_ENDIAN)) \ ++#if ((defined SLJIT_CONFIG_PPC_64 && SLJIT_CONFIG_PPC_64) && ((defined _CALL_ELF && _CALL_ELF == 1) || (!defined _CALL_ELF))) \ + || ((defined SLJIT_CONFIG_PPC_32 && SLJIT_CONFIG_PPC_32) && defined _AIX) + /* It seems certain ppc compilers use an indirect addressing for functions + which makes things complicated. */ +diff -Naur pcre-8.42-original/sljit/sljitNativePPC_common.c pcre-8.42/sljit/sljitNativePPC_common.c +--- pcre-8.42-original/sljit/sljitNativePPC_common.c 2018-01-08 10:25:56.000000000 +0000 ++++ pcre-8.42/sljit/sljitNativePPC_common.c 2018-09-13 01:21:00.360000000 +0000 +@@ -42,7 +42,8 @@ + #include <sys/cache.h> + #endif + +-#if (defined SLJIT_LITTLE_ENDIAN && SLJIT_LITTLE_ENDIAN) ++#if (defined SLJIT_LITTLE_ENDIAN && SLJIT_LITTLE_ENDIAN) \ ++ || (defined _CALL_ELF && _CALL_ELF == 2) + #define SLJIT_PASS_ENTRY_ADDR_TO_CALL 1 + #endif + diff --git a/system/perl-encode-eucjpascii/APKBUILD b/system/perl-encode-eucjpascii/APKBUILD new file mode 100644 index 000000000..a1febaadb --- /dev/null +++ b/system/perl-encode-eucjpascii/APKBUILD @@ -0,0 +1,32 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=perl-encode-eucjpascii +pkgver=0.03 +pkgrel=0 +pkgdesc="Perl mapping of EUC-JP to ASCII" +url="https://metacpan.org/pod/Encode::EUCJPASCII" +arch="all" +license="Artistic-1.0-Perl AND GPL-2.0+" +depends="perl" +makedepends="perl-dev" +source="https://cpan.metacpan.org/authors/id/N/NE/NEZUMI/Encode-EUCJPASCII-0.03.tar.gz" +builddir="$srcdir/Encode-EUCJPASCII-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="0d7a06e1f5eaa20451ef360ef78372cb0ecf0c9a525efed5db0b55b0fc98b47c87eff4f9be069bdd7be50156f8edfc0cb9a257e9efd5a33130cc745dca12b7d8 Encode-EUCJPASCII-0.03.tar.gz" diff --git a/system/perl-encode-hanextra/APKBUILD b/system/perl-encode-hanextra/APKBUILD new file mode 100644 index 000000000..e82241be9 --- /dev/null +++ b/system/perl-encode-hanextra/APKBUILD @@ -0,0 +1,33 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=perl-encode-hanextra +pkgver=0.23 +pkgrel=0 +pkgdesc="Perl support for more Chinese encodings" +url="https://metacpan.org/pod/Encode::HanExtra" +arch="all" +license="Artistic-1.0-Perl AND GPL-2.0+" +depends="perl" +makedepends="perl-module-install perl-dev" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/A/AU/AUDREYT/Encode-HanExtra-$pkgver.tar.gz" +builddir="$srcdir/Encode-HanExtra-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="218083b9b3b4517cfc714169479cba0689a3586d9abb24bcc79d3401d37dd9412cb4e878b6aad06676d5c4f0e03cc69dcaf2e5f48036e2da6f336508c381e462 Encode-HanExtra-0.23.tar.gz" diff --git a/system/perl-encode-iso2022/APKBUILD b/system/perl-encode-iso2022/APKBUILD new file mode 100644 index 000000000..0c10974b1 --- /dev/null +++ b/system/perl-encode-iso2022/APKBUILD @@ -0,0 +1,33 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=perl-encode-iso2022 +pkgver=0.04 +pkgrel=0 +pkgdesc="Perl support for ISO-2022 encodings" +url="https://metacpan.org/pod/Encode::ISO2022" +arch="all" +license="Artistic-1.0-Perl AND GPL-2.0+" +depends="perl" +makedepends="perl-dev" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/N/NE/NEZUMI/Encode-ISO2022-$pkgver.tar.gz" +builddir="$srcdir/Encode-ISO2022-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="d63de568cf81b74c618ee6e5299ec012fc1937ffdcaec31a3684609fefb2797286322037fdb6358d50afbf860b868c0e04542179a670800f3f591d0b48a497f1 Encode-ISO2022-0.04.tar.gz" diff --git a/system/perl-encode-jisx0213/APKBUILD b/system/perl-encode-jisx0213/APKBUILD new file mode 100644 index 000000000..64dbf52f3 --- /dev/null +++ b/system/perl-encode-jisx0213/APKBUILD @@ -0,0 +1,33 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=perl-encode-jisx0213 +pkgver=0.04 +pkgrel=0 +pkgdesc="Perl support for JIS X 0213 encodings" +url="https://metacpan.org/pod/Encode::JISX0213" +arch="all" +license="Artistic-1.0-Perl AND GPL-2.0+" +depends="perl perl-encode-iso2022" +makedepends="perl-dev" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/N/NE/NEZUMI/Encode-JISX0213-$pkgver.tar.gz" +builddir="$srcdir/Encode-JISX0213-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="79a2d0639c0f9134ab7ff053b62cac950751cacb7ba91b7b6ff5c12787900c0ee7dc4037ff5819d11b1efc0bbb871926763930f6d5d40073c07a671cab44365a Encode-JISX0213-0.04.tar.gz" diff --git a/system/perl-file-remove/APKBUILD b/system/perl-file-remove/APKBUILD index 568b40155..6f626bd08 100644 --- a/system/perl-file-remove/APKBUILD +++ b/system/perl-file-remove/APKBUILD @@ -3,8 +3,8 @@ # Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> pkgname=perl-file-remove _pkgreal=File-Remove -pkgver=1.57 -pkgrel=1 +pkgver=1.58 +pkgrel=0 pkgdesc="Remove files and directories" url="https://metacpan.org/release/File-Remove" arch="noarch" @@ -40,4 +40,4 @@ package() { find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete } -sha512sums="dec41e9ffaabe953e72386fa0f5112fe6ebaac0fdf6752256749162d505aaf17b905500fcf52d0cb2ef944788b8e13cb3b2cf37be8671a47aab9081e228bc92e File-Remove-1.57.tar.gz" +sha512sums="2d616751328d57ff6975775189f92745fb3cb1d69675049ebddd96a2612c11c62c1995a70720efe4e73a9c10b9a2ec5528b90d468815e7c2ee395145241608e2 File-Remove-1.58.tar.gz" diff --git a/system/perl-io-socket-ssl/APKBUILD b/system/perl-io-socket-ssl/APKBUILD index fabe57860..939f97174 100644 --- a/system/perl-io-socket-ssl/APKBUILD +++ b/system/perl-io-socket-ssl/APKBUILD @@ -2,7 +2,7 @@ # Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> pkgname=perl-io-socket-ssl _pkgreal=IO-Socket-SSL -pkgver=2.059 +pkgver=2.060 pkgrel=0 pkgdesc="Perl module implementing SSL/TLS with IO::Socket interface" url="https://metacpan.org/release/IO-Socket-SSL" @@ -37,4 +37,4 @@ package() { find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete } -sha512sums="af3800d171036b026bcb502692f70d88c4a9f2546e465181ef9037467b942c94303840cc479403f5f0e6f0ad6b06918cbaf78f0b1447e5416594c819ed94a39b IO-Socket-SSL-2.059.tar.gz" +sha512sums="1a1e29f8a4b912bd3643509356c66b3a567ae41bb0ac9eb30f6ca97eb68bf9507e20c0fb8512f5dfd309accd6cfba61811b8d637f5e991aaa0a250a906fcb95c IO-Socket-SSL-2.060.tar.gz" diff --git a/system/perl-libwww/APKBUILD b/system/perl-libwww/APKBUILD index c31dc6cfe..78eee2e80 100644 --- a/system/perl-libwww/APKBUILD +++ b/system/perl-libwww/APKBUILD @@ -2,7 +2,7 @@ # Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> pkgname=perl-libwww _realname=libwww-perl -pkgver=6.35 +pkgver=6.36 pkgrel=0 pkgdesc="Perl module - World Wide Web library" url="https://metacpan.org/release/libwww-perl" @@ -15,7 +15,7 @@ depends="perl-http-date perl-http-cookies perl-net-http perl-http-daemon makedepends="perl-dev perl-test-fatal perl-test-requiresinternet" install= subpackages="$pkgname-doc" -source="$pkgname-$pkgver.tar.gz::https://cpan.metacpan.org/authors/id/E/ET/ETHER/libwww-perl-6.35.tar.gz" +source="$pkgname-$pkgver.tar.gz::https://cpan.metacpan.org/authors/id/E/ET/ETHER/libwww-perl-$pkgver.tar.gz" builddir="$srcdir/$_realname-$pkgver" build() { @@ -36,4 +36,4 @@ package() { find "$pkgdir" -name perllocal.pod -delete } -sha512sums="db7eea57fc85f80f351c3556f0747cf94100b5cd75a6fdd76006f6ada5c7087143660f724db70f3e5fe45f53cabce2dcbaece985551e74f546f71cd7d6d27e7a perl-libwww-6.35.tar.gz" +sha512sums="049da6dbd57dbfbceec878c1deb80e9eb3d45c0cc29535eb15804eb5038e0437122cd70ed92ed4313d1f1940cc34baa7a8f367401fb984c0f3688c31adf2c483 perl-libwww-6.36.tar.gz" diff --git a/system/perl-mime-charset/APKBUILD b/system/perl-mime-charset/APKBUILD new file mode 100644 index 000000000..7adb38810 --- /dev/null +++ b/system/perl-mime-charset/APKBUILD @@ -0,0 +1,33 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=perl-mime-charset +pkgver=1.012.2 +pkgrel=0 +pkgdesc="Perl database for MIME character sets" +url="https://metacpan.org/pod/MIME::Charset" +arch="noarch" +license="Artistic-1.0-Perl AND GPL-2.0+" +depends="perl perl-encode-eucjpascii perl-encode-jisx0213 perl-encode-hanextra + perl-pod2-base" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/N/NE/NEZUMI/MIME-Charset-$pkgver.tar.gz" +builddir="$srcdir/MIME-Charset-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="2273bf0b86eb042e5aa8bcf958eefefde7dce6701eea5ae8c0fe9997e7d3e90d837a7791ade30f84536a15116175c796daee60da6625f409d214844dfedfde4d MIME-Charset-1.012.2.tar.gz" diff --git a/system/perl-pod2-base/APKBUILD b/system/perl-pod2-base/APKBUILD new file mode 100644 index 000000000..9d19f9e5c --- /dev/null +++ b/system/perl-pod2-base/APKBUILD @@ -0,0 +1,32 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=perl-pod2-base +pkgver=0.043 +pkgrel=0 +pkgdesc="Base module for POD translations" +url="https://metacpan.org/pod/distribution/POD2-Base/lib/POD2/Base.pod" +arch="noarch" +license="Artistic-1.0-Perl AND GPL-2.0+" +depends="perl" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/F/FE/FERREIRA/POD2-Base-$pkgver.tar.gz" +builddir="$srcdir/POD2-Base-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="d535faae9f6722bc8defc016d5b13c8cd251589a28d244feb4394a1ad6235d4e95651e3dc87d13e424e32a54930528c9cf817f65f2eb56ecf53493570450b443 POD2-Base-0.043.tar.gz" diff --git a/system/perl-sgmls/APKBUILD b/system/perl-sgmls/APKBUILD new file mode 100644 index 000000000..111830823 --- /dev/null +++ b/system/perl-sgmls/APKBUILD @@ -0,0 +1,38 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=perl-sgmls +pkgver=1.1 +pkgrel=0 +pkgdesc="Perl module for processing output from sgmls and nsgmls" +url="https://metacpan.org/pod/release/RAAB/SGMLSpm-1.1/lib/SGMLS.pm" +arch="noarch" +license="GPL-2.0-only" +depends="perl" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/R/RA/RAAB/SGMLSpm-$pkgver.tar.gz" +sha512sums="0ca3f0f3265f20661ae88ad4764fbf82f226382f79f62c01653265cc7372524dfdf30ce5abffc0344624f5e6138e483952471f8c18d59794b40035af0b7526bc SGMLSpm-1.1.tar.gz" +builddir="$srcdir/SGMLSpm-$pkgver" + +prepare() { + chmod -R ug+w "$builddir" + cd "$builddir" + default_prepare +} + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + diff --git a/system/perl-unicode-linebreak/APKBUILD b/system/perl-unicode-linebreak/APKBUILD new file mode 100644 index 000000000..c981c7e78 --- /dev/null +++ b/system/perl-unicode-linebreak/APKBUILD @@ -0,0 +1,44 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=perl-unicode-linebreak +pkgver=2018.003 +_univer=8.0.0 # update this and unicode.org URLs if sombok is ever updated +pkgrel=0 +pkgdesc="Perl implementation of the UAX#14 Unicode line-breaking algorithm" +url="https://metacpan.org/release/Unicode-LineBreak" +arch="all" +license="Artistic-1.0-Perl AND GPL-2.0+" +depends="perl perl-mime-charset" +makedepends="perl-dev" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/N/NE/NEZUMI/Unicode-LineBreak-$pkgver.tar.gz + ftp://unicode.org/Public/$_univer/ucd/auxiliary/GraphemeBreakTest.txt + ftp://unicode.org/Public/$_univer/ucd/auxiliary/LineBreakTest.txt" +builddir="$srcdir/Unicode-LineBreak-$pkgver" + +prepare() { + cd "$builddir" + default_prepare + cp "$srcdir"/*Test.txt "$builddir"/test-data +} + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="37fa931978e1f88667b13ef25eb3b2414a6b055f03fec5925b3605e06026f06af332179e07f35d58f61924f43f305a5bc5ef1d76a61e1d56568abf60c9bf8fc7 Unicode-LineBreak-2018.003.tar.gz +cc5a4fa7d53c127f749d0c45582f55f391ffdcfa2f2c91c41cb0a4f71e566f1657d4653a6a251c6ae4f769420701df6e0cf184e55413c602cbc5191f9dc99201 GraphemeBreakTest.txt +d2ffb02fb4d402e6a90937743721692c008b78045e295bd77bcdfcabc99fb1fdbfb0b4679b410bce4487eba115a7ef2e6d6bb03b0a47a7220fa4308eafbac74e LineBreakTest.txt" diff --git a/system/po4a/APKBUILD b/system/po4a/APKBUILD index 7ef97b2bb..7ba0d5b11 100644 --- a/system/po4a/APKBUILD +++ b/system/po4a/APKBUILD @@ -1,18 +1,17 @@ # Contributor: Christian Kampka <christian@kampka.net> # Maintainer: pkgname=po4a -pkgver=0.51 -pkgrel=1 -_dlid=4214 +pkgver=0.54 +pkgrel=0 pkgdesc="Tools for helping translation of documentation" -url="https://po4a.alioth.debian.org" +url="https://po4a.org" arch="noarch" -options="!check" # comments changed format, it fails +options="!check" # massive incompetence license="GPL-2.0-only" -depends="perl gettext-tiny" +depends="perl gettext-tiny perl-sgmls perl-unicode-linebreak" makedepends="docbook-xsl perl-module-build diffutils" subpackages="$pkgname-doc $pkgname-lang" -source="https://alioth.debian.org/frs/download.php/file/${_dlid}/${pkgname}-${pkgver}.tar.gz" +source="https://github.com/mquinson/po4a/releases/download/v$pkgver/po4a-$pkgver.tar.gz" build() { cd "$builddir" @@ -32,4 +31,4 @@ package() { find ${pkgdir} -name .packlist -o -name perllocal.pod -delete } -sha512sums="dd4ecf4eab59c41466b11828b7a4e5e06cfa8b8a188f808b05ef5aa163ba463ebf44485225c4bbdefcdd42b56d5956d9bc96c34dba12557f098723b7edde18b6 po4a-0.51.tar.gz" +sha512sums="5d97a169c73bcb872247599af477ecca9112b9ff576dfb93a2aa06b9891464a1837d799304f1a3ea8344ad46a4529ec19568584b7914761deccc09a9099e3130 po4a-0.54.tar.gz" diff --git a/system/ruby/APKBUILD b/system/ruby/APKBUILD index 3849dffb9..87ba80226 100644 --- a/system/ruby/APKBUILD +++ b/system/ruby/APKBUILD @@ -21,11 +21,14 @@ # - CVE-2018-8778 # - CVE-2018-8779 # - CVE-2018-8780 +# 2.5.3-r0: +# - CVE-2018-16395 +# - CVE-2018-16396 # pkgname=ruby -pkgver=2.5.1 +pkgver=2.5.3 _abiver="${pkgver%.*}.0" -pkgrel=1 +pkgrel=0 pkgdesc="An object-oriented language for quick and easy programming" url="http://www.ruby-lang.org/" arch="all" @@ -311,7 +314,7 @@ _mvgem() { done } -sha512sums="31bacf58469953282cd5d8b51862dcf4b84dedb927c1871bc3fca32fc157fe49187631575a70838705fe246f4555647577a7ecc26894445a7d64de5503dc11b4 ruby-2.5.1.tar.xz +sha512sums="6dcae0e8d0bacdb2cbde636e2030596308b5af53f2eb85d3adccb67b02e6f8f9751e8117d12f8484829fdd9d995f6e327f701d9b433bcf94f1f59d13a1fd7518 ruby-2.5.3.tar.xz cfdc5ea3b2e2ea69c51f38e8e2180cb1dc27008ca55cc6301f142ebafdbab31c3379b3b6bba9ff543153876dd98ed2ad194df3255b7ea77a62e931c935f80538 rubygems-avoid-platform-specific-gems.patch 814fe6359505b70d8ff680adf22f20a74b4dbd3fecc9a63a6c2456ee9824257815929917b6df5394ed069a6869511b8c6dce5b95b4acbbb7867c1f3a975a0150 test_insns-lower-recursion-depth.patch 8d730f02f76e53799f1c220eb23e3d2305940bb31216a7ab1e42d3256149c0721c7d173cdbfe505023b1af2f5cb3faa233dcc1b5d560fa8f980c17c2d29a9d81 fix-get_main_stack.patch" diff --git a/system/shadow/APKBUILD b/system/shadow/APKBUILD index ca81d3995..32ec48eda 100644 --- a/system/shadow/APKBUILD +++ b/system/shadow/APKBUILD @@ -3,7 +3,7 @@ # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=shadow pkgver=4.6 -pkgrel=1 +pkgrel=2 pkgdesc="Login and password management utilities" url="https://github.com/shadow-maint/shadow" arch="all" @@ -90,7 +90,9 @@ package() { # Avoid conflict with man-pages. rm "$pkgdir"/usr/share/man/man3/getspnam.3* \ - "$pkgdir"/usr/share/man/man5/passwd.5* + "$pkgdir"/usr/share/man/man5/passwd.5* \ + "$pkgdir"/usr/share/man/man1/groups.1* \ + "$pkgdir"/usr/share/man/man8/nologin.8* } uidmap() { diff --git a/system/sqlite/APKBUILD b/system/sqlite/APKBUILD index 77eac113e..0510abfdb 100644 --- a/system/sqlite/APKBUILD +++ b/system/sqlite/APKBUILD @@ -1,7 +1,7 @@ # Contributor: Łukasz Jendrysik <scadu@yandex.com> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=sqlite -pkgver=3.24.0 +pkgver=3.25.2 _a=${pkgver%%.*} _b=${pkgver#${_a}.} _b=${_b%%.*} @@ -82,5 +82,5 @@ libs() { mv "$pkgdir"/usr/lib "$subpkgdir"/usr/ } -sha512sums="eaec866de26003ec36559aab15dd18dc0e6029453002a4eec5e176bb35a712b8b06c235436e6c1a226b67c7eb90d7a26c2b3b3d9a5e6e92a5af485236b77c878 sqlite-autoconf-3240000.tar.gz +sha512sums="5ef9a6dfbb0822257af1a3a379785a95ab02edecbbb53b57074ddd0b8dc294fc07cbb9a8a7acc4e1640fb1743525ed6331fecebbddce01bc017330b20e127ad9 sqlite-autoconf-3250200.tar.gz 5bde14bec5bf18cc686b8b90a8b2324c8c6600bca1ae56431a795bb34b8b5ae85527143f3b5f0c845c776bce60eaa537624104cefc3a47b3820d43083f40c6e9 license.txt" diff --git a/system/tzdata/APKBUILD b/system/tzdata/APKBUILD index 44656a543..3358c8e4d 100644 --- a/system/tzdata/APKBUILD +++ b/system/tzdata/APKBUILD @@ -2,8 +2,8 @@ # Contributor: Natanael Copa <ncopa@alpinelinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=tzdata -pkgver=2018e -_tzcodever=2018e +pkgver=2018f +_tzcodever=2018f _ptzver=0.5 pkgrel=0 pkgdesc="Time zone data" @@ -11,10 +11,8 @@ url="https://www.iana.org/time-zones" arch="all" license="Public-Domain" depends="" -depends_dev="" makedepends="" checkdepends="sp" -install="" subpackages="$pkgname-doc" source="http://www.iana.org/time-zones/repository/releases/tzcode$_tzcodever.tar.gz http://www.iana.org/time-zones/repository/releases/tzdata$pkgver.tar.gz @@ -60,7 +58,7 @@ package() { "$pkgdir"/usr/bin/posixtz } -sha512sums="4a245cae2d0922b24539a94cf4a8ccc2bba1ee696e0aaefecb41c7c8d78724a7fcea6039909336177b8b26fec8fc47719e3e56ca9839dbaf52f9a4fec84d4717 tzcode2018e.tar.gz -d059fcd381b2f6ecdafcd68fdd2a00451d1bf9b1affeb164ae7cabca2e022d499e77f0706ec3f3091b8e84c2211aa66da6c90937108771f1bf070cfebc105cae tzdata2018e.tar.gz +sha512sums="d4270918fbd8eb786e6f5cec9f06df6a850bbf1ec278f60ce493b6b7e10e2ad1388383edcd869f07bc78b9d99a123d6f54e74105cdd3d5cb6c98e11d3f043727 tzcode2018f.tar.gz +f876729419d45e2b861e564ec7d5940f34fab38c3fedc18852bb800010428c12506f71bde1f20feb23859065118ad4658d97efe89af6f4305cea2beafc515aeb tzdata2018f.tar.gz 68dbaab9f4aef166ac2f2d40b49366527b840bebe17a47599fe38345835e4adb8a767910745ece9c384b57af815a871243c3e261a29f41d71f8054df3061b3fd posixtz-0.5.tar.xz f54ce213d74c5a8387e1a7c56299bc6eee65a035772288222128abc249a112067b8791b88b45c342b2d4d8d12e9e4f1f2f5c92c5de67f8b6413b1ebf1d7de467 0001-posixtz-fix-up-lseek.patch" diff --git a/system/util-linux/APKBUILD b/system/util-linux/APKBUILD index 5486a2052..350ffe057 100644 --- a/system/util-linux/APKBUILD +++ b/system/util-linux/APKBUILD @@ -2,14 +2,14 @@ # Contributor: Leonardo Arena <rnalrd@alpinelinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=util-linux -pkgver=2.32 +pkgver=2.32.1 case $pkgver in *.*.*) _v=${pkgver%.*};; *.*) _v=$pkgver;; esac -pkgrel=1 +pkgrel=0 pkgdesc="Official Linux system management utilities" url="http://git.kernel.org/cgit/utils/util-linux/util-linux.git" arch="all" @@ -106,5 +106,5 @@ libfdisk() { mv "$pkgdir"/lib/libfdisk.so.* "$subpkgdir"/lib/ } -sha512sums="320c8d364f014aba16483dd26564d7cb47804337567c3e9c2dc495f3865f524e7480d3fec7ef5a05b6e99763b0278da70fffe6d2b88f3f1a832ada5932556482 util-linux-2.32.tar.xz +sha512sums="267fedae24a874ee4dc558081f6b8d07b33b955b0635f3348f021c111c17f2e95c01b2cbf909fe13c6ca448cbcf23c658c75f72f25749aa65e99f68fabb94698 util-linux-2.32.1.tar.xz 876bb9041eca1b2cca1e9aac898f282db576f7860aba690a95c0ac629d7c5b2cdeccba504dda87ff55c2a10b67165985ce16ca41a0694a267507e1e0cafd46d9 ttydefaults.h" diff --git a/system/vim/APKBUILD b/system/vim/APKBUILD index a9b40bf35..22f0bc47f 100644 --- a/system/vim/APKBUILD +++ b/system/vim/APKBUILD @@ -4,7 +4,7 @@ # Contributor: Natanael Copa <ncopa@alpinelinux.org> # Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> pkgname=vim -pkgver=8.1.0346 +pkgver=8.1.0429 pkgrel=0 pkgdesc="advanced text editor" url="http://www.vim.org" @@ -80,5 +80,5 @@ vimdiff() { mv "$pkgdir"/usr/bin/vimdiff "$subpkgdir"/usr/bin } -sha512sums="ce27d6d9215e80d84661aec4062f4730e4ed95cfbcedfdd46e73b5a5a1599ea709664c967c5e17ad3515341f79b59fb5c3ddc851cc84cd5717c0e68c6c82961c vim-8.1.0346.tar.gz +sha512sums="e9ece2616f56f6ef0a08a73e48c4a87f138e381ec24b960f5e634c2291d9aba2c2d11a7f80dbe60eb3ccaeb8ea45b7c07ec5ebd50f4f5f326ffd1aff3729a13b vim-8.1.0429.tar.gz 3a6c9bc187a6f45fd78e91dcc44d4d661c1ae1f2655e3a66bb36245ad1dc41e8d0e6061ec3aee6d323f96058b4a5501a87e3327e539cfd026f68cf81d455d721 vimrc" diff --git a/system/zsh/APKBUILD b/system/zsh/APKBUILD index 5aa3c9d60..5bc505946 100644 --- a/system/zsh/APKBUILD +++ b/system/zsh/APKBUILD @@ -3,8 +3,8 @@ # Contributor: Natanael Copa <ncopa@alpinelinux.org> # Maintainer: Dan Theisen <djt@hxx.in> pkgname=zsh -pkgver=5.5.1 -pkgrel=1 +pkgver=5.6.2 +pkgrel=0 pkgdesc="A very advanced and programmable command interpreter (shell)" url="http://www.zsh.org/" arch="all" @@ -12,7 +12,7 @@ license="Zsh AND BSD-3-Clause AND GPL-2.0+ AND GPL-2.0-only AND Artistic-1.0-Per depends="debianutils" # add-shell makedepends_host="ncurses-dev pcre-dev utmps-dev" install="zsh.post-install zsh.post-upgrade zsh.pre-deinstall" -source="http://www.zsh.org/pub/$pkgname-$pkgver.tar.gz +source="http://www.zsh.org/pub/$pkgname-$pkgver.tar.xz zprofile zshrc " @@ -24,6 +24,9 @@ subpackages="$pkgname-doc builddir="$srcdir/$pkgname-$pkgver" # secfixes: +# 5.6.2-r0: +# - CVE-2018-0502 +# - CVE-2018-13259 # 5.4.1-r1: # - CVE-2018-1083 # - CVE-2018-1100 @@ -53,7 +56,6 @@ prepare() { cd "$builddir" default_prepare - update_config_sub # Remove completions for other systems. cd Completion @@ -175,6 +177,6 @@ _submv() { mv "$pkgdir"/$path "$subpkgdir"/${path%/*}/ } -sha512sums="c4f7327a3f5480bd9a169fb07e34812e0106fa9de3b5f7d38bb0db85a3e4d01b9a4a8f35553da03a15d7d819108305cfaa2811c945273e2cac84512219e69ebb zsh-5.5.1.tar.gz +sha512sums="f0a49e41b55eb478692ab5471d7c9828956b7e96bc82944202b0ef1c49a889b21a0e7682aa5f59fd0054ebfd866c2244c8a622e7aa46c13038af5c226c48a3a2 zsh-5.6.2.tar.xz cbc184f0c4af1441eaad2a3f7255be9941c64bd5a05977aea5ca3a0a11a3d121c34c1fc9e633465eda087cd196dabf9591082117bbb42cc6e6bc9352ec2c207d zprofile cd3a8a6ada8f1ce97a6ca7af5a615092339cde00c20c657d7ce7bf4da57f7a774f2eb5c7d17bdf7e1a12e8b5d0d7878c977d87a0b068c2a869b91cec9ef8d69d zshrc" diff --git a/user/akonadi-contacts/APKBUILD b/user/akonadi-contacts/APKBUILD index c9d32132a..f94f0f710 100644 --- a/user/akonadi-contacts/APKBUILD +++ b/user/akonadi-contacts/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=akonadi-contacts -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="Library for integrating contact lists with Akonadi" url="https://www.kde.org/" @@ -42,4 +42,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="d27e2acafc5b1395f670683730d6dba59481807dca8c773fcf5ab3de70982b5eff1bd3802a38853bda60331466ecc7aac77eb916effad1e871b24b456533517a akonadi-contacts-18.08.1.tar.xz" +sha512sums="a93c609bed48281c6bac7eff49719d3a6e842ea99e8d20b5b2f3adc14b1e96c103abdfde6b1fd05bd2ab8c7c8e3c73117c32c68ba290af4eaaf5f72948547a81 akonadi-contacts-18.08.2.tar.xz" diff --git a/user/akonadi-mime/APKBUILD b/user/akonadi-mime/APKBUILD index 8f0c83a06..83e06427e 100644 --- a/user/akonadi-mime/APKBUILD +++ b/user/akonadi-mime/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=akonadi-mime -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="Libraries to implement basic MIME message handling" url="https://www.kde.org/" @@ -41,4 +41,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="67abb50167b2c8e98126346bcacbd55943d2b199603853125578154c39a390cd6cb8be169e4acb356669730a86a65c2e3fb7d7610d466c2b1dce7f689b39fec1 akonadi-mime-18.08.1.tar.xz" +sha512sums="790deaca989816dd1b875872eb92d8124b6c2f6b954afb06c33d85fb6de107692f2c77cae5b150bbc4e6a2165799e31f7f8af2f04f3f9c243bdc1b3b1a305e0a akonadi-mime-18.08.2.tar.xz" diff --git a/user/akonadi/APKBUILD b/user/akonadi/APKBUILD index c9532814c..6cc915787 100644 --- a/user/akonadi/APKBUILD +++ b/user/akonadi/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=akonadi -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="Libraries and storage system for PIM data" url="https://community.kde.org/KDE_PIM/Akonadi" @@ -49,5 +49,5 @@ package() { "$pkgdir"/usr/share/config/akonadi } -sha512sums="50d5711e2b78ed512efa771c4852885c5464dc7cea3563cabd79bcbff7847906f300c453f863b1f1b6d3d3508a060eb2a69e3e94f75d2079eca66a0ff15c581c akonadi-18.08.1.tar.xz +sha512sums="5a66145f02d1d531d2ca57f7b75a7ddaf4ad74217c39e7680d3f494d1001ef5c2f5e72eb1daaf8a2ec7ede48cea343dfe5af0f7b77345d8b470fef2b519095ed akonadi-18.08.2.tar.xz b0c333508da8ba5c447827b2bad5f36e3dc72bef8303b1526043b09c75d3055790908ac9cbb871e61319cfd4b405f4662d62d2d347e563c9956f4c8159fca9ab akonadiserverrc" diff --git a/user/alsa-lib/APKBUILD b/user/alsa-lib/APKBUILD index a6cc3701e..2ef986f59 100644 --- a/user/alsa-lib/APKBUILD +++ b/user/alsa-lib/APKBUILD @@ -1,6 +1,6 @@ # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=alsa-lib -pkgver=1.1.6 +pkgver=1.1.7 pkgrel=0 pkgdesc="Linux sound support system" url="http://www.alsa-project.org" @@ -47,6 +47,6 @@ package() { make -j1 DESTDIR="$pkgdir" install } -sha512sums="00117769a3d5c609019b975188d6e7a07d035bd0461f54c5f291e14667620506f1adb6d61350f78d54648850f31965aae3ab0e697bf9e09c988e2d15bf6b09f0 alsa-lib-1.1.6.tar.bz2 +sha512sums="7cc81464d876a137e9ac9700420bfff7cd528338bdc6e0bdbe313d45c5b97c81f1a9483df0556fe390d54a9db747fbec62e843b42d2cbc740d5a91b015714f6c alsa-lib-1.1.7.tar.bz2 3b37652d50809443b5f8e80f8d447108195b0cd66fd917805bb393fc091584b6f3dad4414f568742b61745617e7a695862058a0a0f93dcc31e4c97177a520352 ucm_add_limits_h.patch 8ef518517647b702da7f3573f4f3f10be8bbac3f092834b38c59521f7236acae258a9afe65eebfa415828135ac8a1836e3dce83ee3f0eaf4403158a48802144d remove-test.patch" diff --git a/user/alsa-plugins/APKBUILD b/user/alsa-plugins/APKBUILD new file mode 100644 index 000000000..b194830ad --- /dev/null +++ b/user/alsa-plugins/APKBUILD @@ -0,0 +1,69 @@ +# Contributor: Taner Tas <taner76@gmail.com> +# Maintainer: Max Rees <maxcrees@me.com> +pkgname=alsa-plugins +pkgver=1.1.7 +pkgrel=0 +pkgdesc="Advanced Linux Sound Architecture (ALSA) plugins" +url="https://www.alsa-project.org/main/index.php/Main_Page" +arch="all" +options="!check" # No test suite. +license="GPL-2.0+ AND LGPL-2.1+ AND BSD-3-Clause AND MIT" +makedepends="linux-headers alsa-lib-dev speexdsp-dev ffmpeg-dev + libsamplerate-dev pulseaudio-dev" +subpackages="$pkgname-lavcrate $pkgname-pulse $pkgname-a52" +source="ftp://ftp.alsa-project.org/pub/plugins/$pkgname-$pkgver.tar.bz2" + +prepare() { + default_prepare + update_config_sub +} + +build() { + cd "$builddir" + ./configure \ + --build=$CBUILD \ + --host=$CHOST \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --localstatedir=/var + make +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" -name '*.la' -type f -delete + rm "$pkgdir"/etc/alsa/conf.d/*.conf +} + +lavcrate() { + pkgdesc="FFmpeg samplerate conversion plugins for ALSA" + mkdir -p "$subpkgdir"/usr/lib/alsa-lib/ \ + "$subpkgdir"/usr/share/alsa/alsa.conf.d/ + mv "$pkgdir"/usr/lib/alsa-lib/*lavrate* "$subpkgdir"/usr/lib/alsa-lib/ + mv "$pkgdir"/usr/share/alsa/alsa.conf.d/*rate-lav* \ + "$subpkgdir"/usr/share/alsa/alsa.conf.d/ +} + +pulse() { + pkgdesc="PulseAudio support for ALSA-only applications" + mkdir -p "$subpkgdir"/usr/lib/alsa-lib/ \ + "$subpkgdir"/usr/share/alsa/alsa.conf.d/ + mv "$pkgdir"/usr/lib/alsa-lib/*pulse.so "$subpkgdir"/usr/lib/alsa-lib/ + mv "$pkgdir"/usr/share/alsa/alsa.conf.d/*pulse* \ + "$subpkgdir"/usr/share/alsa/alsa.conf.d/ + mv "$pkgdir"/etc/alsa/conf.d/*pulse* \ + "$subpkgdir"/usr/share/alsa/alsa.conf.d/ +} + +a52() { + pkgdesc="S16 linear sound format to A52 compressed format for SPDIF output" + mkdir -p "$subpkgdir"/usr/lib/alsa-lib/ \ + "$subpkgdir"/usr/share/alsa/alsa.conf.d/ + mv "$pkgdir"/usr/lib/alsa-lib/*a52.so "$subpkgdir"/usr/lib/alsa-lib/ + mv "$pkgdir"/usr/share/alsa/alsa.conf.d/*a52* \ + "$subpkgdir"/usr/share/alsa/alsa.conf.d/ +} + +sha512sums="c3bb22ec3c5a167fb246cfc94131d53800e321b486ab743c3395a9d91dee0ff9703f6e4a2feaea5a4ee42a7e486d835d48ab880c784c5c34bb4eb5e9ded06d8e alsa-plugins-1.1.7.tar.bz2" diff --git a/user/alsa-utils/APKBUILD b/user/alsa-utils/APKBUILD new file mode 100644 index 000000000..5f36f3f1c --- /dev/null +++ b/user/alsa-utils/APKBUILD @@ -0,0 +1,49 @@ +# Contributor: Leonardo Arena <rnalrd@alpinelinux.org> +# Maintainer: Max Rees <maxcrees@me.com> +pkgname=alsa-utils +pkgver=1.1.7 +pkgrel=0 +pkgdesc="Advanced Linux Sound Architecture (ALSA) utilities" +url="https://www.alsa-project.org/main/index.php/Main_Page" +arch="all" +options="!check" # No test suite. +license="GPL-2.0+ AND LGPL-2.0+ AND ISC AND GPL-2.0-only" +makedepends="alsa-lib-dev fftw-dev ncurses-dev pciutils-dev" +depends="bash dialog" +subpackages="$pkgname-doc $pkgname-dbg $pkgname-lang $pkgname-openrc" +replaces="alsaconf" +source="ftp://ftp.alsa-project.org/pub/utils/$pkgname-$pkgver.tar.bz2 + alsaconf.patch + alsa.initd + alsa.confd +" + +prepare() { + default_prepare + update_config_sub +} + +build() { + cd "$builddir" + ./configure \ + --build=$CBUILD \ + --host=$CHOST \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --localstatedir=/var \ + --disable-xmlto + make +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + install -Dm755 ../alsa.initd "$pkgdir"/etc/init.d/alsa + install -Dm644 ../alsa.confd "$pkgdir"/etc/conf.d/alsa +} + +sha512sums="5da9b03e219d67634307bd5bb06b76734db5286221bec11658ce9c4dfca8ed639a4155ed90450f1d6c8db322960bb023ced0873e276500ce24f14fab17ceeb65 alsa-utils-1.1.7.tar.bz2 +817215be6e9f103a8a187df5b1142c4d2e952f547a64579a9b8cfa58bd762d6a55bde75c0f66f018c0597744d07ccdb08216f7b368db464e36667cecedcc00f3 alsaconf.patch +8a52e6363d5dcfb16e1e607e1af3e46a2148989689e5ab04caf05f84dc68b34cc003b1cf0945ce2c3670cc7f3ef0e40824f689f1efa2d09177c82b13571a7168 alsa.initd +6e716e6230fd3d2c33e3cb2dbf572d632c9ac6452c1768388bea7d3ca22f7c72cf6bcd702580f45cb9089983582011c8b04cbdb4420d14fb988167b1391ea547 alsa.confd" diff --git a/user/alsa-utils/alsa.confd b/user/alsa-utils/alsa.confd new file mode 100644 index 000000000..d47edb124 --- /dev/null +++ b/user/alsa-utils/alsa.confd @@ -0,0 +1,15 @@ +# RESTORE_ON_START: +# Do you want to restore your mixer settings? If not, your cards will be +# muted. +# no - Do not restore state +# yes - Restore state + +RESTORE_ON_START="yes" + +# SAVE_ON_STOP: +# Do you want to save changes made to your mixer volumes when alsasound +# stops? +# no - Do not save state +# yes - Save state + +SAVE_ON_STOP="yes" diff --git a/user/alsa-utils/alsa.initd b/user/alsa-utils/alsa.initd new file mode 100644 index 000000000..e0a1215cf --- /dev/null +++ b/user/alsa-utils/alsa.initd @@ -0,0 +1,88 @@ +#!/sbin/openrc-run +# $Header: /var/cvsroot/gentoo-x86/media-sound/alsa-utils/files/alsasound.initd-r6,v 1.1 2014/06/23 21:34:42 ssuominen Exp $ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +alsastatedir=/var/lib/alsa +alsascrdir=/etc/alsa.d +alsahomedir=/var/run/alsasound + +extra_commands="save restore" + +depend() { + need localmount + after bootmisc modules isapnp coldplug hotplug +} + +restore() { + ebegin "Restoring Mixer Levels" + + checkpath -q -d -m 0700 -o root:root ${alsahomedir} || return 1 + + if [ ! -r "${alsastatedir}/asound.state" ] ; then + ewarn "No mixer config in ${alsastatedir}/asound.state, you have to unmute your card!" + eend 0 + return 0 + fi + + local cards="$(sed -n -e 's/ *\([[:digit:]]*\) .*/\1/p' /proc/asound/cards)" + local CARDNUM + for cardnum in ${cards}; do + [ -e /dev/snd/controlC${cardnum} ] || sleep 2 + [ -e /dev/snd/controlC${cardnum} ] || sleep 2 + [ -e /dev/snd/controlC${cardnum} ] || sleep 2 + [ -e /dev/snd/controlC${cardnum} ] || sleep 2 + alsactl -E HOME="${alsahomedir}" -I -f "${alsastatedir}/asound.state" restore ${cardnum} \ + || ewarn "Errors while restoring defaults, ignoring" + done + + for ossfile in "${alsastatedir}"/oss/card*_pcm* ; do + [ -e "${ossfile}" ] || continue + # We use cat because I'm not sure if cp works properly on /proc + local procfile=${ossfile##${alsastatedir}/oss} + procfile="$(echo "${procfile}" | sed -e 's,_,/,g')" + if [ -e /proc/asound/"${procfile}"/oss ] ; then + cat "${ossfile}" > /proc/asound/"${procfile}"/oss + fi + done + + eend 0 +} + +save() { + ebegin "Storing ALSA Mixer Levels" + + checkpath -q -d -m 0700 -o root:root ${alsahomedir} || return 1 + + mkdir -p "${alsastatedir}" + if ! alsactl -E HOME="${alsahomedir}" -f "${alsastatedir}/asound.state" store; then + eerror "Error saving levels." + eend 1 + return 1 + fi + + for ossfile in /proc/asound/card*/pcm*/oss; do + [ -e "${ossfile}" ] || continue + local device=${ossfile##/proc/asound/} ; device=${device%%/oss} + device="$(echo "${device}" | sed -e 's,/,_,g')" + mkdir -p "${alsastatedir}/oss/" + cp "${ossfile}" "${alsastatedir}/oss/${device}" + done + + eend 0 +} + +start() { + if [ "${RESTORE_ON_START}" = "yes" ]; then + restore + fi + + return 0 +} + +stop() { + if [ "${SAVE_ON_STOP}" = "yes" ]; then + save + fi + return 0 +} diff --git a/user/alsa-utils/alsaconf.patch b/user/alsa-utils/alsaconf.patch new file mode 100644 index 000000000..a7dec1c9a --- /dev/null +++ b/user/alsa-utils/alsaconf.patch @@ -0,0 +1,12 @@ +diff -Naur alsa-utils-1.0.9a-orig/alsaconf/alsaconf.in alsa-utils-1.0.9a/alsaconf/alsaconf.in +--- alsa-utils-1.0.9a-orig/alsaconf/alsaconf.in 2005-03-24 00:24:52.000000000 -0800 ++++ alsa-utils-1.0.9a/alsaconf/alsaconf.in 2005-07-18 09:25:02.000000000 -0700 +@@ -65,6 +58,8 @@ + distribution="redhat" + elif test -f /etc/fedora-release && grep -q "Fedora" /etc/fedora-release; then + distribution="fedora" ++elif test -f /etc/adelie-release; then ++ distribution="adelie" + elif [ -f /etc/slackware-version -o -f /etc/slamd64-version ]; then + distribution="slackware" + else diff --git a/user/analitza/APKBUILD b/user/analitza/APKBUILD index 0555f6dcb..0c846fcbe 100644 --- a/user/analitza/APKBUILD +++ b/user/analitza/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=analitza -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="Mathematical object library" url="https://api.kde.org/4.x-api/kdeedu-apidocs/analitza/html/index.html" @@ -41,4 +41,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="b04415ad46919a6c5e53a86218597d25648092058f8029947bf09cb9f0bd174314b76951d998bedf0ecc6e543ead91e14ec752c4a673c567a02ae7badc1450fc analitza-18.08.1.tar.xz" +sha512sums="7c90f8d738ed6ace4555580e2e29b6bdf3d291a8908b13b294f698811fa5a1c3cd414cab8c0bced3a59083cccc5bfecab5622a446df8572b1b974f6dc8938fed analitza-18.08.2.tar.xz" diff --git a/user/apache-httpd/APKBUILD b/user/apache-httpd/APKBUILD index 2eabdaf90..84db40dc6 100644 --- a/user/apache-httpd/APKBUILD +++ b/user/apache-httpd/APKBUILD @@ -2,7 +2,7 @@ # Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> pkgname=apache-httpd _pkgreal=httpd -pkgver=2.4.34 +pkgver=2.4.35 pkgrel=0 pkgdesc="Open-source HTTP server" url="https://httpd.apache.org" @@ -135,7 +135,7 @@ ldap() { "$subpkgdir"/usr/libexec/apache2 } -sha512sums="2bc09213f08a4722e305929fbac5f5060c7a8444704494894bb9b61f17e4d20bb6e3d663bb93fc5b2030b04a43fb12373d260cc291422b210b299725aaf3b5c8 httpd-2.4.34.tar.bz2 +sha512sums="f5d6a849850ebdf4e38b586c84cc1063d68ac4c6737895c9ac1c8796c22655681c55b4de77ed9f1f807338fdb9f7824faf911361aa31cc46f3c3a2cbabe20543 httpd-2.4.35.tar.bz2 c8bc2bb06ae51b0956e0ee673e80c444551c9b33dfcbb845106477c46d9e52786a8896022e1f00102264fecdf66e35e47fc6cf0abe9836fa536735cff4e6adf4 adelie.layout 336e81fa0d08f8fbe6243d52bd59b12cf2e925deb49b29d7a22953c5d40a951b6b753f51e5a396752cb0bbaf1cf25b1358902f375fb65639d00e62db7ae55ff2 apache-httpd.confd 9893248f1724748c9ef91171728b4c557ced7de543e23ed72cb75c02728048b2813ac99015a4a28e7984daa51faa6e42403c17b875539fe71c33424865eccecf apache-httpd.initd diff --git a/user/apr/APKBUILD b/user/apr/APKBUILD index 433424068..1d7ba9d30 100644 --- a/user/apr/APKBUILD +++ b/user/apr/APKBUILD @@ -1,7 +1,7 @@ # Maintainer: pkgname=apr -pkgver=1.6.3 -pkgrel=2 +pkgver=1.6.5 +pkgrel=0 pkgdesc="The Apache Portable Runtime" url="http://apr.apache.org/" arch="all" @@ -45,5 +45,5 @@ dev() { mv "$subpkgdir"/usr/lib/*.so* "$pkgdir"/usr/lib/ } -sha512sums="f6b8679ae7fafff793c825c78775c84a646267c441710a50664589850e13148719b4eab48ab6e7c95b7aed085cff831115687434a7b160dcc2faa0eae63ac996 apr-1.6.3.tar.bz2 +sha512sums="d3511e320457b5531f565813e626e7941f6b82864852db6aa03dd298a65dbccdcdc4bd580f5314f8be45d268388edab25efe88cf8340b7d2897a4dbe9d0a41fc apr-1.6.5.tar.bz2 9fb931e45f30fbe68af56849dfca148c09cdf85e300af14fb259cbd43470113288680bdb21189d4cf13f5ce95f8d28666822535e017e64ace5324339ab50cbef apr-1.6.2-dont-test-dlclose.patch" diff --git a/user/ark/APKBUILD b/user/ark/APKBUILD index cd9c11879..670c81594 100644 --- a/user/ark/APKBUILD +++ b/user/ark/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=ark -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="Graphical file compression/decompression utility with support for multiple formats" url="https://utils.kde.org/projects/ark/" @@ -42,4 +42,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="b4daf4f438a084df452063556a1754856a56a9a97db2c8379775d9803bc262447f7fed983c4a04e046f2a5e673ae43e4f3a902854912f79da14b9080c9970eaf ark-18.08.1.tar.xz" +sha512sums="5522fba835d75e317f6bcec40c2b8faf0fb7793a643637ca37d28698c0cf9cc639892f6dd272272095d74f648b9bfea7f5c67f0b2c41847e99564c9ec5f6954c ark-18.08.2.tar.xz" diff --git a/user/artikulate/APKBUILD b/user/artikulate/APKBUILD index 21e2974fc..ad93fcd47 100644 --- a/user/artikulate/APKBUILD +++ b/user/artikulate/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=artikulate -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="Pronunciation trainer for languages" url="https://www.kde.org/applications/education/artikulate/" @@ -41,4 +41,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="1f81e5ff112d0424550a7af09fc5bbbb4bc2eb926b7fc791493c34c2fa82f1e27e51d92467eed186ba4bcfa3e0f0bf65ad93b0c4c061067052eaa04a5c0bcc29 artikulate-18.08.1.tar.xz" +sha512sums="8a45ad103da588b15a23fe8f86b6f8787d0fe62b0407a5490e948671fcd9af4ac4cca41fd674c6feda6b1801f5fe6d18b74fb3c65e90f6cfa3044899c302ed27 artikulate-18.08.2.tar.xz" diff --git a/user/attica/APKBUILD b/user/attica/APKBUILD index e66239fc5..b1460bde5 100644 --- a/user/attica/APKBUILD +++ b/user/attica/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=attica -pkgver=5.50.0 +pkgver=5.51.0 pkgrel=0 pkgdesc="Qt 5-based implementation of Open Collaboration Services" url="https://www.kde.org/" @@ -42,4 +42,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="026fcb7d5de01840dfaa8f28f007cd1fba142af0e1b471b5c4f5ef479e4d5b169108703ddf30998ba3e33c054bd8a833ee3f8bc4ebac25fafdba196f93166b07 attica-5.50.0.tar.xz" +sha512sums="290cd42ab6081fa827560983830789a89c172327aac802058a34ba977108ead255632131f0d55c83aa99845374f98cd581b29157840b7418d6371b1f4ded5bfc attica-5.51.0.tar.xz" diff --git a/user/audacious-plugins/APKBUILD b/user/audacious-plugins/APKBUILD index 150efce23..8a4742252 100644 --- a/user/audacious-plugins/APKBUILD +++ b/user/audacious-plugins/APKBUILD @@ -2,8 +2,8 @@ # Contributor: William Pitcock <nenolod@dereferenced.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=audacious-plugins -pkgver=3.9 -pkgrel=2 +pkgver=3.10 +pkgrel=0 pkgdesc="Playlist-oriented media player (plugins)" url="https://audacious-media-player.org/" arch="all" @@ -17,6 +17,7 @@ makedepends="audacious-dev>=${pkgver%.*} libcue-dev libmms-dev libsamplerate-dev libsndfile-dev libxcomposite-dev libnotify-dev libogg-dev libvorbis-dev pulseaudio-dev alsa-lib-dev curl-dev flac-dev lame-dev neon-dev sdl-dev wavpack-dev + faad2-dev fluidsynth-dev qt5-qtmultimedia-dev automake autoconf" subpackages="$pkgname-lang" source="https://distfiles.audacious-media-player.org/$pkgname-$pkgver.tar.bz2" @@ -46,4 +47,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="00c8c53d69995ca1fedb91c7df609cc6c65b13e1af23b98a2fbda143c02ac554cc2c42c01f1c593af252e36bfb85b6324f2daca8632d3b672c69fb4dead2e3fa audacious-plugins-3.9.tar.bz2" +sha512sums="88dd93b5a7f6582ec42cf539d1000de0900cce683f4de85d8a17f57c7ba34545c6277882cad1505cb6682ee7b885ffcd1fe5675f7e24dc3e2a650615789d9d52 audacious-plugins-3.10.tar.bz2" diff --git a/user/audacious/APKBUILD b/user/audacious/APKBUILD index e4a2377c7..de1cc6993 100644 --- a/user/audacious/APKBUILD +++ b/user/audacious/APKBUILD @@ -2,8 +2,8 @@ # Contributor: William Pitcock <nenolod@dereferenced.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=audacious -pkgver=3.9 -pkgrel=2 +pkgver=3.10 +pkgrel=0 pkgdesc="A playlist-oriented media player with multiple interfaces" url="https://audacious-media-player.org/" arch="all" @@ -12,7 +12,9 @@ license="ISC" depends_dev="qt5-qtbase-dev dbus-glib-dev" makedepends="$depends_dev libguess-dev>=1.2 libxml2-dev autoconf automake" subpackages="$pkgname-dev $pkgname-doc $pkgname-lang" -source="https://distfiles.audacious-media-player.org/$pkgname-$pkgver.tar.bz2" +source="https://distfiles.audacious-media-player.org/$pkgname-$pkgver.tar.bz2 + qt-crash.patch + " prepare() { default_prepare @@ -38,4 +40,5 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="d8ef24c91c84bfa80831075cd9a12fc4bf02cec8bc96bcfa5a941254d194cccdc482482b1c015bc63e1142718c2221034c0f3a87e2cb6e4daf3b4cc428328aaa audacious-3.9.tar.bz2" +sha512sums="513d5f9608c1ebeae9cf9bb95128244e990e66c74bf49aff6570ec557d537809f3ebf93c400f5df2708ff61cf04ecc95da183b111f5a757735cef5a68dd9907f audacious-3.10.tar.bz2 +debc016b8a2a1313bdd4a840c103755a52a7e4a5e21970ca82031bac101253f04ade3e81aa648cf5f44b8225da6e1b245f995df6ea43f2ed1f2e757d774205d4 qt-crash.patch" diff --git a/user/audacious/qt-crash.patch b/user/audacious/qt-crash.patch new file mode 100644 index 000000000..4b7d42d3b --- /dev/null +++ b/user/audacious/qt-crash.patch @@ -0,0 +1,43 @@ +From 61471d51503736d868f5978f5b9a1471f3d2c9ce Mon Sep 17 00:00:00 2001 +From: "A. Wilcox" <AWilcox@Wilcox-Tech.com> +Date: Thu, 20 Sep 2018 12:36:16 -0500 +Subject: [PATCH] libaudqt: Fix crash when infopopup is being hidden + +Hovering over the track I wanted to listen to showed a tool tip (the +InfoPopup widget); if I moved the mouse in any way after the widget was +displayed, it would immediately crash with a segmentation fault. + +Valgrind showed that this was due to s_infopopup being deleted from an +event that involved it. By switching both `delete` to `deleteLater`, +the crash no longer occurs. + +Closes: #828. +--- + src/libaudqt/infopopup-qt.cc | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/src/libaudqt/infopopup-qt.cc b/src/libaudqt/infopopup-qt.cc +index fdbba41d2..cad4d16d5 100644 +--- a/src/libaudqt/infopopup-qt.cc ++++ b/src/libaudqt/infopopup-qt.cc +@@ -176,7 +176,7 @@ static InfoPopup * s_infopopup; + + static void infopopup_show (const String & filename, const Tuple & tuple) + { +- delete s_infopopup; ++ if(s_infopopup) s_infopopup->deleteLater(); + s_infopopup = new InfoPopup (filename, tuple); + + QObject::connect (s_infopopup, & QObject::destroyed, [] () { +@@ -206,7 +206,7 @@ EXPORT void infopopup_show_current () + + EXPORT void infopopup_hide () + { +- delete s_infopopup; ++ s_infopopup->deleteLater(); + } + + } // namespace audqt +-- +2.18.0 + diff --git a/user/awesome/APKBUILD b/user/awesome/APKBUILD new file mode 100644 index 000000000..aba8a99cb --- /dev/null +++ b/user/awesome/APKBUILD @@ -0,0 +1,46 @@ +# Contributor: Łukasz Jendrysik <scadu@yandex.com> +# Contributor: William Pitcock <nenolod@dereferenced.org> +# Contributor: Natanael Copa <ncopa@alpinelinux.org> +# Maintainer: Dan Theisen <djt@hxx.in> +pkgname=awesome +pkgver=4.2 +pkgrel=0 +pkgdesc="lua-configurable window manager framework" +url="http://awesome.naquadah.org/" +arch="all" +license="GPL-2.0+" +options="!check" # Tests require X and D-Bus +depends="imagemagick lua-lgi cairo-gobject pango" +makedepends="lua5.3 lua5.3-dev libxcb-dev pango-dev cairo-dev cmake gperf glib-dev + imlib2-dev libxdg-basedir-dev libev-dev startup-notification-dev + xcb-util-keysyms-dev xcb-util-image-dev xcb-util-dev xcb-util-wm-dev + dbus-dev gdk-pixbuf-dev xcb-util-cursor-dev libxkbcommon-dev + xcb-util-xrm-dev libexecinfo-dev xmlto" +checkdepends="xorg-server-xephyr" +subpackages="$pkgname-doc" +source="https://github.com/awesomeWM/$pkgname-releases/raw/master/$pkgname-$pkgver.tar.xz" + +build() { + # Awesome does not support in-tree builds + mkdir -p "$builddir/build" + cd "$builddir/build" + cmake -DCMAKE_INSTALL_PREFIX=/usr \ + -DSYSCONFDIR=/etc \ + -DCMAKE_BUILD_TYPE=Release \ + -DLUA_INCLUDE_DIR=/usr/include/lua5.3 \ + -DLUA_LIBRARIES=/usr/lib/lua5.3/liblua.so \ + .. + make +} + +check() { + cd "$builddir/build" + make check +} + +package() { + cd "$builddir/build" + make DESTDIR="$pkgdir" install +} + +sha512sums="134dd3625c86243861b3d0701cc8bfd8c00986d7027f0832016c3f5e59e6b9a1ef2f677bb0d1d66ece63449533e4b13d8d7388e96e6f9014212030a79f163e09 awesome-4.2.tar.xz" diff --git a/user/baloo/APKBUILD b/user/baloo/APKBUILD index 50cc78724..672b6d526 100644 --- a/user/baloo/APKBUILD +++ b/user/baloo/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=baloo -pkgver=5.50.0 +pkgver=5.51.0 pkgrel=0 pkgdesc="Semantic desktop search framework" url="https://www.kde.org/" @@ -56,5 +56,5 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="e516ef4361ed24ec4f524bb46e1fd6e62edf2d497a56538c920d07090fe295ca8dd2fb5661a99879cdd47ee2c3037c727026838681525a6f3596ba70669b901d baloo-5.50.0.tar.xz +sha512sums="1b01842a7c3d8a6226c9b01631b9f42492d15d84284385f2443c68dcf7ccf9c4615f8891c5beda23e425e8155869747410f466dcf6cd0893e1789dd7de34dea3 baloo-5.51.0.tar.xz 5622f1eb7a692c0ebd5d904b421612292375d3ea3f4ffdc4624fa8e2dc4a5fe56e5636f11a388224642be03c8fc28a678cffb9b167eb3de48ff4ae2979e6435e initialise-variable.patch" diff --git a/user/bind/APKBUILD b/user/bind/APKBUILD index 32ff1b23f..7e0b38e15 100644 --- a/user/bind/APKBUILD +++ b/user/bind/APKBUILD @@ -4,23 +4,27 @@ # Contributor: Natanael Copa <ncopa@alpinelinux.org> # Maintainer: Dan Theisen <djt@hxx.in> pkgname=bind -pkgver=9.12.1_p2 +pkgver=9.13.3 _p=${pkgver#*_p} _ver=${pkgver%_p*} _major=${pkgver%%.*} [ "$_p" != "$pkgver" ] && _ver="${_ver}-P$_p" -pkgrel=0 +pkgrel=1 pkgdesc="The ISC DNS server" url="https://www.isc.org/downloads/bind/" arch="all" # NOTE: The tests were not run because they require that # the IP addresses 10.53.0.1 through 10.53.0.8 are configured -# as alias addresses on the loopback interface. +# as alias addresses on the loopback interface. +# To test, run: +# cd $builddir +# sudo bin/tests/system/ifconfig.sh up +# make check options="!check" license="ISC AND Apache-2.0 AND OpenSSL AND BSD-2-Clause AND BSD-3-Clause AND BSD-4-Clause" pkgusers="named" pkggroups="named" -makedepends="bash libressl-dev libcap-dev perl linux-headers bsd-compat-headers libxml2-dev json-c-dev" +makedepends="bash openssl-dev libcap-dev perl linux-headers bsd-compat-headers libxml2-dev json-c-dev" install="$pkgname.pre-install" subpackages="$pkgname-doc $pkgname-dev $pkgname-libs $pkgname-openrc $pkgname-tools" source="https://ftp.isc.org/isc/${pkgname}${_major}/$_ver/$pkgname-$_ver.tar.gz @@ -36,6 +40,11 @@ source="https://ftp.isc.org/isc/${pkgname}${_major}/$_ver/$pkgname-$_ver.tar.gz builddir="$srcdir/$pkgname-$_ver" # secfixes: +# 9.13.3: +# - CVE-2018-5741 +# - CVE-2018-5740 +# 9.13.2: +# - CVE-2018-5738 # 9.12.1_p2-r0: # - CVE-2018-5737 # - CVE-2018-5736 @@ -138,7 +147,7 @@ tools() { done } -sha512sums="de47eef272c437316444c4f585a2f98ae9169fc118fd057464a5cd064bb9079ffc07145dabf388cd240f56a5ad6d3ad78cf8d98fc37609681eba5d87e18a4f9a bind-9.12.1-P2.tar.gz +sha512sums="980f294ef7b75c9a0917212e26300037ad6a33ff3565c099a6bad15350f0738491396a22a40dd552efd7fd25634f82f236abca4f83b4c8a9c580099851dd3c83 bind-9.13.3.tar.gz 7167dccdb2833643dfdb92994373d2cc087e52ba23b51bd68bd322ff9aca6744f01fa9d8a4b9cd8c4ce471755a85c03ec956ec0d8a1d4fae02124ddbed6841f6 bind.so_bsdcompat.patch 196c0a3b43cf89e8e3547d7fb63a93ff9a3306505658dfd9aa78e6861be6b226580b424dd3dd44b955b2d9f682b1dc62c457f3ac29ce86200ef070140608c015 named.initd 127bdcc0b5079961f0951344bc3fad547450c81aee2149eac8c41a8c0c973ea0ffe3f956684c6fcb735a29c43d2ff48c153b6a71a0f15757819a72c492488ddf named.confd diff --git a/user/blinken/APKBUILD b/user/blinken/APKBUILD index ebc355658..d5dc4f14e 100644 --- a/user/blinken/APKBUILD +++ b/user/blinken/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=blinken -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="Memory enhancement game" url="https://www.kde.org/applications/education/blinken/" @@ -40,4 +40,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="d5bc40e2a2aa9f0d0d350d6aef57456bebb5e91e9f1f512b90eba720bd4d4a58762a3e04378296b06374125c93820f201752939d4ca75cf81cffb023fa8591a7 blinken-18.08.1.tar.xz" +sha512sums="0151c57787ad188235fb0b42882a389b2dce698d215f1de30f1aa8c278fee81dbe57c868380d8cd60b8b24ce1e368b4e79e0e2f706407e236f2fcf10f0a0ead2 blinken-18.08.2.tar.xz" diff --git a/user/bomber/APKBUILD b/user/bomber/APKBUILD index a31ebc6a5..be67243ef 100644 --- a/user/bomber/APKBUILD +++ b/user/bomber/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=bomber -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="Arcade bombing game" url="https://www.kde.org/applications/games/bomber/" @@ -40,4 +40,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="17d09475097ed84a36da0eb769f1b77e2248ab253c4ce774e73b97146a08fbf7864e088af4e63cbafbdb3dd3aba5bb197af9451f9e767643faa5fe35d5cdd22f bomber-18.08.1.tar.xz" +sha512sums="b4966c070223ef29c99ba31fc93a9a4e3d8da6676c1253be3367fb4c57c7737cef5684bf740e3623df130282adc95a7d1ab7e5e64a9d87f4a9df7240b9eb1c50 bomber-18.08.2.tar.xz" diff --git a/user/bovo/APKBUILD b/user/bovo/APKBUILD index 5d2346ded..74a939c30 100644 --- a/user/bovo/APKBUILD +++ b/user/bovo/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=bovo -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="Gomoku or Connect Five game" url="https://www.kde.org/applications/games/bovo/" @@ -40,4 +40,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="fbd38aa34144aa2a7417b751cdc2b9c95aa8ddd1714b5d83e3fac0282f27d99dca32fcbafe493d5e8571268ebcb74142755fdaa56246fbe87eaadfbaa469d1d3 bovo-18.08.1.tar.xz" +sha512sums="5f4ee1ffc6c6894e5f47fa069cd7c491911db7ee8faf03d9761e270d8b29cce07c985bb9f5a1ef0fb38b93c61039f27a27a7dc3c9feed58f231086b060bc6de7 bovo-18.08.2.tar.xz" diff --git a/user/breeze-icons/APKBUILD b/user/breeze-icons/APKBUILD index 10cd74567..5c8107c45 100644 --- a/user/breeze-icons/APKBUILD +++ b/user/breeze-icons/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=breeze-icons -pkgver=5.50.0 +pkgver=5.51.0 pkgrel=0 pkgdesc="Modern, coherent icon set for desktops" url="https://www.kde.org/" @@ -46,4 +46,4 @@ dark() { mv "$pkgdir"/usr/share/icons/breeze-dark "$subpkgdir"/usr/share/icons/ } -sha512sums="b47061154606f60973a2232393aa36bf76d67936883bba6d55bb303450156cd07710c9436d91523cbcf347886e05975fcbb5cd3d7b6f6a30ae18dc89c2eb377c breeze-icons-5.50.0.tar.xz" +sha512sums="986834b17cde074a0513187b011774534a3a41e5256a61ef30f0b729f41415d0e69c9e9a8d5e8807260cf84483639acc0ff0fea522803e0094240b353aa46bd3 breeze-icons-5.51.0.tar.xz" diff --git a/user/bsdwhois/APKBUILD b/user/bsdwhois/APKBUILD new file mode 100644 index 000000000..d5222238d --- /dev/null +++ b/user/bsdwhois/APKBUILD @@ -0,0 +1,29 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: A. Wilcox <awilfox@adelielinux.org> +pkgname=bsdwhois +pkgver=1.43.2.1 +pkgrel=0 +pkgdesc="WHOIS client, allowing you to see details about domain names and IP subnets" +url="https://www.FreeBSD.org/" +arch="all" +options="!check" # No test suite. +license="BSD-4-Clause-UC" +depends="" +makedepends="bsd-compat-headers" +subpackages="$pkgname-doc" +source="http://utenti.gufi.org/~drizzt/codes/bsdwhois-$pkgver.tar.bz2" +builddir="$srcdir/$pkgname" + +build() { + cd "$builddir" + make +} + +package() { + cd "$builddir" + + install -D -m755 "$builddir"/whois "$pkgdir"/usr/bin/whois + install -D -m644 "$builddir"/whois.1 "$pkgdir"/usr/share/man/man1/whois.1 +} + +sha512sums="a69f9768a500ce08daa6cc0105c4d6591e4d33b570fa323166b06286b70ae7cc49cd1f77d04a411f558ea55c43316ffdbe897eb3c83ae331e2e4d9800a8a29d3 bsdwhois-1.43.2.1.tar.bz2" diff --git a/user/bzflag/APKBUILD b/user/bzflag/APKBUILD index 36f91c20e..23d1a30dd 100644 --- a/user/bzflag/APKBUILD +++ b/user/bzflag/APKBUILD @@ -1,8 +1,8 @@ # Contributor: Dan Theisen <djt@hxx.in> # Maintainer: Dan Theisen <djt@hxx.in> pkgname=bzflag -pkgver=2.4.12 -pkgrel=1 +pkgver=2.4.16 +pkgrel=0 pkgdesc="3D networked multi-player multi-platform tank battle game" url="https://www.bzflag.org/" arch="all" @@ -35,5 +35,5 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="9b5fa6b7ab7eb13043242defcc86cbed083e98306b2f611932b48d6d833a37bbe2ab05a0a3d1a2c9b861bfbd834fc6e86783ba82d8a841527d0eedb06f3bde9f bzflag-2.4.12.tar.bz2 -568e581dd82ca28aa43281a86867408c726ad4f2145f115a5d3535dbc472463c94288e9349ced715004191af0925daff7e3d55fe1db3ab35554352cc703d79b9 defineAddrLen.patch" +sha512sums="809adc39088f3fc8ca0d2ead9c7172cfbe582789bc80b3ac55fabe078a0868f0cf7cfa8027ac696718e9983a19386933fd370684a0bd33e63c3106f2ce8a9d63 bzflag-2.4.16.tar.bz2 +6c7a1873706140b1b0b254d6f8350f47adef8f499a7e7b3418331beda11bdc71e2e0dee74e17d4a955960de66adf90d22796b440e1afa78d328077235e2e3dde defineAddrLen.patch" diff --git a/user/bzflag/defineAddrLen.patch b/user/bzflag/defineAddrLen.patch index b1189dcac..a25eb96c3 100644 --- a/user/bzflag/defineAddrLen.patch +++ b/user/bzflag/defineAddrLen.patch @@ -1,11 +1,11 @@ ---- a/include/network.h 2018-04-23 23:17:50.969874036 -0700 -+++ b/include/network.h 2018-04-23 23:18:37.750554121 -0700 +--- bzflag-2.4.16/include/network.h.old 2018-09-27 19:16:48.015111918 -0700 ++++ bzflag-2.4.16/include/network.h 2018-09-27 19:17:06.195370763 -0700 @@ -57,7 +57,7 @@ # include <bstring.h> #endif -#if defined(BSD) || defined(__sun__) || defined(__GLIBC__) +#if defined(BSD) || defined(__sun__) || defined(__linux__) - # define AddrLen socklen_t + # define AddrLen socklen_t #elif defined (__APPLE__) # include <AvailabilityMacros.h> diff --git a/user/catfish/APKBUILD b/user/catfish/APKBUILD new file mode 100644 index 000000000..2dfb80c66 --- /dev/null +++ b/user/catfish/APKBUILD @@ -0,0 +1,30 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=catfish +pkgver=1.4.6 +pkgrel=0 +pkgdesc="File-searching application for the XFCE desktop environment" +url="https://xfce.org" +arch="noarch" +license="GPL-2.0-only" +depends="python3 py3-pygobject py3-pexpect" +makedepends="py3-distutils-extra intltool" +subpackages="$pkgname-doc $pkgname-lang" +source="http://archive.xfce.org/src/apps/catfish/1.4/catfish-$pkgver.tar.bz2" +sha512sums="1c50375a9b36554123327a138c50de47abbbfd2fb334b91773312e9001e4bbc936550c2b23ad658b29fe9f1537d59997513b01bf4e2c31ce0286f5650776f8f7 catfish-1.4.6.tar.bz2" + +build() { + cd "$builddir" + python3 setup.py build +} + +check() { + cd "$builddir" + python3 setup.py check +} + +package() { + cd "$builddir" + python3 setup.py install --prefix=/usr --root="$pkgdir" +} + diff --git a/user/ccid/APKBUILD b/user/ccid/APKBUILD index 925f36499..bddade1d6 100644 --- a/user/ccid/APKBUILD +++ b/user/ccid/APKBUILD @@ -1,7 +1,7 @@ # Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> # Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> pkgname=ccid -pkgver=1.4.29 +pkgver=1.4.30 pkgrel=0 pkgdesc="Open-source driver for Chip/SmartCard Interface Devices (CCID)" url="https://ccid.apdu.fr/" @@ -11,7 +11,6 @@ license="LGPL-2.1+ AND GPL-2.0+ AND ISC" depends="pcsc-lite" makedepends="pcsc-lite-dev libusb-dev" source="https://ccid.apdu.fr/files/ccid-$pkgver.tar.bz2" -sha512sums="9ff37acad086e959f660069b245fe06ecada140623025a19dfbff55edec71e1e72bce09ac4fc506ad985dd0831dafc6b12f5a5b109b38bf9ba7583856eb19418 ccid-1.4.29.tar.bz2" build() { cd "$builddir" @@ -31,3 +30,4 @@ package() { install -Dm644 src/92_pcscd_ccid.rules "$pkgdir"/lib/udev/rules.d/92_pcscd_ccid.rules } +sha512sums="1761a4053a99eb28184d0ffece951aec5d4b646080597b4ae36b18a31fb7a76c55fabfa57ee8e5d7f2db1a6e13d209f7fa995fe6ed067f44558bea34a26d46da ccid-1.4.30.tar.bz2" diff --git a/user/checkbashisms/APKBUILD b/user/checkbashisms/APKBUILD new file mode 100644 index 000000000..c85d7cc54 --- /dev/null +++ b/user/checkbashisms/APKBUILD @@ -0,0 +1,43 @@ +# Contributor: Natanael Copa <ncopa@alpinelinux.org> +# Maintainer: Max Rees <maxcrees@me.com> +pkgname=checkbashisms +pkgver=2.18.4 +pkgrel=0 +pkgdesc="Check shell scripts for POSIX compliance" +url="https://tracker.debian.org/pkg/devscripts" +arch="noarch" +license="GPL-2.0+" +makedepends="" +depends="perl" +checkdepends="shunit2" +subpackages="$pkgname-doc $pkgname-bash-completion:bashcomp:noarch" +source="http://cdn.debian.net/debian/pool/main/d/devscripts/devscripts_$pkgver.tar.xz" +builddir="$srcdir/devscripts-$pkgver" + +prepare() { + default_prepare + sed -i "s/###VERSION###/$pkgver/" "scripts/$pkgname.pl" +} + +check() { + cd "$builddir" + ./test/test_checkbashisms +} + +package() { + cd "$builddir" + install -Dm755 "scripts/$pkgname.pl" "$pkgdir/usr/bin/$pkgname" + install -Dm644 "scripts/$pkgname.1" "$pkgdir/usr/share/man/man1/$pkgname.1" +} + +bashcomp() { + pkgdesc="Bash completions for $pkgname" + depends="" + install_if="$pkgname=$pkgver-r$pkgrel bash-completion" + + cd "$builddir" + install -Dm644 "scripts/$pkgname.bash_completion" \ + "$subpkgdir/usr/share/bash-completion/completions/$pkgname" +} + +sha512sums="91a0ab2fa1f8d884d79f62d5cc8170c885c24af51de321a41f2111fe0fbc0fd8394e5fb3825eeee14d8090968be35761080a40cb55339b09522219d974f63897 devscripts_2.18.4.tar.xz" diff --git a/user/chrony/APKBUILD b/user/chrony/APKBUILD index 494b70946..5f460b632 100644 --- a/user/chrony/APKBUILD +++ b/user/chrony/APKBUILD @@ -3,7 +3,7 @@ # Contributor: Natanael Copa <ncopa@alpinelinux.org> # Maintainer: Dan Theisen <djt@hxx.in> pkgname=chrony -pkgver=3.3 +pkgver=3.4 pkgrel=0 _ver=${pkgver/_/-} pkgdesc="NTP client and server programs" @@ -20,6 +20,7 @@ subpackages="$pkgname-doc $pkgname-openrc" source="https://download.tuxfamily.org/$pkgname/$pkgname-$_ver.tar.gz fix-tests.patch max_resolve_interval.patch + chrony-include-util.patch chronyd.confd chronyd.initd chrony.logrotate @@ -89,9 +90,10 @@ package() { chown -R $pkgusers:$pkggroups "$pkgdir"/var/lib/chrony } -sha512sums="36975d863599141e8e5b071d35cf67326b27f5b0da7ec942dbb4530377d10472b0729eea632e0702718b515cb2d5fd41a7eba158e6dade7f05adfb1bdffa5df0 chrony-3.3.tar.gz +sha512sums="4fbb0311c8d363a87edd6f5d1be3d8554da169f260ba23c1ad9e8c567808258c6fd7513ba630d6fa27453ecfd81f0ece0e26d5ee2f98ca47fbc9887181a36918 chrony-3.4.tar.gz 067d47224a8c075ec8f63ffc58e65b030fdf228a72c4f03d50a2f2c17414da65bb5d27c7c2e4ba99e909f452041db83eaebe3c9e34c0c8fce18e05ebb489735e fix-tests.patch b26581ed32680585edea5b8163a0062a87f648394c0f363c77a7d01a36608fcf4d005d9e6ab179ed2827b8a08f598f7bad4801bb5e135cad5107eb77fb19b247 max_resolve_interval.patch +30f1ed28e0d956c994abd770c68634c7d5c69ded04a2fbfd387bbd8009bc0102ce57934ce41e468fc6b2c7f8fefdab73d97f6d6ff39ec93fffa6575fa1451fbd chrony-include-util.patch 1ebb72341b4421060a43d6db164d743de9144f1c23370e052f0db92a17e5e34f24ac98baddeb5dbfef27f67479142d448c4401d927394e55024760730a27e8de chronyd.confd 9a18c9744d7b78d9b9be3f0ae0b43cb988b294c342764802e0d5df835d450e748584c0b345f7161f14d84e15c8bbd491514ee9dc45e4a65f1276c52124d2e312 chronyd.initd ab38f06bf45888846778ad935e24abb30d13b6805e9a750bc694ff953695fa8c5b33aac560f5f7f96dc46031c1a38660e5c418b6fce6fb34a87908a9a3c99357 chrony.logrotate diff --git a/user/chrony/chrony-include-util.patch b/user/chrony/chrony-include-util.patch new file mode 100644 index 000000000..20b43c187 --- /dev/null +++ b/user/chrony/chrony-include-util.patch @@ -0,0 +1,10 @@ +--- chrony-3.4/hash_intmd5.c.old 2018-09-27 19:29:57.386348229 -0700 ++++ chrony-3.4/hash_intmd5.c 2018-09-27 19:30:07.696494803 -0700 +@@ -29,6 +29,7 @@ + #include "sysincl.h" + #include "hash.h" + #include "memory.h" ++#include "util.h" + + #include "md5.c" + diff --git a/user/clang/0001-Add-support-for-Ad-lie-Linux.patch b/user/clang/0001-Add-support-for-Ad-lie-Linux.patch new file mode 100644 index 000000000..f12adf513 --- /dev/null +++ b/user/clang/0001-Add-support-for-Ad-lie-Linux.patch @@ -0,0 +1,78 @@ +From 085ba75b10376fa55bb94cb6fa6c54526957732f Mon Sep 17 00:00:00 2001 +From: "A. Wilcox" <AWilcox@Wilcox-Tech.com> +Date: Thu, 13 Sep 2018 11:42:28 -0500 +Subject: [PATCH] =?UTF-8?q?Add=20support=20for=20Ad=C3=A9lie=20Linux?= +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +--- + include/clang/Driver/Distro.h | 5 +++++ + lib/Driver/Distro.cpp | 3 +++ + lib/Driver/ToolChains/Linux.cpp | 6 ++++-- + 3 files changed, 12 insertions(+), 2 deletions(-) + +diff --git a/include/clang/Driver/Distro.h b/include/clang/Driver/Distro.h +index 7b34a09256..7a3774a4f1 100644 +--- a/include/clang/Driver/Distro.h ++++ b/include/clang/Driver/Distro.h +@@ -26,6 +26,7 @@ public: + // NB: Releases of a particular Linux distro should be kept together + // in this enum, because some tests are done by integer comparison against + // the first and last known member in the family, e.g. IsRedHat(). ++ AdelieLinux, + AlpineLinux, + ArchLinux, + DebianLenny, +@@ -118,6 +119,10 @@ public: + return DistroVal >= UbuntuHardy && DistroVal <= UbuntuCosmic; + } + ++ bool IsAdelieLinux() const { ++ return DistroVal == AdelieLinux; ++ } ++ + bool IsAlpineLinux() const { + return DistroVal == AlpineLinux; + } +diff --git a/lib/Driver/Distro.cpp b/lib/Driver/Distro.cpp +index 2c4d44faf8..7ef35ab379 100644 +--- a/lib/Driver/Distro.cpp ++++ b/lib/Driver/Distro.cpp +@@ -130,6 +130,9 @@ static Distro::DistroType DetectDistro(vfs::FileSystem &VFS) { + if (VFS.exists("/etc/exherbo-release")) + return Distro::Exherbo; + ++ if (VFS.exists("/etc/adelie-release")) ++ return Distro::AdelieLinux; ++ + if (VFS.exists("/etc/alpine-release")) + return Distro::AlpineLinux; + +diff --git a/lib/Driver/ToolChains/Linux.cpp b/lib/Driver/ToolChains/Linux.cpp +index 2a87cb077c..85bcd8ed47 100644 +--- a/lib/Driver/ToolChains/Linux.cpp ++++ b/lib/Driver/ToolChains/Linux.cpp +@@ -234,7 +234,8 @@ Linux::Linux(const Driver &D, const llvm::Triple &Triple, const ArgList &Args) + ExtraOpts.push_back("now"); + } + +- if (Distro.IsOpenSUSE() || Distro.IsUbuntu() || Distro.IsAlpineLinux()) { ++ if (Distro.IsOpenSUSE() || Distro.IsUbuntu() || Distro.IsAlpineLinux() || ++ Distro.IsAdelieLinux()) { + ExtraOpts.push_back("-z"); + ExtraOpts.push_back("relro"); + } +@@ -268,7 +269,8 @@ Linux::Linux(const Driver &D, const llvm::Triple &Triple, const ArgList &Args) + // Hexagon linker/loader does not support .gnu.hash + if (!IsMips && !IsAndroid && !IsHexagon) { + if (Distro.IsRedhat() || Distro.IsOpenSUSE() || Distro.IsAlpineLinux() || +- (Distro.IsUbuntu() && Distro >= Distro::UbuntuMaverick)) ++ Distro.IsAdelieLinux() || ++ (Distro.IsUbuntu() && Distro >= Distro::UbuntuMaverick)) + ExtraOpts.push_back("--hash-style=gnu"); + + if (Distro.IsDebian() || Distro.IsOpenSUSE() || Distro == Distro::UbuntuLucid || +-- +2.18.0 + diff --git a/user/clang/0008-Fix-ClangConfig-cmake-LLVM-path.patch b/user/clang/0008-Fix-ClangConfig-cmake-LLVM-path.patch new file mode 100644 index 000000000..f1c1c2449 --- /dev/null +++ b/user/clang/0008-Fix-ClangConfig-cmake-LLVM-path.patch @@ -0,0 +1,25 @@ +From: Adeel <adeelbm@outlook.com> +Date: Sun, 6 May 2018 10:22:00 +0200 +Subject: [PATCH] Fix ClangConfig.cmake to look for LLVM-Config.cmake in correct location + +This results in the following change in the generated ClangConfig.cmake: + + find_package(LLVM REQUIRED CONFIG + - HINTS "${CLANG_INSTALL_PREFIX}/lib/cmake/llvm") + + HINTS "/usr/lib/llvm5/lib/cmake/llvm") + +This is needed e.g. for building lldb. + +See https://github.com/alpinelinux/aports/pull/2342 for more information. + +--- a/cmake/modules/CMakeLists.txt ++++ b/cmake/modules/CMakeLists.txt +@@ -39,7 +39,7 @@ foreach(p ${_count}) + get_filename_component(CLANG_INSTALL_PREFIX \"\${CLANG_INSTALL_PREFIX}\" PATH)") + endforeach(p) + set(CLANG_CONFIG_CMAKE_DIR "\${CLANG_INSTALL_PREFIX}/${CLANG_INSTALL_PACKAGE_DIR}") +-set(CLANG_CONFIG_LLVM_CMAKE_DIR "\${CLANG_INSTALL_PREFIX}/${LLVM_INSTALL_PACKAGE_DIR}") ++set(CLANG_CONFIG_LLVM_CMAKE_DIR "${llvm_cmake_builddir}") + set(CLANG_CONFIG_EXPORTS_FILE "\${CLANG_CMAKE_DIR}/ClangTargets.cmake") + set(CLANG_CONFIG_INCLUDE_DIRS + "\${CLANG_INSTALL_PREFIX}/include" diff --git a/user/clang/APKBUILD b/user/clang/APKBUILD new file mode 100644 index 000000000..a95693351 --- /dev/null +++ b/user/clang/APKBUILD @@ -0,0 +1,91 @@ +# Contributor Travis Tilley <ttilley@gmail.com> +# Maintainer: A. Wilcox <awilfox@adelielinux.org> +pkgname=clang +# Note: Update together with llvm. +pkgver=6.0.1 +pkgrel=0 +_llvmver=${pkgver%%.*} +pkgdesc="A C language family front-end for LLVM" +arch="all" +options="!dbg" +url="https://llvm.org/" +license="NCSA" +depends_dev="$pkgname=$pkgver-r$pkgrel" +makedepends="cmake isl-dev libedit-dev libexecinfo-dev libxml2-dev libxml2-utils + llvm-dev>=$_llvmver llvm-static>=$_llvmver llvm-test-utils>=$_llvmver" +subpackages="$pkgname-static $pkgname-dev $pkgname-doc $pkgname-libs + $pkgname-analyzer::noarch" +source="https://llvm.org/releases/$pkgver/cfe-$pkgver.src.tar.xz + 0001-Add-support-for-Ad-lie-Linux.patch + 0008-Fix-ClangConfig-cmake-LLVM-path.patch + use-llvm-lit.patch + secure-plt.patch + " +builddir="$srcdir/cfe-$pkgver.src" + +build() { + mkdir -p "$builddir"/build + cd "$builddir"/build + + cmake .. -Wno-dev \ + -DCMAKE_BUILD_TYPE=MinSizeRel \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DCMAKE_VERBOSE_MAKEFILE=OFF \ + -DCLANG_VENDOR=${DISTRO_SHORT_NAME:-Adélie} \ + -DCLANG_BUILD_EXAMPLES=OFF \ + -DCLANG_INCLUDE_DOCS=ON \ + -DCLANG_INCLUDE_TESTS=ON \ + -DCLANG_PLUGIN_SUPPORT=ON \ + -DLIBCLANG_BUILD_STATIC=ON \ + -DLLVM_ENABLE_EH=ON \ + -DLLVM_ENABLE_RTTI=ON + + make clang-tblgen + # too memory hungry + if [ -z "$JOBS" -o $JOBS -gt 32 ]; then + make -j32 + else + make + fi +} + +check() { + cd "$builddir"/build + [ -f bin/llvm-lit ] || ln -s /usr/bin/lit bin/llvm-lit + make check-clang +} + +package() { + cd "$builddir"/build + + make DESTDIR="$pkgdir" install + install -m 644 lib/libclang.a "$pkgdir"/usr/lib +} + +static() { + pkgdesc="Static libraries for clang" + + mkdir -p "$subpkgdir"/usr/lib + mv "$pkgdir"/usr/lib/*.a "$subpkgdir"/usr/lib/ + strip -d "$subpkgdir"/usr/lib/*.a +} + +analyzer() { + pkgdesc="Clang source code analysis framework" + depends="$pkgname=$pkgver-r$pkgrel perl python3" + + cd "$pkgdir" + + mkdir -p "$subpkgdir"/usr/bin \ + "$subpkgdir"/usr/libexec \ + "$subpkgdir"/usr/share/ + mv usr/bin/scan-* "$subpkgdir"/usr/bin/ + mv usr/libexec/*-analyzer "$subpkgdir"/usr/libexec/ + mv usr/share/scan-* "$subpkgdir"/usr/share/ +} + +sha512sums="f64ba9290059f6e36fee41c8f32bf483609d31c291fcd2f77d41fecfdf3c8233a5e23b93a1c73fed03683823bd6e72757ed993dd32527de3d5f2b7a64bb031b9 cfe-6.0.1.src.tar.xz +44aa152d50822a9e1a223b9e07e150ffa830c55deb4c4ca29e6218a0103eb263a00b41fd1ca84390e65fa08005901a0a0f88cf529bff8764220e99d06adef5fc 0001-Add-support-for-Ad-lie-Linux.patch +9485fe4fd6182df543735ed8f4ce618693d0faeafa86d3f9574a6c7abf50978e2d56e0a94be3ed94d515cc937c388d66ceff1bbc9bb120d371b6d3e95340da00 0008-Fix-ClangConfig-cmake-LLVM-path.patch +8a596e7369b5791e7e9c3278320aa5bac30d91f27d9a0df335ea862c359623869353d12145c3b64730f721600522f3acc5abe706428091482e0209e4ff308175 use-llvm-lit.patch +23c3de4f8cbfa115b337ee115b4f95eb1ce3b8c6451de590b0ecf196a4b3bc96ab1d88029edf7f0c51299dffb7b2a05cade9c64c72dba18d858686466bb82bad secure-plt.patch" diff --git a/user/clang/secure-plt.patch b/user/clang/secure-plt.patch new file mode 100644 index 000000000..c1b4cb1de --- /dev/null +++ b/user/clang/secure-plt.patch @@ -0,0 +1,70 @@ +Index: cfe/include/clang/Driver/Options.td +=================================================================== +--- cfe/include/clang/Driver/Options.td ++++ cfe/include/clang/Driver/Options.td +@@ -1957,6 +1957,7 @@ + def mno_altivec : Flag<["-"], "mno-altivec">, Group<m_ppc_Features_Group>; + def mvsx : Flag<["-"], "mvsx">, Group<m_ppc_Features_Group>; + def mno_vsx : Flag<["-"], "mno-vsx">, Group<m_ppc_Features_Group>; ++def msecure_plt : Flag<["-"], "msecure-plt">, Group<m_ppc_Features_Group>; + def mpower8_vector : Flag<["-"], "mpower8-vector">, + Group<m_ppc_Features_Group>; + def mno_power8_vector : Flag<["-"], "mno-power8-vector">, +Index: cfe/lib/Driver/ToolChains/Arch/PPC.h +=================================================================== +--- cfe/lib/Driver/ToolChains/Arch/PPC.h ++++ cfe/lib/Driver/ToolChains/Arch/PPC.h +@@ -29,10 +29,17 @@ + Hard, + }; + ++enum class ReadGOTPtrMode { ++ Bss, ++ SecurePlt, ++}; ++ + FloatABI getPPCFloatABI(const Driver &D, const llvm::opt::ArgList &Args); + + std::string getPPCTargetCPU(const llvm::opt::ArgList &Args); + const char *getPPCAsmModeForCPU(StringRef Name); ++ReadGOTPtrMode getPPCReadGOTPtrMode(const Driver &D, ++ const llvm::opt::ArgList &Args); + + void getPPCTargetFeatures(const Driver &D, const llvm::Triple &Triple, + const llvm::opt::ArgList &Args, +Index: cfe/lib/Driver/ToolChains/Arch/PPC.cpp +=================================================================== +--- cfe/lib/Driver/ToolChains/Arch/PPC.cpp ++++ cfe/lib/Driver/ToolChains/Arch/PPC.cpp +@@ -106,6 +106,16 @@ + ppc::FloatABI FloatABI = ppc::getPPCFloatABI(D, Args); + if (FloatABI == ppc::FloatABI::Soft) + Features.push_back("-hard-float"); ++ ++ ppc::ReadGOTPtrMode ReadGOT = ppc::getPPCReadGOTPtrMode(D, Args); ++ if (ReadGOT == ppc::ReadGOTPtrMode::SecurePlt) ++ Features.push_back("+secure-plt"); ++} ++ ++ppc::ReadGOTPtrMode ppc::getPPCReadGOTPtrMode(const Driver &D, const ArgList &Args) { ++ if (Args.getLastArg(options::OPT_msecure_plt)) ++ return ppc::ReadGOTPtrMode::SecurePlt; ++ return ppc::ReadGOTPtrMode::Bss; + } + + ppc::FloatABI ppc::getPPCFloatABI(const Driver &D, const ArgList &Args) { +Index: cfe/test/Driver/ppc-features.cpp +=================================================================== +--- cfe/test/Driver/ppc-features.cpp ++++ cfe/test/Driver/ppc-features.cpp +@@ -22,6 +22,10 @@ + // RUN: %clang -target powerpc-unknown-linux-gnu %s -msoft-float -mhard-float -### -o %t.o 2>&1 | FileCheck --check-prefix=CHECK-SOFTHARD %s + // CHECK-SOFTHARD-NOT: "-target-feature" "-hard-float" + ++// check -msecure-plt option for ppc32 ++// RUN: %clang -target powerpc-unknown-linux-gnu -msecure-plt %s -### -o %t.o 2>&1 | FileCheck --check-prefix=CHECK-SECUREPLT %s ++// CHECK-SECUREPLT: "-target-feature" "+secure-plt" ++ + // check -mfloat-abi=x option + // RUN: %clang -target powerpc-unknown-linux-gnu %s -mfloat-abi=x -### -o %t.o 2>&1 | FileCheck --check-prefix=CHECK-ERRMSG %s + // CHECK-ERRMSG: error: invalid float ABI '-mfloat-abi=x' diff --git a/user/clang/use-llvm-lit.patch b/user/clang/use-llvm-lit.patch new file mode 100644 index 000000000..0cbb84835 --- /dev/null +++ b/user/clang/use-llvm-lit.patch @@ -0,0 +1,11 @@ +--- cfe-6.0.1.src/test/CMakeLists.txt.old 2017-12-12 19:47:40.000000000 +0000 ++++ cfe-6.0.1.src/test/CMakeLists.txt 2018-09-13 17:01:03.690000000 +0000 +@@ -115,7 +115,7 @@ + + add_lit_testsuite(check-clang "Running the Clang regression tests" + ${CMAKE_CURRENT_BINARY_DIR} +- #LIT ${LLVM_LIT} ++ LIT ${LLVM_LIT} + PARAMS ${CLANG_TEST_PARAMS} + DEPENDS ${CLANG_TEST_DEPS} + ARGS ${CLANG_TEST_EXTRA_ARGS} diff --git a/user/clutter/APKBUILD b/user/clutter/APKBUILD new file mode 100644 index 000000000..d2a53b372 --- /dev/null +++ b/user/clutter/APKBUILD @@ -0,0 +1,38 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=clutter +pkgver=1.26.2 +pkgrel=0 +pkgdesc="OpenGL-based interactive canvas library" +url="https://gnome.org" +arch="all" +options="!check" # testsuite skipped all tests +license="LGPL-2.0+ AND MIT AND LGPL-2.1+ AND GPL-2.0+" +makedepends="glib-dev mesa-dev cogl-dev cairo-dev pango-dev json-glib-dev + atk-dev vala gobject-introspection-dev" +subpackages="$pkgname-dev $pkgname-doc $pkgname-lang" +source="https://download.gnome.org/sources/clutter/1.26/clutter-$pkgver.tar.xz" + +build() { + cd "$builddir" + ./configure \ + --build=$CBUILD \ + --host=$CHOST \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --localstatedir=/var + make +} + +check() { + cd "$builddir" + make check +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install +} + +sha512sums="c8008a1a1f111313d9abaff8d4415f112ddc32a02e08845f3735d33bb25b72b082f133daba06749bb9595eaf1ba83b308d30a413fbbe8dcdc1afdd7077a30937 clutter-1.26.2.tar.xz" diff --git a/user/cogl/APKBUILD b/user/cogl/APKBUILD new file mode 100644 index 000000000..4f1b2202f --- /dev/null +++ b/user/cogl/APKBUILD @@ -0,0 +1,42 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=cogl +pkgver=1.22.2 +pkgrel=0 +pkgdesc="GObject-based GL/GLES abstraction library" +url="https://gnome.org" +arch="all" +options="!check" # broken testsuite, no logs/messages to determine why +license="MIT AND SGI-B-2.0 AND BSD-3-Clause AND Public-Domain AND LGPL-2.0+ AND Apache-2.0" +makedepends="glib-dev libxcomposite-dev libxrandr-dev mesa-dev cairo-dev + pango-dev vala gobject-introspection-dev gdk-pixbuf-dev" +subpackages="$pkgname-dev $pkgname-lang" +source="https://download.gnome.org/sources/cogl/1.22/cogl-$pkgver.tar.xz + fix-wayland-egl-check.patch" + +build() { + cd "$builddir" + ./configure \ + --build=$CBUILD \ + --host=$CHOST \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --localstatedir=/var \ + --enable-kms-egl-platform=yes \ + --enable-xlib-egl-platform=yes + make +} + +check() { + cd "$builddir" + make check +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install +} + +sha512sums="2ec99f5ff22683d12925b9a1f748387b47c4506aaf3c5afec851b3b6fe6b7cdfd211fb7e4359bd7a1d1b7cb3cb7fbd257efbcb7d2941d0f133a60bad1c9645e3 cogl-1.22.2.tar.xz +73fa3a7258e2624d13abfe36259bef1a28e993653f0fdebfb4b0822752fa40a95399f4f9cd707873938bc6b8edcc7db46228247851471899f05a7e7132af58c7 fix-wayland-egl-check.patch" diff --git a/user/cogl/fix-wayland-egl-check.patch b/user/cogl/fix-wayland-egl-check.patch new file mode 100644 index 000000000..72ec484e5 --- /dev/null +++ b/user/cogl/fix-wayland-egl-check.patch @@ -0,0 +1,12 @@ +diff -Nurd cogl-1.22.2/cogl/winsys/cogl-winsys-egl.c cogl-1.22.2.new/cogl/winsys/cogl-winsys-egl.c +--- cogl-1.22.2/cogl/winsys/cogl-winsys-egl.c 2016-08-26 11:18:16.000000000 -0500 ++++ cogl-1.22.2.new/cogl/winsys/cogl-winsys-egl.c 2018-09-07 08:28:36.950138458 -0500 +@@ -1029,7 +1029,7 @@ + egl_ctx = EGL_NO_CONTEXT; + else + #endif +-#if COGL_HAS_WAYLAND_EGL_SERVER_SUPPORT ++#ifdef COGL_HAS_WAYLAND_EGL_SERVER_SUPPORT + /* The WL_bind_wayland_display spec states that EGL_NO_CONTEXT is to be used + * in conjunction with the EGL_WAYLAND_BUFFER_WL target */ + if (target == EGL_WAYLAND_BUFFER_WL) diff --git a/user/coverage/APKBUILD b/user/coverage/APKBUILD new file mode 100644 index 000000000..1cea3561d --- /dev/null +++ b/user/coverage/APKBUILD @@ -0,0 +1,31 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: A. Wilcox <awilfox@adelielinux.org> +pkgname=coverage +pkgver=4.5.1 +pkgrel=0 +pkgdesc="Code coverage testing for Python" +url="https://coverage.readthedocs.io/" +arch="all" +license="Apache-2.0" +depends="python3" +makedepends="python3-dev" +checkdepends="py3-tox" +subpackages="" +source="https://files.pythonhosted.org/packages/35/fe/e7df7289d717426093c68d156e0fd9117c8f4872b6588e8a8928a0f68424/coverage-$pkgver.tar.gz" + +build() { + cd "$builddir" + python3 setup.py build +} + +check() { + cd "$builddir" + python3 setup.py check +} + +package() { + cd "$builddir" + python3 setup.py install --prefix="/usr" --root="$pkgdir" +} + +sha512sums="82742a572549400778cad99057b1ced4c36b61e917983148eccc86bfa6340de8cfefc4f743e79ff876b641e0b9d21307dd6bde78638a6b20dd8ad215068dda25 coverage-4.5.1.tar.gz" diff --git a/user/cram/APKBUILD b/user/cram/APKBUILD new file mode 100644 index 000000000..73bb7c8cc --- /dev/null +++ b/user/cram/APKBUILD @@ -0,0 +1,36 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: A. Wilcox <awilfox@adelielinux.org> +pkgname=cram +pkgver=0.7 +pkgrel=0 +pkgdesc="Functional testing framework for command line applications" +url="https://bitheap.org/cram/" +arch="noarch" +license="GPL-2.0-only" +depends="python3" +makedepends="cmd:which" +checkdepends="coverage" +subpackages="" +source="https://bitheap.org/cram/cram-$pkgver.tar.gz + die-py2-die.patch + " + +build() { + cd "$builddir" + make PYTHON=python3 +} + +check() { + cd "$builddir" + # tests are not 100% coverage + make PYTHON=python3 check || true +} + +package() { + cd "$builddir" + # we can't use make because there's no --root option + python3 setup.py install --prefix=/usr --root="$pkgdir" +} + +sha512sums="9fa57e504abac8fd15bf5ff4a74405cb7acd10fd4c797adee87052a4f1c4e975bbc0f4219afd9485358b2c2939b48b3ffe538ae2abc6eea71e0ba8b458d50103 cram-0.7.tar.gz +6111cfbd5d99eeb77dde200469ef602d6d4e2ea9227c1457556a777e844525832956e1c3dbf7802f69bcf8706667163b82a2a60ee7e3ec098ef6ebf8e16ff84e die-py2-die.patch" diff --git a/user/cram/die-py2-die.patch b/user/cram/die-py2-die.patch new file mode 100644 index 000000000..be88fa475 --- /dev/null +++ b/user/cram/die-py2-die.patch @@ -0,0 +1,8 @@ +--- cram-0.7/scripts/cram.old 2014-12-21 11:58:22.000000000 +0000 ++++ cram-0.7/scripts/cram 2018-10-11 06:10:04.000000000 +0000 +@@ -1,4 +1,4 @@ +-#!/usr/bin/env python ++#!/usr/bin/env python3 + import sys + + import cram diff --git a/user/cups-filters/APKBUILD b/user/cups-filters/APKBUILD index 4a29feb9c..83a95a7ed 100644 --- a/user/cups-filters/APKBUILD +++ b/user/cups-filters/APKBUILD @@ -1,9 +1,9 @@ # Maintainer: Max Rees <maxcrees@me.com> pkgname=cups-filters -pkgver=1.21.2 +pkgver=1.21.3 pkgrel=0 pkgdesc="OpenPrinting CUPS filters and backends" -url="https://www.linuxfoundation.org/collaborate/workgroups/openprinting/pdf_as_standard_print_job_format" +url="https://wiki.linuxfoundation.org/openprinting/cups-filters" arch="all" license="GPL-2.0-only AND GPL-2.0+ AND GPL-3.0-only AND MIT" depends="poppler-utils bc ttf-freefont" @@ -12,7 +12,9 @@ makedepends="cups-dev libjpeg-turbo-dev poppler-dev zlib-dev libpng-dev coreutils gnutls-dev python3" checkdepends="ttf-dejavu" subpackages="$pkgname-dev $pkgname-doc $pkgname-libs" -source="https://www.openprinting.org/download/cups-filters/cups-filters-$pkgver.tar.xz" +source="https://www.openprinting.org/download/cups-filters/cups-filters-$pkgver.tar.xz + poppler-69-support.patch + " build() { cd "$builddir" @@ -63,4 +65,5 @@ libs() { mv "$pkgdir"/usr/lib/lib*.so.* "$subpkgdir"/usr/lib/ } -sha512sums="07672737108e1593374fa95582e2c8ad7a3fec6202846ba85224c1c89f65b7b89de96ebf67841ec5d948fe556dddd06ae6a58ad6c5c0a25a82ce643c9384aaf0 cups-filters-1.21.2.tar.xz" +sha512sums="2b00023ac4177046e3ab3c5b563b7bd92bb49e57e645e6e67e7b9358d00919e2d4ca43ef5d57684523d97f1f1df5d1014fc0a3a895476ce285ccb3ed2e3bc758 cups-filters-1.21.3.tar.xz +6db4cd5d809c7f9511db9cf8cf6b293e5b9143e8d4d7d954a1f7f206a1cbe8baedcc6306c1f8dc7df6dee74ce8c88ffec3dd7efa1f22c32ea37168971013c1ff poppler-69-support.patch" diff --git a/user/cups-filters/poppler-69-support.patch b/user/cups-filters/poppler-69-support.patch new file mode 100644 index 000000000..e9516d1bb --- /dev/null +++ b/user/cups-filters/poppler-69-support.patch @@ -0,0 +1,76 @@ +From 6b0747c1630dd973acd138f927dbded4ea45e360 Mon Sep 17 00:00:00 2001 +From: Olivier Schonken <olivier.schonken@gmail.com> +Date: Fri, 5 Oct 2018 12:05:31 +0200 +Subject: [PATCH] Poppler removed memCheck and gMemReport functions + +Only use gMemReport and memCheck functions if poppler version less +than 0.69.0 + +The poppler project removed the memCheck and gMemReport functions in +commits c362ab1b97f20c5b73b3bad8d52015f679178748 - Remove DEBUG_MEM +from Object since this uses RAII now and hence cannot leak. +(The existing tracking also is not thread-safe and hence unreliable.) + +and + +f89446f6917a869b0f1a80fcc8ce81a7213dade4 - Remove generic heap debugging +from gmem since external tools and compiler instrumentation achieve the +same effect. + +This commit solves https://github.com/OpenPrinting/cups-filters/issues/62 + +Signed-off-by: Olivier Schonken <olivier.schonken@gmail.com> +--- + filter/pdftoijs.cxx | 2 ++ + filter/pdftoopvp/pdftoopvp.cxx | 2 ++ + filter/pdftoraster.cxx | 2 ++ + 3 files changed, 6 insertions(+) + +diff --git a/filter/pdftoijs.cxx b/filter/pdftoijs.cxx +index 22bc33f4..dd6b6fa0 100644 +--- a/filter/pdftoijs.cxx ++++ b/filter/pdftoijs.cxx +@@ -503,9 +503,11 @@ int main(int argc, char *argv[]) { + ppdClose(ppd); + free(outputfile); + ++#if POPPLER_VERSION_MAJOR == 0 && POPPLER_VERSION_MINOR < 69 + // Check for memory leaks + Object::memCheck(stderr); + gMemReport(stderr); ++#endif + + return exitCode; + } +diff --git a/filter/pdftoopvp/pdftoopvp.cxx b/filter/pdftoopvp/pdftoopvp.cxx +index 024941ab..bf25983b 100644 +--- a/filter/pdftoopvp/pdftoopvp.cxx ++++ b/filter/pdftoopvp/pdftoopvp.cxx +@@ -763,9 +763,11 @@ fprintf(stderr,"JobInfo=%s\n",jobInfo); + err0: + delete globalParams; + ++#if POPPLER_VERSION_MAJOR == 0 && POPPLER_VERSION_MINOR < 69 + // check for memory leaks + Object::memCheck(stderr); + gMemReport(stderr); ++#endif + + } + /* muntrace(); */ +diff --git a/filter/pdftoraster.cxx b/filter/pdftoraster.cxx +index 0c63ab8d..4ebf02b0 100644 +--- a/filter/pdftoraster.cxx ++++ b/filter/pdftoraster.cxx +@@ -2162,9 +2162,11 @@ int main(int argc, char *argv[]) { + cmsDeleteTransform(colorTransform); + } + ++#if POPPLER_VERSION_MAJOR == 0 && POPPLER_VERSION_MINOR < 69 + // Check for memory leaks + Object::memCheck(stderr); + gMemReport(stderr); ++#endif + + return exitCode; + } diff --git a/user/ddrescue/APKBUILD b/user/ddrescue/APKBUILD new file mode 100644 index 000000000..f1c42d607 --- /dev/null +++ b/user/ddrescue/APKBUILD @@ -0,0 +1,37 @@ +# Contributor: Leonardo Arena <rnalrd@alpinelinux.org> +# Maintainer: Dan Theisen <djt@hxx.in> +pkgname=ddrescue +pkgver=1.23 +pkgrel=0 +pkgdesc="Data recovery tool for block devices with errors" +url="https://www.gnu.org/s/ddrescue/ddrescue.html" +license="GPL-3.0+" +arch="all !aarch64" +subpackages="$pkgname-doc" +source="http://ftp.gnu.org/gnu/$pkgname/$pkgname-$pkgver.tar.lz" + +build() { + cd "$builddir" + ./configure --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --infodir=/usr/share/info + make +} + +check() { + cd "$builddir" + + # XXX: Some tests fail on s390x, but only on builder, so ignore it for now. + case "$CARCH" in + s390x) make check || true;; + *) make check;; + esac +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install +} + +sha512sums="4f0b27067966b71efaae809d4f38714863cf3663f3b8c3f26055d482debb15c0fab77752411a9d242f18dbb8e4edc68494f866721dae9c95cfc5354439eaa656 ddrescue-1.23.tar.lz" diff --git a/user/dhcpcd/APKBUILD b/user/dhcpcd/APKBUILD index 856088ea3..e42405db5 100644 --- a/user/dhcpcd/APKBUILD +++ b/user/dhcpcd/APKBUILD @@ -3,7 +3,7 @@ # Contributor: Natanael Copa <ncopa@alpinelinux.org> # Maintainer: Dan Theisen <djt@hxx.in> pkgname=dhcpcd -pkgver=7.0.6 +pkgver=7.0.8 pkgrel=0 pkgdesc="RFC2131 compliant DHCP client" url="https://roy.marples.name/projects/dhcpcd" @@ -47,6 +47,6 @@ package() { "$pkgdir"/etc/init.d/dhcpcd } -sha512sums="5885739e60d6eb4fded117cb87f59a073ae6e8da8454dee56d8e7c5d33778e413e121d28a22163ebf31e4508a21d3a21c1d17ee6d4551081db2ee8e5384d44c9 dhcpcd-7.0.6.tar.xz +sha512sums="82cd845eb35670788b8f31b973945460f4c5f1a0a3025e3a452b79230dc30704e129d97140e6aec6d0281e0c89c333c0ce0af03c4767b2e5e66547ed3e071953 dhcpcd-7.0.8.tar.xz 1c19eed0f7a008ee96ea392beb327169ff8c83fc27fed20f65f05c9125f60629ebe3474c5e6a7cf4aeeea448fde4264c9b84916efacd67d47ab908c47b1fc3a5 fix-chrony-conf-location.patch e777432c2efc84285b41e63a4687f3bd543f6864218d037529ab78b5ad934de154f28f478bd9facb56628f2953aad8a932bc2eb8b1dfffa0ce2278ffcfc4d880 dhcpcd.initd" diff --git a/user/distcc/APKBUILD b/user/distcc/APKBUILD new file mode 100644 index 000000000..c81035ef7 --- /dev/null +++ b/user/distcc/APKBUILD @@ -0,0 +1,57 @@ +# Contributor: Brandon Bergren <git@bdragon.rtk0.net> +# Maintainer: +pkgname=distcc +pkgver=3.3.2 +pkgrel=0 +pkgdesc="Distributed builds for C, C++ and Objective C" +url="https://distcc.github.io/" +arch="all" +# BadLogFile_Case depends on non-root, because distcc will NOT drop privs +# and this test checks to ensure that distcc will abort if it can't access +# its log file. Also, distccd WILL privdrop to 'distcc' and will abort if the +# user does not exist. But if we don't run tests as root, we don't need the +# user on the build box. +options="!checkroot" +license="GPL-2.0+" +depends="python3" +makedepends="binutils-dev cmd:which popt-dev python3-dev" +subpackages="$pkgname-doc" +# These are needed if attempting to use checkroot. +#pkgusers="distcc" # distccd privdrop, see src/setuid.c +#pkggroups="distcc" +install="$pkgname.pre-install" +source="https://github.com/distcc/$pkgname/releases/download/v$pkgver/$pkgname-$pkgver.tar.gz + " +builddir=$srcdir/$pkgname + +build() { + cd "$builddir" + ./autogen.sh + ./configure \ + --build=$CBUILD \ + --host=$CHOST \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --infodir=/usr/share/info \ + --without-avahi + make +} + +check() { + cd "$builddir" + # Tests rely on invoking compiler, etc, with a normal path. + # The default "make check" target gets confused, so we manually + # invoke the test framework. + make check_programs + make PATH="$builddir:/usr/local/bin:/bin:/usr/bin" \ + TESTDISTCC_OPTS="" \ + maintainer-check-no-set-path +} + +package() { + cd "$builddir" + make install DESTDIR="$pkgdir" +} + +sha512sums="fdf11ed94ba50977b45e302179c5c4ba067cc3db37579cb8ed6d5b9487f8e3c89114f65af69333c38d374cf7634d7aef8d5a2d5c7fd8e9b1f4930c0897d6da10 distcc-3.3.2.tar.gz" diff --git a/user/distcc/distcc.pre-install b/user/distcc/distcc.pre-install new file mode 100644 index 000000000..ded93fd09 --- /dev/null +++ b/user/distcc/distcc.pre-install @@ -0,0 +1,6 @@ +#!/bin/sh + +addgroup -S distcc 2>/dev/null +adduser -S -D -H -h /var/lib/distcc -s /bin/false -G distcc -g distcc distcc 2>/dev/null + +exit 0 diff --git a/user/dmenu/APKBUILD b/user/dmenu/APKBUILD new file mode 100644 index 000000000..39a27bc5a --- /dev/null +++ b/user/dmenu/APKBUILD @@ -0,0 +1,36 @@ +# Contributor: Eivind Uggedal <eivind@uggedal.com> +# Contributor: Sören Tempel <soeren+alpine@soeren-tempel.net> +# Maintainer: Dan Theisen <djt@hxx.in> +pkgname=dmenu +pkgver=4.8 +pkgrel=0 +pkgdesc="Dynamic menu for X" +url="https://tools.suckless.org/dmenu/" +arch="all" +license="MIT OR X11" +depends="" +makedepends="libx11-dev libxinerama-dev libxft-dev" +options="!check" # This package has no testsuite +subpackages="$pkgname-doc" +source="https://dl.suckless.org/tools/$pkgname-$pkgver.tar.gz" + +prepare() { + default_prepare + sed -i -e '/CFLAGS/{s/-Os//;s/=/+=/}' \ + -e '/LDFLAGS/{s/-s//;s/=/+=/}' \ + "$builddir"/config.mk +} + +build() { + make X11INC=/usr/include/X11 \ + X11LIB=/usr/lib/X11 \ + FREETYPEINC=/usr/include/freetype2 \ + -C "$builddir" +} + +package() { + make DESTDIR=$pkgdir PREFIX=/usr \ + -C "$builddir" install +} + +sha512sums="fa2700018cfb912a21f867ef3ca771a58a25c2cb8e1fb37acef046bb15d8d8b92dcc5bfce486befae0f143495d0283910988e181a9eb143be3bb1b5be9738d77 dmenu-4.8.tar.gz" diff --git a/user/dolphin/APKBUILD b/user/dolphin/APKBUILD index c3f98b3b3..271e48a3f 100644 --- a/user/dolphin/APKBUILD +++ b/user/dolphin/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=dolphin -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="Lightweight desktop file manager" url="https://www.kde.org/applications/system/dolphin/" @@ -43,4 +43,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="1ad302f332bbae523db78db5048b910b182ef396a4222da0718d5b280be1adb54eba6abeeaa9facc3ecc49353b91e1aa67bb6f7429446589d6b51d0458a726ae dolphin-18.08.1.tar.xz" +sha512sums="44e2a55cfb80c267cd56e5da2af7c1446859adb100a68eda82d052279402cf8f7233e79522ecd8a2d098a8a51a977d3fec37da7d2544cca5f43212d4ef2a61fa dolphin-18.08.2.tar.xz" diff --git a/user/dragonplayer/APKBUILD b/user/dragonplayer/APKBUILD index 8bc3d7880..227351756 100644 --- a/user/dragonplayer/APKBUILD +++ b/user/dragonplayer/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=dragonplayer -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="Multimedia player with a focus on simplicity" url="https://www.kde.org/applications/multimedia/dragonplayer/" @@ -42,4 +42,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="db226628077572d78622fc891cb201cad1983c4940c0f82f20ec4a578a58cc711ec84e6c31d6372ac8e1da14d43e7501f1eb09416f6f0530f6e4addadfeaf309 dragon-18.08.1.tar.xz" +sha512sums="0856f9c0b61d53a81391e126ba6cf36339529fb9c6be9d9fcfe2617ff245c96f6814bbabeb06c4ea886ee720d70292b724a98993662d30e0e48cca47c0ff16c9 dragon-18.08.2.tar.xz" diff --git a/user/eigen/APKBUILD b/user/eigen/APKBUILD index 6a10bb59d..9dcef042e 100644 --- a/user/eigen/APKBUILD +++ b/user/eigen/APKBUILD @@ -1,7 +1,7 @@ # Contributor: Bradley J Chambers <brad.chambers@gmail.com> # Maintainer: pkgname=eigen -pkgver=3.3.4 +pkgver=3.3.5 pkgrel=1 pkgdesc="Eigen is a C++ template library for linear algebra" url="http://eigen.tuxfamily.org/index.php?title=Main_Page" @@ -11,7 +11,9 @@ license="MPL-2.0" depends="" makedepends="" subpackages="$pkgname-dev" -source="$pkgname-$pkgver.tar.gz::http://bitbucket.org/eigen/$pkgname/get/$pkgver.tar.gz" +source="$pkgname-$pkgver.tar.gz::http://bitbucket.org/eigen/$pkgname/get/$pkgver.tar.gz + prototype.patch + " prepare() { mv "$srcdir"/eigen-eigen-* "$builddir" # directory name contains hash @@ -24,4 +26,5 @@ package() { cp -r "$builddir"/unsupported "$pkgdir"/usr/include/eigen3 } -sha512sums="4077a5c3b95e3573774ccd3fe6c7233cb4b83db2358c19b43ea796925bd0201451d8632bddc5d68b1b57bbf67c5473a8908926eed065a745689a2acec9711d5c eigen-3.3.4.tar.gz" +sha512sums="32398be114924ed10ea063bc2b857176bf28b3d5fb915344e972765e3f72e7b72f4a4cee1742e70029e391fdd06f854aa2ab1613b107bd41fbfaf32f0c44463e eigen-3.3.5.tar.gz +bbecc8323dbbd37b624ae8816ce9c3ee3f1791b10847f5d56a957d00197fd13ff5cc2026b2eb644d5eb0f77f74fc20b25f98070befbd1c2dfd98e9c596778942 prototype.patch" diff --git a/user/eigen/prototype.patch b/user/eigen/prototype.patch new file mode 100644 index 000000000..d1205b7dd --- /dev/null +++ b/user/eigen/prototype.patch @@ -0,0 +1,22 @@ +From fc10b565bf15aa3438d3586e759ea88a8091411d Mon Sep 17 00:00:00 2001 +From: Gael Guennebaud <g.gael@free.fr> +Date: Fri, 8 Jun 2018 09:56:01 +0200 +Subject: [PATCH] fix prototype + +--- + unsupported/Eigen/src/IterativeSolvers/DGMRES.h | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/unsupported/Eigen/src/IterativeSolvers/DGMRES.h b/unsupported/Eigen/src/IterativeSolvers/DGMRES.h +index f40b80eda..be039e07f 100644 +--- a/unsupported/Eigen/src/IterativeSolvers/DGMRES.h ++++ b/unsupported/Eigen/src/IterativeSolvers/DGMRES.h +@@ -173,7 +173,7 @@ class DGMRES : public IterativeSolverBase<DGMRES<_MatrixType,_Preconditioner> > + /** + * Set the restart value (default is 30) + */ +- Index set_restart(const Index restart) { m_restart=restart; } ++ void set_restart(const Index restart) { m_restart=restart; } + + /** + * Set the number of eigenvalues to deflate at each restart diff --git a/user/ethtool/APKBUILD b/user/ethtool/APKBUILD new file mode 100644 index 000000000..8d4823e3d --- /dev/null +++ b/user/ethtool/APKBUILD @@ -0,0 +1,36 @@ +# Contributor: Natanael Copa <ncopa@alpinelinux.org> +# Maintainer: Max Rees <maxcrees@me.com> +pkgname=ethtool +pkgver=4.18 +pkgrel=0 +pkgdesc="Utility for controlling network drivers and hardware" +url="https://mirrors.edge.kernel.org/pub/software/network/ethtool/" +arch="all" +license="GPL-2.0-only AND GPL-2.0+" +makedepends="linux-headers" +subpackages="$pkgname-doc" +source="https://www.kernel.org/pub/software/network/ethtool/$pkgname-$pkgver.tar.xz" + +build() { + cd "$builddir" + ./configure \ + --build=$CBUILD \ + --host=$CHOST \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --localstatedir=/var + make +} + +check() { + cd "$builddir" + make check +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install +} + +sha512sums="e77f9967be4634955640d9dccbc539455d333bcbad61326617dffea32cfd13a72a7dda4087caf6fff41b49c9ce476435cc1310e131705d0ad402685e10b4fb0e ethtool-4.18.tar.xz" diff --git a/user/eudev/APKBUILD b/user/eudev/APKBUILD index ea5cdbd8b..766d99cfa 100644 --- a/user/eudev/APKBUILD +++ b/user/eudev/APKBUILD @@ -1,8 +1,8 @@ # Contributor: Sören Tempel <soeren+alpine@soeren-tempel.net> # Maintainer: pkgname=eudev -pkgver=3.2.5 -pkgrel=2 +pkgver=3.2.6 +pkgrel=0 pkgdesc="OpenRC compatible fork of systemd-udev" url="https://wiki.gentoo.org/wiki/Project:Eudev" arch="all" @@ -104,7 +104,7 @@ openrc() { default_openrc } -sha512sums="f73efde0d2dafcf79be4ebe9f6e6abb44329ea4ae45ccc4d9662c1d5ca6f4d45c27ca0b3135d7fa85f305bf7c5825dc1000079eb93fe7179c36a229fe63e372c eudev-3.2.5.tar.gz +sha512sums="874e7c51f4785e9030b09464fc7c1eb729968bec0ef1fda994ba75ce86f89efae5ca964b607d6f8d7c8a279b4c346716e7ba592233e4653f2090c943c438d930 eudev-3.2.6.tar.gz 683e3c26ca4f058303f8db7d4977e436d728386ee6866719c4f11ff31db27572d3f486f51d3173310e1ec2cf995fa4c396f2415bdf45dabdd80e6e55e798a314 default-rules.patch ff5928fd555e095d9f3234dd004ac4c5925405d308777e9b018e8e03112cd109935b51d75a3bc4a2a1018eb486e8a5e5ef6ee978860002a8fff93b116e9721f5 load-fbcon.patch 8ef1b911843ab13acb1c1b9b7a0a5cd76659f395c3db9e579429556f23eacebb414507dc0231e2455e7589bc70054fa1e6b6dd93dd833f7101c0da0597aabf88 udev-postmount.initd diff --git a/user/exo/APKBUILD b/user/exo/APKBUILD new file mode 100644 index 000000000..0137b543d --- /dev/null +++ b/user/exo/APKBUILD @@ -0,0 +1,38 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=exo +pkgver=0.12.3 +pkgrel=0 +pkgdesc="Support library for the XFCE desktop environment" +url="https://xfce.org" +arch="all" +license="LGPL-2.0+ AND GPL-2.0+" +makedepends="intltool glib-dev gtk+2.0-dev gtk+3.0-dev libxfce4util-dev + libxfce4ui-dev libice-dev" +subpackages="$pkgname-dev $pkgname-doc $pkgname-lang" +langdir="/usr/lib/locale" +source="http://archive.xfce.org/src/xfce/exo/0.12/exo-$pkgver.tar.bz2" + +build() { + cd "$builddir" + ./configure \ + --build=$CBUILD \ + --host=$CHOST \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --localstatedir=/var + make +} + +check() { + cd "$builddir" + make check +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install +} + +sha512sums="1a727050b822aa4bdfbce22c1668372b10ddfd9c3988f6949ee32a5c5213d90e20ebafc923193c70dea373d217994fb42101fe2aad7bf55c8e81f983c5a2106f exo-0.12.3.tar.bz2" diff --git a/user/extra-cmake-modules/APKBUILD b/user/extra-cmake-modules/APKBUILD index a7a22b7bc..e1a6dfaaa 100644 --- a/user/extra-cmake-modules/APKBUILD +++ b/user/extra-cmake-modules/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=extra-cmake-modules -pkgver=5.50.0 +pkgver=5.51.0 pkgrel=0 pkgdesc="CMake modules needed for KDE development" url="https://www.kde.org/" @@ -40,5 +40,5 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="0e56b1137a9cd8ff6a25b7790986713fb2358d8ffa1a175ca87054790440e528a37f56e2785190b40a469fd4d32bc731d4d24f55d6557515c8edb311abf3a56c extra-cmake-modules-5.50.0.tar.xz +sha512sums="71b809139a844f324054ac52946820db8fe0662a670127d8c71f133b498b8d6bb62f61f115d1f49d06fb34e936a5fa38b465a3bea5b166cfd546a185cc1f1517 extra-cmake-modules-5.51.0.tar.xz 0af703a9d4696080bc52032d1d341e86fd142bef91f3c1afa9cf180e1cf2ff3bba2ea47fd36b8f52135f056a202c58a08e7c7525f671d6993839865ce6aef0f6 posix.patch" diff --git a/user/faad2/APKBUILD b/user/faad2/APKBUILD index 0fe0e2601..061255a83 100644 --- a/user/faad2/APKBUILD +++ b/user/faad2/APKBUILD @@ -1,7 +1,7 @@ # Maintainer: pkgname=faad2 -pkgver=2.7 -pkgrel=9 +pkgver=2.8.8 +pkgrel=0 pkgdesc="ISO AAC audio decoder" url="http://www.audiocoding.com/" arch="all" @@ -10,23 +10,10 @@ license="GPL-2.0+" subpackages="$pkgname-dev $pkgname-doc" depends="" makedepends="autoconf automake libtool" -source="http://downloads.sourceforge.net/sourceforge/faac/$pkgname-$pkgver.tar.bz2 - automake.patch" - -prepare() { - cd "$builddir" - update_config_sub - default_prepare -} +source="https://downloads.sourceforge.net/sourceforge/faac/$pkgname-$pkgver.tar.gz" build() { cd "$builddir" - - # manfile has bad name - mv frontend/faad.man frontend/faad.1 && \ - sed -i -e 's:faad\.man:faad.1:' frontend/Makefile.am - - sh bootstrap ./configure \ --build=$CBUILD \ --host=$CHOST \ @@ -37,8 +24,6 @@ build() { package() { cd "$builddir" make DESTDIR="$pkgdir" install - install -m644 common/mp4ff/mp4ff_int_types.h "$pkgdir"/usr/include/mp4ff_int_types.h } -sha512sums="0934aa9b752b5d86879d94156dea02595e2428340d0cf44202ffea369895b21a9aadbb4833a39212c9a79429b409eb108706b1f523bfddd32809b53730d50947 faad2-2.7.tar.bz2 -0b66cfa240529a2139b47cb8dc87c4b43a451b906d66ef7d211fb509358b1493ceee13894516c2f552b33eae74640910e97957caa49dade2597ebd9777152a9e automake.patch" +sha512sums="3275d292b2a9fe984842962f4d81202894bddd17033f7cd6df95466554cc968dfcbf2890ae8b1df37da0cd25d645cca0a687f07e39b9fc37dd004fd5956a82af faad2-2.8.8.tar.gz" diff --git a/user/featherpad/APKBUILD b/user/featherpad/APKBUILD index df5d4b08f..82071dcc3 100644 --- a/user/featherpad/APKBUILD +++ b/user/featherpad/APKBUILD @@ -1,7 +1,7 @@ # Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> # Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> pkgname=featherpad -pkgver=0.9.0 +pkgver=0.9.1 pkgrel=0 pkgdesc="Featureful Qt-based text editor" url="https://github.com/tsujan/FeatherPad" @@ -31,4 +31,4 @@ package() { make INSTALL_ROOT="$pkgdir" PREFIX=/usr install } -sha512sums="7d898a4c9cce49c3e8dd624b1561559d40a4aae757ec1500719a5dd0dc4df055689735a36b048fb34f644c54a41ec1ee473d6b46bd022ccb00c4ea375664199a FeatherPad-0.9.0.tar.gz" +sha512sums="5a301757ed320f3eff157821b0844b86c74322887462c60e1feb79790898ce5b1ba2e80cb5e1440d5cfa350f6dbb390d10e27aa05f953e49bfd6720c89c610ea FeatherPad-0.9.1.tar.gz" diff --git a/user/feh/APKBUILD b/user/feh/APKBUILD index f6a26f433..208f9e87e 100644 --- a/user/feh/APKBUILD +++ b/user/feh/APKBUILD @@ -1,7 +1,7 @@ # Contributor: Max Rees <maxcrees@me.com> # Maintainer: Max Rees <maxcrees@me.com> pkgname=feh -pkgver=2.27.1 +pkgver=2.28 pkgrel=0 pkgdesc="feh is a fast, lightweight image viewer which uses imlib2" url="https://feh.finalrewind.org/" @@ -34,4 +34,4 @@ package() { install } -sha512sums="271aa2fd5f0bdd646b46ca746ef38b0a427a64981b0f1ebaf28a258448a9082ecff0b2d0fce215b4a94765ff4299d0d3bdbb97bca284d4ef6a80ebd7a4ee4be1 feh-2.27.1.tar.bz2" +sha512sums="565a5aa0ce1c29fb2f09995283dbf2e12e0f228294df7c1b744a545e4f550126e0b327e9903c9eb35cb7dbd96d69e4653c57f3b3cb2dc2475680b3c62b71e1d8 feh-2.28.tar.bz2" diff --git a/user/ffmpegthumbnailer/APKBUILD b/user/ffmpegthumbnailer/APKBUILD new file mode 100644 index 000000000..ae8a1c7e0 --- /dev/null +++ b/user/ffmpegthumbnailer/APKBUILD @@ -0,0 +1,42 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=ffmpegthumbnailer +pkgver=2.2.0 +pkgrel=0 +pkgdesc="Thumbnail generator based on FFMPEG" +url="https://github.com/dirkvdb/ffmpegthumbnailer" +arch="all" +license="GPL-2.0+" +makedepends="ffmpeg-dev libjpeg-turbo-dev libpng-dev" +subpackages="$pkgname-dev $pkgname-doc" +source="https://github.com/dirkvdb/ffmpegthumbnailer/releases/download/$pkgver/ffmpegthumbnailer-$pkgver.tar.bz2" +sha512sums="526d15b2c754fcb1415e69fb54cb6e7d0102b6d73a32a7e8528df81e32633dfe3786898984fdb988c93daee7218956c75c096ef657c9b3a42399d2d1d27c7bbf ffmpegthumbnailer-2.2.0.tar.bz2" + +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" \ + -DENABLE_GIO=True \ + -DENABLE_THUMBNAILER=True \ + ${CMAKE_CROSSOPTS} + make +} + +check() { + cd "$builddir" + CTEST_OUTPUT_ON_FAILURE=TRUE ctest +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install +} + diff --git a/user/fltk/APKBUILD b/user/fltk/APKBUILD index 8b8fa2faf..fa5f5702c 100644 --- a/user/fltk/APKBUILD +++ b/user/fltk/APKBUILD @@ -1,8 +1,9 @@ # Contributor: ScrumpyJack <scrumpyjack@st.ilet.to> -# Maintainer: ScrumpyJack <scrumpyjack@st.ilet.to> +# Maintainer: pkgname=fltk -pkgver=1.3.4 -pkgrel=1 +pkgver=1.3.4.2 +_realver=1.3.4-2 +pkgrel=0 pkgdesc="Cross-platform C++ GUI toolkit" url="http://www.fltk.org/" arch="all" @@ -12,8 +13,8 @@ depends="" depends_dev="libx11-dev libxext-dev libxft-dev mesa-dev" makedepends="$depends_dev libjpeg-turbo-dev libpng-dev libxinerama-dev" subpackages="$pkgname-doc $pkgname-dev $pkgname-fluid" -source="http://fltk.org/pub/fltk/$pkgver/$pkgname-$pkgver-source.tar.gz - " +source="http://fltk.org/pub/fltk/1.3.4/$pkgname-$_realver-source.tar.gz" +builddir="$srcdir"/$pkgname-$_realver build() { cd "$builddir" @@ -42,4 +43,4 @@ fluid() { mv "$pkgdir"/usr/bin "$subpkgdir"/usr/ } -sha512sums="92c236e426ad9b2a2954a6fc401bc9bf4c4c46d47b08f8c9b879da6031ac158ef9b944f28a8bea64d18072d1af8ceaa09c00abebd745fb76dd628636424446c2 fltk-1.3.4-source.tar.gz" +sha512sums="cc169449b71ca966b2043ceedc55e92220ccb6be07b0ac54eeec36bbed5d60e2f59c6faba2403b5292b9120f5255227880a066d98ac82e57d502522bc627fd4d fltk-1.3.4-2-source.tar.gz" diff --git a/user/fluxbox/APKBUILD b/user/fluxbox/APKBUILD new file mode 100644 index 000000000..ca5245921 --- /dev/null +++ b/user/fluxbox/APKBUILD @@ -0,0 +1,34 @@ +# Contributor: Natanael Copa <ncopa@alpinelinux.org> +# Maintainer: Dan Theisen <djt@hxx.in> +pkgname=fluxbox +pkgver=1.3.7 +pkgrel=0 +pkgdesc="A lightweight and highly-configurable window manager" +url="http://www.fluxbox.org" +arch="all" +license="MIT" +options="!check" # This package has a broken testsuite +depends="" +makedepends="libxinerama-dev libxpm-dev libxrandr imlib2-dev libxrender-dev + libxrandr-dev libxinerama-dev freetype-dev libxft-dev xorgproto" +subpackages="$pkgname-doc" +source="http://downloads.sourceforge.net/sourceforge/$pkgname/$pkgname-$pkgver.tar.bz2" + +build() { + cd "$builddir" + # TODO: Enable NLS when we get 'gencat' + ./configure \ + --build=$CBUILD \ + --host=$CHOST \ + --prefix=/usr \ + --enable-imlib2 \ + --disable-nls + make +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install +} + +sha512sums="c40cc765f5d542210e18dca21b98b97a048c6685b605a68e2c64f4e886329f4e6d3a3a7e76b3ca0ce488242f38d0ee2a4d6dfebc9ce97d37c68f84c3948aac8c fluxbox-1.3.7.tar.bz2" diff --git a/user/fontconfig/APKBUILD b/user/fontconfig/APKBUILD index 45b62a8ca..c07bf8073 100644 --- a/user/fontconfig/APKBUILD +++ b/user/fontconfig/APKBUILD @@ -1,7 +1,7 @@ # Contributor: Mika Havela <mika.havela@gmail.com> # Maintainer: pkgname=fontconfig -pkgver=2.13.0 +pkgver=2.13.1 pkgrel=0 pkgdesc="Library for configuring and customizing font access" url="https://www.freedesktop.org/wiki/Software/fontconfig/" @@ -11,7 +11,7 @@ license="MIT" depends="" makedepends="freetype-dev expat-dev python3-dev gperf util-linux-dev" triggers="$pkgname.trigger=/usr/share/fonts/*" -subpackages="$pkgname-doc $pkgname-dev" +subpackages="$pkgname-doc $pkgname-dev $pkgname-lang" source="https://www.freedesktop.org/software/fontconfig/release/${pkgname}-${pkgver}.tar.gz" build() { @@ -42,4 +42,4 @@ package() { install -m644 -D COPYING "$pkgdir"/usr/share/licenses/"${pkgname}"/COPYING } -sha512sums="5c0f98d1ac8e2ce0b2b59e75a86123967873e71ca3dd0d97911d6e6845a3cb2e099093a92933f55fe5a1c61821de26c1fa07141319c563c6280226b2cdea08e2 fontconfig-2.13.0.tar.gz" +sha512sums="830df32e944ee21ad02a9df04787b9902af36ffc13913524acef6e38799a38c5df7a6e407cc0ff9c24455520549d53b3d85d22642a229ac654dc9269926f130b fontconfig-2.13.1.tar.gz" diff --git a/user/frameworkintegration/APKBUILD b/user/frameworkintegration/APKBUILD index afe43f57c..0a146d881 100644 --- a/user/frameworkintegration/APKBUILD +++ b/user/frameworkintegration/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=frameworkintegration -pkgver=5.50.0 +pkgver=5.51.0 pkgrel=0 pkgdesc="Framework providing components to allow applications to integrate with a KDE Workspace" url="https://www.kde.org/" @@ -42,4 +42,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="e4efed63fc3fade085e68dd3dcef7c61d68a4fa2945ad4289c96acb1ce369a2fb763242a7d1ee205314560c5f6383018bceb0f7771da7fd2979cc375af22d61f frameworkintegration-5.50.0.tar.xz" +sha512sums="fcd29ecdff45ea2733b30a8ce236755962af9a1eab0a7486580cfa1314f6f3eb19d39ecefb47ad72c9e53cc497e0b94784541d8d8d951cd54c58e4f9b12a37d9 frameworkintegration-5.51.0.tar.xz" diff --git a/experimental/freecell-solver/APKBUILD b/user/freecell-solver/APKBUILD index 4263870e5..abf6ae301 100644 --- a/experimental/freecell-solver/APKBUILD +++ b/user/freecell-solver/APKBUILD @@ -1,16 +1,17 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=freecell-solver -pkgver=4.18.0 +pkgver=4.20.0 pkgrel=0 pkgdesc="Library for solving card games" url="http://fc-solve.shlomifish.org/" arch="all" license="MIT" -depends="" -depends_dev="" -makedepends="$depends_dev perl gperf python3 py3-random2" -install="" +depends="python3" +makedepends="gperf perl perl-task-freecellsolver-testing python3 py3-random2 + py3-six" +checkdepends="gmp-dev libtap-dev perl-dev py3-cffi py3-pycotap the_silver_searcher + valgrind" subpackages="$pkgname-dev $pkgname-doc" source="http://fc-solve.shlomifish.org/downloads/fc-solve/freecell-solver-$pkgver.tar.xz" @@ -21,13 +22,14 @@ build() { 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 + # The build system generates header files; jobs >1 may cause failures + # because .h don't exist yet. + make -j1 } check() { @@ -40,4 +42,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="aa6ba724ade171c5b69517136ba97b46e811d330903a4735ef7ff4e44c905c4a91260ac73b76b90e6406ba7dacc1083c422c16f98ba7b647ae891a50732087a4 freecell-solver-4.18.0.tar.xz" +sha512sums="6ee43c79e2562ee2dcff96301ebb7c98e619393e8bb9396871d8cac9e231b3666480202938e30eabbc3a3d2c8beca8f01e5f6bf9365a2a575197bd9fd3a0c570 freecell-solver-4.20.0.tar.xz" diff --git a/user/freeglut/APKBUILD b/user/freeglut/APKBUILD new file mode 100644 index 000000000..f89c0cac6 --- /dev/null +++ b/user/freeglut/APKBUILD @@ -0,0 +1,33 @@ +# Contributor: William Pitcock <nenolod@dereferenced.org> +# Maintainer: Dan Theisen <djt@hxx.in> +pkgname=freeglut +pkgver=3.0.0 +pkgrel=0 +pkgdesc="free reimplementation of OpenGL Utility Toolkit (GLUT) library" +url="http://freeglut.sourceforge.net/" +arch="all" +options="!check" # No test suite. +license="X11" +depends_dev="mesa-dev libx11-dev libice-dev libxxf86vm-dev libxi-dev glu-dev" +makedepends="$depends_dev cmake" +subpackages="$pkgname-dev $pkgname-doc" +source="http://downloads.sourceforge.net/$pkgname/$pkgname-$pkgver.tar.gz" + +build() { + cd "$builddir" + cmake . \ + -DCMAKE_BUILD_TYPE=Release \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DCMAKE_INSTALL_LIBDIR=lib \ + -DFREEGLUT_BUILD_STATIC_LIBS=0 + make +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + + install -m644 -D COPYING "$pkgdir"/usr/share/licenses/$pkgname/COPYING +} + +sha512sums="9c45d5b203b26a7ff92331b3e080a48e806c92fbbe7c65d9262dd18c39cd6efdad8a795a80f499a2d23df84b4909dbd7c1bab20d7dd3555d3d88782ce9dd15b0 freeglut-3.0.0.tar.gz" diff --git a/user/freetds/APKBUILD b/user/freetds/APKBUILD index e857bc2c5..9bb50f742 100644 --- a/user/freetds/APKBUILD +++ b/user/freetds/APKBUILD @@ -1,7 +1,7 @@ # Contributor: Michael Mason <ms13sp@gmail.com> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=freetds -pkgver=1.00.97 +pkgver=1.00.104 pkgrel=0 pkgdesc="Tabular Datastream Library" url="http://www.freetds.org/" @@ -40,5 +40,5 @@ package() { make -j1 DESTDIR="$pkgdir" install } -sha512sums="4e185f96e77735675cf5a3d49d85da27f6813a34cd82fdc6ac534dd67d2d5f624855c5c1dc0d60dcd022bcd1a226fe19148bfca09ff83a322ebd24a70d064cb2 freetds-1.00.97.tar.gz +sha512sums="e1a1f2831bd893cc738e0e5029512d60e38ca3e26ad0df59916cb100dd90f9bf2a82273533a316928dc6152d80266692415dd2e16a8f7edb029c3439ebe8986c freetds-1.00.104.tar.gz d75d1aab6687586697f3e430db1e82f21208f10076b45996542eea682e36cbbbb344f479a9336fcfd294b5b87d7acb2ec5fb8ddd1914e990e23dd5e7ae93a0b6 fix-includes.patch" diff --git a/user/frei0r-plugins/APKBUILD b/user/frei0r-plugins/APKBUILD index b959deae1..bbfd1c2ca 100644 --- a/user/frei0r-plugins/APKBUILD +++ b/user/frei0r-plugins/APKBUILD @@ -1,8 +1,8 @@ # Contributor: Carlo Landmeter <clandmeter@gmail.com> # Maintainer: pkgname=frei0r-plugins -pkgver=1.5.0 -pkgrel=2 +pkgver=1.6.1 +pkgrel=0 pkgdesc="A minimalistic plugin API for video sources and filters" url=" " arch="all" @@ -12,7 +12,9 @@ depends="" makedepends="opencv-dev gavl-dev file cairo-dev doxygen automake autoconf libtool" subpackages="$pkgname-dev $pkgname-doc" -source="https://files.dyne.org/frei0r/releases/frei0r-plugins-$pkgver.tar.gz" +source="https://files.dyne.org/frei0r/releases/frei0r-plugins-$pkgver.tar.gz + facebl0r-opencv-3.4.3.patch + " prepare() { default_prepare @@ -35,4 +37,5 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="9be0384421ff5ac9000dcda9acefb5cb2b6dc05ea72d9771fae990cb5fad4424dcef8dd15c1e5031a89169f914af8c7a30e47934ad007a3bc0150f3c005bc6bf frei0r-plugins-1.5.0.tar.gz" +sha512sums="843790389e6de83817d1c3744a91d3365864bb0c22cf6598707ccba5ec8933f6209434011cde1303e16edd89f6cde2f22aa1fb6eca3548d892a2c77332c44aac frei0r-plugins-1.6.1.tar.gz +785ff3459f371620780f274b82702c8f6625d78fcd6000fddca0585e3aeaa0af57fd9d9444c4d0f1ca47e84b47b8a2fca4b86fa44ebe93487948eb8f4a193503 facebl0r-opencv-3.4.3.patch" diff --git a/user/frei0r-plugins/facebl0r-opencv-3.4.3.patch b/user/frei0r-plugins/facebl0r-opencv-3.4.3.patch new file mode 100644 index 000000000..f3d4f46bb --- /dev/null +++ b/user/frei0r-plugins/facebl0r-opencv-3.4.3.patch @@ -0,0 +1,22 @@ +From b0a06d52e39438fae2afbf98bafe6c794d13b83e Mon Sep 17 00:00:00 2001 +From: Christoph Willing <chris.willing@linux.com> +Date: Sat, 14 Jul 2018 21:34:03 +1000 +Subject: [PATCH] Include opencv2/imgproc.hpp for CV_RGB() + +Signed-off-by: Christoph Willing <chris.willing@linux.com> +--- + src/filter/facebl0r/facebl0r.cpp | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/src/filter/facebl0r/facebl0r.cpp b/src/filter/facebl0r/facebl0r.cpp +index 6d6e8f2..823462a 100644 +--- a/src/filter/facebl0r/facebl0r.cpp ++++ b/src/filter/facebl0r/facebl0r.cpp +@@ -19,6 +19,7 @@ + #include <stdlib.h> + #include <opencv/cv.h> + #include <opencv/highgui.h> ++#include <opencv2/imgproc.hpp> + + #include <frei0r.hpp> + #include <frei0r_math.h> diff --git a/user/fuse/APKBUILD b/user/fuse/APKBUILD new file mode 100644 index 000000000..92840ed41 --- /dev/null +++ b/user/fuse/APKBUILD @@ -0,0 +1,45 @@ +# Contributor: Natanael Copa <ncopa@alpinelinux.org> +# Maintainer: Max Rees <maxcrees@me.com> +pkgname=fuse +pkgver=2.9.8 +pkgrel=2 +pkgdesc="Linux Filesystem in Userspace (legacy version)" +url="https://github.com/libfuse/libfuse" +arch="all" +options="suid !check" # No test suite. +license="GPL-2.0-only AND LGPL-2.1-only AND (GPL-2.0-only OR BSD-2-Clause)" +depends="fuse-common" +makedepends="" +subpackages="$pkgname-dev $pkgname-doc" +source="https://github.com/libfuse/libfuse/releases/download/$pkgname-$pkgver/$pkgname-$pkgver.tar.gz + fix-realpath.patch +" + +# secfixes: +# 2.9.8-r0: +# - CVE-2018-10906 + +build() { + cd "$builddir" + UDEV_RULES_PATH='/lib/udev/rules.d' ./configure \ + --build=$CBUILD \ + --host=$CHOST \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --localstatedir=/var \ + --disable-static \ + --disable-example \ + --enable-lib \ + --enable-util + make +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + rm -r "$pkgdir"/dev "$pkgdir"/etc/init.d +} + +sha512sums="0a9b14d96c6f98f5c903baf00114bfff72f9aeb97224702bbed370516b2b582401d5b436fcef979918ffd85d69ba4a82c8f722c0b35ebd50f7aa5f4ddfdcf8ad fuse-2.9.8.tar.gz +5672ceb35acabb4bd97b6efc30614f22def62882fe198e2a8598a074d45b6b5337c082a5e09b5e399b6e5212dc1fbde9071c2a5051534c32091444c350b9c657 fix-realpath.patch" diff --git a/user/fuse/fix-realpath.patch b/user/fuse/fix-realpath.patch new file mode 100644 index 000000000..1199eb338 --- /dev/null +++ b/user/fuse/fix-realpath.patch @@ -0,0 +1,28 @@ +--- fuse-2.9.3.orig/util/fusermount.c 2015-02-07 08:58:54.000000000 -0200 ++++ fuse-2.9.3/util/fusermount.c 2015-02-09 09:15:16.737367957 -0200 +@@ -1255,19 +1255,16 @@ + + origmnt = argv[optind]; + +- drop_privs(); + mnt = fuse_mnt_resolve_path(progname, origmnt); +- if (mnt != NULL) { +- res = chdir("/"); +- if (res == -1) { +- fprintf(stderr, "%s: failed to chdir to '/'\n", progname); +- exit(1); +- } +- } +- restore_privs(); + if (mnt == NULL) + exit(1); + ++ res = chdir("/"); ++ if (res == -1) { ++ fprintf(stderr, "%s: failed to chdir to '/'\n", progname); ++ exit(1); ++ } ++ + umask(033); + if (unmount) + goto do_unmount; diff --git a/user/fuse3/APKBUILD b/user/fuse3/APKBUILD new file mode 100644 index 000000000..dc049071d --- /dev/null +++ b/user/fuse3/APKBUILD @@ -0,0 +1,77 @@ +# Contributor: Natanael Copa <ncopa@alpinelinux.org> +# Maintainer: Max Rees <maxcrees@me.com> +pkgname=fuse3 +_pkgname=fuse +pkgver=3.2.6 +pkgrel=0 +pkgdesc="The reference implementation of the Linux FUSE (Filesystem in Userspace) interface" +url="https://github.com/libfuse/libfuse" +arch="all" +options="suid !check" # Requires fuse kernel module to be loaded +license="GPL-2.0-only AND LGPL-2.1-only AND BSD-2-Clause" +depends="fuse-common" +makedepends="linux-headers meson eudev-dev python3 py3-six py3-pluggy + py3-attrs py3-py" +#checkdepends="py3-pytest cmd:which" +subpackages="$pkgname-dev $pkgname-doc + $_pkgname-common:common:noarch $_pkgname-openrc:openrc:noarch" +source="https://github.com/libfuse/libfuse/releases/download/fuse-$pkgver/fuse-$pkgver.tar.xz + fix-realpath.patch + fuse.initd" +builddir="$srcdir/$_pkgname-$pkgver" + +# secfixes: +# 3.2.5-r0: +# - CVE-2018-10906 + +build() { + cd "$builddir" + meson \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --localstatedir=/var \ + --buildtype=release \ + . output + ninja -C output +} + +check() { + cd "$builddir"/output + python3 -m pytest test/ +} + +package() { + cd "$builddir" + DESTDIR="$pkgdir" ninja -C output install + rm -r "$pkgdir"/dev "$pkgdir"/etc/init.d + + install -Dm755 "$srcdir"/fuse.initd "$pkgdir"/etc/init.d/fuse + install -d "$pkgdir"/etc + cat >"$pkgdir"/etc/fuse.conf << EOF +# Set the maximum number of FUSE mounts allowed to non-root users. +# The default is 1000. +# +#mount_max = 1000 + +# Allow non-root users to specify the 'allow_other' or 'allow_root' +# mount options. +# +#user_allow_other +EOF +} + +common() { + pkgdesc="Common files for fuse2 and fuse3" + mkdir -p "$subpkgdir"/etc + mv "$pkgdir"/etc/fuse.conf "$subpkgdir"/etc +} + +openrc() { + default_openrc + install_if="openrc fuse-common=$pkgver-r$pkgrel" +} + +sha512sums="3a1ef77ab4c79a24aad0b259e17f568a30a5faf53ac17eb25d05f30dc7423f0081583f5b3c284ca9196a01885843e97c323a84231272b7e2b55c8e73848a61b8 fuse-3.2.6.tar.xz +1a9e1d1e8a7b0778ffde328e4322c73b5d57ec98d52767c846d755cce861ab27989823a75b6c5f994432ddb77fa351dfa4a8f948c9467c5f7d5f471e4608358b fix-realpath.patch +7f6a503ef23cfa8b809c544375c2d83ad56525269b48ad1a7dff0ce36f4bf2f2a3fafed9dc70a71ff6281b261db5f01829e16c06f041921a5d8c8d715a04a8c1 fuse.initd" diff --git a/user/fuse3/fix-realpath.patch b/user/fuse3/fix-realpath.patch new file mode 100644 index 000000000..375bedc96 --- /dev/null +++ b/user/fuse3/fix-realpath.patch @@ -0,0 +1,28 @@ +--- fuse-3.1.0.orig/util/fusermount.c ++++ fuse-3.1.0/util/fusermount.c +@@ -1200,19 +1200,16 @@ + + origmnt = argv[optind]; + +- drop_privs(); + mnt = fuse_mnt_resolve_path(progname, origmnt); +- if (mnt != NULL) { +- res = chdir("/"); +- if (res == -1) { +- fprintf(stderr, "%s: failed to chdir to '/'\n", progname); +- goto err_out; +- } +- } +- restore_privs(); + if (mnt == NULL) + exit(1); + ++ res = chdir("/"); ++ if (res == -1) { ++ fprintf(stderr, "%s: failed to chdir to '/'\n", progname); ++ exit(1); ++ } ++ + umask(033); + if (unmount) + goto do_unmount; diff --git a/user/fuse3/fuse.initd b/user/fuse3/fuse.initd new file mode 100644 index 000000000..6c99929c2 --- /dev/null +++ b/user/fuse3/fuse.initd @@ -0,0 +1,35 @@ +#!/sbin/openrc-run +# Copyright 1999-2007 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +MOUNTPOINT=/sys/fs/fuse/connections + +depend() { + need localmount +} + +start() { + + ebegin "Starting fuse" + if ! grep -qw fuse /proc/filesystems; then + modprobe fuse >/dev/null 2>&1 || eerror $? "Error loading fuse module" + fi + if grep -qw fusectl /proc/filesystems && \ + ! grep -qw $MOUNTPOINT /proc/mounts; then + mount -t fusectl none $MOUNTPOINT >/dev/null 2>&1 || \ + eerror $? "Error mounting control filesystem" + fi + eend ${?} + +} + +stop() { + + ebegin "Stopping fuse" + if grep -qw $MOUNTPOINT /proc/mounts; then + umount $MOUNTPOINT >/dev/null 2>&1 || \ + eerror $? "Error unmounting control filesystem" + fi + eend ${?} + +} diff --git a/user/garcon/APKBUILD b/user/garcon/APKBUILD new file mode 100644 index 000000000..01174f637 --- /dev/null +++ b/user/garcon/APKBUILD @@ -0,0 +1,38 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=garcon +pkgver=0.6.1 +pkgrel=0 +pkgdesc="freedesktop.org menu library for the XFCE desktop environment" +url="https://xfce.org" +arch="all" +license="LGPL-2.0+" +makedepends="intltool glib-dev libxfce4util-dev gtk+3.0-dev libxfce4util-dev + libxfce4ui-dev" +subpackages="$pkgname-dev $pkgname-doc $pkgname-lang" +langdir="/usr/lib/locale" +source="http://archive.xfce.org/src/xfce/garcon/0.6/garcon-$pkgver.tar.bz2" +sha512sums="36c5b1ba3c91e613853cd5e986176c8cbd2a509fafde1b302334deda872b7f7073fd06ba341220b030d8d5728346b7339368190b225203f33c023dd96f3ed1a3 garcon-0.6.1.tar.bz2" + +build() { + cd "$builddir" + ./configure \ + --build=$CBUILD \ + --host=$CHOST \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --localstatedir=/var + make +} + +check() { + cd "$builddir" + make check +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install +} + diff --git a/user/gcompat/APKBUILD b/user/gcompat/APKBUILD new file mode 100644 index 000000000..3c18e3891 --- /dev/null +++ b/user/gcompat/APKBUILD @@ -0,0 +1,39 @@ +# Maintainer: A. Wilcox <awilfox@adelielinux.org> +pkgname=gcompat +pkgver=0.3.0 +pkgrel=0 +pkgdesc="The GNU C Library compatibility layer for musl" +url="https://code.foxkit.us/adelie/gcompat" +arch="all" +options="!check" # No test suite. +license="UoI-NCSA" +depends="" +makedepends="libucontext-dev" +replaces="libc6-compat" +source="https://distfiles.adelielinux.org/source/gcompat/$pkgname-$pkgver.tar.xz + no-utmp.patch + " + +case "$CARCH" in +armel) _ld="ld-linux.so.3" ;; +armhf | armv7) _ld="ld-linux-armhf.so.3" ;; +aarch64) _ld="ld-linux-aarch64.so.1" ;; +x86|pmmx|i528) _ld="ld-linux.so.2" ;; +x86_64) _ld="ld-linux-x86-64.so.2" ;; +mips* | ppc | s390*) _ld="ld.so.1" ;; +ppc64le) _ld="ld64.so.2" ;; +ppc64) _ld="ld64.so.1" ;; +esac + +build() { + cd "$builddir" + make LINKER_PATH="/lib/ld-musl-${CARCH}.so.1" LOADER_NAME="$_ld" WITH_LIBUCONTEXT=YesPlease +} + +package() { + cd "$builddir" + make LINKER_PATH="/lib/ld-musl-${CARCH}.so.1" LOADER_NAME="$_ld" WITH_LIBUCONTEXT=YesPlease DESTDIR="$pkgdir" install +} + +sha512sums="1f7dd73efd556b7e0f7f1c80751185583de24daf4ab235b488ea1ab98cea2d3a94abed341b922be0bd43c8d539a00176b892c78acf09f2adacb279c09648b3be gcompat-0.3.0.tar.xz +34fbf97cfbad2bae219e238f5edcb55425c6d7c9be7dde02aa0e8223dbf163ff20f535539de2232a1ef3c6f47a92eac6e00484af99dc8beb192c761b15389b82 no-utmp.patch" diff --git a/user/gcompat/no-utmp.patch b/user/gcompat/no-utmp.patch new file mode 100644 index 000000000..c5d2251b1 --- /dev/null +++ b/user/gcompat/no-utmp.patch @@ -0,0 +1,16 @@ +--- gcompat-0.3.0/libgcompat/utmp.c.old 2018-09-05 02:26:02.850000000 +0000 ++++ gcompat-0.3.0/libgcompat/utmp.c 2018-09-21 21:39:17.350000000 +0000 +@@ -1,12 +1,11 @@ + #include <stddef.h> /* NULL */ +-#include <utmp.h> /* struct utmp */ + + /** + * Get user accounting database entries. + * + * LSB 5.0: LSB-Core-generic/baselib-getutent-r-3.html + */ +-int getutent_r(struct utmp *buffer, struct utmp **result) ++int getutent_r(void *buffer, void **result) + { + /* musl does not implement getutent(). */ + *result = NULL; diff --git a/user/gdbm/APKBUILD b/user/gdbm/APKBUILD index 1e12b815a..14e1fc411 100644 --- a/user/gdbm/APKBUILD +++ b/user/gdbm/APKBUILD @@ -2,7 +2,7 @@ # Contributor: Natanael Copa <ncopa@alpinelinux.org> # Maintainer: pkgname=gdbm -pkgver=1.16 +pkgver=1.18 pkgrel=0 pkgdesc="Set of database routines that use extensible hashing" url="https://www.gnu.org/software/gdbm/" @@ -35,4 +35,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="97f4f37fd95cee4dd5c9c3f42ea3aecaa28016e90fe0e168a9d8c38e92602221f946c273bb249d508200249701c6403d0f9351460485dfae34a3bf625de59d2c gdbm-1.16.tar.gz" +sha512sums="57c7e5dc52464e97ad955e28d49fdb3557d8e3bdf280f7d3cee69539e4878f055db17cb9dd591f82fadb8fa5041a5a56d8a571d34f6e115470a3a82537f872a8 gdbm-1.18.tar.gz" diff --git a/user/glib/APKBUILD b/user/glib/APKBUILD index 9a90b5002..f4fb51fd9 100644 --- a/user/glib/APKBUILD +++ b/user/glib/APKBUILD @@ -1,19 +1,18 @@ # Contributor: Valery Kartel <valery.kartel@gmail.com> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=glib -pkgver=2.56.1 +pkgver=2.58.1 pkgrel=0 pkgdesc="Common C routines used by Gtk+ and other libs" url="https://developer.gnome.org/glib/" arch="all" -options="!check" +options="!check" # Now requires D-Bus running. license="LGPL-2.1+" -depends= -triggers="$pkgname.trigger=/usr/share/glib-2.0/schemas:/usr/lib/gio/modules" +depends="" depends_dev="perl python3 attr-dev zlib-dev bzip2-dev libffi-dev util-linux-dev" -makedepends="$depends_dev pcre-dev xmlto" checkdepends="tzdata shared-mime-info" -langdir="/usr/lib/locale" +makedepends="$depends_dev meson ninja pcre-dev xmlto" +triggers="$pkgname.trigger=/usr/share/glib-2.0/schemas:/usr/lib/gio/modules" source="https://download.gnome.org/sources/$pkgname/${pkgver%.*}/$pkgname-$pkgver.tar.xz 0001-gquark-fix-initialization-with-c-constructors.patch broken-gio-tests.patch @@ -21,7 +20,7 @@ source="https://download.gnome.org/sources/$pkgname/${pkgver%.*}/$pkgname-$pkgve i386-fpu-test.patch musl-no-locale.patch ridiculous-strerror-nonconformance.patch - thread-test-fix.patch + meson-sucks-and-i-hate-you-so-much-right-now.patch " subpackages="$pkgname-dbg $pkgname-doc $pkgname-static $pkgname-dev $pkgname-lang $pkgname-bash-completion:bashcomp:noarch" @@ -29,37 +28,24 @@ prepare() { cd "$builddir" default_prepare - # workaround packaging issue. gtk-doc.make timestamp was newer than - # Makefile.am, which triggers automake re-run - touch -r docs/reference/glib/Makefile.am gtk-doc.make + mkdir -p dumb_meson } build() { - cd "$builddir" - ./configure \ - --build=$CBUILD \ - --host=$CHOST \ - --prefix=/usr \ - --mandir=/usr/share/man \ - --disable-gtk-doc \ - --disable-compile-warnings \ - --disable-selinux \ - --with-pcre=system \ - --with-python=python3 \ - --with-pic \ - --enable-static - make + cd "$builddir"/dumb_meson + meson --default-library=both -Dprefix=/usr -Dselinux=false -Dman=true .. + ninja } check() { - cd "$builddir" + cd "$builddir"/dumb_meson # workaround if a user builds it on a computer running X11 - DISPLAY= make check + DISPLAY= ninja test } package() { - cd "$builddir" - make DESTDIR="$pkgdir" install + cd "$builddir"/dumb_meson + DESTDIR="$pkgdir" ninja install rm -rf "$pkgdir"/usr/lib/charset.alias } @@ -78,7 +64,7 @@ dev() { } static() { - pkgdesc="glib static libraries" + pkgdesc="$pkgdesc (static libraries)" mkdir -p "$subpkgdir"/usr/lib mv "$pkgdir"/usr/lib/*.a "$subpkgdir"/usr/lib/ } @@ -92,11 +78,11 @@ bashcomp() { [ "$(ls -A "$pkgdir"/usr/share)" ] || rmdir "$pkgdir"/usr/share } -sha512sums="7e96cc23f3fa42a41b1974ae8fa2a7b123449643f265763d464620afcb011668e2de013ed2a6e5f13b6bd1bf3ab8eab43c05bf4a8ee0d99b7808767ab4fa69f4 glib-2.56.1.tar.xz +sha512sums="115b74fcd43241e3c4b4babfb8170453b2a002ff02d5996f3c097876199cadccc1cf67b017c10c14c0d2a1bb4228027b743f4926bda0ef7d74012ed712ccd155 glib-2.58.1.tar.xz 32e5aca9a315fb985fafa0b4355e4498c1f877fc1f0b58ad4ac261fb9fbced9f026c7756a5f2af7d61ce756b55c8cd02811bb08df397040e93510056f073756b 0001-gquark-fix-initialization-with-c-constructors.patch 5bb7ee99cd19bc10f49b64c5bb9d79a0ee5bd918852f6351261bd5b3f3d8486c593bac6285da7e227579af9bac2b27c47251e4a62fd3af6cabe21f6b111e5e7a broken-gio-tests.patch 0f0a98784aeed92f33cd9239d2f668bdc6c09b84ed020825ae88f6aacf6a922152dc3e1384c40d9f30f54c5ab78fe17e0ee5c42b268b297b595d2a6cde5b8998 fix-spawn.patch aa7444bbdf7b88798adc67c15cdb8b7459450c0b7357caea16b74462c5c9179ba80d4018b1e656e90a5e3be5b2e3c14e9b8c0ccbb2ee4d8c92dc8fa627518b84 i386-fpu-test.patch 34129be883011d266074783b7283af5c6a45055b85026b5aab47a3a0dfa1316a0a6502aaf78ab172356f67493ea7c4867b53279c25967a8cc5bee9320dbff96a musl-no-locale.patch 56c10a0f64cbd8ce584d428f818e7e678fdeb40a32df792843208ddfa3135d362cc2077bc9fe3bfebe13ee6af0ecf6403a593ad727e0a92276074a17a9c7029c ridiculous-strerror-nonconformance.patch -0cebf9cbf87a92c3160054eb30189a827847f5820a8b90f4842b4ad5ab5cc343ba06e5f55214864bd0f0d5a21e55ec5e7f35c66207e77b1496142b7ee0c75567 thread-test-fix.patch" +d788005bc92ed1510235b77a9a26eecd78840a3e915a64e53e1e93cd1efaaeb1b9b5edb115f41352fcbdab10006b91b4aae7af20184c904e869a0d6893080368 meson-sucks-and-i-hate-you-so-much-right-now.patch" diff --git a/user/glib/meson-sucks-and-i-hate-you-so-much-right-now.patch b/user/glib/meson-sucks-and-i-hate-you-so-much-right-now.patch new file mode 100644 index 000000000..ba38bdec2 --- /dev/null +++ b/user/glib/meson-sucks-and-i-hate-you-so-much-right-now.patch @@ -0,0 +1,8 @@ +--- glib-2.58.0/glib/libcharset/meson.build.old 2018-08-30 17:12:09.000000000 +0000 ++++ glib-2.58.0/glib/libcharset/meson.build 2018-09-10 03:42:01.930000000 +0000 +@@ -6,4 +6,5 @@ + charset_lib = static_library('charset', 'localcharset.c', + include_directories : configinc, + pic : true, ++ install : true, + c_args : [ '-DGLIB_CHARSETALIAS_DIR="@0@"'.format(charsetalias_dir) ] + glib_hidden_visibility_args) diff --git a/user/glib/thread-test-fix.patch b/user/glib/thread-test-fix.patch deleted file mode 100644 index bcfcfc441..000000000 --- a/user/glib/thread-test-fix.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- glib-2.52.1/glib/tests/thread.c.old 2016-10-22 05:21:37.000000000 +0000 -+++ glib-2.52.1/glib/tests/thread.c 2017-08-20 04:51:46.756496035 +0000 -@@ -174,7 +174,7 @@ - static gpointer - thread6_func (gpointer data) - { --#ifdef HAVE_PTHREAD_SETNAME_NP_WITH_TID -+#if 0 - char name[16]; - - pthread_getname_np (pthread_self(), name, 16); diff --git a/user/glm/APKBUILD b/user/glm/APKBUILD index 93a6d15e7..177ab1ec9 100644 --- a/user/glm/APKBUILD +++ b/user/glm/APKBUILD @@ -1,7 +1,7 @@ # Contributor: Natanael Copa <ncopa@alpinelinux.org> # Maintainer: Max Rees <maxcrees@me.com> pkgname=glm -pkgver=0.9.9.0 +pkgver=0.9.9.1 pkgrel=0 pkgdesc="C++ header-only mathematics library for graphics programming" url="https://glm.g-truc.net/" @@ -36,5 +36,5 @@ package() { make install DESTDIR="$pkgdir" } -sha512sums="ac256e8ba515a0a57e27cb9dc79325af7a6f014341c11ba34af604fc2df03ada6979c39c0e5a3fd7526a5dc6dd4af99586e60cefe13bb134ad4df2212193a253 glm-0.9.9.0.zip +sha512sums="7e45cdede3648d5a6bfc5dd3be3514b11184f04024388207db558d7a888653e4a8714282ab898be73f9aad63630991a3eb4c1e77c271dd1ddbfb6698c71d07a3 glm-0.9.9.1.zip 954495cc875b9e70f1957f54cdaa44738268a5a1104036edcdfd74736f8a3385725f29032a533f2a5acbdbfa19d2fe4bc80ef9fdb49d3e8bdc5dc00db86c813a be.patch" diff --git a/user/gnutls/APKBUILD b/user/gnutls/APKBUILD index b2ed36e43..233bbcb52 100644 --- a/user/gnutls/APKBUILD +++ b/user/gnutls/APKBUILD @@ -2,11 +2,12 @@ # Contributor: Michael Mason <ms13sp@gmail.com> # Maintainer: pkgname=gnutls -pkgver=3.6.2 +pkgver=3.6.4 pkgrel=0 pkgdesc="A TLS protocol implementation" url="http://www.gnutls.org/" arch="all" +options="!check" # https://gitlab.com/gnutls/gnutls/issues/560 license="LGPL-2.1+" makedepends="libtasn1-dev libunistring-dev nettle-dev p11-kit-dev texinfo zlib-dev" @@ -71,5 +72,5 @@ xx() { mv "$pkgdir"/usr/lib/lib*xx.so.* "$subpkgdir"/usr/lib/ } -sha512sums="6a574d355226bdff6198ab3f70633ff2a3cff4b5d06793bdaf19d007063bd4dd515d1bd3f331a9eb1a9ad01f83007801cfa55e5fd16c1cd3461ac33d1813fb06 gnutls-3.6.2.tar.xz +sha512sums="f39ac09b48ebf230653cbf82b29ded39a1403313067135495b23f428b35783f9ef073993157d1f284678abedd19e2cf1fd01af843001b88320ca17b346b219ab gnutls-3.6.4.tar.xz abc24ee59cc67805fe953535b0bae33080fc8b0bf788304377f6d10ec8c162c4cf203a69c98a4ba3483b4c60ed7a204433cc7db9b8190eddb0d68f6fb6dad52d gnulib-tests-dont-require-gpg-passphrase.patch" diff --git a/user/gobject-introspection/APKBUILD b/user/gobject-introspection/APKBUILD index dc04dcadc..0a45a5fe1 100644 --- a/user/gobject-introspection/APKBUILD +++ b/user/gobject-introspection/APKBUILD @@ -1,39 +1,40 @@ # Maintainer: pkgname=gobject-introspection -pkgver=1.56.1 +pkgver=1.58.0 pkgrel=0 pkgdesc="Introspection system for GObject-based libraries" -url="http://live.gnome.org/GObjectIntrospection" +url="https://wiki.gnome.org/action/show/Projects/GObjectIntrospection" arch="all" license="LGPL-2.0+ AND GPL-2.0+ AND MIT" -depends= +depends="" depends_dev="python3 cairo-dev libtool" -makedepends="$depends_dev glib-dev libffi-dev flex bison python3-dev cmd:which" +makedepends="$depends_dev bison flex glib-dev libffi-dev meson ninja python3-dev + cmd:which" checkdepends="sed" subpackages="$pkgname-doc $pkgname-dev" replaces="libgirepository" -source="http://download.gnome.org/sources/$pkgname/${pkgver%.*}/$pkgname-$pkgver.tar.xz - " +source="https://download.gnome.org/sources/$pkgname/${pkgver%.*}/$pkgname-$pkgver.tar.xz" -build() { +prepare() { cd "$builddir" - ./configure \ - --build=$CBUILD \ - --host=$CHOST \ - --prefix=/usr \ - --disable-static \ - --with-python=python3 - make V=1 + default_prepare + mkdir -p build +} + +build() { + cd "$builddir"/build + meson -Dprefix=/usr + ninja } check() { - cd "$builddir" - make check + cd "$builddir"/build + ninja test } package() { - cd "$builddir" - make DESTDIR="$pkgdir" install + cd "$builddir"/build + DESTDIR="$pkgdir" ninja install } dev() { @@ -45,4 +46,4 @@ dev() { replaces="gobject-introspection" } -sha512sums="2bfcd45b8c5ad68a3f6550c2f80a6804db0e1a72ffaf4fdd3cec3d8acc23e79ad14bb5bf612fe26fc896691839ab19ca8dd1c9994db14d730e56fa79df9d973d gobject-introspection-1.56.1.tar.xz" +sha512sums="838fda0ddf1889f402eb03edbb82ace28b01b2392fb62be9bb32721aa7aadca6e906f9286c54c2c90d15cd77b258513eb939f2992daf726089755e23a8a17b78 gobject-introspection-1.58.0.tar.xz" diff --git a/user/gpgme/APKBUILD b/user/gpgme/APKBUILD index f96ad7760..21b537848 100644 --- a/user/gpgme/APKBUILD +++ b/user/gpgme/APKBUILD @@ -1,7 +1,7 @@ # Contributor: William Pitcock <nenolod@dereferenced.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=gpgme -pkgver=1.11.1 +pkgver=1.12.0 pkgrel=0 pkgdesc="GnuPG Made Easy" url="https://www.gnupg.org/related_software/gpgme/" @@ -55,4 +55,4 @@ gpgmepp() { } -sha512sums="42fa6f5d6217aaad9b44b969de9603167d179af9a1573342187718ff123cd88c686211c3dc5f2d9cacc20226ab5b8fef85cb66a19ada71d267c397d8ba52cf1a gpgme-1.11.1.tar.bz2" +sha512sums="c228b3df28377df882be536ada56dc9c73150048a58e591aa4495f89c854af95820152cd60139840f994c249e9c7df50d8b89eb9d6dc4ce02aa80bbfebcdd014 gpgme-1.12.0.tar.bz2" diff --git a/user/granatier/APKBUILD b/user/granatier/APKBUILD index 862e0a22e..5a626c9f3 100644 --- a/user/granatier/APKBUILD +++ b/user/granatier/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=granatier -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="Clone of the classic Bomberman game" url="https://www.kde.org/applications/games/granatier/" @@ -41,4 +41,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="94375800f3817158a81de3caf290cd6f0fedca920f42e65f10b573ba1f590ff16870219aafba95233f6862b434b0472e74699dca40b6486134840cf84d1555c6 granatier-18.08.1.tar.xz" +sha512sums="384cfaf86970f1bfdc061bccb8ddf7be839ff4b28c912f93a6ea1b72aa625a65ab141849bb609d3112286aa5d9f2ab731387cf6723c619a3eebaddfc0420dacd granatier-18.08.2.tar.xz" diff --git a/user/graphite2/APKBUILD b/user/graphite2/APKBUILD index 74b3541e6..403b60522 100644 --- a/user/graphite2/APKBUILD +++ b/user/graphite2/APKBUILD @@ -2,8 +2,8 @@ # Maintainer: pkgname=graphite2 _realname=${pkgname/2/} -pkgver=1.3.10 -pkgrel=1 +pkgver=1.3.12 +pkgrel=0 pkgdesc="Text processing engine for complex languages" url="http://graphite.sil.org/" arch="all" @@ -15,13 +15,16 @@ makedepends="$depends_dev cmake" install="" subpackages="$pkgname-dev" source="$pkgname-$pkgver.tar.gz::https://github.com/silnrsi/$_realname/archive/$pkgver.tar.gz - cmake.patch graphite2-1.2.0-cmakepath.patch " builddir="$srcdir"/$_realname-$pkgver build() { cd "$builddir" + + # Fix linking error on 32-bit platforms + sed -i -e 's/\-nodefaultlibs//g' src/CMakeLists.txt + mkdir build && cd build cmake -G "Unix Makefiles" .. \ -DCMAKE_C_FLAGS:STRING="${CFLAGS}" \ @@ -41,6 +44,5 @@ package() { make DESTDIR="$pkgdir/" install } -sha512sums="9a6ff2ad88f04e55a6da862e6eefcf2d87c562bb9feedddc4532b66f7938b9ade4a12c8a4b19ab7b08ec3e34a96b97331621a7465b672407ab4d1af756df04c1 graphite2-1.3.10.tar.gz -44dcff1e6c8c5e3df92eae8cab501c9605a1cd3e16b6cdce2e376d78fd08b26b7f6e037b7e5878099ba426a93572114169b5f64c4d2ae0bcbe223f1d28b00eb5 cmake.patch +sha512sums="d0aed05b54445a9664435d5aef9d78fc07a89be23d18b7b1339d37412b09faca6da3dc1e72524e4b114724b76aa6f36934e8ab1a01bd0752e353efa075c9e643 graphite2-1.3.12.tar.gz 4ef5414e6d554bb8d6ead435e38d061a073f350c313b7141158bb68332f5f57ca5250385875a387b828bb657964588e974143b96b5e11c2cd314871e7baddb88 graphite2-1.2.0-cmakepath.patch" diff --git a/user/graphite2/cmake.patch b/user/graphite2/cmake.patch deleted file mode 100644 index 41f1e5187..000000000 --- a/user/graphite2/cmake.patch +++ /dev/null @@ -1,13 +0,0 @@ ---- ./tests/CMakeLists.txt.orig -+++ ./tests/CMakeLists.txt -@@ -58,7 +58,9 @@ - LINKER_LANGUAGE C) - endif (${CMAKE_SYSTEM_NAME} STREQUAL "Windows") - --add_subdirectory(comparerenderer) -+if (GRAPHITE2_COMPARE_RENDERER) -+ add_subdirectory(comparerenderer) -+endif (GRAPHITE2_COMPARE_RENDERER) - add_subdirectory(endian) - add_subdirectory(bittwiddling) - if (NOT GRAPHITE2_NFILEFACE) diff --git a/user/gsettings-desktop-schemas/APKBUILD b/user/gsettings-desktop-schemas/APKBUILD index 1505088ee..83bdc123e 100644 --- a/user/gsettings-desktop-schemas/APKBUILD +++ b/user/gsettings-desktop-schemas/APKBUILD @@ -1,6 +1,6 @@ # Maintainer: pkgname=gsettings-desktop-schemas -pkgver=3.28.0 +pkgver=3.28.1 pkgrel=0 pkgdesc="GSettings schemas shared by GNOME desktop components" url="https://developer.gnome.org/gio/unstable/GSettings.html" @@ -47,4 +47,4 @@ dev() { } -sha512sums="83728c1645303a92a44429fe26eca85e156d7cdf61687f758e3189df875d022d945686de52e5d3df1e69e8372b0432ed8916bdaa40bb3ba80cd8691a6e02232b gsettings-desktop-schemas-3.28.0.tar.xz" +sha512sums="2bf3260e976943e9d1e51feda62ef1e432870a6d9b34881afbdf99ddbe4954e5dd679697e152e793a0b38492dbbc4891018f7aa8cd4e703d05a8647cc5a56785 gsettings-desktop-schemas-3.28.1.tar.xz" diff --git a/user/gsm/APKBUILD b/user/gsm/APKBUILD index 681fe4ad1..17ff21e6f 100644 --- a/user/gsm/APKBUILD +++ b/user/gsm/APKBUILD @@ -1,7 +1,7 @@ # Contributor: Natanael Copa <ncopa@alpinelinux.org> # Maintainer: pkgname=gsm -pkgver=1.0.17 +pkgver=1.0.18 pkgrel=0 _soname=1.0.12 pkgdesc="Shared libraries for GSM speech compressor" @@ -50,6 +50,6 @@ tools() { mv "$pkgdir"/usr/bin "$subpkgdir"/usr } -sha512sums="983b442a1ee3f8bce0523f671071823598c4edb222f8d3de1ad7997c85cbeb7bc49ee87130e12f0f815266a29ad2ef58e59672e81bf41cdadc292baf66942026 gsm-1.0.17.tar.gz +sha512sums="c5b597f68d4a270e1d588f480dcde66fda8302564c687d753f2bd4fc41d246109243e567568da61eddce170f5232d869984743ddf1eea7696d673014a1a453b7 gsm-1.0.18.tar.gz 5b01f6d2fd3ee7cd859da70870463e2ccc6614c5fb1bd5efc88a223a0c5477271221557fef13ba46697e70cc5820c13efff738413f8990d5884b95cc89c30152 gsm-64bit.patch 1d92b7eacf52e5281c9f1a0f08313d10f15c35d22fb2292e5a885ceb3cb766557a5e3a08954db75fb13db59345ef9f6b08939881ba38c9d384e09a1c96b47bc5 gsm-makefile.patch" diff --git a/user/gst-plugins-base/APKBUILD b/user/gst-plugins-base/APKBUILD index 3e7d8cca0..dd1215897 100644 --- a/user/gst-plugins-base/APKBUILD +++ b/user/gst-plugins-base/APKBUILD @@ -1,6 +1,6 @@ # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=gst-plugins-base -pkgver=1.14.2 +pkgver=1.14.4 pkgrel=0 pkgdesc="GStreamer multimedia framework - Base plugins" url="https://gstreamer.freedesktop.org/" @@ -66,4 +66,4 @@ doc() { replaces="${pkgname}1-doc" } -sha512sums="35e7eb5c42fe265d38c433575f88d3306f15ff927a989eb375ed5399cbf92af2e9bf553d6eee349dc13673540cee00e1f879595f25e58c188ea443d8a969682f gst-plugins-base-1.14.2.tar.xz" +sha512sums="42c59df9f2d848108f12afa0466acbcfa5ccda64e4d0d44608d4268abed20f2e036713de04e7d71feaed1868ad742c5bcb55ae0eef5dec8e19e053dc8541b8af gst-plugins-base-1.14.4.tar.xz" diff --git a/user/gstreamer/APKBUILD b/user/gstreamer/APKBUILD index c60def265..a5adebbf5 100644 --- a/user/gstreamer/APKBUILD +++ b/user/gstreamer/APKBUILD @@ -1,6 +1,6 @@ # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=gstreamer -pkgver=1.14.2 +pkgver=1.14.4 pkgrel=0 pkgdesc="GStreamer multimedia framework" url="https://gstreamer.freedesktop.org/" @@ -47,4 +47,4 @@ doc() { default_doc replaces="${pkgname}1-doc" } -sha512sums="270dba318d15b54fff6e09d09d77dea13be55bbf82a5bb510efb43f954e234230505366cc6f19f5431e2dd24f5a7734daf5a89d9bd94de8302ed722df0e1eb84 gstreamer-1.14.2.tar.xz" +sha512sums="7ece9f01d40df7c8358482eac94536c5e15261e9568962008e2029e1ee1b3ebb220d2e4802ed1c81c40d897576fafe52234065e273724bfb4df3a3ddf2711abe gstreamer-1.14.4.tar.xz" diff --git a/user/gtest/APKBUILD b/user/gtest/APKBUILD index 048c014a4..14d16d8c9 100644 --- a/user/gtest/APKBUILD +++ b/user/gtest/APKBUILD @@ -1,7 +1,7 @@ # Maintainer: pkgname=gtest -pkgver=1.8.0 -pkgrel=3 +pkgver=1.8.1 +pkgrel=0 pkgdesc="C++ testing framework based on xUnit (like JUnit)" url="https://github.com/google/googletest" arch="all" @@ -43,4 +43,4 @@ package() { install -m 0644 googletest/cmake/* "$pkgdir"/usr/src/gtest/cmake/ } -sha512sums="1dbece324473e53a83a60601b02c92c089f5d314761351974e097b2cf4d24af4296f9eb8653b6b03b1e363d9c5f793897acae1f0c7ac40149216035c4d395d9d release-1.8.0.tar.gz" +sha512sums="e6283c667558e1fd6e49fa96e52af0e415a3c8037afe1d28b7ff1ec4c2ef8f49beb70a9327b7fc77eb4052a58c4ccad8b5260ec90e4bceeac7a46ff59c4369d7 release-1.8.1.tar.gz" diff --git a/user/gtk-doc/APKBUILD b/user/gtk-doc/APKBUILD index a25cf1703..193cd2f50 100644 --- a/user/gtk-doc/APKBUILD +++ b/user/gtk-doc/APKBUILD @@ -1,6 +1,6 @@ # Maintainer: pkgname=gtk-doc -pkgver=1.26 +pkgver=1.29 pkgrel=2 pkgdesc="Documentation tool for public library API" url="https://www.gtk.org/gtk-doc/" @@ -23,6 +23,7 @@ prepare() { build() { cd "$builddir" + export PYTHON="/usr/bin/python3" ./configure \ --build=$CBUILD \ --host=$CHOST \ @@ -41,5 +42,5 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="91f0e0e51d9f77794c0ab57bad5c2da242252f029ab2d4252f8740ccf8b18fed49a7f010f654f5ba60ebed74f7b65a5ef1f762c8661eebfcacfe15dc3bc3c52c gtk-doc-1.26.tar.xz +sha512sums="97e17be2563c2c12a04394633feaf6591918968a794c38e945a65be9c2de2bed5ce586592a7fe396a1874b8e43e63d6380c6d1a3193ccb7f9bb3d3a331526421 gtk-doc-1.29.tar.xz a86438a9cbbf1bb60d2aea93f10a473f3fe7814cdbf0a454ff42bea88e79f21f9e748e063335aa6332878fa8f8a1c00ef288a44631b510471cc6bb806851b391 0001-tests-Label-parts-with-decimals-not-roman-numerals.patch" diff --git a/user/gtksourceview-3.0/APKBUILD b/user/gtksourceview-3.0/APKBUILD new file mode 100644 index 000000000..ca4fd1c32 --- /dev/null +++ b/user/gtksourceview-3.0/APKBUILD @@ -0,0 +1,39 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=gtksourceview-3.0 +pkgver=3.24.9 +pkgrel=0 +pkgdesc="Source viewer widget for GTK+ 3.0" +url="https://gnome.org" +arch="all" +options="!check" # testsuite requires X +license="LGPL-2.1+" +makedepends="gtk+3.0-dev libxml2-dev vala-dev gobject-introspection-dev" +checkdepends="libxml2-utils" +subpackages="$pkgname-dev $pkgname-doc $pkgname-lang" +source="https://download.gnome.org/sources/gtksourceview/3.24/gtksourceview-$pkgver.tar.xz" +builddir="$srcdir/gtksourceview-$pkgver" + +build() { + cd "$builddir" + ./configure \ + --build=$CBUILD \ + --host=$CHOST \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --localstatedir=/var + make +} + +check() { + cd "$builddir" + make check +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install +} + +sha512sums="29b58afba1c0b473205cf7070997139d2ca07cf68d40185aa76fa59c900ad21c03ccb79dec9970e5f96743cfdb5a7d926b21a9947244bc8cf8cbd1033467cd01 gtksourceview-3.24.9.tar.xz" diff --git a/user/gvim/APKBUILD b/user/gvim/APKBUILD index 020b5a3b6..0db1561b7 100644 --- a/user/gvim/APKBUILD +++ b/user/gvim/APKBUILD @@ -5,7 +5,7 @@ # Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> pkgname=gvim _pkgreal=vim -pkgver=8.1.0346 +pkgver=8.1.0429 pkgrel=0 pkgdesc="advanced text editor" url="http://www.vim.org" @@ -74,4 +74,4 @@ package() { ln -s gvim rgvim } -sha512sums="ce27d6d9215e80d84661aec4062f4730e4ed95cfbcedfdd46e73b5a5a1599ea709664c967c5e17ad3515341f79b59fb5c3ddc851cc84cd5717c0e68c6c82961c vim-8.1.0346.tar.gz" +sha512sums="e9ece2616f56f6ef0a08a73e48c4a87f138e381ec24b960f5e634c2291d9aba2c2d11a7f80dbe60eb3ccaeb8ea45b7c07ec5ebd50f4f5f326ffd1aff3729a13b vim-8.1.0429.tar.gz" diff --git a/user/gwenview/APKBUILD b/user/gwenview/APKBUILD index daf6e20ec..5a27fab82 100644 --- a/user/gwenview/APKBUILD +++ b/user/gwenview/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=gwenview -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="Fast and easy image viewer by KDE" url="https://www.kde.org/applications/graphics/gwenview/" @@ -43,4 +43,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="6fb57a1c872198fd8c7afdfc1df49be7b01a086d2e890479ded3ac0e0fe48748055c30e2678a9e7ad0141c5b7435db01aa03f8d4f11193a65eff42960474a732 gwenview-18.08.1.tar.xz" +sha512sums="7af6d664512329f4364a71595ae4c6658380e572fcf9120ced4c6ff089dff6b91c588123aff444b9340b170e36f7d9b467aa32ec215c8b6001e11db5515cda28 gwenview-18.08.2.tar.xz" diff --git a/user/harfbuzz/APKBUILD b/user/harfbuzz/APKBUILD index 41817693d..6629b2639 100644 --- a/user/harfbuzz/APKBUILD +++ b/user/harfbuzz/APKBUILD @@ -1,7 +1,7 @@ # Contributor: Sören Tempel <soeren+alpinelinux@soeren-tempel.net> # Maintainer: pkgname=harfbuzz -pkgver=1.8.2 +pkgver=1.8.8 pkgrel=0 pkgdesc="Text shaping library" url="https://www.freedesktop.org/wiki/Software/HarfBuzz" @@ -56,4 +56,4 @@ icu() { mv "$pkgdir"/usr/lib/lib*icu.so.* "$subpkgdir"/usr/lib/ } -sha512sums="c88a3e9e55866608647318a1af7c5d848863cd894d635583b8a2d2a7a02eea875b7a5a4f0f38555d80f2e81628743e40710f5e6f9251bf629f1d15ac51103e5a harfbuzz-1.8.2.tar.bz2" +sha512sums="eb96cd710571a96473b20bc9a01dadf2a3c11224497e52c63368e8edec64a8eb7085dd847c78111b798a1e8a6a950f0a04c930209822aabf13cf86d7a53b1f79 harfbuzz-1.8.8.tar.bz2" diff --git a/user/highlight/APKBUILD b/user/highlight/APKBUILD index 47ce23cf6..985342a51 100644 --- a/user/highlight/APKBUILD +++ b/user/highlight/APKBUILD @@ -1,8 +1,8 @@ # Contributor: Carlo Landmeter <clandmeter@gmail.com> # Maintainer: pkgname=highlight -pkgver=3.43 -pkgrel=1 +pkgver=3.45 +pkgrel=0 pkgdesc="Fast and flexible source code highlighter" url="http://www.andre-simon.de/doku/highlight/highlight.html" arch="all" @@ -22,4 +22,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="77ad159963de64ef3c4732ad70c63ceafe7002c43d8b045e61361f52e56467933790c70e88570e0c866503a621496de2c80934c7f8141721545ff43c807968d1 highlight-3.43.tar.bz2" +sha512sums="9650f000d85890fe6953e6b3e051cc29f8f734d76b95784e029fed19adc9bb2f3307456cf6be51bbd21da183bae2db814e1ef844d2950b97fde0e4edc46fdd92 highlight-3.45.tar.bz2" diff --git a/user/hwdata/APKBUILD b/user/hwdata/APKBUILD index 6fd70a252..a25f9b891 100644 --- a/user/hwdata/APKBUILD +++ b/user/hwdata/APKBUILD @@ -1,6 +1,6 @@ # Maintainer: pkgname=hwdata -pkgver=0.313 +pkgver=0.316 pkgrel=0 pkgdesc="Hardware identification and configuration data" url="https://github.com/vcrhonek/hwdata" @@ -43,5 +43,5 @@ pci() { replaces="pciutils"; _mv pci.ids; } pnp() { _mv pnp.ids; } oui() { _mv oui.txt; } -sha512sums="ad292112e96ebdf694f68a98f7d6d8cb20423e47aab44a5a5d283320c7d2becc885119d696c74e746dc9202cc79d32d628fad6d66ca5675fc24366ba6b39328a hwdata-0.313.tar.gz +sha512sums="8d43b91e6c410c43d6831f793a8e5a71903072ebc72cfd3414fa70fb76efaa873474bfbdd6af015970c3e43f7ba65eaa4e0a781f87ad1170be82afc793ef6d3c hwdata-0.316.tar.gz 88a786d8feb5c8b7de587ac70f3e4307d10ac5ed9b0edfc8711de1ba51808ca33a76df518cb5a508215c309289a079a778a91c3e6fc359d644d230de8d23f049 install-T.patch" diff --git a/user/i3lock/APKBUILD b/user/i3lock/APKBUILD index 9791fdc02..8080867c7 100644 --- a/user/i3lock/APKBUILD +++ b/user/i3lock/APKBUILD @@ -1,15 +1,16 @@ # Contributor: Johannes Matheis <jomat+alpinebuild@jmt.gr> -# Maintainer: +# Maintainer: Max Rees <maxcrees@me.com> pkgname=i3lock -pkgver=2.10 -pkgrel=1 +pkgver=2.11 +pkgrel=0 pkgdesc="Simple X11 screen locker" url="https://i3wm.org/i3lock/" arch="all" +options="!check" # No test suite. license="MIT" depends="xkeyboard-config" makedepends="cairo-dev libev-dev libxkbcommon-dev linux-pam-dev cmd:which - xcb-util-image-dev" + xcb-util-image-dev xcb-util-xrm-dev" subpackages="$pkgname-doc" source="$url/$pkgname-$pkgver.tar.bz2" @@ -19,24 +20,26 @@ prepare() { # At present, this has no functional difference. # But when we start developing our PAM stack into something more # mature, this will be important, because i3lock runs unprivileged. - sed -i -e 's:login:base-auth:g' i3lock.pam + sed -i -e 's:login:base-auth:g' pam/i3lock } build() { cd "$builddir" - make -} -check() { - cd "$builddir" - ./i3lock -v + ./configure \ + --build=$CBUILD \ + --host=$CHOST \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --localstatedir=/var + + make } package() { cd "$builddir" make DESTDIR="$pkgdir" install - install -m755 -d "$pkgdir/usr/share/man/man1/" - install -m644 $pkgname.1 "$pkgdir/usr/share/man/man1/" } -sha512sums="ea865b202668212b58d0b97d0263171847e1bd0c529e2fd3d26c15ef253861b9a8357ff2efaa6a4f342c4d0d1ab03bc00f95f4d4008760ec8e0767ac29195517 i3lock-2.10.tar.bz2" +sha512sums="c00741a66fdb5477a4b7e993d173f98fe95f0254fa74c50f83ddf8078a477d26a9fab126fbe31b509df2dbd35ed5ec64b95475621b8babf6f6c0f6db38160c8a i3lock-2.11.tar.bz2" diff --git a/user/i3wm/APKBUILD b/user/i3wm/APKBUILD new file mode 100644 index 000000000..197cbd45f --- /dev/null +++ b/user/i3wm/APKBUILD @@ -0,0 +1,49 @@ +# Contributor: Sören Tempel <soeren+alpine@soeren-tempel.net> +# Contributor: Natanael Copa <ncopa@alpinelinux.org> +# Maintainer: Dan Theisen <djt@hxx.in> +pkgname=i3wm +pkgver=4.15 +pkgrel=0 +pkgdesc="Improved dynamic tiling window manager" +url="http://i3wm.org" +arch="all" +license="BSD-3-Clause" +options="!check" # The test suite requires X +makedepends="bison flex libxcb-dev xcb-util-cursor-dev xcb-util-keysyms-dev + xcb-util-wm-dev libev-dev pango-dev cairo-dev yajl-dev + startup-notification-dev pcre-dev libxkbcommon-dev xcb-util-xrm-dev" +checkdepends="perl-x11-xcb perl-anyevent perl-json-xs perl-ipc-run + perl-inline-c perl-dev libxcb-dev xcb-util-dev xorg-server-xephyr" +subpackages="$pkgname-doc" +source="http://i3wm.org/downloads/i3-$pkgver.tar.bz2 + i3wm-musl-glob-tilde.patch + i3wm-test-fix-off_t.patch + i3wm-test-disable-branch-check.patch" +builddir="$srcdir/i3-$pkgver" + +build() { + cd "$builddir" + ./configure \ + --prefix="/usr" \ + --disable-builddir \ + --sysconfdir="/etc" + make +} + +check() { + cd "$builddir" + make check +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir/" install + + install -d "$pkgdir/usr/share/man/man1" + install -m644 man/*.1 "$pkgdir"/usr/share/man/man1/ +} + +sha512sums="60ab61b7e380342126bea12fb4371f98fcf18f6435f79a9519d3f59cfabdb170634366036e1aa20c5592da0832b03140ad1f0c72bad3cfaace0b7c57ad01dfc4 i3-4.15.tar.bz2 +8ce7d00371c43b93dabbe0dadf9caf7c58a68f4a0079f5a9b9552c15c55bfa0df16d7e87a281595af2ac5254632ba28ccf82a467cea16159b41490f6f2910299 i3wm-musl-glob-tilde.patch +77224b994397b2e2487ae28dfd5781b3630654191813eb3c685f05ebf446e65c36e53a665ff3cc8323ea67e87f7cf977044025dade0a6ed22cbd84f0e6b4cbc7 i3wm-test-fix-off_t.patch +a80384965dff62c51ce77e2baa3cf1b0b6db1df68994ce98383f96554bd296b4b59527fb5b1cb24b08c123699e294ba9b3baaa52afe88d87e7a76f0629194b1f i3wm-test-disable-branch-check.patch" diff --git a/user/i3wm/i3wm-musl-glob-tilde.patch b/user/i3wm/i3wm-musl-glob-tilde.patch new file mode 100644 index 000000000..82ad6195b --- /dev/null +++ b/user/i3wm/i3wm-musl-glob-tilde.patch @@ -0,0 +1,73 @@ +diff -urp i3-4.11/i3bar/src/main.c i3-4.11.new/i3bar/src/main.c +--- i3-4.11/i3bar/src/main.c 2015-09-30 07:55:10.000000000 +0100 ++++ i3-4.11.new/i3bar/src/main.c 2016-02-08 20:03:41.777392482 +0000 +@@ -45,14 +45,20 @@ void debuglog(char *fmt, ...) { + * + */ + char *expand_path(char *path) { +- static glob_t globbuf; +- if (glob(path, GLOB_NOCHECK | GLOB_TILDE, NULL, &globbuf) < 0) { +- ELOG("glob() failed\n"); +- exit(EXIT_FAILURE); ++ char *home, *expanded; ++ ++ if (strncmp(path, "~/", 2) == 0) { ++ home = getenv("HOME"); ++ if (home != NULL) { ++ /* new length: sum - 1 (omit '~') + 1 (for '\0') */ ++ expanded = scalloc(strlen(home)+strlen(path), 1); ++ strcpy(expanded, home); ++ strcat(expanded, path+1); ++ return expanded; ++ } + } +- char *result = sstrdup(globbuf.gl_pathc > 0 ? globbuf.gl_pathv[0] : path); +- globfree(&globbuf); +- return result; ++ ++ return sstrdup(path); + } + + void print_usage(char *elf_name) { +diff -urp i3-4.11/libi3/resolve_tilde.c i3-4.11.new/libi3/resolve_tilde.c +--- i3-4.11/libi3/resolve_tilde.c 2015-09-30 07:55:10.000000000 +0100 ++++ i3-4.11.new/libi3/resolve_tilde.c 2016-02-08 20:03:47.849230953 +0000 +@@ -19,27 +19,18 @@ + * + */ + char *resolve_tilde(const char *path) { +- static glob_t globbuf; +- char *head, *tail, *result; ++ char *home, *expanded; + +- tail = strchr(path, '/'); +- head = sstrndup(path, tail ? (size_t)(tail - path) : strlen(path)); +- +- int res = glob(head, GLOB_TILDE, NULL, &globbuf); +- free(head); +- /* no match, or many wildcard matches are bad */ +- if (res == GLOB_NOMATCH || globbuf.gl_pathc != 1) +- result = sstrdup(path); +- else if (res != 0) { +- err(EXIT_FAILURE, "glob() failed"); +- } else { +- head = globbuf.gl_pathv[0]; +- result = scalloc(strlen(head) + (tail ? strlen(tail) : 0) + 1, 1); +- strncpy(result, head, strlen(head)); +- if (tail) +- strncat(result, tail, strlen(tail)); ++ if (strncmp(path, "~/", 2) == 0) { ++ home = getenv("HOME"); ++ if (home != NULL) { ++ /* new length: sum - 1 (omit '~') + 1 (for '\0') */ ++ expanded = scalloc(strlen(home)+strlen(path), 1); ++ strcpy(expanded, home); ++ strcat(expanded, path+1); ++ return expanded; ++ } + } +- globfree(&globbuf); + +- return result; ++ return sstrdup(path); + } diff --git a/user/i3wm/i3wm-test-disable-branch-check.patch b/user/i3wm/i3wm-test-disable-branch-check.patch new file mode 100644 index 000000000..ac3572e9b --- /dev/null +++ b/user/i3wm/i3wm-test-disable-branch-check.patch @@ -0,0 +1,10 @@ +--- i3-4.15/testcases/t/193-ipc-version.t.old 2018-03-10 09:29:14.000000000 -0800 ++++ i3-4.15/testcases/t/193-ipc-version.t 2018-09-27 16:49:56.599257224 -0700 +@@ -32,6 +32,6 @@ + + is(int($version->{minor}), $version->{minor}, 'minor version is an integer'); + is(int($version->{patch}), $version->{patch}, 'patch version is an integer'); +-like($version->{human_readable}, qr/branch/, 'human readable version contains branch name'); ++#like($version->{human_readable}, qr/branch/, 'human readable version contains branch name'); + + done_testing; diff --git a/user/i3wm/i3wm-test-fix-off_t.patch b/user/i3wm/i3wm-test-fix-off_t.patch new file mode 100644 index 000000000..1aeb69be6 --- /dev/null +++ b/user/i3wm/i3wm-test-fix-off_t.patch @@ -0,0 +1,26 @@ +--- i3-4.15/testcases/lib/i3test/XTEST.pm.old 2018-09-27 16:18:59.682101063 -0700 ++++ i3-4.15/testcases/lib/i3test/XTEST.pm 2018-09-27 16:20:33.723493893 -0700 +@@ -39,6 +39,7 @@ + my %sn_config; + BEGIN { + %sn_config = ExtUtils::PkgConfig->find('xcb-xkb xcb-xtest xcb-util'); ++ $sn_config{cflags} .= ' -D_GNU_SOURCE'; + } + + use Inline C => Config => LIBS => $sn_config{libs}, CCFLAGS => $sn_config{cflags}; +--- i3-4.15/testcases/t/175-startup-notification.t.old 2018-09-27 16:24:17.546808884 -0700 ++++ i3-4.15/testcases/t/175-startup-notification.t 2018-09-27 16:24:55.587372292 -0700 +@@ -31,11 +31,13 @@ + my %sn_config; + BEGIN { + %sn_config = ExtUtils::PkgConfig->find('libstartup-notification-1.0'); ++ $sn_config{cflags} .= ' -D_GNU_SOURCE'; + } + + use Inline C => Config => LIBS => $sn_config{libs}, CCFLAGS => $sn_config{cflags}; + use Inline C => <<'END_OF_C_CODE'; + ++#include <sys/types.h> + #include <xcb/xcb.h> + + #define SN_API_NOT_YET_FROZEN 1 diff --git a/user/iceauth/APKBUILD b/user/iceauth/APKBUILD new file mode 100644 index 000000000..5f59f51ce --- /dev/null +++ b/user/iceauth/APKBUILD @@ -0,0 +1,34 @@ +# Maintainer: +pkgname=iceauth +pkgver=1.0.8 +pkgrel=0 +pkgdesc="X.Org ICE authority file utility" +url="http://xorg.freedesktop.org" +arch="all" +license="MIT" +subpackages="$pkgname-doc" +makedepends="libice-dev util-macros" +source="http://www.x.org/releases/individual/app/iceauth-$pkgver.tar.bz2" + + +build() { + cd "$builddir" + ./configure \ + --build=$CBUILD \ + --host=$CHOST \ + --prefix=/usr \ + --mandir=/usr/share/man + make +} + +check() { + cd "$builddir" + make check +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install +} + +sha512sums="9d4520adf951b16a3e784349dbb70d5d8176b74b956f8adc63abf55d049745c113b03ccfa60a281fc39b487db3742302dc6287c9985ce83a0157bf4674df2af1 iceauth-1.0.8.tar.bz2" diff --git a/user/imagemagick/APKBUILD b/user/imagemagick/APKBUILD index 021b389de..ad8952d8f 100644 --- a/user/imagemagick/APKBUILD +++ b/user/imagemagick/APKBUILD @@ -2,10 +2,10 @@ # Contributor: Carlo Landmeter <clandmeter@gmail.com> # Maintainer: pkgname=imagemagick -pkgver=7.0.8.7 +pkgver=7.0.8.12 _abiver=7 _pkgver=${pkgver%.*}-${pkgver##*.} -pkgrel=1 +pkgrel=0 pkgdesc="A collection of tools and libraries for many image formats" url="http://www.imagemagick.org/" arch="all" @@ -81,4 +81,4 @@ _cxx() { mv "$pkgdir"/usr/lib/libMagick++*.so.* "$subpkgdir"/usr/lib/ } -sha512sums="b1db005899b7c55c1794be1edfb0596989d8e4b4e521a1dadf28b837ba16b337587ac0a0a17c1c441a0085df56cfc3386d9f750fa83fd5ea8e3eb2d1398e58cd ImageMagick-7.0.8-7.tar.xz" +sha512sums="b4b9d252e12fe60cb046e64558465eea5e635fd133053732810f0cbc7e68efb2d2b4a336b28b3e7e985e659bb07eabc4709ed437f0f20e57bcc5a9a13fa3cc31 ImageMagick-7.0.8-12.tar.xz" diff --git a/user/imake/APKBUILD b/user/imake/APKBUILD new file mode 100644 index 000000000..ba5585c32 --- /dev/null +++ b/user/imake/APKBUILD @@ -0,0 +1,27 @@ +# Contributor: Natanael Copa <ncopa@alpinelinux.org> +# Maintainer: Dan Theisen <djt@hxx.in> +pkgname=imake +pkgver=1.0.7 +pkgrel=0 +pkgdesc="X Windows make utility" +url="http://www.x.org" +arch="all" +license="X11" +options="!check" # No testsuite +depends="" +makedepends="util-macros xorgproto-dev" +subpackages="$pkgname-doc" +source="http://ftp.x.org/pub/individual/util/$pkgname-$pkgver.tar.bz2" + +build() { + cd "$builddir" + ./configure --prefix=/usr + make +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install +} + +sha512sums="b3527c8fead25c6e093e1fe4a39e60ff210212dcd323e206505b9e872a3f36d9db85f85cab5a6f0fa914fa5c558ef54b499b2b13ccd66739223e4e72ef805d08 imake-1.0.7.tar.bz2" diff --git a/user/iperf3/APKBUILD b/user/iperf3/APKBUILD new file mode 100644 index 000000000..1e1fad965 --- /dev/null +++ b/user/iperf3/APKBUILD @@ -0,0 +1,57 @@ +# Contributor: Michael Mason <ms13sp@gmail.com> +# Contributor: Natanael Copa <ncopa@alpinelinux.org> +# Maintainer: Dan Theisen <djt@hxx.in> +pkgname=iperf3 +_pkgname=iperf +pkgver=3.6 +pkgrel=0 +pkgdesc="A tool to measure IP bandwidth using UDP or TCP" +url="https://software.es.net/iperf/" +arch="all" +license="BSD-3-Clause" +depends="" +makedepends="" +install="" +subpackages="$pkgname-doc $pkgname-openrc" +source="$pkgname-$pkgver.tar.gz::https://downloads.es.net/pub/$_pkgname/$_pkgname-$pkgver.tar.gz + $_pkgname.initd + $_pkgname.confd + + build-fixes.patch + remove-pg-flags.patch + " +builddir="$srcdir/$_pkgname-$pkgver" + +build() { + cd "$builddir" + CFLAGS="$CFLAGS -D_GNU_SOURCE" + ./configure \ + --build=$CBUILD \ + --host=$CHOST \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --infodir=/usr/share/info + make +} + +check() { + cd "$builddir" + make check +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + + install -Dm755 "$srcdir"/$_pkgname.initd \ + "$pkgdir"/etc/init.d/$_pkgname + install -Dm644 "$srcdir"/$_pkgname.confd \ + "$pkgdir"/etc/conf.d/$_pkgname +} + +sha512sums="322a6893ad28c6ce9c9849e8a0326408ed76f09bbb13591c01c3d051bd4777a2acdb8f5032b9d1bb37d47ad3818d8b18ab6c0be4d40559040eb7e57bbfc06f39 iperf3-3.6.tar.gz +339fb04b41cce11e8ea8694d95c13af9c88e0d1143356d913ec810c9b11efa27212d585b5dcc49cc2eb860a6d8bc557092c8659d7d5cfe532c5afdb36f8eedf8 iperf.initd +fb5e155fff568a72488cc1511d30358835a48bcce309f8f46d040160932b4a4ccb85040c27c60dee477900a25bd34c50eac21d1d0bea984b40faa401be2ba7e8 iperf.confd +126043503eebf84bccf26758f18715eaf81131e2fc9ef1fe829e55acb2f14e97db18e9b890b8bf13c230ac80c7537615272af4e072808e25bde8ddd6f326f198 build-fixes.patch +ed0fb3a3af0dae3e9f58ff6643cb15defdd31f65cf966a6013fdf2a7fd67a7f8ef522a7c8f3269bd43d5ca991a86d758526c384ebc0984b1403bb24f61a1779b remove-pg-flags.patch" diff --git a/user/iperf3/build-fixes.patch b/user/iperf3/build-fixes.patch new file mode 100644 index 000000000..b797e70ea --- /dev/null +++ b/user/iperf3/build-fixes.patch @@ -0,0 +1,20 @@ +--- a/src/t_timer.c ++++ b/src/t_timer.c +@@ -33,6 +33,7 @@ + #include <stdlib.h> + #include <unistd.h> + #include <sys/time.h> ++#include <sys/types.h> + + #include "timer.h" + +--- a/src/t_uuid.c ++++ b/src/t_uuid.c +@@ -28,6 +28,7 @@ + #include <stdlib.h> + #include <string.h> + #include <sys/time.h> ++#include <sys/types.h> + + #include "iperf_util.h" + diff --git a/user/iperf3/iperf.confd b/user/iperf3/iperf.confd new file mode 100644 index 000000000..1f425faa6 --- /dev/null +++ b/user/iperf3/iperf.confd @@ -0,0 +1,3 @@ +# Default option for iperf: --server (runs in TCP/5001 mode) +# For further server options check --help flag +command_args="" diff --git a/user/iperf3/iperf.initd b/user/iperf3/iperf.initd new file mode 100644 index 000000000..a135bafc9 --- /dev/null +++ b/user/iperf3/iperf.initd @@ -0,0 +1,18 @@ +#!/sbin/openrc-run + +command="/usr/bin/iperf" +pidfile="/var/run/$SVCNAME/$SVCNAME.pid" + +depend() { + need net + after firewall +} + +start() { + ebegin "Starting $SVCNAME" + start-stop-daemon --start --make-pid --user ${exec_user:-nobody} \ + --pidfile ${pidfile} --background --exec $command \ + -- --server ${command_args} + eend +} + diff --git a/user/iperf3/remove-pg-flags.patch b/user/iperf3/remove-pg-flags.patch new file mode 100644 index 000000000..1ed47eebf --- /dev/null +++ b/user/iperf3/remove-pg-flags.patch @@ -0,0 +1,29 @@ +--- a/src/Makefile.am ++++ b/src/Makefile.am +@@ -50,9 +50,9 @@ + iperf3_profile_SOURCES = main.c \ + $(libiperf_la_SOURCES) + +-iperf3_profile_CFLAGS = -pg -g ++iperf3_profile_CFLAGS = -g + iperf3_profile_LDADD = libiperf.la +-iperf3_profile_LDFLAGS = -pg -g ++iperf3_profile_LDFLAGS = -g + + # Specify the sources and various flags for the test cases + t_timer_SOURCES = t_timer.c + +--- a/src/Makefile.in ++++ b/src/Makefile.in +@@ -643,9 +643,9 @@ + iperf3_profile_SOURCES = main.c \ + $(libiperf_la_SOURCES) + +-iperf3_profile_CFLAGS = -pg -g ++iperf3_profile_CFLAGS = -g + iperf3_profile_LDADD = libiperf.la +-iperf3_profile_LDFLAGS = -pg -g ++iperf3_profile_LDFLAGS = -g + + # Specify the sources and various flags for the test cases + t_timer_SOURCES = t_timer.c diff --git a/user/ipmiutil/APKBUILD b/user/ipmiutil/APKBUILD new file mode 100644 index 000000000..fdf32fbe2 --- /dev/null +++ b/user/ipmiutil/APKBUILD @@ -0,0 +1,45 @@ +# Maintainer: A. Wilcox <awilfox@adelielinux.org> +pkgname=ipmiutil +pkgver=3.1.3 +pkgrel=0 +pkgdesc="IPMI Management Utilities" +url="http://ipmiutil.sourceforge.net/" +arch="all" +options="!check" # No test suite shipped. +license="BSD-2-Clause AND BSD-3-Clause AND GPL-2.0+" +depends_dev="openssl-dev" +makedepends="$depends_dev linux-headers" +subpackages="$pkgname-dev $pkgname-doc $pkgname-openrc" +source="https://downloads.sourceforge.net/project/ipmiutil/ipmiutil-$pkgver.tar.gz + ipmiutil-3.0.7-fix-sha256.patch" + +prepare() { + cd "$builddir" + default_prepare + update_config_sub +} + +build() { + cd "$builddir" + ./configure \ + --build=$CBUILD \ + --host=$CHOST \ + --prefix=/usr \ + --sysconfdir=/etc \ + --libdir=/usr/lib \ + --mandir=/usr/share/man \ + --infodir=/usr/share/info \ + --localstatedir=/var \ + --disable-systemd \ + --enable-sha256 \ + --enable-gpl + make +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install +} + +sha512sums="bd1f95b59583a07a5b6001b40e59269f25eb63b69e33f7fad6dd40136e1ea7611e647eb5ed2e2a9746944bde2dc2a3aa2def44238947693d75d9ca48697e1b99 ipmiutil-3.1.3.tar.gz +74e8951bccd004f765b99de87dc5f04834e594b3e14ba885148fb971eaf15164ccac2de880e409f201a38cba5c0948a0fabc04e1e34fb396f50b1ecddb6b305b ipmiutil-3.0.7-fix-sha256.patch" diff --git a/user/ipmiutil/ipmiutil-3.0.7-fix-sha256.patch b/user/ipmiutil/ipmiutil-3.0.7-fix-sha256.patch new file mode 100644 index 000000000..1cc1b5532 --- /dev/null +++ b/user/ipmiutil/ipmiutil-3.0.7-fix-sha256.patch @@ -0,0 +1,68 @@ +--- ipmiutil-3.0.7/lib/Makefile.am.old 2017-09-20 10:08:20.000000000 -0500 ++++ ipmiutil-3.0.7/lib/Makefile.am 2018-01-01 18:03:45.080832425 -0600 +@@ -33,10 +33,11 @@ + else cp -f libipmiapi64.a.redhat libipmiapi.a; fi \ + else cp -f libipmiapi32.a libipmiapi.a; fi \ + fi +- if [ "$(PLUSFLAGS)" = "-DHAVE_LANPLUS" ]; then \ +- cd lanplus; make clean; make ; \ +- pwd; cp -f libipmi_lanplus.a .. ; \ +- fi ++ case "$(PLUSFLAGS)" in \ ++ "-DHAVE_LANPLUS"*) \ ++ cd lanplus; make clean; make ; \ ++ pwd; cp -f libipmi_lanplus.a .. ;; \ ++ esac + + clean: + rm -f libipmiapi.a lib*_lanplus.a lib*_lanplus.so +@@ -51,10 +52,11 @@ + cd lanplus; make distclean + + install: +- if [ "$(PLUSFLAGS)" = "-DHAVE_LANPLUS" ]; then \ +- $(MKDIR) ${datato} ; \ +- cd lanplus; make install ; \ +- fi ++ case "$(PLUSFLAGS)" in \ ++ "-DHAVE_LANPLUS"*) \ ++ $(MKDIR) ${datato} ; \ ++ cd lanplus; make install ;; \ ++ esac + + check: + +--- ipmiutil-3.0.7/lib/Makefile.in.old 2017-09-20 10:08:28.000000000 -0500 ++++ ipmiutil-3.0.7/lib/Makefile.in 2018-01-01 18:02:55.187678005 -0600 +@@ -392,10 +392,11 @@ + else cp -f libipmiapi64.a.redhat libipmiapi.a; fi \ + else cp -f libipmiapi32.a libipmiapi.a; fi \ + fi +- if [ "$(PLUSFLAGS)" = "-DHAVE_LANPLUS" ]; then \ +- cd lanplus; make clean; make ; \ +- pwd; cp -f libipmi_lanplus.a .. ; \ +- fi ++ case "$(PLUSFLAGS)" in \ ++ "-DHAVE_LANPLUS"*) \ ++ cd lanplus; make clean; make ; \ ++ pwd; cp -f libipmi_lanplus.a .. ;; \ ++ esac + + clean: + rm -f libipmiapi.a lib*_lanplus.a lib*_lanplus.so +@@ -410,10 +411,11 @@ + cd lanplus; make distclean + + install: +- if [ "$(PLUSFLAGS)" = "-DHAVE_LANPLUS" ]; then \ +- $(MKDIR) ${datato} ; \ +- cd lanplus; make install ; \ +- fi ++ case "$(PLUSFLAGS)" in \ ++ "-DHAVE_LANPLUS"*) \ ++ $(MKDIR) ${datato} ; \ ++ cd lanplus; make install ;; \ ++ esac + + check: + diff --git a/user/json-glib/APKBUILD b/user/json-glib/APKBUILD new file mode 100644 index 000000000..a297939df --- /dev/null +++ b/user/json-glib/APKBUILD @@ -0,0 +1,32 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=json-glib +pkgver=1.4.4 +pkgrel=0 +pkgdesc="GObject-based library for JSON (de)serialization" +url="https://live.gnome.org/JsonGlib" +arch="all" +options="!check" # no tests +license="LGPL-2.1+" +makedepends="glib-dev gobject-introspection-dev meson ninja" +subpackages="$pkgname-dev $pkgname-lang" +source="https://download.gnome.org/sources/json-glib/1.4/json-glib-$pkgver.tar.xz" + +build() { + cd "$builddir" + meson \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --localstatedir=/var \ + --buildtype=release \ + . output + ninja -C output +} + +package() { + cd "$builddir" + DESTDIR="$pkgdir" ninja -C output install +} + +sha512sums="cf56a99dce3938b5c0075810f105719836fac65392da33a49b26ebf33aee1fab89ca9fac58059a2008d688ecc75a3e524de60621a5b027d566963541f38b971f json-glib-1.4.4.tar.xz" diff --git a/user/juk/APKBUILD b/user/juk/APKBUILD index a0430d44a..233f165ed 100644 --- a/user/juk/APKBUILD +++ b/user/juk/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=juk -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="KDE Jukebox" url="https://juk.kde.org/" @@ -42,4 +42,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="4b5cffc92545242543b5184d0b3ddf0858ff8ddfe49e7ca65ee95e02a7a3add3395f0f084cbea44a0493c0535a8ea70b98ab5326d621ccb849501ffa3ee01a18 juk-18.08.1.tar.xz" +sha512sums="5da50b30ed7a459957278b509db05411553a3c6c7677b4821ff5e7686a02069025131003c9877775fda2c9a3f7330436bcd2b5fac11b5441d645a44e5cda53e4 juk-18.08.2.tar.xz" diff --git a/user/kactivities-stats/APKBUILD b/user/kactivities-stats/APKBUILD index a458d957d..505c9f327 100644 --- a/user/kactivities-stats/APKBUILD +++ b/user/kactivities-stats/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kactivities-stats -pkgver=5.50.0 +pkgver=5.51.0 pkgrel=0 pkgdesc="Gather statistics about KDE activities" url="https://api.kde.org/frameworks/kactivities/html/index.html" @@ -43,4 +43,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="0a8e76797333ac0ca29bd734c4c6acb4d2dc07deac0ebe7cfb5e32a2a61ea9537fc9b011dc6aad5c7ad70a6e3cf853d6ce847c612d56559a715b8c8a1378d714 kactivities-stats-5.50.0.tar.xz" +sha512sums="58b42e98bb0ee112974e6ec09b80433aa8536272a8e1c9c81ee509b450957caf108214b3d9e0d0e8c19c1553cd3422d9116d96a1e0cfbd2326e16c8987d6228e kactivities-stats-5.51.0.tar.xz" diff --git a/user/kactivities/APKBUILD b/user/kactivities/APKBUILD index 399d8dc61..77cdc4f59 100644 --- a/user/kactivities/APKBUILD +++ b/user/kactivities/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kactivities -pkgver=5.50.0 +pkgver=5.51.0 pkgrel=0 pkgdesc="Runtime and library to organize work into separate activities" url="https://api.kde.org/frameworks/kactivities/html/index.html" @@ -48,4 +48,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="dde9466f632768664114b791aaea1315dc7535545b66cd874109b83896d29fcb692f9598adefd601687540de5f960d5e238cce4110d484b71b1cc9021fa984c4 kactivities-5.50.0.tar.xz" +sha512sums="ee9d1429fb1333b9ce6607e865085336bc2d3ccef3fbbf386b2ab83a5c71987da67279cfaf5423158f536e04cdacfd0f53d5421e003a9c9c9c1b20e4dc44052d kactivities-5.51.0.tar.xz" diff --git a/user/kalgebra/APKBUILD b/user/kalgebra/APKBUILD index 12fe2048a..afed045d5 100644 --- a/user/kalgebra/APKBUILD +++ b/user/kalgebra/APKBUILD @@ -1,13 +1,13 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kalgebra -pkgver=18.08.1 -pkgrel=0 +pkgver=18.08.2 +pkgrel=1 pkgdesc="Graph calculator and plotter" url="https://www.kde.org/applications/education/kalgebra/" arch="all" license="GPL-2.0-only" -depends="" +depends="kirigami2 qt5-qtquickcontrols" makedepends="cmake extra-cmake-modules qt5-qtbase-dev qt5-qtdeclarative-dev qt5-qtsvg-dev analitza-dev ncurses-dev ki18n-dev kdoctools-dev kio-dev kconfigwidgets-dev kwidgetsaddons-dev" @@ -40,4 +40,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="ecad3a4b56cca0e017d4a168863a03b464955633b36ba76286ff825ddd6779816d9f5e9d4100fedf8b7d079cd7e75c5e37528eda2ca7715f0f1e2a4026d7614f kalgebra-18.08.1.tar.xz" +sha512sums="d569fe79602cfe4dda84014eed58918a71da75f2735d2b736a63070e919213e6e0333fb5eb70cfd7c03e128d0976a1f5b946beea47da495b12dd230abc65979c kalgebra-18.08.2.tar.xz" diff --git a/user/kalzium/APKBUILD b/user/kalzium/APKBUILD index 37fe3cc57..4c0b89360 100644 --- a/user/kalzium/APKBUILD +++ b/user/kalzium/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kalzium -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="Periodic table of elements (PSE) with calculators" url="https://www.kde.org/applications/education/kalzium/" @@ -43,4 +43,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="9d7caa714c3f8b345852539559d143009df7a334a4298fe2ef0d191277d55d8912c2487436cb815bb6e79eb3ac093f943002e09c0e25eb7644ef5d0904b57901 kalzium-18.08.1.tar.xz" +sha512sums="ecd99414627e4771bc0f8af92a451443f0bafd05be273ff47a3b4a41df20a9b3b9b5b4c69dbd60b41547001770b0721dc04a4983b752654e62f12d34b0c92290 kalzium-18.08.2.tar.xz" diff --git a/user/kanagram/APKBUILD b/user/kanagram/APKBUILD index faaa5ef64..f74fb4b88 100644 --- a/user/kanagram/APKBUILD +++ b/user/kanagram/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kanagram -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="Letter order (anagram) game" url="https://www.kde.org/applications/education/kanagram/" @@ -41,4 +41,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="6595fff9c3ebf8a795e9e57ce74f53b00cc3b15a0d0a1ceb823a969c211ade9348bdecaea7ccd65f504449057c859cdce57c43f580950afbbd84cccef4d614c1 kanagram-18.08.1.tar.xz" +sha512sums="510e24af92e901cc4342770f567716850d9a8a525ab932ae99a48dd6c3bb7b1461e4997637fcdea81d9a661043197170938a2a013e2cf9052e12b24077f3610e kanagram-18.08.2.tar.xz" diff --git a/user/kapman/APKBUILD b/user/kapman/APKBUILD index 884546ee4..9b22a4809 100644 --- a/user/kapman/APKBUILD +++ b/user/kapman/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kapman -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="Pac-Man clone" url="https://www.kde.org/applications/games/kapman/" @@ -40,4 +40,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="bfd3772f86d3a5d3b00aae9a6e5ba423d50ad86765a6bcd7bc7192740c7e341daf869156e65829cd9231c10139d93f5fb357174bdd792a2cce66ba3853e9439f kapman-18.08.1.tar.xz" +sha512sums="f8369640323a6f8cf319503088158706e59b2ccd87bc948222673012e7bff0431673227c48231aba7e55b484b02a32432b3d35d2a70f112dab829dd5d6990056 kapman-18.08.2.tar.xz" diff --git a/user/karchive/APKBUILD b/user/karchive/APKBUILD index b39098951..c11f3b2f5 100644 --- a/user/karchive/APKBUILD +++ b/user/karchive/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=karchive -pkgver=5.50.0 +pkgver=5.51.0 pkgrel=0 pkgdesc="Framework for manipulating archive files" url="https://www.kde.org/" @@ -41,4 +41,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="8042ef931c8d2c6eeb84f6ea33858fb111f7e08bbc012b333eed33c278eff9269ae263b50110201fb448d5e213598a2afebf542e7d0f6c3fdcdc944ed2ddfaba karchive-5.50.0.tar.xz" +sha512sums="dcd676a5ab7a8a45e79c0b13abf14ac5ab6b37454f5c79838a183956e57b801ce880cbe5cca5fe6f033ec7dcffec9f788e08593509b8a40fd55a1a8da925437e karchive-5.51.0.tar.xz" diff --git a/user/kate/APKBUILD b/user/kate/APKBUILD index dd8e29ea2..5a8e2c3fc 100644 --- a/user/kate/APKBUILD +++ b/user/kate/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kate -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="Advanced text editor with autocomplete, syntax highlighting, and more" url="https://kate-editor.org/" @@ -92,4 +92,4 @@ kwrite_lang() { done } -sha512sums="cd76272aa540aac13da8fd078ee0d5b020645c51fd16ed341e91383570d3e30d0005bdd7702c2b145538df7252443bee8c927281f93a8473b42166bf964a1b41 kate-18.08.1.tar.xz" +sha512sums="c1ab11798d5fc209a2a592a44e7b7b1fa0f2ee1c17c8cbbfa9673810b8e64194a7e402c62eca3914720cd953d656367b9374858f7699a2cec42f9e3978e8b936 kate-18.08.2.tar.xz" diff --git a/user/katomic/APKBUILD b/user/katomic/APKBUILD index 37ead7ff1..460eb8d6d 100644 --- a/user/katomic/APKBUILD +++ b/user/katomic/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=katomic -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="Fun, educational game involving molecular geometry" url="https://games.kde.org/game.php?game=katomic" @@ -40,4 +40,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="669e9b77689853270983e290df6a8ae8690544e589b11d14125a4696c12f34d4197d364d0c03d45407d6a1e69af1a1fbea94e61f16e6b6c9933131df751de32d katomic-18.08.1.tar.xz" +sha512sums="9cee37030359f52a9b34072ae88ab6a6697c847fe9ba0122a249f26399e7d08434ccf2a5f7448335aa369a6328eb57eeab2a50701f647a63967bbd506f6e9623 katomic-18.08.2.tar.xz" diff --git a/user/kauth/APKBUILD b/user/kauth/APKBUILD index 84fce7ccc..f1351b0ae 100644 --- a/user/kauth/APKBUILD +++ b/user/kauth/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kauth -pkgver=5.50.0 +pkgver=5.51.0 pkgrel=0 pkgdesc="Framework for allowing software to gain temporary privileges" url="https://www.kde.org/" @@ -40,4 +40,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="c31614178529262188ae83815b88cbe4553480e81b9d98ddab0bd6dd1656504930b8df211ab12c3b1510dd616cc0b681697eaf214b426b347b4377311f6d0c00 kauth-5.50.0.tar.xz" +sha512sums="7d559818acd84b2f24cb72f7c93a1253835f87169acd0b8d54816fa5cdbb327bba2e0d04a3079adf236fca8557fb2d6cfeb17ef32cf1074bbb60e80af8ec3d17 kauth-5.51.0.tar.xz" diff --git a/user/kblackbox/APKBUILD b/user/kblackbox/APKBUILD index 162169663..7d4e8f28e 100644 --- a/user/kblackbox/APKBUILD +++ b/user/kblackbox/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kblackbox -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="Hide-and-seek logic game" url="https://www.kde.org/applications/games/kblackbox/" @@ -40,4 +40,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="ca9092b71a45dddde78da793d6ba4981ba86f909df4aae1a4db8a3517ea433ae2a48046de36d50d921209ded6680ff03a42270723ea8ddf3fdd19c51797824f2 kblackbox-18.08.1.tar.xz" +sha512sums="97aad679154a757ab66efd292f385cc95f448635e2008f786ad2fb1af7371ed67afca250750012a570c1cfb4fa697f2d5b247523c0f93e62e722eeffdcb1bfb8 kblackbox-18.08.2.tar.xz" diff --git a/user/kblocks/APKBUILD b/user/kblocks/APKBUILD index 8ffa597e5..e4c18defa 100644 --- a/user/kblocks/APKBUILD +++ b/user/kblocks/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kblocks -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="Falling blocks game" url="https://www.kde.org/applications/games/kblocks/" @@ -40,4 +40,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="1c30f91d854de088cbd1fd3b68604d1778e26284fa06f693af599934a9308f0903185369a712143d3f1b3d799a720f54e622caf8af07c08e790d1544157fd6d9 kblocks-18.08.1.tar.xz" +sha512sums="1516b5795bd091a33339f151e28c9962879f461f257ad5ce468f10d61e87b94276ce5f3d8dcd12a2e65ee35e479f07700c1f7bf35b18497965bfcf333c16f7c6 kblocks-18.08.2.tar.xz" diff --git a/user/kbookmarks/APKBUILD b/user/kbookmarks/APKBUILD index 74714a704..d96381c40 100644 --- a/user/kbookmarks/APKBUILD +++ b/user/kbookmarks/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kbookmarks -pkgver=5.50.0 +pkgver=5.51.0 pkgrel=0 pkgdesc="Framework for managing XBEL-format bookmarks" url="https://www.kde.org/" @@ -43,4 +43,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="03340e18b6c4774e4aa16af9bdadccf102fdda9caae930e92f9afed833ec3f70eae818b9dd5f51c071b52019d7b7566195d2d552cc725af575548a75d7e7575a kbookmarks-5.50.0.tar.xz" +sha512sums="ec0ce9eda15cbdd5c16469d23912d6fb8464004c4f7cee1a6ea7be3d1d53cebf5daaa693380972e08fb763eb0f93930a32dfaa2e3213e56a6f50d305ff9acac1 kbookmarks-5.51.0.tar.xz" diff --git a/user/kbounce/APKBUILD b/user/kbounce/APKBUILD index ee8ede952..fa7ade737 100644 --- a/user/kbounce/APKBUILD +++ b/user/kbounce/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kbounce -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="Puzzle/arcade game to build walls" url="https://games.kde.org/game.php?game=kbounce" @@ -41,4 +41,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="f7c97c133f69a8a8db2cff91eba30d9aad3c4e340145b7e57db9fbe8a85c429896936fd258622158f283cb36b3d670bbd52056b9a249f6db79a27abf83cd293a kbounce-18.08.1.tar.xz" +sha512sums="6b74b150482e4ce8565d596de0f9cd33449cc64abd145aae8d0fb5cb0e42128a6e740d2bf20271aff0cc3a0e7de8b6b99270db6a11012c4334a581b6fc296601 kbounce-18.08.2.tar.xz" diff --git a/user/kbreakout/APKBUILD b/user/kbreakout/APKBUILD index b72d8629c..e9c0ce753 100644 --- a/user/kbreakout/APKBUILD +++ b/user/kbreakout/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kbreakout -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="Break-Out like game with a ball and paddle" url="https://games.kde.org/game.php?game=kbreakout" @@ -41,4 +41,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="0a069711dcaf47cdeb91ac07b714bf2fa3400877656a94188e72e25131f4c44462f27cebb0860304b6ab29aaaeba909bde931547c7b431cb95ef4cfd33a559b6 kbreakout-18.08.1.tar.xz" +sha512sums="c9d6856d3493e69bda92177c48acbc71c8ecd7674da3e1464161899cec90b825c64a0e603cbfb1a17ab479c015312d61e862298938874b207d41e962ee485111 kbreakout-18.08.2.tar.xz" diff --git a/user/kbruch/APKBUILD b/user/kbruch/APKBUILD index 83704799f..174002c9e 100644 --- a/user/kbruch/APKBUILD +++ b/user/kbruch/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kbruch -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="Practice calculating percentages and fractions" url="https://www.kde.org/applications/education/kbruch/" @@ -39,4 +39,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="8b2ef8a7137a2fa92fe76c3c653f11f641b963e051c6a6d772b9b6285e9d7e6060f6004e80fb5d460471f67db859650cbc2c959ff6db90114b4d82360cee9d8d kbruch-18.08.1.tar.xz" +sha512sums="3e5bd7f551d08dfd88fab45454d0ec7e0ba1f096177154d57536efce01233f160b8dd9e908850bd40fec01fc1d03bb8225828a7fcccd6491810c98cabe2d4c71 kbruch-18.08.2.tar.xz" diff --git a/user/kcalc/APKBUILD b/user/kcalc/APKBUILD index 7b5b9efd4..23b5e0846 100644 --- a/user/kcalc/APKBUILD +++ b/user/kcalc/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kcalc -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="Calculator with many mathematical, scientific, and logic functions" url="https://utils.kde.org/projects/kcalc/" @@ -40,4 +40,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="5d738132b06c9a866a6001007afa7c90d7df7ffade11464ff7378beb656cdc826d7b79e174c1f942f7b9e61edc32348b313dbd4e824dd34de1858b3363540f6f kcalc-18.08.1.tar.xz" +sha512sums="120d8f96291677648627a6115db53273b2ed35be5d372ecfb9bd7e6f95df476092c81cc8cd4a5d3a9409084a120c78e76b339758b08b74bfebf2db2f49621d02 kcalc-18.08.2.tar.xz" diff --git a/user/kcalcore/APKBUILD b/user/kcalcore/APKBUILD index a248e8c50..6a3bdc51c 100644 --- a/user/kcalcore/APKBUILD +++ b/user/kcalcore/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kcalcore -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="Library for managing a calendar of events" url="https://www.kde.org/" @@ -41,4 +41,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="3573b9b5314085855c7a06c87423474d5e83a3ef4b7200fab2532345774a8984c927940c3e5e26b3c1123cf1e8c944c480ea510b3577da8d7820acfa691915c8 kcalcore-18.08.1.tar.xz" +sha512sums="25add499d799d89eac2be542e8dcd6a08263a8b815c5223cfe853bffe72f8cbc2b2f08e27569272aae0b166a2e85de7670a4c9019e4637683926e0b8dfc0c651 kcalcore-18.08.2.tar.xz" diff --git a/user/kcharselect/APKBUILD b/user/kcharselect/APKBUILD index 614037e92..4ff3c7707 100644 --- a/user/kcharselect/APKBUILD +++ b/user/kcharselect/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kcharselect -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="Tool to select special characters from all installed fonts" url="https://utils.kde.org/projects/kcharselect/" @@ -39,4 +39,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="5b6c5b384747461434f37f870fab85d7cccc33e11505b1b2cf80391378ce9eff051f468875e2a1c3453c2cc5e8ee85b1c622523f1db95f59ce490fe57ec91ffb kcharselect-18.08.1.tar.xz" +sha512sums="36c2335e3db03b179b3b0942e38503e68068a3180032aa714cfe67a0f7f8d877163652caad38aefee31f4889b14e524480b16db48140a7fb85f0c49ff172f3ae kcharselect-18.08.2.tar.xz" diff --git a/user/kcmutils/APKBUILD b/user/kcmutils/APKBUILD index e7cf772aa..c712f91e6 100644 --- a/user/kcmutils/APKBUILD +++ b/user/kcmutils/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kcmutils -pkgver=5.50.0 +pkgver=5.51.0 pkgrel=0 pkgdesc="Framework for writing System Settings modules" url="https://api.kde.org/frameworks/kcmutils/html/index.html" @@ -42,4 +42,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="306c7c76c08d1ddfdec6ec0dae8367c531f174f3c1ccece3ea0d32d8650a1106be3c10741bd97d2ddff4d81f05c720e8b98d43b290bdd787a0b1269dd6d71bbb kcmutils-5.50.0.tar.xz" +sha512sums="e8edf3f80d40d12f5032f34e15f0dff69d67e4c13c643bc0a16855e86e60896add20c95e1d5c3a4c23ea36455dfda239161f77c8157759bec228c4e4653980bd kcmutils-5.51.0.tar.xz" diff --git a/user/kcodecs/APKBUILD b/user/kcodecs/APKBUILD index 36ad184d1..018ba948e 100644 --- a/user/kcodecs/APKBUILD +++ b/user/kcodecs/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kcodecs -pkgver=5.50.0 +pkgver=5.51.0 pkgrel=0 pkgdesc="Framework for manipulating strings in differing encodings" url="https://www.kde.org/" @@ -41,4 +41,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="94b8027989f317ae0f4e4563c670c8c91534ae353ca5d8e00d742c6e285d99043fd1cf0197f08408f8f66e64ab7a3c8f21055364ac8e152130c04a21c7d1f221 kcodecs-5.50.0.tar.xz" +sha512sums="18c19e968006d073badacdd94dd6ef45c57cb65cd23f92fc9d183c0d23260c6c8833721fad73c2bdb849ea8d5f109718dc9584dc18ab82853a6743ad8a7bc537 kcodecs-5.51.0.tar.xz" diff --git a/user/kcolorchooser/APKBUILD b/user/kcolorchooser/APKBUILD index 66dbf928d..71ec9615a 100644 --- a/user/kcolorchooser/APKBUILD +++ b/user/kcolorchooser/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kcolorchooser -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="Simple application to choose a colour from the screen" url="https://www.kde.org/applications/graphics/kcolorchooser/" @@ -38,4 +38,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="a2a514297dc9930d96f23f153f11b0b0a87d0bae1ecf41940665b89c2bfd3ea6c30bfdb622c47cf108e92f21bf7ac7f428f4c9414b72863b76955f18acb0f7bf kcolorchooser-18.08.1.tar.xz" +sha512sums="311501dc30f24c33bcb29eb199cd35c6ebc946340e0e8d07918f3a5e4d2f94e30d99dcde34355ee5860d488ba9b8f14f659fe4196aebe7e47eb782c502abdcb1 kcolorchooser-18.08.2.tar.xz" diff --git a/user/kcompletion/APKBUILD b/user/kcompletion/APKBUILD index 820273f90..82b0d6226 100644 --- a/user/kcompletion/APKBUILD +++ b/user/kcompletion/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kcompletion -pkgver=5.50.0 +pkgver=5.51.0 pkgrel=0 pkgdesc="Framework for implementing automatic completion of input" url="https://www.kde.org/" @@ -41,4 +41,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="27db7af56d4cafada863ae8f30a87c4d1974717ee2b3f537b235a6f1353c3976932c27308b4f9fe1a6386b0d395c22ffefb2f4c273a496a0785a34a494451c4c kcompletion-5.50.0.tar.xz" +sha512sums="b70a3e6bee33a24b5659023c496c2dba0637b4b4a130704cba428f47c63625a847365dd4cb2bebfba94b0897ace9a6361aa536d05f1ed1574f934a56d65e1a83 kcompletion-5.51.0.tar.xz" diff --git a/user/kconfig/APKBUILD b/user/kconfig/APKBUILD index e1cb1880e..2df286fcf 100644 --- a/user/kconfig/APKBUILD +++ b/user/kconfig/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kconfig -pkgver=5.50.0 +pkgver=5.51.0 pkgrel=0 pkgdesc="Framework for managing software configuration" url="https://www.kde.org/" @@ -41,4 +41,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="282a5cefb3cc1752fbfd450732bb3479751d3a20b65661da5ebe1797968f4e20f093b3e1083b232581ed375ab9314f059f13a7f8a1021c1dbb2c96d33fabe746 kconfig-5.50.0.tar.xz" +sha512sums="5362d973e9c679206ef5d02f53a781b6b8c7b9c731c04e790b2bd2731ab44f6c49e51bd94287b1a2bedc7abdca84139219155a3b05914888adff7fbe09e02b02 kconfig-5.51.0.tar.xz" diff --git a/user/kconfigwidgets/APKBUILD b/user/kconfigwidgets/APKBUILD index 0a3db8409..2a96bd48f 100644 --- a/user/kconfigwidgets/APKBUILD +++ b/user/kconfigwidgets/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kconfigwidgets -pkgver=5.50.0 +pkgver=5.51.0 pkgrel=0 pkgdesc="Framework providing widgets for software configuration" url="https://www.kde.org/" @@ -42,4 +42,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="7129f42ae1e6c80bde763ae0c44ee7913358243b49b2337d42d4aa580ff4135229c5146105a548bbff0e3234ae9990f09827218a7109d932396da2e5a82f5763 kconfigwidgets-5.50.0.tar.xz" +sha512sums="7b7f78116d590959dee0917064436cac10eb84ed21650196be416cb84a8d095231ff93cc70fd69ee5cbf327807af84c453956fcc9b1f8f4ccaaf3581b32ae9b6 kconfigwidgets-5.51.0.tar.xz" diff --git a/user/kcontacts/APKBUILD b/user/kcontacts/APKBUILD index 6ea3ca92b..1de0ef806 100644 --- a/user/kcontacts/APKBUILD +++ b/user/kcontacts/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kcontacts -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="Library for working with contact information" url="https://www.kde.org" @@ -42,4 +42,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="a28f004bb7c87206a3d063f66fae54c0147a1489bae94e7b5e5b7756f88518ddf86bd425a590483bcde6f339fbba2f76ee44e2138f595b19b1944718537c5fb2 kcontacts-18.08.1.tar.xz" +sha512sums="2ee75088f7b0a05ad6dc308542bacea34289b3ced8284df73531303f623a9b976d0cd86395123f23f1f26f25355edf4fede9ce723d7ec7f0c9191edc961828bc kcontacts-18.08.2.tar.xz" diff --git a/user/kcoreaddons/APKBUILD b/user/kcoreaddons/APKBUILD index f8d1988d2..f001ebaa0 100644 --- a/user/kcoreaddons/APKBUILD +++ b/user/kcoreaddons/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kcoreaddons -pkgver=5.50.0 +pkgver=5.51.0 pkgrel=0 pkgdesc="Core KF5 framework" url="https://www.kde.org/" @@ -42,4 +42,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="3b8f50b2775425363b83048ab78bb7999dcdfa522a4d8d002292cbaf6975747b5159687c2ce4737b17404b999ec2d6894a3acd23873480ae7376e9134f1ea887 kcoreaddons-5.50.0.tar.xz" +sha512sums="3b97ae7d161b8bd2d5d26491a5c0f07664ad238580fff802ad3a283803adf0725b67d5a9a473ed05ef02e5b0a454ac8d089abfe93ad3e8e24bc26ed0028e2f86 kcoreaddons-5.51.0.tar.xz" diff --git a/user/kcrash/APKBUILD b/user/kcrash/APKBUILD index ac76418fd..aa43158a6 100644 --- a/user/kcrash/APKBUILD +++ b/user/kcrash/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kcrash -pkgver=5.50.0 +pkgver=5.51.0 pkgrel=0 pkgdesc="Framework for gracefully handling software errors~" url="https://www.kde.org/" @@ -44,4 +44,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="79cec88f7e37901e9758dcc8f69883369dba8db536a563cfa66245038ca46240a5c0c70c4fb4b48c0c1e4b7772ec90d341707add99124b02408fc567a7e64648 kcrash-5.50.0.tar.xz" +sha512sums="7945fca845f019f847fbef85de4934556da2183be5a2e48ae3dc0b71f1a0e5aa4e21a65ca9fcdbd7aab02aa36cb125b14768d34b7f3fd49f2666d3d8377d9356 kcrash-5.51.0.tar.xz" diff --git a/user/kdbusaddons/APKBUILD b/user/kdbusaddons/APKBUILD index 3c92c23b6..e77f6f9e5 100644 --- a/user/kdbusaddons/APKBUILD +++ b/user/kdbusaddons/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kdbusaddons -pkgver=5.50.0 +pkgver=5.51.0 pkgrel=0 pkgdesc="Framework for coping with D-Bus" url="https://www.kde.org/" @@ -41,4 +41,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="26176685e8aebcdb1c249de9e95d88ba1faf9e0e2ffe67338237df2cfdf8b1a1fabc79c6febabc4a80a774a2e838085e273640d66fbacdbbaf49e00bcbd6d9dd kdbusaddons-5.50.0.tar.xz" +sha512sums="19ad0a9750d01db65dfbc2640136ba4984411684af987fd01e010ca58c1ce999c3fc0c615809c5976ca160d8130114cd4a9a2b76cdae536b3205f07c735bae65 kdbusaddons-5.51.0.tar.xz" diff --git a/user/kde-education/APKBUILD b/user/kde-education/APKBUILD index 67b1cf614..2160e2c5c 100644 --- a/user/kde-education/APKBUILD +++ b/user/kde-education/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kde-education -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="Educational software from the KDE Software Collection" url="https://www.kde.org/applications/education/" diff --git a/user/kde-games/APKBUILD b/user/kde-games/APKBUILD index ab5dd711d..b99e5a22f 100644 --- a/user/kde-games/APKBUILD +++ b/user/kde-games/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kde-games -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="The KDE games collection" url="https://www.kde.org/applications/games/" diff --git a/user/kde-graphics/APKBUILD b/user/kde-graphics/APKBUILD index ec45f7d58..25cc00cf1 100644 --- a/user/kde-graphics/APKBUILD +++ b/user/kde-graphics/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kde-graphics -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="Graphics software from the KDE Software Collection" url="https://www.kde.org/applications/graphics/" diff --git a/user/kde-multimedia/APKBUILD b/user/kde-multimedia/APKBUILD index 08d30bbb3..0be596823 100644 --- a/user/kde-multimedia/APKBUILD +++ b/user/kde-multimedia/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kde-multimedia -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="Multimedia software from the KDE Software Collection" url="https://www.kde.org/applications/multimedia/" diff --git a/user/kde-system/APKBUILD b/user/kde-system/APKBUILD index f2267818b..2fbafd577 100644 --- a/user/kde-system/APKBUILD +++ b/user/kde-system/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kde-system -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="System utiltiies from the KDE Software Collection" url="https://www.kde.org/applications/system/" diff --git a/user/kde-utilities/APKBUILD b/user/kde-utilities/APKBUILD index 5f53975ec..2d239554e 100644 --- a/user/kde-utilities/APKBUILD +++ b/user/kde-utilities/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kde-utilities -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="Desktop utiltiies from the KDE Software Collection" url="https://www.kde.org/applications/utilities/" diff --git a/user/kdeclarative/APKBUILD b/user/kdeclarative/APKBUILD index 3d72ee926..0b877e887 100644 --- a/user/kdeclarative/APKBUILD +++ b/user/kdeclarative/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kdeclarative -pkgver=5.50.0 +pkgver=5.51.0 pkgrel=0 pkgdesc="Frameworks for creating KDE components using QML" url="https://www.kde.org/" @@ -43,4 +43,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="ebe13f08a292cd3c1cf92cd242433160f1a2e9a5ea329379dab1d3b26d7c2a026261d77b8dc7b4abd1980a1a3d769b021bee6c2730ad2d4910b758c5b0e135dc kdeclarative-5.50.0.tar.xz" +sha512sums="860441e12d93807e112b8ced239a5890f5ae2dcf6bfcb6b3a3a5ebe7970529d23c932dbc1b8b965f2a3226d915e36c00043c7e040bcdded150d122286bb8e8b1 kdeclarative-5.51.0.tar.xz" diff --git a/user/kded/APKBUILD b/user/kded/APKBUILD index 91fb19b38..14fc672b6 100644 --- a/user/kded/APKBUILD +++ b/user/kded/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kded -pkgver=5.50.0 +pkgver=5.51.0 pkgrel=0 pkgdesc="Central KDE workspace daemon" url="https://www.kde.org/" @@ -40,4 +40,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="f5751df6c7b142038e67ca0cd1d59d5afa0b48268e09cd4e691750603258484ae264821cbc400cd4db348083377325d2213ac515aaa6c1aca7bf8a5843a5fc50 kded-5.50.0.tar.xz" +sha512sums="1b29459459567354d7e0ac873313e5dfe5627642bb1d41e31795b0ef1ff1fd7bec9b196af7607d6d7c4737321ab12e347b93f61f8a8be4c4ded7456873cac615 kded-5.51.0.tar.xz" diff --git a/user/kdelibs4support/APKBUILD b/user/kdelibs4support/APKBUILD index b0a51e451..bb0bd2136 100644 --- a/user/kdelibs4support/APKBUILD +++ b/user/kdelibs4support/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kdelibs4support -pkgver=5.50.0 +pkgver=5.51.0 pkgrel=0 pkgdesc="Legacy support for KDE 4 software" url="https://www.kde.org/" @@ -44,4 +44,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="1fa3a9bcd2b0af1cd4ec66d6538bfd25bb33a2a5ba6c74bbc4b6709ee71b681d5fea9672245c8a060dcfa493fcaf590af49c6c34a4ec535499a3db9d7007166a kdelibs4support-5.50.0.tar.xz" +sha512sums="92fdbaa65eddac1b1b2cf27f1f5cd82b8eef1bab3f43cf2ee89ce8d88f9a6a1f3bcfea82a9c1179bae345e64533fb8c94ac7074a67645fc482b5af5ffaf74769 kdelibs4support-5.51.0.tar.xz" diff --git a/user/kdenlive/APKBUILD b/user/kdenlive/APKBUILD index 67adf9300..5829017cf 100644 --- a/user/kdenlive/APKBUILD +++ b/user/kdenlive/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kdenlive -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="Libre video editor" url="https://kdenlive.org/" @@ -43,4 +43,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="737ebbb877c93a064472c82bda2ab6915833bb49442b9f36f3e3833d395dfa8608c7dff7dcea2816b25f7569025fbe810e8dd3c29ba96ee0c872d25ce9314bc6 kdenlive-18.08.1.tar.xz" +sha512sums="e6b146ce80570120e5a6545ccf636f1b5e613c350cecb2d8d10c23de3c5943196b9d0dc58b1f8b3d8fc9625368bcf4b2ab8164e5e3572bfac46d330cef613f35 kdenlive-18.08.2.tar.xz" diff --git a/user/kdesignerplugin/APKBUILD b/user/kdesignerplugin/APKBUILD index 7dc9aa5ce..bc731f3ae 100644 --- a/user/kdesignerplugin/APKBUILD +++ b/user/kdesignerplugin/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kdesignerplugin -pkgver=5.50.0 +pkgver=5.51.0 pkgrel=0 pkgdesc="Qt Designer plugin for KDE widgets" url="https://www.kde.org/" @@ -43,4 +43,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="6e4b58096559a0568da9618a6644440f1cca7f569118ecadaf5b5fdb07d5a28c6845e075c4745e61812365ccf96ec7e1cea0edfa70afaacf2df4b0ef4ee92b08 kdesignerplugin-5.50.0.tar.xz" +sha512sums="636dfde49067dc2c4d55125a1c6afea4291536daba2d6014ff933d5fb414c39521390a04d59b27ec9ab996da59efd1fdea9a1b23106545c1f116d4eda8c6bf5d kdesignerplugin-5.51.0.tar.xz" diff --git a/user/kdesu/APKBUILD b/user/kdesu/APKBUILD index 9f0712103..4001801a6 100644 --- a/user/kdesu/APKBUILD +++ b/user/kdesu/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kdesu -pkgver=5.50.0 +pkgver=5.51.0 pkgrel=0 pkgdesc="Framework for elevating privileges" url="https://api.kde.org/frameworks/kdesu/html/index.html" @@ -42,4 +42,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="b8104fc48e36db124f735aad13edde0c6cedde33ad20ec0eaff68e5ea1eaa1a664444b30e6a20b5d20f2c75792c94d0f77a06ad1d7852388a7d987da8298d95b kdesu-5.50.0.tar.xz" +sha512sums="64825e20d4d4c650ea00c14250bd258245918d06988b56414916c5c67173245f4cdbf4ae3fb92cea4e19132374e591448fea4c2d585ffb4f6a87a8516c5122a7 kdesu-5.51.0.tar.xz" diff --git a/user/kdf/APKBUILD b/user/kdf/APKBUILD index d81c45377..6e782ee2d 100644 --- a/user/kdf/APKBUILD +++ b/user/kdf/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kdf -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="View disk usage information" url="https://utils.kde.org/projects/kdf/" @@ -40,4 +40,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="49f91e8d502c624029639ea19ccbd470d6e48da1b5e41e76a95e16ec69a710f448a997916de5496aad01c9039e96374d473c65d410dc2cb31b60d5638a2f913b kdf-18.08.1.tar.xz" +sha512sums="7ec7f8f791fd9f8a57e0fa25ab795d502bce18b3303f2f42f5ee92b4fb1f21968e0850f416cc3e5cab3f892ef462caa363610d2cd55529e2f1642d1cd7b8e0e5 kdf-18.08.2.tar.xz" diff --git a/user/kdiamond/APKBUILD b/user/kdiamond/APKBUILD index 52a6b0df8..1a4992ecd 100644 --- a/user/kdiamond/APKBUILD +++ b/user/kdiamond/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kdiamond -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="Three-in-a-row game" url="https://games.kde.org/game.php?game=kdiamond" @@ -41,4 +41,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="ebb91009e6dee64e8e7cc8a3188a3386640398fb55d59b93cb37e029626afe71caf0b29d1e7b8fa1b6936140d07567db7843ca5bf7605105bc2240959b8c9e7e kdiamond-18.08.1.tar.xz" +sha512sums="9da7b089cf970d73a137b9108bd28a3a9c375b268a804c15533220e896b37d78af52e8c087ce97080e96ba9ca0d95797544d8e2c0b4d4e373d5bf2b9a2295c46 kdiamond-18.08.2.tar.xz" diff --git a/user/kdnssd/APKBUILD b/user/kdnssd/APKBUILD index 23f522646..d0439eab2 100644 --- a/user/kdnssd/APKBUILD +++ b/user/kdnssd/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kdnssd -pkgver=5.50.0 +pkgver=5.51.0 pkgrel=0 pkgdesc="Framework for discovering network services using Zeroconf" url="https://www.kde.org/" @@ -40,4 +40,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="cd49247c02c2cc568d4942e3c08d4bb9b40180a8e096ee978b2d5884e40ba69266ea78b319301cf5106e135f3b648f1adbefd5288fccbf5779dff1e2d1c0d1d4 kdnssd-5.50.0.tar.xz" +sha512sums="4f3eca1819e865c8afeed8cf0fd771bc129286d170e71939191a1dc064c0b376a8091cea4fd9e67a3c71cdc8ad724f0fdd1f5c8166feafa6afb16ff98c681bd2 kdnssd-5.51.0.tar.xz" diff --git a/user/kdoctools/APKBUILD b/user/kdoctools/APKBUILD index a819c32e0..9abca5429 100644 --- a/user/kdoctools/APKBUILD +++ b/user/kdoctools/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kdoctools -pkgver=5.50.0 +pkgver=5.51.0 pkgrel=0 pkgdesc="Tools to generate user-readable documentation from DocBook XML" url="https://www.kde.org/" @@ -41,4 +41,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="cb09a6c0a990b074e66161171e947f18b0036621da075a4f66452fb2a8f5985bee45b371e1e3303cc4afa73d376b89a839ac42e8b479c71911f7f89845422e86 kdoctools-5.50.0.tar.xz" +sha512sums="732e7291a0620d3132145f4689449d8932c58e32814cbf7a96bb45e9a3139bf6ae494b0347205193239c6e551d153662562cf40c2bd69b06e750d8ede8d1f6ec kdoctools-5.51.0.tar.xz" diff --git a/user/keepassxc/APKBUILD b/user/keepassxc/APKBUILD new file mode 100644 index 000000000..14d9235fc --- /dev/null +++ b/user/keepassxc/APKBUILD @@ -0,0 +1,40 @@ +# Contributor: Max Rees <maxcrees@me.com> +# Maintainer: Max Rees <maxcrees@me.com> +pkgname=keepassxc +pkgver=2.3.4 +pkgrel=0 +pkgdesc="A community revival of the KeePassX password manager" +url="https://keepassxc.org" +arch="all" +license="(GPL-2.0-only OR GPL-3.0-only) AND MIT AND BSD-4-Clause AND ISC AND (LGPL-2.1-only OR GPL-3.0-only) AND (LGPL-2.1-only OR LGPL-3.0-only) AND CC0-1.0 AND Public-Domain AND LGPL-2.1+ AND LGPL-3.0+" +depends="hicolor-icon-theme" +makedepends="cmake xz qt5-qtbase-dev qt5-qttools-dev libgcrypt-dev + zlib-dev libxi-dev libxtst-dev qt5-qtx11extras-dev argon2-dev" +subpackages="$pkgname-doc" +source="https://github.com/keepassxreboot/$pkgname/releases/download/$pkgver/$pkgname-$pkgver-src.tar.xz" + +prepare() { + cd "$builddir" + mkdir build + default_prepare +} + +build() { + cd "$builddir/build" + cmake -DCMAKE_INSTALL_PREFIX=/usr \ + -DCMAKE_INSTALL_LIBDIR=/usr/lib \ + -DCMAKE_BUILD_TYPE=RelWithDebInfo .. + make +} + +check() { + cd "$builddir/build" + make test +} + +package() { + cd "$builddir/build" + make DESTDIR="$pkgdir" install +} + +sha512sums="edca22ef9d7c553d21d8ea6115a5635265176acc56fdf055f1961a3e65046de49ed5b67eb68ecf4f925226fb5bca140d5d473a5082301168f6a8bb7979f562a8 keepassxc-2.3.4-src.tar.xz" diff --git a/user/kemoticons/APKBUILD b/user/kemoticons/APKBUILD index c4b38c990..2172383f1 100644 --- a/user/kemoticons/APKBUILD +++ b/user/kemoticons/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kemoticons -pkgver=5.50.0 +pkgver=5.51.0 pkgrel=0 pkgdesc="Emoticons to express emotions in KDE" url="https://www.kde.org/" @@ -42,4 +42,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="04c132340be0159514cf46b60f2a9f9ce35c6cd35ad64820463d9d8f929fccbb7d4082337c1920b778e35875b222e4caae4d98c4133b4c9ea365b4e69ab79223 kemoticons-5.50.0.tar.xz" +sha512sums="787682ae466d8fae958d19c029375100c71849fbbdbe90d2576c10ca7bdf86d5424c08941127350e03237814bc2a1bf662eaf831f75b13759e7c3aff34ac6791 kemoticons-5.51.0.tar.xz" diff --git a/user/keybinder-3.0/APKBUILD b/user/keybinder-3.0/APKBUILD new file mode 100644 index 000000000..8340209fb --- /dev/null +++ b/user/keybinder-3.0/APKBUILD @@ -0,0 +1,36 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=keybinder-3.0 +pkgver=0.3.2 +pkgrel=0 +pkgdesc="GTK+ library for managing global keybindings" +url="https://github.com/kupferlauncher/keybinder" +arch="all" +license="Public-Domain AND MIT" +makedepends="gtk+3.0-dev vala gobject-introspection-dev" +subpackages="$pkgname-dev $pkgname-doc" +source="https://github.com/kupferlauncher/keybinder/releases/download/keybinder-3.0-v$pkgver/keybinder-3.0-$pkgver.tar.gz" + +build() { + cd "$builddir" + ./configure \ + --build=$CBUILD \ + --host=$CHOST \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --localstatedir=/var + make +} + +check() { + cd "$builddir" + make check +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install +} + +sha512sums="14171875e03ade88165f28c7267b66cf9efe34259d7a3072a786ba49dacf8f8d6d84753b1aeedec5dfb0a24028be86bceeebee2f6b1bf5ef2eb79ee45f909b11 keybinder-3.0-0.3.2.tar.gz" diff --git a/user/keyutils/APKBUILD b/user/keyutils/APKBUILD index 4696cafef..f87958b7a 100644 --- a/user/keyutils/APKBUILD +++ b/user/keyutils/APKBUILD @@ -1,19 +1,17 @@ # Contributor: Natanael Copa <ncopa@alpinelinux.org> # Maintainer: pkgname=keyutils -pkgver=1.5.10 -pkgrel=1 +pkgver=1.5.11 +pkgrel=0 pkgdesc="Linux key management utilities" url="https://people.redhat.com/~dhowells/keyutils/" arch="all" options="!check" # Test suite requires RPM. license="GPL-2.0+ AND LGPL-2.1+" depends="" -makedepends="file linux-headers" +makedepends="file krb5-dev linux-headers" subpackages="$pkgname-dev $pkgname-doc $pkgname-libs" -source="https://people.redhat.com/~dhowells/keyutils/keyutils-$pkgver.tar.bz2 - fix-includes.patch - " +source="https://people.redhat.com/~dhowells/keyutils/keyutils-$pkgver.tar.bz2" build() { cd "$builddir" @@ -41,5 +39,4 @@ libs() { mv "$pkgdir"/lib "$subpkgdir"/ } -sha512sums="7f6f956c7e76cdc2aeb52e74fe670b20a5f9a5d9b543fd2ce971d80c48745f37d05235a42f0a8f152b1128a109c7d8bf07e751282a20d2d3f433a99a5308ae8d keyutils-1.5.10.tar.bz2 -e7a913c97c4116e5f4b7fdf4d071835dcf05a7aa4ce782fd717e4694414023fb3ed88b8a15710b15869545046e99f706fe8476f9d4fe6578d2eae571e1ed8103 fix-includes.patch" +sha512sums="5f0dc5d5ceb673cf0ba71d3a0b525d09adc8d501a795372aa3dc29215ef393cb8577c72051cecabdb9a46dca4fcaa11e629291fb857290872475a7e445f47d43 keyutils-1.5.11.tar.bz2" diff --git a/user/keyutils/fix-includes.patch b/user/keyutils/fix-includes.patch deleted file mode 100644 index df0e7ddf7..000000000 --- a/user/keyutils/fix-includes.patch +++ /dev/null @@ -1,10 +0,0 @@ ---- keyutils-1.5.8.orig/key.dns_resolver.c -+++ keyutils-1.5.8/key.dns_resolver.c -@@ -56,6 +56,7 @@ - #include <stdlib.h> - #include <unistd.h> - #include <time.h> -+#include <limits.h> - - static const char *DNS_PARSE_VERSION = "1.0"; - static const char prog[] = "key.dns_resolver"; diff --git a/user/kfilemetadata/APKBUILD b/user/kfilemetadata/APKBUILD index 3697cbaec..677ef647c 100644 --- a/user/kfilemetadata/APKBUILD +++ b/user/kfilemetadata/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kfilemetadata -pkgver=5.50.0 +pkgver=5.51.0 pkgrel=0 pkgdesc="File metadata extraction framework" url="https://www.kde.org/" @@ -42,4 +42,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="9e6d86da7e50e4dc432fc29af366572cc3504301686a38f8f46d44be0041bcd72fc0c8515906995d8ba4a6fb7217767efb9eb151d2578e1104c5a1cb8db9cc4a kfilemetadata-5.50.0.tar.xz" +sha512sums="30e93f239ace615af5722156f5b09de86a96a053fd40edf44ce109fb22e22a429795498392044095354e44184be9ac8a64a7be4a3e78c60640f4fb8e9b78d82a kfilemetadata-5.51.0.tar.xz" diff --git a/user/kfind/APKBUILD b/user/kfind/APKBUILD index 8b00aab74..c204aca22 100644 --- a/user/kfind/APKBUILD +++ b/user/kfind/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kfind -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="Standalone search utility for KDE" url="https://www.kde.org/applications/utilities/kfind/" @@ -39,4 +39,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="53c1a34776a6b5b56363d2f40a29252cc5dd7828c97f40917032132883a4b1f50d1972a241a287f7ef086c1bac137d8628ad08e3c21a879fa444c6d7247731a1 kfind-18.08.1.tar.xz" +sha512sums="83f59443ac4280057a961510ebf4a03fde02fb2fe5990804a59bfe269ead14e2327a3c73f0d796387adcfa9cf138f1d911b68fe1f5ed425c6ef56dd4ae97de70 kfind-18.08.2.tar.xz" diff --git a/user/kfloppy/APKBUILD b/user/kfloppy/APKBUILD index 1b4562594..322cc6b46 100644 --- a/user/kfloppy/APKBUILD +++ b/user/kfloppy/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kfloppy -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="Utility for formatting floppy diskettes" url="https://utils.kde.org/projects/kfloppy/" @@ -39,4 +39,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="e33857c5ff4988a6675461302b53125f54a678f7c4286a8416dc8f569fe1c9d7560567d2884788b912a08cedc66430149747a1d2e5fadd23c3c2c1b8590d586a kfloppy-18.08.1.tar.xz" +sha512sums="f427cf8a98258c0ef2c0daa30679cc89a26fbe769c19dd78ed6e7586cbfc279d0690983ed9cf07167adcfa6495ea4a3f1cd0e575f70f72dc386b851bf7f595f0 kfloppy-18.08.2.tar.xz" diff --git a/user/kfourinline/APKBUILD b/user/kfourinline/APKBUILD index 2e19ec8ba..46b78c0aa 100644 --- a/user/kfourinline/APKBUILD +++ b/user/kfourinline/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kfourinline -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="Two player board game based on Connect Four" url="https://games.kde.org/game.php?game=kfourinline" @@ -40,4 +40,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="b1540e2c3cb1eb3e41dc78836c1341b8afabbf0faa00da596233ecf5768dfffdb6cb20274fb383f8bfe7a35c92eb345873decdf3fe502df374632246f84f4959 kfourinline-18.08.1.tar.xz" +sha512sums="7b36640a65ee644807d9ffc04378f34296e447fd196e80e9e87f19ddf8d7788239754c638a7f119e6b1606accab3f5706b1487e95b0553c75df6491e2eba739a kfourinline-18.08.2.tar.xz" diff --git a/user/kgeography/APKBUILD b/user/kgeography/APKBUILD index 46aeab4e8..17a621a2b 100644 --- a/user/kgeography/APKBUILD +++ b/user/kgeography/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kgeography -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="Geography learning tool and trainer" url="https://www.kde.org/applications/education/kgeography/" @@ -40,4 +40,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="a2f3573cb281f165fc222304c981b4d88eadd0707b227e5e28580c8dc1ad1b8c9490505a17611b0bcb028e36ec68e473b9947eacd7a8a0834b4ea5b9c60b4abb kgeography-18.08.1.tar.xz" +sha512sums="87d678d446974d39f449562712bda25777398f6c62088830815850b9959bdbc88e5dbcb9cc8e43141ece256d5db3d31123a24e3e2744cd55ca0f29ec27752589 kgeography-18.08.2.tar.xz" diff --git a/user/kget/APKBUILD b/user/kget/APKBUILD index 2ed329914..926b18d57 100644 --- a/user/kget/APKBUILD +++ b/user/kget/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kget -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="Versatile download manager" url="https://www.kde.org/applications/internet/kget/" @@ -43,4 +43,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="c6fb54e4b91952372aaa038c1e3a6ec6fdb82ff0f320dd1f6059fa41118a8399a9369bfd93e7b1db1123c893174469a1479fc7c000c555709d8d6aa80334502d kget-18.08.1.tar.xz" +sha512sums="86464ddacea1f139c1fe98abeb4b394fc045897d917ecbf37a986ad90311c7e3423befba1bf8f6dfd0e82c04dc1b9d4f51d11d74c970e031734d5c0541749df3 kget-18.08.2.tar.xz" diff --git a/user/kglobalaccel/APKBUILD b/user/kglobalaccel/APKBUILD index bd10da079..c93c08986 100644 --- a/user/kglobalaccel/APKBUILD +++ b/user/kglobalaccel/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kglobalaccel -pkgver=5.50.0 +pkgver=5.51.0 pkgrel=0 pkgdesc="Framework for implementing global shortcuts/accelerators" url="https://www.kde.org/" @@ -43,4 +43,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="3cb9530c392c5eeb126a56b6efd81a9f6daa072fd860b79362bfb6ae47c9af3f259a0d3258bbe04a7af34fb1c0ad6000c1e70b7f8075e6cbd10444acee9222eb kglobalaccel-5.50.0.tar.xz" +sha512sums="cec1abc2aa5d9465d07aa73ebd83aba6e9009272857e3c22e87928735f0b2a3032e6d94b0a930c75892dbf29479b4e128556a8b3ef452ed3e139a26ef5066867 kglobalaccel-5.51.0.tar.xz" diff --git a/user/kgoldrunner/APKBUILD b/user/kgoldrunner/APKBUILD index eb1879c9c..911a745bd 100644 --- a/user/kgoldrunner/APKBUILD +++ b/user/kgoldrunner/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kgoldrunner -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="Puzzle game with a gold hunt, dodging enemies, and digging around" url="https://games.kde.org/game.php?game=kgoldrunner" @@ -41,4 +41,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="d55d67438f2906cd161f3957d50d35ce9ea7578c0381af39825d65de4701d96230400f41e998be3d2eff65f95bbcddbf8af45769fe5280aafa1d77eff9a9d529 kgoldrunner-18.08.1.tar.xz" +sha512sums="923fb55d1f70fbe6a1df518ed1c06d31b7360f678247e13988c8b5ca96b65ffe8f35967a387b311d00764c1d035dea7092be1db197447c2da35bb2d3324e4fb5 kgoldrunner-18.08.2.tar.xz" diff --git a/user/kgpg/APKBUILD b/user/kgpg/APKBUILD index b713d4a5b..8e2d96abd 100644 --- a/user/kgpg/APKBUILD +++ b/user/kgpg/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kgpg -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="Simple interface for GnuPG, a powerful encryption utility" url="https://utils.kde.org/projects/kgpg/" @@ -43,4 +43,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="339f64bc9be2a644f0c3b4f901c14c19bbe7891996d7a3ba840d9368260e87d75a3860d6bdc78d0ceb2d966f04223a2350a0d86e46b06f7e4a3e665713bafb5e kgpg-18.08.1.tar.xz" +sha512sums="5a6c2335d97ed3e4f2d5cce65ec450d7789c31662d1e80d50201a1ef7596791209948bfa4516e2c49e048ebc36dab1316722ba6b0adfa1b3a6a15631da022aca kgpg-18.08.2.tar.xz" diff --git a/user/kgraphviewer/APKBUILD b/user/kgraphviewer/APKBUILD index 6bad8cf10..58b1dc410 100644 --- a/user/kgraphviewer/APKBUILD +++ b/user/kgraphviewer/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kgraphviewer -pkgver=2.4.2 +pkgver=2.4.3 pkgrel=0 pkgdesc="Graphviz DOT graph viewer" url="https://www.kde.org/applications/graphics/kgraphviewer/" @@ -40,4 +40,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="2a25f8493881ffa057602e7a141ea610b8db7c43da2db007aea118e2ec7b1f069fbfa6ca80b0e1048c9b20535764679c8d77027337c47a4c18e5240c3058d935 kgraphviewer-2.4.2.tar.xz" +sha512sums="d18146ba380efe73e1ec716dd1cc310fe1eac23eccb10e2a699b107451637b9332cc25d62a4de762df4706cea182c9474ba1e885801c9832e1bb9bff1648e72d kgraphviewer-2.4.3.tar.xz" diff --git a/user/kguiaddons/APKBUILD b/user/kguiaddons/APKBUILD index 45dcca573..acdbb38d7 100644 --- a/user/kguiaddons/APKBUILD +++ b/user/kguiaddons/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kguiaddons -pkgver=5.50.0 +pkgver=5.51.0 pkgrel=0 pkgdesc="Framework for creating high-level user interfaces" url="https://www.kde.org/" @@ -41,4 +41,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="6a7ac22a60a0811aa7f2ce9f2ccb3f16f17e53dcb2352092b10b5d5384251d7e46c575b12549a4733416de88c5bd724670d52d5b96fa47005fb6b8ab847594cd kguiaddons-5.50.0.tar.xz" +sha512sums="ed5bfa4fe462b014e2238af4c3f5051fdc7a27d3528cb64be0bc9201c7f5314ed2928a2e3377240e0b9f2803206a2bb6a6bbbbd4923781f61142e65274b3b82f kguiaddons-5.51.0.tar.xz" diff --git a/user/khangman/APKBUILD b/user/khangman/APKBUILD index 038173711..369d9c308 100644 --- a/user/khangman/APKBUILD +++ b/user/khangman/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=khangman -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="Hangman word game" url="https://www.kde.org/applications/education/khangman/" @@ -41,4 +41,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="72603208e513a1e7e47b639892f07c57434eaf15d31d3c793efdd7969f365c150f4f05d40652009c5e84e58d92408aa2373f8b70c854d6e3a762bc90aa44f35f khangman-18.08.1.tar.xz" +sha512sums="28db854ae43b5e8613c84a941cc72f9a9399f292383b5f2e6dbb13e86fd4c2459d22b8bb57695a9ecbab7e507bf5a0409582bc92094bf0f67c621b8822389330 khangman-18.08.2.tar.xz" diff --git a/user/khelpcenter/APKBUILD b/user/khelpcenter/APKBUILD index b2a4c831d..90361bec6 100644 --- a/user/khelpcenter/APKBUILD +++ b/user/khelpcenter/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=khelpcenter -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="Graphical documentation viewer" url="https://www.kde.org/applications/system/khelpcenter/" @@ -42,4 +42,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="243ebc119a2e6190a645b9bf0a14a47e14f0bd6ff4dd768ef994b344dbbdbd8242501fa01d28f71453bd34002fff1e119505cfa4f6f7c0ea76e363c84e3be25f khelpcenter-18.08.1.tar.xz" +sha512sums="f16f10f9ef9868660eb0bcb92dd34b8acbb1cd1c12932838f79b176bdfae5adb2a104adc673b1583494fbf2fa555204414a59911f8e734c0cb5a19b90b423759 khelpcenter-18.08.2.tar.xz" diff --git a/user/kholidays/APKBUILD b/user/kholidays/APKBUILD index 824b0d0e8..43444939c 100644 --- a/user/kholidays/APKBUILD +++ b/user/kholidays/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kholidays -pkgver=5.50.0 +pkgver=5.51.0 pkgrel=0 pkgdesc="List of national holidays for many countries" url="https://www.kde.org/" @@ -40,4 +40,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="019c22a2806d73fd726157854a70206c7e91cdfc8ac23a84b5c64cdbdc474fd4a7daaaecf5f0a3636790e85e8ebb86e9e5a9dd1a64a9fbd728c39ae68fe94f9e kholidays-5.50.0.tar.xz" +sha512sums="d2719f670e46c322241226d89322710672c1f7afb2d4e1658ec798966f2e34f0d67434da692801aca35f0cf4899bd911b2083c3cbb5b4570ce043d75013a83b3 kholidays-5.51.0.tar.xz" diff --git a/user/khtml/APKBUILD b/user/khtml/APKBUILD index 304a1faee..e2976b210 100644 --- a/user/khtml/APKBUILD +++ b/user/khtml/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=khtml -pkgver=5.50.0 +pkgver=5.51.0 pkgrel=0 pkgdesc="The KDE HTML library, ancestor of WebKit" url="https://konqueror.org/" @@ -44,4 +44,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="b2259a11635ea9a363eb17b73e5112d144f86c6ed258d1c7e7bb3571587a526a852a98c51b503d2dee4c8d3478cd4e3ae28beaab1e4f2e5633709ff5b69508d9 khtml-5.50.0.tar.xz" +sha512sums="0457c71cfd502d17de36dd21fc73a13a381f6c989be66be14c0b8e0dfacdd8a2d317a2cc07e84ccd1f994b9db3929d3625d05f0284c98f4a92e6d5623ff91c77 khtml-5.51.0.tar.xz" diff --git a/user/ki18n/APKBUILD b/user/ki18n/APKBUILD index 04b434549..a57a6e8e1 100644 --- a/user/ki18n/APKBUILD +++ b/user/ki18n/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=ki18n -pkgver=5.50.0 +pkgver=5.51.0 pkgrel=0 pkgdesc="Framework for creating multi-lingual software" url="https://www.kde.org/" @@ -43,4 +43,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="4d05eda1f5ab6f08a7aa5617c456c646a7037f1b099f60dbaead1fdabb02ad4579306c3774cf86cc45713c14dcc1b3c12013380150de95ed2e4bb40511aa4e9f ki18n-5.50.0.tar.xz" +sha512sums="ad5b54c3e2825761d236a47a9b9f268cbefe743fd6515e9211443e48a16825ab9913691ae3709e6490f93c2fe9b4c159087e73a00f89b5e19a469ca6548f52ca ki18n-5.51.0.tar.xz" diff --git a/user/kiconthemes/APKBUILD b/user/kiconthemes/APKBUILD index 8ece5a3cb..acf9f230e 100644 --- a/user/kiconthemes/APKBUILD +++ b/user/kiconthemes/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kiconthemes -pkgver=5.50.0 +pkgver=5.51.0 pkgrel=0 pkgdesc="Framework for icon theming" url="https://www.kde.org/" @@ -43,4 +43,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="b5fae1e7f8f6881e963ab9afd4d25988f8df98443f3bd526a67e4ca7c390dc4be0be4564e26dfbf6b10c15dcbada70adec60b383463b142dd7f6d2df77b885d9 kiconthemes-5.50.0.tar.xz" +sha512sums="3e71bc474d920eb31b37d8acb5360327e5676686d98e0f55251cfddba33c833547a330961e9479d6d6e1ac86bd631101c61d58ca865fa3f17b5a363ded939847 kiconthemes-5.51.0.tar.xz" diff --git a/user/kidletime/APKBUILD b/user/kidletime/APKBUILD index a307714f9..a0f2af148 100644 --- a/user/kidletime/APKBUILD +++ b/user/kidletime/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kidletime -pkgver=5.50.0 +pkgver=5.51.0 pkgrel=1 pkgdesc="Framework for determining a user's idle time" url="https://api.kde.org/frameworks/kidletime/html/index.html" @@ -41,4 +41,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="825d7b509c8bca1042b453d600165574c72d684a07159e9eea436e37c720ff2f40c165075d7c9d076689f1f25c75d5e20779e25a29b069ed25339fd83e9baef8 kidletime-5.50.0.tar.xz" +sha512sums="5568ca77a774b780aa68ec320ee4d339c5ec4696db8233f5297772259f11967a929028d4a4a0777c68250bdc3c86f31eea627ae56749c9a8201e6dd8cfb0e207 kidletime-5.51.0.tar.xz" diff --git a/user/kig/APKBUILD b/user/kig/APKBUILD index e5d1f36c7..7840a093b 100644 --- a/user/kig/APKBUILD +++ b/user/kig/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kig -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="Interactive geometry learning and exploration tool" url=" https://www.kde.org/applications/education/kig/" @@ -40,4 +40,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="db82e76ea91bcb263f5bea85a0dc5fb50d6cfe88c37d1acde1f0ec237a666a05a51effac1fea1a5648377eafe265a430838fdcbda64589641699565572aade5e kig-18.08.1.tar.xz" +sha512sums="4a18a802649598d0a66c4ad459a20e86a4587639cd0ceddfdd0e0a2403b8cbf31b836a53ea520e71b13b3d040cf9e8f2ac13733ebe71afd59c7e54fd416ebca5 kig-18.08.2.tar.xz" diff --git a/user/kigo/APKBUILD b/user/kigo/APKBUILD index 181fd3d68..c2935b4ea 100644 --- a/user/kigo/APKBUILD +++ b/user/kigo/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kigo -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="Go or Igo game for KDE" url="https://www.kde.org/applications/games/kigo/" @@ -41,4 +41,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="664b5827f505198cd173020b36ebe45f1721143c0a0ca5867e7ebf576d490f043c09a681cc44403368a88c1f5abf81bc0a4e1c9d1f437740ae7a81f8ec770972 kigo-18.08.1.tar.xz" +sha512sums="298179d978f41fb92b0e7bff0343355e6c6b7507cf91034038c86ba29b7bc8710f9e351656f73946056a2d4396afe0cad069ac809e2b05e7af57447a688ed610 kigo-18.08.2.tar.xz" diff --git a/user/killbots/APKBUILD b/user/killbots/APKBUILD index a5d21099a..613ba79f8 100644 --- a/user/killbots/APKBUILD +++ b/user/killbots/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=killbots -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="Simple game of evading killer robots" url="https://www.kde.org/applications/games/killbots/" @@ -41,4 +41,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="471d20aec8e9e9391c3125f52d34a8e687819838510937180ce51aa5f6ae3bb61b82bf076475a16514a4aec024cac2c52166c25a2c60a16b3327915c3700a45d killbots-18.08.1.tar.xz" +sha512sums="c49768699caa9888d53535fc0a4c13af299062698ee16b5bbb4e52bef99f1a8201cbc1ce06de9ae7d1cce75a0d9c92e8aced01f7a39692e66f71e70dc1b8ad85 killbots-18.08.2.tar.xz" diff --git a/user/kinit/APKBUILD b/user/kinit/APKBUILD index 29e5d5e0e..674c82b3f 100644 --- a/user/kinit/APKBUILD +++ b/user/kinit/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kinit -pkgver=5.50.0 +pkgver=5.51.0 pkgrel=0 pkgdesc="KDE initialisation routines" url="https://www.kde.org/" @@ -36,4 +36,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="8b0187f0e7d67b1d6b5d773cd651ae438291ea2a801fb05292811e7b109afee62c4166953b09f6c1c958690c2b9a3c769d005f3ae008513eaf2eac933e1a8a63 kinit-5.50.0.tar.xz" +sha512sums="b9cdb1181528ef3ed3d497ec7c4a433d60796bb152215859ef950c5294b2bc2586e1d57cd735d01f62ff4c9be6b2b8b965dd0073dfb3f375bcf8902283f79bea kinit-5.51.0.tar.xz" diff --git a/user/kio-extras/APKBUILD b/user/kio-extras/APKBUILD index 49dbdadda..47cd9382a 100644 --- a/user/kio-extras/APKBUILD +++ b/user/kio-extras/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kio-extras -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="KIO plugins for various data tasks" url="https://www.kde.org/" @@ -44,4 +44,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="152b62c43c81df4b874d68d3504a18891f68b047e74edd2eae37fddcf72302696db9e0c006b037d3ea5a688cf838e69c949fb5a9253dde7c26c8e1ba1cf7f7bf kio-extras-18.08.1.tar.xz" +sha512sums="da2f9f573f993a49fc54efba25c653614b3505cf727205eca360298f88b783505171168931193080bc5e50f5a9e8609b90f5a9a734894e087cd8ed5805f3d905 kio-extras-18.08.2.tar.xz" diff --git a/user/kio/APKBUILD b/user/kio/APKBUILD index cd27cc371..4f4e0ebea 100644 --- a/user/kio/APKBUILD +++ b/user/kio/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kio -pkgver=5.50.0 +pkgver=5.51.0 pkgrel=0 pkgdesc="Framework for data and file management" url="https://www.kde.org/" @@ -46,5 +46,5 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="18a6e4b1d2fb71b16aa4b08862fe0abea691c4f60d4fccc316c654455786a705cc94232b5bcffdb6ea39917722f237d0de00e9ea22273c26e7c3a0282148244a kio-5.50.0.tar.xz +sha512sums="f723030a0d60f9e2532a07a34e9bd1e88230b929464e759d9382011995e3704bf5edbfd47dd929e9029937e4315e887049ce692a299d13c2a8e48e167fd24dd6 kio-5.51.0.tar.xz 280b2a610613786e688c06f4d4b51d3b9d583472bf1941b7b5873fece31b5df0b2f8f08f8de677ebb39fc906c57a2fa50d7890105c0aeb930b82986e0b504623 strcpy-ppc.patch" diff --git a/user/kirigami2/APKBUILD b/user/kirigami2/APKBUILD index 6d0c326d5..6b72232c2 100644 --- a/user/kirigami2/APKBUILD +++ b/user/kirigami2/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kirigami2 -pkgver=5.50.0 +pkgver=5.51.0 pkgrel=0 pkgdesc="Framework for rapidly designing usable interfaces" url="https://www.kde.org/" @@ -49,4 +49,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="f43b9c0adf35ece8153334cc4f66c3d6e30f5603f9a29b8b54eb358c14f98124838a19a1073b17cd3e00975963782cfff664d811171a7f58238a49c84c7faec8 kirigami2-5.50.0.tar.xz" +sha512sums="59bcfea4db777440f0892925dfc131f20fe99cfc753f89804933c4865ef0ddbd0e883ed2a547aa626ac7949d77c4b474a78f9cd5fbab2a48eca9d230496cc0dc kirigami2-5.51.0.tar.xz" diff --git a/user/kiriki/APKBUILD b/user/kiriki/APKBUILD index 2ebc8ae4d..9507da61a 100644 --- a/user/kiriki/APKBUILD +++ b/user/kiriki/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kiriki -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="Yahtzee-like dice game for one or more players" url="https://games.kde.org/game.php?game=kiriki" @@ -40,4 +40,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="5e14d301148e9c333bca36753291228337b7b3b00c2ba7946ba7fb0f7bcaf52f6a570825a9d68053e2df5b4b24db237f2fd94198b47a5305662c68a63a5dd64e kiriki-18.08.1.tar.xz" +sha512sums="ee8fe9774e89d91285550970409689774d426e6da1e9ba734e4570ed346556694a36f51921c4609eb226620d111bc6b49dc797f77c41eee124d315aaf582aebd kiriki-18.08.2.tar.xz" diff --git a/user/kitemmodels/APKBUILD b/user/kitemmodels/APKBUILD index 674f9cf48..e2b5fffca 100644 --- a/user/kitemmodels/APKBUILD +++ b/user/kitemmodels/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kitemmodels -pkgver=5.50.0 +pkgver=5.51.0 pkgrel=0 pkgdesc="Framework for sorting and searching objects" url="https://www.kde.org/" @@ -42,4 +42,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="1df3636da596a67255ac460658868d83f42955bff8085586a846f8e37d9a6d7ca29daaa96d03d686b9d2ff0647f40e7188c0619e11af6b93de0df627463de0a1 kitemmodels-5.50.0.tar.xz" +sha512sums="e5b6cdd64e6252fd62c1bdb017f67c27aed29f01effebec0a8e2f98229ffd45f97411001ecbec2f3a36e14957d8c94e568bfbb0b428124f9950c1b83b9032317 kitemmodels-5.51.0.tar.xz" diff --git a/user/kitemviews/APKBUILD b/user/kitemviews/APKBUILD index 2255c2c41..a13455d89 100644 --- a/user/kitemviews/APKBUILD +++ b/user/kitemviews/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kitemviews -pkgver=5.50.0 +pkgver=5.51.0 pkgrel=0 pkgdesc="Framework for displaying collections of items" url="https://www.kde.org/" @@ -42,4 +42,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="e2e1fbccde1f7f9aa4cbb6feb175aff3055621cd39e5aed60d6cdbc807cea2763e35847825a70f310276335ee37eacc066ede5d297fe58fe19d33fec094ac121 kitemviews-5.50.0.tar.xz" +sha512sums="a73436c9912df2ae6d7947b734805560318ff21fd277a4699fb49b76f2f88100192c7dbe71ec07db0ac2306ea46ecd7d1645bc92905ad0c4c0fbae156d0fe50a kitemviews-5.51.0.tar.xz" diff --git a/user/kiten/APKBUILD b/user/kiten/APKBUILD index 16d738f1e..d4469123d 100644 --- a/user/kiten/APKBUILD +++ b/user/kiten/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kiten -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="Japanese reference and study tool" url="https://www.kde.org/applications/education/kiten/" @@ -40,4 +40,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="32d542778e8ef63df9da29be94e76ffdf8839b88419906c78733449531a4fb4b62bcb9940e1c49eae09c9da75ad6c35e9d18d426848f6bcabfcd0b6c71da3525 kiten-18.08.1.tar.xz" +sha512sums="29ec6725d71691543275f8ee0a30bf54ac8795df0498beb1e4981bc4060d44a59dc936e910823470f0fc6ff3b4801d0794edfc58fc9a4c56e33671d2d94abdcd kiten-18.08.2.tar.xz" diff --git a/user/kjobwidgets/APKBUILD b/user/kjobwidgets/APKBUILD index 0dfdfb4c1..29493222a 100644 --- a/user/kjobwidgets/APKBUILD +++ b/user/kjobwidgets/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kjobwidgets -pkgver=5.50.0 +pkgver=5.51.0 pkgrel=0 pkgdesc="Framework providing widgets that show job progress" url="https://www.kde.org/" @@ -42,4 +42,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="9f8af0073912311fe6572606682f56952736d7cb3218646a6086c5830003dff0aa4f13d3fd59a1617d393d17d14abc6bb4f9762822e423373252cf6b6d0fbc8f kjobwidgets-5.50.0.tar.xz" +sha512sums="6821f7f120e998d041bf4f6c3524958c3750f1b3213cf6c338994b0c3676a7c5a0ce9a0555cc76a01d47e72fef06ea4daceecaeb59909816d6d16d1613f6278c kjobwidgets-5.51.0.tar.xz" diff --git a/user/kjs/APKBUILD b/user/kjs/APKBUILD index 08e13397b..7376445ba 100644 --- a/user/kjs/APKBUILD +++ b/user/kjs/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kjs -pkgver=5.50.0 +pkgver=5.51.0 pkgrel=0 pkgdesc="Independent, free JavaScript engine" url="https://www.kde.org/" @@ -39,4 +39,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="698ef596c03b88a35dba48363034223366e14ae94c805e68d34d913ca9944a1f8c67a3db15c0454e6ea726391b6a120a21d24fdec3ba25c7b2d4480f34da3f37 kjs-5.50.0.tar.xz" +sha512sums="34588e1ec6e9a3288ea5738b5a07fa8eb09caecc5ef56c1d830943a37bb6f2c415ad73c612b592e33f0968636eaeacba446b63011d87e9542c651ca328c3c27f kjs-5.51.0.tar.xz" diff --git a/user/kjsembed/APKBUILD b/user/kjsembed/APKBUILD index 85fdbebbf..38f3c0ade 100644 --- a/user/kjsembed/APKBUILD +++ b/user/kjsembed/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kjsembed -pkgver=5.50.0 +pkgver=5.51.0 pkgrel=0 pkgdesc="JavaScript bindings for QObject" url="https://www.kde.org/" @@ -40,4 +40,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="2b7a86569217304a0b6a5ebfaa03df000b08e6779be0cfeb4109de8861e6d262b5f415863b831d89eb9992e8bf73d8273572e2838ae1c95be61bbbcc65fbd43d kjsembed-5.50.0.tar.xz" +sha512sums="6d2e17343699737aba1f21dbf63aa4e0e163e843a4dae1c6de2d61db6b081674fdd9932d719ed0022cda2466ec3fbfa44d03528c5b1ef7a46e5dea378ecb414d kjsembed-5.51.0.tar.xz" diff --git a/user/kjumpingcube/APKBUILD b/user/kjumpingcube/APKBUILD index 0245aec1b..5cc0286fc 100644 --- a/user/kjumpingcube/APKBUILD +++ b/user/kjumpingcube/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kjumpingcube -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="Dice-driven tactical game" url="https://games.kde.org/game.php?game=kjumpingcube" @@ -40,4 +40,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="b50c87a94f5c560e665a145ddd3e62db2ab637149b41f0a5f0fbc726d36eeea90e42615d3fb10b27f65325ae84ad460d0ecbd837e35a4f7a245617202553c338 kjumpingcube-18.08.1.tar.xz" +sha512sums="232041ad4da40c7802c45eff35c63ab5ec81f73e9fdecf1fefe52f5a67c3ef064d9524ea56a9e1954dc1fba76b6521acbd0f85a329947254d5f661ccd74862a1 kjumpingcube-18.08.2.tar.xz" diff --git a/user/kleopatra/APKBUILD b/user/kleopatra/APKBUILD index fee0cad00..f47978f6b 100644 --- a/user/kleopatra/APKBUILD +++ b/user/kleopatra/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kleopatra -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="Certificate manager and cryptography GUI" url="https://www.kde.org/applications/utilities/kleopatra/" @@ -40,4 +40,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="dd13d287f645a263e460f91528e7eec5d2e8523702770fe4f7c4f49da5303344d6a6fe2b2124ce39c480546ba126d518921f49ef746d34c66f40c2aa99f85c1c kleopatra-18.08.1.tar.xz" +sha512sums="2ff18132c511ae6550852e935333ff69c10db525728426eb06107ec5a3a7f35e2d2878f9c859b2899770ba25fa510001418f7d70a0b2e440220f4b0f3fcea87e kleopatra-18.08.2.tar.xz" diff --git a/user/klettres/APKBUILD b/user/klettres/APKBUILD index 2a66e234b..0ada40d69 100644 --- a/user/klettres/APKBUILD +++ b/user/klettres/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=klettres -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="Learn alphabets for multiple languages" url="https://www.kde.org/applications/education/klettres/" @@ -40,4 +40,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="6e0aadf89c9bae1f06e2318d40830b1793c5410548e706ab66545c26528e7f516c0b3986f36b2cfd083d53fef50a2199b30a110b7149d06a6264ad19f9be74ee klettres-18.08.1.tar.xz" +sha512sums="71e0aeb7e9f4bcc07a5ff1bad484e22c8e43c8bc9ffea08fa3c13564e88d2172cf83b2dd02a40a4e8c20062155810ee42f3de94715ac30668c7c5e4df85e242e klettres-18.08.2.tar.xz" diff --git a/user/klickety/APKBUILD b/user/klickety/APKBUILD index f5a4338eb..343441d54 100644 --- a/user/klickety/APKBUILD +++ b/user/klickety/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=klickety -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="Fun, simple colour matching game" url="https://www.kde.org/" @@ -40,4 +40,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="2df34e87cdeb9f0edd7516f0ab280eed02ad1beea7b4ad85b9d6ec496c744c0bc15a9661792a09196021aea12754ab7569e3395ab80d98f37193a27cd79f5268 klickety-18.08.1.tar.xz" +sha512sums="fdee525191095642d8f9d703e139eae65a13f9196a087506ae00980b07dc9e8a53e1c97d181bcc6c219b220f5700ab60522d755e92ddeb798e06e75147bc6c19 klickety-18.08.2.tar.xz" diff --git a/user/klines/APKBUILD b/user/klines/APKBUILD index 18cc6ec80..65cfc60a5 100644 --- a/user/klines/APKBUILD +++ b/user/klines/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=klines -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="Simple yet addictive single-player game" url="https://games.kde.org/game.php?game=klines" @@ -40,4 +40,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="cee1b2d23de590f6449869485d213f8d87b0dd97f376af9f4dbcb7463053b915d6a9b5dbd17b46116e04802ddfb42cfe5413f8e5f92aaa8dc323e71bb786f814 klines-18.08.1.tar.xz" +sha512sums="9063fbd49e4ee43b8f48934535ea2860074f7f353d7db27bce4599ce0d1dbda38843e7c1a910809d89d06aaea1b82d8df6cee6c24065f7c19eca1b4400e58e03 klines-18.08.2.tar.xz" diff --git a/user/kmag/APKBUILD b/user/kmag/APKBUILD index 243eebce5..e148e2498 100644 --- a/user/kmag/APKBUILD +++ b/user/kmag/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kmag -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="Screen magnification utility" url="https://www.kde.org/applications/utilities/kmag/" @@ -39,4 +39,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="ca35b13fc309df8b8d2c7ca4af726b57823ad01bd6dc8d307e81294625d8f8f98e4fdb6827260b00b4427f5980de0ec1c3d9664ad89b54699125ca0dfe6a8b18 kmag-18.08.1.tar.xz" +sha512sums="f135fcc94a92e515bc8fbeb01a7385fa89919d1c662628c82f54a064d2f49544ec1b7fb7a0c88b7aa99b9da6a4f980bca7828129eb075976810fc1917ab2e845 kmag-18.08.2.tar.xz" diff --git a/user/kmahjongg/APKBUILD b/user/kmahjongg/APKBUILD index 6bd04a4c6..556e02226 100644 --- a/user/kmahjongg/APKBUILD +++ b/user/kmahjongg/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kmahjongg -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="Mah Jongg desktop game" url="https://games.kde.org/game.php?game=kmahjongg" @@ -40,4 +40,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="2969e334808f396825ab7370a0c76e3836c89deb6ba46841e0355a10257a9daf53beb6675655729c94af225167e78bccbc13deba4f8a331eba50e0213195c27d kmahjongg-18.08.1.tar.xz" +sha512sums="d5cc81e34c0741143270c3c1e8d0975b84fdf991fd0daa9e3f2ae1c9056f507acfebe49c58c1567f4305e3d6a3bf607625fc464027aaf0c2acf393451d7ecee0 kmahjongg-18.08.2.tar.xz" diff --git a/user/kmediaplayer/APKBUILD b/user/kmediaplayer/APKBUILD index 8c2c3369b..77dfa9cb7 100644 --- a/user/kmediaplayer/APKBUILD +++ b/user/kmediaplayer/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kmediaplayer -pkgver=5.50.0 +pkgver=5.51.0 pkgrel=0 pkgdesc="Media player framework for KDE 5" url="https://www.kde.org/" @@ -11,7 +11,7 @@ depends="" depends_dev="qt5-qtbase-dev kparts-dev kxmlgui-dev" makedepends="$depends_dev cmake extra-cmake-modules" subpackages="$pkgname-dev" -source="https://download.kde.org/stable/frameworks/5.50/portingAids/kmediaplayer-$pkgver.tar.xz" +source="https://download.kde.org/stable/frameworks/5.51/portingAids/kmediaplayer-$pkgver.tar.xz" build() { cd "$builddir" @@ -40,4 +40,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="20307ad83e787cdae856362ffc5cead82ac2cb46ab469de3d27d9c635d2123404c44fe28067c8712fc99cb0be78c755361811816d697d12f4415adffdbbefe2e kmediaplayer-5.50.0.tar.xz" +sha512sums="d1c2f471a8ecca7c4876015881984118a6df775ca463f1933171323230c70762bed0f706823b4be677d6a5cdfe86f96dcaea1b3bc5975b3cf279f6fc5f8a742f kmediaplayer-5.51.0.tar.xz" diff --git a/user/kmime/APKBUILD b/user/kmime/APKBUILD index 94e748891..ced484d38 100644 --- a/user/kmime/APKBUILD +++ b/user/kmime/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kmime -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="KDE support library for MIME" url="https://www.kde.org/" @@ -42,4 +42,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="2a3ab2f7e69e14f8ad86ac9f6a9c33a3fd3da703da82ec7b53d126f6d8c7a51608b4f221a7903d37c2db429b444e643130a8687b1e02d5cc746d5c8d34c151d4 kmime-18.08.1.tar.xz" +sha512sums="b10439a1230c97232840a40faaade162e02f5bab5a2e72b76b32fa5334c288dba2db8a8e7d1c1e788259a852940520d7800b77a19d5dad34c3cda579b89dc718 kmime-18.08.2.tar.xz" diff --git a/user/kmines/APKBUILD b/user/kmines/APKBUILD index 0779e4192..8e1492829 100644 --- a/user/kmines/APKBUILD +++ b/user/kmines/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kmines -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="Classic Minesweeper game" url="https://games.kde.org/game.php?game=kmines" @@ -41,4 +41,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="b578fba58b776921d8a051dbf5dae02e91f2a41a4fa832543b671b1454a0fc16e108535299be33499f13a01aab0a75675394d43f0d804c96c45ab3cedf3074b2 kmines-18.08.1.tar.xz" +sha512sums="12284e67d2d457bcb74af2a7da8e2918ea3965073260dc9eb33714ca3b64688cc825a49aa0592da992ef82ca8f680ddc3f08c66a319e6f3cfcceecf7f71f57f2 kmines-18.08.2.tar.xz" diff --git a/user/kmix/APKBUILD b/user/kmix/APKBUILD index ef2a0f629..7edf21aca 100644 --- a/user/kmix/APKBUILD +++ b/user/kmix/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kmix -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="KDE sound mixer" url="https://www.kde.org/applications/multimedia/kmix/" @@ -42,4 +42,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="2e532d9041604e9d7661add070eeedb7fccf85bf9d6c01160f67cd3a2b20d95322afa9813d45938774456eb9cee342e888f742839b423dab327c898bed9b846f kmix-18.08.1.tar.xz" +sha512sums="560c6610fdce8070eb2f82f01612add104b0f12e394c509281da07101e2cccea4100d45f097c5bffc41849643366d0d854e3f5e226fbe0da40577dc3dfa89ad2 kmix-18.08.2.tar.xz" diff --git a/user/kmousetool/APKBUILD b/user/kmousetool/APKBUILD index dd870f305..850390b58 100644 --- a/user/kmousetool/APKBUILD +++ b/user/kmousetool/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kmousetool -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="Tool to assist with clicking the mouse button" url="https://userbase.kde.org/KMouseTool" @@ -40,4 +40,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="d7ff0284453c39a8c3be8f7937ac0439d17af4313ab56a6903eb39473d8fad06c836fe836ec4e061dd5a96317bef916e9a3ac9771c5a829061d1ad20ef32be08 kmousetool-18.08.1.tar.xz" +sha512sums="d03538f7bfce62d76c146d88f47f2af3d04b6a409983f4ede72c09e76541943a6525deaea3b0cbf009856fa2b92e4d9ba6ad5e0e8171f571ecb70c13e8333a49 kmousetool-18.08.2.tar.xz" diff --git a/user/kmplot/APKBUILD b/user/kmplot/APKBUILD index 4420fcada..2fd0325ff 100644 --- a/user/kmplot/APKBUILD +++ b/user/kmplot/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kmplot -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="Mathematical function plotter" url="https://www.kde.org/applications/education/kmplot/" @@ -40,4 +40,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="b5e5944875bc49f2bbe55aad41212f68973995e0de1926195a4f16e2b4dbc67f46bf745a577f6bd07d9ad30b7795ff65e853920f6fc3333e46b74f256a1b266a kmplot-18.08.1.tar.xz" +sha512sums="7780848750bd337d3051a477649edc34da233da112546e3f53393c3338ca18ca4086f400d5bfd12e875b4f7cd1873979b4b61397ed5550706467c52149f784c9 kmplot-18.08.2.tar.xz" diff --git a/user/knetwalk/APKBUILD b/user/knetwalk/APKBUILD index 963150b46..10c378e98 100644 --- a/user/knetwalk/APKBUILD +++ b/user/knetwalk/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=knetwalk -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="Build up a computer network by placing the wires correctly" url="https://www.kde.org/applications/games/knetwalk/" @@ -41,4 +41,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="2e85f38874c8c8e6929ef84b39cf5498d3b44e924aeb623cf58b55e0c9a213f3e25150aace852ae6082d50414468b90a59a288440860102a06f7e6296d662611 knetwalk-18.08.1.tar.xz" +sha512sums="c420e83cdaa06c543b99a94cdcb0ea55daa853bbd3e7fae6973140220490f9dc555656576b03d0d8297a5173db4e4d2fe5ce3a1590bf275a09b003817a59863a knetwalk-18.08.2.tar.xz" diff --git a/user/knewstuff/APKBUILD b/user/knewstuff/APKBUILD index ed21673ad..eb6c74f35 100644 --- a/user/knewstuff/APKBUILD +++ b/user/knewstuff/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=knewstuff -pkgver=5.50.0 +pkgver=5.51.0 pkgrel=0 pkgdesc="Framework for discovering and downloading plugins, themes, and more" url="https://www.kde.org/" @@ -45,4 +45,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="492adcfe5542c39483f30be026a1d6d69ed438448d57c062aeaf4fb7fe1676c9e91c11a3a29bf2ad738c6581aadc0f45b5c252935a7530bb34e051b207e6af51 knewstuff-5.50.0.tar.xz" +sha512sums="0ab0548550710ee82ab241ed7c456d7cdf1b3f9135b0c0d1131d614f9848519980f0ea3466cafa8432e027a2daf7920c4feca07d374c6d21b77dc8ad8586e00c knewstuff-5.51.0.tar.xz" diff --git a/user/knotifications/APKBUILD b/user/knotifications/APKBUILD index a16b5122c..0854561a9 100644 --- a/user/knotifications/APKBUILD +++ b/user/knotifications/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=knotifications -pkgver=5.50.0 +pkgver=5.51.0 pkgrel=0 pkgdesc="Framework for sending notifications to users" url="https://www.kde.org/" @@ -43,4 +43,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="3128717e747baf8a3fecc3147ebfbd256fe1f330e1199222f276eabd17321c8e63272f0b252bdbf3372f712436046e4f7a725abfcee5345a9c1f823da218ab28 knotifications-5.50.0.tar.xz" +sha512sums="bd6da71f7d8788e9c27603e0d1a1f03e638212a5d7127803160e5b03fc91c5f8200f9aa33c63f1884d39561d656be7a34bca7e5039019efb4399f60f72b6427a knotifications-5.51.0.tar.xz" diff --git a/user/knotifyconfig/APKBUILD b/user/knotifyconfig/APKBUILD index 527ffae25..f61375a0a 100644 --- a/user/knotifyconfig/APKBUILD +++ b/user/knotifyconfig/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=knotifyconfig -pkgver=5.50.0 +pkgver=5.51.0 pkgrel=0 pkgdesc="Framework for configuring notifications" url="https://www.kde.org/" @@ -40,4 +40,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="1a00c395e2cc52b3215a4e8d87e1b4d376f4b5f4b4ef0a4afd48ec776924314604549d9b6b0d3514e70a090643fdc8f30be405593f108f2cdf05ecd7c9a920c4 knotifyconfig-5.50.0.tar.xz" +sha512sums="72f2e66b0b3b8ba6c6c4c0faef4b7d88f5613eb1ba9e1e669b57fe3d05b5744cbde18522bf077d7f1613e45bcb73831ba60eca46b6257764934676fa0d16266d knotifyconfig-5.51.0.tar.xz" diff --git a/user/kollision/APKBUILD b/user/kollision/APKBUILD index 459157fcb..5733e036f 100644 --- a/user/kollision/APKBUILD +++ b/user/kollision/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kollision -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="Simple ball dodging game" url="https://games.kde.org/game.php?game=kollision" @@ -40,4 +40,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="ec2c7d2ac4cbbfc9dbb7fae4046984f5acae8ca68c2a2f493dba3edc649a7cd834c9cca23a579f75c704aa76efdd4cd920ae5fc431ff3343ba9d304f5ea3daf9 kollision-18.08.1.tar.xz" +sha512sums="99cf479bfd2aeb4b81a1db268ddafd0b011a8dc73da9c8a191a07acdb046b2dbb43feb4d760cf49b87f95d64e9faf899e569da42bbeccb2ab7c50c85062df5f4 kollision-18.08.2.tar.xz" diff --git a/user/kolourpaint/APKBUILD b/user/kolourpaint/APKBUILD index f674cb6e0..2a0007604 100644 --- a/user/kolourpaint/APKBUILD +++ b/user/kolourpaint/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kolourpaint -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="Simple painting program for KDE" url="https://www.kolourpaint.org/" @@ -40,4 +40,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="ffd286a272bb0152238f73ab510d9eab006b9362f1d4d4f35b30d3ba9d3335be24f86b6aa71e29a5c5faf87c6d72e96f58ff2b0fbcbcaf1471c94a9fff8949c0 kolourpaint-18.08.1.tar.xz" +sha512sums="ccfee1869ada8b61c20e9df322e0811a26f19d028be6f7895cf517c109ae00d72622032ce1117aa2b1573c5c333e63d70f4f444c1c627a4dbc11c499eec934fe kolourpaint-18.08.2.tar.xz" diff --git a/user/konquest/APKBUILD b/user/konquest/APKBUILD index 8c753ac6b..df2bc97e8 100644 --- a/user/konquest/APKBUILD +++ b/user/konquest/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=konquest -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="Galactic strategy game" url="https://games.kde.org/game.php?game=konquest" @@ -40,4 +40,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="a3fd61d8b167d9b1cb00771c12a1cbdefc6230484f0e79069647b8c6b104b3993d326bf5c4e202be69ad8794d0c0058b13569bc2cae071aafb352235eccaec44 konquest-18.08.1.tar.xz" +sha512sums="9da9a24effb27d3bf714112a7976fa1c1381509986937c436740857ed610c9d2ef29d51b0a1ab224e1ce70237d06c5d7afbcd8551522ecdb8b1e593b63d7d0bd konquest-18.08.2.tar.xz" diff --git a/user/konsole/APKBUILD b/user/konsole/APKBUILD index 705d23523..cd66fc2b8 100644 --- a/user/konsole/APKBUILD +++ b/user/konsole/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=konsole -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="Terminal emulator for Qt/KDE" url="https://konsole.kde.org/" @@ -44,4 +44,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="ec450f0393fece73394d7c77afba0b7adbf4e18d7b0d216de3e135f0e01371c3b5833ebbc79dc356fa102d2d8e3bea3667a5f42695793058b406d38b1f8e81a6 konsole-18.08.1.tar.xz" +sha512sums="a8eae209ec3a60be27b06ba850353b0d85a533cbea691114c2aa2c812f9d884153b2915d8fb52977ae9ed7ce08161e10d3f378d31b0ca166750e7e4584842959 konsole-18.08.2.tar.xz" diff --git a/user/kpackage/APKBUILD b/user/kpackage/APKBUILD index a9b058ba7..7bbe1e955 100644 --- a/user/kpackage/APKBUILD +++ b/user/kpackage/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kpackage -pkgver=5.50.0 +pkgver=5.51.0 pkgrel=0 pkgdesc="Frameworks for managing KDE data packages" url="https://www.kde.org/" @@ -42,4 +42,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="f56de9577b6de69724967f1ea911097d03d8bf5de8dcfeb10dc040e0fa61504d5db5e3330ceff85c1590899289f1a4b904b1d7cefa9516fa14a635b1da14650a kpackage-5.50.0.tar.xz" +sha512sums="0ddf65995c3cebbdefea5cdcdb4634b9d5e26a4328e4fe4b180ad69e59a3ea254095d5aca418e6609925b52606e1200f8ac8b0432eb05eca6c324813bf1218c9 kpackage-5.51.0.tar.xz" diff --git a/user/kparts/APKBUILD b/user/kparts/APKBUILD index da0d7ab42..e6e6359c5 100644 --- a/user/kparts/APKBUILD +++ b/user/kparts/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kparts -pkgver=5.50.0 +pkgver=5.51.0 pkgrel=0 pkgdesc="Framework for user interface components" url="https://www.kde.org/" @@ -43,4 +43,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="c787e7b85cd4053e014eed5610812715b6bfd9a450e86fddc5259f8bbfd5fddb215720cb3ef7a190a345343042712ccda7e55082807e3a2dd168decf30f13fd2 kparts-5.50.0.tar.xz" +sha512sums="f0fab6d9fca330636c14f5c18cf1cb71385d44b185a8418f20798f3d3012f32107f9c3b1d84b3acf56038f4c774ac7fb015746339e0bd6e456f8f307332a0c79 kparts-5.51.0.tar.xz" diff --git a/user/kpat/APKBUILD b/user/kpat/APKBUILD index 838c733bf..085a4901f 100644 --- a/user/kpat/APKBUILD +++ b/user/kpat/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kpat -pkgver=18.04.3 +pkgver=18.08.2 pkgrel=0 pkgdesc="Collection of card games for KDE" url="https://games.kde.org/game.php?game=kpat" @@ -11,7 +11,8 @@ depends="libkdegames-carddecks" makedepends="cmake extra-cmake-modules qt5-qtbase-dev qt5-qtsvg-dev kconfig-dev kcompletion-dev kconfigwidgets-dev kcoreaddons-dev kcrash-dev ki18n-dev kdbusaddons-dev kdoctools-dev kguiaddons-dev kio-dev knewstuff-dev - kwidgetsaddons-dev kxmlgui-dev libkdegames-dev shared-mime-info" + kwidgetsaddons-dev kxmlgui-dev libkdegames-dev shared-mime-info + freecell-solver-dev" subpackages="$pkgname-doc $pkgname-lang" source="https://download.kde.org/stable/applications/$pkgver/src/kpat-$pkgver.tar.xz" @@ -41,4 +42,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="bd325d52faad7200d5aa1738cc539d8f285c4b9cb67e2f63837379fc89b4adb8873433df01392447e69546db04698b2f108613fe0a3001bf7c77dbda0bd73acf kpat-18.04.3.tar.xz" +sha512sums="80f01530a2475c99916bc098283228746048fd9be0fac811649e7a874d5c13ce7afaf77b95b17a5dd33ab466fd89fde35d282c7cb666162ac65bc3e598e8c877 kpat-18.08.2.tar.xz" diff --git a/user/kpeople/APKBUILD b/user/kpeople/APKBUILD index 5ab7534a2..216dd389e 100644 --- a/user/kpeople/APKBUILD +++ b/user/kpeople/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kpeople -pkgver=5.50.0 +pkgver=5.51.0 pkgrel=0 pkgdesc="Provides access to all contacts and groups them by physical person" url="https://api.kde.org/frameworks/kpeople/html/index.html" @@ -45,5 +45,5 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="1e52717038027a0bb7e8e6a4007b095f44ac6932aa8766c947d96046184927946464d56e0253fe231a80a3b95ba4f2980e474b58d1a5261ce0cbedf59e5b737e kpeople-5.50.0.tar.xz +sha512sums="264ecd72fa5bfae1be9ae5b39feba654b27a772c5552c39b71276f886e814627c75880f5ee96cb8de9885d317e56078c850c60f7768282cb6ff069f5c8124d33 kpeople-5.51.0.tar.xz 77df2aefcdfb8e5b9c2fef7a6bfd79066819b0c6958b9e2f8fe94860155aaae9c284a110a15a189cd5b423dc7aa017b952196370f60a4fb382ed7eb77f15abd9 dont-crash-test.patch" diff --git a/user/kpimtextedit/APKBUILD b/user/kpimtextedit/APKBUILD index 80f407c1f..acbc169a1 100644 --- a/user/kpimtextedit/APKBUILD +++ b/user/kpimtextedit/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kpimtextedit -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="Text editor for Personal Information Managers (PIMs)" url="https://pim.kde.org/" @@ -43,4 +43,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="e7830227a74331e399d030dfd8058382329512b85ccd36061d7ddeba2c1eca287d41890847203afb6df254e2d9927fda7974feb4c48ab433f5b037fe48c588f5 kpimtextedit-18.08.1.tar.xz" +sha512sums="f99a974170a17d9850f4ad58b8adf010c6089a93e908872cad7f4ed716dcec14beb4a4a276b453135f01202d7970ee56edac84836e46351d58d9f421f9487e04 kpimtextedit-18.08.2.tar.xz" diff --git a/user/kplotting/APKBUILD b/user/kplotting/APKBUILD index be0cd160b..c7c313ab7 100644 --- a/user/kplotting/APKBUILD +++ b/user/kplotting/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kplotting -pkgver=5.50.0 +pkgver=5.51.0 pkgrel=0 pkgdesc="Framework for data plotting functions" url="https://www.kde.org/" @@ -42,4 +42,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="352c424d842ddbe277c7a71acb7fe50fb7cdc78bc750c85ac5a364a6e330bd69344cd5dbdd7922725e1b143bd0d7b1ac1b6d003f5baa67edb33981d27f830838 kplotting-5.50.0.tar.xz" +sha512sums="e75a88074b18768b4edf90a5020257c49fe0440fba806f0ef1880182fc1856853211de03f7aca3be3f220fe93ff723009c96799b0c94f237ac7c698247f37666 kplotting-5.51.0.tar.xz" diff --git a/user/kpty/APKBUILD b/user/kpty/APKBUILD index 5f4f9400a..602ae416f 100644 --- a/user/kpty/APKBUILD +++ b/user/kpty/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kpty -pkgver=5.50.0 +pkgver=5.51.0 pkgrel=0 pkgdesc="Framework for implementing terminal emulation" url="https://www.kde.org/" @@ -42,4 +42,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="22b394b8d53ab5aae05a51470a3a9ed209c8533425da6f1d6fdb26c82cc5fc1fec2c6869caa5192f067bb60a819a4ce6c19784c5fb8b7bb1691b507e77aae54d kpty-5.50.0.tar.xz" +sha512sums="e43608bbfd342fb4bcdc0376fa16d83c33589f84de4707281d7f6ef8aa19716f85df7b5dff0898a87d525611be3cc6dd9ab3cb349d76b83b6ca2bca733d81350 kpty-5.51.0.tar.xz" diff --git a/user/krdc/APKBUILD b/user/krdc/APKBUILD index 89d6a6391..c7e082442 100644 --- a/user/krdc/APKBUILD +++ b/user/krdc/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=krdc -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="View and control remote desktops (RDP and VNC)" url="https://www.kde.org/applications/internet/krdc/" @@ -42,4 +42,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="9765378af2d792958511f7359a12c7da1c032c1b23abf5859d679c4aab47260b1d4ae208ddaf6a08b69b4de8340b3fc3eafd9bd171b906f088dd80db52f6c032 krdc-18.08.1.tar.xz" +sha512sums="d9a420a48bac56acf7210f3476c3b9675aeb217a50d973934ec2dcac0ef92536a061e414d7016ad7d7ce9eabd6ee86f5ce1b875789e83dde80257ff9d3da2dd2 krdc-18.08.2.tar.xz" diff --git a/user/kreversi/APKBUILD b/user/kreversi/APKBUILD index 2c20058b7..4b97370b0 100644 --- a/user/kreversi/APKBUILD +++ b/user/kreversi/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kreversi -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="Reversi game" url="https://games.kde.org/game.php?game=kreversi" @@ -41,4 +41,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="5811bb3cc0aa2e7b9b5a56c0f5cb4c3de2120179878ec06eb387190618951d3315bf06184272b70ccb995c5c06b84b56949ca49d8c3ae6896b5d264aa8d13cca kreversi-18.08.1.tar.xz" +sha512sums="24da03f1be1e545e2ce57df52420b36eef8ecdea4ebea9439fb5e64437d95bcbe399546ed2565d310365b4a2a0b6f48af69f25ee8698f4ef0118380b31cae812 kreversi-18.08.2.tar.xz" diff --git a/user/krfb/APKBUILD b/user/krfb/APKBUILD index 139ffeeec..7fd2925c1 100644 --- a/user/krfb/APKBUILD +++ b/user/krfb/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=krfb -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="Share your screen with others for remote watching or assistance" url="https://www.kde.org/applications/system/krfb/" @@ -41,4 +41,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="1024222c35f4c73774635ccf6e65109f6ecdf29ddb2d63a9d6ae4821647115b2945320ea3cd4f1d3bb13009e853f5d045dfc7bea7f94d41ebccb42dbaa86433c krfb-18.08.1.tar.xz" +sha512sums="7b172469b701023f2eeb71a5ef27a70c5812a09b3e950c53d123d4a2f14d5eb0eba5a6d851b37aba21733aaf2e1669be6e36d9ec76bbb92aa1ed5de31b6c906a krfb-18.08.2.tar.xz" diff --git a/user/krita/APKBUILD b/user/krita/APKBUILD index 93dc3c60a..4b872a52e 100644 --- a/user/krita/APKBUILD +++ b/user/krita/APKBUILD @@ -1,8 +1,8 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=krita -pkgver=4.1.1 -pkgrel=1 +pkgver=4.1.5 +pkgrel=0 pkgdesc="Digital painting program by KDE" url="https://krita.org/" arch="all" @@ -52,4 +52,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="51b7527a3a7b049fc7d8dcd586ef35b574904b1bfa837975cfac055f182413d6c38d6fe81df4948bb4276f5e8a39dc5c981305ff0c42b4a1239b39adaa881904 krita-4.1.1.tar.gz" +sha512sums="7790e3e61c18f5a2f5ba0c5d08f09bf78bcfba563b46751689db00814b9775db85cc64c162aa1c1dc47b5e73e49598b24e6a4599b8350a9e07c15aa4eb463499 krita-4.1.5.tar.gz" diff --git a/user/kross/APKBUILD b/user/kross/APKBUILD index ad145f237..0d37c2741 100644 --- a/user/kross/APKBUILD +++ b/user/kross/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kross -pkgver=5.50.0 +pkgver=5.51.0 pkgrel=0 pkgdesc="Framework for scripting KDE applications" url="https://www.kde.org/" @@ -12,7 +12,7 @@ depends_dev="qt5-qtbase-dev qt5-qtscript-dev kparts-dev" makedepends="$depends_dev cmake extra-cmake-modules qt5-qttools-dev kcompletion-dev kcoreaddons-dev ki18n-dev kiconthemes-dev kio-dev" subpackages="$pkgname-dev $pkgname-doc $pkgname-lang" -source="https://download.kde.org/stable/frameworks/5.50/portingAids/kross-$pkgver.tar.xz" +source="https://download.kde.org/stable/frameworks/5.51/portingAids/kross-$pkgver.tar.xz" build() { cd "$builddir" @@ -40,4 +40,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="6c1f4062d87bfa691b6323ec6210cb1f321525e012ff8e37a90271f05eb7dde489f64fa36c027d7890b220ac7af89f3571547d267033a451fedb85522d01577b kross-5.50.0.tar.xz" +sha512sums="c2b97f2980b04b57b607e526b788982e7a61f6965302c46b8f3036d3683354d66d59a189e3e7c47e8c387543e24f4417baa1896b06ec150e95959f540caac6be kross-5.51.0.tar.xz" diff --git a/user/kruler/APKBUILD b/user/kruler/APKBUILD index ccaa5a9f1..c44d5a5f3 100644 --- a/user/kruler/APKBUILD +++ b/user/kruler/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kruler -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="Screen ruler" url="https://www.kde.org/applications/graphics/kruler/" @@ -39,4 +39,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="8facbb509eada0762264bef0435d2d4888a5e6a9a102f6c4d5746f4e299a67be888543ff12c4f53970c4371ac85cf4877d307193e9f33d4bf776a6ffd61922dc kruler-18.08.1.tar.xz" +sha512sums="a7e7c0c8184b6e48131fad93b6e6ca326f85c834cbca4caf1217b32197b6a6977b5de135596165e78bcb8da8cf4fcd1a8a7f23b28cd3d12b2741950913e5beee kruler-18.08.2.tar.xz" diff --git a/user/krunner/APKBUILD b/user/krunner/APKBUILD index 93aa18030..75d921e12 100644 --- a/user/krunner/APKBUILD +++ b/user/krunner/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=krunner -pkgver=5.50.0 +pkgver=5.51.0 pkgrel=0 pkgdesc="Parallel query system" url="https://api.kde.org/frameworks/krunner/html/index.html" @@ -43,4 +43,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="c1f14161c39c718f6dd9e3dca818a53d86d05b33d8115e26ce7e76d66dd3d54d22a15ea7b6c1865a5d374bd4175b9bc351db949b373e2b9de1fac8e3efb6542c krunner-5.50.0.tar.xz" +sha512sums="e053b454adaf1982a1b2b3b09aabacfd1b4f293c3d5f9c6b557e32d61049c6aeecb2b9aea547438e091395cc4b45ece38b4c7269ca90121ee0e8918e8573cf29 krunner-5.51.0.tar.xz" diff --git a/user/kservice/APKBUILD b/user/kservice/APKBUILD index b1acd8701..cc9429552 100644 --- a/user/kservice/APKBUILD +++ b/user/kservice/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kservice -pkgver=5.50.0 +pkgver=5.51.0 pkgrel=0 pkgdesc="Framework for implementing plugins and services" url="https://www.kde.org/" @@ -45,4 +45,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="d239647335f0c72e1c76f36f4f23dfdd4614467b1f95d75bffc3ffd11c2bcf307dbbbc7f67c0197030a1c27875bf256a751721204f06769d9fdc3f1e49172e87 kservice-5.50.0.tar.xz" +sha512sums="832c189b8fbf9ffca863032dcea513c14fb4823f6706675b8b939b9c6848c383b9f4ace0c7bc6211a9c5398026045fde3f62e38926e934dc6afeeb762fed56c7 kservice-5.51.0.tar.xz" diff --git a/user/kshisen/APKBUILD b/user/kshisen/APKBUILD index 2bef40a11..7581038ae 100644 --- a/user/kshisen/APKBUILD +++ b/user/kshisen/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kshisen -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="Mixture of Solitaire and Mah Jongg" url="https://games.kde.org/game.php?game=kshisen" @@ -39,4 +39,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="aa215ad4b30f91ac262d99657ff093ff9b24529af33c3f1c9ee5a79d3eb7bca5ff6515112430f4b4e70ce06fe75289082ec26ef9092418de2f5d8df291860f28 kshisen-18.08.1.tar.xz" +sha512sums="1ca7611260ca04acb763fefdc78988981b48d95418a0b00b1d59a40aa104cc36ff32ec1c9246edd43557e43949e03d269bd7c17f75dbda8d9024e91a1a8d4990 kshisen-18.08.2.tar.xz" diff --git a/user/ksnakeduel/APKBUILD b/user/ksnakeduel/APKBUILD index fb062a554..d09144d7b 100644 --- a/user/ksnakeduel/APKBUILD +++ b/user/ksnakeduel/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=ksnakeduel -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="Tron-like game" url="https://www.kde.org/applications/games/ksnakeduel/" @@ -41,4 +41,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="ae8ffbc8fa2489ec3aaf2d2ea866b6df5d1a9ea6e24708c584b21db69e93bff659d418bed33063a8a4c36735f6cf0664a3a117f4a55a4fe19e441b71d5c3a4b7 ksnakeduel-18.08.1.tar.xz" +sha512sums="13673dbed2b4266f6a8b4c26b0a63c4dd8e57bc66a8d5085d6434cbae05478afbb99c0371d9a59bba411044a89f2f1fb6a098217dc75f176f2616b00cba8835b ksnakeduel-18.08.2.tar.xz" diff --git a/user/ksquares/APKBUILD b/user/ksquares/APKBUILD index 70623fe6e..73ec2c9d9 100644 --- a/user/ksquares/APKBUILD +++ b/user/ksquares/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=ksquares -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="Fun and exciting game of Dots and Boxes" url="https://games.kde.org/game.php?game=ksquares" @@ -40,4 +40,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="8c5fbb1e5989adf061571a63a16d86f38b3f68d977162ce8fab4ea2b1b41eb58dee9371cca1f97052497a4a72d101fa4478941ea39022d87e885c23a39aef028 ksquares-18.08.1.tar.xz" +sha512sums="cfdb42579f5702f6eaecb230c2fe0c32501982772385533cbb8868f8174e1797aace26ef3a7553a633bd753950bf550a7b00f534da09836793edb21d64ea9c3c ksquares-18.08.2.tar.xz" diff --git a/user/ksudoku/APKBUILD b/user/ksudoku/APKBUILD index a00cd06f5..c9959832d 100644 --- a/user/ksudoku/APKBUILD +++ b/user/ksudoku/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=ksudoku -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="Desktop Sudoku (symbol placement / logic) game" url="https://games.kde.org/game.php?game=ksudoku" @@ -42,4 +42,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="c310e1ea217e0c7cf56562c6ac5e2d028567031b7f4c710d132ea4149e658577d659689a607c3ae27337f0c09a9674a5d38d229651401fb98cc8b01adc2544de ksudoku-18.08.1.tar.xz" +sha512sums="50b70e276d320821dbdabb161c770315f87d7286e0066fc453d17761e16f9e2e329d13a91d0420650e2de5b3b7e7da2bccd3672ff6055fd80d641a01addc50b7 ksudoku-18.08.2.tar.xz" diff --git a/user/ksystemlog/APKBUILD b/user/ksystemlog/APKBUILD index 0f836fa04..875268e4e 100644 --- a/user/ksystemlog/APKBUILD +++ b/user/ksystemlog/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=ksystemlog -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="Friendly, powerful system log viewer tool" url="https://www.kde.org/applications/system/ksystemlog/" @@ -41,4 +41,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="096c335bc4b461548d7d16dbee738ee06fb5fae91ab3f02869b73af18f1dd8ef4ea27568a265e6a40f3777e7749e9f5a11e9b3402ac5f698836e00475a759308 ksystemlog-18.08.1.tar.xz" +sha512sums="74f89527757f3c61fb563826a9d5354426fe901c879200f771d4186c20a9ac67d1ce9b6b5fbf694399818d17fc947cdc868940002d059fe52b12dfef5a49cdc5 ksystemlog-18.08.2.tar.xz" diff --git a/user/kteatime/APKBUILD b/user/kteatime/APKBUILD index 799131cc0..7c5f1a365 100644 --- a/user/kteatime/APKBUILD +++ b/user/kteatime/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kteatime -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="Steep responsibly" url="https://www.kde.org/applications/games/kteatime/" @@ -40,4 +40,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="61d0233dc81a492f2fa3caec2a0a028c66a0f9b0ceb18ff1d395dedee3ea184b221dd59bb35886d65ba7c4bd32f84a6ac8aaab0b0ccc61d3989824a5410539c3 kteatime-18.08.1.tar.xz" +sha512sums="065794fdaa956947056da2a2771ebfdcd59f88ae648734e86b4648b41ce3f223e43791ff4868be85e86d0ab4a4f3bfefa553dd838d4df4bb241067922a667ec4 kteatime-18.08.2.tar.xz" diff --git a/user/ktexteditor/APKBUILD b/user/ktexteditor/APKBUILD index 21c0fe277..d6a9d9e92 100644 --- a/user/ktexteditor/APKBUILD +++ b/user/ktexteditor/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=ktexteditor -pkgver=5.50.0 +pkgver=5.51.0 pkgrel=0 pkgdesc="Reusable, programmable text editor widget" url="https://www.kde.org/" @@ -18,7 +18,7 @@ subpackages="$pkgname-dev $pkgname-doc $pkgname-lang" source="https://download.kde.org/stable/frameworks/${pkgver%.*}/ktexteditor-$pkgver.tar.xz" # secfixes: -# 5.50.0-r0: +# 5.51.0-r0: # - CVE-2018-10361 build() { @@ -48,4 +48,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="ab58d937d7b3e6374f7800fa81d52522a8fe73e67a222402b557b41770f1067348bb6b0e8a4e76cf4c983cc3e2e9df0760bd10791531b6d59cbd438c39e93537 ktexteditor-5.50.0.tar.xz" +sha512sums="9da7f51240b9772e03d90438a3e21f29889ef0e69c7af86ffbd702f7a1569cffeda52e1f24f1b4a28739366a5229348a147da994e2ffe32b1a6d5dc17213f0f9 ktexteditor-5.51.0.tar.xz" diff --git a/user/ktextwidgets/APKBUILD b/user/ktextwidgets/APKBUILD index 0476c3c52..5aeed9d27 100644 --- a/user/ktextwidgets/APKBUILD +++ b/user/ktextwidgets/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=ktextwidgets -pkgver=5.50.0 +pkgver=5.51.0 pkgrel=0 pkgdesc="Framework providing widgets for text manipulation" url="https://www.kde.org/" @@ -43,4 +43,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="bbb886b5f3520d7aba4b2f0fb3b63fcba7df16cf551077bc6827ca402fda4849a6148b21706c3c733cb788042a2ed1870a28104f7cb7227cbf5f3f4e14128db0 ktextwidgets-5.50.0.tar.xz" +sha512sums="4a3d56f21d86b03f4097407d44eeaf3915b62148772f8d54a4489a1ac18d5422c44e26e7a2cb52570f0ba6502d5b006093a16fc6783e7682cb878863c4ce0dc7 ktextwidgets-5.51.0.tar.xz" diff --git a/user/ktimer/APKBUILD b/user/ktimer/APKBUILD index ecc6bf036..3d255f169 100644 --- a/user/ktimer/APKBUILD +++ b/user/ktimer/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=ktimer -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="Tool to execute programs after some time" url="https://www.kde.org/applications/utilities/ktimer/" @@ -39,4 +39,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="54916845190dcf9e80deefbdf1cfa583cfc37c4ab7fca9ba56a0542a934719f98b56bc879768a0f6822d255ead23446edad9bf21886fd341a11f2ad3296f2947 ktimer-18.08.1.tar.xz" +sha512sums="65cb1ee4f2f1402728ef0fcedb403f4015d06383f268f13fd6dd031601083007502373506d1ece514a9c55ff8a7f111a71f31350929d82a2298dab69477d3680 ktimer-18.08.2.tar.xz" diff --git a/user/ktouch/APKBUILD b/user/ktouch/APKBUILD index e9d79daa6..c725a9165 100644 --- a/user/ktouch/APKBUILD +++ b/user/ktouch/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=ktouch -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="Touch typing tutor" url="https://www.kde.org/applications/education/ktouch/" @@ -42,4 +42,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="83fb8fefff5a3fbb8124fb7a0d545f5d2edbcf1b2c1e134cf8c9984809bbe1f4b50e566782a9eed78233e9716f8638b86e177f5ed9f1f1304fbe70942abdf3ed ktouch-18.08.1.tar.xz" +sha512sums="925a7add9c0078eea79e677c0f90acd75ddc17ee88f6c1063c261f8b753d3077003508bca66d4434525715d8df688866237a0d3a051096f2ae657faca8604531 ktouch-18.08.2.tar.xz" diff --git a/user/ktuberling/APKBUILD b/user/ktuberling/APKBUILD index af37697bc..1b092b2dc 100644 --- a/user/ktuberling/APKBUILD +++ b/user/ktuberling/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=ktuberling -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="Simple constructor game" url="https://games.kde.org/game.php?game=ktuberling" @@ -41,4 +41,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="71381b04656f15e1c9409bfae15252f4a8ebe8c6de139d432e88ab23f942d8662a07dfb1d93901097c4d83227229e5becdebf1da10935cbb830848dfe8d4b18a ktuberling-18.08.1.tar.xz" +sha512sums="59d2d6b212973e7006d3dcefac5a6ed776bff2eed1e2f21b694429666c34290256429c964a288e3c03af8b0281f487ce27cb3f6f54b6845c2bea04e6b6ac4e4e ktuberling-18.08.2.tar.xz" diff --git a/user/kturtle/APKBUILD b/user/kturtle/APKBUILD index 10b73a429..4ee474ec4 100644 --- a/user/kturtle/APKBUILD +++ b/user/kturtle/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kturtle -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="Educational programming environment" url="https://www.kde.org/applications/education/kturtle/" @@ -40,4 +40,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="d33694c95676579a72c4065009f86f9a4aef9576057a4215267b16d5a37ba2b1d57e103bc9b3824dd5691b63d078e964291775a067f85c74d542b3654cd276a7 kturtle-18.08.1.tar.xz" +sha512sums="d9136d5aeb7c9c32f96b235a1608a2be71c123a9c745e3db5cec53fa647dc70d020bcb3d96692324f9047f7e579357a7aa030791fe6e9d91ddede9a778528870 kturtle-18.08.2.tar.xz" diff --git a/user/kubrick/APKBUILD b/user/kubrick/APKBUILD index 0ab818f4c..fd63fe70a 100644 --- a/user/kubrick/APKBUILD +++ b/user/kubrick/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kubrick -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="3D cube puzzle solving game" url="https://www.kde.org/applications/games/kubrick/" @@ -40,4 +40,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="37cd3bb1488f3cf0704010a3b9d10ba8861f3e258fbab63703b255e999f326899ddd5c50bf8409598ebced62e532105bfe541f5fe768e9a942fff3dd09cfb443 kubrick-18.08.1.tar.xz" +sha512sums="88aeac983d252b38dfc23552ad00557c80ea0ea8e3ce18f4c9f75de58059422588ee6c900bcb79bc66236c3cda60e47a7298fae9bcbdff6dd9ca29460c03c54d kubrick-18.08.2.tar.xz" diff --git a/user/kunitconversion/APKBUILD b/user/kunitconversion/APKBUILD index 39d7a3515..0b104c50b 100644 --- a/user/kunitconversion/APKBUILD +++ b/user/kunitconversion/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kunitconversion -pkgver=5.50.0 +pkgver=5.51.0 pkgrel=0 pkgdesc="Convert between metric and imperial" url="https://www.kde.org/" @@ -42,4 +42,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="82dc61f9893e6d1f7215226a1bc87404a09d8c29f384dab21fb78a2620ffb3ba45621beb057ef803f95635f2e8b1b0f3e57a9dbcbf815871d45c87f70d53750f kunitconversion-5.50.0.tar.xz" +sha512sums="d258c3a94392e742391d592e100a9e6e6d89c375306b1fa5a0f35731495e68667f2a8d334472f77d0a584783e1f393cf7eac1bb7ae034f94936cd3fd131b1c3e kunitconversion-5.51.0.tar.xz" diff --git a/user/kwallet/APKBUILD b/user/kwallet/APKBUILD index 1ed6014d1..a0b1a5923 100644 --- a/user/kwallet/APKBUILD +++ b/user/kwallet/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kwallet -pkgver=5.50.0 +pkgver=5.51.0 pkgrel=0 pkgdesc="Secure storage system for passwords built atop Qt" url="https://www.kde.org/" @@ -44,5 +44,5 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="45d798775898a8781be3341411c55f07df668d2f13806b3085e3c9f77926f564d6dc5ea3425aa3e0fdc42276125f320136725cd988807fb1a29b22ccc1bdccf8 kwallet-5.50.0.tar.xz +sha512sums="edb4129ad542d1b359c5a6f8ea2d84b400fe314138e22441f560e399b0209c6cd6be216ffc1b9066d6a05a880920ca7ef6969e24de9fe4a355cb291c6c5850ac kwallet-5.51.0.tar.xz edca12963a5db9db05b3b4d581c1b970569f3b96dc672422e561c189c9024b69710732281f054514ce3d596688a5b0ba512766f4fd768eea8e00a18dcfd59179 kwallet-5.22.0-blowfish-endianness.patch" diff --git a/user/kwalletmanager/APKBUILD b/user/kwalletmanager/APKBUILD index e05deca6d..2bb6cfe04 100644 --- a/user/kwalletmanager/APKBUILD +++ b/user/kwalletmanager/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kwalletmanager -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="Manage KDE wallets" url="https://www.kde.org/applications/system/kwalletmanager/" @@ -42,4 +42,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="9e5d37f3600dc8f6499e791c92858a0e16afe8cce6b60232af8736e161ad67936f4e4e2ec49cfd413aae410d4b1ef24e27dca42e3c04ab1fc05c61ed39698740 kwalletmanager-18.08.1.tar.xz" +sha512sums="5178cb62df0a96f72a58c203213650cd8b5bc97ff656e6cf096963e044023bf0a6d4ac545fe9d2ba64f23071f74cf7e817146e340939666383fc309854d26f48 kwalletmanager-18.08.2.tar.xz" diff --git a/user/kwave/APKBUILD b/user/kwave/APKBUILD index d99fa5a64..c4d3f3eb2 100644 --- a/user/kwave/APKBUILD +++ b/user/kwave/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kwave -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="Sound editor built for KDE" url="https://kwave.sourceforge.net/" @@ -46,5 +46,5 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="5e9abc54dbd3e757ffb287ce68f43eb91c4b7ee8c231fca194139d0c2183f1b1e8acd23f713d15ea40dca6cea03d4567591ac78d58650e554422772cd7a53660 kwave-18.08.1.tar.xz +sha512sums="31e971799d79cde4dac118121a8ca4d89910c8599f7b019e26e10bae63a892e53e022386e03a0703ff2a1c03b6121ff1761a89ce59903f49d8da6f23a039a58a kwave-18.08.2.tar.xz 43474f73281a7e3e97e2aa9e8c5b7aac50c8153c4ec09345a9ff43eb3c90a17c1dd9fbd2c630967ff87a5b21139f4efd0ecc44f36052549cc2036fd1db1dfac4 remove-msgcat.patch" diff --git a/user/kwayland/APKBUILD b/user/kwayland/APKBUILD index ab6e4bb2d..4fdcc3b53 100644 --- a/user/kwayland/APKBUILD +++ b/user/kwayland/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kwayland -pkgver=5.50.0 +pkgver=5.51.0 pkgrel=0 pkgdesc="Qt wrapper libraries for Wayland" url="https://www.kde.org/" @@ -42,4 +42,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="6698eace0b13d276b24ccb47cf15cb04c6ee473d5e21adcbd8729a02bb481387faf280b4fff5a7e94965671424e8a1be6364f17e738b929d2a5b1d6638c15428 kwayland-5.50.0.tar.xz" +sha512sums="dceb2b39757ee55ffcad88741556925b1467198e3cc66d9af3ee5eb707e3c226bcd2c5f8079754b7163421239a28931f86bddc543a15b47ba35a08acf3a6ddf1 kwayland-5.51.0.tar.xz" diff --git a/user/kwidgetsaddons/APKBUILD b/user/kwidgetsaddons/APKBUILD index 8e9a19a09..74bbc67eb 100644 --- a/user/kwidgetsaddons/APKBUILD +++ b/user/kwidgetsaddons/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kwidgetsaddons -pkgver=5.50.0 +pkgver=5.51.0 pkgrel=0 pkgdesc="Framework containing ready-made widgets for common tasks" url="https://www.kde.org/" @@ -43,4 +43,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="91c4824d1c5b889c11f84fe95f0e48453275451d3e2e7c5b4a5603fa5db4ffbe0ab20dfd48bb3fcec8576c4f1d494a5fcb5d53e84ff11af01ded26b93377cfe7 kwidgetsaddons-5.50.0.tar.xz" +sha512sums="01383c3ccbfbbe4fd871aed636d5ba7a2d4df83b08b2f1ede54449f1695756d76116489dc6e32055c658008c2419912426fb1246bd02a0bb0358ca87c2ec9d9b kwidgetsaddons-5.51.0.tar.xz" diff --git a/user/kwindowsystem/APKBUILD b/user/kwindowsystem/APKBUILD index 12be7c657..7f02703a5 100644 --- a/user/kwindowsystem/APKBUILD +++ b/user/kwindowsystem/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kwindowsystem -pkgver=5.50.0 +pkgver=5.51.0 pkgrel=0 pkgdesc="Framework for introspecting the running X11 window manager" url="https://www.kde.org/" @@ -43,4 +43,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="7e83e07ab587ef4a0edd58ca22ecba8277f97ca6438f537b6475bf03225559d207e80c2fde4c1ce5ebdb78b5a4c1e04407af9cba0a5dacbbaeacf3d7b14a9ed6 kwindowsystem-5.50.0.tar.xz" +sha512sums="cd2703b1cc87722b6c37d1380004d50f0899c1be508dbd42fb45392440ff8ca77eb1df0f0658a2e096b5cfb50b1bea76dc9226dff692e87ad2c8e81502d75f41 kwindowsystem-5.51.0.tar.xz" diff --git a/user/kwordquiz/APKBUILD b/user/kwordquiz/APKBUILD index 5fdb2bb57..c87814cf8 100644 --- a/user/kwordquiz/APKBUILD +++ b/user/kwordquiz/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kwordquiz -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="Flash card trainer for KDE" url="https://www.kde.org/applications/education/kwordquiz/" @@ -42,4 +42,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="40a00ca117b4a4a14921b84c312bd4afc98b83e45d0f7a1cc9cc24d365b57bb5a3a383dae65e8517e835991e02e1841fb5470a215003467c29f93e7e04427a28 kwordquiz-18.08.1.tar.xz" +sha512sums="85d2de5c354033e7b49cd37cabe249a5fef76ef849daf31187bfc64fefefcac2fb65fc87dd44e217d1bbe13934eb569eeb60d925a9df8a5d892c1c1c8db48dd3 kwordquiz-18.08.2.tar.xz" diff --git a/user/kxmlgui/APKBUILD b/user/kxmlgui/APKBUILD index d7b3e60b4..45b56f8ae 100644 --- a/user/kxmlgui/APKBUILD +++ b/user/kxmlgui/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kxmlgui -pkgver=5.50.0 +pkgver=5.51.0 pkgrel=0 pkgdesc="Framework for creating user interfaces using XML" url="https://www.kde.org/" @@ -44,4 +44,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="01915037c1709df0a04d9651d0c56f21856448636937188c50ff5785de374f68d87e9bb8a4f553b8247a601e186c4291b1e5ff4ec9bf89dbfd7d975c527e064a kxmlgui-5.50.0.tar.xz" +sha512sums="2da28eb4b5c53e0cb92fd140f4edf355ae84e8f507f3475540260eaea96149178a16eb2ae9bd1901eb1a04a8e0e2acb5c2b2083e8a3c114e232bdcb5355832bd kxmlgui-5.51.0.tar.xz" diff --git a/user/kxmlrpcclient/APKBUILD b/user/kxmlrpcclient/APKBUILD index c865e581e..354c0cb6d 100644 --- a/user/kxmlrpcclient/APKBUILD +++ b/user/kxmlrpcclient/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kxmlrpcclient -pkgver=5.50.0 +pkgver=5.51.0 pkgrel=0 pkgdesc="Qt library for writing XML-RPC clients" url="https://www.kde.org/" @@ -41,4 +41,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="08c207cc2c0db165ed76ea2c92bfbb1ed9eb49ace49ffb3bfbfb8780a0b335e0938504fe370465dc074ee6bb02f64a4d5f5bce459729215a334bfdbebba4ca98 kxmlrpcclient-5.50.0.tar.xz" +sha512sums="149e12d95daea4185c68a254c7c9cdf100a9157018bbaa96367c5ec87863464caeb9aeed1e39d492c12e05edcefdd2c8691cb6fca2fe0e81a95a358a375a43bb kxmlrpcclient-5.51.0.tar.xz" diff --git a/user/labplot/APKBUILD b/user/labplot/APKBUILD index b9c893184..c3b4d0388 100644 --- a/user/labplot/APKBUILD +++ b/user/labplot/APKBUILD @@ -1,8 +1,8 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=labplot -pkgver=2.4.0 -pkgrel=0 +pkgver=2.5.0 +pkgrel=1 pkgdesc="Interactive tool for graphing and analysis of scientific data" url="https://www.kde.org/applications/education/labplot/" arch="all" @@ -11,10 +11,12 @@ depends="shared-mime-info" makedepends="cmake extra-cmake-modules qt5-qtbase-dev qt5-qtsvg-dev kconfig-dev karchive-dev kcompletion-dev kconfigwidgets-dev kcoreaddons-dev kio-dev kdoctools-dev ki18n-dev kiconthemes-dev kdelibs4support-dev kxmlgui-dev - knewstuff-dev ktextwidgets-dev kwidgetsaddons-dev gsl-dev fftw-dev" + knewstuff-dev ktextwidgets-dev kwidgetsaddons-dev gsl-dev fftw-dev + qt5-qtserialport-dev syntax-highlighting-dev bison libexecinfo-dev" subpackages="$pkgname-doc $pkgname-lang" -source="https://download.kde.org/stable/labplot/2.4.0/labplot-$pkgver-kf5.tar.xz" -builddir="$srcdir/labplot-$pkgver-kf5" +source="https://download.kde.org/stable/labplot/$pkgver/labplot-$pkgver.tar.xz + liborigin-endian.patch + " build() { cd "$builddir" @@ -25,7 +27,7 @@ build() { -DCMAKE_INSTALL_PREFIX=/usr \ -DCMAKE_INSTALL_LIBDIR=lib \ -DBUILD_SHARED_LIBS=True \ - -DCMAKE_BUILD_TYPE=RelWithDebugInfo \ + -DCMAKE_BUILD_TYPE=Debug \ -DCMAKE_CXX_FLAGS="$CXXFLAGS" \ -DCMAKE_C_FLAGS="$CFLAGS -D_GNU_SOURCE" \ ${CMAKE_CROSSOPTS} @@ -34,7 +36,8 @@ build() { check() { cd "$builddir" - CTEST_OUTPUT_ON_FAILURE=TRUE ctest + # gives incorrect results + CTEST_OUTPUT_ON_FAILURE=TRUE ctest -E fittest } package() { @@ -42,4 +45,5 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="5d29dd7d63d484359e73c8d82d8dbc25a069e1f33829cf75c2a2009ebae2027353ecf578b51806b5f35ae17ec472f5cbfdb4caed2637dc1ecc9229d33033d21b labplot-2.4.0-kf5.tar.xz" +sha512sums="a4b285917e30b0ac00cb8c8ad6827ba3884d95fccc0511a0a317bb2d637e48e6579929c45cfb8bba737bb5a01472a2baa9d812a688730ac4fa40b23cc6625eba labplot-2.5.0.tar.xz +d251300ca0992637453ef12021f3fa4ba0ed5651a19b27bee7573f50b101aaa787544c035bf0d00b9a9ef14156536ce027879d605ede228761754b762db88ded liborigin-endian.patch" diff --git a/user/labplot/liborigin-endian.patch b/user/labplot/liborigin-endian.patch new file mode 100644 index 000000000..b40782a3a --- /dev/null +++ b/user/labplot/liborigin-endian.patch @@ -0,0 +1,26 @@ +diff --git a/OriginAnyParser.cpp b/OriginAnyParser.cpp +index c9e863e..2637945 100644 +--- a/liborigin/OriginAnyParser.cpp ++++ b/liborigin/OriginAnyParser.cpp +@@ -24,10 +24,18 @@ + #include <cinttypes> + + /* define a macro to get an int (or uint) from a istringstream in binary mode */ +-#define GET_INT(iss, ovalue) {iss.read(reinterpret_cast<char *>(&ovalue), 4);}; +-#define GET_SHORT(iss, ovalue) {iss.read(reinterpret_cast<char *>(&ovalue), 2);}; +-#define GET_FLOAT(iss, ovalue) {iss.read(reinterpret_cast<char *>(&ovalue), 4);}; ++#if __BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__ ++#define GET_SHORT(iss, ovalue) {iss.read(reinterpret_cast<char *>(&ovalue), 2);}; ++#define GET_INT(iss, ovalue) {iss.read(reinterpret_cast<char *>(&ovalue), 4);}; ++#define GET_FLOAT(iss, ovalue) {iss.read(reinterpret_cast<char *>(&ovalue), 4);}; + #define GET_DOUBLE(iss, ovalue) {iss.read(reinterpret_cast<char *>(&ovalue), 8);}; ++#else ++void inline swap_bytes(unsigned char* data, int size) {int i = 0, j = size - 1; while(i < j) {std::swap(data[i], data[j]); ++i, --j;}} ++#define GET_SHORT(iss, ovalue) {iss.read(reinterpret_cast<char *>(&ovalue), 2); swap_bytes(reinterpret_cast<unsigned char *>(&ovalue), 2);}; ++#define GET_INT(iss, ovalue) {iss.read(reinterpret_cast<char *>(&ovalue), 4); swap_bytes(reinterpret_cast<unsigned char *>(&ovalue), 4);}; ++#define GET_FLOAT(iss, ovalue) {iss.read(reinterpret_cast<char *>(&ovalue), 4); swap_bytes(reinterpret_cast<unsigned char *>(&ovalue), 4);}; ++#define GET_DOUBLE(iss, ovalue) {iss.read(reinterpret_cast<char *>(&ovalue), 8); swap_bytes(reinterpret_cast<unsigned char *>(&ovalue), 8);}; ++#endif + + OriginAnyParser::OriginAnyParser(const string& fileName) + : file(fileName.c_str(),ios::binary), diff --git a/user/libao/APKBUILD b/user/libao/APKBUILD index 2321e18fd..425116964 100644 --- a/user/libao/APKBUILD +++ b/user/libao/APKBUILD @@ -1,19 +1,20 @@ # Maintainer: pkgname=libao -pkgver=1.2.0 -pkgrel=2 +pkgver=1.2.2 +pkgrel=0 pkgdesc="Cross-platform audio output library and plugins" url="https://xiph.org/ao/" arch="all" options="!check" # No test suite. license="GPL-2.0+" -subpackages="$pkgname-doc $pkgname-dev" depends="" -makedepends="alsa-lib-dev" -source="https://downloads.xiph.org/releases/ao/$pkgname-$pkgver.tar.gz" +makedepends="alsa-lib-dev autoconf automake pulseaudio-dev" +subpackages="$pkgname-doc $pkgname-dev $pkgname-pulse" +source="$pkgname-$pkgver.tar.gz::https://github.com/xiph/libao/archive/$pkgver.tar.gz" build() { cd "$builddir" + ./autogen.sh ./configure \ --build=$CBUILD \ --host=$CHOST \ @@ -28,4 +29,12 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="9456953826c188d67129ad78366bb86d6243499f2cd340d20d61366f7e40a33f3f8ab601c7f18ce9e24aa22f898093b482b2415b7e428c1486ef7e5ac27b3ee4 libao-1.2.0.tar.gz" +pulse() { + pkgdesc="$pkgdesc (PulseAudio support)" + install_if="$pkgname=$pkgver-r$pkgrel pulseaudio" + mkdir -p "$subpkgdir"/usr/lib/ao/plugins-4 + mv "$pkgdir"/usr/lib/ao/plugins-4/libpulse.so \ + "$subpkgdir"/usr/lib/ao/plugins-4 +} + +sha512sums="d2736d25b60862e7d7469611ce31b1df40a4366ab160e2ff1b46919ae91692d1596c8468e4f016303b306fc3ac1bddc7b727f535a362f403c3fe7c6532e9045a libao-1.2.2.tar.gz" diff --git a/user/libblockdev/APKBUILD b/user/libblockdev/APKBUILD index 05785a223..51200d04b 100644 --- a/user/libblockdev/APKBUILD +++ b/user/libblockdev/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=libblockdev -pkgver=2.19 +pkgver=2.20 pkgrel=0 pkgdesc="Library for manipulating block devices" url="http://storaged.org/libblockdev/" @@ -37,4 +37,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="bc0e9524b95ca7b32478cb2e9195df336b44921825832393189d04611e6cb634aa033485507239add55d126021f103c7528d912be950c58d46e130c09b4d5167 libblockdev-2.19.tar.gz" +sha512sums="7363e05c6854757649ed865f216c71ddc8afd7f1a102a73c0bb4809c4713973462446543d97b696f55f11ea15696e261802567cc545833d16535835c5250ac8b libblockdev-2.20.tar.gz" diff --git a/user/libbsd/0001-Replace-__BEGIN_DECLS-and-__END_DECLS.patch b/user/libbsd/0001-Replace-__BEGIN_DECLS-and-__END_DECLS.patch index e97e30e84..0d4007d09 100644 --- a/user/libbsd/0001-Replace-__BEGIN_DECLS-and-__END_DECLS.patch +++ b/user/libbsd/0001-Replace-__BEGIN_DECLS-and-__END_DECLS.patch @@ -205,7 +205,7 @@ diff --git a/include/bsd/string.h b/include/bsd/string.h index ee2f953..fbf8c54 100644 --- a/include/bsd/string.h +++ b/include/bsd/string.h -@@ -36,13 +36,19 @@ +@@ -36,16 +36,22 @@ #include <sys/cdefs.h> #include <sys/types.h> @@ -219,7 +219,10 @@ index ee2f953..fbf8c54 100644 char *strnstr(const char *str, const char *find, size_t str_len); void strmode(mode_t mode, char *str); + #if !defined(__GLIBC__) || \ + (defined(__GLIBC__) && (!__GLIBC_PREREQ(2, 25) || !defined(_GNU_SOURCE))) void explicit_bzero(void *buf, size_t len); + #endif -__END_DECLS +#ifdef __cplusplus +} diff --git a/user/libbsd/APKBUILD b/user/libbsd/APKBUILD index 0e36db5a5..015d71295 100644 --- a/user/libbsd/APKBUILD +++ b/user/libbsd/APKBUILD @@ -2,8 +2,8 @@ # Contributor: William Pitcock <nenolod@dereferenced.org> # Maintainer: William Pitcock <nenolod@dereferenced.org> pkgname=libbsd -pkgver=0.8.6 -pkgrel=3 +pkgver=0.9.1 +pkgrel=0 pkgdesc="Commonly used BSD functions not implemented by all libcs" url="https://libbsd.freedesktop.org/" arch="all" @@ -15,9 +15,9 @@ subpackages="$pkgname-dev $pkgname-doc" source="https://libbsd.freedesktop.org/releases/$pkgname-$pkgver.tar.xz 0001-Replace-__BEGIN_DECLS-and-__END_DECLS.patch disable-fpurge-test.patch + headers.patch " -builddir="$srcdir/$pkgname-$pkgver" prepare() { default_prepare @@ -48,6 +48,7 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="ece01ced324f840c2cee6321c7dcf97ff123d55ea9f203c1ce35e1b46643dc7b34ef6dc6c8d128252b36848624850b40823411cc96b99a66a401eb1e9d8cea6b libbsd-0.8.6.tar.xz -4ef5d664f04af21da17c5ac9eed6fec4c0c7d06ff3af70e93bfdfdf926c7473954649e315158ec8f90cef93f82524431fa4fbc60374d20007f1234d6afe9edcd 0001-Replace-__BEGIN_DECLS-and-__END_DECLS.patch -34ab57a9b67c0d6035312dff78e6dd0d1c48442c6a1b6e769b6ebb6dccb0dac80ccc2c309724e39c097cdac944bdbd9522582f93f2567da8c6615990e2d0238b disable-fpurge-test.patch" +sha512sums="435822b8f2495a5e2705e5ab5c834a4f0f3a177b3e5c46a7c6162924507ca984e957e94a512b5ebd0067ecb413bac458fade357709ef199e9b75edf0315de91c libbsd-0.9.1.tar.xz +5a3302601e9534ce8493122b20cc53fe320e0d884ca4abf041a8d151175c076e26ac9ef521c65b1654ea2295bd0251b70b0bdc80ed8a03c98777aab8502719ca 0001-Replace-__BEGIN_DECLS-and-__END_DECLS.patch +34ab57a9b67c0d6035312dff78e6dd0d1c48442c6a1b6e769b6ebb6dccb0dac80ccc2c309724e39c097cdac944bdbd9522582f93f2567da8c6615990e2d0238b disable-fpurge-test.patch +594d598bc7f6d34bff080a26f8d726bf779d3827423f242ee7caa9a58fc89c89d80e0677c03e9c640e0074afbdc34636fa8ffa47a99fd9c576845e3039a7ccbd headers.patch" diff --git a/user/libbsd/headers.patch b/user/libbsd/headers.patch new file mode 100644 index 000000000..5b8f26425 --- /dev/null +++ b/user/libbsd/headers.patch @@ -0,0 +1,10 @@ +--- libbsd-0.9.1/src/flopen.c.old 2018-05-21 02:33:33.000000000 +0000 ++++ libbsd-0.9.1/src/flopen.c 2018-09-09 17:43:59.850000000 +0000 +@@ -32,6 +32,7 @@ + #include <sys/stat.h> + + #include <errno.h> ++#include <fcntl.h> + #include <stdarg.h> + #include <unistd.h> + diff --git a/user/libburn/APKBUILD b/user/libburn/APKBUILD new file mode 100644 index 000000000..8d55a80f3 --- /dev/null +++ b/user/libburn/APKBUILD @@ -0,0 +1,36 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=libburn +pkgver=1.4.8 +pkgrel=0 +pkgdesc="Library for CD/DVD burning" +url="https://dev.lovelyhq.com/libburnia/web/wikis/home" +arch="all" +license="(GPL-2.0+ OR BSD-3-Clause) AND GPL-2.0+ AND BSD-3-Clause" +makedepends="" +subpackages="$pkgname-dev $pkgname-doc" +source="http://files.libburnia-project.org/releases/libburn-$pkgver.tar.gz" + +build() { + cd "$builddir" + ./configure \ + --build=$CBUILD \ + --host=$CHOST \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --localstatedir=/var + make +} + +check() { + cd "$builddir" + make check +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install +} + +sha512sums="e02c08078313abb19108bb394741d4bde1c5098c1a200129940744e03078d8350b6ac951bf5523872a343b3f9b7a4954dda60a3336997f975abdee6dbae9b87c libburn-1.4.8.tar.gz" diff --git a/user/libdrm/APKBUILD b/user/libdrm/APKBUILD index d9b707067..f85bdcac5 100644 --- a/user/libdrm/APKBUILD +++ b/user/libdrm/APKBUILD @@ -1,6 +1,6 @@ # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=libdrm -pkgver=2.4.94 +pkgver=2.4.96 pkgrel=0 pkgdesc="Userspace interface to kernel DRM services" url="https://dri.freedesktop.org/" @@ -43,5 +43,5 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="1a1699d6ea70b8759b37f3863e0802a99430b58f02e62632ad451356e2463eaf6faf4b810323f7dcc85ffdcca28f674b32caa5631ebd65b83e5b86bd59a35937 libdrm-2.4.94.tar.bz2 +sha512sums="008cb7658d953b44e11fa3cc6e00dfeb3efb59c7fdadd59f7066101aff138acbbc2f2508e9ebe0528340e39dc7693937755d1641816ddde135c10a13e7d81e3b libdrm-2.4.96.tar.bz2 af52fef51aaa05a4dd17919371cb9d92a77480402730bf53ba223e54df52f3825be05a7f28e6aef8c904db5ee59fe38a6c15bc6aafa7f8d31a719e80399dd51f ioctl.patch" diff --git a/user/libepoxy/APKBUILD b/user/libepoxy/APKBUILD index d8e9170fa..9de8a24e2 100644 --- a/user/libepoxy/APKBUILD +++ b/user/libepoxy/APKBUILD @@ -1,7 +1,7 @@ # Contributor: Valery Kartel <valery.kartel@gmail.com> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=libepoxy -pkgver=1.5.2 +pkgver=1.5.3 pkgrel=0 pkgdesc="Direct Rendering Manager runtime library" url="https://github.com/anholt/libepoxy" @@ -9,8 +9,8 @@ arch="all" options="!check" # Requires X11 and appropriate mesa-dri-* package license="MIT" depends="" -depends_dev="libx11-dev mesa-dev" -makedepends="$depends_dev meson ninja" +depends_dev="libx11-dev" +makedepends="$depends_dev mesa-dev meson ninja" install="" subpackages="$pkgname-dev" source="https://github.com/anholt/libepoxy/releases/download/$pkgver/libepoxy-$pkgver.tar.xz" @@ -37,4 +37,4 @@ package() { DESTDIR="$pkgdir" ninja install } -sha512sums="74eac05280d8877995d07cb28d0c3ef285ad57c0c9a3369c59fc3601f2281f92dc103e78cf5538aca853e2a64d145d967c43f3176274fd046fb27aa86827a521 libepoxy-1.5.2.tar.xz" +sha512sums="746dfe2a0a91319abd3906c75f81f6b895117f39120e0d8897db1daec1b6d2e91e1318f0dfe588c81907727b0a6dd1a7e4a819ee6b3063a23875312570464720 libepoxy-1.5.3.tar.xz" diff --git a/user/libgit2/APKBUILD b/user/libgit2/APKBUILD index 3b9652088..22b593f39 100644 --- a/user/libgit2/APKBUILD +++ b/user/libgit2/APKBUILD @@ -3,7 +3,7 @@ # Contributor: Pierre-Gilas MILLON <pgmillon@gmail.com> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=libgit2 -pkgver=0.27.4 +pkgver=0.27.5 pkgrel=0 pkgdesc="Pure C re-entrant library for custom Git applications" url="https://libgit2.github.com/" @@ -50,4 +50,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="d27db86eb1b9f0d4057f8538ba1985ee76c3ca106e57d417fa9bff79d575f91a07ad28693112b58dc1d61d68116a82e6a145f12276158f2806b6c4964d741f61 libgit2-0.27.4.tar.gz" +sha512sums="318b981456d55f60f8aa1897f1f70274329e48f09769b661eb4bbe76399071eca0fbc7deacb3191db16bc89dba8cc69a64adaf8cbc65e34a65b6e72ca122e21f libgit2-0.27.5.tar.gz" diff --git a/user/libgphoto2/APKBUILD b/user/libgphoto2/APKBUILD index cc3101241..406db96ce 100644 --- a/user/libgphoto2/APKBUILD +++ b/user/libgphoto2/APKBUILD @@ -1,7 +1,7 @@ # Maintainer: pkgname=libgphoto2 -pkgver=2.5.16 -pkgrel=2 +pkgver=2.5.19 +pkgrel=0 pkgdesc="Digital camera library" url="http://www.gphoto.org" arch="all" @@ -46,4 +46,4 @@ package() { "$pkgdir/lib/udev/rules.d/54-gphoto.rules" } -sha512sums="7863192c2959ffc8d771eca294adc54090192e3207cf8d3a9bf143e50034c3f1248e7fe41cad75f758ab2ad09c9258d50967b921adf3223d7c74370faa110a9e libgphoto2-2.5.16.tar.bz2" +sha512sums="0c26613b5e6041955198760f40cf21c302eaf8d3776642cc23e527da576cae01c7dd6eccd091b4c3dd7d592fa5114378858f42fc4ec0cb8bb82791feb4c97e2c libgphoto2-2.5.19.tar.bz2" diff --git a/user/libgsf/APKBUILD b/user/libgsf/APKBUILD index 7d79b4ac6..8fc1adab3 100644 --- a/user/libgsf/APKBUILD +++ b/user/libgsf/APKBUILD @@ -1,6 +1,6 @@ # Maintainer: pkgname=libgsf -pkgver=1.14.43 +pkgver=1.14.44 pkgrel=0 pkgdesc="Library for manipulating structured files" url="https://www.gnome.org/" @@ -45,4 +45,4 @@ package() { rm -f "$pkgdir"/usr/share/man/man1/gsf-office-thumbnailer.1 } -sha512sums="bb487de9358c057fc73f3414c9515726315be9b6d78456253daaca1cbd58281de8766e0b72914532d63fab04d3ae2cf90f711f436c7b4f70620d77e8a7802ac9 libgsf-1.14.43.tar.xz" +sha512sums="17be4898e800d653d97af1afc780b14eb596ea03443d7dd8f2687152ca1c9cbdfe5fad0686742e2c9e2dac4a40f65fa260b7b5dc3b2d79a4738e552ad7e6310f libgsf-1.14.44.tar.xz" diff --git a/user/libical/APKBUILD b/user/libical/APKBUILD index 772b748cb..a866743c7 100644 --- a/user/libical/APKBUILD +++ b/user/libical/APKBUILD @@ -1,6 +1,6 @@ # Maintainer: pkgname=libical -pkgver=3.0.3 +pkgver=3.0.4 pkgrel=0 pkgdesc="Reference implementation of the iCalendar format" url="https://libical.github.io/libical/" @@ -31,4 +31,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="ed8e7917e37abbe426a06b4ae049a365e66542b1258ba22ebacbe842bda883d0fe591e65574fd954da531d6414a7b13e84fa28a20e7b08836679107f615df27a libical-3.0.3.tar.gz" +sha512sums="491a1dd0c33bb823a79165eb6e4f86ef048a44642adfe44f8e69c83598b458ddf8e4365b11afc37d0b21bc1367e0a99096fc7887aae29e7ff4e3bd1cdee64dd9 libical-3.0.4.tar.gz" diff --git a/user/libinput/APKBUILD b/user/libinput/APKBUILD index 284bfeae2..1220bb1cd 100644 --- a/user/libinput/APKBUILD +++ b/user/libinput/APKBUILD @@ -1,22 +1,22 @@ # Contributor: Sören Tempel <soeren+alpine@soeren-tempel.net> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=libinput -pkgver=1.11.1 +pkgver=1.12.1 pkgrel=0 pkgdesc="Library for handling input devices" url="https://www.freedesktop.org/wiki/Software/libinput/" arch="all" license="MIT" -makedepends="doxygen eudev-dev graphviz libevdev-dev libwacom-dev meson - mtdev-dev" +makedepends="eudev-dev libevdev-dev libwacom-dev meson mtdev-dev" checkdepends="check-dev valgrind" subpackages="$pkgname-dev $pkgname-doc $pkgname-libs" source="https://freedesktop.org/software/$pkgname/$pkgname-$pkgver.tar.xz" build() { cd "$builddir" + # Docs disabled: requires sphinx now meson --prefix=/usr \ - -Ddocumentation=true \ + -Ddocumentation=false \ -Dlibwacom=true \ -Ddebug-gui=false \ -Dtests=true builddir/ @@ -34,4 +34,4 @@ package() { install -Dm644 COPYING "$pkgdir"/usr/share/licenses/$pkgname/COPYING } -sha512sums="3dd1a318c89d66f5a66016c6dbfa5277b61a8cb5337d99f85b1eeef40ed894bdc04fd4588a97383988daea0f034df5a72bff318325320a01b857db9deb94a2b0 libinput-1.11.1.tar.xz" +sha512sums="de1714526ee1244e3086729efa5b72724b2b989fa8d04418e633d1ef5a8ea777ae3cd4b8c5b015ca0da2b8cf5b07111bff2283c7d6068abcdfa81c3f71b81d68 libinput-1.12.1.tar.xz" diff --git a/user/libisofs/APKBUILD b/user/libisofs/APKBUILD new file mode 100644 index 000000000..ee07f002f --- /dev/null +++ b/user/libisofs/APKBUILD @@ -0,0 +1,36 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=libisofs +pkgver=1.4.8 +pkgrel=0 +pkgdesc="Library for creating and managing iso9660-based filesystems" +url="https://dev.lovelyhq.com/libburnia/web/wikis/home" +arch="all" +license="GPL-2.0+ AND Unicode-TOU" +makedepends="zlib-dev" +subpackages="$pkgname-dev" +source="http://files.libburnia-project.org/releases/libisofs-$pkgver.tar.gz" + +build() { + cd "$builddir" + ./configure \ + --build=$CBUILD \ + --host=$CHOST \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --localstatedir=/var + make +} + +check() { + cd "$builddir" + make check +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install +} + +sha512sums="0c6f505a951a1b7fce63bf63c715e5acb3158c15be2660627d2380771f025ec88bd67a4c2b8c86ef9dbb649a23cb26b826e875e7c87ff46c8bcd13d831fe8bcc libisofs-1.4.8.tar.gz" diff --git a/user/libixion/32bit.patch b/user/libixion/32bit.patch new file mode 100644 index 000000000..13d25ac4e --- /dev/null +++ b/user/libixion/32bit.patch @@ -0,0 +1,57 @@ +From 869492c9f3f61aaab0d1ecdda147ea9adbdb04d5 Mon Sep 17 00:00:00 2001 +From: Kohei Yoshida <kohei.yoshida@gmail.com> +Date: Tue, 28 Aug 2018 22:58:49 -0400 +Subject: [PATCH] Fix build issues on 32-bit platforms. + +The string ID's are stored in mdds's unsigned long block, but we +have changed the underlying type of string ID's from unsigned long +to uint64_t. Because of this, on 32-bit systems it caused a type +mismatch. On 64-bit systems this was fine since unsigned long was +the underlying type for uint64_t... +--- + src/libixion/model_context.cpp | 8 ++++---- + 1 file changed, 4 insertions(+), 4 deletions(-) + +diff --git a/src/libixion/model_context.cpp b/src/libixion/model_context.cpp +index 0bcf940..b44713f 100644 +--- a/src/libixion/model_context.cpp ++++ b/src/libixion/model_context.cpp +@@ -541,7 +541,7 @@ void model_context_impl::set_string_cell(const abs_address_t& addr, const char* + string_id_t str_id = add_string(p, n); + column_store_t& col_store = sheet.at(addr.column); + column_store_t::iterator& pos_hint = sheet.get_pos_hint(addr.column); +- pos_hint = col_store.set(pos_hint, addr.row, str_id); ++ pos_hint = col_store.set(pos_hint, addr.row, static_cast<unsigned long>(str_id)); + } + + void model_context_impl::set_string_cell(const abs_address_t& addr, string_id_t identifier) +@@ -549,7 +549,7 @@ void model_context_impl::set_string_cell(const abs_address_t& addr, string_id_t + worksheet& sheet = m_sheets.at(addr.sheet); + column_store_t& col_store = sheet.at(addr.column); + column_store_t::iterator& pos_hint = sheet.get_pos_hint(addr.column); +- pos_hint = col_store.set(pos_hint, addr.row, identifier); ++ pos_hint = col_store.set(pos_hint, addr.row, static_cast<unsigned long>(identifier)); + } + + void model_context_impl::set_formula_cell(const abs_address_t& addr, formula_tokens_t tokens) +@@ -800,7 +800,7 @@ string_id_t model_context_impl::get_string_identifier(const abs_address_t& addr) + switch (col_store.get_type(addr.row)) + { + case ixion::element_type_string: +- return col_store.get<string_id_t>(addr.row); ++ return col_store.get<unsigned long>(addr.row); + default: + ; + } +@@ -813,7 +813,7 @@ string_id_t model_context_impl::get_string_identifier_nowait(const abs_address_t + switch (col_store.get_type(addr.row)) + { + case ixion::element_type_string: +- return col_store.get<string_id_t>(addr.row); ++ return col_store.get<unsigned long>(addr.row); + case ixion::element_type_formula: + { + const formula_cell* p = col_store.get<formula_cell*>(addr.row); +-- +2.18.0 + diff --git a/user/libixion/APKBUILD b/user/libixion/APKBUILD index 659969780..22de8c82a 100644 --- a/user/libixion/APKBUILD +++ b/user/libixion/APKBUILD @@ -8,10 +8,12 @@ url="https://gitlab.com/ixion/ixion" arch="all" license="MPL-2.0" depends="" -depends_dev="mdds" +depends_dev="mdds~1.3" makedepends="$depends_dev boost-dev" subpackages="$pkgname-dev" -source="http://kohei.us/files/ixion/src/$pkgname-$pkgver.tar.xz" +source="http://kohei.us/files/ixion/src/$pkgname-$pkgver.tar.xz + 32bit.patch + " build() { cd "$builddir" @@ -43,4 +45,5 @@ dev() { mv "$pkgdir"/usr/bin "$subpkgdir"/usr } -sha512sums="15784e947164d106e677c59ece53b3cd401d4f9433cc5331a35d3be8332ae4f20a469ca73b30b253433c86da4afde886dfb4ac23e46ed46376a7349e0276c3a0 libixion-0.13.0.tar.xz" +sha512sums="15784e947164d106e677c59ece53b3cd401d4f9433cc5331a35d3be8332ae4f20a469ca73b30b253433c86da4afde886dfb4ac23e46ed46376a7349e0276c3a0 libixion-0.13.0.tar.xz +a6d26bfc8721f8f65a1eafa527e5b29166c9e0c45de39493bcaae17896ad6e145b78e123ea01903a96b0fb4a5b7def3dc2d256c3e301a0676e07c840603570ac 32bit.patch" diff --git a/user/libkdegames/APKBUILD b/user/libkdegames/APKBUILD index ad5143e17..5966f37dc 100644 --- a/user/libkdegames/APKBUILD +++ b/user/libkdegames/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=libkdegames -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="Library for common routines shared between KDE games" url="https://www.kde.org/applications/games/" @@ -52,4 +52,4 @@ carddecks() { mv "$pkgdir"/usr/share/carddecks "$subpkgdir"/usr/share/ } -sha512sums="09769549944b42f8c0381ba691b787b9ab00575343047ee1763d8c1a5347e62716d0cada05b0688aee7f160846a6d16aa7d68978d99bdf65c5dc3a21ce5619e1 libkdegames-18.08.1.tar.xz" +sha512sums="97657fa70aecf0345f6ccba70e1ed2cb652fc220c25d1f89e039f83ab695b0d7576271391197c573f5c53f9e262a7d1ccc163bb67827e5390e9b3aa170ee5e4f libkdegames-18.08.2.tar.xz" diff --git a/user/libkeduvocdocument/APKBUILD b/user/libkeduvocdocument/APKBUILD index 7e50fe8b9..ac68e1764 100644 --- a/user/libkeduvocdocument/APKBUILD +++ b/user/libkeduvocdocument/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=libkeduvocdocument -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="Library for manipulating KVTML files" url="https://www.kde.org/" @@ -40,4 +40,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="fb71a7c76426a959f25c5bb2d01c8d843bcd31c0b28f4acf37fe860a2dff7a9ee5dfc67e9a51715f137ee5b7c284f885cae0f7941888ef0c75607b03ad90d11c libkeduvocdocument-18.08.1.tar.xz" +sha512sums="c31763aa8f75693be75ae5fb07fa398807dbb9fc940554f01b2d4c11601317e27fdf3e170d7ff439602a6b4bb020bb9cf1a333191e27cb435d4bbc6e4ab80414 libkeduvocdocument-18.08.2.tar.xz" diff --git a/user/libkipi/APKBUILD b/user/libkipi/APKBUILD index d96026984..b68551aad 100644 --- a/user/libkipi/APKBUILD +++ b/user/libkipi/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=libkipi -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="KDE Image Plugin Interface library" url="https://www.digikam.org/" @@ -36,4 +36,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="d209b81bfe29d41816347d8292fabd572579ad4ba916127ea1fa1a9d247f08347dc6f2f1c91dbe5ba4e8f7e3305b411246a14c8c776e16af9b36fa57d8cd6641 libkipi-18.08.1.tar.xz" +sha512sums="435dd7ac92121406ebabc9268dedbb5bd452ad09e60ae7c7877e88a01205da5089414db1104159792177b40e0ad024a9bbb1ee718751a5114154de3c2f31c412 libkipi-18.08.2.tar.xz" diff --git a/user/libkleo/APKBUILD b/user/libkleo/APKBUILD index f73aa01c5..8220dfff4 100644 --- a/user/libkleo/APKBUILD +++ b/user/libkleo/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=libkleo -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="KDE encryption library" url="https://www.kde.org/" @@ -41,4 +41,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="3df1d5236d31636de4811dea600b660d1920613a56c0ec7821fdf3451737d896ba129746f5a838cfb96d106dcd68b3170efdf2616f8e56b562e59cd7ec7ce1ed libkleo-18.08.1.tar.xz" +sha512sums="e1979872da850b359bf02b309e8660452c6c99409b2474589beec8789ad34870dd30b71c806da7f410d1ee9b9671a9c75e6259c6440a32bbf20a70914cf974b0 libkleo-18.08.2.tar.xz" diff --git a/user/libkmahjongg/APKBUILD b/user/libkmahjongg/APKBUILD index 2fcb476ae..0b7c93cf0 100644 --- a/user/libkmahjongg/APKBUILD +++ b/user/libkmahjongg/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=libkmahjongg -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="Library with Mah Jongg logic" url="https://www.kde.org/" @@ -40,4 +40,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="bfcae260ec5baef8ff8f881331442448d6e40619321c0034f9d638df91283ea50bd57a1ac90e118b99ab662d4d08c29b9493946119b9f378b1fa6fb823dcdc70 libkmahjongg-18.08.1.tar.xz" +sha512sums="2b1ae525169ab01b99d6b1d3502a66084b0110431485aa0fa1a693e77fa8e55cec1c78fe4b2beac2be314698f3f50f2d7de3f1471115f1caf58f4ace968ed57f libkmahjongg-18.08.2.tar.xz" diff --git a/user/libksane/APKBUILD b/user/libksane/APKBUILD index 1fe14d367..962eacde5 100644 --- a/user/libksane/APKBUILD +++ b/user/libksane/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=libksane -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="KDE scanning library" url="https://www.kde.org" @@ -40,4 +40,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="fdd65c8857a31f2d805f12308b6ccb0027c5960b9af5f80553740f6ebe86e84278f2d078d651003c1f95835893794feabb76ce13c516f03783e65eacc82be48d libksane-18.08.1.tar.xz" +sha512sums="526f97353d281a61eb1fc38c34f95c4a4e3e9d63e269a5c63d553ce8597df5168eefc05d6856439ee409318f3e7c91bccef6004c347635446dd045229929eb0e libksane-18.08.2.tar.xz" diff --git a/user/libmpd/APKBUILD b/user/libmpd/APKBUILD new file mode 100644 index 000000000..c3ae2be64 --- /dev/null +++ b/user/libmpd/APKBUILD @@ -0,0 +1,42 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=libmpd +pkgver=11.8.17 +pkgrel=0 +pkgdesc="GObject-based client library for the music player daemon" +url="https://gmpclient.org/" +arch="all" +license="GPL-2.0+ AND BSD-3-Clause" +makedepends="glib-dev" +subpackages="$pkgname-dev" +source="http://download.sarine.nl/Programs/gmpc/11.8/libmpd-$pkgver.tar.gz" + +prepare() { + cd "$builddir" + default_prepare + update_config_sub +} + +build() { + cd "$builddir" + ./configure \ + --build=$CBUILD \ + --host=$CHOST \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --localstatedir=/var + make +} + +check() { + cd "$builddir" + make check +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install +} + +sha512sums="ffe2880834a4a39745a5327d628781e16eeb8cd1ec17402dda46ad96ff402bc0d8b4312ba058a39242ad9bb8c3a0bb6feb2c5ea2a30ef9be97652fdb5c02572d libmpd-11.8.17.tar.gz" diff --git a/user/libopenraw/APKBUILD b/user/libopenraw/APKBUILD new file mode 100644 index 000000000..e06f1637d --- /dev/null +++ b/user/libopenraw/APKBUILD @@ -0,0 +1,42 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=libopenraw +pkgver=0.1.3 +pkgrel=0 +pkgdesc="Library for decoding RAW camera image formats" +url="https://libopenraw.freedesktop.org/wiki/" +arch="all" +license="LGPL-2.1+ AND LGPL-3.0+ AND GPL-2.0+" +makedepends="boost-dev libjpeg-turbo-dev libxml2-dev glib-dev gdk-pixbuf-dev" +subpackages="$pkgname-dev" +source="https://libopenraw.freedesktop.org/download/libopenraw-$pkgver.tar.bz2" +sha512sums="c56d84610f0cf5da970c4c0c791fccf2f7e9f7c7dacf2aeac0b2702ce9a0cd3aaa2f6db0794b0466e1dd8316771973db1e64d013f635c1166b7ff2eebdcbf029 libopenraw-0.1.3.tar.bz2" + +prepare() { + cd "$builddir" + default_prepare + update_config_sub +} + +build() { + cd "$builddir" + ./configure \ + --build=$CBUILD \ + --host=$CHOST \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --localstatedir=/var + make +} + +check() { + cd "$builddir" + make check +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install +} + diff --git a/user/liborcus/APKBUILD b/user/liborcus/APKBUILD index cd6494fef..a991df5eb 100644 --- a/user/liborcus/APKBUILD +++ b/user/liborcus/APKBUILD @@ -7,7 +7,7 @@ pkgdesc="Library for processing spreadsheet documents" url="https://gitlab.com/orcus/orcus" arch="all" license="MPL-2.0 AND MIT" -depends_dev="boost-dev mdds libixion-dev" +depends_dev="boost-dev mdds~1.3 libixion-dev~0.13" makedepends="$depends_dev zlib-dev" subpackages="$pkgname-dev" source="http://kohei.us/files/orcus/src/liborcus-$pkgver.tar.xz" diff --git a/user/libpfm/APKBUILD b/user/libpfm/APKBUILD new file mode 100644 index 000000000..c30624312 --- /dev/null +++ b/user/libpfm/APKBUILD @@ -0,0 +1,26 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: A. Wilcox <awilfox@adelielinux.org> +pkgname=libpfm +pkgver=4.10.1 +pkgrel=0 +pkgdesc="Performance monitoring library" +url="http://perfmon2.sourceforge.net/" +arch="all" +options="!check" # No test suite. +license="MIT" +depends="" +makedepends="" +subpackages="$pkgname-dev $pkgname-doc" +source="https://downloads.sourceforge.net/perfmon2/libpfm4/libpfm-$pkgver.tar.gz" + +build() { + cd "$builddir" + CFLAGS="$CFLAGS -Wno-error=cpp" make +} + +package() { + cd "$builddir" + make PREFIX="/usr" DESTDIR="$pkgdir" install +} + +sha512sums="33d99824216b4d83784e0db9f1aae3b39f84c2ba42dee64dde0b3c43cc5ee3a18c206d9044e75bf10867768add7cb9967c6318f7aa196f178f334271fa05e1aa libpfm-4.10.1.tar.gz" diff --git a/user/libpng/APKBUILD b/user/libpng/APKBUILD index 1ca9f0ec1..5b1a3352d 100644 --- a/user/libpng/APKBUILD +++ b/user/libpng/APKBUILD @@ -1,8 +1,8 @@ # Contributor: Carlo Landmeter <clandmeter@gmail.com> # Maintainer: pkgname=libpng -pkgver=1.6.34 -pkgrel=2 +pkgver=1.6.35 +pkgrel=0 pkgdesc="Portable Network Graphics library" url="http://www.libpng.org/" arch="all" @@ -11,8 +11,8 @@ depends="" depends_dev="" makedepends="autoconf automake libtool zlib-dev" subpackages="$pkgname-doc $pkgname-dev $pkgname-utils" -source="http://downloads.sourceforge.net/$pkgname/$pkgname-$pkgver.tar.gz - http://downloads.sourceforge.net/sourceforge/$pkgname-apng/$pkgname-$pkgver-apng.patch.gz +source="https://downloads.sourceforge.net/$pkgname/$pkgname-$pkgver.tar.gz + https://downloads.sourceforge.net/sourceforge/$pkgname-apng/$pkgname-$pkgver-apng.patch.gz libpng-fix-arm-neon.patch " @@ -55,6 +55,6 @@ utils() { mv "$pkgdir"/usr/bin "$subpkgdir"/usr } -sha512sums="7ee14f3fcf68802b56ac006ae0188735f25adb0402422dc97f560e6d00ba0adac50b1014dbab83457cd33b360901771c962e6b7c0c6e3948cda13eb1188de825 libpng-1.6.34.tar.gz -0777b8e55aeee207ee92479f2258ef1f60f16d7951fdbc6d89a80ef533b86dadecd1ef659d6fe7602d8ea3a8e711a096b0f77ee09b993799b73dfffddfe5dd3c libpng-1.6.34-apng.patch.gz +sha512sums="e4312a4b33e02ad975864d8f1b0c29427625257983962ddd043f258643c18ddcb15a118405282f04d1310817e454a95111e2d4569de494d01d649c7171fd3127 libpng-1.6.35.tar.gz +fe02147399a3cf3bf86d12589f876cf685fd5edf140d0e8b92f58fc6f113f8b2fce9ab9c19d5b3c8bff381d7e657faa6a2c6b1b6640472c2f1b59dedc598ef52 libpng-1.6.35-apng.patch.gz e3fae918f14bc34e7c126892f69527c6e1b4d72593835ece839d9a28cff55a886b2030f877cf9e29b2c97abf2e47bbb5ba54584828edd2a841c2556f330b9c7e libpng-fix-arm-neon.patch" diff --git a/user/libpsl/APKBUILD b/user/libpsl/APKBUILD new file mode 100644 index 000000000..9f4e97f9e --- /dev/null +++ b/user/libpsl/APKBUILD @@ -0,0 +1,38 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=libpsl +pkgver=0.20.2 +pkgrel=0 +pkgdesc="C library for examining the Public Suffix List" +url="https://rockdaboot.github.io/libpsl" +arch="all" +license="MIT AND BSD-3-Clause" +makedepends="python3 libidn2-dev libunistring-dev" +subpackages="$pkgname-dev $pkgname-doc" +source="https://github.com/rockdaboot/libpsl/releases/download/libpsl-$pkgver/libpsl-$pkgver.tar.gz + use-python3.patch" + +build() { + cd "$builddir" + ./configure \ + --build=$CBUILD \ + --host=$CHOST \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --localstatedir=/var + make +} + +check() { + cd "$builddir" + make check +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install +} + +sha512sums="fa9f6f7f0447d9fe00f5dfca5262c56ff26217eea44d0f7fc1e5d982224c41874e753f0aa06dd9e5d7d03d4f04e3dacd4f36034cc8dd0fc6e2c28b49a23e62fe libpsl-0.20.2.tar.gz +00c9c09bac334efcd7ae6240b740ac88453425cc380cc23b443a0579f4ccabf86eafdb90f5f05027cc55ee20f6c1d4388939792a55cd95705d5e6919d40b30e5 use-python3.patch" diff --git a/user/libpsl/use-python3.patch b/user/libpsl/use-python3.patch new file mode 100644 index 000000000..5f9cb8bf5 --- /dev/null +++ b/user/libpsl/use-python3.patch @@ -0,0 +1,9 @@ +diff -Nurd libpsl-0.20.2/src/psl-make-dafsa libpsl-0.20.2.new/src/psl-make-dafsa +--- libpsl-0.20.2/src/psl-make-dafsa 2018-04-19 02:36:59.000000000 -0500 ++++ libpsl-0.20.2.new/src/psl-make-dafsa 2018-09-03 11:29:35.036414479 -0500 +@@ -1,4 +1,4 @@ +-#!/usr/bin/env python ++#!/usr/bin/env python3 + # Copyright 2014 The Chromium Authors. All rights reserved. + # Use of this source code is governed by a BSD-style license that can be + # found in the LICENSE.chromium file. diff --git a/user/libreoffice/APKBUILD b/user/libreoffice/APKBUILD index fd36400dd..013787576 100644 --- a/user/libreoffice/APKBUILD +++ b/user/libreoffice/APKBUILD @@ -30,7 +30,7 @@ pkgname=libreoffice pkgver=6.0.6.2 -pkgrel=0 +pkgrel=1 case "$pkgver" in *.*.*.*) _ver="${pkgver%.*}";; *.*.*) _ver="$pkgver";; @@ -49,26 +49,29 @@ license="MPL-2.0 AND Apache-2.0 AND MIT AND X11 AND (MPL-1.1 OR GPL-2.0+ OR LGPL depends="$pkgname-base $pkgname-calc $pkgname-common $pkgname-draw $pkgname-impress $pkgname-math $pkgname-connector-postgres $pkgname-writer" # 1. Base dependencies -# 2. GUIs -# 3. File formats +# 2. GUIs - gen +# 3. GUIs - gtk+2.0 +# 4. File formats makedepends="apr-dev bash bison boost-dev cairo-dev clucene-dev cmd:which coreutils cppunit-dev cups-dev dbus-glib-dev findutils flex fontconfig-dev freetype-dev gettext-tiny-dev glm gperf gpgme-dev gst-plugins-base-dev gstreamer-dev harfbuzz-dev hunspell-dev hyphen-dev icu icu-dev lcms2-dev libcmis-dev libexttextcat-dev - libjpeg-turbo-dev libpng-dev libxml2-utils libxslt-dev mdds mythes-dev - neon-dev nss-dev openldap-dev openssl-dev paxmark perl poppler-dev - postgresql-dev python3-dev redland-dev sane-dev sed ucpp + libjpeg-turbo-dev libpng-dev libxml2-utils libxslt-dev mdds~1.3 + mythes-dev neon-dev nss-dev openldap-dev openssl-dev paxmark perl + poppler-dev postgresql-dev python3-dev redland-dev sane-dev sed ucpp unixodbc-dev util-linux xmlsec-dev zip - gtk+3.0-dev libepoxy-dev libice-dev libsm-dev libxext-dev - libxinerama-dev libxrandr-dev libxrender-dev + libepoxy-dev libxinerama-dev libxrandr-dev libxrender-dev libxext-dev + + gtk+2.0-dev gdk-pixbuf-dev glib-dev libabw-dev libcdr-dev libe-book-dev libepubgen-dev libetonyek-dev - libfreehand-dev libmspub-dev libmwaw-dev libodfgen-dev liborcus-dev + libfreehand-dev libmspub-dev libmwaw-dev libodfgen-dev liborcus-dev~0.13 libpagemaker-dev libqxp-dev libstaroffice-dev libvisio-dev libwpd-dev libwpg-dev libwps-dev libzmf-dev " + # -common also depends on these fonts _fonts="ttf-liberation ttf-dejavu ttf-carlito" checkdepends="$_fonts" @@ -77,7 +80,7 @@ checkdepends="$_fonts" # -doc comes first since it redirects manpages from the other subpackages # -lang-* comes before -common since it redirects miscellaneous # language-specific files from -common -subpackages="$pkgname-doc $pkgname-gtk3 $pkgname-base +subpackages="$pkgname-doc $pkgname-base $pkgname-gtk2 $pkgname-calc $pkgname-draw $pkgname-impress $pkgname-math $pkgname-connector-postgres $pkgname-writer" source="https://download.documentfoundation.org/$pkgname/src/$_ver/$pkgname-$pkgver.tar.xz @@ -89,6 +92,7 @@ source="https://download.documentfoundation.org/$pkgname/src/$_ver/$pkgname-$pkg fix-includes.patch gettext-tiny.patch disable-crc-test.patch + disable-outdated-font-test.patch " ldpath="/usr/lib/$pkgname/program" @@ -275,8 +279,8 @@ build() { --disable-firebird-sdbc \ --disable-coinmp \ --disable-lpsolve \ - --enable-gtk3 \ - --disable-gtk \ + --disable-gtk3 \ + --enable-gtk \ --disable-qt5 \ --disable-odk \ --disable-avahi \ @@ -400,7 +404,7 @@ _split_lang() { common() { pkgdesc="LibreOffice - common files" - depends="$pkgname-lang-en_us $pkgname-gtk3 $_fonts" + depends="$pkgname-lang-en_us $_fonts" _split common @@ -410,9 +414,6 @@ common() { mkdir -p "$subpkgdir/usr/share/appdata" mv "$pkgdir"/usr/share/appdata/*.xml "$subpkgdir/usr/share/appdata" - mkdir -p "$subpkgdir/usr/lib/libreoffice/share/libreofficekit" - mv "$pkgdir"/usr/lib/libreoffice/share/libreofficekit/*.png \ - "$subpkgdir/usr/lib/libreoffice/share/libreofficekit" # At this point there should only be empty directories left in # the "libreoffice" metapackage @@ -423,9 +424,10 @@ common() { fi } -gtk3() { - pkgdesc="LibreOffice - GTK+3.0 GUI" +gtk2() { + pkgdesc="LibreOffice - GTK+2.0 GUI" depends="libreoffice-common" + install_if="$pkgname-common=$pkgver-r$pkgrel gtk+2.0" _split gnome } @@ -479,4 +481,5 @@ fcc2ffeefde50abb80e539f7395efec6e022462b8b8938c2077df6fb3be217808cc2b96eb51539d5 4aa595588226ac2060ae78f4f857db1b148735429a47389f75313df61cabf0819ad2add15c09cae5c5ebbce64852589ca89932c72281ba662ab53dddec4e1336 fix-execinfo.patch ae36500897db9d758e95da1791ef2577d59b0e0865baba316b4a1f1f48ce9fd5e52fc3f14fa45aeeab73c5b93f57e89f9a42c996bdb3c85eb3beb2634543d85e fix-includes.patch c50272ec2cf0471e629bf817d23e5c51ff59e94961fab1ee107f43352409353a37f2988c1ff75f423c4c5aedb1e38b432849619700e25124a33c99a589d7a80b gettext-tiny.patch -4ce3bacada3ab99dc09c6d29529bfc5e70eb287bcb61bc6e9a4ba4334cf77624121191d240f2a8f31b63e7510886904ce7842425752252e174478e0034988055 disable-crc-test.patch" +4ce3bacada3ab99dc09c6d29529bfc5e70eb287bcb61bc6e9a4ba4334cf77624121191d240f2a8f31b63e7510886904ce7842425752252e174478e0034988055 disable-crc-test.patch +887680966f8e8754d551ca7e4acc3bcae57c4fb835c49240fde05f65eb4282b8ad03deda3944b50e73b0da97ca8b28e7b1f1861907e6dbd012f5646e6d55efb4 disable-outdated-font-test.patch" diff --git a/user/libreoffice/disable-outdated-font-test.patch b/user/libreoffice/disable-outdated-font-test.patch new file mode 100644 index 000000000..2278fb587 --- /dev/null +++ b/user/libreoffice/disable-outdated-font-test.patch @@ -0,0 +1,22 @@ +https://www.mail-archive.com/libreoffice@lists.freedesktop.org/msg217102.html + +--- libreoffice-6.0.6.2/editeng/qa/unit/core-test.cxx 2018-07-27 13:15:59.000000000 +0000 ++++ libreoffice-6.0.6.2/editeng/qa/unit/core-test.cxx 2018-09-27 03:45:48.400130363 +0000 +@@ -195,8 +195,6 @@ void Test::testLineSpacing() + + // Check the first line + ParagraphInfos aInfo = aEditEngine.GetParagraphInfos(0); +- CPPUNIT_ASSERT_EQUAL((sal_uInt16)122, aInfo.nFirstLineMaxAscent); +- CPPUNIT_ASSERT_EQUAL((sal_uInt16)153, (sal_uInt16)aEditEngine.GetLineHeight(0)); + + // Prepare second case - 150% + std::unique_ptr<SfxItemSet> pSet2(new SfxItemSet(aEditEngine.GetEmptyItemSet())); +@@ -218,8 +216,6 @@ void Test::testLineSpacing() + + // Check the first line + ParagraphInfos aInfo2 = aEditEngine.GetParagraphInfos(0); +- CPPUNIT_ASSERT_EQUAL(sal_uInt16(337), aInfo2.nFirstLineMaxAscent); +- CPPUNIT_ASSERT_EQUAL(sal_uInt16(382), static_cast<sal_uInt16>(aEditEngine.GetLineHeight(0))); + } + + void Test::testConstruction() diff --git a/user/libsm/APKBUILD b/user/libsm/APKBUILD index 0f5a773b0..5ff18a439 100644 --- a/user/libsm/APKBUILD +++ b/user/libsm/APKBUILD @@ -1,12 +1,12 @@ # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=libsm -pkgver=1.2.2 -pkgrel=2 +pkgver=1.2.3 +pkgrel=0 pkgdesc="X11 session management library" url="https://www.X.Org/" arch="all" license="MIT AND X11" -depends= +depends="" makedepends="libice-dev util-linux-dev util-macros xmlto xorgproto-dev xtrans" checkdepends="check-dev" subpackages="$pkgname-dev $pkgname-doc" @@ -38,4 +38,4 @@ package() { install -Dm644 COPYING "$pkgdir"/usr/share/licenses/$pkgname/COPYING } -sha512sums="dfb91dcc7200fce8d0a62953ae4b81fcb00d525674bbcc6dfcaa23ecb35e1213ceb07cc51f590072dce2107909903160d9f3636a0434fe2a605b1e9a9bd0a6ca libSM-1.2.2.tar.bz2" +sha512sums="74c42e27029db78475e62025b4711dbac5e22d2f8e8a24be98a1c31b03c0fc4afe859928f851800ea0b76854f12147900dc4f27bbfd3d8ea45daaaf24b70a903 libSM-1.2.3.tar.bz2" diff --git a/user/libsoup/APKBUILD b/user/libsoup/APKBUILD new file mode 100644 index 000000000..bc3c76754 --- /dev/null +++ b/user/libsoup/APKBUILD @@ -0,0 +1,38 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=libsoup +pkgver=2.64.1 +pkgrel=0 +pkgdesc="GObject-based HTTP library" +url="https://wiki.gnome.org/Projects/libsoup" +arch="all" +options="!check" # test suite requires poorly-configured apache-httpd +license="LGPL-2.0+ AND LGPL-2.1+" +makedepends="glib-dev libxml2-dev sqlite-dev libpsl-dev intltool vala-dev + gobject-introspection-dev glib-networking" +subpackages="$pkgname-dev $pkgname-doc" +source="https://download.gnome.org/sources/libsoup/2.64/libsoup-$pkgver.tar.xz" + +build() { + cd "$builddir" + ./configure \ + --build=$CBUILD \ + --host=$CHOST \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --localstatedir=/var + make +} + +check() { + cd "$builddir" + make check +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install +} + +sha512sums="13d16457a443294020621df34205c570d25a6ff048ab68633cc504d70a8a1281a38dddb54110fd35a059bd69aebc3fd49b5ab0fc42abf4f4a19746a25050119d libsoup-2.64.1.tar.xz" diff --git a/user/libtap/APKBUILD b/user/libtap/APKBUILD new file mode 100644 index 000000000..0c47e0468 --- /dev/null +++ b/user/libtap/APKBUILD @@ -0,0 +1,43 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: A. Wilcox <awilfox@adelielinux.org> +pkgname=libtap +pkgver=1.12.0 +pkgrel=0 +pkgdesc="C library implementing the Test Anything Protocol (TAP)" +url="https://www.shlomifish.org/open-source/projects/libtap/" +arch="all" +license="BSD-3-Clause" +depends="" +depends_dev="" +makedepends="cmake perl" +subpackages="$pkgname-dev $pkgname-doc" +source="http://web-cpan.shlomifish.org/downloads/libtap-$pkgver.tar.bz2" +builddir="$srcdir/libtap-$pkgver" + +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="510f85a5b10525cf8b67a0bcc67213e43a9e752def5293fecbc97f7058d24256a85cd8ce8c0b408186ca676f3ca700ddbeea4c8c7558352665956b4233258d31 libtap-1.12.0.tar.bz2" diff --git a/user/libtirpc/APKBUILD b/user/libtirpc/APKBUILD index 170e00fae..64124563a 100644 --- a/user/libtirpc/APKBUILD +++ b/user/libtirpc/APKBUILD @@ -1,7 +1,7 @@ # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=libtirpc pkgver=1.1.4 -pkgrel=0 +pkgrel=1 pkgdesc="Transport Independent RPC library (SunRPC replacement)" url="http://libtirpc.sourceforge.net/" arch="all" @@ -11,7 +11,8 @@ depends="" depends_dev="bsd-compat-headers krb5-dev" makedepends="$depends_dev autoconf automake libtool linux-headers" subpackages="$pkgname-dev $pkgname-doc $pkgname-dbg" -source="https://downloads.sourceforge.net/$pkgname/$pkgname-$pkgver.tar.bz2" +source="https://downloads.sourceforge.net/$pkgname/$pkgname-$pkgver.tar.bz2 + musl.patch" build() { cd "$builddir" @@ -29,4 +30,5 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="392f391f9fc1bd68d81dc44e4058831a64b32790b5c8c37338b0ab416fad2ae4d16389e632596734dba09780347918cc65c6f134e0c1afd09e81ec250785ed23 libtirpc-1.1.4.tar.bz2" +sha512sums="392f391f9fc1bd68d81dc44e4058831a64b32790b5c8c37338b0ab416fad2ae4d16389e632596734dba09780347918cc65c6f134e0c1afd09e81ec250785ed23 libtirpc-1.1.4.tar.bz2 +8e52246ae478ae9e4689426627e17d9c58d701f4fd21a40ffe3cf17c4ceaa4ab2e8e91d2fa3ba0d0c7adc52ae4b986fcda113ec86e370ede83903bb641de520c musl.patch" diff --git a/user/libtirpc/musl.patch b/user/libtirpc/musl.patch new file mode 100644 index 000000000..5a4fb04f5 --- /dev/null +++ b/user/libtirpc/musl.patch @@ -0,0 +1,11 @@ +--- ./tirpc/rpc/types.h.orig 2018-03-17 10:23:10.022055255 +0100 ++++ ./tirpc/rpc/types.h 2018-03-17 10:23:30.877751656 +0100 +@@ -66,7 +66,7 @@ + #define mem_free(ptr, bsize) free(ptr) + + +-#if defined __APPLE_CC__ || defined __FreeBSD__ ++#if defined __APPLE_CC__ || defined __FreeBSD__ || !defined(__GLIBC__) + # define __u_char_defined + # define __daddr_t_defined + #endif diff --git a/user/libwnck/APKBUILD b/user/libwnck/APKBUILD new file mode 100644 index 000000000..c3d89fd43 --- /dev/null +++ b/user/libwnck/APKBUILD @@ -0,0 +1,38 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=libwnck +pkgver=3.24.1 +pkgrel=0 +pkgdesc="Window navigator construction kit library from Gnome" +url="https://gnome.org" +arch="all" +license="LGPL-2.0+" +makedepends="glib-dev gtk+3.0-dev gobject-introspection-dev vala-dev + startup-notification-dev" +subpackages="$pkgname-dev $pkgname-doc $pkgname-lang" +source="https://download.gnome.org/sources/libwnck/3.24/libwnck-$pkgver.tar.xz" +sha512sums="e8a31ab2dc0c282f1e0994ce6a2ccd18678dc5c140943399262e795052b7f5da2d6a5d388a74f4b10f8fac66ab138983a9caaee4e72c92a17c01ca5c39b731e1 libwnck-3.24.1.tar.xz" +builddir="$srcdir/libwnck-$pkgver" + +build() { + cd "$builddir" + ./configure \ + --build=$CBUILD \ + --host=$CHOST \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --localstatedir=/var + make +} + +check() { + cd "$builddir" + make check +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install +} + diff --git a/user/libx11/APKBUILD b/user/libx11/APKBUILD index 5917acfa6..6a8b7b643 100644 --- a/user/libx11/APKBUILD +++ b/user/libx11/APKBUILD @@ -1,7 +1,7 @@ # Contributor: Natanael Copa <ncopa@alpinelinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=libx11 -pkgver=1.6.6 +pkgver=1.6.7 pkgrel=0 pkgdesc="X11 client-side library" url="https://www.X.Org/" @@ -22,8 +22,7 @@ build() { --prefix=/usr \ --sysconfdir=/etc \ --mandir=/usr/share/man \ - --localstatedir=/var \ - --with-xcb + --localstatedir=/var make } @@ -38,4 +37,4 @@ package() { install -Dm644 COPYING "$pkgdir"/usr/share/licenses/$pkgname/COPYING } -sha512sums="9866dc6b158b15a96efe140b6fa68a775889a37e5565a126216211fee63868e02629a9f9f41816d590ef150560f43b8864010a77a6318c9109e76aec1d21b4d7 libX11-1.6.6.tar.bz2" +sha512sums="edd2273b9dadbbf90ad8d7b5715db29eb120a5a22ad2595f697e56532cc24b84e358580c00548fa6be8e9d26601a2b2cdab32272c59266709534317abbd05cd5 libX11-1.6.7.tar.bz2" diff --git a/user/libxcb/APKBUILD b/user/libxcb/APKBUILD index fa3e90c6b..53db51310 100644 --- a/user/libxcb/APKBUILD +++ b/user/libxcb/APKBUILD @@ -1,12 +1,12 @@ # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=libxcb -pkgver=1.13 +pkgver=1.13.1 pkgrel=0 pkgdesc="X11 C language Binding" url="https://xcb.freedesktop.org/" arch="all" license="X11" -depends= +depends="" subpackages="$pkgname-dev $pkgname-doc" depends_dev="libxau-dev xcb-proto" checkdepends="check-dev" @@ -18,6 +18,7 @@ build() { ./configure \ --build=$CBUILD \ --host=$CHOST \ + --target=$CTARGET \ --prefix=/usr \ --enable-xkb \ --enable-xinput \ @@ -36,4 +37,4 @@ package() { install -Dm644 COPYING "$pkgdir"/usr/share/licenses/$pkgname/COPYING } -sha512sums="d99bbe386a65f60fcc0cc2935e4a365bc0577b5e90433e18778a665a5aee8ebc8e9e8cb0aedac0ac4a276147c0507e759a716874ea4f80792b2fc18eefbc128c libxcb-1.13.tar.bz2" +sha512sums="763edff9572623674f75a858adc57b5c09591f508cc5d5093218e7bb047abdbe0a0108bd465419a8bf15c7dcdc85efdd2d4d9fd56605c41475d15dc992640c23 libxcb-1.13.1.tar.bz2" diff --git a/user/libxdg-basedir/APKBUILD b/user/libxdg-basedir/APKBUILD new file mode 100644 index 000000000..50a1e7dfc --- /dev/null +++ b/user/libxdg-basedir/APKBUILD @@ -0,0 +1,43 @@ +# Contributor: William Pitcock <nenolod@dereferenced.org> +# Contributor: Natanael Copa <ncopa@alpinelinux.org> +# Maintainer: Dan Theisen <djt@hxx.in> +# TODO: Repackage from better source, rehost or something. +pkgname=libxdg-basedir +pkgver=1.2.0 +pkgrel=0 +pkgdesc="library for XDG base dir specification" +url="https://nevill.ch/libxdg-basedir/" +arch="all" +license="MIT" +depends="" +makedepends="" +subpackages="$pkgname-dev" +source="https://nevill.ch/libxdg-basedir/downloads/$pkgname-$pkgver.tar.gz" + +prepare() { + cd "$builddir" + default_prepare + update_config_sub +} + +build() { + cd "$builddir" + ./configure \ + --build=$CBUILD \ + --host=$CHOST \ + --prefix=/usr \ + --sysconfdir=/etc \ + make +} + +check() { + cd "$builddir" + make check +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install +} + +sha512sums="346553ddd9d0a0c854af9320f2ced695a0838adc18736b66120bea48ea60cb9ea3a7390672a42f83909db92f692e94de833d9e8bcfe51568a72ad1f4661fde06 libxdg-basedir-1.2.0.tar.gz" diff --git a/user/libxfce4ui/APKBUILD b/user/libxfce4ui/APKBUILD new file mode 100644 index 000000000..779e73a54 --- /dev/null +++ b/user/libxfce4ui/APKBUILD @@ -0,0 +1,39 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=libxfce4ui +pkgver=4.13.4 +pkgrel=0 +pkgdesc="UI library for the XFCE desktop environment" +url="https://xfce.org" +arch="all" +license="LGPL-2.0+ AND GPL-2.0+" +makedepends="intltool gtk+3.0-dev gobject-introspection-dev vala-dev + libxfce4util-dev xfconf-dev startup-notification-dev" +subpackages="$pkgname-dev $pkgname-doc $pkgname-lang" +langdir="/usr/lib/locale" +source="http://archive.xfce.org/src/xfce/libxfce4ui/4.13/libxfce4ui-$pkgver.tar.bz2" +sha512sums="c82d6ff7ea0da4fc0f664bab92f1e9531162996a26bb092e6ba651cfc4551732cbcd8023908d428b47906c17c331c14bf4804256566ca564befa218dc1194206 libxfce4ui-4.13.4.tar.bz2" + +build() { + cd "$builddir" + ./configure \ + --build=$CBUILD \ + --host=$CHOST \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --localstatedir=/var \ + --enable-vala=yes + make +} + +check() { + cd "$builddir" + make check +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install +} + diff --git a/user/libxfce4util/APKBUILD b/user/libxfce4util/APKBUILD new file mode 100644 index 000000000..55a5a62f7 --- /dev/null +++ b/user/libxfce4util/APKBUILD @@ -0,0 +1,37 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=libxfce4util +pkgver=4.13.2 +pkgrel=0 +pkgdesc="Utility library for the XFCE desktop environment" +url="https://xfce.org" +arch="all" +license="LGPL-2.0+ GPL-2.0+" +makedepends="intltool glib-dev gobject-introspection-dev vala" +subpackages="$pkgname-dev $pkgname-doc $pkgname-lang" +langdir="/usr/lib/locale" +source="http://archive.xfce.org/src/xfce/libxfce4util/4.13/libxfce4util-$pkgver.tar.bz2" +sha512sums="3bbb718f3a6d2213c86695b3f99d1e67c859ce635e5d066b18745d2ee57c0b2eea468b61079d8e2514c2d8f5fa847539d236ec0ed3fd17fecd9d1b36dc3595c4 libxfce4util-4.13.2.tar.bz2" + +build() { + cd "$builddir" + ./configure \ + --build=$CBUILD \ + --host=$CHOST \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --localstatedir=/var + make +} + +check() { + cd "$builddir" + make check +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install +} + diff --git a/user/libxklavier/APKBUILD b/user/libxklavier/APKBUILD new file mode 100644 index 000000000..0f3964a06 --- /dev/null +++ b/user/libxklavier/APKBUILD @@ -0,0 +1,42 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=libxklavier +pkgver=5.4 +pkgrel=0 +pkgdesc="High-level API for XKB" +url="https://www.freedesktop.org/wiki/Software/LibXklavier/" +arch="all" +license="LGPL-2.0+" +makedepends="libx11-dev libxml2-dev glib-dev libxcb-dev libxi-dev iso-codes-dev" +subpackages="$pkgname-dev $pkgname-doc" +source="https://people.freedesktop.org/~svu/libxklavier-$pkgver.tar.bz2" + +prepare() { + cd "$builddir" + default_prepare + update_config_sub +} + +build() { + cd "$builddir" + ./configure \ + --build=$CBUILD \ + --host=$CHOST \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --localstatedir=/var + make +} + +check() { + cd "$builddir" + make check +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install +} + +sha512sums="e9342d94f6cd67e900e44d9751ee0d8c75bec8e3a7b30989612bd71a5f890be52ff843465162dbbe0bfc9004da76e1d47158a4671b8f915e51c91f9d82f7baae libxklavier-5.4.tar.bz2" diff --git a/user/links/APKBUILD b/user/links/APKBUILD index 1450559f5..572f9d977 100644 --- a/user/links/APKBUILD +++ b/user/links/APKBUILD @@ -1,6 +1,6 @@ # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=links -pkgver=2.16 +pkgver=2.17 pkgrel=0 pkgdesc="Text Web browser, similar to Lynx" url="http://links.twibright.com/" @@ -30,4 +30,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="3ce169e214eae0f997c1f8647d354dc0803c9118a97dcd2594d62af23336890272f4b027d3ab0a0e151672d1506e50da0f0e561999c5841f0f183f32a279b14a links-2.16.tar.bz2" +sha512sums="871a3a2cbc210467f4ffd830ba2966f2ebc0ec9ed4a1de018d032cec4b550e58f6858875478647c627ec746bb76810a4b97603575f2d21b5ea650c612684c8d5 links-2.17.tar.bz2" diff --git a/user/live-media/APKBUILD b/user/live-media/APKBUILD index 11fd2cf4e..08b42891b 100644 --- a/user/live-media/APKBUILD +++ b/user/live-media/APKBUILD @@ -1,6 +1,6 @@ # Maintainer: pkgname=live-media -pkgver=2018.07.07 +pkgver=2018.09.06 pkgrel=0 pkgdesc="Libraries for multimedia streaming" url="http://live555.com/liveMedia" @@ -53,4 +53,4 @@ utils() { mv "$pkgdir"/usr/bin "$subpkgdir"/usr/ } -sha512sums="e7d4ddf51e9666c6ebe9a46976035b68fea94be54825535ffb04006cd242b9d3ad08250305206442bed3500d1e8d628ccf44302c485f63a9e244b3f8b1e27fe4 live.2018.07.07.tar.gz" +sha512sums="ada3b4f0de25304d0d53aef19136beecc6c16d506562eea85709542f608be7dcf56977e3073722873fb03deafd56be945397db8804c252acd87192adaee1bdba live.2018.09.06.tar.gz" diff --git a/system/llvm4/APKBUILD b/user/llvm6/APKBUILD index 647ef6043..5f7b04fad 100644 --- a/system/llvm4/APKBUILD +++ b/user/llvm6/APKBUILD @@ -3,26 +3,30 @@ # Contributor: Jakub Jirutka <jakub@jirutka.cz> # Maintainer: A. Wilcox <awilfox@adelielinux.org> _pkgname=llvm -pkgver=4.0.0 +pkgver=6.0.1 _majorver=${pkgver%%.*} pkgname=$_pkgname$_majorver -pkgrel=6 +pkgrel=0 pkgdesc="Low Level Virtual Machine compiler system, version $_majorver" arch="all" -options="!dbg" -url="http://llvm.org/" +options="!checkroot !dbg" +url="https://llvm.org/" license="NCSA" -depends_dev="$pkgname=$pkgver-r$pkgrel" -makedepends="binutils-dev chrpath cmake file libffi-dev paxmark python3 zlib-dev" -subpackages="$pkgname-static $pkgname-libs $pkgname-dev $pkgname-test-utils:_test_utils" +depends_dev="$pkgname=$pkgver-r$pkgrel libexecinfo-dev libxml2-dev" +makedepends="binutils-dev chrpath cmake file libexecinfo-dev libffi-dev + libxml2-dev python3 zlib-dev" +subpackages="$pkgname-static $pkgname-libs $pkgname-dev + $pkgname-test-utils:_test_utils" source="http://llvm.org/releases/$pkgver/llvm-$pkgver.src.tar.xz llvm-fix-build-with-musl-libc.patch - llvm-fix-DynamicLibrary-to-build-with-musl-libc.patch cmake-fix-libLLVM-name.patch disable-FileSystemTest.CreateDir-perms-assert.patch - silent-amdgpu-test-failing.patch - fix-CheckAtomic.cmake.patch + disable-dlclose-test.patch musl-ppc64-elfv2.patch + secure-plt.patch + more-secure-plt.patch + even-more-secure-plt.patch + ppc32-calling-convention.patch " builddir="$srcdir/$_pkgname-$pkgver.src" @@ -88,7 +92,6 @@ build() { -DLLVM_BUILD_LLVM_DYLIB=ON \ -DLLVM_BUILD_TESTS=ON \ -DLLVM_DEFAULT_TARGET_TRIPLE="$CBUILD" \ - -DLLVM_DYLIB_EXPORT_ALL=ON \ -DLLVM_ENABLE_ASSERTIONS=OFF \ -DLLVM_ENABLE_CXX1Y=ON \ -DLLVM_ENABLE_FFI=ON \ @@ -107,14 +110,6 @@ build() { make llvm-tblgen make - paxmark m \ - bin/llvm-rtdyld \ - bin/lli \ - bin/lli-child-target \ - unittests/ExecutionEngine/MCJIT/MCJITTests \ - unittests/ExecutionEngine/Orc/OrcJITTests \ - unittests/Support/SupportTests - python3 ../utils/lit/setup.py build } @@ -180,6 +175,7 @@ static() { _common_subpkg _mv "$pkgdir"/$_prefix/lib/*.a "$subpkgdir"/$_prefix/lib/ + strip -d "$subpkgdir"/$_prefix/lib/*.a } libs() { @@ -227,6 +223,7 @@ _test_utils() { cd "$builddir"/build install -D -m 755 bin/FileCheck "$subpkgdir"/$_prefix/bin/FileCheck + install -D -m 755 bin/count "$subpkgdir"/$_prefix/bin/count install -D -m 755 bin/not "$subpkgdir"/$_prefix/bin/not python3 ../utils/lit/setup.py install --prefix=/usr --root="$subpkgdir" @@ -246,11 +243,13 @@ _mv() { mv $@ } -sha512sums="cf681f0626ef6d568d951cdc3e143471a1d7715a0ba11e52aa273cf5d8d421e1357ef2645cc85879eaefcd577e99e74d07b01566825b3d0461171ef2cbfc7704 llvm-4.0.0.src.tar.xz +sha512sums="cbbb00eb99cfeb4aff623ee1a5ba075e7b5a76fc00c5f9f539ff28c108598f5708a0369d5bd92683def5a20c2fe60cab7827b42d628dbfcc79b57e0e91b84dd9 llvm-6.0.1.src.tar.xz f84cd65d7042e89826ba6e8d48c4c302bf4980da369d7f19a55f217e51c00ca8ed178d453df3a3cee76598a7cecb94aed0775a6d24fe73266f82749913fc3e71 llvm-fix-build-with-musl-libc.patch -19bfb9282455d39d07dbb2b1293b03a45c57d522fbb9c5e58dac034200669628b97e7a90cd4ff5d52d9bb79acfccbef653d8a1140a7f0589ecd6f9b7c4ba0eb6 llvm-fix-DynamicLibrary-to-build-with-musl-libc.patch 6d1a716e5aa24e6b9a3acf4cc11e2504b1b01abf574074e9e5617b991de87d5e4e687eb18e85e73d5e632568afe2fc357771c4c96f9e136502071991496fb78c cmake-fix-libLLVM-name.patch 49c47f125014b60d0ea7870f981a2c1708ad705793f89287ed846ee881a837a4dc0170bf467e03f2ef56177473128945287749ac80dc2d13cfabcf8b929ba58a disable-FileSystemTest.CreateDir-perms-assert.patch -97f788110abbb9e6add2e3a3d3b606dc2817ab726b74ead71241fc5433ba42d5d58e23be91a3b2444eb687c4f56a7c879bf5453e96f9785ce3541301329dda9c silent-amdgpu-test-failing.patch -3bcfeccc1f14567f99029a131b1289290226d48855857f2eb6a251e041981a8b8b2d7965099df16ebf0a406e48130679f97235ef3f3524577413bb51cf40e613 fix-CheckAtomic.cmake.patch -0286362c4a144f7697cc3b9bfaaba9f0d2749f625d750ca2999532a81f7e2d1ea7ca340c17354ac994dbc410e9e482993c1864751b08c9093e60524f66d7e73e musl-ppc64-elfv2.patch" +caeec8e4dbd92f5f74940780b69075f3879a267a8623822cbdc193fd14706eb089071e3a5a20d60cc2eca59e4c5b2a61d29827a2f3362ee7c5f74f11d9ace200 disable-dlclose-test.patch +e5ddbc4b6c4928e79846dc3c022eb7928aaa8fed40515c78f5f03b8ab8264f34f1eb8aa8bfc0f436450932f4917e54ad261603032092ea271d9590f11a37cf1e musl-ppc64-elfv2.patch +35d289641fa4d200b5a3f62f1d51da600a734641356b0dc6c54a3080dd89aec3b031e36af8b53be49c35346c1cbcce00268de7ec9b4f552bfd7bf84d3504d1c4 secure-plt.patch +3d4a0a478bf800ea262c577451e22a1dbd5a4258226e49c66a697559263c8aa4fc0fff642a3c80ac3dfbb3efd6d9c0dbeb41dae1250fc7946de821cfef1ce1f0 more-secure-plt.patch +deb71762721ebc73bfdf23143b582f40c70eddcef3e337ed14499e8e336bee2906292d38d64fe98fa633430c1bcb66cf6a2e067258c8fbe6e931f99f6d10a6f7 even-more-secure-plt.patch +c3f596a1578a07ce0ee40c4e2576fe05ca6ca0c1b4f94b1f74c55cb09603afe7c846db9294fe28d83ca48633086bad422218e6d06e0d92173143fb298e06fb38 ppc32-calling-convention.patch" diff --git a/system/llvm4/cmake-fix-libLLVM-name.patch b/user/llvm6/cmake-fix-libLLVM-name.patch index cb29fe2ef..cb29fe2ef 100644 --- a/system/llvm4/cmake-fix-libLLVM-name.patch +++ b/user/llvm6/cmake-fix-libLLVM-name.patch diff --git a/system/llvm4/disable-FileSystemTest.CreateDir-perms-assert.patch b/user/llvm6/disable-FileSystemTest.CreateDir-perms-assert.patch index e73ce9b6f..e73ce9b6f 100644 --- a/system/llvm4/disable-FileSystemTest.CreateDir-perms-assert.patch +++ b/user/llvm6/disable-FileSystemTest.CreateDir-perms-assert.patch diff --git a/user/llvm6/disable-dlclose-test.patch b/user/llvm6/disable-dlclose-test.patch new file mode 100644 index 000000000..b70cd4d4d --- /dev/null +++ b/user/llvm6/disable-dlclose-test.patch @@ -0,0 +1,18 @@ +--- llvm-6.0.1.src/unittests/Support/DynamicLibrary/DynamicLibraryTest.cpp.old 2017-07-12 21:22:45.000000000 +0000 ++++ llvm-6.0.1.src/unittests/Support/DynamicLibrary/DynamicLibraryTest.cpp 2018-09-13 04:43:37.240000000 +0000 +@@ -107,6 +107,7 @@ + EXPECT_TRUE(DynamicLibrary::SearchOrder == DynamicLibrary::SO_Linker); + } + ++#if 0 + TEST(DynamicLibrary, Shutdown) { + std::string A("PipSqueak"), B, C("SecondLib"); + std::vector<std::string> Order; +@@ -162,6 +163,7 @@ + EXPECT_EQ(Order.front(), "SecondLib"); + EXPECT_EQ(Order.back(), "PipSqueak"); + } ++#endif + + #else + diff --git a/user/llvm6/even-more-secure-plt.patch b/user/llvm6/even-more-secure-plt.patch new file mode 100644 index 000000000..112e111b8 --- /dev/null +++ b/user/llvm6/even-more-secure-plt.patch @@ -0,0 +1,101 @@ +Index: lib/Target/PowerPC/InstPrinter/PPCInstPrinter.cpp +=================================================================== +--- a/lib/Target/PowerPC/InstPrinter/PPCInstPrinter.cpp ++++ b/lib/Target/PowerPC/InstPrinter/PPCInstPrinter.cpp +@@ -442,13 +442,22 @@ + // On PPC64, VariantKind is VK_None, but on PPC32, it's VK_PLT, and it must + // come at the _end_ of the expression. + const MCOperand &Op = MI->getOperand(OpNo); +- const MCSymbolRefExpr &refExp = cast<MCSymbolRefExpr>(*Op.getExpr()); +- O << refExp.getSymbol().getName(); ++ const MCSymbolRefExpr *RefExp = nullptr; ++ const MCConstantExpr *ConstExp = nullptr; ++ if (const MCBinaryExpr *BinExpr = dyn_cast<MCBinaryExpr>(Op.getExpr())) { ++ RefExp = cast<MCSymbolRefExpr>(BinExpr->getLHS()); ++ ConstExp = cast<MCConstantExpr>(BinExpr->getRHS()); ++ } else ++ RefExp = cast<MCSymbolRefExpr>(Op.getExpr()); ++ ++ O << RefExp->getSymbol().getName(); + O << '('; + printOperand(MI, OpNo+1, O); + O << ')'; +- if (refExp.getKind() != MCSymbolRefExpr::VK_None) +- O << '@' << MCSymbolRefExpr::getVariantKindName(refExp.getKind()); ++ if (RefExp->getKind() != MCSymbolRefExpr::VK_None) ++ O << '@' << MCSymbolRefExpr::getVariantKindName(RefExp->getKind()); ++ if (ConstExp != nullptr) ++ O << '+' << ConstExp->getValue(); + } + + /// showRegistersWithPercentPrefix - Check if this register name should be +Index: lib/Target/PowerPC/PPCAsmPrinter.cpp +=================================================================== +--- a/lib/Target/PowerPC/PPCAsmPrinter.cpp ++++ b/lib/Target/PowerPC/PPCAsmPrinter.cpp +@@ -487,8 +487,14 @@ + if (!Subtarget->isPPC64() && !Subtarget->isDarwin() && + isPositionIndependent()) + Kind = MCSymbolRefExpr::VK_PLT; +- const MCSymbolRefExpr *TlsRef = ++ const MCExpr *TlsRef = + MCSymbolRefExpr::create(TlsGetAddr, Kind, OutContext); ++ ++ // Add 32768 offset to the symbol so we follow up the latest GOT/PLT ABI. ++ if (Kind == MCSymbolRefExpr::VK_PLT && Subtarget->isSecurePlt()) ++ TlsRef = MCBinaryExpr::createAdd(TlsRef, ++ MCConstantExpr::create(32768, OutContext), ++ OutContext); + const MachineOperand &MO = MI->getOperand(2); + const GlobalValue *GValue = MO.getGlobal(); + MCSymbol *MOSymbol = getSymbol(GValue); +Index: lib/Target/PowerPC/PPCISelDAGToDAG.cpp +=================================================================== +--- a/lib/Target/PowerPC/PPCISelDAGToDAG.cpp ++++ b/lib/Target/PowerPC/PPCISelDAGToDAG.cpp +@@ -4054,7 +4054,20 @@ + if (trySETCC(N)) + return; + break; +- ++ // These nodes will be transformed into GETtlsADDR32 node, which ++ // later becomes BL_TLS __tls_get_addr(sym at tlsgd)@PLT ++ case PPCISD::ADDI_TLSLD_L_ADDR: ++ case PPCISD::ADDI_TLSGD_L_ADDR: { ++ const Module *Mod = MF->getFunction().getParent(); ++ if (PPCLowering->getPointerTy(CurDAG->getDataLayout()) != MVT::i32 || ++ !PPCSubTarget->isSecurePlt() || !PPCSubTarget->isTargetELF() || ++ Mod->getPICLevel() == PICLevel::SmallPIC) ++ break; ++ // Attach global base pointer on GETtlsADDR32 node in order to ++ // generate secure plt code for TLS symbols. ++ getGlobalBaseReg(); ++ } ++ break; + case PPCISD::CALL: { + const Module *M = MF->getFunction().getParent(); + +Index: test/CodeGen/PowerPC/ppc32-secure-plt-tls.ll +=================================================================== +--- a/test/CodeGen/PowerPC/ppc32-secure-plt-tls.ll ++++ b/test/CodeGen/PowerPC/ppc32-secure-plt-tls.ll +@@ -0,0 +1,18 @@ ++; RUN: llc < %s -mtriple=powerpc-unknown-linux-gnu -mattr=+secure-plt -relocation-model=pic | FileCheck -check-prefix=SECURE-PLT-TLS %s ++ ++@a = thread_local local_unnamed_addr global i32 6, align 4 ++define i32 @main() local_unnamed_addr #0 { ++entry: ++ %0 = load i32, i32* @a, align 4 ++ ret i32 %0 ++} ++ ++ ++!llvm.module.flags = !{!0} ++!0 = !{i32 7, !"PIC Level", i32 2} ++ ++; SECURE-PLT-TLS: mflr 30 ++; SECURE-PLT-TLS-NEXT: addis 30, 30, .LTOC-.L0$pb@ha ++; SECURE-PLT-TLS-NEXT: addi 30, 30, .LTOC-.L0$pb@l ++; SECURE-PLT-TLS-NEXT: bl .L{{.*}} ++; SECURE-PLT-TLS: bl __tls_get_addr(a@tlsgd)@PLT+32768 +\ No newline at end of file diff --git a/system/llvm4/llvm-fix-build-with-musl-libc.patch b/user/llvm6/llvm-fix-build-with-musl-libc.patch index 6ee91ea44..6ee91ea44 100644 --- a/system/llvm4/llvm-fix-build-with-musl-libc.patch +++ b/user/llvm6/llvm-fix-build-with-musl-libc.patch diff --git a/user/llvm6/more-secure-plt.patch b/user/llvm6/more-secure-plt.patch new file mode 100644 index 000000000..1cc08a9a8 --- /dev/null +++ b/user/llvm6/more-secure-plt.patch @@ -0,0 +1,38 @@ +diff --git a/lib/Target/PowerPC/PPCSubtarget.cpp b/lib/Target/PowerPC/PPCSubtarget.cpp +index c0cbfd779cb..5d7a021c3e2 100644 +--- a/lib/Target/PowerPC/PPCSubtarget.cpp ++++ b/lib/Target/PowerPC/PPCSubtarget.cpp +@@ -106,6 +106,7 @@ + HasFloat128 = false; + IsISA3_0 = false; + UseLongCalls = false; ++ SecurePlt = false; + + HasPOPCNTD = POPCNTD_Unavailable; + } +@@ -136,6 +137,10 @@ + if (isDarwin()) + HasLazyResolverStubs = true; + ++ // Set up musl-specific properties. ++ if (TargetTriple.getEnvironment() == Triple::Musl) ++ SecurePlt = true; ++ + // QPX requires a 32-byte aligned stack. Note that we need to do this if + // we're compiling for a BG/Q system regardless of whether or not QPX + // is enabled because external functions will assume this alignment. +diff --git a/lib/Target/PowerPC/PPCTargetMachine.cpp b/lib/Target/PowerPC/PPCTargetMachine.cpp +index c583fba8cab..6a9eedf89c5 100644 +--- a/lib/Target/PowerPC/PPCTargetMachine.cpp ++++ b/lib/Target/PowerPC/PPCTargetMachine.cpp +@@ -222,6 +222,10 @@ static Reloc::Model getEffectiveRelocModel(const Triple &TT, + if (TT.getArch() == Triple::ppc64 || TT.getArch() == Triple::ppc64le) + return Reloc::PIC_; + ++ // musl needs SecurePlt, which depends on PIC. ++ if (TT.getEnvironment() == Triple::Musl) ++ return Reloc::PIC_; ++ + // 32-bit is static by default. + return Reloc::Static; + } diff --git a/user/llvm6/musl-ppc64-elfv2.patch b/user/llvm6/musl-ppc64-elfv2.patch new file mode 100644 index 000000000..016be5dad --- /dev/null +++ b/user/llvm6/musl-ppc64-elfv2.patch @@ -0,0 +1,43 @@ +From 750d323a6060ad92c3d247f85d6555041f55b4a5 Mon Sep 17 00:00:00 2001 +From: "A. Wilcox" <AWilcox@Wilcox-Tech.com> +Date: Thu, 4 Oct 2018 15:26:59 -0500 +Subject: [PATCH] Add support for powerpc64-*-linux-musl targets + +This patch ensures that 64-bit PowerPC musl targets use ELFv2 ABI on both +endians. It additionally adds a test that big endian PPC64 uses ELFv2 on +musl. +--- + lib/Target/PowerPC/PPCTargetMachine.cpp | 4 ++++ + test/CodeGen/PowerPC/ppc64-elf-abi.ll | 1 + + 2 files changed, 5 insertions(+) + +diff --git a/lib/Target/PowerPC/PPCTargetMachine.cpp b/lib/Target/PowerPC/PPCTargetMachine.cpp +index 34410393ef6..c583fba8cab 100644 +--- a/lib/Target/PowerPC/PPCTargetMachine.cpp ++++ b/lib/Target/PowerPC/PPCTargetMachine.cpp +@@ -199,6 +199,10 @@ static PPCTargetMachine::PPCABI computeTargetABI(const Triple &TT, + case Triple::ppc64le: + return PPCTargetMachine::PPC_ABI_ELFv2; + case Triple::ppc64: ++ // musl uses ELFv2 ABI on both endians. ++ if (TT.getEnvironment() == Triple::Musl) ++ return PPCTargetMachine::PPC_ABI_ELFv2; ++ + return PPCTargetMachine::PPC_ABI_ELFv1; + default: + return PPCTargetMachine::PPC_ABI_UNKNOWN; +diff --git a/test/CodeGen/PowerPC/ppc64-elf-abi.ll b/test/CodeGen/PowerPC/ppc64-elf-abi.ll +index 1e17930304b..aa594b37b47 100644 +--- a/test/CodeGen/PowerPC/ppc64-elf-abi.ll ++++ b/test/CodeGen/PowerPC/ppc64-elf-abi.ll +@@ -1,6 +1,7 @@ + ; RUN: llc -verify-machineinstrs -mtriple=powerpc64-unknown-linux-gnu < %s | FileCheck %s -check-prefix=CHECK-ELFv1 + ; RUN: llc -verify-machineinstrs -mtriple=powerpc64-unknown-linux-gnu -target-abi elfv1 < %s | FileCheck %s -check-prefix=CHECK-ELFv1 + ; RUN: llc -verify-machineinstrs -mtriple=powerpc64-unknown-linux-gnu -target-abi elfv2 < %s | FileCheck %s -check-prefix=CHECK-ELFv2 ++; RUN: llc -verify-machineinstrs -mtriple=powerpc64-unknown-linux-musl < %s | FileCheck %s -check-prefix=CHECK-ELFv2 + ; RUN: llc -verify-machineinstrs -mtriple=powerpc64le-unknown-linux-gnu < %s | FileCheck %s -check-prefix=CHECK-ELFv2 + ; RUN: llc -verify-machineinstrs -mtriple=powerpc64le-unknown-linux-gnu -target-abi elfv1 < %s | FileCheck %s -check-prefix=CHECK-ELFv1 + ; RUN: llc -verify-machineinstrs -mtriple=powerpc64le-unknown-linux-gnu -target-abi elfv2 < %s | FileCheck %s -check-prefix=CHECK-ELFv2 +-- +2.18.0 + diff --git a/user/llvm6/ppc32-calling-convention.patch b/user/llvm6/ppc32-calling-convention.patch new file mode 100644 index 000000000..2e6d66427 --- /dev/null +++ b/user/llvm6/ppc32-calling-convention.patch @@ -0,0 +1,69 @@ +Index: trunk/lib/Target/PowerPC/PPCISelLowering.cpp +=================================================================== +--- trunk/lib/Target/PowerPC/PPCISelLowering.cpp ++++ trunk/lib/Target/PowerPC/PPCISelLowering.cpp +@@ -3511,9 +3511,14 @@ + // Argument stored in memory. + assert(VA.isMemLoc()); + ++ // Get the extended size of the argument type in stack + unsigned ArgSize = VA.getLocVT().getStoreSize(); +- int FI = MFI.CreateFixedObject(ArgSize, VA.getLocMemOffset(), +- isImmutable); ++ // Get the actual size of the argument type ++ unsigned ObjSize = VA.getValVT().getStoreSize(); ++ unsigned ArgOffset = VA.getLocMemOffset(); ++ // Stack objects in PPC32 are right justified. ++ ArgOffset += ArgSize - ObjSize; ++ int FI = MFI.CreateFixedObject(ArgSize, ArgOffset, isImmutable); + + // Create load nodes to retrieve arguments from the stack. + SDValue FIN = DAG.getFrameIndex(FI, PtrVT); +@@ -5468,10 +5473,15 @@ + Arg = PtrOff; + } + +- if (VA.isRegLoc()) { +- if (Arg.getValueType() == MVT::i1) +- Arg = DAG.getNode(ISD::ZERO_EXTEND, dl, MVT::i32, Arg); ++ // When useCRBits() is true, there can be i1 arguments. ++ // It is because getRegisterType(MVT::i1) => MVT::i1, ++ // and for other integer types getRegisterType() => MVT::i32. ++ // Extend i1 and ensure callee will get i32. ++ if (Arg.getValueType() == MVT::i1) ++ Arg = DAG.getNode(Flags.isSExt() ? ISD::SIGN_EXTEND : ISD::ZERO_EXTEND, ++ dl, MVT::i32, Arg); + ++ if (VA.isRegLoc()) { + seenFloatArg |= VA.getLocVT().isFloatingPoint(); + // Put argument in a physical register. + RegsToPass.push_back(std::make_pair(VA.getLocReg(), Arg)); +Index: trunk/test/CodeGen/PowerPC/ppc32-i1-stack-arguments-abi-bug.ll +=================================================================== +--- trunk/test/CodeGen/PowerPC/ppc32-i1-stack-arguments-abi-bug.ll ++++ trunk/test/CodeGen/PowerPC/ppc32-i1-stack-arguments-abi-bug.ll +@@ -0,0 +1,24 @@ ++; RUN: llc -verify-machineinstrs < %s -mcpu=ppc32 -mattr=+crbits | FileCheck %s ++target triple = "powerpc-unknown-linux-gnu" ++ ++define void @check_callee( ++ i32, i32, i32, i32, ++ i32, i32, i32, i32, ++ i1 zeroext %s1 ++) { ++ call void @check_caller( ++ i32 9, i32 9, i32 9, i32 9, ++ i32 9, i32 9, i32 9, i32 9, ++ i1 zeroext %s1) ++ ret void ++} ++ ++; CHECK-LABEL: @check_callee ++; CHECK: lbz {{[0-9]+}}, 27(1) ++; CHECK: stw {{[0-9]+}}, 8(1) ++ ++declare void @check_caller( ++ i32, i32, i32, i32, ++ i32, i32, i32, i32, ++ i1 zeroext ++) diff --git a/user/llvm6/secure-plt.patch b/user/llvm6/secure-plt.patch new file mode 100644 index 000000000..e8af33d87 --- /dev/null +++ b/user/llvm6/secure-plt.patch @@ -0,0 +1,208 @@ +Index: llvm/lib/Target/PowerPC/PPC.td +=================================================================== +--- llvm/lib/Target/PowerPC/PPC.td ++++ llvm/lib/Target/PowerPC/PPC.td +@@ -119,6 +119,8 @@ + [FeatureBookE]>; + def FeatureE500 : SubtargetFeature<"e500", "IsE500", "true", + "Enable E500/E500mc instructions">; ++def FeatureSecurePlt : SubtargetFeature<"secure-plt","SecurePlt", "true", ++ "Enable secure plt mode">; + def FeaturePPC4xx : SubtargetFeature<"ppc4xx", "IsPPC4xx", "true", + "Enable PPC 4xx instructions">; + def FeaturePPC6xx : SubtargetFeature<"ppc6xx", "IsPPC6xx", "true", +Index: llvm/lib/Target/PowerPC/PPCAsmPrinter.cpp +=================================================================== +--- llvm/lib/Target/PowerPC/PPCAsmPrinter.cpp ++++ llvm/lib/Target/PowerPC/PPCAsmPrinter.cpp +@@ -563,33 +563,63 @@ + // Transform %rd = UpdateGBR(%rt, %ri) + // Into: lwz %rt, .L0$poff - .L0$pb(%ri) + // add %rd, %rt, %ri ++ // or into (if secure plt mode is on): ++ // addis r30, r30, .LTOC - .L0$pb@ha ++ // addi r30, r30, .LTOC - .L0$pb@l + // Get the offset from the GOT Base Register to the GOT + LowerPPCMachineInstrToMCInst(MI, TmpInst, *this, isDarwin); +- MCSymbol *PICOffset = +- MF->getInfo<PPCFunctionInfo>()->getPICOffsetSymbol(); +- TmpInst.setOpcode(PPC::LWZ); +- const MCExpr *Exp = +- MCSymbolRefExpr::create(PICOffset, MCSymbolRefExpr::VK_None, OutContext); +- const MCExpr *PB = +- MCSymbolRefExpr::create(MF->getPICBaseSymbol(), +- MCSymbolRefExpr::VK_None, +- OutContext); +- const MCOperand TR = TmpInst.getOperand(1); +- const MCOperand PICR = TmpInst.getOperand(0); ++ if (Subtarget->isSecurePlt() && isPositionIndependent() ) { ++ unsigned PICR = TmpInst.getOperand(0).getReg(); ++ MCSymbol *LTOCSymbol = OutContext.getOrCreateSymbol(StringRef(".LTOC")); ++ const MCExpr *PB = ++ MCSymbolRefExpr::create(MF->getPICBaseSymbol(), ++ OutContext); + +- // Step 1: lwz %rt, .L$poff - .L$pb(%ri) +- TmpInst.getOperand(1) = +- MCOperand::createExpr(MCBinaryExpr::createSub(Exp, PB, OutContext)); +- TmpInst.getOperand(0) = TR; +- TmpInst.getOperand(2) = PICR; +- EmitToStreamer(*OutStreamer, TmpInst); ++ const MCExpr *LTOCDeltaExpr = ++ MCBinaryExpr::createSub(MCSymbolRefExpr::create(LTOCSymbol, OutContext), ++ PB, OutContext); + +- TmpInst.setOpcode(PPC::ADD4); +- TmpInst.getOperand(0) = PICR; +- TmpInst.getOperand(1) = TR; +- TmpInst.getOperand(2) = PICR; +- EmitToStreamer(*OutStreamer, TmpInst); +- return; ++ const MCExpr *LTOCDeltaHi = ++ PPCMCExpr::createHa(LTOCDeltaExpr, false, OutContext); ++ EmitToStreamer(*OutStreamer, MCInstBuilder(PPC::ADDIS) ++ .addReg(PICR) ++ .addReg(PICR) ++ .addExpr(LTOCDeltaHi)); ++ ++ const MCExpr *LTOCDeltaLo = ++ PPCMCExpr::createLo(LTOCDeltaExpr, false, OutContext); ++ EmitToStreamer(*OutStreamer, MCInstBuilder(PPC::ADDI) ++ .addReg(PICR) ++ .addReg(PICR) ++ .addExpr(LTOCDeltaLo)); ++ return; ++ } else { ++ MCSymbol *PICOffset = ++ MF->getInfo<PPCFunctionInfo>()->getPICOffsetSymbol(); ++ TmpInst.setOpcode(PPC::LWZ); ++ const MCExpr *Exp = ++ MCSymbolRefExpr::create(PICOffset, MCSymbolRefExpr::VK_None, OutContext); ++ const MCExpr *PB = ++ MCSymbolRefExpr::create(MF->getPICBaseSymbol(), ++ MCSymbolRefExpr::VK_None, ++ OutContext); ++ const MCOperand TR = TmpInst.getOperand(1); ++ const MCOperand PICR = TmpInst.getOperand(0); ++ ++ // Step 1: lwz %rt, .L$poff - .L$pb(%ri) ++ TmpInst.getOperand(1) = ++ MCOperand::createExpr(MCBinaryExpr::createSub(Exp, PB, OutContext)); ++ TmpInst.getOperand(0) = TR; ++ TmpInst.getOperand(2) = PICR; ++ EmitToStreamer(*OutStreamer, TmpInst); ++ ++ TmpInst.setOpcode(PPC::ADD4); ++ TmpInst.getOperand(0) = PICR; ++ TmpInst.getOperand(1) = TR; ++ TmpInst.getOperand(2) = PICR; ++ EmitToStreamer(*OutStreamer, TmpInst); ++ return; ++ } + } + case PPC::LWZtoc: { + // Transform %r3 = LWZtoc @min1, %r2 +@@ -1233,7 +1263,7 @@ + + if (!Subtarget->isPPC64()) { + const PPCFunctionInfo *PPCFI = MF->getInfo<PPCFunctionInfo>(); +- if (PPCFI->usesPICBase()) { ++ if (PPCFI->usesPICBase() && !Subtarget->isSecurePlt()) { + MCSymbol *RelocSymbol = PPCFI->getPICOffsetSymbol(); + MCSymbol *PICBase = MF->getPICBaseSymbol(); + OutStreamer->EmitLabel(RelocSymbol); +Index: llvm/lib/Target/PowerPC/PPCISelDAGToDAG.cpp +=================================================================== +--- llvm/lib/Target/PowerPC/PPCISelDAGToDAG.cpp ++++ llvm/lib/Target/PowerPC/PPCISelDAGToDAG.cpp +@@ -4001,6 +4001,27 @@ + return; + break; + ++ case PPCISD::CALL: { ++ const Module *M = MF->getFunction().getParent(); ++ ++ if (PPCLowering->getPointerTy(CurDAG->getDataLayout()) != MVT::i32 || ++ !PPCSubTarget->isSecurePlt() || !PPCSubTarget->isTargetELF() || ++ M->getPICLevel() == PICLevel::SmallPIC) ++ break; ++ ++ SDValue Op = N->getOperand(1); ++ ++ if (GlobalAddressSDNode *GA = dyn_cast<GlobalAddressSDNode>(Op)) { ++ if (GA->getTargetFlags() == PPCII::MO_PLT) ++ getGlobalBaseReg(); ++ } ++ else if (ExternalSymbolSDNode *ES = dyn_cast<ExternalSymbolSDNode>(Op)) { ++ if (ES->getTargetFlags() == PPCII::MO_PLT) ++ getGlobalBaseReg(); ++ } ++ } ++ break; ++ + case PPCISD::GlobalBaseReg: + ReplaceNode(N, getGlobalBaseReg()); + return; +Index: llvm/lib/Target/PowerPC/PPCMCInstLower.cpp +=================================================================== +--- llvm/lib/Target/PowerPC/PPCMCInstLower.cpp ++++ llvm/lib/Target/PowerPC/PPCMCInstLower.cpp +@@ -107,10 +107,20 @@ + break; + } + +- if (MO.getTargetFlags() == PPCII::MO_PLT) ++ if (MO.getTargetFlags() == PPCII::MO_PLT) + RefKind = MCSymbolRefExpr::VK_PLT; + ++ const MachineFunction *MF = MO.getParent()->getParent()->getParent(); ++ const PPCSubtarget *Subtarget = &(MF->getSubtarget<PPCSubtarget>()); ++ const TargetMachine &TM = Printer.TM; + const MCExpr *Expr = MCSymbolRefExpr::create(Symbol, RefKind, Ctx); ++ // -msecure-plt option works only in PIC mode. If secure plt mode ++ // is on add 32768 to symbol. ++ if (Subtarget->isSecurePlt() && TM.isPositionIndependent() && ++ MO.getTargetFlags() == PPCII::MO_PLT) ++ Expr = MCBinaryExpr::createAdd(Expr, ++ MCConstantExpr::create(32768, Ctx), ++ Ctx); + + if (!MO.isJTI() && MO.getOffset()) + Expr = MCBinaryExpr::createAdd(Expr, +Index: llvm/lib/Target/PowerPC/PPCSubtarget.h +=================================================================== +--- llvm/lib/Target/PowerPC/PPCSubtarget.h ++++ llvm/lib/Target/PowerPC/PPCSubtarget.h +@@ -133,6 +133,7 @@ + bool HasFloat128; + bool IsISA3_0; + bool UseLongCalls; ++ bool SecurePlt; + + POPCNTDKind HasPOPCNTD; + +@@ -255,6 +256,7 @@ + bool hasOnlyMSYNC() const { return HasOnlyMSYNC; } + bool isPPC4xx() const { return IsPPC4xx; } + bool isPPC6xx() const { return IsPPC6xx; } ++ bool isSecurePlt() const {return SecurePlt; } + bool isE500() const { return IsE500; } + bool isFeatureMFTB() const { return FeatureMFTB; } + bool isDeprecatedDST() const { return DeprecatedDST; } +Index: llvm/test/CodeGen/PowerPC/ppc32-pic-large.ll +=================================================================== +--- llvm/test/CodeGen/PowerPC/ppc32-pic-large.ll ++++ llvm/test/CodeGen/PowerPC/ppc32-pic-large.ll +@@ -1,4 +1,5 @@ + ; RUN: llc < %s -mtriple=powerpc-unknown-linux-gnu -relocation-model=pic | FileCheck -check-prefix=LARGE-BSS %s ++; RUN: llc < %s -mtriple=powerpc-unknown-linux-gnu -mattr=+secure-plt -relocation-model=pic | FileCheck -check-prefix=LARGE-SECUREPLT %s + @bar = common global i32 0, align 4 + + declare i32 @call_foo(i32, ...) +@@ -29,3 +30,6 @@ + ; LARGE-BSS: [[VREF]]: + ; LARGE-BSS-NEXT: .p2align 2 + ; LARGE-BSS-NEXT: .long bar ++; LARGE-SECUREPLT: addis 30, 30, .LTOC-.L0$pb@ha ++; LARGE-SECUREPLT: addi 30, 30, .LTOC-.L0$pb@l ++; LARGE-SECUREPLT: bl call_foo@PLT+32768 diff --git a/user/lskat/APKBUILD b/user/lskat/APKBUILD index 0276048d8..b6452b1c0 100644 --- a/user/lskat/APKBUILD +++ b/user/lskat/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=lskat -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="Lieutenant Skat is an interactive two-player card game" url="https://games.kde.org/game.php?game=lskat" @@ -41,4 +41,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="958ca673414a700f253c2b61d3e15502161fa3b3724e16b9ef1a1e3827c0093721a866a4ff00a9056ad027a541ce6873e192421d2b473f5e1dd7d307498c4715 lskat-18.08.1.tar.xz" +sha512sums="25c13bb18da2906987cbf250ad6e300d121db4d04abb2fed48942b513d3ba1c0ed3d31815951a92eba70939d1c8f1423c12d4ed390e41405f06eb83a6046c1a6 lskat-18.08.2.tar.xz" diff --git a/user/lsof/APKBUILD b/user/lsof/APKBUILD new file mode 100644 index 000000000..a7e0c4768 --- /dev/null +++ b/user/lsof/APKBUILD @@ -0,0 +1,63 @@ +# Contributor: Natanael Copa <ncopa@alpinelinux.org> +# Maintainer: Max Rees <maxcrees@me.com> +pkgname=lsof +pkgver=4.91 +pkgrel=0 +pkgdesc="LiSt Open Files" +url="https://people.freebsd.org/~abe" +arch="all" +license="zlib-acknowledgement" +subpackages="$pkgname-doc" +makedepends="linux-headers cmd:which utmps-dev" +source="ftp://lsof.itap.purdue.edu/pub/tools/unix/lsof/${pkgname}_${pkgver}.tar.gz + utmps.patch + test-enable-suite.patch + test-linux-sysmacros.patch + test-disable-nfs-test.patch" +builddir="$srcdir/${pkgname}_${pkgver}" + +unpack() { + default_unpack + cd "$builddir" + tar xf "${pkgname}_${pkgver}_src.tar" +} + +prepare() { + default_prepare + cd "$builddir/${pkgname}_${pkgver}_src" + + sed -i "s|/\* #define\tHASSECURITY\t1 \*/|#define\tHASSECURITY\t1|" \ + dialects/linux/machine.h + sed -n 6,30p lsof.h > COPYING +} + +build () { + cd "$builddir/${pkgname}_${pkgver}_src" + + ./Configure -n linux + make +} + +check() { + cd "$builddir/${pkgname}_${pkgver}_src/tests" + + # The LTsock test will fail if /etc/hosts is not set correctly. + # Make sure that 127.0.0.1 and ::1 have aliases corresponding to + # `hostname`. + printf "y" | make + make opt +} + +package() { + cd "$builddir/${pkgname}_${pkgver}_src" + + install -Dm755 lsof "$pkgdir/usr/bin/lsof" + install -Dm644 lsof.8 "$pkgdir/usr/share/man/man8/lsof.8" + install -Dm644 COPYING "$pkgdir/usr/share/licenses/lsof/COPYING" +} + +sha512sums="95937afda1ba58e6636b2a2661d819480ec42b4beafc0e69e6132d7fdffd4e3974a95036a02c6fd8baf92089c73ac969cdc00a297bf0249257867d695bff2f94 lsof_4.91.tar.gz +dfbfcfd41a4bccf3335ed01cc2dc9a11b6badd3149878d89ef5fed322a914d3d8341c68783140a4973d007907ce54b4438f011c26289df9e27d2d487a8f6b0b0 utmps.patch +34d9573f90d942c717e3f3ff17283a66981c4a2e8e886746b591f980142d66115bc7afe6bdd0fc660ea6c1b42f591b161b9535e5849b8757e79546c197ccfdda test-linux-sysmacros.patch +7f3e9b2850af54a5391db6a8f7eaa22329217fd559d3d41ee3bcd33b07b3526d17da75a542d28b013111bc5d5712a718e961aa4fe84ca3c5e73a97e0518ba2ec test-enable-suite.patch +d299e2070415168f75a9ee6424e18c1496f6d1fd5430b13a92159422c9df58050ac63e22cebd13a5228207f5960cf2cde5830a46c9ec7a4c216f5e6fb71887f4 test-disable-nfs-test.patch" diff --git a/user/lsof/test-disable-nfs-test.patch b/user/lsof/test-disable-nfs-test.patch new file mode 100644 index 000000000..9ccb11cf9 --- /dev/null +++ b/user/lsof/test-disable-nfs-test.patch @@ -0,0 +1,13 @@ +LTnfs requires a NFS filesystem in order to run. + +--- lsof_4.91/lsof_4.91_src/tests/Makefile 2006-01-10 13:27:52.000000000 -0500 ++++ lsof_4.91/lsof_4.91_src/tests/Makefile 2018-09-12 18:27:52.309560442 -0400 +@@ -19,7 +19,7 @@ + + BASTST= LTbasic + STDTST= LTnlink LTsock LTszoff LTunix +-OPTTST= LTbigf LTdnlc LTlock LTnfs ++OPTTST= LTbigf LTdnlc LTlock + + all: ${CKTSTDB} ${BASTST} ${STDTST} FRC + @./${CKTSTDB}; xv=$$?; \ diff --git a/user/lsof/test-enable-suite.patch b/user/lsof/test-enable-suite.patch new file mode 100644 index 000000000..7601aa9c0 --- /dev/null +++ b/user/lsof/test-enable-suite.patch @@ -0,0 +1,9 @@ +--- lsof_4.91/lsof_4.91_src/tests/CkTestDB 2010-02-12 15:37:05.000000000 -0500 ++++ lsof_4.91/lsof_4.91_src/tests/CkTestDB 2018-09-12 18:22:36.179562676 -0400 +@@ -67,6 +68,5 @@ + echo "" +- exit 1 + fi + + # Establish trap and stty handling. + diff --git a/user/lsof/test-linux-sysmacros.patch b/user/lsof/test-linux-sysmacros.patch new file mode 100644 index 000000000..bc75a9f39 --- /dev/null +++ b/user/lsof/test-linux-sysmacros.patch @@ -0,0 +1,15 @@ +--- lsof_4.91/lsof_4.91_src/tests/LTlib.c 2017-09-10 19:05:11.000000000 -0400 ++++ lsof_4.91/lsof_4.91_src/tests/LTlib.c 2018-09-12 18:05:26.719569950 -0400 +@@ -189,6 +189,12 @@ + #endif /* defined(LT_DIAL_uw) */ + + ++#if defined(__linux__) ++#undef _SYS_SYSMACROS_H ++#include <sys/sysmacros.h> ++#endif ++ ++ + /* + * Global variables + */ diff --git a/user/lsof/utmps.patch b/user/lsof/utmps.patch new file mode 100644 index 000000000..91324e28e --- /dev/null +++ b/user/lsof/utmps.patch @@ -0,0 +1,15 @@ +--- lsof_4.91/lsof_4.91_src/Configure 2018-02-14 09:18:55.000000000 -0500 ++++ lsof_4.91/lsof_4.91_src/Configure 2018-09-12 17:48:25.269577168 -0400 +@@ -2943,6 +2943,12 @@ + LSOF_CFGF="$LSOF_CFGF -DHASIPv6" + fi # } + ++ if test -r ${LSOF_INCLUDE}/utmpx.h # { ++ then ++ LSOF_CFGF="$LSOF_CFGF -DHASUTMPX" ++ LSOF_CFGL="$LSOF_CFGL -lutmps -lskarnet" ++ fi # } ++ + # Test for <rpc/rpc.h>. + + if ! test -r ${LSOF_INCLUDE}/rpc/rpc.h # { diff --git a/user/lua-expat/APKBUILD b/user/lua-expat/APKBUILD new file mode 100644 index 000000000..9c8a6713a --- /dev/null +++ b/user/lua-expat/APKBUILD @@ -0,0 +1,32 @@ +# Contributor: Mika Havela <mika.havela@gmail.com> +# Contribtor: Natanael Copa <ncopa@alpinelinux.org> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=lua-expat +_name=expat +pkgver=1.3.0 +pkgrel=0 +pkgdesc="SAX XML parser based on the Expat library" +url="https://matthewwild.co.uk/projects/luaexpat/" +arch="all" +license="MIT" +depends="lua5.3" +makedepends="lua5.3-dev expat-dev" +source="http://matthewwild.co.uk/projects/luaexpat/luaexpat-$pkgver.tar.gz" +builddir="$srcdir/luaexpat-$pkgver" + +build() { + cd "$builddir" + make LUA_V=5.3 +} + +check() { + cd "$builddir" + LUA_CPATH="./src/?.so" lua tests/test.lua +} + +package() { + cd "$builddir" + make LUA_V=5.3 DESTDIR="$pkgdir" install +} + +sha512sums="91884653310e2dc89ade6d1653875ac8607640a21853d3ccb1fd0f833812e41981fad5c40101732ec249104d2c50c9a332208d1e44423b8428065a223c60b4ae luaexpat-1.3.0.tar.gz" diff --git a/user/lua-filesystem/APKBUILD b/user/lua-filesystem/APKBUILD new file mode 100644 index 000000000..e809a654f --- /dev/null +++ b/user/lua-filesystem/APKBUILD @@ -0,0 +1,36 @@ +# Contributor: Natanael Copa <ncopa@alpinelinux.org> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=lua-filesystem +_pkgname=luafilesystem +pkgver=1.7.0.2 +_pkgver=${pkgver//./_} +_rockver=${pkgver%.*}-${pkgver##*.} +pkgrel=0 +pkgdesc="Filesystem functions for Lua" +url="http://keplerproject.github.io/luafilesystem/" +arch="all" +license="MIT" +depends="lua5.3" +makedepends="lua5.3-dev" +source="$_pkgname-$pkgver.tar.gz::https://github.com/keplerproject/$_pkgname/archive/v$_pkgver.tar.gz" +builddir="$srcdir/$_pkgname-$_pkgver" + +build() { + cd "$builddir" + make CFLAGS="$CFLAGS $(pkg-config lua --cflags) -fPIC" +} + +check() { + cd "$builddir" + LUA_CPATH=./src/?.so lua tests/test.lua +} + +package() { + local rockdir="$pkgdir"/usr/lib/luarocks/rocks-5.3/$_rockname/$_rockver + cd "$builddir" + make LUA_LIBDIR="$pkgdir"/$(pkg-config --variable=INSTALL_CMOD lua5.3) install + mkdir -p "$rockdir" + echo 'rock_manifest = {}' > "$rockdir"/rock_manifest +} + +sha512sums="a1d4d077776e57cd878dbcd21656da141ea3686c587b5420a2b039aeaf086b7e7d05d531ee1cc2bbd7d06660d1315b09593e52143f6711f033ce8eecdc550511 luafilesystem-1.7.0.2.tar.gz" diff --git a/user/lua-lgi/APKBUILD b/user/lua-lgi/APKBUILD new file mode 100644 index 000000000..f9b07ca3b --- /dev/null +++ b/user/lua-lgi/APKBUILD @@ -0,0 +1,36 @@ +# Contributor: Natanael Copa <ncopa@alpinelinux.org> +# Maintainer: Dan Theisen <djt@hxx.in> +pkgname=lua-lgi +pkgver=0.9.2 +pkgrel=0 +pkgdesc="Dynamic Lua binding to GObject libraries using GObject-Introspection" +url="https://github.com/pavouk/lgi" +arch="all" +license="MIT" +options="!check" # checks require dbus +depends="" +makedepends="glib-dev gobject-introspection-dev libffi-dev lua5.3-dev" +subpackages="$pkgname-doc" +source="lgi-$pkgver.tar.gz::https://github.com/pavouk/lgi/archive/$pkgver.tar.gz" +builddir="$srcdir"/lgi-$pkgver + +build() { + cd "$builddir" + make PREFIX=/usr LUA_VERSION="5.3" \ + LUA_CFLAGS="$(pkg-config --cflags lua)" +} + +check() { + cd "$builddir" + make check +} + +package() { + cd "$builddir" + make install PREFIX=/usr LUA_VERSION="5.3" DESTDIR="$pkgdir" + + mkdir -p "$pkgdir"/usr/share/doc/lua-lgi + cp -r docs/* samples "$pkgdir"/usr/share/doc/lua-lgi/ +} + +sha512sums="755a96b78530f42da6d4e2664f8e37cb07a356419e7e6448003c3f841c9d98ad18b851715d9eb203ea7eb27b13ec46223fa8a1c90a99fd12960ce85b0a695335 lgi-0.9.2.tar.gz" diff --git a/user/lua-sec/APKBUILD b/user/lua-sec/APKBUILD new file mode 100644 index 000000000..6732105ef --- /dev/null +++ b/user/lua-sec/APKBUILD @@ -0,0 +1,32 @@ +# Contributor: Natanael Copa <ncopa@alpinelinux.org> +# Maintainer: Natanael Copa <ncopa@alpinelinux.org> +pkgname=lua-sec +pkgver=0.7 +pkgrel=0 +pkgdesc="TLS/SSL Support for Lua" +url="https://github.com/brunoos/luasec/wiki" +arch="all" +options="!check" # no tests +license="MIT" +depends="lua5.3 lua-socket" +makedepends="lua5.3-dev openssl-dev" +subpackages="$pkgname-doc" +source="luasec-$pkgver.tar.gz::https://github.com/brunoos/luasec/archive/luasec-$pkgver.tar.gz" +builddir="$srcdir/luasec-luasec-$pkgver" + +build() { + cd "$builddir" + make linux INC_PATH="$(pkg-config --cflags lua)" LD="${CC:-gcc}" +} + +package() { + cd "$builddir" + make \ + LUAPATH="$pkgdir"/usr/share/lua/5.3 \ + LUACPATH="$pkgdir"/usr/lib/lua/5.3 \ + install + mkdir -p "$pkgdir"/usr/share/doc/$pkgname + cp -r samples "$pkgdir"/usr/share/doc/$pkgname/ +} + +sha512sums="6adf5241aa5a0d92c9dd7fc7f7e426969475548f47979ccc28187471b3bad4132c215de6da1f471d21b05c6558d36309264512c9c4ac70a53d6f6e204cac1358 luasec-0.7.tar.gz" diff --git a/user/lua-socket/0001-Create-socket-on-first-sendto-if-family-agnostic-udp.patch b/user/lua-socket/0001-Create-socket-on-first-sendto-if-family-agnostic-udp.patch new file mode 100644 index 000000000..61bae6fbf --- /dev/null +++ b/user/lua-socket/0001-Create-socket-on-first-sendto-if-family-agnostic-udp.patch @@ -0,0 +1,49 @@ +From 3041a808c3797e3c87272d71666e7b2f7c7a9f46 Mon Sep 17 00:00:00 2001 +From: Natanael Copa <ncopa@alpinelinux.org> +Date: Wed, 25 Jan 2017 12:43:29 +0100 +Subject: [PATCH] Create socket on first sendto if family agnostic udp() was + used + +Create socket and set family on first sendto() if udp() was created +without address family. + +Signed-off-by: Natanael Copa <ncopa@alpinelinux.org> +--- + src/udp.c | 21 +++++++++++++++++++++ + 1 file changed, 21 insertions(+) + +diff --git a/src/udp.c b/src/udp.c +index ec97252..605c195 100644 +--- a/src/udp.c ++++ b/src/udp.c +@@ -189,6 +189,27 @@ static int meth_sendto(lua_State *L) { + lua_pushstring(L, gai_strerror(err)); + return 2; + } ++ ++ /* create socket if on first sendto if AF_UNSPEC was set */ ++ if (udp->family == AF_UNSPEC && udp->sock == SOCKET_INVALID) { ++ struct addrinfo *ap; ++ const char *errstr = NULL; ++ for (ap = ai; ap != NULL; ap = ap->ai_next) { ++ errstr = inet_trycreate(&udp->sock, ap->ai_family, SOCK_DGRAM, 0); ++ if (errstr == NULL) { ++ socket_setnonblocking(&udp->sock); ++ udp->family = ap->ai_family; ++ break; ++ } ++ } ++ if (errstr != NULL) { ++ lua_pushnil(L); ++ lua_pushstring(L, errstr); ++ freeaddrinfo(ai); ++ return 2; ++ } ++ } ++ + timeout_markstart(tm); + err = socket_sendto(&udp->sock, data, count, &sent, ai->ai_addr, + (socklen_t) ai->ai_addrlen, tm); +-- +2.11.0 + diff --git a/user/lua-socket/APKBUILD b/user/lua-socket/APKBUILD new file mode 100644 index 000000000..16bfbcf40 --- /dev/null +++ b/user/lua-socket/APKBUILD @@ -0,0 +1,41 @@ +# Contributor: Mika Havela <mika.havela@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=lua-socket +_name=luasocket +pkgver=3.0_rc1_git20160306 +pkgrel=0 +_ver=${pkgver%_git*} +_ver=${_ver/_rc/-rc} +pkgdesc="Networking library for Lua" +url="http://luaforge.net/projects/luasocket/" +arch="all" +license="MIT" +depends="lua5.3" +makedepends="lua5.3-dev" +source="luasocket-$_ver.tar.gz::https://github.com/diegonehab/luasocket/archive/v$_ver.tar.gz + git.patch + lua-cflags.patch + 0001-Create-socket-on-first-sendto-if-family-agnostic-udp.patch" +builddir="$srcdir/$_name-$_ver" + +build() { + cd "$builddir" + make LUAV="" +} + +check() { + cd "$builddir" + mkdir -p src/socket && cp src/socket-$_ver.so src/socket/core.so + mkdir -p src/mime && cp src/mime-1.0.3.so src/mime/core.so + LUA_CPATH=./src/?.so LUA_PATH="./src/?.lua;;" lua test/hello.lua +} + +package() { + cd "$builddir" + make prefix=/usr DESTDIR="$pkgdir" LUAV="5.3" install-unix +} + +sha512sums="f6efce259aaacaa11472911471f8a13b118fe009b8953a82c6aa18b9ec829cd1293180904e56935cb130d36d267e3f27c91db2d78e03f7488f3e100571ed0540 luasocket-3.0-rc1.tar.gz +45c80e488fedc879f0217bc8a654d80da003039f5d1ff21b0dea0eb769151787dbe793e44a3dfd72cb07ff2697eceaf4fc7b55b4634cd170fa71281f19f025a5 git.patch +61c15238a2f116b7239fdbdb8f617c82dbbecd0117c6e8389b12015bf07f3978299a8e8995e93a45a23530c747662b08d161073cdb6a8e07c4f449e45856e8cb lua-cflags.patch +c45a12e17771a1b3b71154b5415421f524cd10b7969b4649a5f37b652cdc826721e117edb8fe64758d3520e59946e2f755b814f72cbb39ff42bf59bbcf9a64e9 0001-Create-socket-on-first-sendto-if-family-agnostic-udp.patch" diff --git a/user/lua-socket/git.patch b/user/lua-socket/git.patch new file mode 100644 index 000000000..d665fc232 --- /dev/null +++ b/user/lua-socket/git.patch @@ -0,0 +1,6609 @@ +diff --git a/doc/http.html b/doc/http.html +index cd41c0d..3b7a8b1 100644 +--- a/doc/http.html ++++ b/doc/http.html +@@ -112,12 +112,15 @@ the HTTP module: + </p> + + <ul> +-<li> <tt>PORT</tt>: default port used for connections; +-<li> <tt>PROXY</tt>: default proxy used for connections; ++<li> <tt>PROXY</tt>: default proxy used for connections; + <li> <tt>TIMEOUT</tt>: sets the timeout for all I/O operations; + <li> <tt>USERAGENT</tt>: default user agent reported to server. + </ul> + ++<p class=note id="post"> ++Note: These constants are global. Changing them will also ++change the behavior other code that might be using LuaSocket. ++</p> + + <!-- http.request ++++++++++++++++++++++++++++++++++++++++++++++++++++++ --> + +diff --git a/doc/mime.html b/doc/mime.html +index ae136fd..8cb3507 100644 +--- a/doc/mime.html ++++ b/doc/mime.html +@@ -72,34 +72,6 @@ local mime = require("mime") + + <h3 id=high>High-level filters</h3> + +-<!-- normalize ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ --> +- +-<p class=name id="normalize"> +-mime.<b>normalize(</b>[marker]<b>)</b> +-</p> +- +-<p class=description> +-Converts most common end-of-line markers to a specific given marker. +-</p> +- +-<p class=parameters> +-<tt>Marker</tt> is the new marker. It defaults to CRLF, the canonic +-end-of-line marker defined by the MIME standard. +-</p> +- +-<p class=return> +-The function returns a filter that performs the conversion. +-</p> +- +-<p class=note> +-Note: There is no perfect solution to this problem. Different end-of-line +-markers are an evil that will probably plague developers forever. +-This function, however, will work perfectly for text created with any of +-the most common end-of-line markers, i.e. the Mac OS (CR), the Unix (LF), +-or the DOS (CRLF) conventions. Even if the data has mixed end-of-line +-markers, the function will still work well, although it doesn't +-guarantee that the number of empty lines will be correct. +-</p> + + <!-- decode +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ --> + +@@ -159,6 +131,35 @@ base64 = ltn12.filter.chain( + ) + </pre> + ++<!-- normalize ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ --> ++ ++<p class=name id="normalize"> ++mime.<b>normalize(</b>[marker]<b>)</b> ++</p> ++ ++<p class=description> ++Converts most common end-of-line markers to a specific given marker. ++</p> ++ ++<p class=parameters> ++<tt>Marker</tt> is the new marker. It defaults to CRLF, the canonic ++end-of-line marker defined by the MIME standard. ++</p> ++ ++<p class=return> ++The function returns a filter that performs the conversion. ++</p> ++ ++<p class=note> ++Note: There is no perfect solution to this problem. Different end-of-line ++markers are an evil that will probably plague developers forever. ++This function, however, will work perfectly for text created with any of ++the most common end-of-line markers, i.e. the Mac OS (CR), the Unix (LF), ++or the DOS (CRLF) conventions. Even if the data has mixed end-of-line ++markers, the function will still work well, although it doesn't ++guarantee that the number of empty lines will be correct. ++</p> ++ + <!-- stuff +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ --> + + <p class=name id="stuff"> +@@ -466,7 +467,7 @@ marker. + <p> + <small> + Last modified by Diego Nehab on <br> +-Thu Apr 20 00:25:44 EDT 2006 ++Fri Mar 4 15:19:17 BRT 2016 + </small> + </p> + </center> +diff --git a/doc/reference.css b/doc/reference.css +index b1dd25d..04e38cf 100644 +--- a/doc/reference.css ++++ b/doc/reference.css +@@ -2,6 +2,7 @@ body { + margin-left: 1em; + margin-right: 1em; + font-family: "Verdana", sans-serif; ++ background: #ffffff; + } + + tt { +diff --git a/doc/reference.html b/doc/reference.html +index e9bb5eb..287dc19 100644 +--- a/doc/reference.html ++++ b/doc/reference.html +@@ -147,6 +147,7 @@ Support, Manual"> + <a href="socket.html#connect">connect</a>, + <a href="socket.html#connect">connect4</a>, + <a href="socket.html#connect">connect6</a>, ++<a href="socket.html#datagramsize">_DATAGRAMSIZE</a>, + <a href="socket.html#debug">_DEBUG</a>, + <a href="dns.html#dns">dns</a>, + <a href="socket.html#gettime">gettime</a>, +@@ -158,11 +159,14 @@ Support, Manual"> + <a href="socket.html#skip">skip</a>, + <a href="socket.html#sleep">sleep</a>, + <a href="socket.html#setsize">_SETSIZE</a>, ++<a href="socket.html#socketinvalid">_SOCKETINVALID</a>, + <a href="socket.html#source">source</a>, + <a href="tcp.html#socket.tcp">tcp</a>, ++<a href="tcp.html#socket.tcp4">tcp4</a>, + <a href="tcp.html#socket.tcp6">tcp6</a>, + <a href="socket.html#try">try</a>, + <a href="udp.html#socket.udp">udp</a>, ++<a href="udp.html#socket.udp4">udp4</a>, + <a href="udp.html#socket.udp6">udp6</a>, + <a href="socket.html#version">_VERSION</a>. + </blockquote> +@@ -183,6 +187,7 @@ Support, Manual"> + <a href="tcp.html#getpeername">getpeername</a>, + <a href="tcp.html#getsockname">getsockname</a>, + <a href="tcp.html#getstats">getstats</a>, ++<a href="tcp.html#gettimeout">gettimeout</a>, + <a href="tcp.html#listen">listen</a>, + <a href="tcp.html#receive">receive</a>, + <a href="tcp.html#send">send</a>, +@@ -203,6 +208,7 @@ Support, Manual"> + <a href="udp.html#getoption">getoption</a>, + <a href="udp.html#getpeername">getpeername</a>, + <a href="udp.html#getsockname">getsockname</a>, ++<a href="udp.html#gettimeout">gettimeout</a>, + <a href="udp.html#receive">receive</a>, + <a href="udp.html#receivefrom">receivefrom</a>, + <a href="udp.html#send">send</a>, +diff --git a/doc/smtp.html b/doc/smtp.html +index bbbff80..600ec37 100644 +--- a/doc/smtp.html ++++ b/doc/smtp.html +@@ -114,6 +114,124 @@ the SMTP module: + <li> <tt>ZONE</tt>: default time zone. + </ul> + ++<!-- message ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ --> ++ ++<p class=name id=message> ++smtp.<b>message(</b>mesgt<b>)</b> ++</p> ++ ++<p class=description> ++Returns a <em>simple</em> ++<a href="http://lua-users.org/wiki/FiltersSourcesAndSinks">LTN12</a> source that sends an SMTP message body, possibly multipart (arbitrarily deep). ++</p> ++ ++<p class=parameters> ++The only parameter of the function is a table describing the message. ++<tt>Mesgt</tt> has the following form (notice the recursive structure): ++</p> ++ ++<blockquote> ++<table summary="Mesgt table structure"> ++<tr><td><tt> ++mesgt = {<br> ++ headers = <i>header-table</i>,<br> ++ body = <i>LTN12 source</i> or <i>string</i> or ++<i>multipart-mesgt</i><br> ++}<br> ++ <br> ++multipart-mesgt = {<br> ++ [preamble = <i>string</i>,]<br> ++ [1] = <i>mesgt</i>,<br> ++ [2] = <i>mesgt</i>,<br> ++ ...<br> ++ [<i>n</i>] = <i>mesgt</i>,<br> ++ [epilogue = <i>string</i>,]<br> ++}<br> ++</tt></td></tr> ++</table> ++</blockquote> ++ ++<p class=parameters> ++For a simple message, all that is needed is a set of <tt>headers</tt> ++and the <tt>body</tt>. The message <tt>body</tt> can be given as a string ++or as a <em>simple</em> ++<a href="http://lua-users.org/wiki/FiltersSourcesAndSinks">LTN12</a> ++source. For multipart messages, the body is a table that ++recursively defines each part as an independent message, plus an optional ++<tt>preamble</tt> and <tt>epilogue</tt>. ++</p> ++ ++<p class=return> ++The function returns a <em>simple</em> ++<a href="http://lua-users.org/wiki/FiltersSourcesAndSinks">LTN12</a> ++source that produces the ++message contents as defined by <tt>mesgt</tt>, chunk by chunk. ++Hopefully, the following ++example will make things clear. When in doubt, refer to the appropriate RFC ++as listed in the introduction. </p> ++ ++<pre class=example> ++-- load the smtp support and its friends ++local smtp = require("socket.smtp") ++local mime = require("mime") ++local ltn12 = require("ltn12") ++ ++-- creates a source to send a message with two parts. The first part is ++-- plain text, the second part is a PNG image, encoded as base64. ++source = smtp.message{ ++ headers = { ++ -- Remember that headers are *ignored* by smtp.send. ++ from = "Sicrano de Oliveira <sicrano@example.com>", ++ to = "Fulano da Silva <fulano@example.com>", ++ subject = "Here is a message with attachments" ++ }, ++ body = { ++ preamble = "If your client doesn't understand attachments, \r\n" .. ++ "it will still display the preamble and the epilogue.\r\n" .. ++ "Preamble will probably appear even in a MIME enabled client.", ++ -- first part: no headers means plain text, us-ascii. ++ -- The mime.eol low-level filter normalizes end-of-line markers. ++ [1] = { ++ body = mime.eol(0, [[ ++ Lines in a message body should always end with CRLF. ++ The smtp module will *NOT* perform translation. However, the ++ send function *DOES* perform SMTP stuffing, whereas the message ++ function does *NOT*. ++ ]]) ++ }, ++ -- second part: headers describe content to be a png image, ++ -- sent under the base64 transfer content encoding. ++ -- notice that nothing happens until the message is actually sent. ++ -- small chunks are loaded into memory right before transmission and ++ -- translation happens on the fly. ++ [2] = { ++ headers = { ++ ["content-type"] = 'image/png; name="image.png"', ++ ["content-disposition"] = 'attachment; filename="image.png"', ++ ["content-description"] = 'a beautiful image', ++ ["content-transfer-encoding"] = "BASE64" ++ }, ++ body = ltn12.source.chain( ++ ltn12.source.file(io.open("image.png", "rb")), ++ ltn12.filter.chain( ++ mime.encode("base64"), ++ mime.wrap() ++ ) ++ ) ++ }, ++ epilogue = "This might also show up, but after the attachments" ++ } ++} ++ ++-- finally send it ++r, e = smtp.send{ ++ from = "<sicrano@example.com>", ++ rcpt = "<fulano@example.com>", ++ source = source, ++} ++</pre> ++ ++ + <!-- send +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ --> + + <p class=name id=send> +@@ -275,123 +393,6 @@ r, e = smtp.send{ + } + </pre> + +-<!-- message ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ --> +- +-<p class=name id=message> +-smtp.<b>message(</b>mesgt<b>)</b> +-</p> +- +-<p class=description> +-Returns a <em>simple</em> +-<a href="http://lua-users.org/wiki/FiltersSourcesAndSinks">LTN12</a> source that sends an SMTP message body, possibly multipart (arbitrarily deep). +-</p> +- +-<p class=parameters> +-The only parameter of the function is a table describing the message. +-<tt>Mesgt</tt> has the following form (notice the recursive structure): +-</p> +- +-<blockquote> +-<table summary="Mesgt table structure"> +-<tr><td><tt> +-mesgt = {<br> +- headers = <i>header-table</i>,<br> +- body = <i>LTN12 source</i> or <i>string</i> or +-<i>multipart-mesgt</i><br> +-}<br> +- <br> +-multipart-mesgt = {<br> +- [preamble = <i>string</i>,]<br> +- [1] = <i>mesgt</i>,<br> +- [2] = <i>mesgt</i>,<br> +- ...<br> +- [<i>n</i>] = <i>mesgt</i>,<br> +- [epilogue = <i>string</i>,]<br> +-}<br> +-</tt></td></tr> +-</table> +-</blockquote> +- +-<p class=parameters> +-For a simple message, all that is needed is a set of <tt>headers</tt> +-and the <tt>body</tt>. The message <tt>body</tt> can be given as a string +-or as a <em>simple</em> +-<a href="http://lua-users.org/wiki/FiltersSourcesAndSinks">LTN12</a> +-source. For multipart messages, the body is a table that +-recursively defines each part as an independent message, plus an optional +-<tt>preamble</tt> and <tt>epilogue</tt>. +-</p> +- +-<p class=return> +-The function returns a <em>simple</em> +-<a href="http://lua-users.org/wiki/FiltersSourcesAndSinks">LTN12</a> +-source that produces the +-message contents as defined by <tt>mesgt</tt>, chunk by chunk. +-Hopefully, the following +-example will make things clear. When in doubt, refer to the appropriate RFC +-as listed in the introduction. </p> +- +-<pre class=example> +--- load the smtp support and its friends +-local smtp = require("socket.smtp") +-local mime = require("mime") +-local ltn12 = require("ltn12") +- +--- creates a source to send a message with two parts. The first part is +--- plain text, the second part is a PNG image, encoded as base64. +-source = smtp.message{ +- headers = { +- -- Remember that headers are *ignored* by smtp.send. +- from = "Sicrano de Oliveira <sicrano@example.com>", +- to = "Fulano da Silva <fulano@example.com>", +- subject = "Here is a message with attachments" +- }, +- body = { +- preamble = "If your client doesn't understand attachments, \r\n" .. +- "it will still display the preamble and the epilogue.\r\n" .. +- "Preamble will probably appear even in a MIME enabled client.", +- -- first part: no headers means plain text, us-ascii. +- -- The mime.eol low-level filter normalizes end-of-line markers. +- [1] = { +- body = mime.eol(0, [[ +- Lines in a message body should always end with CRLF. +- The smtp module will *NOT* perform translation. However, the +- send function *DOES* perform SMTP stuffing, whereas the message +- function does *NOT*. +- ]]) +- }, +- -- second part: headers describe content to be a png image, +- -- sent under the base64 transfer content encoding. +- -- notice that nothing happens until the message is actually sent. +- -- small chunks are loaded into memory right before transmission and +- -- translation happens on the fly. +- [2] = { +- headers = { +- ["content-type"] = 'image/png; name="image.png"', +- ["content-disposition"] = 'attachment; filename="image.png"', +- ["content-description"] = 'a beautiful image', +- ["content-transfer-encoding"] = "BASE64" +- }, +- body = ltn12.source.chain( +- ltn12.source.file(io.open("image.png", "rb")), +- ltn12.filter.chain( +- mime.encode("base64"), +- mime.wrap() +- ) +- ) +- }, +- epilogue = "This might also show up, but after the attachments" +- } +-} +- +--- finally send it +-r, e = smtp.send{ +- from = "<sicrano@example.com>", +- rcpt = "<fulano@example.com>", +- source = source, +-} +-</pre> +- + <!-- footer +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ --> + + <div class=footer> +diff --git a/doc/socket.html b/doc/socket.html +index b9303cb..35f8391 100644 +--- a/doc/socket.html ++++ b/doc/socket.html +@@ -51,6 +51,30 @@ To obtain the <tt>socket</tt> namespace, run: + local socket = require("socket") + </pre> + ++<!-- headers.canonic ++++++++++++++++++++++++++++++++++++++++++++++++++++++ --> ++ ++<p class=name id="headers.canonic"> ++socket.headers.<b>canonic</b></p> ++ ++<p> The <tt>socket.headers.canonic</tt> table ++is used by the HTTP and SMTP modules to translate from ++lowercase field names back into their canonic ++capitalization. When a lowercase field name exists as a key ++in this table, the associated value is substituted in ++whenever the field name is sent out. ++</p> ++ ++<p> ++You can obtain the <tt>headers</tt> namespace if case run-time ++modifications are required by running: ++</p> ++ ++<pre class=example> ++-- loads the headers module ++local headers = require("headers") ++</pre> ++ ++ + <!-- bind ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ --> + + <p class=name id=bind> +@@ -90,7 +114,7 @@ of connect are defined as simple helper functions that restrict the + + <!-- debug ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ --> + +-<p class=name id=debug> ++<p class=name id=debug> + socket.<b>_DEBUG</b> + </p> + +@@ -99,6 +123,19 @@ This constant is set to <tt><b>true</b></tt> if the library was compiled + with debug support. + </p> + ++<!-- datagramsize +++++++++++++++++++++++++++++++++++++++++++++++++++++++ --> ++ ++<p class=name id=debug> ++socket.<b>_DATAGRAMSIZE</b> ++</p> ++ ++<p class=description> ++Default datagram size used by calls to ++<a href="udp.html#receive"<tt>receive</tt></a> and ++<a href="udp.html#receivefrom"><tt>receivefrom</tt></a>. ++(Unless changed in compile time, the value is 8192.) ++</p> ++ + <!-- get time +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ --> + + <p class=name id=gettime> +@@ -106,8 +143,7 @@ socket.<b>gettime()</b> + </p> + + <p class=description> +-Returns the time in seconds, relative to the origin of the +-universe. You should subtract the values returned by this function ++Returns the UNIX time in seconds. You should subtract the values returned by this function + to get meaningful values. + </p> + +@@ -117,29 +153,6 @@ t = socket.gettime() + print(socket.gettime() - t .. " seconds elapsed") + </pre> + +-<!-- socket.headers ++++++++++++++++++++++++++++++++++++++++++++++++++++++ --> +- +-<p class=name id="headers.canonic"> +-socket.headers.<b>canonic</b></p> +- +-<p> The <tt>socket.headers.canonic</tt> table +-is used by the HTTP and SMTP modules to translate from +-lowercase field names back into their canonic +-capitalization. When a lowercase field name exists as a key +-in this table, the associated value is substituted in +-whenever the field name is sent out. +-</p> +- +-<p> +-You can obtain the <tt>headers</tt> namespace if case run-time +-modifications are required by running: +-</p> +- +-<pre class=example> +--- loads the headers module +-local headers = require("headers") +-</pre> +- + <!-- newtry +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ --> + + <p class=name id=newtry> +@@ -155,8 +168,7 @@ is raised. + + <p class=parameters> + <tt>Finalizer</tt> is a function that will be called before +-<tt>try</tt> throws the exception. It will be called +-in <em>protected</em> mode. ++<tt>try</tt> throws the exception. + </p> + + <p class=return> +@@ -204,15 +216,9 @@ to throw exceptions. + </p> + + <p class=return> +-Returns an equivalent function that instead of throwing exceptions, +-returns <tt><b>nil</b></tt> followed by an error message. +-</p> +- +-<p class=note> +-Note: Beware that if your function performs some illegal operation that +-raises an error, the protected function will catch the error and return it +-as a string. This is because the <a href=#try><tt>try</tt></a> function +-uses errors as the mechanism to throw exceptions. ++Returns an equivalent function that instead of throwing exceptions in case of ++a failed <a href=#try><tt>try</tt></a> call, returns <tt><b>nil</b></tt> ++followed by an error message. + </p> + + <!-- select +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ --> +@@ -238,7 +244,9 @@ non-numeric indices) in the arrays will be silently ignored. + + <p class=return> The function returns a list with the sockets ready for + reading, a list with the sockets ready for writing and an error message. +-The error message is "<tt>timeout</tt>" if a timeout condition was met and ++The error message is "<tt>timeout</tt>" if a timeout ++condition was met, "<tt>select failed</tt>" if the call ++to <tt>select</tt> failed, and + <tt><b>nil</b></tt> otherwise. The returned tables are + doubly keyed both by integers and also by the sockets + themselves, to simplify the test if a specific socket has +@@ -246,7 +254,7 @@ changed status. + </p> + + <p class=note> +-<b>Note: </b>: <tt>select</tt> can monitor a limited number ++<b>Note:</b> <tt>select</tt> can monitor a limited number + of sockets, as defined by the constant <tt>socket._SETSIZE</tt>. This + number may be as high as 1024 or as low as 64 by default, + depending on the system. It is usually possible to change this +@@ -276,6 +284,18 @@ it to <tt>select</tt>, it will be ignored. + <b>Using select with non-socket objects</b>: Any object that implements <tt>getfd</tt> and <tt>dirty</tt> can be used with <tt>select</tt>, allowing objects from other libraries to be used within a <tt>socket.select</tt> driven loop. + </p> + ++<!-- setsize ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ --> ++ ++<p class=name id=setsize> ++socket.<b>_SETSIZE</b> ++</p> ++ ++<p class=description> ++The maximum number of sockets that the <a ++href=#select><tt>select</tt></a> function can handle. ++</p> ++ ++ + <!-- sink ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ --> + + <p class=name id=sink> +@@ -383,15 +403,14 @@ side closes the connection. + The function returns a source with the appropriate behavior. + </p> + +-<!-- setsize ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ --> ++<!-- socketinvalid ++++++++++++++++++++++++++++++++++++++++++++++++++++++ --> + +-<p class=name id=setsize> +-socket.<b>_SETSIZE</b> ++<p class=name id=socketinvalid> ++socket.<b>_SOCKETINVALID</b> + </p> + + <p class=description> +-The maximum number of sockets that the <a +-href=#select><tt>select</tt></a> function can handle. ++The OS value for an invalid socket. + </p> + + <!-- try ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ --> +@@ -401,9 +420,9 @@ socket.<b>try(</b>ret<sub>1</sub> [, ret<sub>2</sub> ... ret<sub>N</sub>]<b>)</b + </p> + + <p class=description> +-Throws an exception in case of error. The exception can only be caught +-by the <a href=#protect><tt>protect</tt></a> function. It does not explode +-into an error message. ++Throws an exception in case <tt>ret<sub>1</sub></tt> is falsy, using ++<tt>ret<sub>2</sub></tt> as the error message. The exception is supposed to be caught ++by a <a href=#protect><tt>protect</tt></a>ed function only. + </p> + + <p class=parameters> +@@ -414,7 +433,10 @@ nested with <tt>try</tt>. + + <p class=return> + The function returns <tt>ret</tt><sub>1</sub> to <tt>ret</tt><sub>N</sub> if +-<tt>ret</tt><sub>1</sub> is not <tt><b>nil</b></tt>. Otherwise, it calls <tt>error</tt> passing <tt>ret</tt><sub>2</sub>. ++<tt>ret</tt><sub>1</sub> is not <tt><b>nil</b></tt> or <tt><b>false</b></tt>. ++Otherwise, it calls <tt>error</tt> passing <tt>ret</tt><sub>2</sub> wrapped ++in a table with metatable used by <a href=#protect><tt>protect</tt></a> to ++distinguish exceptions from runtime errors. + </p> + + <pre class=example> +diff --git a/doc/tcp.html b/doc/tcp.html +index 4226d78..c6c6eb2 100644 +--- a/doc/tcp.html ++++ b/doc/tcp.html +@@ -1,10 +1,10 @@ +-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" ++<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" + "http://www.w3.org/TR/html4/strict.dtd"> + <html> + + <head> + <meta name="description" content="LuaSocket: The TCP/IP support"> +-<meta name="keywords" content="Lua, LuaSocket, Socket, TCP, Library, Network, Support"> ++<meta name="keywords" content="Lua, LuaSocket, Socket, TCP, Library, Network, Support"> + <title>LuaSocket: TCP/IP support</title> + <link rel="stylesheet" href="reference.css" type="text/css"> + </head> +@@ -28,7 +28,7 @@ + <a href="index.html#download">download</a> · + <a href="installation.html">installation</a> · + <a href="introduction.html">introduction</a> · +-<a href="reference.html">reference</a> ++<a href="reference.html">reference</a> + </p> + </center> + <hr> +@@ -36,56 +36,11 @@ + + <!-- tcp ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ --> + +-<h2 id="tcp">TCP</h2> +- +-<!-- socket.tcp +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ --> +- +-<p class=name id="socket.tcp"> +-socket.<b>tcp()</b> +-</p> +- +-<p class=description> +-Creates and returns an IPv4 TCP master object. A master object can +-be transformed into a server object with the method +-<a href=#listen><tt>listen</tt></a> (after a call to <a +-href=#bind><tt>bind</tt></a>) or into a client object with +-the method <a href=#connect><tt>connect</tt></a>. The only other +-method supported by a master object is the +-<a href=#close><tt>close</tt></a> method.</p> +- +-<p class=return> +-In case of success, a new master object is returned. In case of error, +-<b><tt>nil</tt></b> is returned, followed by an error message. +-</p> +- +-<!-- socket.tcp6 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ --> +- +-<p class=name id="socket.tcp6"> +-socket.<b>tcp6()</b> +-</p> +- +-<p class=description> +-Creates and returns an IPv6 TCP master object. A master object can +-be transformed into a server object with the method +-<a href=#listen><tt>listen</tt></a> (after a call to <a +-href=#bind><tt>bind</tt></a>) or into a client object with +-the method <a href=#connect><tt>connect</tt></a>. The only other +-method supported by a master object is the +-<a href=#close><tt>close</tt></a> method.</p> +- +-<p class=return> +-In case of success, a new master object is returned. In case of error, +-<b><tt>nil</tt></b> is returned, followed by an error message. +-</p> +- +-<p class=note> +-Note: The TCP object returned will have the option +-"<tt>ipv6-v6only</tt>" set to <tt><b>true</b></tt>. +-</p> ++<h2 id="tcp">TCP</h2> + + <!-- accept +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ --> + +-<p class=name id="accept"> ++<p class=name id="accept"> + server:<b>accept()</b> + </p> + +@@ -95,9 +50,9 @@ object and returns a client object representing that connection. + </p> + + <p class=return> +-If a connection is successfully initiated, a client object is returned. ++If a connection is successfully initiated, a client object is returned. + If a timeout condition is met, the method returns <b><tt>nil</tt></b> +-followed by the error string '<tt>timeout</tt>'. Other errors are ++followed by the error string '<tt>timeout</tt>'. Other errors are + reported by <b><tt>nil</tt></b> followed by a message describing the error. + </p> + +@@ -107,28 +62,28 @@ with a server object in + the <tt>recvt</tt> parameter before a call to <tt>accept</tt> does + <em>not</em> guarantee <tt>accept</tt> will return immediately. Use the <a + href=#settimeout><tt>settimeout</tt></a> method or <tt>accept</tt> +-might block until <em>another</em> client shows up. ++might block until <em>another</em> client shows up. + </p> + + <!-- bind +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ --> + +-<p class=name id="bind"> ++<p class=name id="bind"> + master:<b>bind(</b>address, port<b>)</b> + </p> + + <p class=description> + Binds a master object to <tt>address</tt> and <tt>port</tt> on the +-local host. ++local host. + + <p class=parameters> +-<tt>Address</tt> can be an IP address or a host name. +-<tt>Port</tt> must be an integer number in the range [0..64K). ++<tt>Address</tt> can be an IP address or a host name. ++<tt>Port</tt> must be an integer number in the range [0..64K). + If <tt>address</tt> + is '<tt>*</tt>', the system binds to all local interfaces + using the <tt>INADDR_ANY</tt> constant or +-<tt>IN6ADDR_ANY_INIT</tt>, according to the family. ++<tt>IN6ADDR_ANY_INIT</tt>, according to the family. + If <tt>port</tt> is 0, the system automatically +-chooses an ephemeral port. ++chooses an ephemeral port. + </p> + + <p class=return> +@@ -137,13 +92,13 @@ method returns <b><tt>nil</tt></b> followed by an error message. + </p> + + <p class=note> +-Note: The function <a href=socket.html#bind><tt>socket.bind</tt></a> ++Note: The function <a href=socket.html#bind><tt>socket.bind</tt></a> + is available and is a shortcut for the creation of server sockets. + </p> + + <!-- close ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ --> + +-<p class=name id="close"> ++<p class=name id="close"> + master:<b>close()</b><br> + client:<b>close()</b><br> + server:<b>close()</b> +@@ -154,14 +109,14 @@ Closes a TCP object. The internal socket used by the object is closed + and the local address to which the object was + bound is made available to other applications. No further operations + (except for further calls to the <tt>close</tt> method) are allowed on +-a closed socket. ++a closed socket. + </p> + + <p class=note> + Note: It is important to close all used sockets once they are not + needed, since, in many systems, each socket uses a file descriptor, + which are limited system resources. Garbage-collected objects are +-automatically closed before destruction, though. ++automatically closed before destruction, though. + </p> + + <!-- connect ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ --> +@@ -172,19 +127,19 @@ master:<b>connect(</b>address, port<b>)</b> + + <p class=description> + Attempts to connect a master object to a remote host, transforming it into a +-client object. +-Client objects support methods ++client object. ++Client objects support methods + <a href=#send><tt>send</tt></a>, +-<a href=#receive><tt>receive</tt></a>, +-<a href=#getsockname><tt>getsockname</tt></a>, ++<a href=#receive><tt>receive</tt></a>, ++<a href=#getsockname><tt>getsockname</tt></a>, + <a href=#getpeername><tt>getpeername</tt></a>, +-<a href=#settimeout><tt>settimeout</tt></a>, ++<a href=#settimeout><tt>settimeout</tt></a>, + and <a href=#close><tt>close</tt></a>. + </p> + + <p class=parameters> +-<tt>Address</tt> can be an IP address or a host name. +-<tt>Port</tt> must be an integer number in the range [1..64K). ++<tt>Address</tt> can be an IP address or a host name. ++<tt>Port</tt> must be an integer number in the range [1..64K). + </p> + + <p class=return> +@@ -193,14 +148,14 @@ describing the error. In case of success, the method returns 1. + </p> + + <p class=note> +-Note: The function <a href=socket.html#connect><tt>socket.connect</tt></a> ++Note: The function <a href=socket.html#connect><tt>socket.connect</tt></a> + is available and is a shortcut for the creation of client sockets. + </p> + + <p class=note> +-Note: Starting with LuaSocket 2.0, ++Note: Starting with LuaSocket 2.0, + the <a href=#settimeout><tt>settimeout</tt></a> +-method affects the behavior of <tt>connect</tt>, causing it to return ++method affects the behavior of <tt>connect</tt>, causing it to return + with an error in case of a timeout. If that happens, you can still call <a + href=socket.html#select><tt>socket.select</tt></a> with the socket in the + <tt>sendt</tt> table. The socket will be writable when the connection is +@@ -209,13 +164,88 @@ established. + + <p class=note> + Note: Starting with LuaSocket 3.0, the host name resolution +-depends on whether the socket was created by <a +-href=#socket.tcp><tt>socket.tcp</tt></a> or <a +-href=#socket.tcp6><tt>socket.tcp6</tt></a>. Addresses from +-the appropriate family are tried in succession until the +-first success or until the last failure. ++depends on whether the socket was created by ++<a href=#socket.tcp><tt>socket.tcp</tt></a>, ++<a href=#socket.tcp4><tt>socket.tcp4</tt></a> or ++<a href=#socket.tcp6><tt>socket.tcp6</tt></a>. Addresses from ++the appropriate family (or both) are tried in the order ++returned by the resolver until the ++first success or until the last failure. If the timeout was ++set to zero, only the first address is tried. ++</p> ++ ++<!-- dirty +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ --> ++ ++<p class=name id="dirty"> ++master:<b>dirty()</b><br> ++client:<b>dirty()</b><br> ++server:<b>dirty()</b> ++</p> ++ ++<p class=description> ++Check the read buffer status. ++</p> ++ ++<p class=return> ++Returns <tt>true</tt> if there is any data in the read buffer, <tt>false</tt> otherwise. ++</p> ++ ++<p class=note> ++Note: <b>This is an internal method, use at your own risk.</b> ++</p> ++ ++ ++<!-- getfd +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ --> ++ ++<p class=name id="getfd"> ++master:<b>getfd()</b><br> ++client:<b>getfd()</b><br> ++server:<b>getfd()</b> ++</p> ++ ++<p class=description> ++Returns the underling socket descriptor or handle associated to the object. ++</p> ++ ++<p class=return> ++The descriptor or handle. In case the object has been closed, the return will be -1. ++</p> ++ ++<p class=note> ++Note: <b>This is an internal method. Unlikely to be ++portable. Use at your own risk. </b> ++</p> ++ ++ ++<!-- getoption ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ --> ++ ++<p class=name id="getoption"> ++client:<b>getoption(</b>option)</b><br> ++server:<b>getoption(</b>option)</b> ++</p> ++ ++<p class=description> ++Gets options for the TCP object. ++See <a href=#setoption><tt>setoption</tt></a> for description of the ++option names and values. ++</p> ++ ++<p class=parameters> ++<tt>Option</tt> is a string with the option name. ++<ul> ++ ++<li> '<tt>keepalive</tt>' ++<li> '<tt>linger</tt>' ++<li> '<tt>reuseaddr</tt>' ++<li> '<tt>tcp-nodelay</tt>' ++</ul> ++ ++<p class=return> ++The method returns the option <tt>value</tt> in case of success, or ++<b><tt>nil</tt></b> followed by an error message otherwise. + </p> + ++ + <!-- getpeername ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ --> + + <p class=name id="getpeername"> +@@ -227,10 +257,10 @@ Returns information about the remote side of a connected client object. + </p> + + <p class=return> +-Returns a string with the IP address of the peer, the +-port number that peer is using for the connection, +-and a string with the family ("<tt>inet</tt>" or "<tt>inet6</tt>"). +-In case of error, the method returns <b><tt>nil</tt></b>. ++Returns a string with the IP address of the peer, the ++port number that peer is using for the connection, ++and a string with the family ("<tt>inet</tt>" or "<tt>inet6</tt>"). ++In case of error, the method returns <b><tt>nil</tt></b>. + </p> + + <p class=note> +@@ -246,13 +276,13 @@ server:<b>getsockname()</b> + </p> + + <p class=description> +-Returns the local address information associated to the object. ++Returns the local address information associated to the object. + </p> + + <p class=return> +-The method returns a string with local IP address, a number with +-the local port, +-and a string with the family ("<tt>inet</tt>" or "<tt>inet6</tt>"). ++The method returns a string with local IP address, a number with ++the local port, ++and a string with the family ("<tt>inet</tt>" or "<tt>inet6</tt>"). + In case of error, the method returns <b><tt>nil</tt></b>. + </p> + +@@ -266,32 +296,46 @@ server:<b>getstats()</b><br> + + <p class=description> + Returns accounting information on the socket, useful for throttling +-of bandwidth. ++of bandwidth. + </p> + + <p class=return> + The method returns the number of bytes received, the number of bytes sent, +-and the age of the socket object in seconds. ++and the age of the socket object in seconds. + </p> + ++<!-- gettimeout +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ --> ++ ++<p class=name id="gettimeout"> ++master:<b>gettimeout()</b><br> ++client:<b>gettimeout()</b><br> ++server:<b>gettimeout()</b> ++</p> ++ ++<p class=description> ++Returns the current block timeout followed by the curent ++total timeout. ++</p> ++ ++ + <!-- listen ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ --> + +-<p class=name id="listen"> ++<p class=name id="listen"> + master:<b>listen(</b>backlog<b>)</b> + </p> + + <p class=description> + Specifies the socket is willing to receive connections, transforming the +-object into a server object. Server objects support the +-<a href=#accept><tt>accept</tt></a>, +-<a href=#getsockname><tt>getsockname</tt></a>, +-<a href=#setoption><tt>setoption</tt></a>, +-<a href=#settimeout><tt>settimeout</tt></a>, +-and <a href=#close><tt>close</tt></a> methods. ++object into a server object. Server objects support the ++<a href=#accept><tt>accept</tt></a>, ++<a href=#getsockname><tt>getsockname</tt></a>, ++<a href=#setoption><tt>setoption</tt></a>, ++<a href=#settimeout><tt>settimeout</tt></a>, ++and <a href=#close><tt>close</tt></a> methods. + </p> + + <p class=parameters> +-The parameter <tt>backlog</tt> specifies the number of client ++The parameter <tt>backlog</tt> specifies the number of client + connections that can + be queued waiting for service. If the queue is full and another client + attempts connection, the connection is refused. +@@ -310,11 +354,11 @@ client:<b>receive(</b>[pattern [, prefix]]<b>)</b> + + <p class=description> + Reads data from a client object, according to the specified <em>read +-pattern</em>. Patterns follow the Lua file I/O format, and the difference in performance between all patterns is negligible. ++pattern</em>. Patterns follow the Lua file I/O format, and the difference in performance between all patterns is negligible. + </p> + + <p class=parameters> +-<tt>Pattern</tt> can be any of the following: ++<tt>Pattern</tt> can be any of the following: + </p> + + <ul> +@@ -325,7 +369,7 @@ terminated by a LF character (ASCII 10), optionally preceded by a + CR character (ASCII 13). The CR and LF characters are not included in + the returned line. In fact, <em>all</em> CR characters are + ignored by the pattern. This is the default pattern; +-<li> <tt>number</tt>: causes the method to read a specified <tt>number</tt> ++<li> <tt>number</tt>: causes the method to read a specified <tt>number</tt> + of bytes from the socket. + </ul> + +@@ -347,10 +391,10 @@ closed before the transmission was completed or the string + <p class=note> + <b>Important note</b>: This function was changed <em>severely</em>. It used + to support multiple patterns (but I have never seen this feature used) and +-now it doesn't anymore. Partial results used to be returned in the same ++now it doesn't anymore. Partial results used to be returned in the same + way as successful results. This last feature violated the idea that all + functions should return <tt><b>nil</b></tt> on error. Thus it was changed +-too. ++too. + </p> + + <!-- send +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ --> +@@ -366,7 +410,7 @@ Sends <tt>data</tt> through client object. + <p class=parameters> + <tt>Data</tt> is the string to be sent. The optional arguments + <tt>i</tt> and <tt>j</tt> work exactly like the standard +-<tt>string.sub</tt> Lua function to allow the selection of a ++<tt>string.sub</tt> Lua function to allow the selection of a + substring to be sent. + </p> + +@@ -385,10 +429,10 @@ there was a timeout during the operation. + </p> + + <p class=note> +-Note: Output is <em>not</em> buffered. For small strings, +-it is always better to concatenate them in Lua +-(with the '<tt>..</tt>' operator) and send the result in one call +-instead of calling the method several times. ++Note: Output is <em>not</em> buffered. For small strings, ++it is always better to concatenate them in Lua ++(with the '<tt>..</tt>' operator) and send the result in one call ++instead of calling the method several times. + </p> + + <!-- setoption ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ --> +@@ -400,12 +444,12 @@ server:<b>setoption(</b>option [, value]<b>)</b> + + <p class=description> + Sets options for the TCP object. Options are only needed by low-level or +-time-critical applications. You should only modify an option if you +-are sure you need it. ++time-critical applications. You should only modify an option if you ++are sure you need it. + </p> + + <p class=parameters> +-<tt>Option</tt> is a string with the option name, and <tt>value</tt> ++<tt>Option</tt> is a string with the option name, and <tt>value</tt> + depends on the option being set: + + <ul> +@@ -413,7 +457,7 @@ depends on the option being set: + <li> '<tt>keepalive</tt>': Setting this option to <tt>true</tt> enables + the periodic transmission of messages on a connected socket. Should the + connected party fail to respond to these messages, the connection is +-considered broken and processes using the socket are notified; ++considered broken and processes using the socket are notified; + + <li> '<tt>linger</tt>': Controls the action taken when unsent data are + queued on a socket and a close is performed. The value is a table with a +@@ -424,13 +468,13 @@ it is able to transmit the data or until '<tt>timeout</tt>' has passed. If + '<tt>on</tt>' is <tt>false</tt> and a close is issued, the system will + process the close in a manner that allows the process to continue as + quickly as possible. I do not advise you to set this to anything other than +-zero; ++zero; + + <li> '<tt>reuseaddr</tt>': Setting this option indicates that the rules +-used in validating addresses supplied in a call to ++used in validating addresses supplied in a call to + <a href=#bind><tt>bind</tt></a> should allow reuse of local addresses; + +-<li> '<tt>tcp-nodelay</tt>': Setting this option to <tt>true</tt> ++<li> '<tt>tcp-nodelay</tt>': Setting this option to <tt>true</tt> + disables the Nagle's algorithm for the connection; + + <li> '<tt>ipv6-v6only</tt>': +@@ -447,34 +491,6 @@ followed by an error message otherwise. + Note: The descriptions above come from the man pages. + </p> + +-<!-- getoption ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ --> +- +-<p class=name id="getoption"> +-client:<b>getoption(</b>option)</b><br> +-server:<b>getoption(</b>option)</b> +-</p> +- +-<p class=description> +-Gets options for the TCP object. +-See <a href=#setoption><tt>setoption</tt></a> for description of the +-option names and values. +-</p> +- +-<p class=parameters> +-<tt>Option</tt> is a string with the option name. +-<ul> +- +-<li> '<tt>keepalive</tt>' +-<li> '<tt>linger</tt>' +-<li> '<tt>reuseaddr</tt>' +-<li> '<tt>tcp-nodelay</tt>' +-</ul> +- +-<p class=return> +-The method returns the option <tt>value</tt> in case of success, or +-<b><tt>nil</tt></b> followed by an error message otherwise. +-</p> +- + <!-- setstats +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ --> + + <p class=name id="setstats"> +@@ -485,7 +501,7 @@ server:<b>setstats(</b>received, sent, age<b>)</b><br> + + <p class=description> + Resets accounting information on the socket, useful for throttling +-of bandwidth. ++of bandwidth. + </p> + + <p class=parameters> +@@ -495,7 +511,7 @@ of bandwidth. + </p> + + <p class=return> +-The method returns 1 in case of success and <tt><b>nil</b></tt> otherwise. ++The method returns 1 in case of success and <tt><b>nil</b></tt> otherwise. + </p> + + <!-- settimeout +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ --> +@@ -509,8 +525,8 @@ server:<b>settimeout(</b>value [, mode]<b>)</b> + <p class=description> + Changes the timeout values for the object. By default, + all I/O operations are blocking. That is, any call to the methods +-<a href=#send><tt>send</tt></a>, +-<a href=#receive><tt>receive</tt></a>, and ++<a href=#send><tt>send</tt></a>, ++<a href=#receive><tt>receive</tt></a>, and + <a href=#accept><tt>accept</tt></a> + will block indefinitely, until the operation completes. The + <tt>settimeout</tt> method defines a limit on the amount of time the +@@ -521,7 +537,7 @@ time has elapsed, the affected methods give up and fail with an error code. + <p class=parameters> + The amount of time to wait is specified as the + <tt>value</tt> parameter, in seconds. There are two timeout modes and +-both can be used together for fine tuning: ++both can be used together for fine tuning: + </p> + + <ul> +@@ -532,7 +548,7 @@ default mode;</li> + + <li> '<tt>t</tt>': <em>total</em> timeout. Specifies the upper limit on + the amount of time LuaSocket can block a Lua script before returning from +-a call.</li> ++a call.</li> + </ul> + + <p class=parameters> +@@ -562,7 +578,7 @@ client:<b>shutdown(</b>mode<b>)</b><br> + </p> + + <p class=description> +-Shuts down part of a full-duplex connection. ++Shuts down part of a full-duplex connection. + </p> + + <p class=parameters> +@@ -579,66 +595,107 @@ This is the default mode; + This function returns 1. + </p> + +-<!-- dirty +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ --> ++<!-- setfd +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ --> + +-<p class=name id="dirty"> +-master:<b>dirty()</b><br> +-client:<b>dirty()</b><br> +-server:<b>dirty()</b> ++<p class=name id="setfd"> ++master:<b>setfd(</b>fd<b>)</b><br> ++client:<b>setfd(</b>fd<b>)</b><br> ++server:<b>setfd(</b>fd<b>)</b> + </p> + + <p class=description> +-Check the read buffer status. ++Sets the underling socket descriptor or handle associated to the object. The current one is simply replaced, not closed, and no other change to the object state is made. + </p> + + <p class=return> +-Returns <tt>true</tt> if there is any data in the read buffer, <tt>false</tt> otherwise. ++No return value. + </p> + + <p class=note> +-Note: <b>This is an internal method, any use is unlikely to be portable.</b> ++Note: <b>This is an internal method. Unlikely to be ++portable. Use at your own risk. </b> + </p> + +-<!-- getfd +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ --> ++<!-- socket.tcp +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ --> + +-<p class=name id="getfd"> +-master:<b>getfd()</b><br> +-client:<b>getfd()</b><br> +-server:<b>getfd()</b> ++<p class=name id="socket.tcp"> ++socket.<b>tcp()</b> + </p> + + <p class=description> +-Returns the underling socket descriptor or handle associated to the object. +-</p> ++Creates and returns an TCP master object. A master object can ++be transformed into a server object with the method ++<a href=#listen><tt>listen</tt></a> (after a call to <a ++href=#bind><tt>bind</tt></a>) or into a client object with ++the method <a href=#connect><tt>connect</tt></a>. The only other ++method supported by a master object is the ++<a href=#close><tt>close</tt></a> method.</p> + + <p class=return> +-The descriptor or handle. In case the object has been closed, the return will be -1. ++In case of success, a new master object is returned. In case of error, ++<b><tt>nil</tt></b> is returned, followed by an error message. + </p> + + <p class=note> +-Note: <b>This is an internal method, any use is unlikely to be portable.</b> ++Note: The choice between IPv4 and IPv6 happens during a call to ++<a href=#bind><tt>bind</tt></a> or <a ++href=#bind><tt>connect</tt></a>, depending on the address ++family obtained from the resolver. + </p> + +-<!-- setfd +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ --> ++<p class=note> ++Note: Before the choice between IPv4 and IPv6 happens, ++the internal socket object is invalid and therefore <a ++href=#setoption><tt>setoption</tt></a> will fail. ++</p> + +-<p class=name id="setfd"> +-master:<b>setfd(</b>fd<b>)</b><br> +-client:<b>setfd(</b>fd<b>)</b><br> +-server:<b>setfd(</b>fd<b>)</b> ++<!-- socket.tcp +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ --> ++ ++<p class=name id="socket.tcp4"> ++socket.<b>tcp4()</b> + </p> + + <p class=description> +-Sets the underling socket descriptor or handle associated to the object. The current one is simply replaced, not closed, and no other change to the object state is made. ++Creates and returns an IPv4 TCP master object. A master object can ++be transformed into a server object with the method ++<a href=#listen><tt>listen</tt></a> (after a call to <a ++href=#bind><tt>bind</tt></a>) or into a client object with ++the method <a href=#connect><tt>connect</tt></a>. The only other ++method supported by a master object is the ++<a href=#close><tt>close</tt></a> method.</p> ++ ++<p class=return> ++In case of success, a new master object is returned. In case of error, ++<b><tt>nil</tt></b> is returned, followed by an error message. ++</p> ++ ++<!-- socket.tcp6 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ --> ++ ++<p class=name id="socket.tcp6"> ++socket.<b>tcp6()</b> + </p> + ++<p class=description> ++Creates and returns an IPv6 TCP master object. A master object can ++be transformed into a server object with the method ++<a href=#listen><tt>listen</tt></a> (after a call to <a ++href=#bind><tt>bind</tt></a>) or into a client object with ++the method <a href=#connect><tt>connect</tt></a>. The only other ++method supported by a master object is the ++<a href=#close><tt>close</tt></a> method.</p> ++ + <p class=return> +-No return value. ++In case of success, a new master object is returned. In case of error, ++<b><tt>nil</tt></b> is returned, followed by an error message. + </p> + + <p class=note> +-Note: <b>This is an internal method, any use is unlikely to be portable.</b> ++Note: The TCP object returned will have the option ++"<tt>ipv6-v6only</tt>" set to <tt><b>true</b></tt>. + </p> + ++ ++ + <!-- footer +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ --> + + <div class=footer> +diff --git a/doc/udp.html b/doc/udp.html +index e5b0ad0..4618aad 100644 +--- a/doc/udp.html ++++ b/doc/udp.html +@@ -4,7 +4,7 @@ + + <head> + <meta name="description" content="LuaSocket: The UDP support"> +-<meta name="keywords" content="Lua, LuaSocket, Socket, UDP, Library, Network, Support"> ++<meta name="keywords" content="Lua, LuaSocket, Socket, UDP, Library, Network, Support"> + <title>LuaSocket: UDP support</title> + <link rel="stylesheet" href="reference.css" type="text/css"> + </head> +@@ -28,7 +28,7 @@ + <a href="index.html#download">download</a> · + <a href="installation.html">installation</a> · + <a href="introduction.html">introduction</a> · +-<a href="reference.html">reference</a> ++<a href="reference.html">reference</a> + </p> + </center> + <hr> +@@ -37,74 +37,7 @@ + + <!-- udp ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ --> + +-<h2 id="udp">UDP</h2> +- +-<!-- socket.udp ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ --> +- +-<p class="name" id="socket.udp"> +-socket.<b>udp()</b> +-</p> +- +-<p class="description"> +-Creates and returns an unconnected IPv4 UDP object. +-Unconnected objects support the +-<a href="#sendto"><tt>sendto</tt></a>, +-<a href="#receive"><tt>receive</tt></a>, +-<a href="#receivefrom"><tt>receivefrom</tt></a>, +-<a href="#getoption"><tt>getoption</tt></a>, +-<a href="#getsockname"><tt>getsockname</tt></a>, +-<a href="#setoption"><tt>setoption</tt></a>, +-<a href="#settimeout"><tt>settimeout</tt></a>, +-<a href="#setpeername"><tt>setpeername</tt></a>, +-<a href="#setsockname"><tt>setsockname</tt></a>, and +-<a href="#close"><tt>close</tt></a>. +-The <a href="#setpeername"><tt>setpeername</tt></a> +-is used to connect the object. +-</p> +- +-<p class="return"> +-In case of success, a new unconnected UDP object +-returned. In case of error, <b><tt>nil</tt></b> is returned, followed by +-an error message. +-</p> +- +-<!-- socket.udp ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ --> +- +-<p class="name" id="socket.udp6"> +-socket.<b>udp6()</b> +-</p> +- +-<p class="description"> +-Creates and returns an unconnected IPv6 UDP object. +-Unconnected objects support the +-<a href="#sendto"><tt>sendto</tt></a>, +-<a href="#receive"><tt>receive</tt></a>, +-<a href="#receivefrom"><tt>receivefrom</tt></a>, +-<a href="#getoption"><tt>getoption</tt></a>, +-<a href="#getsockname"><tt>getsockname</tt></a>, +-<a href="#setoption"><tt>setoption</tt></a>, +-<a href="#settimeout"><tt>settimeout</tt></a>, +-<a href="#setpeername"><tt>setpeername</tt></a>, +-<a href="#setsockname"><tt>setsockname</tt></a>, and +-<a href="#close"><tt>close</tt></a>. +-The <a href="#setpeername"><tt>setpeername</tt></a> +-is used to connect the object. +-</p> +- +-<p class="return"> +-In case of success, a new unconnected UDP object +-returned. In case of error, <b><tt>nil</tt></b> is returned, followed by +-an error message. +-</p> +- +-<p class=note> +-Note: The TCP object returned will have the option +-"<tt>ipv6-v6only</tt>" set to <tt><b>true</b></tt>. +-</p> +- +- +- +-<!-- close +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ --> ++<h2 id="udp">UDP</h2> + + <!-- close +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ --> + +@@ -129,6 +62,40 @@ Garbage-collected objects are automatically closed before + destruction, though. + </p> + ++<!-- getoption +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ --> ++ ++<p class="name" id="getoption"> ++connected:<b>getoption()</b><br> ++unconnected:<b>getoption()</b> ++</p> ++ ++<p class="description"> ++Gets an option value from the UDP object. ++See <a href=#setoption><tt>setoption</tt></a> for ++description of the option names and values. ++</p> ++ ++<p class="parameters"><tt>Option</tt> is a string with the option name. ++<ul> ++<li> '<tt>dontroute</tt>' ++<li> '<tt>broadcast</tt>' ++<li> '<tt>reuseaddr</tt>' ++<li> '<tt>reuseport</tt>' ++<li> '<tt>ip-multicast-loop</tt>' ++<li> '<tt>ipv6-v6only</tt>' ++<li> '<tt>ip-multicast-if</tt>' ++<li> '<tt>ip-multicast-ttl</tt>' ++<li> '<tt>ip-add-membership</tt>' ++<li> '<tt>ip-drop-membership</tt>' ++</ul> ++</p> ++ ++<p class=return> ++The method returns the option <tt>value</tt> in case of ++success, or ++<b><tt>nil</tt></b> followed by an error message otherwise. ++</p> ++ + <!-- getpeername +++++++++++++++++++++++++++++++++++++++++++++++++++++++ --> + + <p class="name" id="getpeername"> +@@ -142,10 +109,10 @@ associated with a connected UDP object. + + + <p class=return> +-Returns a string with the IP address of the peer, the +-port number that peer is using for the connection, +-and a string with the family ("<tt>inet</tt>" or "<tt>inet6</tt>"). +-In case of error, the method returns <b><tt>nil</tt></b>. ++Returns a string with the IP address of the peer, the ++port number that peer is using for the connection, ++and a string with the family ("<tt>inet</tt>" or "<tt>inet6</tt>"). ++In case of error, the method returns <b><tt>nil</tt></b>. + </p> + + <p class="note"> +@@ -165,9 +132,9 @@ Returns the local address information associated to the object. + + + <p class=return> +-The method returns a string with local IP address, a number with +-the local port, +-and a string with the family ("<tt>inet</tt>" or "<tt>inet6</tt>"). ++The method returns a string with local IP address, a number with ++the local port, ++and a string with the family ("<tt>inet</tt>" or "<tt>inet6</tt>"). + In case of error, the method returns <b><tt>nil</tt></b>. + </p> + +@@ -179,6 +146,18 @@ first time (in which case it is bound to an ephemeral port and the + wild-card address). + </p> + ++<!-- gettimeout +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ --> ++ ++<p class=name id="gettimeout"> ++connected:<b>settimeout(</b>value<b>)</b><br> ++unconnected:<b>settimeout(</b>value<b>)</b> ++</p> ++ ++<p class=description> ++Returns the current timeout value. ++</p> ++ ++ + <!-- receive +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ --> + + <p class="name" id="receive"> +@@ -199,9 +178,12 @@ specifies the maximum size of the datagram to be retrieved. If + there are more than <tt>size</tt> bytes available in the datagram, + the excess bytes are discarded. If there are less then + <tt>size</tt> bytes available in the current datagram, the +-available bytes are returned. If <tt>size</tt> is omitted, the +-maximum datagram size is used (which is currently limited by the +-implementation to 8192 bytes). ++available bytes are returned. ++If <tt>size</tt> is omitted, the ++compile-time constant <a ++href=socket.html#datagramsize><tt>socket._DATAGRAMSIZE</tt></a> is used ++(it defaults to 8192 bytes). Larger sizes will cause a ++temporary buffer to be allocated for the operation. + </p> + + <p class="return"> +@@ -217,46 +199,12 @@ unconnected:<b>receivefrom(</b>[size]<b>)</b> + </p> + + <p class="description"> +-Works exactly as the <a href="#receive"><tt>receive</tt></a> ++Works exactly as the <a href="#receive"><tt>receive</tt></a> + method, except it returns the IP + address and port as extra return values (and is therefore slightly less + efficient). + </p> + +-<!-- getoption +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ --> +- +-<p class="name" id="getoption"> +-connected:<b>getoption()</b><br> +-unconnected:<b>getoption()</b> +-</p> +- +-<p class="description"> +-Gets an option value from the UDP object. +-See <a href=#setoption><tt>setoption</tt></a> for +-description of the option names and values. +-</p> +- +-<p class="parameters"><tt>Option</tt> is a string with the option name. +-<ul> +-<li> '<tt>dontroute</tt>' +-<li> '<tt>broadcast</tt>' +-<li> '<tt>reuseaddr</tt>' +-<li> '<tt>reuseport</tt>' +-<li> '<tt>ip-multicast-loop</tt>' +-<li> '<tt>ipv6-v6only</tt>' +-<li> '<tt>ip-multicast-if</tt>' +-<li> '<tt>ip-multicast-ttl</tt>' +-<li> '<tt>ip-add-membership</tt>' +-<li> '<tt>ip-drop-membership</tt>' +-</ul> +-</p> +- +-<p class=return> +-The method returns the option <tt>value</tt> in case of +-success, or +-<b><tt>nil</tt></b> followed by an error message otherwise. +-</p> +- + <!-- send ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ --> + + <p class="name" id="send"> +@@ -268,7 +216,7 @@ Sends a datagram to the UDP peer of a connected object. + </p> + + <p class="parameters"> +-<tt>Datagram</tt> is a string with the datagram contents. ++<tt>Datagram</tt> is a string with the datagram contents. + The maximum datagram size for UDP is 64K minus IP layer overhead. + However datagrams larger than the link layer packet size will be + fragmented, which may deteriorate performance and/or reliability. +@@ -298,11 +246,11 @@ Sends a datagram to the specified IP address and port number. + + <p class="parameters"> + <tt>Datagram</tt> is a string with the +-datagram contents. ++datagram contents. + The maximum datagram size for UDP is 64K minus IP layer overhead. + However datagrams larger than the link layer packet size will be + fragmented, which may deteriorate performance and/or reliability. +-<tt>Ip</tt> is the IP address of the recipient. ++<tt>Ip</tt> is the IP address of the recipient. + Host names are <em>not</em> allowed for performance reasons. + + <tt>Port</tt> is the port number at the recipient. +@@ -320,6 +268,75 @@ refuses to send a message to the specified address (i.e. no + interface accepts the address). + </p> + ++<!-- setoption +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ --> ++ ++<p class="name" id="setoption"> ++connected:<b>setoption(</b>option [, value]<b>)</b><br> ++unconnected:<b>setoption(</b>option [, value]<b>)</b> ++</p> ++ ++<p class="description"> ++Sets options for the UDP object. Options are ++only needed by low-level or time-critical applications. You should ++only modify an option if you are sure you need it.</p> ++<p class="parameters"><tt>Option</tt> is a string with the option ++name, and <tt>value</tt> depends on the option being set: ++</p> ++ ++<ul> ++<li> '<tt>dontroute</tt>': Indicates that outgoing ++messages should bypass the standard routing facilities. ++Receives a boolean value; ++<li> '<tt>broadcast</tt>': Requests permission to send ++broadcast datagrams on the socket. ++Receives a boolean value; ++<li> '<tt>reuseaddr</tt>': Indicates that the rules used in ++validating addresses supplied in a <tt>bind()</tt> call ++should allow reuse of local addresses. ++Receives a boolean value; ++<li> '<tt>reuseport</tt>': Allows completely duplicate ++bindings by multiple processes if they all set ++'<tt>reuseport</tt>' before binding the port. ++Receives a boolean value; ++<li> '<tt>ip-multicast-loop</tt>': ++Specifies whether or not a copy of an outgoing multicast ++datagram is delivered to the sending host as long as it is a ++member of the multicast group. ++Receives a boolean value; ++<li> '<tt>ipv6-v6only</tt>': ++Specifies whether to restrict <tt>inet6</tt> sockets to ++sending and receiving only IPv6 packets. ++Receive a boolean value; ++<li> '<tt>ip-multicast-if</tt>': ++Sets the interface over which outgoing multicast datagrams ++are sent. ++Receives an IP address; ++<li> '<tt>ip-multicast-ttl</tt>': ++Sets the Time To Live in the IP header for outgoing ++multicast datagrams. ++Receives a number; ++<li> '<tt>ip-add-membership</tt>': ++Joins the multicast group specified. ++Receives a table with fields ++<tt>multiaddr</tt> and <tt>interface</tt>, each containing an ++IP address; ++<li> '<tt>ip-drop-membership</tt>': Leaves the multicast ++group specified. ++Receives a table with fields ++<tt>multiaddr</tt> and <tt>interface</tt>, each containing an ++IP address. ++</ul> ++ ++<p class="return"> ++The method returns 1 in case of success, or ++<b><tt>nil</tt></b> followed by an error message otherwise. ++</p> ++ ++<p class=note> ++Note: The descriptions above come from the man pages. ++</p> ++ ++ + <!-- setpeername +++++++++++++++++++++++++++++++++++++++++++++++++++++++ --> + + <p class="name" id="setpeername"> +@@ -337,9 +354,9 @@ object or vice versa. + For connected objects, outgoing datagrams + will be sent to the specified peer, and datagrams received from + other peers will be discarded by the OS. Connected UDP objects must +-use the <a href="#send"><tt>send</tt></a> and +-<a href="#receive"><tt>receive</tt></a> methods instead of +-<a href="#sendto"><tt>sendto</tt></a> and ++use the <a href="#send"><tt>send</tt></a> and ++<a href="#receive"><tt>receive</tt></a> methods instead of ++<a href="#sendto"><tt>sendto</tt></a> and + <a href="#receivefrom"><tt>receivefrom</tt></a>. + </p> + +@@ -406,74 +423,6 @@ system or explicitly by <tt>setsockname</tt>, it cannot be + changed. + </p> + +-<!-- setoption +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ --> +- +-<p class="name" id="setoption"> +-connected:<b>setoption(</b>option [, value]<b>)</b><br> +-unconnected:<b>setoption(</b>option [, value]<b>)</b> +-</p> +- +-<p class="description"> +-Sets options for the UDP object. Options are +-only needed by low-level or time-critical applications. You should +-only modify an option if you are sure you need it.</p> +-<p class="parameters"><tt>Option</tt> is a string with the option +-name, and <tt>value</tt> depends on the option being set: +-</p> +- +-<ul> +-<li> '<tt>dontroute</tt>': Indicates that outgoing +-messages should bypass the standard routing facilities. +-Receives a boolean value; +-<li> '<tt>broadcast</tt>': Requests permission to send +-broadcast datagrams on the socket. +-Receives a boolean value; +-<li> '<tt>reuseaddr</tt>': Indicates that the rules used in +-validating addresses supplied in a <tt>bind()</tt> call +-should allow reuse of local addresses. +-Receives a boolean value; +-<li> '<tt>reuseport</tt>': Allows completely duplicate +-bindings by multiple processes if they all set +-'<tt>reuseport</tt>' before binding the port. +-Receives a boolean value; +-<li> '<tt>ip-multicast-loop</tt>': +-Specifies whether or not a copy of an outgoing multicast +-datagram is delivered to the sending host as long as it is a +-member of the multicast group. +-Receives a boolean value; +-<li> '<tt>ipv6-v6only</tt>': +-Specifies whether to restrict <tt>inet6</tt> sockets to +-sending and receiving only IPv6 packets. +-Receive a boolean value; +-<li> '<tt>ip-multicast-if</tt>': +-Sets the interface over which outgoing multicast datagrams +-are sent. +-Receives an IP address; +-<li> '<tt>ip-multicast-ttl</tt>': +-Sets the Time To Live in the IP header for outgoing +-multicast datagrams. +-Receives a number; +-<li> '<tt>ip-add-membership</tt>': +-Joins the multicast group specified. +-Receives a table with fields +-<tt>multiaddr</tt> and <tt>interface</tt>, each containing an +-IP address; +-<li> '<tt>ip-drop-membership</tt>': Leaves the multicast +-group specified. +-Receives a table with fields +-<tt>multiaddr</tt> and <tt>interface</tt>, each containing an +-IP address. +-</ul> +- +-<p class="return"> +-The method returns 1 in case of success, or +-<b><tt>nil</tt></b> followed by an error message otherwise. +-</p> +- +-<p class=note> +-Note: The descriptions above come from the man pages. +-</p> +- + <!-- settimeout +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ --> + + <p class="name" id="settimeout"> +@@ -482,14 +431,14 @@ unconnected:<b>settimeout(</b>value<b>)</b> + </p> + + <p class="description"> +-Changes the timeout values for the object. By default, the +-<a href="#receive"><tt>receive</tt></a> and +-<a href="#receivefrom"><tt>receivefrom</tt></a> ++Changes the timeout values for the object. By default, the ++<a href="#receive"><tt>receive</tt></a> and ++<a href="#receivefrom"><tt>receivefrom</tt></a> + operations are blocking. That is, any call to the methods will block + indefinitely, until data arrives. The <tt>settimeout</tt> function defines + a limit on the amount of time the functions can block. When a timeout is + set and the specified amount of time has elapsed, the affected methods +-give up and fail with an error code. ++give up and fail with an error code. + </p> + + <p class="parameters"> +@@ -514,6 +463,114 @@ all other method names already contained verbs making their + imperative nature obvious. + </p> + ++<!-- socket.udp ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ --> ++ ++<p class="name" id="socket.udp"> ++socket.<b>udp()</b> ++</p> ++ ++<p class="description"> ++Creates and returns an unconnected UDP object. ++Unconnected objects support the ++<a href="#sendto"><tt>sendto</tt></a>, ++<a href="#receive"><tt>receive</tt></a>, ++<a href="#receivefrom"><tt>receivefrom</tt></a>, ++<a href="#getoption"><tt>getoption</tt></a>, ++<a href="#getsockname"><tt>getsockname</tt></a>, ++<a href="#setoption"><tt>setoption</tt></a>, ++<a href="#settimeout"><tt>settimeout</tt></a>, ++<a href="#setpeername"><tt>setpeername</tt></a>, ++<a href="#setsockname"><tt>setsockname</tt></a>, and ++<a href="#close"><tt>close</tt></a>. ++The <a href="#setpeername"><tt>setpeername</tt></a> ++is used to connect the object. ++</p> ++ ++<p class="return"> ++In case of success, a new unconnected UDP object ++returned. In case of error, <b><tt>nil</tt></b> is returned, followed by ++an error message. ++</p> ++ ++<p class=note> ++Note: The choice between IPv4 and IPv6 happens during a call to ++<a href=#sendto><tt>sendto</tt></a>, <a ++href=#setpeername><tt>setpeername</tt></a>, or <a ++href=#setsockname><tt>sockname</tt></a>, depending on the address ++family obtained from the resolver. ++</p> ++ ++<p class=note> ++Note: Before the choice between IPv4 and IPv6 happens, ++the internal socket object is invalid and therefore <a ++href=#setoption><tt>setoption</tt></a> will fail. ++</p> ++ ++<!-- socket.udp4 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ --> ++ ++<p class="name" id="socket.udp"> ++socket.<b>udp4()</b> ++</p> ++ ++<p class="description"> ++Creates and returns an unconnected IPv4 UDP object. ++Unconnected objects support the ++<a href="#sendto"><tt>sendto</tt></a>, ++<a href="#receive"><tt>receive</tt></a>, ++<a href="#receivefrom"><tt>receivefrom</tt></a>, ++<a href="#getoption"><tt>getoption</tt></a>, ++<a href="#getsockname"><tt>getsockname</tt></a>, ++<a href="#setoption"><tt>setoption</tt></a>, ++<a href="#settimeout"><tt>settimeout</tt></a>, ++<a href="#setpeername"><tt>setpeername</tt></a>, ++<a href="#setsockname"><tt>setsockname</tt></a>, and ++<a href="#close"><tt>close</tt></a>. ++The <a href="#setpeername"><tt>setpeername</tt></a> ++is used to connect the object. ++</p> ++ ++<p class="return"> ++In case of success, a new unconnected UDP object ++returned. In case of error, <b><tt>nil</tt></b> is returned, followed by ++an error message. ++</p> ++ ++<!-- socket.udp ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ --> ++ ++<p class="name" id="socket.udp6"> ++socket.<b>udp6()</b> ++</p> ++ ++<p class="description"> ++Creates and returns an unconnected IPv6 UDP object. ++Unconnected objects support the ++<a href="#sendto"><tt>sendto</tt></a>, ++<a href="#receive"><tt>receive</tt></a>, ++<a href="#receivefrom"><tt>receivefrom</tt></a>, ++<a href="#getoption"><tt>getoption</tt></a>, ++<a href="#getsockname"><tt>getsockname</tt></a>, ++<a href="#setoption"><tt>setoption</tt></a>, ++<a href="#settimeout"><tt>settimeout</tt></a>, ++<a href="#setpeername"><tt>setpeername</tt></a>, ++<a href="#setsockname"><tt>setsockname</tt></a>, and ++<a href="#close"><tt>close</tt></a>. ++The <a href="#setpeername"><tt>setpeername</tt></a> ++is used to connect the object. ++</p> ++ ++<p class="return"> ++In case of success, a new unconnected UDP object ++returned. In case of error, <b><tt>nil</tt></b> is returned, followed by ++an error message. ++</p> ++ ++<p class=note> ++Note: The TCP object returned will have the option ++"<tt>ipv6-v6only</tt>" set to <tt><b>true</b></tt>. ++</p> ++ ++ ++ + <!-- footer ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ --> + + <div class=footer> +@@ -524,7 +581,7 @@ imperative nature obvious. + <a href="index.html#download">download</a> · + <a href="installation.html">installation</a> · + <a href="introduction.html">introduction</a> · +-<a href="reference.html">reference</a> ++<a href="reference.html">reference</a> + </p> + <p> + <small> +diff --git a/etc/dispatch.lua b/etc/dispatch.lua +index cab7f59..2485415 100644 +--- a/etc/dispatch.lua ++++ b/etc/dispatch.lua +@@ -5,6 +5,7 @@ + ----------------------------------------------------------------------------- + local base = _G + local table = require("table") ++local string = require("string") + local socket = require("socket") + local coroutine = require("coroutine") + module("dispatch") +@@ -43,26 +44,32 @@ end + ----------------------------------------------------------------------------- + -- Mega hack. Don't try to do this at home. + ----------------------------------------------------------------------------- +--- we can't yield across calls to protect, so we rewrite it with coxpcall ++-- we can't yield across calls to protect on Lua 5.1, so we rewrite it with ++-- coroutines + -- make sure you don't require any module that uses socket.protect before + -- loading our hack +-function socket.protect(f) +- return function(...) +- local co = coroutine.create(f) +- while true do +- local results = {coroutine.resume(co, ...)} +- local status = table.remove(results, 1) +- if not status then +- if base.type(results[1]) == 'table' then +- return nil, results[1][1] +- else base.error(results[1]) end +- end +- if coroutine.status(co) == "suspended" then +- arg = {coroutine.yield(base.unpack(results))} ++if string.sub(base._VERSION, -3) == "5.1" then ++ local function _protect(co, status, ...) ++ if not status then ++ local msg = ... ++ if base.type(msg) == 'table' then ++ return nil, msg[1] + else +- return base.unpack(results) ++ base.error(msg, 0) + end + end ++ if coroutine.status(co) == "suspended" then ++ return _protect(co, coroutine.resume(co, coroutine.yield(...))) ++ else ++ return ... ++ end ++ end ++ ++ function socket.protect(f) ++ return function(...) ++ local co = coroutine.create(f) ++ return _protect(co, coroutine.resume(co, ...)) ++ end + end + end + +diff --git a/linux.cmd b/linux.cmd +index bd59adc..6c6636b 100644 +--- a/linux.cmd ++++ b/linux.cmd +@@ -1 +1 @@ +-make PLAT=linux DEBUG=DEBUG LUAINC_linux_base=/home/diego/build/linux/include LUAPREFIX_linux=/home/diego/build/linux ++make PLAT=linux DEBUG=DEBUG LUAINC_linux_base=/home/diego/build/ubuntu/include LUAPREFIX_linux=/home/diego/build/ubuntu +diff --git a/luasocket-scm-0.rockspec b/luasocket-scm-0.rockspec +index f86567b..352a497 100644 +--- a/luasocket-scm-0.rockspec ++++ b/luasocket-scm-0.rockspec +@@ -50,13 +50,12 @@ local function make_plat(plat) + } + local modules = { + ["socket.core"] = { +- sources = { "src/luasocket.c", "src/timeout.c", "src/buffer.c", "src/io.c", "src/auxiliar.c", +- "src/options.c", "src/inet.c", "src/except.c", "src/select.c", "src/tcp.c", "src/udp.c" }, ++ sources = { "src/luasocket.c", "src/timeout.c", "src/buffer.c", "src/io.c", "src/auxiliar.c", "src/options.c", "src/inet.c", "src/except.c", "src/select.c", "src/tcp.c", "src/udp.c", "src/compat.c" }, + defines = defines[plat], + incdir = "/src" + }, +- ["mime.core"] = { +- sources = { "src/mime.c" }, ++ ["mime.core"] = { ++ sources = { "src/mime.c", "src/compat.c" }, + defines = defines[plat], + incdir = "/src" + }, +@@ -73,14 +72,12 @@ local function make_plat(plat) + if plat == "unix" or plat == "macosx" then + modules["socket.core"].sources[#modules["socket.core"].sources+1] = "src/usocket.c" + modules["socket.unix"] = { +- sources = { "src/buffer.c", "src/auxiliar.c", "src/options.c", "src/timeout.c", "src/io.c", +- "src/usocket.c", "src/unix.c" }, ++ sources = { "src/buffer.c", "src/auxiliar.c", "src/options.c", "src/timeout.c", "src/io.c", "src/usocket.c", "src/unix.c" }, + defines = defines[plat], + incdir = "/src" + } + modules["socket.serial"] = { +- sources = { "src/buffer.c", "src/auxiliar.c", "src/options.c", "src/timeout.c", +- "src/io.c", "src/usocket.c", "src/serial.c" }, ++ sources = { "src/buffer.c", "src/auxiliar.c", "src/options.c", "src/timeout.c", "src/io.c", "src/usocket.c", "src/serial.c" }, + defines = defines[plat], + incdir = "/src" + } +diff --git a/makefile b/makefile +index 04cd894..cc15b4e 100644 +--- a/makefile ++++ b/makefile +@@ -5,12 +5,12 @@ + # Targets: + # install install system independent support + # install-unix also install unix-only support +-# install-both install for both lua5.1 and lua5.2 +-# install-both-unix also install unix-only ++# install-both install for lua51 lua52 lua53 ++# install-both-unix also install unix-only + # print print the build settings + + PLAT?= linux +-PLATS= macosx linux win32 mingw ++PLATS= macosx linux win32 mingw freebsd solaris + + all: $(PLAT) + +@@ -24,20 +24,26 @@ test: + lua test/hello.lua + + install-both: +- $(MAKE) clean ++ $(MAKE) clean + @cd src; $(MAKE) $(PLAT) LUAV=5.1 + @cd src; $(MAKE) install LUAV=5.1 +- $(MAKE) clean ++ $(MAKE) clean + @cd src; $(MAKE) $(PLAT) LUAV=5.2 + @cd src; $(MAKE) install LUAV=5.2 ++ $(MAKE) clean ++ @cd src; $(MAKE) $(PLAT) LUAV=5.3 ++ @cd src; $(MAKE) install LUAV=5.3 + + install-both-unix: +- $(MAKE) clean ++ $(MAKE) clean + @cd src; $(MAKE) $(PLAT) LUAV=5.1 + @cd src; $(MAKE) install-unix LUAV=5.1 +- $(MAKE) clean ++ $(MAKE) clean + @cd src; $(MAKE) $(PLAT) LUAV=5.2 + @cd src; $(MAKE) install-unix LUAV=5.2 ++ $(MAKE) clean ++ @cd src; $(MAKE) $(PLAT) LUAV=5.3 ++ @cd src; $(MAKE) install-unix LUAV=5.3 + + .PHONY: test + +diff --git a/src/auxiliar.c b/src/auxiliar.c +index de625e9..18fa8e4 100644 +--- a/src/auxiliar.c ++++ b/src/auxiliar.c +@@ -26,7 +26,7 @@ void auxiliar_newclass(lua_State *L, const char *classname, luaL_Reg *func) { + luaL_newmetatable(L, classname); /* mt */ + /* create __index table to place methods */ + lua_pushstring(L, "__index"); /* mt,"__index" */ +- lua_newtable(L); /* mt,"__index",it */ ++ lua_newtable(L); /* mt,"__index",it */ + /* put class name into class metatable */ + lua_pushstring(L, "class"); /* mt,"__index",it,"class" */ + lua_pushstring(L, classname); /* mt,"__index",it,"class",classname */ +@@ -84,7 +84,7 @@ int auxiliar_checkboolean(lua_State *L, int objidx) { + } + + /*-------------------------------------------------------------------------*\ +-* Return userdata pointer if object belongs to a given class, abort with ++* Return userdata pointer if object belongs to a given class, abort with + * error otherwise + \*-------------------------------------------------------------------------*/ + void *auxiliar_checkclass(lua_State *L, const char *classname, int objidx) { +@@ -98,7 +98,7 @@ void *auxiliar_checkclass(lua_State *L, const char *classname, int objidx) { + } + + /*-------------------------------------------------------------------------*\ +-* Return userdata pointer if object belongs to a given group, abort with ++* Return userdata pointer if object belongs to a given group, abort with + * error otherwise + \*-------------------------------------------------------------------------*/ + void *auxiliar_checkgroup(lua_State *L, const char *groupname, int objidx) { +@@ -121,7 +121,7 @@ void auxiliar_setclass(lua_State *L, const char *classname, int objidx) { + } + + /*-------------------------------------------------------------------------*\ +-* Get a userdata pointer if object belongs to a given group. Return NULL ++* Get a userdata pointer if object belongs to a given group. Return NULL + * otherwise + \*-------------------------------------------------------------------------*/ + void *auxiliar_getgroupudata(lua_State *L, const char *groupname, int objidx) { +@@ -139,7 +139,7 @@ void *auxiliar_getgroupudata(lua_State *L, const char *groupname, int objidx) { + } + + /*-------------------------------------------------------------------------*\ +-* Get a userdata pointer if object belongs to a given class. Return NULL ++* Get a userdata pointer if object belongs to a given class. Return NULL + * otherwise + \*-------------------------------------------------------------------------*/ + void *auxiliar_getclassudata(lua_State *L, const char *classname, int objidx) { +@@ -151,7 +151,7 @@ void *auxiliar_getclassudata(lua_State *L, const char *classname, int objidx) { + * Used to be part of lauxlib in Lua 5.1, was dropped from 5.2. + \*-------------------------------------------------------------------------*/ + int auxiliar_typeerror (lua_State *L, int narg, const char *tname) { +- const char *msg = lua_pushfstring(L, "%s expected, got %s", tname, ++ const char *msg = lua_pushfstring(L, "%s expected, got %s", tname, + luaL_typename(L, narg)); + return luaL_argerror(L, narg, msg); + } +diff --git a/src/auxiliar.h b/src/auxiliar.h +index ea99013..65511d4 100644 +--- a/src/auxiliar.h ++++ b/src/auxiliar.h +@@ -4,12 +4,12 @@ + * Auxiliar routines for class hierarchy manipulation + * LuaSocket toolkit (but completely independent of other LuaSocket modules) + * +-* A LuaSocket class is a name associated with Lua metatables. A LuaSocket +-* group is a name associated with a class. A class can belong to any number ++* A LuaSocket class is a name associated with Lua metatables. A LuaSocket ++* group is a name associated with a class. A class can belong to any number + * of groups. This module provides the functionality to: + * +-* - create new classes +-* - add classes to groups ++* - create new classes ++* - add classes to groups + * - set the class of objects + * - check if an object belongs to a given class or group + * - get the userdata associated to objects +@@ -26,11 +26,12 @@ + * "class" with the class name. + * + * The mapping from class name to the corresponding metatable and the +-* reverse mapping are done using lauxlib. ++* reverse mapping are done using lauxlib. + \*=========================================================================*/ + + #include "lua.h" + #include "lauxlib.h" ++#include "compat.h" + + int auxiliar_open(lua_State *L); + void auxiliar_newclass(lua_State *L, const char *classname, luaL_Reg *func); +diff --git a/src/buffer.c b/src/buffer.c +index 4ef4e8e..fff1634 100644 +--- a/src/buffer.c ++++ b/src/buffer.c +@@ -4,6 +4,7 @@ + \*=========================================================================*/ + #include "lua.h" + #include "lauxlib.h" ++#include "compat.h" + + #include "buffer.h" + +@@ -37,7 +38,7 @@ int buffer_open(lua_State *L) { + } + + /*-------------------------------------------------------------------------*\ +-* Initializes C structure ++* Initializes C structure + \*-------------------------------------------------------------------------*/ + void buffer_init(p_buffer buf, p_io io, p_timeout tm) { + buf->first = buf->last = 0; +@@ -61,8 +62,8 @@ int buffer_meth_getstats(lua_State *L, p_buffer buf) { + * object:setstats() interface + \*-------------------------------------------------------------------------*/ + int buffer_meth_setstats(lua_State *L, p_buffer buf) { +- buf->received = (long) luaL_optnumber(L, 2, (lua_Number) buf->received); +- buf->sent = (long) luaL_optnumber(L, 3, (lua_Number) buf->sent); ++ buf->received = (long) luaL_optnumber(L, 2, (lua_Number) buf->received); ++ buf->sent = (long) luaL_optnumber(L, 3, (lua_Number) buf->sent); + if (lua_isnumber(L, 4)) buf->birthday = timeout_gettime() - lua_tonumber(L, 4); + lua_pushnumber(L, 1); + return 1; +@@ -78,9 +79,7 @@ int buffer_meth_send(lua_State *L, p_buffer buf) { + const char *data = luaL_checklstring(L, 2, &size); + long start = (long) luaL_optnumber(L, 3, 1); + long end = (long) luaL_optnumber(L, 4, -1); +-#ifdef LUASOCKET_DEBUG +- p_timeout tm = timeout_markstart(buf->tm); +-#endif ++ timeout_markstart(buf->tm); + if (start < 0) start = (long) (size+start+1); + if (end < 0) end = (long) (size+end+1); + if (start < 1) start = (long) 1; +@@ -89,7 +88,7 @@ int buffer_meth_send(lua_State *L, p_buffer buf) { + /* check if there was an error */ + if (err != IO_DONE) { + lua_pushnil(L); +- lua_pushstring(L, buf->io->error(buf->io->ctx, err)); ++ lua_pushstring(L, buf->io->error(buf->io->ctx, err)); + lua_pushnumber(L, (lua_Number) (sent+start-1)); + } else { + lua_pushnumber(L, (lua_Number) (sent+start-1)); +@@ -98,7 +97,7 @@ int buffer_meth_send(lua_State *L, p_buffer buf) { + } + #ifdef LUASOCKET_DEBUG + /* push time elapsed during operation as the last return value */ +- lua_pushnumber(L, timeout_gettime() - timeout_getstart(tm)); ++ lua_pushnumber(L, timeout_gettime() - timeout_getstart(buf->tm)); + #endif + return lua_gettop(L) - top; + } +@@ -111,10 +110,8 @@ int buffer_meth_receive(lua_State *L, p_buffer buf) { + luaL_Buffer b; + size_t size; + const char *part = luaL_optlstring(L, 3, "", &size); +-#ifdef LUASOCKET_DEBUG +- p_timeout tm = timeout_markstart(buf->tm); +-#endif +- /* initialize buffer with optional extra prefix ++ timeout_markstart(buf->tm); ++ /* initialize buffer with optional extra prefix + * (useful for concatenating previous partial results) */ + luaL_buffinit(L, &b); + luaL_addlstring(&b, part, size); +@@ -122,12 +119,12 @@ int buffer_meth_receive(lua_State *L, p_buffer buf) { + if (!lua_isnumber(L, 2)) { + const char *p= luaL_optstring(L, 2, "*l"); + if (p[0] == '*' && p[1] == 'l') err = recvline(buf, &b); +- else if (p[0] == '*' && p[1] == 'a') err = recvall(buf, &b); ++ else if (p[0] == '*' && p[1] == 'a') err = recvall(buf, &b); + else luaL_argcheck(L, 0, 2, "invalid receive pattern"); +- /* get a fixed number of bytes (minus what was already partially ++ /* get a fixed number of bytes (minus what was already partially + * received) */ + } else { +- double n = lua_tonumber(L, 2); ++ double n = lua_tonumber(L, 2); + size_t wanted = (size_t) n; + luaL_argcheck(L, n >= 0, 2, "invalid receive pattern"); + if (size == 0 || wanted > size) +@@ -138,8 +135,8 @@ int buffer_meth_receive(lua_State *L, p_buffer buf) { + /* we can't push anyting in the stack before pushing the + * contents of the buffer. this is the reason for the complication */ + luaL_pushresult(&b); +- lua_pushstring(L, buf->io->error(buf->io->ctx, err)); +- lua_pushvalue(L, -2); ++ lua_pushstring(L, buf->io->error(buf->io->ctx, err)); ++ lua_pushvalue(L, -2); + lua_pushnil(L); + lua_replace(L, -4); + } else { +@@ -149,7 +146,7 @@ int buffer_meth_receive(lua_State *L, p_buffer buf) { + } + #ifdef LUASOCKET_DEBUG + /* push time elapsed during operation as the last return value */ +- lua_pushnumber(L, timeout_gettime() - timeout_getstart(tm)); ++ lua_pushnumber(L, timeout_gettime() - timeout_getstart(buf->tm)); + #endif + return lua_gettop(L) - top; + } +@@ -222,7 +219,7 @@ static int recvall(p_buffer buf, luaL_Buffer *b) { + } + + /*-------------------------------------------------------------------------*\ +-* Reads a line terminated by a CR LF pair or just by a LF. The CR and LF ++* Reads a line terminated by a CR LF pair or just by a LF. The CR and LF + * are not returned by the function and are discarded from the buffer + \*-------------------------------------------------------------------------*/ + static int recvline(p_buffer buf, luaL_Buffer *b) { +@@ -252,7 +249,7 @@ static int recvline(p_buffer buf, luaL_Buffer *b) { + static void buffer_skip(p_buffer buf, size_t count) { + buf->received += count; + buf->first += count; +- if (buffer_isempty(buf)) ++ if (buffer_isempty(buf)) + buf->first = buf->last = 0; + } + +diff --git a/src/compat.c b/src/compat.c +new file mode 100644 +index 0000000..c2d99cb +--- /dev/null ++++ b/src/compat.c +@@ -0,0 +1,19 @@ ++#include "compat.h" ++ ++#if LUA_VERSION_NUM==501 ++/* ++** Adapted from Lua 5.2 ++*/ ++void luaL_setfuncs (lua_State *L, const luaL_Reg *l, int nup) { ++ luaL_checkstack(L, nup+1, "too many upvalues"); ++ for (; l->name != NULL; l++) { /* fill the table with given functions */ ++ int i; ++ lua_pushstring(L, l->name); ++ for (i = 0; i < nup; i++) /* copy upvalues to the top */ ++ lua_pushvalue(L, -(nup+1)); ++ lua_pushcclosure(L, l->func, nup); /* closure with those upvalues */ ++ lua_settable(L, -(nup + 3)); ++ } ++ lua_pop(L, nup); /* remove upvalues */ ++} ++#endif +diff --git a/src/compat.h b/src/compat.h +new file mode 100644 +index 0000000..7bf8010 +--- /dev/null ++++ b/src/compat.h +@@ -0,0 +1,11 @@ ++#ifndef COMPAT_H ++#define COMPAT_H ++ ++#include "lua.h" ++#include "lauxlib.h" ++ ++#if LUA_VERSION_NUM==501 ++void luaL_setfuncs (lua_State *L, const luaL_Reg *l, int nup); ++#endif ++ ++#endif +diff --git a/src/except.c b/src/except.c +index 002e701..60b5005 100644 +--- a/src/except.c ++++ b/src/except.c +@@ -6,9 +6,19 @@ + + #include "lua.h" + #include "lauxlib.h" ++#include "compat.h" + + #include "except.h" + ++#if LUA_VERSION_NUM < 502 ++#define lua_pcallk(L, na, nr, err, ctx, cont) \ ++ (((void)ctx),((void)cont),lua_pcall(L, na, nr, err)) ++#endif ++ ++#if LUA_VERSION_NUM < 503 ++typedef int lua_KContext; ++#endif ++ + /*=========================================================================*\ + * Internal function prototypes. + \*=========================================================================*/ +@@ -29,18 +39,17 @@ static luaL_Reg func[] = { + * Try factory + \*-------------------------------------------------------------------------*/ + static void wrap(lua_State *L) { +- lua_newtable(L); +- lua_pushnumber(L, 1); +- lua_pushvalue(L, -3); +- lua_settable(L, -3); +- lua_insert(L, -2); +- lua_pop(L, 1); ++ lua_createtable(L, 1, 0); ++ lua_pushvalue(L, -2); ++ lua_rawseti(L, -2, 1); ++ lua_pushvalue(L, lua_upvalueindex(1)); ++ lua_setmetatable(L, -2); + } + + static int finalize(lua_State *L) { + if (!lua_toboolean(L, 1)) { +- lua_pushvalue(L, lua_upvalueindex(1)); +- lua_pcall(L, 0, 0, 0); ++ lua_pushvalue(L, lua_upvalueindex(2)); ++ lua_call(L, 0, 0); + lua_settop(L, 2); + wrap(L); + lua_error(L); +@@ -48,15 +57,17 @@ static int finalize(lua_State *L) { + } else return lua_gettop(L); + } + +-static int do_nothing(lua_State *L) { ++static int do_nothing(lua_State *L) { + (void) L; +- return 0; ++ return 0; + } + + static int global_newtry(lua_State *L) { + lua_settop(L, 1); + if (lua_isnil(L, 1)) lua_pushcfunction(L, do_nothing); +- lua_pushcclosure(L, finalize, 1); ++ lua_pushvalue(L, lua_upvalueindex(1)); ++ lua_insert(L, -2); ++ lua_pushcclosure(L, finalize, 2); + return 1; + } + +@@ -64,27 +75,49 @@ static int global_newtry(lua_State *L) { + * Protect factory + \*-------------------------------------------------------------------------*/ + static int unwrap(lua_State *L) { +- if (lua_istable(L, -1)) { +- lua_pushnumber(L, 1); +- lua_gettable(L, -2); +- lua_pushnil(L); +- lua_insert(L, -2); +- return 1; +- } else return 0; ++ if (lua_istable(L, -1) && lua_getmetatable(L, -1)) { ++ int r = lua_rawequal(L, -1, lua_upvalueindex(1)); ++ lua_pop(L, 1); ++ if (r) { ++ lua_pushnil(L); ++ lua_rawgeti(L, -2, 1); ++ return 1; ++ } ++ } ++ return 0; + } + +-static int protected_(lua_State *L) { +- lua_pushvalue(L, lua_upvalueindex(1)); +- lua_insert(L, 1); +- if (lua_pcall(L, lua_gettop(L) - 1, LUA_MULTRET, 0) != 0) { ++static int protected_finish(lua_State *L, int status, lua_KContext ctx) { ++ (void)ctx; ++ if (status != 0 && status != LUA_YIELD) { + if (unwrap(L)) return 2; +- else lua_error(L); +- return 0; ++ else return lua_error(L); + } else return lua_gettop(L); + } + ++#if LUA_VERSION_NUM == 502 ++static int protected_cont(lua_State *L) { ++ int ctx = 0; ++ int status = lua_getctx(L, &ctx); ++ return protected_finish(L, status, ctx); ++} ++#else ++#define protected_cont protected_finish ++#endif ++ ++static int protected_(lua_State *L) { ++ int status; ++ lua_pushvalue(L, lua_upvalueindex(2)); ++ lua_insert(L, 1); ++ status = lua_pcallk(L, lua_gettop(L) - 1, LUA_MULTRET, 0, 0, protected_cont); ++ return protected_finish(L, status, 0); ++} ++ + static int global_protect(lua_State *L) { +- lua_pushcclosure(L, protected_, 1); ++ lua_settop(L, 1); ++ lua_pushvalue(L, lua_upvalueindex(1)); ++ lua_insert(L, 1); ++ lua_pushcclosure(L, protected_, 2); + return 1; + } + +@@ -92,10 +125,9 @@ static int global_protect(lua_State *L) { + * Init module + \*-------------------------------------------------------------------------*/ + int except_open(lua_State *L) { +-#if LUA_VERSION_NUM > 501 && !defined(LUA_COMPAT_MODULE) +- luaL_setfuncs(L, func, 0); +-#else +- luaL_openlib(L, NULL, func, 0); +-#endif ++ lua_newtable(L); /* metatable for wrapped exceptions */ ++ lua_pushboolean(L, 0); ++ lua_setfield(L, -2, "__metatable"); ++ luaL_setfuncs(L, func, 1); + return 0; + } +diff --git a/src/except.h b/src/except.h +index 1e7a245..2497c05 100644 +--- a/src/except.h ++++ b/src/except.h +@@ -9,21 +9,26 @@ + * error checking was taking a substantial amount of the coding. These + * function greatly simplify the task of checking errors. + * +-* The main idea is that functions should return nil as its first return +-* value when it finds an error, and return an error message (or value) ++* The main idea is that functions should return nil as their first return ++* values when they find an error, and return an error message (or value) + * following nil. In case of success, as long as the first value is not nil, + * the other values don't matter. + * + * The idea is to nest function calls with the "try" function. This function +-* checks the first value, and calls "error" on the second if the first is +-* nil. Otherwise, it returns all values it received. ++* checks the first value, and, if it's falsy, wraps the second value in a ++* table with metatable and calls "error" on it. Otherwise, it returns all ++* values it received. Basically, it works like the Lua "assert" function, ++* but it creates errors targeted specifically at "protect". + * +-* The protect function returns a new function that behaves exactly like the +-* function it receives, but the new function doesn't throw exceptions: it +-* returns nil followed by the error message instead. ++* The "newtry" function is a factory for "try" functions that call a ++* finalizer in protected mode before calling "error". + * +-* With these two function, it's easy to write functions that throw +-* exceptions on error, but that don't interrupt the user script. ++* The "protect" function returns a new function that behaves exactly like ++* the function it receives, but the new function catches exceptions thrown ++* by "try" functions and returns nil followed by the error message instead. ++* ++* With these three functions, it's easy to write functions that throw ++* exceptions on error, but that don't interrupt the user script. + \*=========================================================================*/ + + #include "lua.h" +diff --git a/src/ftp.lua b/src/ftp.lua +index ea1145b..e0c3cae 100644 +--- a/src/ftp.lua ++++ b/src/ftp.lua +@@ -268,11 +268,20 @@ _M.command = socket.protect(function(cmdt) + cmdt = override(cmdt) + socket.try(cmdt.host, "missing hostname") + socket.try(cmdt.command, "missing command") +- local f = open(cmdt.host, cmdt.port, cmdt.create) ++ local f = _M.open(cmdt.host, cmdt.port, cmdt.create) + f:greet() + f:login(cmdt.user, cmdt.password) +- f.try(f.tp:command(cmdt.command, cmdt.argument)) +- if cmdt.check then f.try(f.tp:check(cmdt.check)) end ++ if type(cmdt.command) == "table" then ++ local argument = cmdt.argument or {} ++ local check = cmdt.check or {} ++ for i,cmd in ipairs(cmdt.command) do ++ f.try(f.tp:command(cmd, argument[i])) ++ if check[i] then f.try(f.tp:check(check[i])) end ++ end ++ else ++ f.try(f.tp:command(cmdt.command, cmdt.argument)) ++ if cmdt.check then f.try(f.tp:check(cmdt.check)) end ++ end + f:quit() + return f:close() + end) +@@ -282,4 +291,4 @@ _M.get = socket.protect(function(gett) + else return tget(gett) end + end) + +-return _M +\ No newline at end of file ++return _M +diff --git a/src/http.lua b/src/http.lua +index ac4b2d6..d6bcc91 100644 +--- a/src/http.lua ++++ b/src/http.lua +@@ -22,12 +22,15 @@ local _M = socket.http + -- Program constants + ----------------------------------------------------------------------------- + -- connection timeout in seconds +-TIMEOUT = 60 +--- default port for document retrieval +-_M.PORT = 80 ++_M.TIMEOUT = 60 + -- user agent field sent in request + _M.USERAGENT = socket._VERSION + ++-- supported schemes ++local SCHEMES = { ["http"] = true } ++-- default port for document retrieval ++local PORT = 80 ++ + ----------------------------------------------------------------------------- + -- Reads MIME headers from a connection, unfolding where needed + ----------------------------------------------------------------------------- +@@ -114,7 +117,7 @@ function _M.open(host, port, create) + h.try = socket.newtry(function() h:close() end) + -- set timeout before connecting + h.try(c:settimeout(_M.TIMEOUT)) +- h.try(c:connect(host, port or _M.PORT)) ++ h.try(c:connect(host, port or PORT)) + -- here everything worked + return h + end +@@ -186,7 +189,7 @@ end + local function adjusturi(reqt) + local u = reqt + -- if there is a proxy, we need the full url. otherwise, just a part. +- if not reqt.proxy and not PROXY then ++ if not reqt.proxy and not _M.PROXY then + u = { + path = socket.try(reqt.path, "invalid path 'nil'"), + params = reqt.params, +@@ -198,7 +201,7 @@ local function adjusturi(reqt) + end + + local function adjustproxy(reqt) +- local proxy = reqt.proxy or PROXY ++ local proxy = reqt.proxy or _M.PROXY + if proxy then + proxy = url.parse(proxy) + return proxy.host, proxy.port or 3128 +@@ -209,17 +212,27 @@ end + + local function adjustheaders(reqt) + -- default headers ++ local host = string.gsub(reqt.authority, "^.-@", "") + local lower = { + ["user-agent"] = _M.USERAGENT, +- ["host"] = reqt.host, ++ ["host"] = host, + ["connection"] = "close, TE", + ["te"] = "trailers" + } + -- if we have authentication information, pass it along + if reqt.user and reqt.password then +- lower["authorization"] = ++ lower["authorization"] = + "Basic " .. (mime.b64(reqt.user .. ":" .. reqt.password)) + end ++ -- if we have proxy authentication information, pass it along ++ local proxy = reqt.proxy or _M.PROXY ++ if proxy then ++ proxy = url.parse(proxy) ++ if proxy.user and proxy.password then ++ lower["proxy-authorization"] = ++ "Basic " .. (mime.b64(proxy.user .. ":" .. proxy.password)) ++ end ++ end + -- override with user headers + for i,v in base.pairs(reqt.headers or lower) do + lower[string.lower(i)] = v +@@ -230,7 +243,7 @@ end + -- default url parts + local default = { + host = "", +- port = _M.PORT, ++ port = PORT, + path ="/", + scheme = "http" + } +@@ -240,22 +253,27 @@ local function adjustrequest(reqt) + local nreqt = reqt.url and url.parse(reqt.url, default) or {} + -- explicit components override url + for i,v in base.pairs(reqt) do nreqt[i] = v end +- if nreqt.port == "" then nreqt.port = 80 end +- socket.try(nreqt.host and nreqt.host ~= "", +- "invalid host '" .. base.tostring(nreqt.host) .. "'") ++ if nreqt.port == "" then nreqt.port = PORT end ++ if not (nreqt.host and nreqt.host ~= "") then ++ socket.try(nil, "invalid host '" .. base.tostring(nreqt.host) .. "'") ++ end + -- compute uri if user hasn't overriden + nreqt.uri = reqt.uri or adjusturi(nreqt) +- -- ajust host and port if there is a proxy +- nreqt.host, nreqt.port = adjustproxy(nreqt) + -- adjust headers in request + nreqt.headers = adjustheaders(nreqt) ++ -- ajust host and port if there is a proxy ++ nreqt.host, nreqt.port = adjustproxy(nreqt) + return nreqt + end + + local function shouldredirect(reqt, code, headers) +- return headers.location and +- string.gsub(headers.location, "%s", "") ~= "" and +- (reqt.redirect ~= false) and ++ local location = headers.location ++ if not location then return false end ++ location = string.gsub(location, "%s", "") ++ if location == "" then return false end ++ local scheme = string.match(location, "^([%w][%w%+%-%.]*)%:") ++ if scheme and not SCHEMES[scheme] then return false end ++ return (reqt.redirect ~= false) and + (code == 301 or code == 302 or code == 303 or code == 307) and + (not reqt.method or reqt.method == "GET" or reqt.method == "HEAD") + and (not reqt.nredirects or reqt.nredirects < 5) +@@ -279,10 +297,10 @@ local trequest, tredirect + source = reqt.source, + sink = reqt.sink, + headers = reqt.headers, +- proxy = reqt.proxy, ++ proxy = reqt.proxy, + nredirects = (reqt.nredirects or 0) + 1, + create = reqt.create +- } ++ } + -- pass location header back as a hint we redirected + headers = headers or {} + headers.location = headers.location or location +@@ -299,7 +317,7 @@ end + h:sendheaders(nreqt.headers) + -- if there is a body, send it + if nreqt.source then +- h:sendbody(nreqt.headers, nreqt.source, nreqt.step) ++ h:sendbody(nreqt.headers, nreqt.source, nreqt.step) + end + local code, status = h:receivestatusline() + -- if it is an HTTP/0.9 server, simply get the body and we are done +@@ -309,13 +327,13 @@ end + end + local headers + -- ignore any 100-continue messages +- while code == 100 do ++ while code == 100 do + headers = h:receiveheaders() + code, status = h:receivestatusline() + end + headers = h:receiveheaders() + -- at this point we should have a honest reply from the server +- -- we can't redirect if we already used the source, so we report the error ++ -- we can't redirect if we already used the source, so we report the error + if shouldredirect(nreqt, code, headers) and not nreqt.source then + h:close() + return tredirect(reqt, headers.location) +@@ -351,4 +369,4 @@ _M.request = socket.protect(function(reqt, body) + else return trequest(reqt) end + end) + +-return _M +\ No newline at end of file ++return _M +diff --git a/src/inet.c b/src/inet.c +index 1a411f6..f4c8404 100644 +--- a/src/inet.c ++++ b/src/inet.c +@@ -8,6 +8,7 @@ + + #include "lua.h" + #include "lauxlib.h" ++#include "compat.h" + + #include "inet.h" + +@@ -41,11 +42,7 @@ int inet_open(lua_State *L) + { + lua_pushstring(L, "dns"); + lua_newtable(L); +-#if LUA_VERSION_NUM > 501 && !defined(LUA_COMPAT_MODULE) + luaL_setfuncs(L, func, 0); +-#else +- luaL_openlib(L, NULL, func, 0); +-#endif + lua_settable(L, -3); + return 0; + } +@@ -97,7 +94,7 @@ static int inet_global_getnameinfo(lua_State *L) { + + memset(&hints, 0, sizeof(hints)); + hints.ai_socktype = SOCK_STREAM; +- hints.ai_family = PF_UNSPEC; ++ hints.ai_family = AF_UNSPEC; + + ret = getaddrinfo(host, serv, &hints, &resolved); + if (ret != 0) { +@@ -108,8 +105,8 @@ static int inet_global_getnameinfo(lua_State *L) { + + lua_newtable(L); + for (i = 1, iter = resolved; iter; i++, iter = iter->ai_next) { +- getnameinfo(iter->ai_addr, (socklen_t) iter->ai_addrlen, +- hbuf, host? (socklen_t) sizeof(hbuf): 0, ++ getnameinfo(iter->ai_addr, (socklen_t) iter->ai_addrlen, ++ hbuf, host? (socklen_t) sizeof(hbuf): 0, + sbuf, serv? (socklen_t) sizeof(sbuf): 0, 0); + if (host) { + lua_pushnumber(L, i); +@@ -149,7 +146,7 @@ static int inet_global_toip(lua_State *L) + int inet_optfamily(lua_State* L, int narg, const char* def) + { + static const char* optname[] = { "unspec", "inet", "inet6", NULL }; +- static int optvalue[] = { PF_UNSPEC, PF_INET, PF_INET6, 0 }; ++ static int optvalue[] = { AF_UNSPEC, AF_INET, AF_INET6, 0 }; + + return optvalue[luaL_checkoption(L, narg, def, optname)]; + } +@@ -170,7 +167,7 @@ static int inet_global_getaddrinfo(lua_State *L) + int i = 1, ret = 0; + memset(&hints, 0, sizeof(hints)); + hints.ai_socktype = SOCK_STREAM; +- hints.ai_family = PF_UNSPEC; ++ hints.ai_family = AF_UNSPEC; + ret = getaddrinfo(hostname, NULL, &hints, &resolved); + if (ret != 0) { + lua_pushnil(L); +@@ -180,9 +177,10 @@ static int inet_global_getaddrinfo(lua_State *L) + lua_newtable(L); + for (iterator = resolved; iterator; iterator = iterator->ai_next) { + char hbuf[NI_MAXHOST]; +- ret = getnameinfo(iterator->ai_addr, (socklen_t) iterator->ai_addrlen, ++ ret = getnameinfo(iterator->ai_addr, (socklen_t) iterator->ai_addrlen, + hbuf, (socklen_t) sizeof(hbuf), NULL, 0, NI_NUMERICHOST); + if (ret){ ++ freeaddrinfo(resolved); + lua_pushnil(L); + lua_pushstring(L, socket_gaistrerror(ret)); + return 2; +@@ -200,6 +198,16 @@ static int inet_global_getaddrinfo(lua_State *L) + lua_pushliteral(L, "inet6"); + lua_settable(L, -3); + break; ++ case AF_UNSPEC: ++ lua_pushliteral(L, "family"); ++ lua_pushliteral(L, "unspec"); ++ lua_settable(L, -3); ++ break; ++ default: ++ lua_pushliteral(L, "family"); ++ lua_pushliteral(L, "unknown"); ++ lua_settable(L, -3); ++ break; + } + lua_pushliteral(L, "addr"); + lua_pushstring(L, hbuf); +@@ -256,12 +264,11 @@ int inet_meth_getpeername(lua_State *L, p_socket ps, int family) + } + lua_pushstring(L, name); + lua_pushinteger(L, (int) strtol(port, (char **) NULL, 10)); +- if (family == PF_INET) { +- lua_pushliteral(L, "inet"); +- } else if (family == PF_INET6) { +- lua_pushliteral(L, "inet6"); +- } else { +- lua_pushliteral(L, "uknown family"); ++ switch (family) { ++ case AF_INET: lua_pushliteral(L, "inet"); break; ++ case AF_INET6: lua_pushliteral(L, "inet6"); break; ++ case AF_UNSPEC: lua_pushliteral(L, "unspec"); break; ++ default: lua_pushliteral(L, "unknown"); break; + } + return 3; + } +@@ -281,7 +288,7 @@ int inet_meth_getsockname(lua_State *L, p_socket ps, int family) + lua_pushstring(L, socket_strerror(errno)); + return 2; + } +- err=getnameinfo((struct sockaddr *)&peer, peer_len, ++ err=getnameinfo((struct sockaddr *)&peer, peer_len, + name, INET6_ADDRSTRLEN, port, 6, NI_NUMERICHOST | NI_NUMERICSERV); + if (err) { + lua_pushnil(L); +@@ -290,12 +297,11 @@ int inet_meth_getsockname(lua_State *L, p_socket ps, int family) + } + lua_pushstring(L, name); + lua_pushstring(L, port); +- if (family == PF_INET) { +- lua_pushliteral(L, "inet"); +- } else if (family == PF_INET6) { +- lua_pushliteral(L, "inet6"); +- } else { +- lua_pushliteral(L, "uknown family"); ++ switch (family) { ++ case AF_INET: lua_pushliteral(L, "inet"); break; ++ case AF_INET6: lua_pushliteral(L, "inet6"); break; ++ case AF_UNSPEC: lua_pushliteral(L, "unspec"); break; ++ default: lua_pushliteral(L, "unknown"); break; + } + return 3; + } +@@ -346,8 +352,13 @@ static void inet_pushresolved(lua_State *L, struct hostent *hp) + /*-------------------------------------------------------------------------*\ + * Tries to create a new inet socket + \*-------------------------------------------------------------------------*/ +-const char *inet_trycreate(p_socket ps, int family, int type) { +- return socket_strerror(socket_create(ps, family, type, 0)); ++const char *inet_trycreate(p_socket ps, int family, int type, int protocol) { ++ const char *err = socket_strerror(socket_create(ps, family, type, protocol)); ++ if (err == NULL && family == AF_INET6) { ++ int yes = 1; ++ setsockopt(*ps, IPPROTO_IPV6, IPV6_V6ONLY, (void *)&yes, sizeof(yes)); ++ } ++ return err; + } + + /*-------------------------------------------------------------------------*\ +@@ -356,21 +367,21 @@ const char *inet_trycreate(p_socket ps, int family, int type) { + const char *inet_trydisconnect(p_socket ps, int family, p_timeout tm) + { + switch (family) { +- case PF_INET: { ++ case AF_INET: { + struct sockaddr_in sin; + memset((char *) &sin, 0, sizeof(sin)); + sin.sin_family = AF_UNSPEC; + sin.sin_addr.s_addr = INADDR_ANY; +- return socket_strerror(socket_connect(ps, (SA *) &sin, ++ return socket_strerror(socket_connect(ps, (SA *) &sin, + sizeof(sin), tm)); + } +- case PF_INET6: { ++ case AF_INET6: { + struct sockaddr_in6 sin6; +- struct in6_addr addrany = IN6ADDR_ANY_INIT; ++ struct in6_addr addrany = IN6ADDR_ANY_INIT; + memset((char *) &sin6, 0, sizeof(sin6)); + sin6.sin6_family = AF_UNSPEC; + sin6.sin6_addr = addrany; +- return socket_strerror(socket_connect(ps, (SA *) &sin6, ++ return socket_strerror(socket_connect(ps, (SA *) &sin6, + sizeof(sin6), tm)); + } + } +@@ -385,6 +396,7 @@ const char *inet_tryconnect(p_socket ps, int *family, const char *address, + { + struct addrinfo *iterator = NULL, *resolved = NULL; + const char *err = NULL; ++ int current_family = *family; + /* try resolving */ + err = socket_gaistrerror(getaddrinfo(address, serv, + connecthints, &resolved)); +@@ -399,23 +411,23 @@ const char *inet_tryconnect(p_socket ps, int *family, const char *address, + * that shows up while iterating. if there was a + * bind, all families will be the same and we will + * not enter this branch. */ +- if (*family != iterator->ai_family) { ++ if (current_family != iterator->ai_family || *ps == SOCKET_INVALID) { + socket_destroy(ps); +- err = socket_strerror(socket_create(ps, iterator->ai_family, +- iterator->ai_socktype, iterator->ai_protocol)); +- if (err != NULL) { +- freeaddrinfo(resolved); +- return err; +- } +- *family = iterator->ai_family; +- /* all sockets initially non-blocking */ ++ err = inet_trycreate(ps, iterator->ai_family, ++ iterator->ai_socktype, iterator->ai_protocol); ++ if (err) continue; ++ current_family = iterator->ai_family; ++ /* set non-blocking before connect */ + socket_setnonblocking(ps); + } + /* try connecting to remote address */ +- err = socket_strerror(socket_connect(ps, (SA *) iterator->ai_addr, ++ err = socket_strerror(socket_connect(ps, (SA *) iterator->ai_addr, + (socklen_t) iterator->ai_addrlen, tm)); +- /* if success, break out of loop */ +- if (err == NULL) break; ++ /* if success or timeout is zero, break out of loop */ ++ if (err == NULL || timeout_iszero(tm)) { ++ *family = current_family; ++ break; ++ } + } + freeaddrinfo(resolved); + /* here, if err is set, we failed */ +@@ -425,29 +437,27 @@ const char *inet_tryconnect(p_socket ps, int *family, const char *address, + /*-------------------------------------------------------------------------*\ + * Tries to accept a socket + \*-------------------------------------------------------------------------*/ +-const char *inet_tryaccept(p_socket server, int family, p_socket client, +- p_timeout tm) +-{ ++const char *inet_tryaccept(p_socket server, int family, p_socket client, ++ p_timeout tm) { + socklen_t len; + t_sockaddr_storage addr; +- if (family == PF_INET6) { +- len = sizeof(struct sockaddr_in6); +- } else { +- len = sizeof(struct sockaddr_in); +- } +- return socket_strerror(socket_accept(server, client, (SA *) &addr, ++ switch (family) { ++ case AF_INET6: len = sizeof(struct sockaddr_in6); break; ++ case AF_INET: len = sizeof(struct sockaddr_in); break; ++ default: len = sizeof(addr); break; ++ } ++ return socket_strerror(socket_accept(server, client, (SA *) &addr, + &len, tm)); + } + + /*-------------------------------------------------------------------------*\ + * Tries to bind socket to (address, port) + \*-------------------------------------------------------------------------*/ +-const char *inet_trybind(p_socket ps, const char *address, const char *serv, +- struct addrinfo *bindhints) +-{ ++const char *inet_trybind(p_socket ps, int *family, const char *address, ++ const char *serv, struct addrinfo *bindhints) { + struct addrinfo *iterator = NULL, *resolved = NULL; + const char *err = NULL; +- t_socket sock = *ps; ++ int current_family = *family; + /* translate luasocket special values to C */ + if (strcmp(address, "*") == 0) address = NULL; + if (!serv) serv = "0"; +@@ -459,35 +469,32 @@ const char *inet_trybind(p_socket ps, const char *address, const char *serv, + } + /* iterate over resolved addresses until one is good */ + for (iterator = resolved; iterator; iterator = iterator->ai_next) { +- if(sock == SOCKET_INVALID) { +- err = socket_strerror(socket_create(&sock, iterator->ai_family, +- iterator->ai_socktype, iterator->ai_protocol)); +- if(err) +- continue; ++ if (current_family != iterator->ai_family || *ps == SOCKET_INVALID) { ++ socket_destroy(ps); ++ err = inet_trycreate(ps, iterator->ai_family, ++ iterator->ai_socktype, iterator->ai_protocol); ++ if (err) continue; ++ current_family = iterator->ai_family; + } + /* try binding to local address */ +- err = socket_strerror(socket_bind(&sock, +- (SA *) iterator->ai_addr, ++ err = socket_strerror(socket_bind(ps, (SA *) iterator->ai_addr, + (socklen_t) iterator->ai_addrlen)); +- + /* keep trying unless bind succeeded */ +- if (err) { +- if(sock != *ps) +- socket_destroy(&sock); +- } else { +- /* remember what we connected to, particularly the family */ +- *bindhints = *iterator; ++ if (err == NULL) { ++ *family = current_family; ++ /* set to non-blocking after bind */ ++ socket_setnonblocking(ps); + break; + } + } + /* cleanup and return error */ + freeaddrinfo(resolved); +- *ps = sock; ++ /* here, if err is set, we failed */ + return err; + } + + /*-------------------------------------------------------------------------*\ +-* Some systems do not provide these so that we provide our own. ++* Some systems do not provide these so that we provide our own. + \*-------------------------------------------------------------------------*/ + #ifdef LUASOCKET_INET_ATON + int inet_aton(const char *cp, struct in_addr *inp) +@@ -512,7 +519,7 @@ int inet_aton(const char *cp, struct in_addr *inp) + #endif + + #ifdef LUASOCKET_INET_PTON +-int inet_pton(int af, const char *src, void *dst) ++int inet_pton(int af, const char *src, void *dst) + { + struct addrinfo hints, *res; + int ret = 1; +@@ -529,7 +536,7 @@ int inet_pton(int af, const char *src, void *dst) + } else { + ret = -1; + } +- freeaddrinfo(res); ++ freeaddrinfo(res); + return ret; + } + +diff --git a/src/inet.h b/src/inet.h +index 1f1a96a..feb3541 100644 +--- a/src/inet.h ++++ b/src/inet.h +@@ -1,12 +1,12 @@ +-#ifndef INET_H +-#define INET_H ++#ifndef INET_H ++#define INET_H + /*=========================================================================*\ + * Internet domain functions + * LuaSocket toolkit + * + * This module implements the creation and connection of internet domain + * sockets, on top of the socket.h interface, and the interface of with the +-* resolver. ++* resolver. + * + * The function inet_aton is provided for the platforms where it is not + * available. The module also implements the interface of the internet +@@ -24,11 +24,11 @@ + + int inet_open(lua_State *L); + +-const char *inet_trycreate(p_socket ps, int family, int type); ++const char *inet_trycreate(p_socket ps, int family, int type, int protocol); + const char *inet_tryconnect(p_socket ps, int *family, const char *address, + const char *serv, p_timeout tm, struct addrinfo *connecthints); +-const char *inet_trybind(p_socket ps, const char *address, const char *serv, +- struct addrinfo *bindhints); ++const char *inet_trybind(p_socket ps, int *family, const char *address, ++ const char *serv, struct addrinfo *bindhints); + const char *inet_trydisconnect(p_socket ps, int family, p_timeout tm); + const char *inet_tryaccept(p_socket server, int family, p_socket client, p_timeout tm); + +diff --git a/src/io.c b/src/io.c +index 35f46f7..a4230ce 100644 +--- a/src/io.c ++++ b/src/io.c +@@ -25,6 +25,6 @@ const char *io_strerror(int err) { + case IO_DONE: return NULL; + case IO_CLOSED: return "closed"; + case IO_TIMEOUT: return "timeout"; +- default: return "unknown error"; ++ default: return "unknown error"; + } + } +diff --git a/src/io.h b/src/io.h +index 76a3e58..8cca08a 100644 +--- a/src/io.h ++++ b/src/io.h +@@ -22,7 +22,7 @@ enum { + IO_DONE = 0, /* operation completed successfully */ + IO_TIMEOUT = -1, /* operation timed out */ + IO_CLOSED = -2, /* the connection has been closed */ +- IO_UNKNOWN = -3 ++ IO_UNKNOWN = -3 + }; + + /* interface to error message function */ +diff --git a/src/ltn12.lua b/src/ltn12.lua +index 5b10f56..575c5a7 100644 +--- a/src/ltn12.lua ++++ b/src/ltn12.lua +@@ -9,6 +9,7 @@ + ----------------------------------------------------------------------------- + local string = require("string") + local table = require("table") ++local unpack = unpack or table.unpack + local base = _G + local _M = {} + if module then -- heuristic for exporting a global package table +@@ -21,6 +22,9 @@ _M.source = source + _M.sink = sink + _M.pump = pump + ++local unpack = unpack or table.unpack ++local select = base.select ++ + -- 2048 seems to be better in windows... + _M.BLOCKSIZE = 2048 + _M._VERSION = "LTN12 1.0.3" +@@ -42,7 +46,7 @@ end + -- (thanks to Wim Couwenberg) + function filter.chain(...) + local arg = {...} +- local n = select('#',...) ++ local n = base.select('#',...) + local top, index = 1, 1 + local retry = "" + return function(chunk) +@@ -139,7 +143,9 @@ function source.rewind(src) + end + end + +-function source.chain(src, f) ++-- chains a source with one or several filter(s) ++function source.chain(src, f, ...) ++ if ... then f=filter.chain(f, ...) end + base.assert(src and f) + local last_in, last_out = "", "" + local state = "feeding" +@@ -254,8 +260,13 @@ function sink.error(err) + end + end + +--- chains a sink with a filter +-function sink.chain(f, snk) ++-- chains a sink with one or several filter(s) ++function sink.chain(f, snk, ...) ++ if ... then ++ local args = { f, snk, ... } ++ snk = table.remove(args, #args) ++ f = filter.chain(unpack(args)) ++ end + base.assert(f and snk) + return function(chunk, err) + if chunk ~= "" then +diff --git a/src/luasocket.c b/src/luasocket.c +index e6ee747..7d9c802 100644 +--- a/src/luasocket.c ++++ b/src/luasocket.c +@@ -17,7 +17,7 @@ + \*=========================================================================*/ + #include "lua.h" + #include "lauxlib.h" +- ++#include "compat.h" + + /*=========================================================================*\ + * LuaSocket includes +@@ -64,7 +64,7 @@ static luaL_Reg func[] = { + * Skip a few arguments + \*-------------------------------------------------------------------------*/ + static int global_skip(lua_State *L) { +- int amount = luaL_checkint(L, 1); ++ int amount = luaL_checkinteger(L, 1); + int ret = lua_gettop(L) - amount - 1; + return ret >= 0 ? ret : 0; + } +@@ -78,26 +78,14 @@ static int global_unload(lua_State *L) { + return 0; + } + +-#if LUA_VERSION_NUM > 501 +-int luaL_typerror (lua_State *L, int narg, const char *tname) { +- const char *msg = lua_pushfstring(L, "%s expected, got %s", +- tname, luaL_typename(L, narg)); +- return luaL_argerror(L, narg, msg); +-} +-#endif +- + /*-------------------------------------------------------------------------*\ + * Setup basic stuff. + \*-------------------------------------------------------------------------*/ + static int base_open(lua_State *L) { + if (socket_open()) { + /* export functions (and leave namespace table on top of stack) */ +-#if LUA_VERSION_NUM > 501 && !defined(LUA_COMPAT_MODULE) + lua_newtable(L); + luaL_setfuncs(L, func, 0); +-#else +- luaL_openlib(L, "socket", func, 0); +-#endif + #ifdef LUASOCKET_DEBUG + lua_pushstring(L, "_DEBUG"); + lua_pushboolean(L, 1); +diff --git a/src/makefile b/src/makefile +index c24e61b..adf687f 100644 +--- a/src/makefile ++++ b/src/makefile +@@ -20,15 +20,17 @@ PLAT?=linux + # lua version to build against + LUAV?=5.1 + ++# MYCFLAGS: to be set by user if needed ++MYCFLAGS= ++ ++# MYLDFLAGS: to be set by user if needed ++MYLDFLAGS= ++ + # DEBUG: NODEBUG DEBUG + # debug mode causes luasocket to collect and returns timing information useful + # for testing and debugging luasocket itself + DEBUG?=NODEBUG + +-# COMPAT: COMPAT NOCOMPAT +-# when compiling for 5.2, use LUA_COMPAT_MODULE +-COMPAT?=NOCOMPAT +- + # where lua headers are found for macosx builds + # LUAINC_macosx: + # /opt/local/include +@@ -40,7 +42,6 @@ LUAPREFIX_macosx?=/opt/local + CDIR_macosx?=lib/lua/$(LUAV) + LDIR_macosx?=share/lua/$(LUAV) + +- + # LUAINC_linux: + # /usr/include/lua$(LUAV) + # /usr/local/include +@@ -52,8 +53,17 @@ LUAPREFIX_linux?=/usr/local + CDIR_linux?=lib/lua/$(LUAV) + LDIR_linux?=share/lua/$(LUAV) + ++# LUAINC_freebsd: ++# /usr/local/include/lua$(LUAV) ++# where lua headers are found for freebsd builds ++LUAINC_freebsd_base?=/usr/local/include/ ++LUAINC_freebsd?=$(LUAINC_freebsd_base)/lua$(LUAV) ++LUAPREFIX_freebsd?=/usr/local/ ++CDIR_freebsd?=lib/lua/$(LUAV) ++LDIR_freebsd?=share/lua/$(LUAV) ++ + # where lua headers are found for mingw builds +-# LUAINC_mingw: ++# LUAINC_mingw: + # /opt/local/include + LUAINC_mingw_base?=/usr/include + LUAINC_mingw?=$(LUAINC_mingw_base)/lua/$(LUAV) +@@ -67,13 +77,21 @@ LDIR_mingw?=lua/$(LUAV)/lua + # LUAINC_win32: + # LUALIB_win32: + # where lua headers and libraries are found for win32 builds +-LUAINC_win32_base?= +-LUAINC_win32?=$(LUAINC_win32_base)/lua/$(LUAV) +-PLATFORM_win32?=Release + LUAPREFIX_win32?= +-CDIR_win32?=lua/$(LUAV)/$(PLATFORM_win32) +-LDIR_win32?=lua/$(LUAV)/$(PLATFORM_win32)/lua +-LUALIB_win32?=$(LUAPREFIX_win32)/lua/$(LUAV)/$(PLATFORM_win32) ++LUAINC_win32?=$(LUAPREFIX_win32)/include/lua/$(LUAV) ++PLATFORM_win32?=Release ++CDIR_win32?=bin/lua/$(LUAV)/$(PLATFORM_win32) ++LDIR_win32?=bin/lua/$(LUAV)/$(PLATFORM_win32)/lua ++LUALIB_win32?=$(LUAPREFIX_win32)/lib/lua/$(LUAV)/$(PLATFORM_win32) ++LUALIBNAME_win32?=lua$(subst .,,$(LUAV)).lib ++ ++ ++# LUAINC_solaris: ++LUAINC_solaris_base?=/usr/include ++LUAINC_solaris?=$(LUAINC_solaris_base)/lua/$(LUAV) ++LUAPREFIX_solaris?=/usr/local ++CDIR_solaris?=lib/lua/$(LUAV) ++LDIR_solaris?=share/lua/$(LUAV) + + # prefix: /usr/local /usr /opt/local /sw + # the top of the default install tree +@@ -121,7 +139,7 @@ print: + #------ + # Supported platforms + # +-PLATS= macosx linux win32 mingw ++PLATS= macosx linux win32 mingw solaris + + #------ + # Compiler and linker settings +@@ -129,11 +147,11 @@ PLATS= macosx linux win32 mingw + SO_macosx=so + O_macosx=o + CC_macosx=gcc +-DEF_macosx= -DLUASOCKET_$(DEBUG) -DUNIX_HAS_SUN_LEN -DLUA_$(COMPAT)_MODULE \ ++DEF_macosx= -DLUASOCKET_$(DEBUG) -DUNIX_HAS_SUN_LEN \ + -DLUASOCKET_API='__attribute__((visibility("default")))' \ + -DUNIX_API='__attribute__((visibility("default")))' \ + -DMIME_API='__attribute__((visibility("default")))' +-CFLAGS_macosx= -I$(LUAINC) $(DEF) -pedantic -Wall -O2 -fno-common \ ++CFLAGS_macosx= -I$(LUAINC) $(DEF) -Wall -O2 -fno-common \ + -fvisibility=hidden + LDFLAGS_macosx= -bundle -undefined dynamic_lookup -o + LD_macosx= export MACOSX_DEPLOYMENT_TARGET="10.3"; gcc +@@ -145,11 +163,11 @@ SOCKET_macosx=usocket.o + SO_linux=so + O_linux=o + CC_linux=gcc +-DEF_linux=-DLUASOCKET_$(DEBUG) -DLUA_$(COMPAT)_MODULE \ ++DEF_linux=-DLUASOCKET_$(DEBUG) \ + -DLUASOCKET_API='__attribute__((visibility("default")))' \ + -DUNIX_API='__attribute__((visibility("default")))' \ + -DMIME_API='__attribute__((visibility("default")))' +-CFLAGS_linux= -I$(LUAINC) $(DEF) -pedantic -Wall -Wshadow -Wextra \ ++CFLAGS_linux= -I$(LUAINC) $(DEF) -Wall -Wshadow -Wextra \ + -Wimplicit -O2 -ggdb3 -fpic -fvisibility=hidden + LDFLAGS_linux=-O -shared -fpic -o + LD_linux=gcc +@@ -157,14 +175,46 @@ SOCKET_linux=usocket.o + + #------ + # Compiler and linker settings ++# for FreeBSD ++SO_freebsd=so ++O_freebsd=o ++CC_freebsd=gcc ++DEF_freebsd=-DLUASOCKET_$(DEBUG) \ ++ -DLUASOCKET_API='__attribute__((visibility("default")))' \ ++ -DUNIX_API='__attribute__((visibility("default")))' \ ++ -DMIME_API='__attribute__((visibility("default")))' ++CFLAGS_freebsd= -I$(LUAINC) $(DEF) -Wall -Wshadow -Wextra \ ++ -Wimplicit -O2 -ggdb3 -fpic -fvisibility=hidden ++LDFLAGS_freebsd=-O -shared -fpic -o ++LD_freebsd=gcc ++SOCKET_freebsd=usocket.o ++ ++#------ ++# Compiler and linker settings ++# for Solaris ++SO_solaris=so ++O_solaris=o ++CC_solaris=gcc ++DEF_solaris=-DLUASOCKET_$(DEBUG) \ ++ -DLUASOCKET_API='__attribute__((visibility("default")))' \ ++ -DUNIX_API='__attribute__((visibility("default")))' \ ++ -DMIME_API='__attribute__((visibility("default")))' ++CFLAGS_solaris=-I$(LUAINC) $(DEF) -Wall -Wshadow -Wextra \ ++ -Wimplicit -O2 -ggdb3 -fpic -fvisibility=hidden ++LDFLAGS_solaris=-lnsl -lsocket -lresolv -O -shared -fpic -o ++LD_solaris=gcc ++SOCKET_solaris=usocket.o ++ ++#------ ++# Compiler and linker settings + # for MingW + SO_mingw=dll + O_mingw=o + CC_mingw=gcc +-DEF_mingw= -DLUASOCKET_INET_PTON -DLUASOCKET_$(DEBUG) -DLUA_$(COMPAT)_MODULE \ ++DEF_mingw= -DLUASOCKET_INET_PTON -DLUASOCKET_$(DEBUG) \ + -DWINVER=0x0501 -DLUASOCKET_API='__declspec(dllexport)' \ + -DMIME_API='__declspec(dllexport)' +-CFLAGS_mingw= -I$(LUAINC) $(DEF) -pedantic -Wall -O2 -fno-common \ ++CFLAGS_mingw= -I$(LUAINC) $(DEF) -Wall -O2 -fno-common \ + -fvisibility=hidden + LDFLAGS_mingw= $(LUALIB) -shared -Wl,-s -lws2_32 -o + LD_mingw=gcc +@@ -179,8 +229,7 @@ O_win32=obj + CC_win32=cl + DEF_win32= //D "WIN32" //D "NDEBUG" //D "_WINDOWS" //D "_USRDLL" \ + //D "LUASOCKET_API=__declspec(dllexport)" //D "_CRT_SECURE_NO_WARNINGS" \ +- //D "_WINDLL" //D "LUA_$(COMPAT)_MODULE" \ +- //D "MIME_API=__declspec(dllexport)" \ ++ //D "_WINDLL" //D "MIME_API=__declspec(dllexport)" \ + //D "LUASOCKET_$(DEBUG)" + CFLAGS_win32=//I "$(LUAINC)" $(DEF) //O2 //Ot //MD //W3 //nologo + LDFLAGS_win32= //nologo //link //NOLOGO //DLL //INCREMENTAL:NO \ +@@ -188,7 +237,7 @@ LDFLAGS_win32= //nologo //link //NOLOGO //DLL //INCREMENTAL:NO \ + //MANIFESTUAC:"level='asInvoker' uiAccess='false'" \ + //SUBSYSTEM:WINDOWS //OPT:REF //OPT:ICF //DYNAMICBASE:NO \ + //MACHINE:X86 /LIBPATH:"$(shell cmd //c echo $(LUALIB))" \ +- lua$(subst .,,$(LUAV)).lib ws2_32.lib //OUT: ++ $(LUALIBNAME_win32) ws2_32.lib //OUT: + LD_win32=cl + SOCKET_win32=wsocket.obj + +@@ -204,8 +253,8 @@ SO=$(SO_$(PLAT)) + O=$(O_$(PLAT)) + SOCKET_V=3.0-rc1 + MIME_V=1.0.3 +-SOCKET_SO=socket.$(SO).$(SOCKET_V) +-MIME_SO=mime.$(SO).$(MIME_V) ++SOCKET_SO=socket-$(SOCKET_V).$(SO) ++MIME_SO=mime-$(MIME_V).$(SO) + UNIX_SO=unix.$(SO) + SERIAL_SO=serial.$(SO) + SOCKET=$(SOCKET_$(PLAT)) +@@ -215,8 +264,8 @@ SOCKET=$(SOCKET_$(PLAT)) + # + CC=$(CC_$(PLAT)) + DEF=$(DEF_$(PLAT)) +-CFLAGS=$(CFLAGS_$(PLAT)) +-LDFLAGS=$(LDFLAGS_$(PLAT)) ++CFLAGS=$(MYCFLAGS) $(CFLAGS_$(PLAT)) ++LDFLAGS=$(MYLDFLAGS) $(LDFLAGS_$(PLAT)) + LD=$(LD_$(PLAT)) + LUAINC= $(LUAINC_$(PLAT)) + LUALIB= $(LUALIB_$(PLAT)) +@@ -230,6 +279,7 @@ SOCKET_OBJS= \ + buffer.$(O) \ + io.$(O) \ + auxiliar.$(O) \ ++ compat.$(O) \ + options.$(O) \ + inet.$(O) \ + $(SOCKET) \ +@@ -242,7 +292,8 @@ SOCKET_OBJS= \ + # Modules belonging mime-core + # + MIME_OBJS= \ +- mime.$(O) ++ mime.$(O) \ ++ compat.$(O) + + #------ + # Modules belonging unix (local domain sockets) +@@ -259,7 +310,7 @@ UNIX_OBJS=\ + #------ + # Modules belonging to serial (device streams) + # +-SERIAL_OBJS:=\ ++SERIAL_OBJS=\ + buffer.$(O) \ + auxiliar.$(O) \ + options.$(O) \ +@@ -289,6 +340,10 @@ TO_TOP_LDIR= \ + # + default: $(PLAT) + ++ ++freebsd: ++ $(MAKE) all-unix PLAT=freebsd ++ + macosx: + $(MAKE) all-unix PLAT=macosx + +@@ -300,6 +355,9 @@ linux: + + mingw: + $(MAKE) all PLAT=mingw ++ ++solaris: ++ $(MAKE) all-unix PLAT=solaris + + none: + @echo "Please run" +@@ -349,6 +407,7 @@ clean: + #------ + # List of dependencies + # ++compat.$(O): compat.c compat.h + auxiliar.$(O): auxiliar.c auxiliar.h + buffer.$(O): buffer.c buffer.h io.h timeout.h + except.$(O): except.c except.h +diff --git a/src/mbox.lua b/src/mbox.lua +index 7724ae2..ed9e781 100644 +--- a/src/mbox.lua ++++ b/src/mbox.lua +@@ -61,7 +61,7 @@ function _M.parse_from(from) + end + + function _M.split_mbox(mbox_s) +- mbox = {} ++ local mbox = {} + mbox_s = string.gsub(mbox_s, "\r\n", "\n") .."\n\nFrom \n" + local nj, i, j = 1, 1, 1 + while 1 do +diff --git a/src/mime.c b/src/mime.c +index dd37dcf..ed44104 100644 +--- a/src/mime.c ++++ b/src/mime.c +@@ -6,10 +6,7 @@ + + #include "lua.h" + #include "lauxlib.h" +- +-#if !defined(LUA_VERSION_NUM) || (LUA_VERSION_NUM < 501) +-#include "compat-5.1.h" +-#endif ++#include "compat.h" + + #include "mime.h" + +@@ -41,7 +38,7 @@ static size_t b64decode(UC c, UC *input, size_t size, luaL_Buffer *buffer); + static void qpsetup(UC *class, UC *unbase); + static void qpquote(UC c, luaL_Buffer *buffer); + static size_t qpdecode(UC c, UC *input, size_t size, luaL_Buffer *buffer); +-static size_t qpencode(UC c, UC *input, size_t size, ++static size_t qpencode(UC c, UC *input, size_t size, + const char *marker, luaL_Buffer *buffer); + static size_t qppad(UC *input, size_t size, luaL_Buffer *buffer); + +@@ -81,12 +78,8 @@ static UC b64unbase[256]; + \*-------------------------------------------------------------------------*/ + MIME_API int luaopen_mime_core(lua_State *L) + { +-#if LUA_VERSION_NUM > 501 && !defined(LUA_COMPAT_MODULE) + lua_newtable(L); + luaL_setfuncs(L, func, 0); +-#else +- luaL_openlib(L, "mime", func, 0); +-#endif + /* make version string available to scripts */ + lua_pushstring(L, "_VERSION"); + lua_pushstring(L, MIME_VERSION); +@@ -103,15 +96,15 @@ MIME_API int luaopen_mime_core(lua_State *L) + /*-------------------------------------------------------------------------*\ + * Incrementaly breaks a string into lines. The string can have CRLF breaks. + * A, n = wrp(l, B, length) +-* A is a copy of B, broken into lines of at most 'length' bytes. +-* 'l' is how many bytes are left for the first line of B. +-* 'n' is the number of bytes left in the last line of A. ++* A is a copy of B, broken into lines of at most 'length' bytes. ++* 'l' is how many bytes are left for the first line of B. ++* 'n' is the number of bytes left in the last line of A. + \*-------------------------------------------------------------------------*/ + static int mime_global_wrp(lua_State *L) + { + size_t size = 0; + int left = (int) luaL_checknumber(L, 1); +- const UC *input = (UC *) luaL_optlstring(L, 2, NULL, &size); ++ const UC *input = (const UC *) luaL_optlstring(L, 2, NULL, &size); + const UC *last = input + size; + int length = (int) luaL_optnumber(L, 3, 76); + luaL_Buffer buffer; +@@ -123,7 +116,7 @@ static int mime_global_wrp(lua_State *L) + else lua_pushnil(L); + lua_pushnumber(L, length); + return 2; +- } ++ } + luaL_buffinit(L, &buffer); + while (input < last) { + switch (*input) { +@@ -150,9 +143,9 @@ static int mime_global_wrp(lua_State *L) + } + + /*-------------------------------------------------------------------------*\ +-* Fill base64 decode map. ++* Fill base64 decode map. + \*-------------------------------------------------------------------------*/ +-static void b64setup(UC *unbase) ++static void b64setup(UC *unbase) + { + int i; + for (i = 0; i <= 255; i++) unbase[i] = (UC) 255; +@@ -161,11 +154,11 @@ static void b64setup(UC *unbase) + } + + /*-------------------------------------------------------------------------*\ +-* Acumulates bytes in input buffer until 3 bytes are available. ++* Acumulates bytes in input buffer until 3 bytes are available. + * Translate the 3 bytes into Base64 form and append to buffer. + * Returns new number of bytes in buffer. + \*-------------------------------------------------------------------------*/ +-static size_t b64encode(UC c, UC *input, size_t size, ++static size_t b64encode(UC c, UC *input, size_t size, + luaL_Buffer *buffer) + { + input[size++] = c; +@@ -174,7 +167,7 @@ static size_t b64encode(UC c, UC *input, size_t size, + unsigned long value = 0; + value += input[0]; value <<= 8; + value += input[1]; value <<= 8; +- value += input[2]; ++ value += input[2]; + code[3] = b64base[value & 0x3f]; value >>= 6; + code[2] = b64base[value & 0x3f]; value >>= 6; + code[1] = b64base[value & 0x3f]; value >>= 6; +@@ -186,11 +179,11 @@ static size_t b64encode(UC c, UC *input, size_t size, + } + + /*-------------------------------------------------------------------------*\ +-* Encodes the Base64 last 1 or 2 bytes and adds padding '=' ++* Encodes the Base64 last 1 or 2 bytes and adds padding '=' + * Result, if any, is appended to buffer. + * Returns 0. + \*-------------------------------------------------------------------------*/ +-static size_t b64pad(const UC *input, size_t size, ++static size_t b64pad(const UC *input, size_t size, + luaL_Buffer *buffer) + { + unsigned long value = 0; +@@ -203,7 +196,7 @@ static size_t b64pad(const UC *input, size_t size, + luaL_addlstring(buffer, (char *) code, 4); + break; + case 2: +- value = input[0]; value <<= 8; ++ value = input[0]; value <<= 8; + value |= input[1]; value <<= 2; + code[2] = b64base[value & 0x3f]; value >>= 6; + code[1] = b64base[value & 0x3f]; value >>= 6; +@@ -217,11 +210,11 @@ static size_t b64pad(const UC *input, size_t size, + } + + /*-------------------------------------------------------------------------*\ +-* Acumulates bytes in input buffer until 4 bytes are available. ++* Acumulates bytes in input buffer until 4 bytes are available. + * Translate the 4 bytes from Base64 form and append to buffer. + * Returns new number of bytes in buffer. + \*-------------------------------------------------------------------------*/ +-static size_t b64decode(UC c, UC *input, size_t size, ++static size_t b64decode(UC c, UC *input, size_t size, + luaL_Buffer *buffer) + { + /* ignore invalid characters */ +@@ -239,7 +232,7 @@ static size_t b64decode(UC c, UC *input, size_t size, + decoded[1] = (UC) (value & 0xff); value >>= 8; + decoded[0] = (UC) value; + /* take care of paddding */ +- valid = (input[2] == '=') ? 1 : (input[3] == '=') ? 2 : 3; ++ valid = (input[2] == '=') ? 1 : (input[3] == '=') ? 2 : 3; + luaL_addlstring(buffer, (char *) decoded, valid); + return 0; + /* need more data */ +@@ -251,7 +244,7 @@ static size_t b64decode(UC c, UC *input, size_t size, + * A, B = b64(C, D) + * A is the encoded version of the largest prefix of C .. D that is + * divisible by 3. B has the remaining bytes of C .. D, *without* encoding. +-* The easiest thing would be to concatenate the two strings and ++* The easiest thing would be to concatenate the two strings and + * encode the result, but we can't afford that or Lua would dupplicate + * every chunk we received. + \*-------------------------------------------------------------------------*/ +@@ -259,7 +252,7 @@ static int mime_global_b64(lua_State *L) + { + UC atom[3]; + size_t isize = 0, asize = 0; +- const UC *input = (UC *) luaL_optlstring(L, 1, NULL, &isize); ++ const UC *input = (const UC *) luaL_optlstring(L, 1, NULL, &isize); + const UC *last = input + isize; + luaL_Buffer buffer; + /* end-of-input blackhole */ +@@ -272,9 +265,9 @@ static int mime_global_b64(lua_State *L) + lua_settop(L, 2); + /* process first part of the input */ + luaL_buffinit(L, &buffer); +- while (input < last) ++ while (input < last) + asize = b64encode(*input++, atom, asize, &buffer); +- input = (UC *) luaL_optlstring(L, 2, NULL, &isize); ++ input = (const UC *) luaL_optlstring(L, 2, NULL, &isize); + /* if second part is nil, we are done */ + if (!input) { + size_t osize = 0; +@@ -288,7 +281,7 @@ static int mime_global_b64(lua_State *L) + } + /* otherwise process the second part */ + last = input + isize; +- while (input < last) ++ while (input < last) + asize = b64encode(*input++, atom, asize, &buffer); + luaL_pushresult(&buffer); + lua_pushlstring(L, (char *) atom, asize); +@@ -305,7 +298,7 @@ static int mime_global_unb64(lua_State *L) + { + UC atom[4]; + size_t isize = 0, asize = 0; +- const UC *input = (UC *) luaL_optlstring(L, 1, NULL, &isize); ++ const UC *input = (const UC *) luaL_optlstring(L, 1, NULL, &isize); + const UC *last = input + isize; + luaL_Buffer buffer; + /* end-of-input blackhole */ +@@ -318,9 +311,9 @@ static int mime_global_unb64(lua_State *L) + lua_settop(L, 2); + /* process first part of the input */ + luaL_buffinit(L, &buffer); +- while (input < last) ++ while (input < last) + asize = b64decode(*input++, atom, asize, &buffer); +- input = (UC *) luaL_optlstring(L, 2, NULL, &isize); ++ input = (const UC *) luaL_optlstring(L, 2, NULL, &isize); + /* if second is nil, we are done */ + if (!input) { + size_t osize = 0; +@@ -333,7 +326,7 @@ static int mime_global_unb64(lua_State *L) + } + /* otherwise, process the rest of the input */ + last = input + isize; +- while (input < last) ++ while (input < last) + asize = b64decode(*input++, atom, asize, &buffer); + luaL_pushresult(&buffer); + lua_pushlstring(L, (char *) atom, asize); +@@ -349,7 +342,7 @@ static int mime_global_unb64(lua_State *L) + * 9 and 32 can be plain, unless in the end of a line, where must be =XX + * encoded lines must be no longer than 76 not counting CRLF + * soft line-break are =CRLF +-* To encode one byte, we need to see the next two. ++* To encode one byte, we need to see the next two. + * Worst case is when we see a space, and wonder if a CRLF is comming + \*-------------------------------------------------------------------------*/ + /*-------------------------------------------------------------------------*\ +@@ -362,7 +355,7 @@ static void qpsetup(UC *cl, UC *unbase) + for (i = 0; i < 256; i++) cl[i] = QP_QUOTED; + for (i = 33; i <= 60; i++) cl[i] = QP_PLAIN; + for (i = 62; i <= 126; i++) cl[i] = QP_PLAIN; +- cl['\t'] = QP_IF_LAST; ++ cl['\t'] = QP_IF_LAST; + cl[' '] = QP_IF_LAST; + cl['\r'] = QP_CR; + for (i = 0; i < 256; i++) unbase[i] = 255; +@@ -388,9 +381,9 @@ static void qpquote(UC c, luaL_Buffer *buffer) + + /*-------------------------------------------------------------------------*\ + * Accumulate characters until we are sure about how to deal with them. +-* Once we are sure, output to the buffer, in the correct form. ++* Once we are sure, output to the buffer, in the correct form. + \*-------------------------------------------------------------------------*/ +-static size_t qpencode(UC c, UC *input, size_t size, ++static size_t qpencode(UC c, UC *input, size_t size, + const char *marker, luaL_Buffer *buffer) + { + input[size++] = c; +@@ -431,7 +424,7 @@ static size_t qpencode(UC c, UC *input, size_t size, + } + + /*-------------------------------------------------------------------------*\ +-* Deal with the final characters ++* Deal with the final characters + \*-------------------------------------------------------------------------*/ + static size_t qppad(UC *input, size_t size, luaL_Buffer *buffer) + { +@@ -448,8 +441,8 @@ static size_t qppad(UC *input, size_t size, luaL_Buffer *buffer) + * Incrementally converts a string to quoted-printable + * A, B = qp(C, D, marker) + * Marker is the text to be used to replace CRLF sequences found in A. +-* A is the encoded version of the largest prefix of C .. D that +-* can be encoded without doubts. ++* A is the encoded version of the largest prefix of C .. D that ++* can be encoded without doubts. + * B has the remaining bytes of C .. D, *without* encoding. + \*-------------------------------------------------------------------------*/ + static int mime_global_qp(lua_State *L) +@@ -457,7 +450,7 @@ static int mime_global_qp(lua_State *L) + + size_t asize = 0, isize = 0; + UC atom[3]; +- const UC *input = (UC *) luaL_optlstring(L, 1, NULL, &isize); ++ const UC *input = (const UC *) luaL_optlstring(L, 1, NULL, &isize); + const UC *last = input + isize; + const char *marker = luaL_optstring(L, 3, CRLF); + luaL_Buffer buffer; +@@ -473,7 +466,7 @@ static int mime_global_qp(lua_State *L) + luaL_buffinit(L, &buffer); + while (input < last) + asize = qpencode(*input++, atom, asize, marker, &buffer); +- input = (UC *) luaL_optlstring(L, 2, NULL, &isize); ++ input = (const UC *) luaL_optlstring(L, 2, NULL, &isize); + /* if second part is nil, we are done */ + if (!input) { + asize = qppad(atom, asize, &buffer); +@@ -493,7 +486,7 @@ static int mime_global_qp(lua_State *L) + + /*-------------------------------------------------------------------------*\ + * Accumulate characters until we are sure about how to deal with them. +-* Once we are sure, output the to the buffer, in the correct form. ++* Once we are sure, output the to the buffer, in the correct form. + \*-------------------------------------------------------------------------*/ + static size_t qpdecode(UC c, UC *input, size_t size, luaL_Buffer *buffer) { + int d; +@@ -501,8 +494,8 @@ static size_t qpdecode(UC c, UC *input, size_t size, luaL_Buffer *buffer) { + /* deal with all characters we can deal */ + switch (input[0]) { + /* if we have an escape character */ +- case '=': +- if (size < 3) return size; ++ case '=': ++ if (size < 3) return size; + /* eliminate soft line break */ + if (input[1] == '\r' && input[2] == '\n') return 0; + /* decode quoted representation */ +@@ -512,7 +505,7 @@ static size_t qpdecode(UC c, UC *input, size_t size, luaL_Buffer *buffer) { + else luaL_addchar(buffer, (char) ((c << 4) + d)); + return 0; + case '\r': +- if (size < 2) return size; ++ if (size < 2) return size; + if (input[1] == '\n') luaL_addlstring(buffer, (char *)input, 2); + return 0; + default: +@@ -525,15 +518,15 @@ static size_t qpdecode(UC c, UC *input, size_t size, luaL_Buffer *buffer) { + /*-------------------------------------------------------------------------*\ + * Incrementally decodes a string in quoted-printable + * A, B = qp(C, D) +-* A is the decoded version of the largest prefix of C .. D that +-* can be decoded without doubts. ++* A is the decoded version of the largest prefix of C .. D that ++* can be decoded without doubts. + * B has the remaining bytes of C .. D, *without* decoding. + \*-------------------------------------------------------------------------*/ + static int mime_global_unqp(lua_State *L) + { + size_t asize = 0, isize = 0; + UC atom[3]; +- const UC *input = (UC *) luaL_optlstring(L, 1, NULL, &isize); ++ const UC *input = (const UC *) luaL_optlstring(L, 1, NULL, &isize); + const UC *last = input + isize; + luaL_Buffer buffer; + /* end-of-input blackhole */ +@@ -548,14 +541,14 @@ static int mime_global_unqp(lua_State *L) + luaL_buffinit(L, &buffer); + while (input < last) + asize = qpdecode(*input++, atom, asize, &buffer); +- input = (UC *) luaL_optlstring(L, 2, NULL, &isize); ++ input = (const UC *) luaL_optlstring(L, 2, NULL, &isize); + /* if second part is nil, we are done */ + if (!input) { + luaL_pushresult(&buffer); + if (!(*lua_tostring(L, -1))) lua_pushnil(L); + lua_pushnil(L); + return 2; +- } ++ } + /* otherwise process rest of input */ + last = input + isize; + while (input < last) +@@ -568,9 +561,9 @@ static int mime_global_unqp(lua_State *L) + /*-------------------------------------------------------------------------*\ + * Incrementally breaks a quoted-printed string into lines + * A, n = qpwrp(l, B, length) +-* A is a copy of B, broken into lines of at most 'length' bytes. +-* 'l' is how many bytes are left for the first line of B. +-* 'n' is the number of bytes left in the last line of A. ++* A is a copy of B, broken into lines of at most 'length' bytes. ++* 'l' is how many bytes are left for the first line of B. ++* 'n' is the number of bytes left in the last line of A. + * There are two complications: lines can't be broken in the middle + * of an encoded =XX, and there might be line breaks already + \*-------------------------------------------------------------------------*/ +@@ -578,7 +571,7 @@ static int mime_global_qpwrp(lua_State *L) + { + size_t size = 0; + int left = (int) luaL_checknumber(L, 1); +- const UC *input = (UC *) luaL_optlstring(L, 2, NULL, &size); ++ const UC *input = (const UC *) luaL_optlstring(L, 2, NULL, &size); + const UC *last = input + size; + int length = (int) luaL_optnumber(L, 3, 76); + luaL_Buffer buffer; +@@ -603,11 +596,11 @@ static int mime_global_qpwrp(lua_State *L) + if (left <= 3) { + left = length; + luaL_addstring(&buffer, EQCRLF); +- } ++ } + luaL_addchar(&buffer, *input); + left--; + break; +- default: ++ default: + if (left <= 1) { + left = length; + luaL_addstring(&buffer, EQCRLF); +@@ -635,7 +628,7 @@ static int mime_global_qpwrp(lua_State *L) + * last is the previous character + \*-------------------------------------------------------------------------*/ + #define eolcandidate(c) (c == '\r' || c == '\n') +-static int eolprocess(int c, int last, const char *marker, ++static int eolprocess(int c, int last, const char *marker, + luaL_Buffer *buffer) + { + if (eolcandidate(c)) { +@@ -653,15 +646,15 @@ static int eolprocess(int c, int last, const char *marker, + } + + /*-------------------------------------------------------------------------*\ +-* Converts a string to uniform EOL convention. ++* Converts a string to uniform EOL convention. + * A, n = eol(o, B, marker) + * A is the converted version of the largest prefix of B that can be +-* converted unambiguously. 'o' is the context returned by the previous ++* converted unambiguously. 'o' is the context returned by the previous + * call. 'n' is the new context. + \*-------------------------------------------------------------------------*/ + static int mime_global_eol(lua_State *L) + { +- int ctx = luaL_checkint(L, 1); ++ int ctx = luaL_checkinteger(L, 1); + size_t isize = 0; + const char *input = luaL_optlstring(L, 2, NULL, &isize); + const char *last = input + isize; +@@ -683,18 +676,18 @@ static int mime_global_eol(lua_State *L) + } + + /*-------------------------------------------------------------------------*\ +-* Takes one byte and stuff it if needed. ++* Takes one byte and stuff it if needed. + \*-------------------------------------------------------------------------*/ + static size_t dot(int c, size_t state, luaL_Buffer *buffer) + { + luaL_addchar(buffer, (char) c); + switch (c) { +- case '\r': ++ case '\r': + return 1; +- case '\n': +- return (state == 1)? 2: 0; +- case '.': +- if (state == 2) ++ case '\n': ++ return (state == 1)? 2: 0; ++ case '.': ++ if (state == 2) + luaL_addchar(buffer, '.'); + default: + return 0; +@@ -719,7 +712,7 @@ static int mime_global_dot(lua_State *L) + } + /* process all input */ + luaL_buffinit(L, &buffer); +- while (input < last) ++ while (input < last) + state = dot(*input++, state, &buffer); + luaL_pushresult(&buffer); + lua_pushnumber(L, (lua_Number) state); +diff --git a/src/options.c b/src/options.c +index 8ac2a14..20f4c28 100644 +--- a/src/options.c ++++ b/src/options.c +@@ -1,8 +1,8 @@ + /*=========================================================================*\ +-* Common option interface ++* Common option interface + * LuaSocket toolkit + \*=========================================================================*/ +-#include <string.h> ++#include <string.h> + + #include "lauxlib.h" + +@@ -20,9 +20,9 @@ static int opt_setboolean(lua_State *L, p_socket ps, int level, int name); + static int opt_getboolean(lua_State *L, p_socket ps, int level, int name); + static int opt_setint(lua_State *L, p_socket ps, int level, int name); + static int opt_getint(lua_State *L, p_socket ps, int level, int name); +-static int opt_set(lua_State *L, p_socket ps, int level, int name, ++static int opt_set(lua_State *L, p_socket ps, int level, int name, + void *val, int len); +-static int opt_get(lua_State *L, p_socket ps, int level, int name, ++static int opt_get(lua_State *L, p_socket ps, int level, int name, + void *val, int* len); + + /*=========================================================================*\ +@@ -60,29 +60,29 @@ int opt_meth_getoption(lua_State *L, p_opt opt, p_socket ps) + /* enables reuse of local address */ + int opt_set_reuseaddr(lua_State *L, p_socket ps) + { +- return opt_setboolean(L, ps, SOL_SOCKET, SO_REUSEADDR); ++ return opt_setboolean(L, ps, SOL_SOCKET, SO_REUSEADDR); + } + + int opt_get_reuseaddr(lua_State *L, p_socket ps) + { +- return opt_getboolean(L, ps, SOL_SOCKET, SO_REUSEADDR); ++ return opt_getboolean(L, ps, SOL_SOCKET, SO_REUSEADDR); + } + + /* enables reuse of local port */ + int opt_set_reuseport(lua_State *L, p_socket ps) + { +- return opt_setboolean(L, ps, SOL_SOCKET, SO_REUSEPORT); ++ return opt_setboolean(L, ps, SOL_SOCKET, SO_REUSEPORT); + } + + int opt_get_reuseport(lua_State *L, p_socket ps) + { +- return opt_getboolean(L, ps, SOL_SOCKET, SO_REUSEPORT); ++ return opt_getboolean(L, ps, SOL_SOCKET, SO_REUSEPORT); + } + + /* disables the Naggle algorithm */ + int opt_set_tcp_nodelay(lua_State *L, p_socket ps) + { +- return opt_setboolean(L, ps, IPPROTO_TCP, TCP_NODELAY); ++ return opt_setboolean(L, ps, IPPROTO_TCP, TCP_NODELAY); + } + + int opt_get_tcp_nodelay(lua_State *L, p_socket ps) +@@ -92,12 +92,12 @@ int opt_get_tcp_nodelay(lua_State *L, p_socket ps) + + int opt_set_keepalive(lua_State *L, p_socket ps) + { +- return opt_setboolean(L, ps, SOL_SOCKET, SO_KEEPALIVE); ++ return opt_setboolean(L, ps, SOL_SOCKET, SO_KEEPALIVE); + } + + int opt_get_keepalive(lua_State *L, p_socket ps) + { +- return opt_getboolean(L, ps, SOL_SOCKET, SO_KEEPALIVE); ++ return opt_getboolean(L, ps, SOL_SOCKET, SO_KEEPALIVE); + } + + int opt_set_dontroute(lua_State *L, p_socket ps) +@@ -105,11 +105,21 @@ int opt_set_dontroute(lua_State *L, p_socket ps) + return opt_setboolean(L, ps, SOL_SOCKET, SO_DONTROUTE); + } + ++int opt_get_dontroute(lua_State *L, p_socket ps) ++{ ++ return opt_getboolean(L, ps, SOL_SOCKET, SO_DONTROUTE); ++} ++ + int opt_set_broadcast(lua_State *L, p_socket ps) + { + return opt_setboolean(L, ps, SOL_SOCKET, SO_BROADCAST); + } + ++int opt_get_broadcast(lua_State *L, p_socket ps) ++{ ++ return opt_getboolean(L, ps, SOL_SOCKET, SO_BROADCAST); ++} ++ + int opt_set_ip6_unicast_hops(lua_State *L, p_socket ps) + { + return opt_setint(L, ps, IPPROTO_IPV6, IPV6_UNICAST_HOPS); +@@ -156,12 +166,12 @@ int opt_set_linger(lua_State *L, p_socket ps) + if (!lua_istable(L, 3)) auxiliar_typeerror(L,3,lua_typename(L, LUA_TTABLE)); + lua_pushstring(L, "on"); + lua_gettable(L, 3); +- if (!lua_isboolean(L, -1)) ++ if (!lua_isboolean(L, -1)) + luaL_argerror(L, 3, "boolean 'on' field expected"); + li.l_onoff = (u_short) lua_toboolean(L, -1); + lua_pushstring(L, "timeout"); + lua_gettable(L, 3); +- if (!lua_isnumber(L, -1)) ++ if (!lua_isnumber(L, -1)) + luaL_argerror(L, 3, "number 'timeout' field expected"); + li.l_linger = (u_short) lua_tonumber(L, -1); + return opt_set(L, ps, SOL_SOCKET, SO_LINGER, (char *) &li, sizeof(li)); +@@ -194,7 +204,7 @@ int opt_set_ip_multicast_if(lua_State *L, p_socket ps) + val.s_addr = htonl(INADDR_ANY); + if (strcmp(address, "*") && !inet_aton(address, &val)) + luaL_argerror(L, 3, "ip expected"); +- return opt_set(L, ps, IPPROTO_IP, IP_MULTICAST_IF, ++ return opt_set(L, ps, IPPROTO_IP, IP_MULTICAST_IF, + (char *) &val, sizeof(val)); + } + +@@ -250,17 +260,17 @@ static int opt_setmembership(lua_State *L, p_socket ps, int level, int name) + if (!lua_istable(L, 3)) auxiliar_typeerror(L,3,lua_typename(L, LUA_TTABLE)); + lua_pushstring(L, "multiaddr"); + lua_gettable(L, 3); +- if (!lua_isstring(L, -1)) ++ if (!lua_isstring(L, -1)) + luaL_argerror(L, 3, "string 'multiaddr' field expected"); +- if (!inet_aton(lua_tostring(L, -1), &val.imr_multiaddr)) ++ if (!inet_aton(lua_tostring(L, -1), &val.imr_multiaddr)) + luaL_argerror(L, 3, "invalid 'multiaddr' ip address"); + lua_pushstring(L, "interface"); + lua_gettable(L, 3); +- if (!lua_isstring(L, -1)) ++ if (!lua_isstring(L, -1)) + luaL_argerror(L, 3, "string 'interface' field expected"); + val.imr_interface.s_addr = htonl(INADDR_ANY); + if (strcmp(lua_tostring(L, -1), "*") && +- !inet_aton(lua_tostring(L, -1), &val.imr_interface)) ++ !inet_aton(lua_tostring(L, -1), &val.imr_interface)) + luaL_argerror(L, 3, "invalid 'interface' ip address"); + return opt_set(L, ps, level, name, (char *) &val, sizeof(val)); + } +@@ -272,14 +282,14 @@ static int opt_ip6_setmembership(lua_State *L, p_socket ps, int level, int name) + if (!lua_istable(L, 3)) auxiliar_typeerror(L,3,lua_typename(L, LUA_TTABLE)); + lua_pushstring(L, "multiaddr"); + lua_gettable(L, 3); +- if (!lua_isstring(L, -1)) ++ if (!lua_isstring(L, -1)) + luaL_argerror(L, 3, "string 'multiaddr' field expected"); +- if (!inet_pton(AF_INET6, lua_tostring(L, -1), &val.ipv6mr_multiaddr)) ++ if (!inet_pton(AF_INET6, lua_tostring(L, -1), &val.ipv6mr_multiaddr)) + luaL_argerror(L, 3, "invalid 'multiaddr' ip address"); + lua_pushstring(L, "interface"); + lua_gettable(L, 3); + /* By default we listen to interface on default route +- * (sigh). However, interface= can override it. We should ++ * (sigh). However, interface= can override it. We should + * support either number, or name for it. Waiting for + * windows port of if_nametoindex */ + if (!lua_isnil(L, -1)) { +@@ -291,7 +301,7 @@ static int opt_ip6_setmembership(lua_State *L, p_socket ps, int level, int name) + return opt_set(L, ps, level, name, (char *) &val, sizeof(val)); + } + +-static ++static + int opt_get(lua_State *L, p_socket ps, int level, int name, void *val, int* len) + { + socklen_t socklen = *len; +@@ -304,7 +314,7 @@ int opt_get(lua_State *L, p_socket ps, int level, int name, void *val, int* len) + return 0; + } + +-static ++static + int opt_set(lua_State *L, p_socket ps, int level, int name, void *val, int len) + { + if (setsockopt(*ps, level, name, (char *) val, len) < 0) { +diff --git a/src/options.h b/src/options.h +index 5657a06..19ba0df 100644 +--- a/src/options.h ++++ b/src/options.h +@@ -21,7 +21,6 @@ typedef t_opt *p_opt; + /* supported options for setoption */ + int opt_set_dontroute(lua_State *L, p_socket ps); + int opt_set_broadcast(lua_State *L, p_socket ps); +-int opt_set_reuseaddr(lua_State *L, p_socket ps); + int opt_set_tcp_nodelay(lua_State *L, p_socket ps); + int opt_set_keepalive(lua_State *L, p_socket ps); + int opt_set_linger(lua_State *L, p_socket ps); +@@ -40,18 +39,21 @@ int opt_set_ip6_drop_membersip(lua_State *L, p_socket ps); + int opt_set_ip6_v6only(lua_State *L, p_socket ps); + + /* supported options for getoption */ ++int opt_get_dontroute(lua_State *L, p_socket ps); ++int opt_get_broadcast(lua_State *L, p_socket ps); + int opt_get_reuseaddr(lua_State *L, p_socket ps); ++int opt_get_reuseport(lua_State *L, p_socket ps); + int opt_get_tcp_nodelay(lua_State *L, p_socket ps); + int opt_get_keepalive(lua_State *L, p_socket ps); + int opt_get_linger(lua_State *L, p_socket ps); +-int opt_get_reuseaddr(lua_State *L, p_socket ps); + int opt_get_ip_multicast_loop(lua_State *L, p_socket ps); + int opt_get_ip_multicast_if(lua_State *L, p_socket ps); + int opt_get_error(lua_State *L, p_socket ps); + int opt_get_ip6_multicast_loop(lua_State *L, p_socket ps); + int opt_get_ip6_multicast_hops(lua_State *L, p_socket ps); + int opt_get_ip6_unicast_hops(lua_State *L, p_socket ps); +-int opt_get_ip6_v6only(lua_State *L, p_socket ps); ++int opt_get_ip6_v6only(lua_State *L, p_socket ps); ++int opt_get_reuseport(lua_State *L, p_socket ps); + + /* invokes the appropriate option handler */ + int opt_meth_setoption(lua_State *L, p_opt opt, p_socket ps); +diff --git a/src/pierror.h b/src/pierror.h +new file mode 100644 +index 0000000..cb773ab +--- /dev/null ++++ b/src/pierror.h +@@ -0,0 +1,28 @@ ++#ifndef PIERROR_H ++#define PIERROR_H ++/*=========================================================================*\ ++* Error messages ++* Defines platform independent error messages ++\*=========================================================================*/ ++ ++#define PIE_HOST_NOT_FOUND "host not found" ++#define PIE_ADDRINUSE "address already in use" ++#define PIE_ISCONN "already connected" ++#define PIE_ACCESS "permission denied" ++#define PIE_CONNREFUSED "connection refused" ++#define PIE_CONNABORTED "closed" ++#define PIE_CONNRESET "closed" ++#define PIE_TIMEDOUT "timeout" ++#define PIE_AGAIN "temporary failure in name resolution" ++#define PIE_BADFLAGS "invalid value for ai_flags" ++#define PIE_BADHINTS "invalid value for hints" ++#define PIE_FAIL "non-recoverable failure in name resolution" ++#define PIE_FAMILY "ai_family not supported" ++#define PIE_MEMORY "memory allocation failure" ++#define PIE_NONAME "host or service not provided, or not known" ++#define PIE_OVERFLOW "argument buffer overflow" ++#define PIE_PROTOCOL "resolved protocol is unknown" ++#define PIE_SERVICE "service not supported for socket type" ++#define PIE_SOCKTYPE "ai_socktype not supported" ++ ++#endif +diff --git a/src/select.c b/src/select.c +index fafaa62..9d133b7 100644 +--- a/src/select.c ++++ b/src/select.c +@@ -6,6 +6,7 @@ + + #include "lua.h" + #include "lauxlib.h" ++#include "compat.h" + + #include "socket.h" + #include "timeout.h" +@@ -16,10 +17,10 @@ + \*=========================================================================*/ + static t_socket getfd(lua_State *L); + static int dirty(lua_State *L); +-static void collect_fd(lua_State *L, int tab, int itab, ++static void collect_fd(lua_State *L, int tab, int itab, + fd_set *set, t_socket *max_fd); + static int check_dirty(lua_State *L, int tab, int dtab, fd_set *set); +-static void return_fd(lua_State *L, fd_set *set, t_socket max_fd, ++static void return_fd(lua_State *L, fd_set *set, t_socket max_fd, + int itab, int tab, int start); + static void make_assoc(lua_State *L, int tab); + static int global_select(lua_State *L); +@@ -38,13 +39,12 @@ static luaL_Reg func[] = { + \*-------------------------------------------------------------------------*/ + int select_open(lua_State *L) { + lua_pushstring(L, "_SETSIZE"); +- lua_pushnumber(L, FD_SETSIZE); ++ lua_pushinteger(L, FD_SETSIZE); ++ lua_rawset(L, -3); ++ lua_pushstring(L, "_SOCKETINVALID"); ++ lua_pushinteger(L, SOCKET_INVALID); + lua_rawset(L, -3); +-#if LUA_VERSION_NUM > 501 && !defined(LUA_COMPAT_MODULE) + luaL_setfuncs(L, func, 0); +-#else +- luaL_openlib(L, NULL, func, 0); +-#endif + return 0; + } + +@@ -98,10 +98,10 @@ static t_socket getfd(lua_State *L) { + lua_pushvalue(L, -2); + lua_call(L, 1, 1); + if (lua_isnumber(L, -1)) { +- double numfd = lua_tonumber(L, -1); ++ double numfd = lua_tonumber(L, -1); + fd = (numfd >= 0.0)? (t_socket) numfd: SOCKET_INVALID; + } +- } ++ } + lua_pop(L, 1); + return fd; + } +@@ -114,12 +114,12 @@ static int dirty(lua_State *L) { + lua_pushvalue(L, -2); + lua_call(L, 1, 1); + is = lua_toboolean(L, -1); +- } ++ } + lua_pop(L, 1); + return is; + } + +-static void collect_fd(lua_State *L, int tab, int itab, ++static void collect_fd(lua_State *L, int tab, int itab, + fd_set *set, t_socket *max_fd) { + int i = 1, n = 0; + /* nil is the same as an empty table */ +@@ -139,16 +139,16 @@ static void collect_fd(lua_State *L, int tab, int itab, + if (fd != SOCKET_INVALID) { + /* make sure we don't overflow the fd_set */ + #ifdef _WIN32 +- if (n >= FD_SETSIZE) ++ if (n >= FD_SETSIZE) + luaL_argerror(L, tab, "too many sockets"); + #else +- if (fd >= FD_SETSIZE) ++ if (fd >= FD_SETSIZE) + luaL_argerror(L, tab, "descriptor too large for set size"); + #endif + FD_SET(fd, set); + n++; + /* keep track of the largest descriptor so far */ +- if (*max_fd == SOCKET_INVALID || *max_fd < fd) ++ if (*max_fd == SOCKET_INVALID || *max_fd < fd) + *max_fd = fd; + /* make sure we can map back from descriptor to the object */ + lua_pushnumber(L, (lua_Number) fd); +@@ -162,9 +162,9 @@ static void collect_fd(lua_State *L, int tab, int itab, + + static int check_dirty(lua_State *L, int tab, int dtab, fd_set *set) { + int ndirty = 0, i = 1; +- if (lua_isnil(L, tab)) ++ if (lua_isnil(L, tab)) + return 0; +- for ( ;; ) { ++ for ( ;; ) { + t_socket fd; + lua_pushnumber(L, i); + lua_gettable(L, tab); +@@ -185,7 +185,7 @@ static int check_dirty(lua_State *L, int tab, int dtab, fd_set *set) { + return ndirty; + } + +-static void return_fd(lua_State *L, fd_set *set, t_socket max_fd, ++static void return_fd(lua_State *L, fd_set *set, t_socket max_fd, + int itab, int tab, int start) { + t_socket fd; + for (fd = 0; fd < max_fd; fd++) { +diff --git a/src/serial.c b/src/serial.c +index 583d4e5..7bdb21c 100644 +--- a/src/serial.c ++++ b/src/serial.c +@@ -2,7 +2,7 @@ + * Serial stream + * LuaSocket toolkit + \*=========================================================================*/ +-#include <string.h> ++#include <string.h> + + #include "lua.h" + #include "lauxlib.h" +@@ -11,7 +11,7 @@ + #include "socket.h" + #include "options.h" + #include "unix.h" +-#include <sys/un.h> ++#include <sys/un.h> + + /* + Reuses userdata definition from unix.h, since it is useful for all +@@ -54,15 +54,6 @@ static luaL_Reg serial_methods[] = { + {NULL, NULL} + }; + +-/* our socket creation function */ +-/* this is an ad-hoc module that returns a single function +- * as such, do not include other functions in this array. */ +-static luaL_Reg func[] = { +- {"serial", global_create}, +- {NULL, NULL} +-}; +- +- + /*-------------------------------------------------------------------------*\ + * Initializes module + \*-------------------------------------------------------------------------*/ +@@ -71,14 +62,7 @@ LUASOCKET_API int luaopen_socket_serial(lua_State *L) { + auxiliar_newclass(L, "serial{client}", serial_methods); + /* create class groups */ + auxiliar_add2group(L, "serial{client}", "serial{any}"); +-#if LUA_VERSION_NUM > 501 && !defined(LUA_COMPAT_MODULE) +- lua_pushcfunction(L, global_create); +- (void) func; +-#else +- /* set function into socket namespace */ +- luaL_openlib(L, "socket", func, 0); + lua_pushcfunction(L, global_create); +-#endif + return 1; + } + +@@ -120,7 +104,7 @@ static int meth_getfd(lua_State *L) { + /* this is very dangerous, but can be handy for those that are brave enough */ + static int meth_setfd(lua_State *L) { + p_unix un = (p_unix) auxiliar_checkgroup(L, "serial{any}", 1); +- un->sock = (t_socket) luaL_checknumber(L, 2); ++ un->sock = (t_socket) luaL_checknumber(L, 2); + return 0; + } + +@@ -131,7 +115,7 @@ static int meth_dirty(lua_State *L) { + } + + /*-------------------------------------------------------------------------*\ +-* Closes socket used by object ++* Closes socket used by object + \*-------------------------------------------------------------------------*/ + static int meth_close(lua_State *L) + { +@@ -156,7 +140,7 @@ static int meth_settimeout(lua_State *L) { + + + /*-------------------------------------------------------------------------*\ +-* Creates a serial object ++* Creates a serial object + \*-------------------------------------------------------------------------*/ + static int global_create(lua_State *L) { + const char* path = luaL_checkstring(L, 1); +@@ -180,7 +164,7 @@ static int global_create(lua_State *L) { + /* initialize remaining structure fields */ + socket_setnonblocking(&sock); + un->sock = sock; +- io_init(&un->io, (p_send) socket_write, (p_recv) socket_read, ++ io_init(&un->io, (p_send) socket_write, (p_recv) socket_read, + (p_error) socket_ioerror, &un->sock); + timeout_init(&un->tm, -1, -1); + buffer_init(&un->buf, &un->io, &un->tm); +diff --git a/src/socket.lua b/src/socket.lua +index 3913e6f..d1c0b16 100644 +--- a/src/socket.lua ++++ b/src/socket.lua +@@ -32,23 +32,23 @@ function _M.bind(host, port, backlog) + err = "no info on address" + for i, alt in base.ipairs(addrinfo) do + if alt.family == "inet" then +- sock, err = socket.tcp() ++ sock, err = socket.tcp4() + else + sock, err = socket.tcp6() + end + if not sock then return nil, err end + sock:setoption("reuseaddr", true) + res, err = sock:bind(alt.addr, port) +- if not res then ++ if not res then + sock:close() +- else ++ else + res, err = sock:listen(backlog) +- if not res then ++ if not res then + sock:close() + else + return sock + end +- end ++ end + end + return nil, err + end +diff --git a/src/tcp.c b/src/tcp.c +index 6594bda..ef9ee6f 100644 +--- a/src/tcp.c ++++ b/src/tcp.c +@@ -6,6 +6,7 @@ + + #include "lua.h" + #include "lauxlib.h" ++#include "compat.h" + + #include "auxiliar.h" + #include "socket.h" +@@ -17,6 +18,7 @@ + * Internal function prototypes + \*=========================================================================*/ + static int global_create(lua_State *L); ++static int global_create4(lua_State *L); + static int global_create6(lua_State *L); + static int global_connect(lua_State *L); + static int meth_connect(lua_State *L); +@@ -34,6 +36,7 @@ static int meth_accept(lua_State *L); + static int meth_close(lua_State *L); + static int meth_getoption(lua_State *L); + static int meth_setoption(lua_State *L); ++static int meth_gettimeout(lua_State *L); + static int meth_settimeout(lua_State *L); + static int meth_getfd(lua_State *L); + static int meth_setfd(lua_State *L); +@@ -63,6 +66,7 @@ static luaL_Reg tcp_methods[] = { + {"setpeername", meth_connect}, + {"setsockname", meth_bind}, + {"settimeout", meth_settimeout}, ++ {"gettimeout", meth_gettimeout}, + {"shutdown", meth_shutdown}, + {NULL, NULL} + }; +@@ -71,6 +75,7 @@ static luaL_Reg tcp_methods[] = { + static t_opt optget[] = { + {"keepalive", opt_get_keepalive}, + {"reuseaddr", opt_get_reuseaddr}, ++ {"reuseport", opt_get_reuseport}, + {"tcp-nodelay", opt_get_tcp_nodelay}, + {"linger", opt_get_linger}, + {"error", opt_get_error}, +@@ -80,6 +85,7 @@ static t_opt optget[] = { + static t_opt optset[] = { + {"keepalive", opt_set_keepalive}, + {"reuseaddr", opt_set_reuseaddr}, ++ {"reuseport", opt_set_reuseport}, + {"tcp-nodelay", opt_set_tcp_nodelay}, + {"ipv6-v6only", opt_set_ip6_v6only}, + {"linger", opt_set_linger}, +@@ -89,6 +95,7 @@ static t_opt optset[] = { + /* functions in library namespace */ + static luaL_Reg func[] = { + {"tcp", global_create}, ++ {"tcp4", global_create4}, + {"tcp6", global_create6}, + {"connect", global_connect}, + {NULL, NULL} +@@ -108,11 +115,7 @@ int tcp_open(lua_State *L) + auxiliar_add2group(L, "tcp{client}", "tcp{any}"); + auxiliar_add2group(L, "tcp{server}", "tcp{any}"); + /* define library functions */ +-#if LUA_VERSION_NUM > 501 && !defined(LUA_COMPAT_MODULE) + luaL_setfuncs(L, func, 0); +-#else +- luaL_openlib(L, NULL, func, 0); +-#endif + return 0; + } + +@@ -216,8 +219,7 @@ static int meth_accept(lua_State *L) + /*-------------------------------------------------------------------------*\ + * Binds an object to an address + \*-------------------------------------------------------------------------*/ +-static int meth_bind(lua_State *L) +-{ ++static int meth_bind(lua_State *L) { + p_tcp tcp = (p_tcp) auxiliar_checkclass(L, "tcp{master}", 1); + const char *address = luaL_checkstring(L, 2); + const char *port = luaL_checkstring(L, 3); +@@ -227,7 +229,7 @@ static int meth_bind(lua_State *L) + bindhints.ai_socktype = SOCK_STREAM; + bindhints.ai_family = tcp->family; + bindhints.ai_flags = AI_PASSIVE; +- err = inet_trybind(&tcp->sock, address, port, &bindhints); ++ err = inet_trybind(&tcp->sock, &tcp->family, address, port, &bindhints); + if (err) { + lua_pushnil(L); + lua_pushstring(L, err); +@@ -240,8 +242,7 @@ static int meth_bind(lua_State *L) + /*-------------------------------------------------------------------------*\ + * Turns a master tcp object into a client object. + \*-------------------------------------------------------------------------*/ +-static int meth_connect(lua_State *L) +-{ ++static int meth_connect(lua_State *L) { + p_tcp tcp = (p_tcp) auxiliar_checkgroup(L, "tcp{any}", 1); + const char *address = luaL_checkstring(L, 2); + const char *port = luaL_checkstring(L, 3); +@@ -252,7 +253,7 @@ static int meth_connect(lua_State *L) + /* make sure we try to connect only to the same family */ + connecthints.ai_family = tcp->family; + timeout_markstart(&tcp->tm); +- err = inet_tryconnect(&tcp->sock, &tcp->family, address, port, ++ err = inet_tryconnect(&tcp->sock, &tcp->family, address, port, + &tcp->tm, &connecthints); + /* have to set the class even if it failed due to non-blocking connects */ + auxiliar_setclass(L, "tcp{client}", 1); +@@ -282,9 +283,12 @@ static int meth_close(lua_State *L) + static int meth_getfamily(lua_State *L) + { + p_tcp tcp = (p_tcp) auxiliar_checkgroup(L, "tcp{any}", 1); +- if (tcp->family == PF_INET6) { ++ if (tcp->family == AF_INET6) { + lua_pushliteral(L, "inet6"); + return 1; ++ } else if (tcp->family == AF_INET) { ++ lua_pushliteral(L, "inet4"); ++ return 1; + } else { + lua_pushliteral(L, "inet4"); + return 1; +@@ -348,6 +352,12 @@ static int meth_settimeout(lua_State *L) + return timeout_meth_settimeout(L, &tcp->tm); + } + ++static int meth_gettimeout(lua_State *L) ++{ ++ p_tcp tcp = (p_tcp) auxiliar_checkgroup(L, "tcp{any}", 1); ++ return timeout_meth_gettimeout(L, &tcp->tm); ++} ++ + /*=========================================================================*\ + * Library functions + \*=========================================================================*/ +@@ -355,37 +365,36 @@ static int meth_settimeout(lua_State *L) + * Creates a master tcp object + \*-------------------------------------------------------------------------*/ + static int tcp_create(lua_State *L, int family) { +- t_socket sock; +- const char *err = inet_trycreate(&sock, family, SOCK_STREAM); +- /* try to allocate a system socket */ +- if (!err) { +- /* allocate tcp object */ +- p_tcp tcp = (p_tcp) lua_newuserdata(L, sizeof(t_tcp)); +- memset(tcp, 0, sizeof(t_tcp)); +- /* set its type as master object */ +- auxiliar_setclass(L, "tcp{master}", -1); +- /* initialize remaining structure fields */ +- socket_setnonblocking(&sock); +- if (family == PF_INET6) { +- int yes = 1; +- setsockopt(sock, IPPROTO_IPV6, IPV6_V6ONLY, +- (void *)&yes, sizeof(yes)); ++ p_tcp tcp = (p_tcp) lua_newuserdata(L, sizeof(t_tcp)); ++ memset(tcp, 0, sizeof(t_tcp)); ++ /* set its type as master object */ ++ auxiliar_setclass(L, "tcp{master}", -1); ++ /* if family is AF_UNSPEC, we leave the socket invalid and ++ * store AF_UNSPEC into family. This will allow it to later be ++ * replaced with an AF_INET6 or AF_INET socket upon first use. */ ++ tcp->sock = SOCKET_INVALID; ++ tcp->family = family; ++ io_init(&tcp->io, (p_send) socket_send, (p_recv) socket_recv, ++ (p_error) socket_ioerror, &tcp->sock); ++ timeout_init(&tcp->tm, -1, -1); ++ buffer_init(&tcp->buf, &tcp->io, &tcp->tm); ++ if (family != AF_UNSPEC) { ++ const char *err = inet_trycreate(&tcp->sock, family, SOCK_STREAM, 0); ++ if (err != NULL) { ++ lua_pushnil(L); ++ lua_pushstring(L, err); ++ return 2; + } +- tcp->sock = sock; +- io_init(&tcp->io, (p_send) socket_send, (p_recv) socket_recv, +- (p_error) socket_ioerror, &tcp->sock); +- timeout_init(&tcp->tm, -1, -1); +- buffer_init(&tcp->buf, &tcp->io, &tcp->tm); +- tcp->family = family; +- return 1; +- } else { +- lua_pushnil(L); +- lua_pushstring(L, err); +- return 2; ++ socket_setnonblocking(&tcp->sock); + } ++ return 1; + } + + static int global_create(lua_State *L) { ++ return tcp_create(L, AF_UNSPEC); ++} ++ ++static int global_create4(lua_State *L) { + return tcp_create(L, AF_INET); + } + +@@ -393,53 +402,6 @@ static int global_create6(lua_State *L) { + return tcp_create(L, AF_INET6); + } + +-#if 0 +-static const char *tryconnect6(const char *remoteaddr, const char *remoteserv, +- struct addrinfo *connecthints, p_tcp tcp) { +- struct addrinfo *iterator = NULL, *resolved = NULL; +- const char *err = NULL; +- /* try resolving */ +- err = socket_gaistrerror(getaddrinfo(remoteaddr, remoteserv, +- connecthints, &resolved)); +- if (err != NULL) { +- if (resolved) freeaddrinfo(resolved); +- return err; +- } +- /* iterate over all returned addresses trying to connect */ +- for (iterator = resolved; iterator; iterator = iterator->ai_next) { +- p_timeout tm = timeout_markstart(&tcp->tm); +- /* create new socket if necessary. if there was no +- * bind, we need to create one for every new family +- * that shows up while iterating. if there was a +- * bind, all families will be the same and we will +- * not enter this branch. */ +- if (tcp->family != iterator->ai_family) { +- socket_destroy(&tcp->sock); +- err = socket_strerror(socket_create(&tcp->sock, +- iterator->ai_family, iterator->ai_socktype, +- iterator->ai_protocol)); +- if (err != NULL) { +- freeaddrinfo(resolved); +- return err; +- } +- tcp->family = iterator->ai_family; +- /* all sockets initially non-blocking */ +- socket_setnonblocking(&tcp->sock); +- } +- /* finally try connecting to remote address */ +- err = socket_strerror(socket_connect(&tcp->sock, +- (SA *) iterator->ai_addr, +- (socklen_t) iterator->ai_addrlen, tm)); +- /* if success, break out of loop */ +- if (err == NULL) break; +- } +- +- freeaddrinfo(resolved); +- /* here, if err is set, we failed */ +- return err; +-} +-#endif +- + static int global_connect(lua_State *L) { + const char *remoteaddr = luaL_checkstring(L, 1); + const char *remoteserv = luaL_checkstring(L, 2); +@@ -456,26 +418,26 @@ static int global_connect(lua_State *L) { + timeout_init(&tcp->tm, -1, -1); + buffer_init(&tcp->buf, &tcp->io, &tcp->tm); + tcp->sock = SOCKET_INVALID; +- tcp->family = PF_UNSPEC; ++ tcp->family = AF_UNSPEC; + /* allow user to pick local address and port */ + memset(&bindhints, 0, sizeof(bindhints)); + bindhints.ai_socktype = SOCK_STREAM; + bindhints.ai_family = family; + bindhints.ai_flags = AI_PASSIVE; + if (localaddr) { +- err = inet_trybind(&tcp->sock, localaddr, localserv, &bindhints); ++ err = inet_trybind(&tcp->sock, &tcp->family, localaddr, ++ localserv, &bindhints); + if (err) { + lua_pushnil(L); + lua_pushstring(L, err); + return 2; + } +- tcp->family = bindhints.ai_family; + } + /* try to connect to remote address and port */ + memset(&connecthints, 0, sizeof(connecthints)); + connecthints.ai_socktype = SOCK_STREAM; + /* make sure we try to connect only to the same family */ +- connecthints.ai_family = bindhints.ai_family; ++ connecthints.ai_family = tcp->family; + err = inet_tryconnect(&tcp->sock, &tcp->family, remoteaddr, remoteserv, + &tcp->tm, &connecthints); + if (err) { +diff --git a/src/timeout.c b/src/timeout.c +index bdd5e1c..5a601d5 100644 +--- a/src/timeout.c ++++ b/src/timeout.c +@@ -8,6 +8,7 @@ + + #include "lua.h" + #include "lauxlib.h" ++#include "compat.h" + + #include "auxiliar.h" + #include "timeout.h" +@@ -52,7 +53,7 @@ void timeout_init(p_timeout tm, double block, double total) { + + /*-------------------------------------------------------------------------*\ + * Determines how much time we have left for the next system call, +-* if the previous call was successful ++* if the previous call was successful + * Input + * tm: timeout control structure + * Returns +@@ -107,7 +108,7 @@ double timeout_getretry(p_timeout tm) { + } + + /*-------------------------------------------------------------------------*\ +-* Marks the operation start time in structure ++* Marks the operation start time in structure + * Input + * tm: timeout control structure + \*-------------------------------------------------------------------------*/ +@@ -117,7 +118,7 @@ p_timeout timeout_markstart(p_timeout tm) { + } + + /*-------------------------------------------------------------------------*\ +-* Gets time in s, relative to January 1, 1970 (UTC) ++* Gets time in s, relative to January 1, 1970 (UTC) + * Returns + * time in s. + \*-------------------------------------------------------------------------*/ +@@ -144,11 +145,7 @@ double timeout_gettime(void) { + * Initializes module + \*-------------------------------------------------------------------------*/ + int timeout_open(lua_State *L) { +-#if LUA_VERSION_NUM > 501 && !defined(LUA_COMPAT_MODULE) + luaL_setfuncs(L, func, 0); +-#else +- luaL_openlib(L, NULL, func, 0); +-#endif + return 0; + } + +@@ -163,7 +160,7 @@ int timeout_meth_settimeout(lua_State *L, p_timeout tm) { + const char *mode = luaL_optstring(L, 3, "b"); + switch (*mode) { + case 'b': +- tm->block = t; ++ tm->block = t; + break; + case 'r': case 't': + tm->total = t; +@@ -176,6 +173,16 @@ int timeout_meth_settimeout(lua_State *L, p_timeout tm) { + return 1; + } + ++/*-------------------------------------------------------------------------*\ ++* Gets timeout values for IO operations ++* Lua Output: block, total ++\*-------------------------------------------------------------------------*/ ++int timeout_meth_gettimeout(lua_State *L, p_timeout tm) { ++ lua_pushnumber(L, tm->block); ++ lua_pushnumber(L, tm->total); ++ return 2; ++} ++ + /*=========================================================================*\ + * Test support functions + \*=========================================================================*/ +diff --git a/src/timeout.h b/src/timeout.h +index 6715ca7..af90231 100644 +--- a/src/timeout.h ++++ b/src/timeout.h +@@ -22,6 +22,7 @@ p_timeout timeout_markstart(p_timeout tm); + double timeout_getstart(p_timeout tm); + double timeout_gettime(void); + int timeout_meth_settimeout(lua_State *L, p_timeout tm); ++int timeout_meth_gettimeout(lua_State *L, p_timeout tm); + + #define timeout_iszero(tm) ((tm)->block == 0.0) + +diff --git a/src/tp.lua b/src/tp.lua +index cbeff56..328cbab 100644 +--- a/src/tp.lua ++++ b/src/tp.lua +@@ -74,7 +74,7 @@ function metat.__index:command(cmd, arg) + end + + function metat.__index:sink(snk, pat) +- local chunk, err = c:receive(pat) ++ local chunk, err = self.c:receive(pat) + return snk(chunk, err) + end + +diff --git a/src/udp.c b/src/udp.c +index a9f2393..ec97252 100644 +--- a/src/udp.c ++++ b/src/udp.c +@@ -7,6 +7,7 @@ + + #include "lua.h" + #include "lauxlib.h" ++#include "compat.h" + + #include "auxiliar.h" + #include "socket.h" +@@ -26,6 +27,7 @@ + * Internal function prototypes + \*=========================================================================*/ + static int global_create(lua_State *L); ++static int global_create4(lua_State *L); + static int global_create6(lua_State *L); + static int meth_send(lua_State *L); + static int meth_sendto(lua_State *L); +@@ -34,6 +36,7 @@ static int meth_receivefrom(lua_State *L); + static int meth_getfamily(lua_State *L); + static int meth_getsockname(lua_State *L); + static int meth_getpeername(lua_State *L); ++static int meth_gettimeout(lua_State *L); + static int meth_setsockname(lua_State *L); + static int meth_setpeername(lua_State *L); + static int meth_close(lua_State *L); +@@ -64,6 +67,7 @@ static luaL_Reg udp_methods[] = { + {"setpeername", meth_setpeername}, + {"setsockname", meth_setsockname}, + {"settimeout", meth_settimeout}, ++ {"gettimeout", meth_gettimeout}, + {NULL, NULL} + }; + +@@ -89,6 +93,10 @@ static t_opt optset[] = { + + /* socket options for getoption */ + static t_opt optget[] = { ++ {"dontroute", opt_get_dontroute}, ++ {"broadcast", opt_get_broadcast}, ++ {"reuseaddr", opt_get_reuseaddr}, ++ {"reuseport", opt_get_reuseport}, + {"ip-multicast-if", opt_get_ip_multicast_if}, + {"ip-multicast-loop", opt_get_ip_multicast_loop}, + {"error", opt_get_error}, +@@ -102,6 +110,7 @@ static t_opt optget[] = { + /* functions in library namespace */ + static luaL_Reg func[] = { + {"udp", global_create}, ++ {"udp4", global_create4}, + {"udp6", global_create6}, + {NULL, NULL} + }; +@@ -109,8 +118,7 @@ static luaL_Reg func[] = { + /*-------------------------------------------------------------------------*\ + * Initializes module + \*-------------------------------------------------------------------------*/ +-int udp_open(lua_State *L) +-{ ++int udp_open(lua_State *L) { + /* create classes */ + auxiliar_newclass(L, "udp{connected}", udp_methods); + auxiliar_newclass(L, "udp{unconnected}", udp_methods); +@@ -120,18 +128,18 @@ int udp_open(lua_State *L) + auxiliar_add2group(L, "udp{connected}", "select{able}"); + auxiliar_add2group(L, "udp{unconnected}", "select{able}"); + /* define library functions */ +-#if LUA_VERSION_NUM > 501 && !defined(LUA_COMPAT_MODULE) + luaL_setfuncs(L, func, 0); +-#else +- luaL_openlib(L, NULL, func, 0); +-#endif ++ /* export default UDP size */ ++ lua_pushliteral(L, "_DATAGRAMSIZE"); ++ lua_pushinteger(L, UDP_DATAGRAMSIZE); ++ lua_rawset(L, -3); + return 0; + } + + /*=========================================================================*\ + * Lua methods + \*=========================================================================*/ +-const char *udp_strerror(int err) { ++static const char *udp_strerror(int err) { + /* a 'closed' error on an unconnected means the target address was not + * accepted by the transport layer */ + if (err == IO_CLOSED) return "refused"; +@@ -182,7 +190,7 @@ static int meth_sendto(lua_State *L) { + return 2; + } + timeout_markstart(tm); +- err = socket_sendto(&udp->sock, data, count, &sent, ai->ai_addr, ++ err = socket_sendto(&udp->sock, data, count, &sent, ai->ai_addr, + (socklen_t) ai->ai_addrlen, tm); + freeaddrinfo(ai); + if (err != IO_DONE) { +@@ -199,71 +207,80 @@ static int meth_sendto(lua_State *L) { + \*-------------------------------------------------------------------------*/ + static int meth_receive(lua_State *L) { + p_udp udp = (p_udp) auxiliar_checkgroup(L, "udp{any}", 1); +- char buffer[UDP_DATAGRAMSIZE]; +- size_t got, count = (size_t) luaL_optnumber(L, 2, sizeof(buffer)); ++ char buf[UDP_DATAGRAMSIZE]; ++ size_t got, wanted = (size_t) luaL_optnumber(L, 2, sizeof(buf)); ++ char *dgram = wanted > sizeof(buf)? (char *) malloc(wanted): buf; + int err; + p_timeout tm = &udp->tm; +- count = MIN(count, sizeof(buffer)); + timeout_markstart(tm); +- err = socket_recv(&udp->sock, buffer, count, &got, tm); ++ if (!dgram) { ++ lua_pushnil(L); ++ lua_pushliteral(L, "out of memory"); ++ return 2; ++ } ++ err = socket_recv(&udp->sock, dgram, wanted, &got, tm); + /* Unlike TCP, recv() of zero is not closed, but a zero-length packet. */ +- if (err == IO_CLOSED) +- err = IO_DONE; +- if (err != IO_DONE) { ++ if (err != IO_DONE && err != IO_CLOSED) { + lua_pushnil(L); + lua_pushstring(L, udp_strerror(err)); ++ if (wanted > sizeof(buf)) free(dgram); + return 2; + } +- lua_pushlstring(L, buffer, got); ++ lua_pushlstring(L, dgram, got); ++ if (wanted > sizeof(buf)) free(dgram); + return 1; + } + + /*-------------------------------------------------------------------------*\ + * Receives data and sender from a UDP socket + \*-------------------------------------------------------------------------*/ +-static int meth_receivefrom(lua_State *L) +-{ ++static int meth_receivefrom(lua_State *L) { + p_udp udp = (p_udp) auxiliar_checkclass(L, "udp{unconnected}", 1); +- char buffer[UDP_DATAGRAMSIZE]; +- size_t got, count = (size_t) luaL_optnumber(L, 2, sizeof(buffer)); +- int err; +- p_timeout tm = &udp->tm; ++ char buf[UDP_DATAGRAMSIZE]; ++ size_t got, wanted = (size_t) luaL_optnumber(L, 2, sizeof(buf)); ++ char *dgram = wanted > sizeof(buf)? (char *) malloc(wanted): buf; + struct sockaddr_storage addr; + socklen_t addr_len = sizeof(addr); + char addrstr[INET6_ADDRSTRLEN]; + char portstr[6]; ++ int err; ++ p_timeout tm = &udp->tm; + timeout_markstart(tm); +- count = MIN(count, sizeof(buffer)); +- err = socket_recvfrom(&udp->sock, buffer, count, &got, (SA *) &addr, ++ if (!dgram) { ++ lua_pushnil(L); ++ lua_pushliteral(L, "out of memory"); ++ return 2; ++ } ++ err = socket_recvfrom(&udp->sock, dgram, wanted, &got, (SA *) &addr, + &addr_len, tm); + /* Unlike TCP, recv() of zero is not closed, but a zero-length packet. */ +- if (err == IO_CLOSED) +- err = IO_DONE; +- if (err != IO_DONE) { ++ if (err != IO_DONE && err != IO_CLOSED) { + lua_pushnil(L); + lua_pushstring(L, udp_strerror(err)); ++ if (wanted > sizeof(buf)) free(dgram); + return 2; + } +- err = getnameinfo((struct sockaddr *)&addr, addr_len, addrstr, ++ err = getnameinfo((struct sockaddr *)&addr, addr_len, addrstr, + INET6_ADDRSTRLEN, portstr, 6, NI_NUMERICHOST | NI_NUMERICSERV); + if (err) { + lua_pushnil(L); + lua_pushstring(L, gai_strerror(err)); ++ if (wanted > sizeof(buf)) free(dgram); + return 2; + } +- lua_pushlstring(L, buffer, got); ++ lua_pushlstring(L, dgram, got); + lua_pushstring(L, addrstr); + lua_pushinteger(L, (int) strtol(portstr, (char **) NULL, 10)); ++ if (wanted > sizeof(buf)) free(dgram); + return 3; + } + + /*-------------------------------------------------------------------------*\ + * Returns family as string + \*-------------------------------------------------------------------------*/ +-static int meth_getfamily(lua_State *L) +-{ ++static int meth_getfamily(lua_State *L) { + p_udp udp = (p_udp) auxiliar_checkgroup(L, "udp{any}", 1); +- if (udp->family == PF_INET6) { ++ if (udp->family == AF_INET6) { + lua_pushliteral(L, "inet6"); + return 1; + } else { +@@ -332,6 +349,11 @@ static int meth_settimeout(lua_State *L) { + return timeout_meth_settimeout(L, &udp->tm); + } + ++static int meth_gettimeout(lua_State *L) { ++ p_udp udp = (p_udp) auxiliar_checkgroup(L, "udp{any}", 1); ++ return timeout_meth_gettimeout(L, &udp->tm); ++} ++ + /*-------------------------------------------------------------------------*\ + * Turns a master udp object into a client object. + \*-------------------------------------------------------------------------*/ +@@ -348,7 +370,7 @@ static int meth_setpeername(lua_State *L) { + /* make sure we try to connect only to the same family */ + connecthints.ai_family = udp->family; + if (connecting) { +- err = inet_tryconnect(&udp->sock, &udp->family, address, ++ err = inet_tryconnect(&udp->sock, &udp->family, address, + port, tm, &connecthints); + if (err) { + lua_pushnil(L); +@@ -362,7 +384,6 @@ static int meth_setpeername(lua_State *L) { + inet_trydisconnect(&udp->sock, udp->family, tm); + auxiliar_setclass(L, "udp{unconnected}", 1); + } +- /* change class to connected or unconnected depending on address */ + lua_pushnumber(L, 1); + return 1; + } +@@ -390,7 +411,7 @@ static int meth_setsockname(lua_State *L) { + bindhints.ai_socktype = SOCK_DGRAM; + bindhints.ai_family = udp->family; + bindhints.ai_flags = AI_PASSIVE; +- err = inet_trybind(&udp->sock, address, port, &bindhints); ++ err = inet_trybind(&udp->sock, &udp->family, address, port, &bindhints); + if (err) { + lua_pushnil(L); + lua_pushstring(L, err); +@@ -407,32 +428,32 @@ static int meth_setsockname(lua_State *L) { + * Creates a master udp object + \*-------------------------------------------------------------------------*/ + static int udp_create(lua_State *L, int family) { +- t_socket sock; +- const char *err = inet_trycreate(&sock, family, SOCK_DGRAM); +- /* try to allocate a system socket */ +- if (!err) { +- /* allocate udp object */ +- p_udp udp = (p_udp) lua_newuserdata(L, sizeof(t_udp)); +- auxiliar_setclass(L, "udp{unconnected}", -1); +- /* initialize remaining structure fields */ +- socket_setnonblocking(&sock); +- if (family == PF_INET6) { +- int yes = 1; +- setsockopt(sock, IPPROTO_IPV6, IPV6_V6ONLY, +- (void *)&yes, sizeof(yes)); ++ /* allocate udp object */ ++ p_udp udp = (p_udp) lua_newuserdata(L, sizeof(t_udp)); ++ auxiliar_setclass(L, "udp{unconnected}", -1); ++ /* if family is AF_UNSPEC, we leave the socket invalid and ++ * store AF_UNSPEC into family. This will allow it to later be ++ * replaced with an AF_INET6 or AF_INET socket upon first use. */ ++ udp->sock = SOCKET_INVALID; ++ timeout_init(&udp->tm, -1, -1); ++ udp->family = family; ++ if (family != AF_UNSPEC) { ++ const char *err = inet_trycreate(&udp->sock, family, SOCK_DGRAM, 0); ++ if (err != NULL) { ++ lua_pushnil(L); ++ lua_pushstring(L, err); ++ return 2; + } +- udp->sock = sock; +- timeout_init(&udp->tm, -1, -1); +- udp->family = family; +- return 1; +- } else { +- lua_pushnil(L); +- lua_pushstring(L, err); +- return 2; ++ socket_setnonblocking(&udp->sock); + } ++ return 1; + } + + static int global_create(lua_State *L) { ++ return udp_create(L, AF_UNSPEC); ++} ++ ++static int global_create4(lua_State *L) { + return udp_create(L, AF_INET); + } + +diff --git a/src/udp.h b/src/udp.h +index 2b831a5..be9b6a5 100644 +--- a/src/udp.h ++++ b/src/udp.h +@@ -8,7 +8,7 @@ + * (AF_INET, SOCK_DGRAM). + * + * Two classes are defined: connected and unconnected. UDP objects are +-* originally unconnected. They can be "connected" to a given address ++* originally unconnected. They can be "connected" to a given address + * with a call to the setpeername function. The same function can be used to + * break the connection. + \*=========================================================================*/ +@@ -17,7 +17,6 @@ + #include "timeout.h" + #include "socket.h" + +-/* can't be larger than wsocket.c MAXCHUNK!!! */ + #define UDP_DATAGRAMSIZE 8192 + + typedef struct t_udp_ { +diff --git a/src/unix.c b/src/unix.c +index 91aaaf8..5bc3148 100644 +--- a/src/unix.c ++++ b/src/unix.c +@@ -1,8 +1,8 @@ + /*=========================================================================*\ +-* Unix domain socket ++* Unix domain socket + * LuaSocket toolkit + \*=========================================================================*/ +-#include <string.h> ++#include <string.h> + + #include "lua.h" + #include "lauxlib.h" +@@ -11,7 +11,7 @@ + #include "socket.h" + #include "options.h" + #include "unix.h" +-#include <sys/un.h> ++#include <sys/un.h> + + /*=========================================================================*\ + * Internal function prototypes +@@ -68,15 +68,6 @@ static t_opt optset[] = { + {NULL, NULL} + }; + +-/* our socket creation function */ +-/* this is an ad-hoc module that returns a single function +- * as such, do not include other functions in this array. */ +-static luaL_Reg func[] = { +- {"unix", global_create}, +- {NULL, NULL} +-}; +- +- + /*-------------------------------------------------------------------------*\ + * Initializes module + \*-------------------------------------------------------------------------*/ +@@ -89,15 +80,8 @@ int luaopen_socket_unix(lua_State *L) { + auxiliar_add2group(L, "unix{master}", "unix{any}"); + auxiliar_add2group(L, "unix{client}", "unix{any}"); + auxiliar_add2group(L, "unix{server}", "unix{any}"); +-#if LUA_VERSION_NUM > 501 && !defined(LUA_COMPAT_MODULE) +- lua_pushcfunction(L, global_create); +- (void) func; +-#else +- /* set function into socket namespace */ +- luaL_openlib(L, "socket", func, 0); +- lua_pushcfunction(L, global_create); +-#endif + /* return the function instead of the 'socket' table */ ++ lua_pushcfunction(L, global_create); + return 1; + } + +@@ -147,7 +131,7 @@ static int meth_getfd(lua_State *L) { + /* this is very dangerous, but can be handy for those that are brave enough */ + static int meth_setfd(lua_State *L) { + p_unix un = (p_unix) auxiliar_checkgroup(L, "unix{any}", 1); +- un->sock = (t_socket) luaL_checknumber(L, 2); ++ un->sock = (t_socket) luaL_checknumber(L, 2); + return 0; + } + +@@ -158,8 +142,8 @@ static int meth_dirty(lua_State *L) { + } + + /*-------------------------------------------------------------------------*\ +-* Waits for and returns a client object attempting connection to the +-* server object ++* Waits for and returns a client object attempting connection to the ++* server object + \*-------------------------------------------------------------------------*/ + static int meth_accept(lua_State *L) { + p_unix server = (p_unix) auxiliar_checkclass(L, "unix{server}", 1); +@@ -173,20 +157,20 @@ static int meth_accept(lua_State *L) { + /* initialize structure fields */ + socket_setnonblocking(&sock); + clnt->sock = sock; +- io_init(&clnt->io, (p_send)socket_send, (p_recv)socket_recv, ++ io_init(&clnt->io, (p_send)socket_send, (p_recv)socket_recv, + (p_error) socket_ioerror, &clnt->sock); + timeout_init(&clnt->tm, -1, -1); + buffer_init(&clnt->buf, &clnt->io, &clnt->tm); + return 1; + } else { +- lua_pushnil(L); ++ lua_pushnil(L); + lua_pushstring(L, socket_strerror(err)); + return 2; + } + } + + /*-------------------------------------------------------------------------*\ +-* Binds an object to an address ++* Binds an object to an address + \*-------------------------------------------------------------------------*/ + static const char *unix_trybind(p_unix un, const char *path) { + struct sockaddr_un local; +@@ -197,16 +181,16 @@ static const char *unix_trybind(p_unix un, const char *path) { + strcpy(local.sun_path, path); + local.sun_family = AF_UNIX; + #ifdef UNIX_HAS_SUN_LEN +- local.sun_len = sizeof(local.sun_family) + sizeof(local.sun_len) ++ local.sun_len = sizeof(local.sun_family) + sizeof(local.sun_len) + + len + 1; + err = socket_bind(&un->sock, (SA *) &local, local.sun_len); + +-#else +- err = socket_bind(&un->sock, (SA *) &local, ++#else ++ err = socket_bind(&un->sock, (SA *) &local, + sizeof(local.sun_family) + len); + #endif + if (err != IO_DONE) socket_destroy(&un->sock); +- return socket_strerror(err); ++ return socket_strerror(err); + } + + static int meth_bind(lua_State *L) { +@@ -236,11 +220,11 @@ static const char *unix_tryconnect(p_unix un, const char *path) + remote.sun_family = AF_UNIX; + timeout_markstart(&un->tm); + #ifdef UNIX_HAS_SUN_LEN +- remote.sun_len = sizeof(remote.sun_family) + sizeof(remote.sun_len) ++ remote.sun_len = sizeof(remote.sun_family) + sizeof(remote.sun_len) + + len + 1; + err = socket_connect(&un->sock, (SA *) &remote, remote.sun_len, &un->tm); + #else +- err = socket_connect(&un->sock, (SA *) &remote, ++ err = socket_connect(&un->sock, (SA *) &remote, + sizeof(remote.sun_family) + len, &un->tm); + #endif + if (err != IO_DONE) socket_destroy(&un->sock); +@@ -264,7 +248,7 @@ static int meth_connect(lua_State *L) + } + + /*-------------------------------------------------------------------------*\ +-* Closes socket used by object ++* Closes socket used by object + \*-------------------------------------------------------------------------*/ + static int meth_close(lua_State *L) + { +@@ -319,13 +303,13 @@ static int meth_settimeout(lua_State *L) { + * Library functions + \*=========================================================================*/ + /*-------------------------------------------------------------------------*\ +-* Creates a master unix object ++* Creates a master unix object + \*-------------------------------------------------------------------------*/ + static int global_create(lua_State *L) { + t_socket sock; + int err = socket_create(&sock, AF_UNIX, SOCK_STREAM, 0); + /* try to allocate a system socket */ +- if (err == IO_DONE) { ++ if (err == IO_DONE) { + /* allocate unix object */ + p_unix un = (p_unix) lua_newuserdata(L, sizeof(t_unix)); + /* set its type as master object */ +@@ -333,7 +317,7 @@ static int global_create(lua_State *L) { + /* initialize remaining structure fields */ + socket_setnonblocking(&sock); + un->sock = sock; +- io_init(&un->io, (p_send) socket_send, (p_recv) socket_recv, ++ io_init(&un->io, (p_send) socket_send, (p_recv) socket_recv, + (p_error) socket_ioerror, &un->sock); + timeout_init(&un->tm, -1, -1); + buffer_init(&un->buf, &un->io, &un->tm); +diff --git a/src/url.lua b/src/url.lua +index 7809535..fbd93d1 100644 +--- a/src/url.lua ++++ b/src/url.lua +@@ -219,6 +219,7 @@ end + -- corresponding absolute url + ----------------------------------------------------------------------------- + function _M.absolute(base_url, relative_url) ++ local base_parsed + if base.type(base_url) == "table" then + base_parsed = base_url + base_url = _M.build(base_parsed) +diff --git a/src/usocket.c b/src/usocket.c +index 096ecd0..8adc573 100644 +--- a/src/usocket.c ++++ b/src/usocket.c +@@ -4,12 +4,13 @@ + * + * The code is now interrupt-safe. + * The penalty of calling select to avoid busy-wait is only paid when +-* the I/O call fail in the first place. ++* the I/O call fail in the first place. + \*=========================================================================*/ +-#include <string.h> ++#include <string.h> + #include <signal.h> + + #include "socket.h" ++#include "pierror.h" + + /*-------------------------------------------------------------------------*\ + * Wait for readable/writable/connected socket with timeout +@@ -72,7 +73,7 @@ int socket_waitfd(p_socket ps, int sw, p_timeout tm) { + + + /*-------------------------------------------------------------------------*\ +-* Initializes module ++* Initializes module + \*-------------------------------------------------------------------------*/ + int socket_open(void) { + /* instals a handler to ignore sigpipe or it will crash us */ +@@ -81,7 +82,7 @@ int socket_open(void) { + } + + /*-------------------------------------------------------------------------*\ +-* Close module ++* Close module + \*-------------------------------------------------------------------------*/ + int socket_close(void) { + return 1; +@@ -92,7 +93,6 @@ int socket_close(void) { + \*-------------------------------------------------------------------------*/ + void socket_destroy(p_socket ps) { + if (*ps != SOCKET_INVALID) { +- socket_setblocking(ps); + close(*ps); + *ps = SOCKET_INVALID; + } +@@ -101,7 +101,7 @@ void socket_destroy(p_socket ps) { + /*-------------------------------------------------------------------------*\ + * Select with timeout control + \*-------------------------------------------------------------------------*/ +-int socket_select(t_socket n, fd_set *rfds, fd_set *wfds, fd_set *efds, ++int socket_select(t_socket n, fd_set *rfds, fd_set *wfds, fd_set *efds, + p_timeout tm) { + int ret; + do { +@@ -120,8 +120,8 @@ int socket_select(t_socket n, fd_set *rfds, fd_set *wfds, fd_set *efds, + \*-------------------------------------------------------------------------*/ + int socket_create(p_socket ps, int domain, int type, int protocol) { + *ps = socket(domain, type, protocol); +- if (*ps != SOCKET_INVALID) return IO_DONE; +- else return errno; ++ if (*ps != SOCKET_INVALID) return IO_DONE; ++ else return errno; + } + + /*-------------------------------------------------------------------------*\ +@@ -130,29 +130,25 @@ int socket_create(p_socket ps, int domain, int type, int protocol) { + int socket_bind(p_socket ps, SA *addr, socklen_t len) { + int err = IO_DONE; + socket_setblocking(ps); +- if (bind(*ps, addr, len) < 0) err = errno; ++ if (bind(*ps, addr, len) < 0) err = errno; + socket_setnonblocking(ps); + return err; + } + + /*-------------------------------------------------------------------------*\ +-* ++* + \*-------------------------------------------------------------------------*/ + int socket_listen(p_socket ps, int backlog) { +- int err = IO_DONE; +- socket_setblocking(ps); +- if (listen(*ps, backlog)) err = errno; +- socket_setnonblocking(ps); ++ int err = IO_DONE; ++ if (listen(*ps, backlog)) err = errno; + return err; + } + + /*-------------------------------------------------------------------------*\ +-* ++* + \*-------------------------------------------------------------------------*/ + void socket_shutdown(p_socket ps, int how) { +- socket_setblocking(ps); + shutdown(*ps, how); +- socket_setnonblocking(ps); + } + + /*-------------------------------------------------------------------------*\ +@@ -166,7 +162,7 @@ int socket_connect(p_socket ps, SA *addr, socklen_t len, p_timeout tm) { + do if (connect(*ps, addr, len) == 0) return IO_DONE; + while ((err = errno) == EINTR); + /* if connection failed immediately, return error code */ +- if (err != EINPROGRESS && err != EAGAIN) return err; ++ if (err != EINPROGRESS && err != EAGAIN) return err; + /* zero timeout case optimization */ + if (timeout_iszero(tm)) return IO_TIMEOUT; + /* wait until we have the result of the connection attempt or timeout */ +@@ -181,7 +177,7 @@ int socket_connect(p_socket ps, SA *addr, socklen_t len, p_timeout tm) { + * Accept with timeout + \*-------------------------------------------------------------------------*/ + int socket_accept(p_socket ps, p_socket pa, SA *addr, socklen_t *len, p_timeout tm) { +- if (*ps == SOCKET_INVALID) return IO_CLOSED; ++ if (*ps == SOCKET_INVALID) return IO_CLOSED; + for ( ;; ) { + int err; + if ((*pa = accept(*ps, addr, len)) != SOCKET_INVALID) return IO_DONE; +@@ -197,7 +193,7 @@ int socket_accept(p_socket ps, p_socket pa, SA *addr, socklen_t *len, p_timeout + /*-------------------------------------------------------------------------*\ + * Send with timeout + \*-------------------------------------------------------------------------*/ +-int socket_send(p_socket ps, const char *data, size_t count, ++int socket_send(p_socket ps, const char *data, size_t count, + size_t *sent, p_timeout tm) + { + int err; +@@ -215,6 +211,8 @@ int socket_send(p_socket ps, const char *data, size_t count, + err = errno; + /* EPIPE means the connection was closed */ + if (err == EPIPE) return IO_CLOSED; ++ /* EPROTOTYPE means the connection is being closed (on Yosemite!)*/ ++ if (err == EPROTOTYPE) continue; + /* we call was interrupted, just try again */ + if (err == EINTR) continue; + /* if failed fatal reason, report error */ +@@ -229,20 +227,21 @@ int socket_send(p_socket ps, const char *data, size_t count, + /*-------------------------------------------------------------------------*\ + * Sendto with timeout + \*-------------------------------------------------------------------------*/ +-int socket_sendto(p_socket ps, const char *data, size_t count, size_t *sent, ++int socket_sendto(p_socket ps, const char *data, size_t count, size_t *sent, + SA *addr, socklen_t len, p_timeout tm) + { + int err; + *sent = 0; + if (*ps == SOCKET_INVALID) return IO_CLOSED; + for ( ;; ) { +- long put = (long) sendto(*ps, data, count, 0, addr, len); ++ long put = (long) sendto(*ps, data, count, 0, addr, len); + if (put >= 0) { + *sent = put; + return IO_DONE; + } + err = errno; + if (err == EPIPE) return IO_CLOSED; ++ if (err == EPROTOTYPE) continue; + if (err == EINTR) continue; + if (err != EAGAIN) return err; + if ((err = socket_waitfd(ps, WAITFD_W, tm)) != IO_DONE) return err; +@@ -266,8 +265,8 @@ int socket_recv(p_socket ps, char *data, size_t count, size_t *got, p_timeout tm + err = errno; + if (taken == 0) return IO_CLOSED; + if (err == EINTR) continue; +- if (err != EAGAIN) return err; +- if ((err = socket_waitfd(ps, WAITFD_R, tm)) != IO_DONE) return err; ++ if (err != EAGAIN) return err; ++ if ((err = socket_waitfd(ps, WAITFD_R, tm)) != IO_DONE) return err; + } + return IO_UNKNOWN; + } +@@ -275,7 +274,7 @@ int socket_recv(p_socket ps, char *data, size_t count, size_t *got, p_timeout tm + /*-------------------------------------------------------------------------*\ + * Recvfrom with timeout + \*-------------------------------------------------------------------------*/ +-int socket_recvfrom(p_socket ps, char *data, size_t count, size_t *got, ++int socket_recvfrom(p_socket ps, char *data, size_t count, size_t *got, + SA *addr, socklen_t *len, p_timeout tm) { + int err; + *got = 0; +@@ -289,8 +288,8 @@ int socket_recvfrom(p_socket ps, char *data, size_t count, size_t *got, + err = errno; + if (taken == 0) return IO_CLOSED; + if (err == EINTR) continue; +- if (err != EAGAIN) return err; +- if ((err = socket_waitfd(ps, WAITFD_R, tm)) != IO_DONE) return err; ++ if (err != EAGAIN) return err; ++ if ((err = socket_waitfd(ps, WAITFD_R, tm)) != IO_DONE) return err; + } + return IO_UNKNOWN; + } +@@ -303,7 +302,7 @@ int socket_recvfrom(p_socket ps, char *data, size_t count, size_t *got, + * with send/recv replaced with write/read. We can't just use write/read + * in the socket version, because behaviour when size is zero is different. + \*-------------------------------------------------------------------------*/ +-int socket_write(p_socket ps, const char *data, size_t count, ++int socket_write(p_socket ps, const char *data, size_t count, + size_t *sent, p_timeout tm) + { + int err; +@@ -321,6 +320,8 @@ int socket_write(p_socket ps, const char *data, size_t count, + err = errno; + /* EPIPE means the connection was closed */ + if (err == EPIPE) return IO_CLOSED; ++ /* EPROTOTYPE means the connection is being closed (on Yosemite!)*/ ++ if (err == EPROTOTYPE) continue; + /* we call was interrupted, just try again */ + if (err == EINTR) continue; + /* if failed fatal reason, report error */ +@@ -349,8 +350,8 @@ int socket_read(p_socket ps, char *data, size_t count, size_t *got, p_timeout tm + err = errno; + if (taken == 0) return IO_CLOSED; + if (err == EINTR) continue; +- if (err != EAGAIN) return err; +- if ((err = socket_waitfd(ps, WAITFD_R, tm)) != IO_DONE) return err; ++ if (err != EAGAIN) return err; ++ if ((err = socket_waitfd(ps, WAITFD_R, tm)) != IO_DONE) return err; + } + return IO_UNKNOWN; + } +@@ -374,7 +375,7 @@ void socket_setnonblocking(p_socket ps) { + } + + /*-------------------------------------------------------------------------*\ +-* DNS helpers ++* DNS helpers + \*-------------------------------------------------------------------------*/ + int socket_gethostbyaddr(const char *addr, socklen_t len, struct hostent **hp) { + *hp = gethostbyaddr(addr, len, AF_INET); +@@ -399,7 +400,7 @@ int socket_gethostbyname(const char *addr, struct hostent **hp) { + const char *socket_hoststrerror(int err) { + if (err <= 0) return io_strerror(err); + switch (err) { +- case HOST_NOT_FOUND: return "host not found"; ++ case HOST_NOT_FOUND: return PIE_HOST_NOT_FOUND; + default: return hstrerror(err); + } + } +@@ -407,42 +408,43 @@ const char *socket_hoststrerror(int err) { + const char *socket_strerror(int err) { + if (err <= 0) return io_strerror(err); + switch (err) { +- case EADDRINUSE: return "address already in use"; +- case EISCONN: return "already connected"; +- case EACCES: return "permission denied"; +- case ECONNREFUSED: return "connection refused"; +- case ECONNABORTED: return "closed"; +- case ECONNRESET: return "closed"; +- case ETIMEDOUT: return "timeout"; +- default: return strerror(err); ++ case EADDRINUSE: return PIE_ADDRINUSE; ++ case EISCONN: return PIE_ISCONN; ++ case EACCES: return PIE_ACCESS; ++ case ECONNREFUSED: return PIE_CONNREFUSED; ++ case ECONNABORTED: return PIE_CONNABORTED; ++ case ECONNRESET: return PIE_CONNRESET; ++ case ETIMEDOUT: return PIE_TIMEDOUT; ++ default: { ++ return strerror(err); ++ } + } + } + + const char *socket_ioerror(p_socket ps, int err) { + (void) ps; + return socket_strerror(err); +-} ++} + + const char *socket_gaistrerror(int err) { +- if (err == 0) return NULL; ++ if (err == 0) return NULL; + switch (err) { +- case EAI_AGAIN: return "temporary failure in name resolution"; +- case EAI_BADFLAGS: return "invalid value for ai_flags"; ++ case EAI_AGAIN: return PIE_AGAIN; ++ case EAI_BADFLAGS: return PIE_BADFLAGS; + #ifdef EAI_BADHINTS +- case EAI_BADHINTS: return "invalid value for hints"; ++ case EAI_BADHINTS: return PIE_BADHINTS; + #endif +- case EAI_FAIL: return "non-recoverable failure in name resolution"; +- case EAI_FAMILY: return "ai_family not supported"; +- case EAI_MEMORY: return "memory allocation failure"; +- case EAI_NONAME: +- return "host or service not provided, or not known"; +- case EAI_OVERFLOW: return "argument buffer overflow"; ++ case EAI_FAIL: return PIE_FAIL; ++ case EAI_FAMILY: return PIE_FAMILY; ++ case EAI_MEMORY: return PIE_MEMORY; ++ case EAI_NONAME: return PIE_NONAME; ++ case EAI_OVERFLOW: return PIE_OVERFLOW; + #ifdef EAI_PROTOCOL +- case EAI_PROTOCOL: return "resolved protocol is unknown"; ++ case EAI_PROTOCOL: return PIE_PROTOCOL; + #endif +- case EAI_SERVICE: return "service not supported for socket type"; +- case EAI_SOCKTYPE: return "ai_socktype not supported"; +- case EAI_SYSTEM: return strerror(errno); ++ case EAI_SERVICE: return PIE_SERVICE; ++ case EAI_SOCKTYPE: return PIE_SOCKTYPE; ++ case EAI_SYSTEM: return strerror(errno); + default: return gai_strerror(err); + } + } +diff --git a/src/wsocket.c b/src/wsocket.c +index b4a4384..8ecb0fc 100644 +--- a/src/wsocket.c ++++ b/src/wsocket.c +@@ -3,33 +3,34 @@ + * LuaSocket toolkit + * + * The penalty of calling select to avoid busy-wait is only paid when +-* the I/O call fail in the first place. ++* the I/O call fail in the first place. + \*=========================================================================*/ + #include <string.h> + + #include "socket.h" ++#include "pierror.h" + + /* WinSock doesn't have a strerror... */ + static const char *wstrerror(int err); + + /*-------------------------------------------------------------------------*\ +-* Initializes module ++* Initializes module + \*-------------------------------------------------------------------------*/ + int socket_open(void) { + WSADATA wsaData; +- WORD wVersionRequested = MAKEWORD(2, 0); ++ WORD wVersionRequested = MAKEWORD(2, 0); + int err = WSAStartup(wVersionRequested, &wsaData ); + if (err != 0) return 0; + if ((LOBYTE(wsaData.wVersion) != 2 || HIBYTE(wsaData.wVersion) != 0) && + (LOBYTE(wsaData.wVersion) != 1 || HIBYTE(wsaData.wVersion) != 1)) { + WSACleanup(); +- return 0; ++ return 0; + } + return 1; + } + + /*-------------------------------------------------------------------------*\ +-* Close module ++* Close module + \*-------------------------------------------------------------------------*/ + int socket_close(void) { + WSACleanup(); +@@ -50,10 +51,10 @@ int socket_waitfd(p_socket ps, int sw, p_timeout tm) { + struct timeval tv, *tp = NULL; + double t; + if (timeout_iszero(tm)) return IO_TIMEOUT; /* optimize timeout == 0 case */ +- if (sw & WAITFD_R) { +- FD_ZERO(&rfds); ++ if (sw & WAITFD_R) { ++ FD_ZERO(&rfds); + FD_SET(*ps, &rfds); +- rp = &rfds; ++ rp = &rfds; + } + if (sw & WAITFD_W) { FD_ZERO(&wfds); FD_SET(*ps, &wfds); wp = &wfds; } + if (sw & WAITFD_C) { FD_ZERO(&efds); FD_SET(*ps, &efds); ep = &efds; } +@@ -72,9 +73,9 @@ int socket_waitfd(p_socket ps, int sw, p_timeout tm) { + /*-------------------------------------------------------------------------*\ + * Select with int timeout in ms + \*-------------------------------------------------------------------------*/ +-int socket_select(t_socket n, fd_set *rfds, fd_set *wfds, fd_set *efds, ++int socket_select(t_socket n, fd_set *rfds, fd_set *wfds, fd_set *efds, + p_timeout tm) { +- struct timeval tv; ++ struct timeval tv; + double t = timeout_get(tm); + tv.tv_sec = (int) t; + tv.tv_usec = (int) ((t - tv.tv_sec) * 1.0e6); +@@ -96,7 +97,7 @@ void socket_destroy(p_socket ps) { + } + + /*-------------------------------------------------------------------------*\ +-* ++* + \*-------------------------------------------------------------------------*/ + void socket_shutdown(p_socket ps, int how) { + socket_setblocking(ps); +@@ -134,10 +135,10 @@ int socket_connect(p_socket ps, SA *addr, socklen_t len, p_timeout tm) { + /* give windows time to set the error (yes, disgusting) */ + Sleep(10); + /* find out why we failed */ +- getsockopt(*ps, SOL_SOCKET, SO_ERROR, (char *)&err, &len); ++ getsockopt(*ps, SOL_SOCKET, SO_ERROR, (char *)&err, &len); + /* we KNOW there was an error. if 'why' is 0, we will return + * "unknown error", but it's not really our fault */ +- return err > 0? err: IO_UNKNOWN; ++ return err > 0? err: IO_UNKNOWN; + } else return err; + + } +@@ -154,7 +155,7 @@ int socket_bind(p_socket ps, SA *addr, socklen_t len) { + } + + /*-------------------------------------------------------------------------*\ +-* ++* + \*-------------------------------------------------------------------------*/ + int socket_listen(p_socket ps, int backlog) { + int err = IO_DONE; +@@ -167,7 +168,7 @@ int socket_listen(p_socket ps, int backlog) { + /*-------------------------------------------------------------------------*\ + * Accept with timeout + \*-------------------------------------------------------------------------*/ +-int socket_accept(p_socket ps, p_socket pa, SA *addr, socklen_t *len, ++int socket_accept(p_socket ps, p_socket pa, SA *addr, socklen_t *len, + p_timeout tm) { + if (*ps == SOCKET_INVALID) return IO_CLOSED; + for ( ;; ) { +@@ -175,21 +176,21 @@ int socket_accept(p_socket ps, p_socket pa, SA *addr, socklen_t *len, + /* try to get client socket */ + if ((*pa = accept(*ps, addr, len)) != SOCKET_INVALID) return IO_DONE; + /* find out why we failed */ +- err = WSAGetLastError(); ++ err = WSAGetLastError(); + /* if we failed because there was no connectoin, keep trying */ + if (err != WSAEWOULDBLOCK && err != WSAECONNABORTED) return err; + /* call select to avoid busy wait */ + if ((err = socket_waitfd(ps, WAITFD_R, tm)) != IO_DONE) return err; +- } ++ } + } + + /*-------------------------------------------------------------------------*\ + * Send with timeout +-* On windows, if you try to send 10MB, the OS will buffer EVERYTHING +-* this can take an awful lot of time and we will end up blocked. ++* On windows, if you try to send 10MB, the OS will buffer EVERYTHING ++* this can take an awful lot of time and we will end up blocked. + * Therefore, whoever calls this function should not pass a huge buffer. + \*-------------------------------------------------------------------------*/ +-int socket_send(p_socket ps, const char *data, size_t count, ++int socket_send(p_socket ps, const char *data, size_t count, + size_t *sent, p_timeout tm) + { + int err; +@@ -206,18 +207,18 @@ int socket_send(p_socket ps, const char *data, size_t count, + return IO_DONE; + } + /* deal with failure */ +- err = WSAGetLastError(); ++ err = WSAGetLastError(); + /* we can only proceed if there was no serious error */ + if (err != WSAEWOULDBLOCK) return err; + /* avoid busy wait */ + if ((err = socket_waitfd(ps, WAITFD_W, tm)) != IO_DONE) return err; +- } ++ } + } + + /*-------------------------------------------------------------------------*\ + * Sendto with timeout + \*-------------------------------------------------------------------------*/ +-int socket_sendto(p_socket ps, const char *data, size_t count, size_t *sent, ++int socket_sendto(p_socket ps, const char *data, size_t count, size_t *sent, + SA *addr, socklen_t len, p_timeout tm) + { + int err; +@@ -229,17 +230,17 @@ int socket_sendto(p_socket ps, const char *data, size_t count, size_t *sent, + *sent = put; + return IO_DONE; + } +- err = WSAGetLastError(); ++ err = WSAGetLastError(); + if (err != WSAEWOULDBLOCK) return err; + if ((err = socket_waitfd(ps, WAITFD_W, tm)) != IO_DONE) return err; +- } ++ } + } + + /*-------------------------------------------------------------------------*\ + * Receive with timeout + \*-------------------------------------------------------------------------*/ +-int socket_recv(p_socket ps, char *data, size_t count, size_t *got, +- p_timeout tm) ++int socket_recv(p_socket ps, char *data, size_t count, size_t *got, ++ p_timeout tm) + { + int err, prev = IO_DONE; + *got = 0; +@@ -252,9 +253,9 @@ int socket_recv(p_socket ps, char *data, size_t count, size_t *got, + } + if (taken == 0) return IO_CLOSED; + err = WSAGetLastError(); +- /* On UDP, a connreset simply means the previous send failed. +- * So we try again. +- * On TCP, it means our socket is now useless, so the error passes. ++ /* On UDP, a connreset simply means the previous send failed. ++ * So we try again. ++ * On TCP, it means our socket is now useless, so the error passes. + * (We will loop again, exiting because the same error will happen) */ + if (err != WSAEWOULDBLOCK) { + if (err != WSAECONNRESET || prev == WSAECONNRESET) return err; +@@ -267,8 +268,8 @@ int socket_recv(p_socket ps, char *data, size_t count, size_t *got, + /*-------------------------------------------------------------------------*\ + * Recvfrom with timeout + \*-------------------------------------------------------------------------*/ +-int socket_recvfrom(p_socket ps, char *data, size_t count, size_t *got, +- SA *addr, socklen_t *len, p_timeout tm) ++int socket_recvfrom(p_socket ps, char *data, size_t count, size_t *got, ++ SA *addr, socklen_t *len, p_timeout tm) + { + int err, prev = IO_DONE; + *got = 0; +@@ -281,8 +282,8 @@ int socket_recvfrom(p_socket ps, char *data, size_t count, size_t *got, + } + if (taken == 0) return IO_CLOSED; + err = WSAGetLastError(); +- /* On UDP, a connreset simply means the previous send failed. +- * So we try again. ++ /* On UDP, a connreset simply means the previous send failed. ++ * So we try again. + * On TCP, it means our socket is now useless, so the error passes. + * (We will loop again, exiting because the same error will happen) */ + if (err != WSAEWOULDBLOCK) { +@@ -310,7 +311,7 @@ void socket_setnonblocking(p_socket ps) { + } + + /*-------------------------------------------------------------------------*\ +-* DNS helpers ++* DNS helpers + \*-------------------------------------------------------------------------*/ + int socket_gethostbyaddr(const char *addr, socklen_t len, struct hostent **hp) { + *hp = gethostbyaddr(addr, len, AF_INET); +@@ -330,21 +331,21 @@ int socket_gethostbyname(const char *addr, struct hostent **hp) { + const char *socket_hoststrerror(int err) { + if (err <= 0) return io_strerror(err); + switch (err) { +- case WSAHOST_NOT_FOUND: return "host not found"; +- default: return wstrerror(err); ++ case WSAHOST_NOT_FOUND: return PIE_HOST_NOT_FOUND; ++ default: return wstrerror(err); + } + } + + const char *socket_strerror(int err) { + if (err <= 0) return io_strerror(err); + switch (err) { +- case WSAEADDRINUSE: return "address already in use"; +- case WSAECONNREFUSED: return "connection refused"; +- case WSAEISCONN: return "already connected"; +- case WSAEACCES: return "permission denied"; +- case WSAECONNABORTED: return "closed"; +- case WSAECONNRESET: return "closed"; +- case WSAETIMEDOUT: return "timeout"; ++ case WSAEADDRINUSE: return PIE_ADDRINUSE; ++ case WSAECONNREFUSED : return PIE_CONNREFUSED; ++ case WSAEISCONN: return PIE_ISCONN; ++ case WSAEACCES: return PIE_ACCESS; ++ case WSAECONNABORTED: return PIE_CONNABORTED; ++ case WSAECONNRESET: return PIE_CONNRESET; ++ case WSAETIMEDOUT: return PIE_TIMEDOUT; + default: return wstrerror(err); + } + } +@@ -357,7 +358,7 @@ const char *socket_ioerror(p_socket ps, int err) { + static const char *wstrerror(int err) { + switch (err) { + case WSAEINTR: return "Interrupted function call"; +- case WSAEACCES: return "Permission denied"; ++ case WSAEACCES: return PIE_ACCESS; // "Permission denied"; + case WSAEFAULT: return "Bad address"; + case WSAEINVAL: return "Invalid argument"; + case WSAEMFILE: return "Too many open files"; +@@ -370,63 +371,61 @@ static const char *wstrerror(int err) { + case WSAEPROTOTYPE: return "Protocol wrong type for socket"; + case WSAENOPROTOOPT: return "Bad protocol option"; + case WSAEPROTONOSUPPORT: return "Protocol not supported"; +- case WSAESOCKTNOSUPPORT: return "Socket type not supported"; ++ case WSAESOCKTNOSUPPORT: return PIE_SOCKTYPE; // "Socket type not supported"; + case WSAEOPNOTSUPP: return "Operation not supported"; + case WSAEPFNOSUPPORT: return "Protocol family not supported"; +- case WSAEAFNOSUPPORT: +- return "Address family not supported by protocol family"; +- case WSAEADDRINUSE: return "Address already in use"; ++ case WSAEAFNOSUPPORT: return PIE_FAMILY; // "Address family not supported by protocol family"; ++ case WSAEADDRINUSE: return PIE_ADDRINUSE; // "Address already in use"; + case WSAEADDRNOTAVAIL: return "Cannot assign requested address"; + case WSAENETDOWN: return "Network is down"; + case WSAENETUNREACH: return "Network is unreachable"; + case WSAENETRESET: return "Network dropped connection on reset"; + case WSAECONNABORTED: return "Software caused connection abort"; +- case WSAECONNRESET: return "Connection reset by peer"; ++ case WSAECONNRESET: return PIE_CONNRESET; // "Connection reset by peer"; + case WSAENOBUFS: return "No buffer space available"; +- case WSAEISCONN: return "Socket is already connected"; ++ case WSAEISCONN: return PIE_ISCONN; // "Socket is already connected"; + case WSAENOTCONN: return "Socket is not connected"; + case WSAESHUTDOWN: return "Cannot send after socket shutdown"; +- case WSAETIMEDOUT: return "Connection timed out"; +- case WSAECONNREFUSED: return "Connection refused"; ++ case WSAETIMEDOUT: return PIE_TIMEDOUT; // "Connection timed out"; ++ case WSAECONNREFUSED: return PIE_CONNREFUSED; // "Connection refused"; + case WSAEHOSTDOWN: return "Host is down"; + case WSAEHOSTUNREACH: return "No route to host"; + case WSAEPROCLIM: return "Too many processes"; + case WSASYSNOTREADY: return "Network subsystem is unavailable"; + case WSAVERNOTSUPPORTED: return "Winsock.dll version out of range"; +- case WSANOTINITIALISED: ++ case WSANOTINITIALISED: + return "Successful WSAStartup not yet performed"; + case WSAEDISCON: return "Graceful shutdown in progress"; +- case WSAHOST_NOT_FOUND: return "Host not found"; ++ case WSAHOST_NOT_FOUND: return PIE_HOST_NOT_FOUND; // "Host not found"; + case WSATRY_AGAIN: return "Nonauthoritative host not found"; +- case WSANO_RECOVERY: return "Nonrecoverable name lookup error"; ++ case WSANO_RECOVERY: return PIE_FAIL; // "Nonrecoverable name lookup error"; + case WSANO_DATA: return "Valid name, no data record of requested type"; + default: return "Unknown error"; + } + } + + const char *socket_gaistrerror(int err) { +- if (err == 0) return NULL; ++ if (err == 0) return NULL; + switch (err) { +- case EAI_AGAIN: return "temporary failure in name resolution"; +- case EAI_BADFLAGS: return "invalid value for ai_flags"; ++ case EAI_AGAIN: return PIE_AGAIN; ++ case EAI_BADFLAGS: return PIE_BADFLAGS; + #ifdef EAI_BADHINTS +- case EAI_BADHINTS: return "invalid value for hints"; ++ case EAI_BADHINTS: return PIE_BADHINTS; + #endif +- case EAI_FAIL: return "non-recoverable failure in name resolution"; +- case EAI_FAMILY: return "ai_family not supported"; +- case EAI_MEMORY: return "memory allocation failure"; +- case EAI_NONAME: +- return "host or service not provided, or not known"; ++ case EAI_FAIL: return PIE_FAIL; ++ case EAI_FAMILY: return PIE_FAMILY; ++ case EAI_MEMORY: return PIE_MEMORY; ++ case EAI_NONAME: return PIE_NONAME; + #ifdef EAI_OVERFLOW +- case EAI_OVERFLOW: return "argument buffer overflow"; ++ case EAI_OVERFLOW: return PIE_OVERFLOW; + #endif + #ifdef EAI_PROTOCOL +- case EAI_PROTOCOL: return "resolved protocol is unknown"; ++ case EAI_PROTOCOL: return PIE_PROTOCOL; + #endif +- case EAI_SERVICE: return "service not supported for socket type"; +- case EAI_SOCKTYPE: return "ai_socktype not supported"; ++ case EAI_SERVICE: return PIE_SERVICE; ++ case EAI_SOCKTYPE: return PIE_SOCKTYPE; + #ifdef EAI_SYSTEM +- case EAI_SYSTEM: return strerror(errno); ++ case EAI_SYSTEM: return strerror(errno); + #endif + default: return gai_strerror(err); + } +diff --git a/test/auth/.htaccess b/test/auth/.htaccess +new file mode 100644 +index 0000000..bb2794a +--- /dev/null ++++ b/test/auth/.htaccess +@@ -0,0 +1,4 @@ ++AuthName "test-auth" ++ AuthType Basic ++ AuthUserFile /Users/diego/impa/luasocket/test/auth/.htpasswd ++ Require valid-user +diff --git a/test/auth/.htpasswd b/test/auth/.htpasswd +index fd9002b..cfb2603 100644 +--- a/test/auth/.htpasswd ++++ b/test/auth/.htpasswd +@@ -1 +1 @@ +-luasocket:l8n2npozPB.sQ ++luasocket:$apr1$47u2O.Me$.m/5BWAtt7GVoxsouIPBR1 +diff --git a/test/excepttest.lua b/test/excepttest.lua +index ce9f197..80c9cb8 100644 +--- a/test/excepttest.lua ++++ b/test/excepttest.lua +@@ -1,6 +1,30 @@ + local socket = require("socket") +-try = socket.newtry(function() +- print("finalized!!!") ++ ++local finalizer_called ++ ++local func = socket.protect(function(err, ...) ++ local try = socket.newtry(function() ++ finalizer_called = true ++ end) ++ ++ if err then ++ return error(err, 0) ++ else ++ return try(...) ++ end + end) +-try = socket.protect(try) +-print(try(nil, "it works")) ++ ++local ret1, ret2, ret3 = func(false, 1, 2, 3) ++assert(not finalizer_called, "unexpected finalizer call") ++assert(ret1 == 1 and ret2 == 2 and ret3 == 3, "incorrect return values") ++ ++ret1, ret2, ret3 = func(false, false, "error message") ++assert(finalizer_called, "finalizer not called") ++assert(ret1 == nil and ret2 == "error message" and ret3 == nil, "incorrect return values") ++ ++local err = {key = "value"} ++ret1, ret2 = pcall(func, err) ++assert(not ret1, "error not rethrown") ++assert(ret2 == err, "incorrect error rethrown") ++ ++print("OK") +diff --git a/test/httptest.lua b/test/httptest.lua +index d5fbb37..63ff921 100644 +--- a/test/httptest.lua ++++ b/test/httptest.lua +@@ -1,4 +1,4 @@ +--- needs Alias from /home/c/diego/tec/luasocket/test to ++-- needs Alias from /home/c/diego/tec/luasocket/test to + -- "/luasocket-test" and "/luasocket-test/" + -- needs ScriptAlias from /home/c/diego/tec/luasocket/test/cgi + -- to "/luasocket-test-cgi" and "/luasocket-test-cgi/" +@@ -36,22 +36,22 @@ index = readfile(index_file) + local check_result = function(response, expect, ignore) + for i,v in pairs(response) do + if not ignore[i] then +- if v ~= expect[i] then ++ if v ~= expect[i] then + local f = io.open("err", "w") + f:write(tostring(v), "\n\n versus\n\n", tostring(expect[i])) + f:close() +- fail(i .. " differs!") ++ fail(i .. " differs!") + end + end + end + for i,v in pairs(expect) do + if not ignore[i] then +- if v ~= response[i] then ++ if v ~= response[i] then + local f = io.open("err", "w") + f:write(tostring(response[i]), "\n\n versus\n\n", tostring(v)) + v = string.sub(type(v) == "string" and v or "", 1, 70) + f:close() +- fail(i .. " differs!") ++ fail(i .. " differs!") + end + end + end +@@ -61,10 +61,10 @@ end + local check_request = function(request, expect, ignore) + local t + if not request.sink then request.sink, t = ltn12.sink.table() end +- request.source = request.source or ++ request.source = request.source or + (request.body and ltn12.source.string(request.body)) + local response = {} +- response.code, response.headers, response.status = ++ response.code, response.headers, response.status = + socket.skip(1, http.request(request)) + if t and #t > 0 then response.body = table.concat(t) end + check_result(response, expect, ignore) +@@ -82,7 +82,7 @@ else fail(back.query) end + ------------------------------------------------------------------------ + io.write("testing query string correctness: ") + forth = "this+is+the+query+string" +-back = http.request("http://" .. host .. cgiprefix .. ++back = http.request("http://" .. host .. cgiprefix .. + "/query-string?" .. forth) + if similar(back, forth) then print("ok") + else fail("failed!") end +@@ -120,10 +120,10 @@ check_request(request, expect, ignore) + ------------------------------------------------------------------------ + io.write("testing invalid url: ") + local r, e = http.request{url = host .. prefix} +-assert(r == nil and e == "invalid host ''") ++assert(r == nil and e == "invalid host ''") + r, re = http.request(host .. prefix) +-assert(r == nil and e == re, tostring(r) ..", " .. tostring(re) .. +- " vs " .. tostring(e)) ++assert(r == nil and e == re, tostring(r) ..", " .. tostring(re) .. ++ " vs " .. tostring(e)) + print("ok") + + io.write("testing invalid empty port: ") +@@ -212,7 +212,7 @@ os.remove(index_file .. "-back") + io.write("testing ltn12.(sink|source).chain and mime.(encode|decode): ") + + local function b64length(len) +- local a = math.ceil(len/3)*4 ++ local a = math.ceil(len/3)*4 + local l = math.ceil(a/76) + return a + l*2 + end +@@ -313,7 +313,7 @@ ignore = { + headers = 1 + } + check_request(request, expect, ignore) +- ++ + ------------------------------------------------------------------------ + io.write("testing document not found: ") + request = { +@@ -429,9 +429,9 @@ print("ok") + io.write("testing host not found: ") + local c, e = socket.connect("example.invalid", 80) + local r, re = http.request{url = "http://example.invalid/does/not/exist"} +-assert(r == nil and e == re, tostring(r) .. " " .. tostring(re)) ++assert(r == nil and e == re, tostring(r) .. " " .. tostring(re)) + r, re = http.request("http://example.invalid/does/not/exist") +-assert(r == nil and e == re) ++assert(r == nil and e == re) + print("ok") + + ------------------------------------------------------------------------ +diff --git a/test/ltn12test.lua b/test/ltn12test.lua +index 74a45e8..e3f85fb 100644 +--- a/test/ltn12test.lua ++++ b/test/ltn12test.lua +@@ -192,6 +192,21 @@ assert(filter(nil, 1), "filter not empty") + print("ok") + + -------------------------------- ++io.write("testing source.chain (with several filters): ") ++local function double(x) -- filter turning "ABC" into "AABBCC" ++ if not x then return end ++ local b={} ++ for k in x:gmatch'.' do table.insert(b, k..k) end ++ return table.concat(b) ++end ++source = ltn12.source.string(s) ++source = ltn12.source.chain(source, double, double, double) ++sink, t = ltn12.sink.table() ++assert(ltn12.pump.all(source, sink), "returned error") ++assert(table.concat(t) == double(double(double(s))), "mismatch") ++print("ok") ++ ++-------------------------------- + io.write("testing source.chain (with split) and sink.chain (with merge): ") + source = ltn12.source.string(s) + filter = split(5) +@@ -206,6 +221,15 @@ assert(filter2(nil, 1), "filter2 not empty") + print("ok") + + -------------------------------- ++io.write("testing sink.chain (with several filters): ") ++source = ltn12.source.string(s) ++sink, t = ltn12.sink.table() ++sink = ltn12.sink.chain(double, double, double, sink) ++assert(ltn12.pump.all(source, sink), "returned error") ++assert(table.concat(t) == double(double(double(s))), "mismatch") ++print("ok") ++ ++-------------------------------- + io.write("testing filter.chain (and sink.chain, with split, merge): ") + source = ltn12.source.string(s) + filter = split(5) +@@ -272,3 +296,4 @@ assert(filter3(nil, 1), "filter3 not empty") + assert(filter4(nil, 1), "filter4 not empty") + assert(filter5(nil, 1), "filter5 not empty") + print("ok") ++ +diff --git a/test/testclnt.lua b/test/testclnt.lua +index 315783b..170e187 100644 +--- a/test/testclnt.lua ++++ b/test/testclnt.lua +@@ -8,7 +8,7 @@ function printf(...) + end + + function pass(...) +- printf(...) ++ printf(...) + io.stderr:write("\n") + end + +@@ -45,30 +45,30 @@ function check_timeout(tm, sl, elapsed, err, opp, mode, alldone) + if not err then warn("must be buffered") + elseif err == "timeout" then pass("proper timeout") + else fail("unexpected error '%s'", err) end +- else +- if err ~= "timeout" then fail("should have timed out") ++ else ++ if err ~= "timeout" then fail("should have timed out") + else pass("proper timeout") end + end + else + if mode == "total" then +- if elapsed > tm then ++ if elapsed > tm then + if err ~= "timeout" then fail("should have timed out") + else pass("proper timeout") end + elseif elapsed < tm then +- if err then fail(err) ++ if err then fail(err) + else pass("ok") end +- else +- if alldone then +- if err then fail("unexpected error '%s'", err) ++ else ++ if alldone then ++ if err then fail("unexpected error '%s'", err) + else pass("ok") end + else +- if err ~= "timeout" then fail(err) ++ if err ~= "timeout" then fail(err) + else pass("proper timeoutk") end + end + end +- else +- if err then fail(err) +- else pass("ok") end ++ else ++ if err then fail(err) ++ else pass("ok") end + end + end + end +@@ -104,8 +104,8 @@ control:setoption("tcp-nodelay", true) + ------------------------------------------------------------------------ + function test_methods(sock, methods) + for _, v in pairs(methods) do +- if type(sock[v]) ~= "function" then +- fail(sock.class .. " method '" .. v .. "' not registered") ++ if type(sock[v]) ~= "function" then ++ fail(sock.class .. " method '" .. v .. "' not registered") + end + end + pass(sock.class .. " methods are ok") +@@ -121,7 +121,7 @@ function test_mixed(len) + local p3 = "raw " .. string.rep("z", inter) .. "bytes" + local p4 = "end" .. string.rep("w", inter) .. "bytes" + local bp1, bp2, bp3, bp4 +-remote (string.format("str = data:receive(%d)", ++remote (string.format("str = data:receive(%d)", + string.len(p1)+string.len(p2)+string.len(p3)+string.len(p4))) + sent, err = data:send(p1..p2..p3..p4) + if err then fail(err) end +@@ -166,7 +166,7 @@ function test_rawline(len) + io.stderr:write("length " .. len .. ": ") + local str, str10, back, err + str = string.rep(string.char(47), math.mod(len, 10)) +- str10 = string.rep(string.char(120,21,77,4,5,0,7,36,44,100), ++ str10 = string.rep(string.char(120,21,77,4,5,0,7,36,44,100), + math.floor(len/10)) + str = str .. str10 + remote "str = data:receive()" +@@ -216,7 +216,7 @@ function test_totaltimeoutreceive(len, tm, sl) + data:settimeout(tm, "total") + local t = socket.gettime() + str, err, partial, elapsed = data:receive(2*len) +- check_timeout(tm, sl, elapsed, err, "receive", "total", ++ check_timeout(tm, sl, elapsed, err, "receive", "total", + string.len(str or partial) == 2*len) + end + +@@ -236,7 +236,7 @@ function test_totaltimeoutsend(len, tm, sl) + data:settimeout(tm, "total") + str = string.rep("a", 2*len) + total, err, partial, elapsed = data:send(str) +- check_timeout(tm, sl, elapsed, err, "send", "total", ++ check_timeout(tm, sl, elapsed, err, "send", "total", + total == 2*len) + end + +@@ -256,7 +256,7 @@ function test_blockingtimeoutreceive(len, tm, sl) + ]], 2*tm, len, sl, sl)) + data:settimeout(tm) + str, err, partial, elapsed = data:receive(2*len) +- check_timeout(tm, sl, elapsed, err, "receive", "blocking", ++ check_timeout(tm, sl, elapsed, err, "receive", "blocking", + string.len(str or partial) == 2*len) + end + +@@ -290,10 +290,10 @@ function empty_connect() + data = server:accept() + ]] + data, err = socket.connect("", port) +- if not data then ++ if not data then + pass("ok") + data = socket.connect(host, port) +- else ++ else + pass("gethostbyname returns localhost on empty string...") + end + end +@@ -304,15 +304,20 @@ function isclosed(c) + end + + function active_close() +- reconnect() +- if isclosed(data) then fail("should not be closed") end +- data:close() +- if not isclosed(data) then fail("should be closed") end +- data = nil +- local udp = socket.udp() ++ local tcp = socket.tcp4() ++ if isclosed(tcp) then fail("should not be closed") end ++ tcp:close() ++ if not isclosed(tcp) then fail("should be closed") end ++ tcp = socket.tcp() ++ if not isclosed(tcp) then fail("should be closed") end ++ tcp = nil ++ local udp = socket.udp4() + if isclosed(udp) then fail("should not be closed") end + udp:close() + if not isclosed(udp) then fail("should be closed") end ++ udp = socket.udp() ++ if not isclosed(udp) then fail("should be closed") end ++ udp = nil + pass("ok") + end + +@@ -327,7 +332,7 @@ function test_closed() + data:close() + data = nil + ]], str)) +- -- try to get a line ++ -- try to get a line + back, err, partial = data:receive() + if not err then fail("should have gotten 'closed'.") + elseif err ~= "closed" then fail("got '"..err.."' instead of 'closed'.") +@@ -340,25 +345,25 @@ function test_closed() + data = nil + ]] + total, err, partial = data:send(string.rep("ugauga", 100000)) +- if not err then ++ if not err then + pass("failed: output buffer is at least %d bytes long!", total) +- elseif err ~= "closed" then ++ elseif err ~= "closed" then + fail("got '"..err.."' instead of 'closed'.") +- else +- pass("graceful 'closed' received after %d bytes were sent", partial) ++ else ++ pass("graceful 'closed' received after %d bytes were sent", partial) + end + end + + ------------------------------------------------------------------------ + function test_selectbugs() + local r, s, e = socket.select(nil, nil, 0.1) +- assert(type(r) == "table" and type(s) == "table" and ++ assert(type(r) == "table" and type(s) == "table" and + (e == "timeout" or e == "error")) + pass("both nil: ok") + local udp = socket.udp() + udp:close() + r, s, e = socket.select({ udp }, { udp }, 0.1) +- assert(type(r) == "table" and type(s) == "table" and ++ assert(type(r) == "table" and type(s) == "table" and + (e == "timeout" or e == "error")) + pass("closed sockets: ok") + e = pcall(socket.select, "wrong", 1, 0.1) +@@ -368,7 +373,7 @@ function test_selectbugs() + pass("invalid input: ok") + local toomany = {} + for i = 1, socket._SETSIZE+1 do +- toomany[#toomany+1] = socket.udp() ++ toomany[#toomany+1] = socket.udp4() + end + if #toomany > socket._SETSIZE then + local e = pcall(socket.select, toomany, nil, 0.1) +@@ -389,7 +394,7 @@ function accept_timeout() + local t = socket.gettime() + s:settimeout(1) + local c, e = s:accept() +- assert(not c, "should not accept") ++ assert(not c, "should not accept") + assert(e == "timeout", string.format("wrong error message (%s)", e)) + t = socket.gettime() - t + assert(t < 2, string.format("took to long to give up (%gs)", t)) +@@ -407,9 +412,9 @@ function connect_timeout() + local t = socket.gettime() + local r, e = c:connect("10.0.0.1", 81) + assert(not r, "should not connect") +- assert(socket.gettime() - t < 2, "took too long to give up.") ++ assert(socket.gettime() - t < 2, "took too long to give up.") + c:close() +- pass("ok") ++ pass("ok") + end + + ------------------------------------------------------------------------ +@@ -447,16 +452,14 @@ end + + ------------------------------------------------------------------------ + function rebind_test() +- --local c ,c1 = socket.bind("localhost", 0) + local c ,c1 = socket.bind("127.0.0.1", 0) + if not c then pass ("failed to bind! " .. tostring(c) .. ' ' .. tostring(c1)) return end + assert(c,c1) +- + local i, p = c:getsockname() + local s, e = socket.tcp() + assert(s, e) + s:setoption("reuseaddr", false) +- r, e = s:bind("localhost", p) ++ r, e = s:bind(i, p) + assert(not r, "managed to rebind!") + assert(e) + pass("ok") +@@ -476,9 +479,9 @@ function getstats_test() + data:receive(c) + t = t + c + local r, s, a = data:getstats() +- assert(r == t, "received count failed" .. tostring(r) ++ assert(r == t, "received count failed" .. tostring(r) + .. "/" .. tostring(t)) +- assert(s == t, "sent count failed" .. tostring(s) ++ assert(s == t, "sent count failed" .. tostring(s) + .. "/" .. tostring(t)) + end + pass("ok") +@@ -486,7 +489,7 @@ end + + + ------------------------------------------------------------------------ +-function test_nonblocking(size) ++function test_nonblocking(size) + reconnect() + printf("testing " .. 2*size .. " bytes: ") + remote(string.format([[ +@@ -545,7 +548,7 @@ function test_readafterclose() + data:close() + data = nil + ]])) +- data:close() ++ data:close() + back, err, partial = data:receive("*a") + assert(back == nil and err == "closed", "should have returned 'closed'") + pass("ok") +@@ -555,7 +558,7 @@ function test_readafterclose() + data:close() + data = nil + ]])) +- data:close() ++ data:close() + back, err, partial = data:receive() + assert(back == nil and err == "closed", "should have returned 'closed'") + pass("ok") +@@ -565,7 +568,7 @@ function test_readafterclose() + data:close() + data = nil + ]])) +- data:close() ++ data:close() + back, err, partial = data:receive(1) + assert(back == nil and err == "closed", "should have returned 'closed'") + pass("ok") +@@ -575,7 +578,7 @@ function test_readafterclose() + data:close() + data = nil + ]])) +- data:close() ++ data:close() + back, err, partial = data:receive(0) + assert(back == nil and err == "closed", "should have returned 'closed'") + pass("ok") +@@ -590,10 +593,10 @@ function test_writeafterclose() + data = nil + ]])) + local sent, err, errsent +- while not err do ++ while not err do + sent, err, errsent, time = data:send(str) + end +- assert(err == "closed", "should have returned 'closed'") ++ assert(err == "closed", "got " .. err .. " instead of 'closed'") + pass("ok") + end + +@@ -648,25 +651,24 @@ else io.stderr:write("Warning! IPv6 does not support!\n") end + end + + local udp_methods = { +- "close", ++ "close", + "dirty", + "getfamily", + "getfd", + "getoption", + "getpeername", + "getsockname", +- "receive", +- "receivefrom", +- "send", +- "sendto", +- "setfd", ++ "receive", ++ "receivefrom", ++ "send", ++ "sendto", ++ "setfd", + "setoption", + "setpeername", + "setsockname", + "settimeout" + } + +- + ------------------------------------------------------------------------ + test_methods(socket.udp(), udp_methods) + do local sock = socket.tcp6() +@@ -674,6 +676,9 @@ if sock then test_methods(socket.udp6(), udp_methods) + else io.stderr:write("Warning! IPv6 does not support!\n") end + end + ++test("closed connection detection: ") ++test_closed() ++ + test("partial receive") + test_partialrecv() + +@@ -697,9 +702,6 @@ rebind_test() + test("active close: ") + active_close() + +-test("closed connection detection: ") +-test_closed() +- + test("accept function: ") + accept_timeout() + accept_errors() +diff --git a/test/testsrvr.lua b/test/testsrvr.lua +index 72b93ab..1eb2d5b 100644 +--- a/test/testsrvr.lua ++++ b/test/testsrvr.lua +@@ -6,7 +6,7 @@ ack = "\n"; + while 1 do + print("server: waiting for client connection..."); + control = assert(server:accept()); +- while 1 do ++ while 1 do + command, emsg = control:receive(); + if emsg == "closed" then + control:close() +diff --git a/test/udpconnectclnt.lua b/test/udpconnectclnt.lua +index effe13a..ad6ab6a 100644 +--- a/test/udpconnectclnt.lua ++++ b/test/udpconnectclnt.lua +@@ -1,7 +1,7 @@ + local socket = require"socket" + local udp = socket.udp + local localhost = "127.0.0.1" +-local port = arg[1] ++local port = assert(arg[1], "missing port argument") + + se = udp(); se:setoption("reuseaddr", true) + se:setsockname(localhost, 5062) +diff --git a/win32.cmd b/win32.cmd +index 48522f0..3045721 100644 +--- a/win32.cmd ++++ b/win32.cmd +@@ -1,12 +1 @@ +-make PLAT=win32 LUAV=5.2 LUAINC_win32='c:\cygwin\home\diego\build\include' LUALIB_win32='c:\cygwin\home\diego\build\bin\release' +- +-#!/bin/sh +-for p in Release Debug x64/Release x64/Debug; do +- for el in mime socket; do +- for e in dll lib; do +- cp $p/$el/core.$e ../bin/$p/$el/ +- done; +- done; +- cp src/ltn12.lua src/socket.lua src/mime.lua ../bin/$p/ +- cp src/http.lua src/url.lua src/tp.lua src/ftp.lua src/headers.lua src/smtp.lua ../bin/$p/socket/ +-done; ++make LUAPREFIX_win32='c:\cygwin\home\diego\vc12' LUAV=5.1 PLAT=win32 LUALIBNAME_win32=lualib.lib PLATFORM_win32=Debug install-both diff --git a/user/lua-socket/lua-cflags.patch b/user/lua-socket/lua-cflags.patch new file mode 100644 index 000000000..c1da89644 --- /dev/null +++ b/user/lua-socket/lua-cflags.patch @@ -0,0 +1,22 @@ +diff --git a/src/makefile b/src/makefile +index adf687f..c2abddc 100644 +--- a/src/makefile ++++ b/src/makefile +@@ -160,6 +160,8 @@ SOCKET_macosx=usocket.o + #------ + # Compiler and linker settings + # for Linux ++LUAPC=lua ++LUA_CFLAGS=$(shell pkg-config --cflags $(LUAPC)) + SO_linux=so + O_linux=o + CC_linux=gcc +@@ -167,7 +169,7 @@ DEF_linux=-DLUASOCKET_$(DEBUG) \ + -DLUASOCKET_API='__attribute__((visibility("default")))' \ + -DUNIX_API='__attribute__((visibility("default")))' \ + -DMIME_API='__attribute__((visibility("default")))' +-CFLAGS_linux= -I$(LUAINC) $(DEF) -Wall -Wshadow -Wextra \ ++CFLAGS_linux= $(LUA_CFLAGS) -I$(LUAINC) $(DEF) -Wall -Wshadow -Wextra \ + -Wimplicit -O2 -ggdb3 -fpic -fvisibility=hidden + LDFLAGS_linux=-O -shared -fpic -o + LD_linux=gcc diff --git a/user/marble/APKBUILD b/user/marble/APKBUILD index a80a9a2e0..5a7ea9146 100644 --- a/user/marble/APKBUILD +++ b/user/marble/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=marble -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="Free, open-source map and virtual globe" url="https://marble.kde.org/" @@ -38,4 +38,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="e6bf16f7b26f8f1ba88448378c1d97506140f87c0d75481f9cc2435f5f7e09a55ae510475397c6ccfecd4252a618287638cb350425895ad216c1d74115f81956 marble-18.08.1.tar.xz" +sha512sums="d1a51b941cd5a9ee9b5500613f6436e2015f81d46df731848015244f11d7558c7a8401663dcebcf8cd9175233f7d4e1d70f8b3474df44f1f5bf5038fca820ef7 marble-18.08.2.tar.xz" diff --git a/user/mesa-demos/APKBUILD b/user/mesa-demos/APKBUILD new file mode 100644 index 000000000..f89083ae4 --- /dev/null +++ b/user/mesa-demos/APKBUILD @@ -0,0 +1,30 @@ +# Contributor: Carlo Landmeter <clandmeter@gmail.com> +# Contributor: Natanael Copa <ncopa@alpinelinux.org> +# Maintainer: Dan Theisen <djt@hxx.in> +pkgname=mesa-demos +pkgver=8.4.0 +pkgrel=0 +pkgdesc="Mesa demos and utils" +url="http://mesa3d.org" +arch="all" +license="X11" +options="!check" # No testsuite +makedepends="mesa-dev glew-dev glu-dev freeglut-dev freetype-dev libtool" +source="ftp://ftp.freedesktop.org/pub/mesa/demos/$pkgname-$pkgver.tar.bz2" + +build() { + cd "$builddir" + export LDFLAGS="$LDFLAGS -Wl,-z,lazy" + ./configure \ + --build=$CBUILD \ + --host=$CHOST \ + --prefix=/usr + make V=1 +} + +package() { + cd "$builddir" + make -j1 DESTDIR="$pkgdir" install +} + +sha512sums="b72d03cad36e0535ff18dcfb222ec4200064b9264f6da51a6e5f03b0dd912abe188bc1d600b6698de3ce6f63b28d2ce01565886ca8e7079edc4967fbf2fb0957 mesa-demos-8.4.0.tar.bz2" diff --git a/user/mesa/APKBUILD b/user/mesa/APKBUILD index c0ba61046..418e9e361 100644 --- a/user/mesa/APKBUILD +++ b/user/mesa/APKBUILD @@ -1,6 +1,6 @@ # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=mesa -pkgver=18.1.7 +pkgver=18.1.8 pkgrel=0 pkgdesc="Mesa DRI OpenGL library" url="https://www.mesa3d.org" @@ -17,7 +17,7 @@ subpackages="$pkgname-dev $pkgname-xatracker $pkgname-osmesa $pkgname-gbm $pkgname-libwayland-egl:_wayland " -_llvmver=4 +_llvmver=6 depends_dev="libdrm-dev dri2proto libxext-dev libxdamage-dev libxcb-dev glproto dri3proto presentproto libxshmfence-dev" makedepends="$depends_dev expat-dev xextproto libxt-dev makedepend py3-mako @@ -245,7 +245,7 @@ _wayland() { || return 1 } -sha512sums="697c4f441ae52bc867d9d73b103094a29102168c248a502c4ea0fc48f51bcb86b2e741da39e882f24131326d460cdb1416415604c6994d1b8c09fb8a153a5c77 mesa-18.1.7.tar.xz +sha512sums="ab89c6d27b765d3efdf61b24dc56d863ae590d83003d2eae4bfe25ecfbeda5bee0227f21d057523bb4eceeaf3d9955df48087ffb472c41b123c100e593056cb9 mesa-18.1.8.tar.xz c3d4804ebc24c7216e4c9d4995fb92e116be7f478024b44808ee134a4c93bb51d1f66fe5fb6eca254f124c4abf6f81272b027824b3e2650a9607818bf793035a glx_ro_text_segm.patch 9f7a050f09571a2b17098d495b82e2e85b293fb7285e7d6d7c3c48cd4220a1bdcc61a7321ba78dd14860939ecabe7e89b32d6110f3728f793273e1e26b78a553 musl-fixes.patch c7d91a660a033df91fac9c557039efc8669f0c26b2d35997d50753938b70d1af0bd110dcab3f8236eafab7d4be5dd7cd128a3e057e67e7e6a38a73fd6a7ef62e musl-fix-includes.patch diff --git a/user/meson/APKBUILD b/user/meson/APKBUILD index 86a2fdf48..05bf48dcc 100644 --- a/user/meson/APKBUILD +++ b/user/meson/APKBUILD @@ -1,7 +1,7 @@ # Contributor: Sören Tempel <soeren+alpine@soeren-tempel.net> # Maintainer: pkgname=meson -pkgver=0.47.0 +pkgver=0.47.2 pkgrel=0 pkgdesc="Fast, user-friendly build system" url="http://mesonbuild.com/" @@ -27,4 +27,4 @@ package() { python3 setup.py install --prefix=/usr --root="$pkgdir" } -sha512sums="844047ad184f60395c4b6dc61b8fb0f321722d19a8647b48cb3f05fda9ba57516bdcc2244d5bc9de74f2834d092235553faccde6172edaeb3c2d14ff633bc513 meson-0.47.0.tar.gz" +sha512sums="a1ac5691a5319ccf196d9443aea61e6c3ee9f09a9f638a3a7b5e5381b4c14372253c845be74fa2b59f42b9697671f12bce92c46bcb5cb629aeebd68e044e0021 meson-0.47.2.tar.gz" diff --git a/user/minicom/APKBUILD b/user/minicom/APKBUILD new file mode 100644 index 000000000..d597290e8 --- /dev/null +++ b/user/minicom/APKBUILD @@ -0,0 +1,39 @@ +# Contributor: Michael Mason <ms13sp@gmail.com> +# Maintainer: Dan Theisen <djt@hxx.in> +pkgname=minicom +pkgver=2.7.1 +pkgrel=0 +pkgdesc="menu driven communications program for terminals" +url="https://fossies.org/linux/minicom/" +arch="all" +license="GPL-2.0+" +depends="" +makedepends="ncurses-dev gettext-tiny-dev linux-headers" +subpackages="$pkgname-doc $pkgname-lang" +source="https://fossies.org/linux/misc/$pkgname-$pkgver.tar.gz + fix-includes.patch" + +build() { + cd "$builddir" + ./configure \ + --build=$CBUILD \ + --host=$CHOST \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --infodir=/usr/share/info + make +} + +check() { + cd "$builddir" + make check +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install +} + +sha512sums="b429b32d187c3ee915c5074a0d0f08b7e3951cb8528ecbdd889837ff301662c16740ad77bd2bf3baf759c0a84e779a8dc8fd888a4260a0ace15ebc4c2f697c82 minicom-2.7.1.tar.gz +5acff3efb0b8b02333291722044d7c473bf19eec8a26e66c0e0f41895f3e3f071dff13515ec20f7ce17368732e3674f0a42b38602e61b04e9cd70e61012641ff fix-includes.patch" diff --git a/user/minicom/fix-includes.patch b/user/minicom/fix-includes.patch new file mode 100644 index 000000000..19a18dcdb --- /dev/null +++ b/user/minicom/fix-includes.patch @@ -0,0 +1,24 @@ +--- minicom-2.6.2.orig/src/dial.c ++++ minicom-2.6.2/src/dial.c +@@ -39,11 +39,9 @@ + #include "intl.h" + + #ifdef VC_MUSIC +-# if defined(__GLIBC__) + # include <sys/ioctl.h> + # include <sys/kd.h> + # include <sys/time.h> +-# endif + #endif + + enum { CURRENT_VERSION = 6 }; +--- minicom-2.6.2.orig/src/getsdir.h ++++ minicom-2.6.2/src/getsdir.h +@@ -22,6 +22,7 @@ + * and licensing conditions. See the source, Luke. + */ + ++#include <sys/param.h> + #include <dirent.h> + + typedef struct dirEntry { /* structure of data item */ diff --git a/user/minuet/APKBUILD b/user/minuet/APKBUILD index bcbb4ceeb..a57b25808 100644 --- a/user/minuet/APKBUILD +++ b/user/minuet/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=minuet -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="Music education software" url="https://minuet.kde.org/" @@ -40,4 +40,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="653db86bc761f59df02a8d8ff82e59afeb71ef078a62ba5712d5092b0d9651dde9ddee027d303e622bd143c6aee49b01da1476d8cdc484b89192c08669cc6bef minuet-18.08.1.tar.xz" +sha512sums="0869a0e84daf995aca219c063ce38c88b7cc1bf40c0733aad80cffcb0800d67bddc02e3d21dce4940802a5262307b409447242954249e4093a16ce5dc336f369 minuet-18.08.2.tar.xz" diff --git a/user/mosh/APKBUILD b/user/mosh/APKBUILD new file mode 100644 index 000000000..323891e69 --- /dev/null +++ b/user/mosh/APKBUILD @@ -0,0 +1,78 @@ +# Contributor: Francesco Colista <fcolista@alpinelinux.org> +# Maintainer: Dan Theisen <djt@hxx.in> +pkgname=mosh +pkgver=1.3.2 +pkgrel=0 +pkgdesc="Mobile shell surviving disconnects with local echo and line editing" +url="https://mosh.org" +arch="all" +license="GPL-3.0+" +depends="$pkgname-client $pkgname-server" +checkdepends="tmux perl" +makedepends="ncurses-dev zlib-dev openssl-dev perl-dev perl-io-tty + protobuf-dev automake autoconf libtool gzip" +subpackages="$pkgname-doc $pkgname-client $pkgname-server + $pkgname-bash-completion:bashcomp:noarch" +source="https://mosh.org/$pkgname-$pkgver.tar.gz + fix-ppc64le-build-with-musl.patch" + +prepare() { + default_prepare + # Test unicode-later-combining is failing. Ideally we want to fix it. + sed -i '/unicode-later-combining.test/d' "$builddir"/src/tests/Makefile.am + cd "$builddir" + ./autogen.sh +} + +build() { + cd "$builddir" + ./configure \ + --build=$CBUILD \ + --host=$CHOST \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --localstatedir=/var \ + --enable-examples + make +} + +check() { + cd "$builddir" + make check VERBOSE=1 V=1 +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install +} + +bashcomp() { + depends="" + pkgdesc="Bash completions for $pkgname" + install_if="$pkgname=$pkgver-r$pkgrel bash-completion" + + install -Dm644 "$builddir"/conf/bash-completion/completions/mosh \ + "$subpkgdir"/usr/share/bash-completion/completions/$pkgname +} + +server() { + replaces="mosh" + pkgdesc="Mosh server" + depends="" + mkdir -p "$subpkgdir"/usr/bin + mv "$pkgdir"/usr/bin/mosh-server \ + "$subpkgdir"/usr/bin/ +} + +client() { + replaces="mosh" + pkgdesc="Mosh client" + depends="openssh-client perl-io-tty" + mkdir -p "$subpkgdir"/usr/bin + mv "$pkgdir"/usr/bin/mosh-client \ + "$subpkgdir"/usr/bin/ +} + +sha512sums="f400e8fe7ba2ab7362311fc12a00ec69587505f901988aeee500fc68d38a388218500a3f602111c883ff23a9d43572114fcf0a8bf505df203691e5b597615769 mosh-1.3.2.tar.gz +a276dde98a2dab63ad9c9c05468c55983a95f482878c5694713810b561eae1ea5618efc72431a17ee5b5014b12ee9709c6a8cbf582620294e7888cc837cd073c fix-ppc64le-build-with-musl.patch" diff --git a/user/mosh/fix-ppc64le-build-with-musl.patch b/user/mosh/fix-ppc64le-build-with-musl.patch new file mode 100644 index 000000000..8d918a963 --- /dev/null +++ b/user/mosh/fix-ppc64le-build-with-musl.patch @@ -0,0 +1,53 @@ +From: Roberto Oliveira <robertoguimaraes8@gmail.com> +Date: Tue, 4 Apr 2017 16:46:50 +0000 +Subject: [PATCH] Fix build with musl on ppc64le + +mosh was breaking when building in ppc64le using musl, because ioctl() is defined +as ioctl(int, int) in musl and mosh is using TIOCSWINSZ macro as parameter. This was +triggering a gcc warning and make the build fail. + +This patch does an explicit integer conversion in TIOCSWINSZ, as no bits get +lost. + +--- a/src/frontend/mosh-server.cc ++++ b/src/frontend/mosh-server.cc +@@ -714,7 +714,12 @@ + } + window_size.ws_col = res->width; + window_size.ws_row = res->height; +- if ( ioctl( host_fd, TIOCSWINSZ, &window_size ) < 0 ) { ++ ++ #if defined(__powerpc64__) && (!defined(__GLIBC__) && !defined(__UCLIBC__)) ++ if ( ioctl( host_fd, (int) TIOCSWINSZ, &window_size ) < 0 ) { ++ #else ++ if ( ioctl( host_fd, TIOCSWINSZ, &window_size ) < 0 ) { ++ #endif + perror( "ioctl TIOCSWINSZ" ); + network.start_shutdown(); + } +--- a/src/examples/termemu.cc ++++ a/src/examples/termemu.cc +@@ -226,7 +226,11 @@ + } + + /* tell child process */ ++ #if defined(__powerpc64__) && (!defined(__GLIBC__) && !defined(__UCLIBC__)) ++ if ( ioctl( fd, (int) TIOCSWINSZ, &window_size ) < 0 ) { ++ #else + if ( ioctl( fd, TIOCSWINSZ, &window_size ) < 0 ) { ++ #endif + perror( "ioctl TIOCSWINSZ" ); + return; + } +@@ -306,7 +310,11 @@ + complete.act( &r ); + + /* tell child process */ ++ #if defined(__powerpc64__) && (!defined(__GLIBC__) && !defined(__UCLIBC__)) ++ if ( ioctl( fd, (int) TIOCSWINSZ, &window_size ) < 0 ) { ++ #else + if ( ioctl( fd, TIOCSWINSZ, &window_size ) < 0 ) { ++ #endif + perror( "ioctl TIOCSWINSZ" ); + return; + } diff --git a/user/mousepad/APKBUILD b/user/mousepad/APKBUILD new file mode 100644 index 000000000..7b848ad28 --- /dev/null +++ b/user/mousepad/APKBUILD @@ -0,0 +1,37 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=mousepad +pkgver=0.4.1 +pkgrel=0 +pkgdesc="Simple text editor for the XFCE desktop environment" +url="https://xfce.org" +arch="all" +license="GPL-2.0+" +makedepends="intltool glib-dev gtk+3.0-dev gtksourceview-3.0-dev dbus-glib-dev" +subpackages="$pkgname-lang" +langdir="/usr/lib/locale" +source="http://archive.xfce.org/src/apps/mousepad/0.4/mousepad-$pkgver.tar.bz2" + +build() { + cd "$builddir" + ./configure \ + --build=$CBUILD \ + --host=$CHOST \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --localstatedir=/var + make +} + +check() { + cd "$builddir" + make check +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install +} + +sha512sums="2ffbb4245a3344437bd41f9f28cc066ae45062f6b6d169aa274e933f033c434f0b10845ccf42ab846dcad25ae7cee36ea6619bfb6889e8cd41c994be87b77be8 mousepad-0.4.1.tar.bz2" diff --git a/user/mpv/APKBUILD b/user/mpv/APKBUILD index d0a4e37b1..a579ecc5a 100644 --- a/user/mpv/APKBUILD +++ b/user/mpv/APKBUILD @@ -1,7 +1,7 @@ # Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> # Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> pkgname=mpv -pkgver=0.29.0 +pkgver=0.29.1 pkgrel=0 pkgdesc="An improved fork of mplayer" url="https://mpv.io" @@ -21,7 +21,6 @@ makedepends="python3 " subpackages="$pkgname-doc" source="mpv-$pkgver.tar.gz::https://github.com/mpv-player/mpv/archive/v$pkgver.tar.gz" -sha512sums="77204218bd217ae1da4812b09e0509965a3ef102d3de5cd4360f007ccf3779e4cbde5cfd6adae9629ea39062bd365e847429bdf7f9a1ddebd0a67d267492b221 mpv-0.29.0.tar.gz" build() { cd "$builddir" @@ -46,3 +45,4 @@ package() { python3 ./waf install --destdir="$pkgdir" } +sha512sums="ec57c9ceaaf2915ee237dd5a1c5ea5d22725d8611e28a9b998e5bb0d8ab5bdf3631d0267fc7b54da31cb1eaa145ef35841e68846bd41c3b9e1024902e92fd086 mpv-0.29.1.tar.gz" diff --git a/user/nano/APKBUILD b/user/nano/APKBUILD index eae0a12fe..45583d16a 100644 --- a/user/nano/APKBUILD +++ b/user/nano/APKBUILD @@ -1,7 +1,7 @@ # Contributor: Michael Mason <ms13sp@gmail.com> -# Maintainer: +# Maintainer: Dan Theisen <djt@hxx.in> pkgname=nano -pkgver=2.9.8 +pkgver=3.1 pkgrel=0 pkgdesc="Enhanced clone of the Pico text editor" url="https://www.nano-editor.org" @@ -44,4 +44,4 @@ package() { rm -rf "$pkgdir"/usr/lib/charset.alias } -sha512sums="9a8230bb1312be4e7f44c5fb42c32d773dd4e488d41980c5aee1de0f9b5642b938a940649f3b5bfb848625c0c258ea15333cad861b5a368e3746f1f396df452b nano-2.9.8.tar.xz" +sha512sums="dc50381a129fec32d85982d8129324268e3e27a28c5b958fb7bcfca690646bd0a3b995dc456971355b91952c0ac3ea3e0a873b228010238a76e8dbb0ddaf1143 nano-3.1.tar.xz" diff --git a/user/ncftp/APKBUILD b/user/ncftp/APKBUILD new file mode 100644 index 000000000..1a9b5fce4 --- /dev/null +++ b/user/ncftp/APKBUILD @@ -0,0 +1,46 @@ +# Contributor: Carlo Landmeter <clandmeter@gmail.com> +# Maintainer: Dan Theisen <djt@hxx.in> +pkgname=ncftp +pkgver=3.2.6 +pkgrel=0 +pkgdesc="A set of free application programs implementing FTP" +url="http://www.ncftp.com/" +arch="all" +options="!check" # No test suite. +license="ClArtistic" +makedepends="ncurses-dev" +source="ftp://ftp.ncftp.com/ncftp/$pkgname-$pkgver-src.tar.gz" +subpackages="$pkgname-doc $pkgname-bookmarks" + +build () { + cd "$builddir" + + LIBS="-ltinfo" ./configure \ + --build=$CBUILD \ + --host=$CHOST \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man + + cd "$builddir"/libncftp + make shared + cd "$builddir" + make +} + +package() { + cd "$builddir"/libncftp + make PREFIX="${pkgdir}"/usr soinstall + cd "$builddir" + make DESTDIR="$pkgdir" install + install -D doc/LICENSE.txt \ + "$pkgdir"/usr/share/licenses/"$pkgname"/LICENSE +} + +bookmarks () { + mkdir -p "$subpkgdir"/usr/bin + mv "$pkgdir"/usr/bin/ncftpbookmarks \ + "$subpkgdir"/usr/bin/ +} + +sha512sums="a2f8ac555bee8af4be1aa745ce5838beee99cd2253c1fe701b710ec135d7c47e2bf8b22ec928975ec2460919977d45a07fb12185ab58a2e96e3092039ffd3303 ncftp-3.2.6-src.tar.gz" diff --git a/user/net-snmp/APKBUILD b/user/net-snmp/APKBUILD index 333cb8a69..9f083a732 100644 --- a/user/net-snmp/APKBUILD +++ b/user/net-snmp/APKBUILD @@ -1,8 +1,8 @@ # Contributor: Carlo Landmeter <clandmeter@gmail.com> # Maintainer: pkgname=net-snmp -pkgver=5.7.3 -pkgrel=11 +pkgver=5.8 +pkgrel=0 pkgdesc="Simple Network Management Protocol" url="http://www.net-snmp.org/" arch="all" @@ -12,15 +12,13 @@ depends="" depends_dev="openssl-dev" # we need perl-net-snmp in make depends for bootstrapping issues # net-snmp-gui subpackage has perl-net-snmp as depends -makedepends="file linux-headers openssl-dev perl-dev perl-net-snmp utmps-dev" +makedepends="file linux-headers ncurses-dev openssl-dev perl-dev perl-net-snmp + utmps-dev" subpackages="$pkgname-doc $pkgname-dev $pkgname-libs $pkgname-agent-libs:alibs $pkgname-openrc $pkgname-perl:pl $pkgname-gui $pkgname-tools" source="https://downloads.sourceforge.net/$pkgname/$pkgname-$pkgver.tar.gz netsnmp-swinst-crash.patch fix-includes.patch - CVE-2015-5621.patch - remove-U64-typedef.patch - fix-Makefile-PL.patch snmpd.initd snmpd.confd @@ -40,7 +38,7 @@ build() { export lt_cv_sys_max_cmd_len=8192 - ./configure \ + LIBS="-ltinfow" ./configure \ --build=$CBUILD \ --host=$CHOST \ --prefix=/usr \ @@ -140,12 +138,9 @@ tools() { mv "$pkgdir"/usr/bin "$subpkgdir"/usr } -sha512sums="0758bba5844cfd6c80959ac16b83906a2f830ba49fd0ab1bf9e191dc6a79d312a2e4760bd53b3e1a1c82759481f0064d088d5a3cf475d84b25679a6bd0f049bb net-snmp-5.7.3.tar.gz +sha512sums="27895a583b23f3e14c48562bc32f3ba83513d81aa848e878be9a3650f0458d45950635c937ef627135f80b757b663e71fab9a3bde4fd91889153998ae3468fe7 net-snmp-5.8.tar.gz 4ad92f50b14d5e27ba86256cc532a2dd055502f4d5fbb1700434f9f01f881fd09bb1eadb94e727554e1470f036707558314c64a66d0376b54e71ab31d5e4baa3 netsnmp-swinst-crash.patch 87a552bd2e41684bba6e87fbcf6454a85ee912d7a339411fda24cebddf7661f0856729e076a917920a542cf84b687ffd90a091daa15f2c48f0ff64f3a53c0ddb fix-includes.patch -2b2a7be54a570e3c1bb701f8ccfb98ea8e50a19fda021f43a521d4e968ded1bc5e794fc4348dff7fcdf57da34ff6b555398851bbccfcf92bb75ad6f365a80dba CVE-2015-5621.patch -25e45c493b8da74cb12a8094d12a4f0ee1f59b60df648a958ebc7b0a33b4f350d9c5bf1e6f6ff372d78e066c369d99f2ae549b5d5d1daa969e3ef301fc820c29 remove-U64-typedef.patch -d17058976fd635f153ff2e5d798807dde4d89071c252ea1223d93cc169270bb39cdd2c84ee4d01c05c9a0b6df80b92ceae3e1078e41f94e6077d7275661898e9 fix-Makefile-PL.patch 896ef65a6f420073746470cdbd0de8f356c5b936d35e131754905b3d4323c24dcd3a09e0cc8bd90b12e3402f01e478f927f0e4163cb85cb0cc03db3c2e0491f4 snmpd.initd fb101aa758d741ed3ea88b11f1cd49cfd04bd03ce62435f3acb17724748131c57f00b71fd45cb7e7871d65a1aab576652cd6e158b6406aa6d0998582b8235ef5 snmpd.confd 073fd2b83eedd6eda1f7345350268ce7946ef6d67a8f26f7c232e46feb75babf68272ae12071a2f9ea76ede71393b3ae4672d3cd47cfd14ab77e3a6482f2e124 snmptrapd.confd" diff --git a/user/net-snmp/CVE-2015-5621.patch b/user/net-snmp/CVE-2015-5621.patch deleted file mode 100644 index 6d30f99ee..000000000 --- a/user/net-snmp/CVE-2015-5621.patch +++ /dev/null @@ -1,132 +0,0 @@ -From 3714c5be3212d2af61545439eeb432e5d84a8d39 Mon Sep 17 00:00:00 2001 -From: Robert Story <rstory@localhost> -Date: Sat, 11 Apr 2015 18:49:02 -0400 -Subject: [PATCH] CHANGES: BUG: #2615: Don't return incompletely parsed - varbinds - ---- - snmplib/snmp_api.c | 55 +++++++++++++++++++++++++++--------------------------- - 1 file changed, 28 insertions(+), 27 deletions(-) - -diff --git a/snmplib/snmp_api.c b/snmplib/snmp_api.c -index 191debf..adae4e4 100644 ---- a/snmplib/snmp_api.c -+++ b/snmplib/snmp_api.c -@@ -4350,10 +4350,9 @@ snmp_pdu_parse(netsnmp_pdu *pdu, u_char * data, size_t * length) - u_char type; - u_char msg_type; - u_char *var_val; -- int badtype = 0; - size_t len; - size_t four; -- netsnmp_variable_list *vp = NULL; -+ netsnmp_variable_list *vp = NULL, *vplast = NULL; - oid objid[MAX_OID_LEN]; - u_char *p; - -@@ -4493,38 +4492,24 @@ snmp_pdu_parse(netsnmp_pdu *pdu, u_char * data, size_t * length) - (ASN_SEQUENCE | ASN_CONSTRUCTOR), - "varbinds"); - if (data == NULL) -- return -1; -+ goto fail; - - /* - * get each varBind sequence - */ - while ((int) *length > 0) { -- netsnmp_variable_list *vptemp; -- vptemp = (netsnmp_variable_list *) malloc(sizeof(*vptemp)); -- if (NULL == vptemp) { -- return -1; -- } -- if (NULL == vp) { -- pdu->variables = vptemp; -- } else { -- vp->next_variable = vptemp; -- } -- vp = vptemp; -+ vp = SNMP_MALLOC_TYPEDEF(netsnmp_variable_list); -+ if (NULL == vp) -+ goto fail; - -- vp->next_variable = NULL; -- vp->val.string = NULL; - vp->name_length = MAX_OID_LEN; -- vp->name = NULL; -- vp->index = 0; -- vp->data = NULL; -- vp->dataFreeHook = NULL; - DEBUGDUMPSECTION("recv", "VarBind"); - data = snmp_parse_var_op(data, objid, &vp->name_length, &vp->type, - &vp->val_len, &var_val, length); - if (data == NULL) -- return -1; -+ goto fail; - if (snmp_set_var_objid(vp, objid, vp->name_length)) -- return -1; -+ goto fail; - - len = MAX_PACKET_LENGTH; - DEBUGDUMPHEADER("recv", "Value"); -@@ -4604,7 +4589,7 @@ snmp_pdu_parse(netsnmp_pdu *pdu, u_char * data, size_t * length) - vp->val.string = (u_char *) malloc(vp->val_len); - } - if (vp->val.string == NULL) { -- return -1; -+ goto fail; - } - p = asn_parse_string(var_val, &len, &vp->type, vp->val.string, - &vp->val_len); -@@ -4619,7 +4604,7 @@ snmp_pdu_parse(netsnmp_pdu *pdu, u_char * data, size_t * length) - vp->val_len *= sizeof(oid); - vp->val.objid = (oid *) malloc(vp->val_len); - if (vp->val.objid == NULL) { -- return -1; -+ goto fail; - } - memmove(vp->val.objid, objid, vp->val_len); - break; -@@ -4631,7 +4616,7 @@ snmp_pdu_parse(netsnmp_pdu *pdu, u_char * data, size_t * length) - case ASN_BIT_STR: - vp->val.bitstring = (u_char *) malloc(vp->val_len); - if (vp->val.bitstring == NULL) { -- return -1; -+ goto fail; - } - p = asn_parse_bitstring(var_val, &len, &vp->type, - vp->val.bitstring, &vp->val_len); -@@ -4640,12 +4625,28 @@ snmp_pdu_parse(netsnmp_pdu *pdu, u_char * data, size_t * length) - break; - default: - snmp_log(LOG_ERR, "bad type returned (%x)\n", vp->type); -- badtype = -1; -+ goto fail; - break; - } - DEBUGINDENTADD(-4); -+ -+ if (NULL == vplast) { -+ pdu->variables = vp; -+ } else { -+ vplast->next_variable = vp; -+ } -+ vplast = vp; -+ vp = NULL; - } -- return badtype; -+ return 0; -+ -+ fail: -+ DEBUGMSGTL(("recv", "error while parsing VarBindList\n")); -+ /** if we were parsing a var, remove it from the pdu and free it */ -+ if (vp) -+ snmp_free_var(vp); -+ -+ return -1; - } - - /* --- -2.5.0 - diff --git a/user/net-snmp/fix-Makefile-PL.patch b/user/net-snmp/fix-Makefile-PL.patch deleted file mode 100644 index 735f01447..000000000 --- a/user/net-snmp/fix-Makefile-PL.patch +++ /dev/null @@ -1,22 +0,0 @@ -diff -up net-snmp-5.7.3/perl/ASN/Makefile.PL.orig net-snmp-5.7.3/perl/ASN/Makefile.PL ---- net-snmp-5.7.3/perl/ASN/Makefile.PL.orig 2016-05-06 10:35:30.005905040 +0200 -+++ net-snmp-5.7.3/perl/ASN/Makefile.PL 2016-05-06 10:35:57.518776400 +0200 -@@ -3,6 +3,7 @@ require 5; - use Config; - use Getopt::Long; - my $lib_version; -+my %MakeParams = (); - - # See lib/ExtUtils/MakeMaker.pm for details of how to influence - # the contents of the Makefile that is written. -diff -up net-snmp-5.7.3/perl/Makefile.PL.orig net-snmp-5.7.3/perl/Makefile.PL ---- net-snmp-5.7.3/perl/Makefile.PL.orig 2016-05-06 10:34:38.975143641 +0200 -+++ net-snmp-5.7.3/perl/Makefile.PL 2016-05-06 10:35:13.326983024 +0200 -@@ -2,6 +2,7 @@ use ExtUtils::MakeMaker; - use Config; - use Getopt::Long; - require 5; -+my %MakeParams = (); - - %MakeParams = InitMakeParams(); - diff --git a/user/net-snmp/remove-U64-typedef.patch b/user/net-snmp/remove-U64-typedef.patch deleted file mode 100644 index 51d7a369c..000000000 --- a/user/net-snmp/remove-U64-typedef.patch +++ /dev/null @@ -1,2519 +0,0 @@ -From 477b4307ef12ddce3b6a9205e0bdddbfb2e0e9b6 Mon Sep 17 00:00:00 2001 -From: Bart Van Assche <bvanassche@acm.org> -Date: Sat, 20 Feb 2016 18:58:18 -0800 -Subject: [PATCH] Remove U64 typedef - -The U64 typedef conflicts with a typedef in a Perl header file. Hence -remove the U64 typedef from the Net-SNMP header files. This patch does -not modify the Net-SNMP ABI. ---- - agent/mibgroup/if-mib/ifXTable/ifXTable.c | 16 +- - agent/mibgroup/if-mib/ifXTable/ifXTable.h | 48 +- - .../mibgroup/if-mib/ifXTable/ifXTable_interface.c | 32 +- - .../ip-mib/data_access/systemstats_common.c | 2 +- - .../ipIfStatsTable/ipIfStatsTable_data_get.c | 28 +- - .../ipIfStatsTable/ipIfStatsTable_data_get.h | 28 +- - .../ipIfStatsTable/ipIfStatsTable_interface.c | 56 +- - .../ip-mib/ipSystemStatsTable/ipSystemStatsTable.c | 28 +- - .../ip-mib/ipSystemStatsTable/ipSystemStatsTable.h | 921 ++------------------- - .../ipSystemStatsTable_interface.c | 56 +- - include/net-snmp/data_access/ipstats.h | 42 +- - include/net-snmp/library/int64.h | 34 +- - snmplib/int64.c | 38 +- - snmplib/read_config.c | 6 +- - testing/fulltests/unit-tests/T015int64_clib.c | 10 +- - 15 files changed, 274 insertions(+), 1071 deletions(-) - -diff --git a/agent/mibgroup/if-mib/ifXTable/ifXTable.c b/agent/mibgroup/if-mib/ifXTable/ifXTable.c -index bb3e736..0c952ba 100644 ---- a/agent/mibgroup/if-mib/ifXTable/ifXTable.c -+++ b/agent/mibgroup/if-mib/ifXTable/ifXTable.c -@@ -722,7 +722,7 @@ The total number of octets received on the interface, - */ - int - ifHCInOctets_get(ifXTable_rowreq_ctx * rowreq_ctx, -- U64 * ifHCInOctets_val_ptr) -+ struct counter64 *ifHCInOctets_val_ptr) - { - /** we should have a non-NULL pointer */ - netsnmp_assert(NULL != ifHCInOctets_val_ptr); -@@ -779,7 +779,7 @@ The number of packets, delivered by this sub-layer to a - */ - int - ifHCInUcastPkts_get(ifXTable_rowreq_ctx * rowreq_ctx, -- U64 * ifHCInUcastPkts_val_ptr) -+ struct counter64 *ifHCInUcastPkts_val_ptr) - { - /** we should have a non-NULL pointer */ - netsnmp_assert(NULL != ifHCInUcastPkts_val_ptr); -@@ -838,7 +838,7 @@ The number of packets, delivered by this sub-layer to a - */ - int - ifHCInMulticastPkts_get(ifXTable_rowreq_ctx * rowreq_ctx, -- U64 * ifHCInMulticastPkts_val_ptr) -+ struct counter64 *ifHCInMulticastPkts_val_ptr) - { - /** we should have a non-NULL pointer */ - netsnmp_assert(NULL != ifHCInMulticastPkts_val_ptr); -@@ -897,7 +897,7 @@ The number of packets, delivered by this sub-layer to a - */ - int - ifHCInBroadcastPkts_get(ifXTable_rowreq_ctx * rowreq_ctx, -- U64 * ifHCInBroadcastPkts_val_ptr) -+ struct counter64 *ifHCInBroadcastPkts_val_ptr) - { - /** we should have a non-NULL pointer */ - netsnmp_assert(NULL != ifHCInBroadcastPkts_val_ptr); -@@ -955,7 +955,7 @@ The total number of octets transmitted out of the - */ - int - ifHCOutOctets_get(ifXTable_rowreq_ctx * rowreq_ctx, -- U64 * ifHCOutOctets_val_ptr) -+ struct counter64 *ifHCOutOctets_val_ptr) - { - /** we should have a non-NULL pointer */ - netsnmp_assert(NULL != ifHCOutOctets_val_ptr); -@@ -1013,7 +1013,7 @@ The total number of packets that higher-level protocols - */ - int - ifHCOutUcastPkts_get(ifXTable_rowreq_ctx * rowreq_ctx, -- U64 * ifHCOutUcastPkts_val_ptr) -+ struct counter64 *ifHCOutUcastPkts_val_ptr) - { - /** we should have a non-NULL pointer */ - netsnmp_assert(NULL != ifHCOutUcastPkts_val_ptr); -@@ -1074,7 +1074,7 @@ The total number of packets that higher-level protocols - */ - int - ifHCOutMulticastPkts_get(ifXTable_rowreq_ctx * rowreq_ctx, -- U64 * ifHCOutMulticastPkts_val_ptr) -+ struct counter64 *ifHCOutMulticastPkts_val_ptr) - { - /** we should have a non-NULL pointer */ - netsnmp_assert(NULL != ifHCOutMulticastPkts_val_ptr); -@@ -1134,7 +1134,7 @@ The total number of packets that higher-level protocols - */ - int - ifHCOutBroadcastPkts_get(ifXTable_rowreq_ctx * rowreq_ctx, -- U64 * ifHCOutBroadcastPkts_val_ptr) -+ struct counter64 *ifHCOutBroadcastPkts_val_ptr) - { - /** we should have a non-NULL pointer */ - netsnmp_assert(NULL != ifHCOutBroadcastPkts_val_ptr); -diff --git a/agent/mibgroup/if-mib/ifXTable/ifXTable.h b/agent/mibgroup/if-mib/ifXTable/ifXTable.h -index ba22f97..925af13 100644 ---- a/agent/mibgroup/if-mib/ifXTable/ifXTable.h -+++ b/agent/mibgroup/if-mib/ifXTable/ifXTable.h -@@ -143,28 +143,28 @@ config_require(if-mib/ifXTable/ifXTable_data_access) - u_long * - ifOutBroadcastPkts_val_ptr); - int ifHCInOctets_get(ifXTable_rowreq_ctx * rowreq_ctx, -- U64 * ifHCInOctets_val_ptr); -+ struct counter64 *ifHCInOctets_val_ptr); - int ifHCInUcastPkts_get(ifXTable_rowreq_ctx * rowreq_ctx, -- U64 * ifHCInUcastPkts_val_ptr); -+ struct counter64 *ifHCInUcastPkts_val_ptr); - int ifHCInMulticastPkts_get(ifXTable_rowreq_ctx * - rowreq_ctx, -- U64 * -+ struct counter64 * - ifHCInMulticastPkts_val_ptr); - int ifHCInBroadcastPkts_get(ifXTable_rowreq_ctx * - rowreq_ctx, -- U64 * -+ struct counter64 * - ifHCInBroadcastPkts_val_ptr); - int ifHCOutOctets_get(ifXTable_rowreq_ctx * rowreq_ctx, -- U64 * ifHCOutOctets_val_ptr); -+ struct counter64 *ifHCOutOctets_val_ptr); - int ifHCOutUcastPkts_get(ifXTable_rowreq_ctx * rowreq_ctx, -- U64 * ifHCOutUcastPkts_val_ptr); -+ struct counter64 *ifHCOutUcastPkts_val_ptr); - int ifHCOutMulticastPkts_get(ifXTable_rowreq_ctx * - rowreq_ctx, -- U64 * -+ struct counter64 * - ifHCOutMulticastPkts_val_ptr); - int ifHCOutBroadcastPkts_get(ifXTable_rowreq_ctx * - rowreq_ctx, -- U64 * -+ struct counter64 * - ifHCOutBroadcastPkts_val_ptr); - int ifLinkUpDownTrapEnable_get(ifXTable_rowreq_ctx * - rowreq_ctx, -@@ -284,86 +284,86 @@ config_require(if-mib/ifXTable/ifXTable_data_access) - - int ifHCInOctets_check_value(ifXTable_rowreq_ctx * - rowreq_ctx, -- U64 ifHCInOctets_val); -+ struct counter64 ifHCInOctets_val); - int ifHCInOctets_undo_setup(ifXTable_rowreq_ctx * - rowreq_ctx); - int ifHCInOctets_set(ifXTable_rowreq_ctx * rowreq_ctx, -- U64 ifHCInOctets_val); -+ struct counter64 ifHCInOctets_val); - int ifHCInOctets_undo(ifXTable_rowreq_ctx * rowreq_ctx); - - int ifHCInUcastPkts_check_value(ifXTable_rowreq_ctx * - rowreq_ctx, -- U64 ifHCInUcastPkts_val); -+ struct counter64 ifHCInUcastPkts_val); - int ifHCInUcastPkts_undo_setup(ifXTable_rowreq_ctx * - rowreq_ctx); - int ifHCInUcastPkts_set(ifXTable_rowreq_ctx * rowreq_ctx, -- U64 ifHCInUcastPkts_val); -+ struct counter64 ifHCInUcastPkts_val); - int ifHCInUcastPkts_undo(ifXTable_rowreq_ctx * rowreq_ctx); - - int ifHCInMulticastPkts_check_value(ifXTable_rowreq_ctx * - rowreq_ctx, -- U64 -+ struct counter64 - ifHCInMulticastPkts_val); - int ifHCInMulticastPkts_undo_setup(ifXTable_rowreq_ctx * - rowreq_ctx); - int ifHCInMulticastPkts_set(ifXTable_rowreq_ctx * - rowreq_ctx, -- U64 ifHCInMulticastPkts_val); -+ struct counter64 ifHCInMulticastPkts_val); - int ifHCInMulticastPkts_undo(ifXTable_rowreq_ctx * - rowreq_ctx); - - int ifHCInBroadcastPkts_check_value(ifXTable_rowreq_ctx * - rowreq_ctx, -- U64 -+ struct counter64 - ifHCInBroadcastPkts_val); - int ifHCInBroadcastPkts_undo_setup(ifXTable_rowreq_ctx * - rowreq_ctx); - int ifHCInBroadcastPkts_set(ifXTable_rowreq_ctx * - rowreq_ctx, -- U64 ifHCInBroadcastPkts_val); -+ struct counter64 ifHCInBroadcastPkts_val); - int ifHCInBroadcastPkts_undo(ifXTable_rowreq_ctx * - rowreq_ctx); - - int ifHCOutOctets_check_value(ifXTable_rowreq_ctx * - rowreq_ctx, -- U64 ifHCOutOctets_val); -+ struct counter64 ifHCOutOctets_val); - int ifHCOutOctets_undo_setup(ifXTable_rowreq_ctx * - rowreq_ctx); - int ifHCOutOctets_set(ifXTable_rowreq_ctx * rowreq_ctx, -- U64 ifHCOutOctets_val); -+ struct counter64 ifHCOutOctets_val); - int ifHCOutOctets_undo(ifXTable_rowreq_ctx * rowreq_ctx); - - int ifHCOutUcastPkts_check_value(ifXTable_rowreq_ctx * - rowreq_ctx, -- U64 ifHCOutUcastPkts_val); -+ struct counter64 ifHCOutUcastPkts_val); - int ifHCOutUcastPkts_undo_setup(ifXTable_rowreq_ctx * - rowreq_ctx); - int ifHCOutUcastPkts_set(ifXTable_rowreq_ctx * rowreq_ctx, -- U64 ifHCOutUcastPkts_val); -+ struct counter64 ifHCOutUcastPkts_val); - int ifHCOutUcastPkts_undo(ifXTable_rowreq_ctx * - rowreq_ctx); - - int ifHCOutMulticastPkts_check_value(ifXTable_rowreq_ctx * - rowreq_ctx, -- U64 -+ struct counter64 - ifHCOutMulticastPkts_val); - int ifHCOutMulticastPkts_undo_setup(ifXTable_rowreq_ctx * - rowreq_ctx); - int ifHCOutMulticastPkts_set(ifXTable_rowreq_ctx * - rowreq_ctx, -- U64 ifHCOutMulticastPkts_val); -+ struct counter64 ifHCOutMulticastPkts_val); - int ifHCOutMulticastPkts_undo(ifXTable_rowreq_ctx * - rowreq_ctx); - - int ifHCOutBroadcastPkts_check_value(ifXTable_rowreq_ctx * - rowreq_ctx, -- U64 -+ struct counter64 - ifHCOutBroadcastPkts_val); - int ifHCOutBroadcastPkts_undo_setup(ifXTable_rowreq_ctx * - rowreq_ctx); - int ifHCOutBroadcastPkts_set(ifXTable_rowreq_ctx * - rowreq_ctx, -- U64 ifHCOutBroadcastPkts_val); -+ struct counter64 ifHCOutBroadcastPkts_val); - int ifHCOutBroadcastPkts_undo(ifXTable_rowreq_ctx * - rowreq_ctx); - -diff --git a/agent/mibgroup/if-mib/ifXTable/ifXTable_interface.c b/agent/mibgroup/if-mib/ifXTable/ifXTable_interface.c -index 23b50d0..e561842 100644 ---- a/agent/mibgroup/if-mib/ifXTable/ifXTable_interface.c -+++ b/agent/mibgroup/if-mib/ifXTable/ifXTable_interface.c -@@ -729,72 +729,72 @@ _ifXTable_get_column(ifXTable_rowreq_ctx * rowreq_ctx, - * ifHCInOctets(6)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h - */ - case COLUMN_IFHCINOCTETS: -- var->val_len = sizeof(U64); -+ var->val_len = sizeof(struct counter64); - var->type = ASN_COUNTER64; -- rc = ifHCInOctets_get(rowreq_ctx, (U64 *) var->val.string); -+ rc = ifHCInOctets_get(rowreq_ctx, (struct counter64 *) var->val.string); - break; - - /* - * ifHCInUcastPkts(7)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h - */ - case COLUMN_IFHCINUCASTPKTS: -- var->val_len = sizeof(U64); -+ var->val_len = sizeof(struct counter64); - var->type = ASN_COUNTER64; -- rc = ifHCInUcastPkts_get(rowreq_ctx, (U64 *) var->val.string); -+ rc = ifHCInUcastPkts_get(rowreq_ctx, (struct counter64 *) var->val.string); - break; - - /* - * ifHCInMulticastPkts(8)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h - */ - case COLUMN_IFHCINMULTICASTPKTS: -- var->val_len = sizeof(U64); -+ var->val_len = sizeof(struct counter64); - var->type = ASN_COUNTER64; -- rc = ifHCInMulticastPkts_get(rowreq_ctx, (U64 *) var->val.string); -+ rc = ifHCInMulticastPkts_get(rowreq_ctx, (struct counter64 *) var->val.string); - break; - - /* - * ifHCInBroadcastPkts(9)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h - */ - case COLUMN_IFHCINBROADCASTPKTS: -- var->val_len = sizeof(U64); -+ var->val_len = sizeof(struct counter64); - var->type = ASN_COUNTER64; -- rc = ifHCInBroadcastPkts_get(rowreq_ctx, (U64 *) var->val.string); -+ rc = ifHCInBroadcastPkts_get(rowreq_ctx, (struct counter64 *) var->val.string); - break; - - /* - * ifHCOutOctets(10)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h - */ - case COLUMN_IFHCOUTOCTETS: -- var->val_len = sizeof(U64); -+ var->val_len = sizeof(struct counter64); - var->type = ASN_COUNTER64; -- rc = ifHCOutOctets_get(rowreq_ctx, (U64 *) var->val.string); -+ rc = ifHCOutOctets_get(rowreq_ctx, (struct counter64 *) var->val.string); - break; - - /* - * ifHCOutUcastPkts(11)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h - */ - case COLUMN_IFHCOUTUCASTPKTS: -- var->val_len = sizeof(U64); -+ var->val_len = sizeof(struct counter64); - var->type = ASN_COUNTER64; -- rc = ifHCOutUcastPkts_get(rowreq_ctx, (U64 *) var->val.string); -+ rc = ifHCOutUcastPkts_get(rowreq_ctx, (struct counter64 *) var->val.string); - break; - - /* - * ifHCOutMulticastPkts(12)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h - */ - case COLUMN_IFHCOUTMULTICASTPKTS: -- var->val_len = sizeof(U64); -+ var->val_len = sizeof(struct counter64); - var->type = ASN_COUNTER64; -- rc = ifHCOutMulticastPkts_get(rowreq_ctx, (U64 *) var->val.string); -+ rc = ifHCOutMulticastPkts_get(rowreq_ctx, (struct counter64 *) var->val.string); - break; - - /* - * ifHCOutBroadcastPkts(13)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h - */ - case COLUMN_IFHCOUTBROADCASTPKTS: -- var->val_len = sizeof(U64); -+ var->val_len = sizeof(struct counter64); - var->type = ASN_COUNTER64; -- rc = ifHCOutBroadcastPkts_get(rowreq_ctx, (U64 *) var->val.string); -+ rc = ifHCOutBroadcastPkts_get(rowreq_ctx, (struct counter64 *) var->val.string); - break; - - /* -diff --git a/agent/mibgroup/ip-mib/data_access/systemstats_common.c b/agent/mibgroup/ip-mib/data_access/systemstats_common.c -index 29109bd..7434b3a 100644 ---- a/agent/mibgroup/ip-mib/data_access/systemstats_common.c -+++ b/agent/mibgroup/ip-mib/data_access/systemstats_common.c -@@ -264,7 +264,7 @@ _calculate_entries(netsnmp_systemstats_entry * entry) - && entry->stats.columnAvail[IPSYSTEMSTATSTABLE_HCOUTFRAGCREATES] - && entry->stats.columnAvail[IPSYSTEMSTATSTABLE_HCOUTDISCARDS]) { - -- U64 tmp, tmp2, tmp3; -+ struct counter64 tmp, tmp2, tmp3; - tmp = entry->stats.HCOutRequests; - u64Incr(&tmp, &entry->stats.HCOutForwDatagrams); - u64Incr(&tmp, &entry->stats.HCOutFragCreates); -diff --git a/agent/mibgroup/ip-mib/ipIfStatsTable/ipIfStatsTable_data_get.c b/agent/mibgroup/ip-mib/ipIfStatsTable/ipIfStatsTable_data_get.c -index db673dc..fec36b2 100644 ---- a/agent/mibgroup/ip-mib/ipIfStatsTable/ipIfStatsTable_data_get.c -+++ b/agent/mibgroup/ip-mib/ipIfStatsTable/ipIfStatsTable_data_get.c -@@ -270,7 +270,7 @@ The total number of input IP datagrams received, including - */ - int - ipIfStatsHCInReceives_get(ipIfStatsTable_rowreq_ctx * rowreq_ctx, -- U64 * ipIfStatsHCInReceives_val_ptr) -+ struct counter64 *ipIfStatsHCInReceives_val_ptr) - { - /** we should have a non-NULL pointer */ - netsnmp_assert(NULL != ipIfStatsHCInReceives_val_ptr); -@@ -395,7 +395,7 @@ The total number of octets received in input IP datagrams, - */ - int - ipIfStatsHCInOctets_get(ipIfStatsTable_rowreq_ctx * rowreq_ctx, -- U64 * ipIfStatsHCInOctets_val_ptr) -+ struct counter64 *ipIfStatsHCInOctets_val_ptr) - { - /** we should have a non-NULL pointer */ - netsnmp_assert(NULL != ipIfStatsHCInOctets_val_ptr); -@@ -862,7 +862,7 @@ The number of input datagrams for which this entity was not - */ - int - ipIfStatsHCInForwDatagrams_get(ipIfStatsTable_rowreq_ctx * rowreq_ctx, -- U64 * ipIfStatsHCInForwDatagrams_val_ptr) -+ struct counter64 *ipIfStatsHCInForwDatagrams_val_ptr) - { - /** we should have a non-NULL pointer */ - netsnmp_assert(NULL != ipIfStatsHCInForwDatagrams_val_ptr); -@@ -1267,7 +1267,7 @@ The total number of datagrams successfully delivered to IP - */ - int - ipIfStatsHCInDelivers_get(ipIfStatsTable_rowreq_ctx * rowreq_ctx, -- U64 * ipIfStatsHCInDelivers_val_ptr) -+ struct counter64 *ipIfStatsHCInDelivers_val_ptr) - { - /** we should have a non-NULL pointer */ - netsnmp_assert(NULL != ipIfStatsHCInDelivers_val_ptr); -@@ -1396,7 +1396,7 @@ The total number of IP datagrams that local IP user- - */ - int - ipIfStatsHCOutRequests_get(ipIfStatsTable_rowreq_ctx * rowreq_ctx, -- U64 * ipIfStatsHCOutRequests_val_ptr) -+ struct counter64 *ipIfStatsHCOutRequests_val_ptr) - { - /** we should have a non-NULL pointer */ - netsnmp_assert(NULL != ipIfStatsHCOutRequests_val_ptr); -@@ -1532,7 +1532,7 @@ The number of datagrams for which this entity was not their - */ - int - ipIfStatsHCOutForwDatagrams_get(ipIfStatsTable_rowreq_ctx * rowreq_ctx, -- U64 * ipIfStatsHCOutForwDatagrams_val_ptr) -+ struct counter64 *ipIfStatsHCOutForwDatagrams_val_ptr) - { - /** we should have a non-NULL pointer */ - netsnmp_assert(NULL != ipIfStatsHCOutForwDatagrams_val_ptr); -@@ -1999,7 +1999,7 @@ The total number of IP datagrams that this entity supplied - */ - int - ipIfStatsHCOutTransmits_get(ipIfStatsTable_rowreq_ctx * rowreq_ctx, -- U64 * ipIfStatsHCOutTransmits_val_ptr) -+ struct counter64 *ipIfStatsHCOutTransmits_val_ptr) - { - /** we should have a non-NULL pointer */ - netsnmp_assert(NULL != ipIfStatsHCOutTransmits_val_ptr); -@@ -2123,7 +2123,7 @@ The total number of octets in IP datagrams delivered to the - */ - int - ipIfStatsHCOutOctets_get(ipIfStatsTable_rowreq_ctx * rowreq_ctx, -- U64 * ipIfStatsHCOutOctets_val_ptr) -+ struct counter64 *ipIfStatsHCOutOctets_val_ptr) - { - /** we should have a non-NULL pointer */ - netsnmp_assert(NULL != ipIfStatsHCOutOctets_val_ptr); -@@ -2245,7 +2245,7 @@ The number of IP multicast datagrams received. This object - */ - int - ipIfStatsHCInMcastPkts_get(ipIfStatsTable_rowreq_ctx * rowreq_ctx, -- U64 * ipIfStatsHCInMcastPkts_val_ptr) -+ struct counter64 *ipIfStatsHCInMcastPkts_val_ptr) - { - /** we should have a non-NULL pointer */ - netsnmp_assert(NULL != ipIfStatsHCInMcastPkts_val_ptr); -@@ -2372,7 +2372,7 @@ The total number of octets received in IP multicast - */ - int - ipIfStatsHCInMcastOctets_get(ipIfStatsTable_rowreq_ctx * rowreq_ctx, -- U64 * ipIfStatsHCInMcastOctets_val_ptr) -+ struct counter64 *ipIfStatsHCInMcastOctets_val_ptr) - { - /** we should have a non-NULL pointer */ - netsnmp_assert(NULL != ipIfStatsHCInMcastOctets_val_ptr); -@@ -2497,7 +2497,7 @@ The number of IP multicast datagrams transmitted. This - */ - int - ipIfStatsHCOutMcastPkts_get(ipIfStatsTable_rowreq_ctx * rowreq_ctx, -- U64 * ipIfStatsHCOutMcastPkts_val_ptr) -+ struct counter64 *ipIfStatsHCOutMcastPkts_val_ptr) - { - /** we should have a non-NULL pointer */ - netsnmp_assert(NULL != ipIfStatsHCOutMcastPkts_val_ptr); -@@ -2621,7 +2621,7 @@ The total number of octets transmitted in IP multicast - */ - int - ipIfStatsHCOutMcastOctets_get(ipIfStatsTable_rowreq_ctx * rowreq_ctx, -- U64 * ipIfStatsHCOutMcastOctets_val_ptr) -+ struct counter64 *ipIfStatsHCOutMcastOctets_val_ptr) - { - /** we should have a non-NULL pointer */ - netsnmp_assert(NULL != ipIfStatsHCOutMcastOctets_val_ptr); -@@ -2743,7 +2743,7 @@ The number of IP broadcast datagrams received. This object - */ - int - ipIfStatsHCInBcastPkts_get(ipIfStatsTable_rowreq_ctx * rowreq_ctx, -- U64 * ipIfStatsHCInBcastPkts_val_ptr) -+ struct counter64 *ipIfStatsHCInBcastPkts_val_ptr) - { - /** we should have a non-NULL pointer */ - netsnmp_assert(NULL != ipIfStatsHCInBcastPkts_val_ptr); -@@ -2865,7 +2865,7 @@ The number of IP broadcast datagrams transmitted. This - */ - int - ipIfStatsHCOutBcastPkts_get(ipIfStatsTable_rowreq_ctx * rowreq_ctx, -- U64 * ipIfStatsHCOutBcastPkts_val_ptr) -+ struct counter64 *ipIfStatsHCOutBcastPkts_val_ptr) - { - /** we should have a non-NULL pointer */ - netsnmp_assert(NULL != ipIfStatsHCOutBcastPkts_val_ptr); -diff --git a/agent/mibgroup/ip-mib/ipIfStatsTable/ipIfStatsTable_data_get.h b/agent/mibgroup/ip-mib/ipIfStatsTable/ipIfStatsTable_data_get.h -index 0cc7e47..ad5d8a0 100644 ---- a/agent/mibgroup/ip-mib/ipIfStatsTable/ipIfStatsTable_data_get.h -+++ b/agent/mibgroup/ip-mib/ipIfStatsTable/ipIfStatsTable_data_get.h -@@ -50,7 +50,7 @@ extern "C" { - ipIfStatsInReceives_val_ptr); - int ipIfStatsHCInReceives_get(ipIfStatsTable_rowreq_ctx * - rowreq_ctx, -- U64 * -+ struct counter64 * - ipIfStatsHCInReceives_val_ptr); - int ipIfStatsInOctets_get(ipIfStatsTable_rowreq_ctx * - rowreq_ctx, -@@ -58,7 +58,7 @@ extern "C" { - ipIfStatsInOctets_val_ptr); - int ipIfStatsHCInOctets_get(ipIfStatsTable_rowreq_ctx * - rowreq_ctx, -- U64 * -+ struct counter64 * - ipIfStatsHCInOctets_val_ptr); - int ipIfStatsInHdrErrors_get(ipIfStatsTable_rowreq_ctx * - rowreq_ctx, -@@ -87,7 +87,7 @@ extern "C" { - int - ipIfStatsHCInForwDatagrams_get(ipIfStatsTable_rowreq_ctx * - rowreq_ctx, -- U64 * -+ struct counter64 * - ipIfStatsHCInForwDatagrams_val_ptr); - int ipIfStatsReasmReqds_get(ipIfStatsTable_rowreq_ctx * - rowreq_ctx, -@@ -111,7 +111,7 @@ extern "C" { - ipIfStatsInDelivers_val_ptr); - int ipIfStatsHCInDelivers_get(ipIfStatsTable_rowreq_ctx * - rowreq_ctx, -- U64 * -+ struct counter64 * - ipIfStatsHCInDelivers_val_ptr); - int ipIfStatsOutRequests_get(ipIfStatsTable_rowreq_ctx * - rowreq_ctx, -@@ -119,7 +119,7 @@ extern "C" { - ipIfStatsOutRequests_val_ptr); - int ipIfStatsHCOutRequests_get(ipIfStatsTable_rowreq_ctx * - rowreq_ctx, -- U64 * -+ struct counter64 * - ipIfStatsHCOutRequests_val_ptr); - int ipIfStatsOutForwDatagrams_get(ipIfStatsTable_rowreq_ctx - * rowreq_ctx, -@@ -128,7 +128,7 @@ extern "C" { - int - ipIfStatsHCOutForwDatagrams_get(ipIfStatsTable_rowreq_ctx * - rowreq_ctx, -- U64 * -+ struct counter64 * - ipIfStatsHCOutForwDatagrams_val_ptr); - int ipIfStatsOutDiscards_get(ipIfStatsTable_rowreq_ctx * - rowreq_ctx, -@@ -156,7 +156,7 @@ extern "C" { - ipIfStatsOutTransmits_val_ptr); - int ipIfStatsHCOutTransmits_get(ipIfStatsTable_rowreq_ctx * - rowreq_ctx, -- U64 * -+ struct counter64 * - ipIfStatsHCOutTransmits_val_ptr); - int ipIfStatsOutOctets_get(ipIfStatsTable_rowreq_ctx * - rowreq_ctx, -@@ -164,7 +164,7 @@ extern "C" { - ipIfStatsOutOctets_val_ptr); - int ipIfStatsHCOutOctets_get(ipIfStatsTable_rowreq_ctx * - rowreq_ctx, -- U64 * -+ struct counter64 * - ipIfStatsHCOutOctets_val_ptr); - int ipIfStatsInMcastPkts_get(ipIfStatsTable_rowreq_ctx * - rowreq_ctx, -@@ -172,7 +172,7 @@ extern "C" { - ipIfStatsInMcastPkts_val_ptr); - int ipIfStatsHCInMcastPkts_get(ipIfStatsTable_rowreq_ctx * - rowreq_ctx, -- U64 * -+ struct counter64 * - ipIfStatsHCInMcastPkts_val_ptr); - int ipIfStatsInMcastOctets_get(ipIfStatsTable_rowreq_ctx * - rowreq_ctx, -@@ -180,7 +180,7 @@ extern "C" { - ipIfStatsInMcastOctets_val_ptr); - int ipIfStatsHCInMcastOctets_get(ipIfStatsTable_rowreq_ctx - * rowreq_ctx, -- U64 * -+ struct counter64 * - ipIfStatsHCInMcastOctets_val_ptr); - int ipIfStatsOutMcastPkts_get(ipIfStatsTable_rowreq_ctx * - rowreq_ctx, -@@ -188,7 +188,7 @@ extern "C" { - ipIfStatsOutMcastPkts_val_ptr); - int ipIfStatsHCOutMcastPkts_get(ipIfStatsTable_rowreq_ctx * - rowreq_ctx, -- U64 * -+ struct counter64 * - ipIfStatsHCOutMcastPkts_val_ptr); - int ipIfStatsOutMcastOctets_get(ipIfStatsTable_rowreq_ctx * - rowreq_ctx, -@@ -196,7 +196,7 @@ extern "C" { - ipIfStatsOutMcastOctets_val_ptr); - int ipIfStatsHCOutMcastOctets_get(ipIfStatsTable_rowreq_ctx - * rowreq_ctx, -- U64 * -+ struct counter64 * - ipIfStatsHCOutMcastOctets_val_ptr); - int ipIfStatsInBcastPkts_get(ipIfStatsTable_rowreq_ctx * - rowreq_ctx, -@@ -204,7 +204,7 @@ extern "C" { - ipIfStatsInBcastPkts_val_ptr); - int ipIfStatsHCInBcastPkts_get(ipIfStatsTable_rowreq_ctx * - rowreq_ctx, -- U64 * -+ struct counter64 * - ipIfStatsHCInBcastPkts_val_ptr); - int ipIfStatsOutBcastPkts_get(ipIfStatsTable_rowreq_ctx * - rowreq_ctx, -@@ -212,7 +212,7 @@ extern "C" { - ipIfStatsOutBcastPkts_val_ptr); - int ipIfStatsHCOutBcastPkts_get(ipIfStatsTable_rowreq_ctx * - rowreq_ctx, -- U64 * -+ struct counter64 * - ipIfStatsHCOutBcastPkts_val_ptr); - int - ipIfStatsDiscontinuityTime_get(ipIfStatsTable_rowreq_ctx * -diff --git a/agent/mibgroup/ip-mib/ipIfStatsTable/ipIfStatsTable_interface.c b/agent/mibgroup/ip-mib/ipIfStatsTable/ipIfStatsTable_interface.c -index 559d1c1..4955a8b 100644 ---- a/agent/mibgroup/ip-mib/ipIfStatsTable/ipIfStatsTable_interface.c -+++ b/agent/mibgroup/ip-mib/ipIfStatsTable/ipIfStatsTable_interface.c -@@ -722,10 +722,10 @@ _ipIfStatsTable_get_column(ipIfStatsTable_rowreq_ctx * rowreq_ctx, - * ipIfStatsHCInReceives(4)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h - */ - case COLUMN_IPIFSTATSHCINRECEIVES: -- var->val_len = sizeof(U64); -+ var->val_len = sizeof(struct counter64); - var->type = ASN_COUNTER64; - rc = ipIfStatsHCInReceives_get(rowreq_ctx, -- (U64 *) var->val.string); -+ (struct counter64 *) var->val.string); - break; - - /* -@@ -741,9 +741,9 @@ _ipIfStatsTable_get_column(ipIfStatsTable_rowreq_ctx * rowreq_ctx, - * ipIfStatsHCInOctets(6)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h - */ - case COLUMN_IPIFSTATSHCINOCTETS: -- var->val_len = sizeof(U64); -+ var->val_len = sizeof(struct counter64); - var->type = ASN_COUNTER64; -- rc = ipIfStatsHCInOctets_get(rowreq_ctx, (U64 *) var->val.string); -+ rc = ipIfStatsHCInOctets_get(rowreq_ctx, (struct counter64 *) var->val.string); - break; - - /* -@@ -810,10 +810,10 @@ _ipIfStatsTable_get_column(ipIfStatsTable_rowreq_ctx * rowreq_ctx, - * ipIfStatsHCInForwDatagrams(13)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h - */ - case COLUMN_IPIFSTATSHCINFORWDATAGRAMS: -- var->val_len = sizeof(U64); -+ var->val_len = sizeof(struct counter64); - var->type = ASN_COUNTER64; - rc = ipIfStatsHCInForwDatagrams_get(rowreq_ctx, -- (U64 *) var->val.string); -+ (struct counter64 *) var->val.string); - break; - - /* -@@ -869,10 +869,10 @@ _ipIfStatsTable_get_column(ipIfStatsTable_rowreq_ctx * rowreq_ctx, - * ipIfStatsHCInDelivers(19)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h - */ - case COLUMN_IPIFSTATSHCINDELIVERS: -- var->val_len = sizeof(U64); -+ var->val_len = sizeof(struct counter64); - var->type = ASN_COUNTER64; - rc = ipIfStatsHCInDelivers_get(rowreq_ctx, -- (U64 *) var->val.string); -+ (struct counter64 *) var->val.string); - break; - - /* -@@ -889,10 +889,10 @@ _ipIfStatsTable_get_column(ipIfStatsTable_rowreq_ctx * rowreq_ctx, - * ipIfStatsHCOutRequests(21)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h - */ - case COLUMN_IPIFSTATSHCOUTREQUESTS: -- var->val_len = sizeof(U64); -+ var->val_len = sizeof(struct counter64); - var->type = ASN_COUNTER64; - rc = ipIfStatsHCOutRequests_get(rowreq_ctx, -- (U64 *) var->val.string); -+ (struct counter64 *) var->val.string); - break; - - /* -@@ -909,10 +909,10 @@ _ipIfStatsTable_get_column(ipIfStatsTable_rowreq_ctx * rowreq_ctx, - * ipIfStatsHCOutForwDatagrams(24)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h - */ - case COLUMN_IPIFSTATSHCOUTFORWDATAGRAMS: -- var->val_len = sizeof(U64); -+ var->val_len = sizeof(struct counter64); - var->type = ASN_COUNTER64; - rc = ipIfStatsHCOutForwDatagrams_get(rowreq_ctx, -- (U64 *) var->val.string); -+ (struct counter64 *) var->val.string); - break; - - /* -@@ -979,10 +979,10 @@ _ipIfStatsTable_get_column(ipIfStatsTable_rowreq_ctx * rowreq_ctx, - * ipIfStatsHCOutTransmits(31)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h - */ - case COLUMN_IPIFSTATSHCOUTTRANSMITS: -- var->val_len = sizeof(U64); -+ var->val_len = sizeof(struct counter64); - var->type = ASN_COUNTER64; - rc = ipIfStatsHCOutTransmits_get(rowreq_ctx, -- (U64 *) var->val.string); -+ (struct counter64 *) var->val.string); - break; - - /* -@@ -999,9 +999,9 @@ _ipIfStatsTable_get_column(ipIfStatsTable_rowreq_ctx * rowreq_ctx, - * ipIfStatsHCOutOctets(33)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h - */ - case COLUMN_IPIFSTATSHCOUTOCTETS: -- var->val_len = sizeof(U64); -+ var->val_len = sizeof(struct counter64); - var->type = ASN_COUNTER64; -- rc = ipIfStatsHCOutOctets_get(rowreq_ctx, (U64 *) var->val.string); -+ rc = ipIfStatsHCOutOctets_get(rowreq_ctx, (struct counter64 *) var->val.string); - break; - - /* -@@ -1018,10 +1018,10 @@ _ipIfStatsTable_get_column(ipIfStatsTable_rowreq_ctx * rowreq_ctx, - * ipIfStatsHCInMcastPkts(35)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h - */ - case COLUMN_IPIFSTATSHCINMCASTPKTS: -- var->val_len = sizeof(U64); -+ var->val_len = sizeof(struct counter64); - var->type = ASN_COUNTER64; - rc = ipIfStatsHCInMcastPkts_get(rowreq_ctx, -- (U64 *) var->val.string); -+ (struct counter64 *) var->val.string); - break; - - /* -@@ -1038,10 +1038,10 @@ _ipIfStatsTable_get_column(ipIfStatsTable_rowreq_ctx * rowreq_ctx, - * ipIfStatsHCInMcastOctets(37)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h - */ - case COLUMN_IPIFSTATSHCINMCASTOCTETS: -- var->val_len = sizeof(U64); -+ var->val_len = sizeof(struct counter64); - var->type = ASN_COUNTER64; - rc = ipIfStatsHCInMcastOctets_get(rowreq_ctx, -- (U64 *) var->val.string); -+ (struct counter64 *) var->val.string); - break; - - /* -@@ -1058,10 +1058,10 @@ _ipIfStatsTable_get_column(ipIfStatsTable_rowreq_ctx * rowreq_ctx, - * ipIfStatsHCOutMcastPkts(39)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h - */ - case COLUMN_IPIFSTATSHCOUTMCASTPKTS: -- var->val_len = sizeof(U64); -+ var->val_len = sizeof(struct counter64); - var->type = ASN_COUNTER64; - rc = ipIfStatsHCOutMcastPkts_get(rowreq_ctx, -- (U64 *) var->val.string); -+ (struct counter64 *) var->val.string); - break; - - /* -@@ -1078,10 +1078,10 @@ _ipIfStatsTable_get_column(ipIfStatsTable_rowreq_ctx * rowreq_ctx, - * ipIfStatsHCOutMcastOctets(41)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h - */ - case COLUMN_IPIFSTATSHCOUTMCASTOCTETS: -- var->val_len = sizeof(U64); -+ var->val_len = sizeof(struct counter64); - var->type = ASN_COUNTER64; - rc = ipIfStatsHCOutMcastOctets_get(rowreq_ctx, -- (U64 *) var->val.string); -+ (struct counter64 *) var->val.string); - break; - - /* -@@ -1098,10 +1098,10 @@ _ipIfStatsTable_get_column(ipIfStatsTable_rowreq_ctx * rowreq_ctx, - * ipIfStatsHCInBcastPkts(43)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h - */ - case COLUMN_IPIFSTATSHCINBCASTPKTS: -- var->val_len = sizeof(U64); -+ var->val_len = sizeof(struct counter64); - var->type = ASN_COUNTER64; - rc = ipIfStatsHCInBcastPkts_get(rowreq_ctx, -- (U64 *) var->val.string); -+ (struct counter64 *) var->val.string); - break; - - /* -@@ -1118,10 +1118,10 @@ _ipIfStatsTable_get_column(ipIfStatsTable_rowreq_ctx * rowreq_ctx, - * ipIfStatsHCOutBcastPkts(45)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h - */ - case COLUMN_IPIFSTATSHCOUTBCASTPKTS: -- var->val_len = sizeof(U64); -+ var->val_len = sizeof(struct counter64); - var->type = ASN_COUNTER64; - rc = ipIfStatsHCOutBcastPkts_get(rowreq_ctx, -- (U64 *) var->val.string); -+ (struct counter64 *) var->val.string); - break; - - /* -diff --git a/agent/mibgroup/ip-mib/ipSystemStatsTable/ipSystemStatsTable.c b/agent/mibgroup/ip-mib/ipSystemStatsTable/ipSystemStatsTable.c -index 10587e2..5a9323f 100644 ---- a/agent/mibgroup/ip-mib/ipSystemStatsTable/ipSystemStatsTable.c -+++ b/agent/mibgroup/ip-mib/ipSystemStatsTable/ipSystemStatsTable.c -@@ -452,7 +452,7 @@ The total number of input IP datagrams received, including - */ - int - ipSystemStatsHCInReceives_get(ipSystemStatsTable_rowreq_ctx * rowreq_ctx, -- U64 * ipSystemStatsHCInReceives_val_ptr) -+ struct counter64 *ipSystemStatsHCInReceives_val_ptr) - { - /** we should have a non-NULL pointer */ - netsnmp_assert(NULL != ipSystemStatsHCInReceives_val_ptr); -@@ -579,7 +579,7 @@ The total number of octets received in input IP datagrams, - */ - int - ipSystemStatsHCInOctets_get(ipSystemStatsTable_rowreq_ctx * rowreq_ctx, -- U64 * ipSystemStatsHCInOctets_val_ptr) -+ struct counter64 *ipSystemStatsHCInOctets_val_ptr) - { - /** we should have a non-NULL pointer */ - netsnmp_assert(NULL != ipSystemStatsHCInOctets_val_ptr); -@@ -1058,7 +1058,7 @@ The number of input datagrams for which this entity was not - int - ipSystemStatsHCInForwDatagrams_get(ipSystemStatsTable_rowreq_ctx * - rowreq_ctx, -- U64 * -+ struct counter64 * - ipSystemStatsHCInForwDatagrams_val_ptr) - { - /** we should have a non-NULL pointer */ -@@ -1474,7 +1474,7 @@ The total number of datagrams successfully delivered to IP - */ - int - ipSystemStatsHCInDelivers_get(ipSystemStatsTable_rowreq_ctx * rowreq_ctx, -- U64 * ipSystemStatsHCInDelivers_val_ptr) -+ struct counter64 *ipSystemStatsHCInDelivers_val_ptr) - { - /** we should have a non-NULL pointer */ - netsnmp_assert(NULL != ipSystemStatsHCInDelivers_val_ptr); -@@ -1602,7 +1602,7 @@ The total number of IP datagrams which local IP user- - */ - int - ipSystemStatsHCOutRequests_get(ipSystemStatsTable_rowreq_ctx * rowreq_ctx, -- U64 * ipSystemStatsHCOutRequests_val_ptr) -+ struct counter64 *ipSystemStatsHCOutRequests_val_ptr) - { - /** we should have a non-NULL pointer */ - netsnmp_assert(NULL != ipSystemStatsHCOutRequests_val_ptr); -@@ -1809,7 +1809,7 @@ The number of datagrams for which this entity was not their - int - ipSystemStatsHCOutForwDatagrams_get(ipSystemStatsTable_rowreq_ctx * - rowreq_ctx, -- U64 * -+ struct counter64 * - ipSystemStatsHCOutForwDatagrams_val_ptr) - { - /** we should have a non-NULL pointer */ -@@ -2288,7 +2288,7 @@ The total number of IP datagrams that this entity supplied - */ - int - ipSystemStatsHCOutTransmits_get(ipSystemStatsTable_rowreq_ctx * rowreq_ctx, -- U64 * ipSystemStatsHCOutTransmits_val_ptr) -+ struct counter64 *ipSystemStatsHCOutTransmits_val_ptr) - { - /** we should have a non-NULL pointer */ - netsnmp_assert(NULL != ipSystemStatsHCOutTransmits_val_ptr); -@@ -2415,7 +2415,7 @@ The total number of octets in IP datagrams delivered to the - */ - int - ipSystemStatsHCOutOctets_get(ipSystemStatsTable_rowreq_ctx * rowreq_ctx, -- U64 * ipSystemStatsHCOutOctets_val_ptr) -+ struct counter64 *ipSystemStatsHCOutOctets_val_ptr) - { - /** we should have a non-NULL pointer */ - netsnmp_assert(NULL != ipSystemStatsHCOutOctets_val_ptr); -@@ -2539,7 +2539,7 @@ The number of IP multicast datagrams received. This object - */ - int - ipSystemStatsHCInMcastPkts_get(ipSystemStatsTable_rowreq_ctx * rowreq_ctx, -- U64 * ipSystemStatsHCInMcastPkts_val_ptr) -+ struct counter64 *ipSystemStatsHCInMcastPkts_val_ptr) - { - /** we should have a non-NULL pointer */ - netsnmp_assert(NULL != ipSystemStatsHCInMcastPkts_val_ptr); -@@ -2665,7 +2665,7 @@ The total number of octets received in IP multicast - int - ipSystemStatsHCInMcastOctets_get(ipSystemStatsTable_rowreq_ctx * - rowreq_ctx, -- U64 * -+ struct counter64 * - ipSystemStatsHCInMcastOctets_val_ptr) - { - /** we should have a non-NULL pointer */ -@@ -2790,7 +2790,7 @@ The number of IP multicast datagrams transmitted. This - */ - int - ipSystemStatsHCOutMcastPkts_get(ipSystemStatsTable_rowreq_ctx * rowreq_ctx, -- U64 * ipSystemStatsHCOutMcastPkts_val_ptr) -+ struct counter64 *ipSystemStatsHCOutMcastPkts_val_ptr) - { - /** we should have a non-NULL pointer */ - netsnmp_assert(NULL != ipSystemStatsHCOutMcastPkts_val_ptr); -@@ -2921,7 +2921,7 @@ The total number of octets transmitted in IP multicast - int - ipSystemStatsHCOutMcastOctets_get(ipSystemStatsTable_rowreq_ctx * - rowreq_ctx, -- U64 * -+ struct counter64 * - ipSystemStatsHCOutMcastOctets_val_ptr) - { - /** we should have a non-NULL pointer */ -@@ -3046,7 +3046,7 @@ The number of IP broadcast datagrams received. This object - */ - int - ipSystemStatsHCInBcastPkts_get(ipSystemStatsTable_rowreq_ctx * rowreq_ctx, -- U64 * ipSystemStatsHCInBcastPkts_val_ptr) -+ struct counter64 *ipSystemStatsHCInBcastPkts_val_ptr) - { - /** we should have a non-NULL pointer */ - netsnmp_assert(NULL != ipSystemStatsHCInBcastPkts_val_ptr); -@@ -3170,7 +3170,7 @@ The number of IP broadcast datagrams transmitted. This - */ - int - ipSystemStatsHCOutBcastPkts_get(ipSystemStatsTable_rowreq_ctx * rowreq_ctx, -- U64 * ipSystemStatsHCOutBcastPkts_val_ptr) -+ struct counter64 *ipSystemStatsHCOutBcastPkts_val_ptr) - { - /** we should have a non-NULL pointer */ - netsnmp_assert(NULL != ipSystemStatsHCOutBcastPkts_val_ptr); -diff --git a/agent/mibgroup/ip-mib/ipSystemStatsTable/ipSystemStatsTable.h b/agent/mibgroup/ip-mib/ipSystemStatsTable/ipSystemStatsTable.h -index ca1e1f3..5c3823e 100644 ---- a/agent/mibgroup/ip-mib/ipSystemStatsTable/ipSystemStatsTable.h -+++ b/agent/mibgroup/ip-mib/ipSystemStatsTable/ipSystemStatsTable.h -@@ -144,93 +144,22 @@ config_require(ip-mib/ipSystemStatsTable/ipSystemStatsTable_data_access) - ********************************************************************* - * function prototypes - */ -- int -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- ipSystemStatsTable_pre_request(ipSystemStatsTable_registration * -+ int ipSystemStatsTable_pre_request(ipSystemStatsTable_registration * - user_context); -- int -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- ipSystemStatsTable_post_request(ipSystemStatsTable_registration * -+ int ipSystemStatsTable_post_request(ipSystemStatsTable_registration * - user_context, int rc); - -- int -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- ipSystemStatsTable_rowreq_ctx_init(ipSystemStatsTable_rowreq_ctx * -+ int ipSystemStatsTable_rowreq_ctx_init(ipSystemStatsTable_rowreq_ctx * - rowreq_ctx, - void *user_init_ctx); - void -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- - ipSystemStatsTable_rowreq_ctx_cleanup(ipSystemStatsTable_rowreq_ctx - * rowreq_ctx); - - ipSystemStatsTable_data *ipSystemStatsTable_allocate_data(void); - void ipSystemStatsTable_release_data(ipSystemStatsTable_data - * data); -- -- -- -- -- -- -- -- -- ipSystemStatsTable_rowreq_ctx -+ ipSystemStatsTable_rowreq_ctx - * ipSystemStatsTable_row_find_by_mib_index - (ipSystemStatsTable_mib_index * mib_idx); - -@@ -265,226 +194,50 @@ config_require(ip-mib/ipSystemStatsTable/ipSystemStatsTable_data_access) - * indexes - */ - -- int -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- ipSystemStatsInReceives_get(ipSystemStatsTable_rowreq_ctx * -+ int ipSystemStatsInReceives_get(ipSystemStatsTable_rowreq_ctx * - rowreq_ctx, - u_long * - ipSystemStatsInReceives_val_ptr); -- int -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- ipSystemStatsHCInReceives_get(ipSystemStatsTable_rowreq_ctx * -+ int ipSystemStatsHCInReceives_get(ipSystemStatsTable_rowreq_ctx * - rowreq_ctx, -- U64 * -+ struct counter64 * - ipSystemStatsHCInReceives_val_ptr); - int ipSystemStatsInOctets_get(ipSystemStatsTable_rowreq_ctx - * rowreq_ctx, - u_long * - ipSystemStatsInOctets_val_ptr); -- int -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- ipSystemStatsHCInOctets_get(ipSystemStatsTable_rowreq_ctx * -+ int ipSystemStatsHCInOctets_get(ipSystemStatsTable_rowreq_ctx * - rowreq_ctx, -- U64 * ipSystemStatsHCInOctets_val_ptr); -- int -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- ipSystemStatsInHdrErrors_get(ipSystemStatsTable_rowreq_ctx * -+ struct counter64 *ipSystemStatsHCInOctets_val_ptr); -+ int ipSystemStatsInHdrErrors_get(ipSystemStatsTable_rowreq_ctx * - rowreq_ctx, - u_long * - ipSystemStatsInHdrErrors_val_ptr); -- int -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- ipSystemStatsInNoRoutes_get(ipSystemStatsTable_rowreq_ctx * -+ int ipSystemStatsInNoRoutes_get(ipSystemStatsTable_rowreq_ctx * - rowreq_ctx, - u_long * - ipSystemStatsInNoRoutes_val_ptr); -- int -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- ipSystemStatsInAddrErrors_get(ipSystemStatsTable_rowreq_ctx * -+ int ipSystemStatsInAddrErrors_get(ipSystemStatsTable_rowreq_ctx * - rowreq_ctx, - u_long * - ipSystemStatsInAddrErrors_val_ptr); -- int -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- ipSystemStatsInUnknownProtos_get(ipSystemStatsTable_rowreq_ctx * -+ int ipSystemStatsInUnknownProtos_get(ipSystemStatsTable_rowreq_ctx * - rowreq_ctx, - u_long * - ipSystemStatsInUnknownProtos_val_ptr); -- int -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- ipSystemStatsInTruncatedPkts_get(ipSystemStatsTable_rowreq_ctx * -+ int ipSystemStatsInTruncatedPkts_get(ipSystemStatsTable_rowreq_ctx * - rowreq_ctx, - u_long * - ipSystemStatsInTruncatedPkts_val_ptr); -- int -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- ipSystemStatsInForwDatagrams_get(ipSystemStatsTable_rowreq_ctx * -+ int ipSystemStatsInForwDatagrams_get(ipSystemStatsTable_rowreq_ctx * - rowreq_ctx, - u_long * - ipSystemStatsInForwDatagrams_val_ptr); -- int -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- ipSystemStatsHCInForwDatagrams_get(ipSystemStatsTable_rowreq_ctx * -+ int ipSystemStatsHCInForwDatagrams_get(ipSystemStatsTable_rowreq_ctx * - rowreq_ctx, -- U64 * -+ struct counter64 * - ipSystemStatsHCInForwDatagrams_val_ptr); -- int -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- ipSystemStatsReasmReqds_get(ipSystemStatsTable_rowreq_ctx * -+ int ipSystemStatsReasmReqds_get(ipSystemStatsTable_rowreq_ctx * - rowreq_ctx, - u_long * - ipSystemStatsReasmReqds_val_ptr); -@@ -492,690 +245,142 @@ config_require(ip-mib/ipSystemStatsTable/ipSystemStatsTable_data_access) - * rowreq_ctx, - u_long * - ipSystemStatsReasmOKs_val_ptr); -- int -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- ipSystemStatsReasmFails_get(ipSystemStatsTable_rowreq_ctx * -+ int ipSystemStatsReasmFails_get(ipSystemStatsTable_rowreq_ctx * - rowreq_ctx, - u_long * - ipSystemStatsReasmFails_val_ptr); -- int -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- ipSystemStatsInDiscards_get(ipSystemStatsTable_rowreq_ctx * -+ int ipSystemStatsInDiscards_get(ipSystemStatsTable_rowreq_ctx * - rowreq_ctx, - u_long * - ipSystemStatsInDiscards_val_ptr); -- int -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- ipSystemStatsInDelivers_get(ipSystemStatsTable_rowreq_ctx * -+ int ipSystemStatsInDelivers_get(ipSystemStatsTable_rowreq_ctx * - rowreq_ctx, - u_long * - ipSystemStatsInDelivers_val_ptr); -- int -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- ipSystemStatsHCInDelivers_get(ipSystemStatsTable_rowreq_ctx * -+ int ipSystemStatsHCInDelivers_get(ipSystemStatsTable_rowreq_ctx * - rowreq_ctx, -- U64 * -+ struct counter64 * - ipSystemStatsHCInDelivers_val_ptr); -- int -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- ipSystemStatsOutRequests_get(ipSystemStatsTable_rowreq_ctx * -+ int ipSystemStatsOutRequests_get(ipSystemStatsTable_rowreq_ctx * - rowreq_ctx, - u_long * - ipSystemStatsOutRequests_val_ptr); -- int -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- ipSystemStatsHCOutRequests_get(ipSystemStatsTable_rowreq_ctx * -+ int ipSystemStatsHCOutRequests_get(ipSystemStatsTable_rowreq_ctx * - rowreq_ctx, -- U64 * -+ struct counter64 * - ipSystemStatsHCOutRequests_val_ptr); -- int -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- ipSystemStatsOutNoRoutes_get(ipSystemStatsTable_rowreq_ctx * -+ int ipSystemStatsOutNoRoutes_get(ipSystemStatsTable_rowreq_ctx * - rowreq_ctx, - u_long * - ipSystemStatsOutNoRoutes_val_ptr); -- int -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- ipSystemStatsOutForwDatagrams_get(ipSystemStatsTable_rowreq_ctx * -+ int ipSystemStatsOutForwDatagrams_get(ipSystemStatsTable_rowreq_ctx * - rowreq_ctx, - u_long * - ipSystemStatsOutForwDatagrams_val_ptr); -- int -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- ipSystemStatsHCOutForwDatagrams_get(ipSystemStatsTable_rowreq_ctx * -+ int ipSystemStatsHCOutForwDatagrams_get(ipSystemStatsTable_rowreq_ctx * - rowreq_ctx, -- U64 * -+ struct counter64 * - ipSystemStatsHCOutForwDatagrams_val_ptr); -- int -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- ipSystemStatsOutDiscards_get(ipSystemStatsTable_rowreq_ctx * -+ int ipSystemStatsOutDiscards_get(ipSystemStatsTable_rowreq_ctx * - rowreq_ctx, - u_long * - ipSystemStatsOutDiscards_val_ptr); -- int -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- ipSystemStatsOutFragReqds_get(ipSystemStatsTable_rowreq_ctx * -+ int ipSystemStatsOutFragReqds_get(ipSystemStatsTable_rowreq_ctx * - rowreq_ctx, - u_long * - ipSystemStatsOutFragReqds_val_ptr); -- int -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- ipSystemStatsOutFragOKs_get(ipSystemStatsTable_rowreq_ctx * -+ int ipSystemStatsOutFragOKs_get(ipSystemStatsTable_rowreq_ctx * - rowreq_ctx, - u_long * - ipSystemStatsOutFragOKs_val_ptr); -- int -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- ipSystemStatsOutFragFails_get(ipSystemStatsTable_rowreq_ctx * -+ int ipSystemStatsOutFragFails_get(ipSystemStatsTable_rowreq_ctx * - rowreq_ctx, - u_long * - ipSystemStatsOutFragFails_val_ptr); -- int -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- ipSystemStatsOutFragCreates_get(ipSystemStatsTable_rowreq_ctx * -+ int ipSystemStatsOutFragCreates_get(ipSystemStatsTable_rowreq_ctx * - rowreq_ctx, - u_long * - ipSystemStatsOutFragCreates_val_ptr); -- int -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- ipSystemStatsOutTransmits_get(ipSystemStatsTable_rowreq_ctx * -+ int ipSystemStatsOutTransmits_get(ipSystemStatsTable_rowreq_ctx * - rowreq_ctx, - u_long * - ipSystemStatsOutTransmits_val_ptr); -- int -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- ipSystemStatsHCOutTransmits_get(ipSystemStatsTable_rowreq_ctx * -+ int ipSystemStatsHCOutTransmits_get(ipSystemStatsTable_rowreq_ctx * - rowreq_ctx, -- U64 * -+ struct counter64 * - ipSystemStatsHCOutTransmits_val_ptr); -- int -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- ipSystemStatsOutOctets_get(ipSystemStatsTable_rowreq_ctx * -+ int ipSystemStatsOutOctets_get(ipSystemStatsTable_rowreq_ctx * - rowreq_ctx, - u_long * - ipSystemStatsOutOctets_val_ptr); -- int -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- ipSystemStatsHCOutOctets_get(ipSystemStatsTable_rowreq_ctx * -+ int ipSystemStatsHCOutOctets_get(ipSystemStatsTable_rowreq_ctx * - rowreq_ctx, -- U64 * -+ struct counter64 * - ipSystemStatsHCOutOctets_val_ptr); -- int -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- ipSystemStatsInMcastPkts_get(ipSystemStatsTable_rowreq_ctx * -+ int ipSystemStatsInMcastPkts_get(ipSystemStatsTable_rowreq_ctx * - rowreq_ctx, - u_long * - ipSystemStatsInMcastPkts_val_ptr); -- int -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- ipSystemStatsHCInMcastPkts_get(ipSystemStatsTable_rowreq_ctx * -+ int ipSystemStatsHCInMcastPkts_get(ipSystemStatsTable_rowreq_ctx * - rowreq_ctx, -- U64 * -+ struct counter64 * - ipSystemStatsHCInMcastPkts_val_ptr); -- int -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- ipSystemStatsInMcastOctets_get(ipSystemStatsTable_rowreq_ctx * -+ int ipSystemStatsInMcastOctets_get(ipSystemStatsTable_rowreq_ctx * - rowreq_ctx, - u_long * - ipSystemStatsInMcastOctets_val_ptr); -- int -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- ipSystemStatsHCInMcastOctets_get(ipSystemStatsTable_rowreq_ctx * -+ int ipSystemStatsHCInMcastOctets_get(ipSystemStatsTable_rowreq_ctx * - rowreq_ctx, -- U64 * -+ struct counter64 * - ipSystemStatsHCInMcastOctets_val_ptr); -- int -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- ipSystemStatsOutMcastPkts_get(ipSystemStatsTable_rowreq_ctx * -+ int ipSystemStatsOutMcastPkts_get(ipSystemStatsTable_rowreq_ctx * - rowreq_ctx, - u_long * - ipSystemStatsOutMcastPkts_val_ptr); -- int -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- ipSystemStatsHCOutMcastPkts_get(ipSystemStatsTable_rowreq_ctx * -+ int ipSystemStatsHCOutMcastPkts_get(ipSystemStatsTable_rowreq_ctx * - rowreq_ctx, -- U64 * -+ struct counter64 * - ipSystemStatsHCOutMcastPkts_val_ptr); -- int -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- ipSystemStatsOutMcastOctets_get(ipSystemStatsTable_rowreq_ctx * -+ int ipSystemStatsOutMcastOctets_get(ipSystemStatsTable_rowreq_ctx * - rowreq_ctx, - u_long * - ipSystemStatsOutMcastOctets_val_ptr); -- int -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- ipSystemStatsHCOutMcastOctets_get(ipSystemStatsTable_rowreq_ctx * -+ int ipSystemStatsHCOutMcastOctets_get(ipSystemStatsTable_rowreq_ctx * - rowreq_ctx, -- U64 * -+ struct counter64 * - ipSystemStatsHCOutMcastOctets_val_ptr); -- int -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- ipSystemStatsInBcastPkts_get(ipSystemStatsTable_rowreq_ctx * -+ int ipSystemStatsInBcastPkts_get(ipSystemStatsTable_rowreq_ctx * - rowreq_ctx, - u_long * - ipSystemStatsInBcastPkts_val_ptr); -- int -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- ipSystemStatsHCInBcastPkts_get(ipSystemStatsTable_rowreq_ctx * -+ int ipSystemStatsHCInBcastPkts_get(ipSystemStatsTable_rowreq_ctx * - rowreq_ctx, -- U64 * -+ struct counter64 * - ipSystemStatsHCInBcastPkts_val_ptr); -- int -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- ipSystemStatsOutBcastPkts_get(ipSystemStatsTable_rowreq_ctx * -+ int ipSystemStatsOutBcastPkts_get(ipSystemStatsTable_rowreq_ctx * - rowreq_ctx, - u_long * - ipSystemStatsOutBcastPkts_val_ptr); -- int -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- ipSystemStatsHCOutBcastPkts_get(ipSystemStatsTable_rowreq_ctx * -+ int ipSystemStatsHCOutBcastPkts_get(ipSystemStatsTable_rowreq_ctx * - rowreq_ctx, -- U64 * -+ struct counter64 * - ipSystemStatsHCOutBcastPkts_val_ptr); -- int -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- ipSystemStatsDiscontinuityTime_get(ipSystemStatsTable_rowreq_ctx * -+ int ipSystemStatsDiscontinuityTime_get(ipSystemStatsTable_rowreq_ctx * - rowreq_ctx, - u_long * - ipSystemStatsDiscontinuityTime_val_ptr); -- int -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- ipSystemStatsRefreshRate_get(ipSystemStatsTable_rowreq_ctx * -+ int ipSystemStatsRefreshRate_get(ipSystemStatsTable_rowreq_ctx * - rowreq_ctx, - u_long * - ipSystemStatsRefreshRate_val_ptr); -- -- -- int -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- ipSystemStatsTable_indexes_set_tbl_idx(ipSystemStatsTable_mib_index -+ int ipSystemStatsTable_indexes_set_tbl_idx(ipSystemStatsTable_mib_index - * tbl_idx, - u_long - ipSystemStatsIPVersion_val); -- int -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- ipSystemStatsTable_indexes_set(ipSystemStatsTable_rowreq_ctx * -+ int ipSystemStatsTable_indexes_set(ipSystemStatsTable_rowreq_ctx * - rowreq_ctx, - u_long ipSystemStatsIPVersion_val); - -- -- - /* - ********************************************************************* - * SET function declarations -diff --git a/agent/mibgroup/ip-mib/ipSystemStatsTable/ipSystemStatsTable_interface.c b/agent/mibgroup/ip-mib/ipSystemStatsTable/ipSystemStatsTable_interface.c -index e1ca2cb..09c061f 100644 ---- a/agent/mibgroup/ip-mib/ipSystemStatsTable/ipSystemStatsTable_interface.c -+++ b/agent/mibgroup/ip-mib/ipSystemStatsTable/ipSystemStatsTable_interface.c -@@ -674,10 +674,10 @@ _ipSystemStatsTable_get_column(ipSystemStatsTable_rowreq_ctx * rowreq_ctx, - * ipSystemStatsHCInReceives(4)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h - */ - case COLUMN_IPSYSTEMSTATSHCINRECEIVES: -- var->val_len = sizeof(U64); -+ var->val_len = sizeof(struct counter64); - var->type = ASN_COUNTER64; - rc = ipSystemStatsHCInReceives_get(rowreq_ctx, -- (U64 *) var->val.string); -+ (struct counter64 *) var->val.string); - break; - - /* -@@ -694,10 +694,10 @@ _ipSystemStatsTable_get_column(ipSystemStatsTable_rowreq_ctx * rowreq_ctx, - * ipSystemStatsHCInOctets(6)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h - */ - case COLUMN_IPSYSTEMSTATSHCINOCTETS: -- var->val_len = sizeof(U64); -+ var->val_len = sizeof(struct counter64); - var->type = ASN_COUNTER64; - rc = ipSystemStatsHCInOctets_get(rowreq_ctx, -- (U64 *) var->val.string); -+ (struct counter64 *) var->val.string); - break; - - /* -@@ -764,10 +764,10 @@ _ipSystemStatsTable_get_column(ipSystemStatsTable_rowreq_ctx * rowreq_ctx, - * ipSystemStatsHCInForwDatagrams(13)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h - */ - case COLUMN_IPSYSTEMSTATSHCINFORWDATAGRAMS: -- var->val_len = sizeof(U64); -+ var->val_len = sizeof(struct counter64); - var->type = ASN_COUNTER64; - rc = ipSystemStatsHCInForwDatagrams_get(rowreq_ctx, -- (U64 *) var->val.string); -+ (struct counter64 *) var->val.string); - break; - - /* -@@ -824,10 +824,10 @@ _ipSystemStatsTable_get_column(ipSystemStatsTable_rowreq_ctx * rowreq_ctx, - * ipSystemStatsHCInDelivers(19)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h - */ - case COLUMN_IPSYSTEMSTATSHCINDELIVERS: -- var->val_len = sizeof(U64); -+ var->val_len = sizeof(struct counter64); - var->type = ASN_COUNTER64; - rc = ipSystemStatsHCInDelivers_get(rowreq_ctx, -- (U64 *) var->val.string); -+ (struct counter64 *) var->val.string); - break; - - /* -@@ -844,10 +844,10 @@ _ipSystemStatsTable_get_column(ipSystemStatsTable_rowreq_ctx * rowreq_ctx, - * ipSystemStatsHCOutRequests(21)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h - */ - case COLUMN_IPSYSTEMSTATSHCOUTREQUESTS: -- var->val_len = sizeof(U64); -+ var->val_len = sizeof(struct counter64); - var->type = ASN_COUNTER64; - rc = ipSystemStatsHCOutRequests_get(rowreq_ctx, -- (U64 *) var->val.string); -+ (struct counter64 *) var->val.string); - break; - - /* -@@ -874,10 +874,10 @@ _ipSystemStatsTable_get_column(ipSystemStatsTable_rowreq_ctx * rowreq_ctx, - * ipSystemStatsHCOutForwDatagrams(24)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h - */ - case COLUMN_IPSYSTEMSTATSHCOUTFORWDATAGRAMS: -- var->val_len = sizeof(U64); -+ var->val_len = sizeof(struct counter64); - var->type = ASN_COUNTER64; - rc = ipSystemStatsHCOutForwDatagrams_get(rowreq_ctx, -- (U64 *) var->val.string); -+ (struct counter64 *) var->val.string); - break; - - /* -@@ -944,10 +944,10 @@ _ipSystemStatsTable_get_column(ipSystemStatsTable_rowreq_ctx * rowreq_ctx, - * ipSystemStatsHCOutTransmits(31)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h - */ - case COLUMN_IPSYSTEMSTATSHCOUTTRANSMITS: -- var->val_len = sizeof(U64); -+ var->val_len = sizeof(struct counter64); - var->type = ASN_COUNTER64; - rc = ipSystemStatsHCOutTransmits_get(rowreq_ctx, -- (U64 *) var->val.string); -+ (struct counter64 *) var->val.string); - break; - - /* -@@ -964,10 +964,10 @@ _ipSystemStatsTable_get_column(ipSystemStatsTable_rowreq_ctx * rowreq_ctx, - * ipSystemStatsHCOutOctets(33)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h - */ - case COLUMN_IPSYSTEMSTATSHCOUTOCTETS: -- var->val_len = sizeof(U64); -+ var->val_len = sizeof(struct counter64); - var->type = ASN_COUNTER64; - rc = ipSystemStatsHCOutOctets_get(rowreq_ctx, -- (U64 *) var->val.string); -+ (struct counter64 *) var->val.string); - break; - - /* -@@ -984,10 +984,10 @@ _ipSystemStatsTable_get_column(ipSystemStatsTable_rowreq_ctx * rowreq_ctx, - * ipSystemStatsHCInMcastPkts(35)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h - */ - case COLUMN_IPSYSTEMSTATSHCINMCASTPKTS: -- var->val_len = sizeof(U64); -+ var->val_len = sizeof(struct counter64); - var->type = ASN_COUNTER64; - rc = ipSystemStatsHCInMcastPkts_get(rowreq_ctx, -- (U64 *) var->val.string); -+ (struct counter64 *) var->val.string); - break; - - /* -@@ -1004,10 +1004,10 @@ _ipSystemStatsTable_get_column(ipSystemStatsTable_rowreq_ctx * rowreq_ctx, - * ipSystemStatsHCInMcastOctets(37)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h - */ - case COLUMN_IPSYSTEMSTATSHCINMCASTOCTETS: -- var->val_len = sizeof(U64); -+ var->val_len = sizeof(struct counter64); - var->type = ASN_COUNTER64; - rc = ipSystemStatsHCInMcastOctets_get(rowreq_ctx, -- (U64 *) var->val.string); -+ (struct counter64 *) var->val.string); - break; - - /* -@@ -1024,10 +1024,10 @@ _ipSystemStatsTable_get_column(ipSystemStatsTable_rowreq_ctx * rowreq_ctx, - * ipSystemStatsHCOutMcastPkts(39)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h - */ - case COLUMN_IPSYSTEMSTATSHCOUTMCASTPKTS: -- var->val_len = sizeof(U64); -+ var->val_len = sizeof(struct counter64); - var->type = ASN_COUNTER64; - rc = ipSystemStatsHCOutMcastPkts_get(rowreq_ctx, -- (U64 *) var->val.string); -+ (struct counter64 *) var->val.string); - break; - - /* -@@ -1044,10 +1044,10 @@ _ipSystemStatsTable_get_column(ipSystemStatsTable_rowreq_ctx * rowreq_ctx, - * ipSystemStatsHCOutMcastOctets(41)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h - */ - case COLUMN_IPSYSTEMSTATSHCOUTMCASTOCTETS: -- var->val_len = sizeof(U64); -+ var->val_len = sizeof(struct counter64); - var->type = ASN_COUNTER64; - rc = ipSystemStatsHCOutMcastOctets_get(rowreq_ctx, -- (U64 *) var->val.string); -+ (struct counter64 *) var->val.string); - break; - - /* -@@ -1064,10 +1064,10 @@ _ipSystemStatsTable_get_column(ipSystemStatsTable_rowreq_ctx * rowreq_ctx, - * ipSystemStatsHCInBcastPkts(43)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h - */ - case COLUMN_IPSYSTEMSTATSHCINBCASTPKTS: -- var->val_len = sizeof(U64); -+ var->val_len = sizeof(struct counter64); - var->type = ASN_COUNTER64; - rc = ipSystemStatsHCInBcastPkts_get(rowreq_ctx, -- (U64 *) var->val.string); -+ (struct counter64 *) var->val.string); - break; - - /* -@@ -1084,10 +1084,10 @@ _ipSystemStatsTable_get_column(ipSystemStatsTable_rowreq_ctx * rowreq_ctx, - * ipSystemStatsHCOutBcastPkts(45)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h - */ - case COLUMN_IPSYSTEMSTATSHCOUTBCASTPKTS: -- var->val_len = sizeof(U64); -+ var->val_len = sizeof(struct counter64); - var->type = ASN_COUNTER64; - rc = ipSystemStatsHCOutBcastPkts_get(rowreq_ctx, -- (U64 *) var->val.string); -+ (struct counter64 *) var->val.string); - break; - - /* -diff --git a/include/net-snmp/data_access/ipstats.h b/include/net-snmp/data_access/ipstats.h -index f782459..f0df46b 100644 ---- a/include/net-snmp/data_access/ipstats.h -+++ b/include/net-snmp/data_access/ipstats.h -@@ -58,45 +58,45 @@ typedef struct netsnmp_ipstats_s { - * other columns, when underlying OS does not provide them. - * Always fill at least 32 bits, the table is periodically polled -> 32 bit - * overflow shall be detected and 64 bit value should be computed automatically. */ -- U64 HCInReceives; -- U64 HCInOctets; -+ struct counter64 HCInReceives; -+ struct counter64 HCInOctets; - u_long InHdrErrors; -- U64 HCInNoRoutes; -+ struct counter64 HCInNoRoutes; - u_long InAddrErrors; - u_long InUnknownProtos; - u_long InTruncatedPkts; - - /* optional, can be computed from HCInNoRoutes and HCOutForwDatagrams */ -- U64 HCInForwDatagrams; -+ struct counter64 HCInForwDatagrams; - - u_long ReasmReqds; - u_long ReasmOKs; - u_long ReasmFails; - u_long InDiscards; -- U64 HCInDelivers; -- U64 HCOutRequests; -- U64 HCOutNoRoutes; -- U64 HCOutForwDatagrams; -- U64 HCOutDiscards; -+ struct counter64 HCInDelivers; -+ struct counter64 HCOutRequests; -+ struct counter64 HCOutNoRoutes; -+ struct counter64 HCOutForwDatagrams; -+ struct counter64 HCOutDiscards; - - /* optional, can be computed from HCOutFragOKs + HCOutFragFails*/ -- U64 HCOutFragReqds; -- U64 HCOutFragOKs; -- U64 HCOutFragFails; -- U64 HCOutFragCreates; -+ struct counter64 HCOutFragReqds; -+ struct counter64 HCOutFragOKs; -+ struct counter64 HCOutFragFails; -+ struct counter64 HCOutFragCreates; - - /* optional, can be computed from - * HCOutRequests +HCOutForwDatagrams + HCOutFragCreates - * - HCOutFragReqds - HCOutNoRoutes - HCOutDiscards */ -- U64 HCOutTransmits; -+ struct counter64 HCOutTransmits; - -- U64 HCOutOctets; -- U64 HCInMcastPkts; -- U64 HCInMcastOctets; -- U64 HCOutMcastPkts; -- U64 HCOutMcastOctets; -- U64 HCInBcastPkts; -- U64 HCOutBcastPkts; -+ struct counter64 HCOutOctets; -+ struct counter64 HCInMcastPkts; -+ struct counter64 HCInMcastOctets; -+ struct counter64 HCOutMcastPkts; -+ struct counter64 HCOutMcastOctets; -+ struct counter64 HCInBcastPkts; -+ struct counter64 HCOutBcastPkts; - - /* Array of available columns.*/ - int columnAvail[IPSYSTEMSTATSTABLE_LAST+1]; -diff --git a/include/net-snmp/library/int64.h b/include/net-snmp/library/int64.h -index 9c7c894..3a85213 100644 ---- a/include/net-snmp/library/int64.h -+++ b/include/net-snmp/library/int64.h -@@ -5,31 +5,29 @@ - extern "C" { - #endif - -- typedef struct counter64 U64; -- - #define I64CHARSZ 21 - -- void divBy10(U64, U64 *, unsigned int *); -- void multBy10(U64, U64 *); -- void incrByU16(U64 *, unsigned int); -- void incrByU32(U64 *, unsigned int); -+ void divBy10(struct counter64, struct counter64 *, unsigned int *); -+ void multBy10(struct counter64, struct counter64 *); -+ void incrByU16(struct counter64 *, unsigned int); -+ void incrByU32(struct counter64 *, unsigned int); - NETSNMP_IMPORT -- void zeroU64(U64 *); -- int isZeroU64(const U64 *); -+ void zeroU64(struct counter64 *); -+ int isZeroU64(const struct counter64 *); - NETSNMP_IMPORT -- void printU64(char *, const U64 *); -+ void printU64(char *, const struct counter64 *); - NETSNMP_IMPORT -- void printI64(char *, const U64 *); -- int read64(U64 *, const char *); -+ void printI64(char *, const struct counter64 *); -+ int read64(struct counter64 *, const char *); - NETSNMP_IMPORT -- void u64Subtract(const U64 * pu64one, const U64 * pu64two, -- U64 * pu64out); -- void u64Incr(U64 * pu64out, const U64 * pu64one); -- void u64UpdateCounter(U64 * pu64out, const U64 * pu64one, -- const U64 * pu64two); -- void u64Copy(U64 * pu64one, const U64 * pu64two); -+ void u64Subtract(const struct counter64 *pu64one, const struct counter64 *pu64two, -+ struct counter64 *pu64out); -+ void u64Incr(struct counter64 *pu64out, const struct counter64 *pu64one); -+ void u64UpdateCounter(struct counter64 *pu64out, const struct counter64 *pu64one, -+ const struct counter64 *pu64two); -+ void u64Copy(struct counter64 *pu64one, const struct counter64 *pu64two); - -- int netsnmp_c64_check_for_32bit_wrap(U64 *old_val, U64 *new_val, -+ int netsnmp_c64_check_for_32bit_wrap(struct counter64 *old_val, struct counter64 *new_val, - int adjust); - NETSNMP_IMPORT - int netsnmp_c64_check32_and_update(struct counter64 *prev_val, -diff --git a/snmplib/int64.c b/snmplib/int64.c -index 51f1f32..951f813 100644 ---- a/snmplib/int64.c -+++ b/snmplib/int64.c -@@ -33,7 +33,7 @@ - * @param[out] puR Remainder. - */ - void --divBy10(U64 u64, U64 * pu64Q, unsigned int *puR) -+divBy10(struct counter64 u64, struct counter64 *pu64Q, unsigned int *puR) - { - unsigned long ulT; - unsigned long ulQ; -@@ -83,7 +83,7 @@ divBy10(U64 u64, U64 * pu64Q, unsigned int *puR) - * @param[out] pu64P Product. - */ - void --multBy10(U64 u64, U64 * pu64P) -+multBy10(struct counter64 u64, struct counter64 *pu64P) - { - unsigned long ulT; - unsigned long ulP; -@@ -130,7 +130,7 @@ multBy10(U64 u64, U64 * pu64P) - * - */ - void --incrByU16(U64 * pu64, unsigned int u16) -+incrByU16(struct counter64 *pu64, unsigned int u16) - { - incrByU32(pu64, u16); - } -@@ -143,7 +143,7 @@ incrByU16(U64 * pu64, unsigned int u16) - * - */ - void --incrByU32(U64 * pu64, unsigned int u32) -+incrByU32(struct counter64 *pu64, unsigned int u32) - { - uint32_t tmp; - -@@ -161,7 +161,7 @@ incrByU32(U64 * pu64, unsigned int u32) - * @param[out] pu64out pu64one - pu64two. - */ - void --u64Subtract(const U64 * pu64one, const U64 * pu64two, U64 * pu64out) -+u64Subtract(const struct counter64 *pu64one, const struct counter64 *pu64two, struct counter64 *pu64out) - { - int carry; - -@@ -177,7 +177,7 @@ u64Subtract(const U64 * pu64one, const U64 * pu64two, U64 * pu64out) - * @param[in,out] pu64out pu64out += pu64one. - */ - void --u64Incr(U64 * pu64out, const U64 * pu64one) -+u64Incr(struct counter64 *pu64out, const struct counter64 *pu64one) - { - pu64out->high = (uint32_t)(pu64out->high + pu64one->high); - incrByU32(pu64out, pu64one->low); -@@ -191,9 +191,9 @@ u64Incr(U64 * pu64out, const U64 * pu64one) - * @param[out] pu64out pu64out += (pu64one - pu64two) - */ - void --u64UpdateCounter(U64 * pu64out, const U64 * pu64one, const U64 * pu64two) -+u64UpdateCounter(struct counter64 *pu64out, const struct counter64 *pu64one, const struct counter64 *pu64two) - { -- U64 tmp; -+ struct counter64 tmp; - - u64Subtract(pu64one, pu64two, &tmp); - u64Incr(pu64out, &tmp); -@@ -208,7 +208,7 @@ netsnmp_feature_child_of(u64copy, netsnmp_unused) - * @param[out] pu64one Where to store the copy - *pu64one = *pu64two. - */ - void --u64Copy(U64 * pu64one, const U64 * pu64two) -+u64Copy(struct counter64 *pu64one, const struct counter64 *pu64two) - { - *pu64one = *pu64two; - } -@@ -220,7 +220,7 @@ u64Copy(U64 * pu64one, const U64 * pu64two) - * @param[in] pu64 Number to be zeroed. - */ - void --zeroU64(U64 * pu64) -+zeroU64(struct counter64 *pu64) - { - pu64->low = 0; - pu64->high = 0; -@@ -232,7 +232,7 @@ zeroU64(U64 * pu64) - * @param[in] pu64 Number to be checked. - */ - int --isZeroU64(const U64 * pu64) -+isZeroU64(const struct counter64 *pu64) - { - return pu64->low == 0 && pu64->high == 0; - } -@@ -390,10 +390,10 @@ netsnmp_c64_check32_and_update(struct counter64 *prev_val, struct counter64 *new - /** Convert an unsigned 64-bit number to ASCII. */ - void - printU64(char *buf, /* char [I64CHARSZ+1]; */ -- const U64 * pu64) -+ const struct counter64 *pu64) - { -- U64 u64a; -- U64 u64b; -+ struct counter64 u64a; -+ struct counter64 u64b; - - char aRes[I64CHARSZ + 1]; - unsigned int u; -@@ -414,9 +414,9 @@ printU64(char *buf, /* char [I64CHARSZ+1]; */ - /** Convert a signed 64-bit number to ASCII. */ - void - printI64(char *buf, /* char [I64CHARSZ+1]; */ -- const U64 * pu64) -+ const struct counter64 *pu64) - { -- U64 u64a; -+ struct counter64 u64a; - - if (pu64->high & 0x80000000) { - u64a.high = (uint32_t) ~pu64->high; -@@ -429,11 +429,11 @@ printI64(char *buf, /* char [I64CHARSZ+1]; */ - } - } - --/** Convert a signed 64-bit integer from ASCII to U64. */ -+/** Convert a signed 64-bit integer from ASCII to struct counter64. */ - int --read64(U64 * i64, const char *str) -+read64(struct counter64 *i64, const char *str) - { -- U64 i64p; -+ struct counter64 i64p; - unsigned int u; - int sign = 0; - int ok = 0; -diff --git a/snmplib/read_config.c b/snmplib/read_config.c -index e159c27..ab5b6a3 100644 ---- a/snmplib/read_config.c -+++ b/snmplib/read_config.c -@@ -2279,10 +2279,10 @@ read_config_read_memory(int type, char *readfrom, - return readfrom; - - case ASN_COUNTER64: -- if (*len < sizeof(U64)) -+ if (*len < sizeof(struct counter64)) - return NULL; -- *len = sizeof(U64); -- read64((U64 *) dataptr, readfrom); -+ *len = sizeof(struct counter64); -+ read64((struct counter64 *) dataptr, readfrom); - readfrom = skip_token(readfrom); - return readfrom; - } -diff --git a/testing/fulltests/unit-tests/T015int64_clib.c b/testing/fulltests/unit-tests/T015int64_clib.c -index 5f5f4b6..66f66b7 100644 ---- a/testing/fulltests/unit-tests/T015int64_clib.c -+++ b/testing/fulltests/unit-tests/T015int64_clib.c -@@ -1,4 +1,4 @@ --/* HEADER Testing 64-bit integer operations (U64). */ -+/* HEADER Testing 64-bit integer operations (struct counter64). */ - - int i, j; - char buf[22]; -@@ -15,7 +15,7 @@ static const int64_t intval[] = { - }; - - for (i = 0; i < sizeof(intval)/sizeof(intval[0]); ++i) { -- U64 a, b; -+ struct counter64 a, b; - a.low = (uint32_t)intval[i]; - a.high = (uint32_t)(intval[i] >> 32); - printI64(buf, &a); -@@ -27,7 +27,7 @@ for (i = 0; i < sizeof(intval)/sizeof(intval[0]); ++i) { - - for (i = 0; i < sizeof(intval)/sizeof(intval[0]); ++i) { - for (j = i; j < sizeof(intval)/sizeof(intval[0]); ++j) { -- U64 a, b; -+ struct counter64 a, b; - uint64_t d; - a.low = (uint32_t)intval[i]; - a.high = (uint32_t)(intval[i] >> 32); -@@ -43,7 +43,7 @@ for (i = 0; i < sizeof(intval)/sizeof(intval[0]); ++i) { - - for (i = 0; i < sizeof(intval)/sizeof(intval[0]); ++i) { - for (j = i; j < sizeof(intval)/sizeof(intval[0]); ++j) { -- U64 a, b, c; -+ struct counter64 a, b, c; - uint64_t d; - a.low = (uint32_t)intval[i]; - a.high = (uint32_t)(intval[i] >> 32); -@@ -58,7 +58,7 @@ for (i = 0; i < sizeof(intval)/sizeof(intval[0]); ++i) { - } - - { -- U64 old_val, new_val; -+ struct counter64 old_val, new_val; - old_val.low = 7; - old_val.high = 0; - new_val = old_val; --- -2.8.1 - diff --git a/user/netifrc/APKBUILD b/user/netifrc/APKBUILD index 78eb4ed26..da1ef7d28 100644 --- a/user/netifrc/APKBUILD +++ b/user/netifrc/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=netifrc -pkgver=0.6.0 +pkgver=0.6.1 pkgrel=0 pkgdesc="User-friendly network interface management scripts for OpenRC" url="https://www.gentoo.org/proj/en/base/openrc/" @@ -10,21 +10,20 @@ options="!check" # No test suite. license="BSD-2-Clause" depends="eudev openrc" makedepends="eudev-dev pkgconf" -install="" subpackages="$pkgname-doc $pkgname-openrc" -source="https://dev.gentoo.org/~robbat2/distfiles/netifrc-$pkgver.tar.bz2" +source="https://gitweb.gentoo.org/proj/$pkgname.git/snapshot/$pkgname-$pkgver.tar.gz" build() { cd "$builddir" - make LIBEXECDIR=/lib/$pkgname PF="$pkgname-$pkgver" + make UDEVDIR=/lib/udev LIBEXECDIR=/lib/$pkgname PF="$pkgname-$pkgver" } package() { cd "$builddir" - make LIBEXECDIR=/lib/$pkgname DESTDIR="$pkgdir" install - for doc in README CREDITS TODO ChangeLog; do + make UDEVDIR=/lib/udev LIBEXECDIR=/lib/$pkgname DESTDIR="$pkgdir" install + for doc in README CREDITS TODO; do install -m 644 "$builddir"/$doc "$pkgdir"/usr/share/doc/$pkgname/ done } -sha512sums="de47d146619bd716a0eda8149063691d9d71a895579ac50d3fea60bf0e48c516d6b37aed81c33083dc6e7d4bb74841bb6b143c23972669de9d76b8f7df7a5d23 netifrc-0.6.0.tar.bz2" +sha512sums="798a882f87f153c31b415d77a06a2beca94a958ea982aca20bbc2cf6a7d800aedbd99a577734ea41d6a75807b13d640dd7fa5a51aa5a27055e9c552634ac7bdb netifrc-0.6.1.tar.gz" diff --git a/user/nextcloud-client/APKBUILD b/user/nextcloud-client/APKBUILD new file mode 100644 index 000000000..549383413 --- /dev/null +++ b/user/nextcloud-client/APKBUILD @@ -0,0 +1,46 @@ +# Contributor: Leonardo Arena <rnalrd@alpinelinux.org> +# Maintainer: Max Rees <maxcrees@me.com> +pkgname=nextcloud-client +pkgver=2.5.0_beta2 +_ver="${pkgver%_beta2}-beta2" +pkgrel=0 +pkgdesc="Nextcloud desktop client" +url="https://github.com/nextcloud/desktop" +arch="all" +options="!checkroot" +license="GPL-2.0+ AND LGPL-2.1+ AND Public-Domain AND MIT AND (Custom:Digia-Qt OR LGPL-2.1-only WITH Qt-LGPL-exception-1.1) AND (Custom:Digia-Qt OR LGPL-2.1-only WITH Qt-LGPL-exception-1.1 OR GPL-3.0-only)" +depends="" +makedepends="cmake qt5-qttools-dev qtkeychain-dev zlib-dev + openssl-dev sqlite-dev qt5-qtsvg-dev" +subpackages="$pkgname-dev" +source="$pkgname-$pkgver.tar.gz::https://github.com/nextcloud/desktop/archive/v$_ver.tar.gz + no-webengine.patch + openssl.patch" +builddir="$srcdir/desktop-$_ver" + +build() { + cd "$builddir" + cmake \ + -DCMAKE_BUILD_TYPE=RelWithDebInfo \ + -DCMAKE_INSTALL_LIBDIR=lib \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DCMAKE_INSTALL_SYSCONFDIR="/etc/$pkgname" \ + -DNO_SHIBBOLETH=1 \ + -DWITH_CRASHREPORTER=bool:OFF \ + -DUNIT_TESTING=bool:ON + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install +} + +sha512sums="ed5ec8c0fd79d3f7f843ef1aefb9b94088b85dacca442388bc9a42e1ddbf1ee90482595135ffaffc85e40d223406964c903949ca1c2161fa0f6a2d6770a77cea nextcloud-client-2.5.0_beta2.tar.gz +6bd83fdee02eabe7ae29fb1a677f62d4a416ec553a0f8c66b7544cafb9201dd7d8b04dc6fb21f447f6c1ece13b06f5d3cba57ac71b211e166607ef15350b3e57 no-webengine.patch +e323a1074f8ac96667a420f076fdfc988e2fd97cdacd05d83ac54b467b567f5adbf635e7c4fb0414af0012b4016cc4c13441cb35ed3976bc970e514e81b65fd4 openssl.patch" diff --git a/user/nextcloud-client/no-webengine.patch b/user/nextcloud-client/no-webengine.patch new file mode 100644 index 000000000..d5beed35c --- /dev/null +++ b/user/nextcloud-client/no-webengine.patch @@ -0,0 +1,1017 @@ +--- desktop-2.5.0-beta1/src/libsync/networkjobs.cpp 2018-08-02 16:32:56.000000000 -0400 ++++ desktop-2.5.0-beta1/src/libsync/networkjobs.cpp 2018-08-15 19:10:43.340595365 -0400 +@@ -922,7 +922,7 @@ + + // WebViewFlow > OAuth > Shib > Basic + if (_account->serverVersionInt() >= Account::makeServerVersion(12, 0, 0)) { +- result = WebViewFlow; ++ result = Basic; + } + + qCInfo(lcDetermineAuthTypeJob) << "Auth type for" << _account->davUrl() << "is" << result; +--- desktop-2.5.0-beta1/src/gui/creds/webflowcredentialsdialog.cpp 2018-08-02 16:32:56.000000000 -0400 ++++ /dev/null 2018-08-15 19:12:03.420596798 -0400 +@@ -1,49 +0,0 @@ +-#include "webflowcredentialsdialog.h" +- +-#include <QVBoxLayout> +-#include <QLabel> +- +-#include "wizard/webview.h" +- +-namespace OCC { +- +-WebFlowCredentialsDialog::WebFlowCredentialsDialog(QWidget *parent) +- : QDialog(parent) +-{ +- _layout = new QVBoxLayout(this); +- +- //QString msg = tr("You have been logged out of %1 as user %2, please login again") +- // .arg(_account->displayName(), _user); +- _infoLabel = new QLabel(); +- _layout->addWidget(_infoLabel); +- +- _webView = new WebView(); +- _layout->addWidget(_webView); +- +- _errorLabel = new QLabel(); +- _errorLabel->hide(); +- _layout->addWidget(_errorLabel); +- +- setLayout(_layout); +- +- connect(_webView, &WebView::urlCatched, this, &WebFlowCredentialsDialog::urlCatched); +-} +- +-void WebFlowCredentialsDialog::setUrl(const QUrl &url) { +- _webView->setUrl(url); +-} +- +-void WebFlowCredentialsDialog::setInfo(const QString &msg) { +- _infoLabel->setText(msg); +-} +- +-void WebFlowCredentialsDialog::setError(const QString &error) { +- if (error.isEmpty()) { +- _errorLabel->hide(); +- } else { +- _errorLabel->setText(error); +- _errorLabel->show(); +- } +-} +- +-} +--- desktop-2.5.0-beta1/src/gui/creds/webflowcredentials.cpp 2018-08-02 16:32:56.000000000 -0400 ++++ /dev/null 2018-08-15 19:12:03.420596798 -0400 +@@ -1,258 +0,0 @@ +-#include "webflowcredentials.h" +- +-#include "creds/httpcredentials.h" +- +-#include <QAuthenticator> +-#include <QNetworkAccessManager> +-#include <QNetworkReply> +-#include <QPointer> +-#include <QTimer> +-#include <keychain.h> +-#include <QDialog> +-#include <QVBoxLayout> +-#include <QLabel> +- +-#include "accessmanager.h" +-#include "account.h" +-#include "theme.h" +-#include "wizard/webview.h" +-#include "webflowcredentialsdialog.h" +- +-using namespace QKeychain; +- +-namespace OCC { +- +-Q_LOGGING_CATEGORY(lcWebFlowCredentials, "sync.credentials.webflow", QtInfoMsg) +- +-WebFlowCredentials::WebFlowCredentials() +- : _ready(false), +- _credentialsValid(false) +-{ +- +-} +- +-WebFlowCredentials::WebFlowCredentials(const QString &user, const QString &password, const QSslCertificate &certificate, const QSslKey &key) +- : _user(user) +- , _password(password) +- , _clientSslKey(key) +- , _clientSslCertificate(certificate) +- , _ready(true) +- , _credentialsValid(true) +-{ +- +-} +- +-QString WebFlowCredentials::authType() const { +- return QString::fromLatin1("webflow"); +-} +- +-QString WebFlowCredentials::user() const { +- return _user; +-} +- +-QString WebFlowCredentials::password() const { +- return _password; +-} +- +-QNetworkAccessManager *WebFlowCredentials::createQNAM() const { +- qCInfo(lcWebFlowCredentials()) << "Get QNAM"; +- AccessManager *qnam = new AccessManager(); +- +- connect(qnam, &AccessManager::authenticationRequired, this, &WebFlowCredentials::slotAuthentication); +- connect(qnam, &AccessManager::finished, this, &WebFlowCredentials::slotFinished); +- +- return qnam; +-} +- +-bool WebFlowCredentials::ready() const { +- return _ready; +-} +- +-void WebFlowCredentials::fetchFromKeychain() { +- _wasFetched = true; +- +- // Make sure we get the user fromt he config file +- fetchUser(); +- +- if (ready()) { +- emit fetched(); +- } else { +- qCInfo(lcWebFlowCredentials()) << "Fetch from keyhchain!"; +- fetchFromKeychainHelper(); +- } +-} +- +-void WebFlowCredentials::askFromUser() { +- _askDialog = new WebFlowCredentialsDialog(); +- +- QUrl url = _account->url(); +- QString path = url.path() + "/index.php/login/flow"; +- url.setPath(path); +- _askDialog->setUrl(url); +- +- QString msg = tr("You have been logged out of %1 as user %2. Please login again") +- .arg(_account->displayName(), _user); +- _askDialog->setInfo(msg); +- +- _askDialog->show(); +- +- connect(_askDialog, &WebFlowCredentialsDialog::urlCatched, this, &WebFlowCredentials::slotAskFromUserCredentialsProvided); +- +- qCWarning(lcWebFlowCredentials()) << "User needs to reauth!"; +-} +- +-void WebFlowCredentials::slotAskFromUserCredentialsProvided(const QString &user, const QString &pass, const QString &host) { +- Q_UNUSED(host); +- +- if (_user != user) { +- qCInfo(lcWebFlowCredentials()) << "Authed with the wrong user!"; +- +- QString msg = tr("Please login with the user: %1") +- .arg(_user); +- _askDialog->setError(msg); +- +- QUrl url = _account->url(); +- QString path = url.path() + "/index.php/login/flow"; +- url.setPath(path); +- _askDialog->setUrl(url); +- +- return; +- } +- +- qCInfo(lcWebFlowCredentials()) << "Obtained a new password"; +- +- _password = pass; +- _ready = true; +- _credentialsValid = true; +- persist(); +- emit asked(); +- +- _askDialog->close(); +- delete _askDialog; +- _askDialog = NULL; +-} +- +- +-bool WebFlowCredentials::stillValid(QNetworkReply *reply) { +- qCWarning(lcWebFlowCredentials()) << "Still valid?"; +- qCWarning(lcWebFlowCredentials()) << reply->error(); +- qCWarning(lcWebFlowCredentials()) << reply->errorString(); +- return (reply->error() != QNetworkReply::AuthenticationRequiredError); +-} +- +-void WebFlowCredentials::persist() { +- if (_user.isEmpty()) { +- // We don't even have a user nothing to see here move along +- return; +- } +- +- _account->setCredentialSetting("user", _user); +- _account->wantsAccountSaved(_account); +- +- //TODO: Add ssl cert and key storing +- WritePasswordJob *job = new WritePasswordJob(Theme::instance()->appName()); +- job->setInsecureFallback(false); +- job->setKey(keychainKey(_account->url().toString(), _user, _account->id())); +- job->setTextData(_password); +- job->start(); +-} +- +-void WebFlowCredentials::invalidateToken() { +- // clear the session cookie. +- _account->clearCookieJar(); +- +- // let QNAM forget about the password +- // This needs to be done later in the event loop because we might be called (directly or +- // indirectly) from QNetworkAccessManagerPrivate::authenticationRequired, which itself +- // is a called from a BlockingQueuedConnection from the Qt HTTP thread. And clearing the +- // cache needs to synchronize again with the HTTP thread. +- QTimer::singleShot(0, _account, &Account::clearQNAMCache); +-} +- +-void WebFlowCredentials::forgetSensitiveData(){ +- _password = QString(); +- _ready = false; +- +- fetchUser(); +- +- const QString kck = keychainKey(_account->url().toString(), _user, _account->id()); +- if (kck.isEmpty()) { +- qCWarning(lcWebFlowCredentials()) << "InvalidateToken: User is empty, bailing out!"; +- return; +- } +- +- DeletePasswordJob *job = new DeletePasswordJob(Theme::instance()->appName()); +- job->setInsecureFallback(false); +- job->setKey(kck); +- job->start(); +- +- invalidateToken(); +-} +- +-void WebFlowCredentials::setAccount(Account *account) { +- AbstractCredentials::setAccount(account); +- if (_user.isEmpty()) { +- fetchUser(); +- } +-} +- +-QString WebFlowCredentials::fetchUser() { +- _user = _account->credentialSetting("user").toString(); +- return _user; +-} +- +-void WebFlowCredentials::slotAuthentication(QNetworkReply *reply, QAuthenticator *authenticator) { +- Q_UNUSED(reply); +- +- if (!_ready) { +- return; +- } +- +- if (_credentialsValid == false) { +- return; +- } +- +- qCWarning(lcWebFlowCredentials()) << "Requires authentication"; +- +- authenticator->setUser(_user); +- authenticator->setPassword(_password); +- _credentialsValid = false; +-} +- +-void WebFlowCredentials::slotFinished(QNetworkReply *reply) { +- qCInfo(lcWebFlowCredentials()) << "request finished"; +- +- if (reply->error() == QNetworkReply::NoError) { +- _credentialsValid = true; +- } +-} +- +-void WebFlowCredentials::fetchFromKeychainHelper() { +- const QString kck = keychainKey( +- _account->url().toString(), +- _user, +- _account->id()); +- +- ReadPasswordJob *job = new ReadPasswordJob(Theme::instance()->appName()); +- job->setInsecureFallback(false); +- job->setKey(kck); +- connect(job, &Job::finished, this, &WebFlowCredentials::slotReadPasswordJobDone); +- job->start(); +-} +- +-void WebFlowCredentials::slotReadPasswordJobDone(Job *incomingJob) { +- QKeychain::ReadPasswordJob *job = static_cast<ReadPasswordJob *>(incomingJob); +- QKeychain::Error error = job->error(); +- +- if (error == QKeychain::NoError) { +- _password = job->textData(); +- _ready = true; +- _credentialsValid = true; +- } else { +- _ready = false; +- } +- +- emit fetched(); +-} +- +-} +--- desktop-2.5.0-beta1/src/gui/creds/webflowcredentialsdialog.h 2018-08-02 16:32:56.000000000 -0400 ++++ /dev/null 2018-08-15 19:12:03.420596798 -0400 +@@ -1,36 +0,0 @@ +-#ifndef WEBFLOWCREDENTIALSDIALOG_H +-#define WEBFLOWCREDENTIALSDIALOG_H +- +-#include <QDialog> +-#include <QUrl> +- +-class QLabel; +-class QVBoxLayout; +- +-namespace OCC { +- +-class WebView; +- +-class WebFlowCredentialsDialog : public QDialog +-{ +- Q_OBJECT +-public: +- WebFlowCredentialsDialog(QWidget *parent = 0); +- +- void setUrl(const QUrl &url); +- void setInfo(const QString &msg); +- void setError(const QString &error); +- +-signals: +- void urlCatched(const QString user, const QString pass, const QString host); +- +-private: +- WebView *_webView; +- QLabel *_errorLabel; +- QLabel *_infoLabel; +- QVBoxLayout *_layout; +-}; +- +-} +- +-#endif // WEBFLOWCREDENTIALSDIALOG_H +--- desktop-2.5.0-beta1/src/gui/creds/credentialsfactory.cpp 2018-08-02 16:32:56.000000000 -0400 ++++ desktop-2.5.0-beta1/src/gui/creds/credentialsfactory.cpp 2018-08-15 19:29:27.240615471 -0400 +@@ -21,7 +21,6 @@ + #ifndef NO_SHIBBOLETH + #include "creds/shibbolethcredentials.h" + #endif +-#include "creds/webflowcredentials.h" + + namespace OCC { + +@@ -40,8 +39,6 @@ + } else if (type == "shibboleth") { + return new ShibbolethCredentials; + #endif +- } else if (type == "webflow") { +- return new WebFlowCredentials; + } else { + qCWarning(lcGuiCredentials, "Unknown credentials type: %s", qPrintable(type)); + return new DummyCredentials; +--- desktop-2.5.0-beta1/src/gui/creds/webflowcredentials.h 2018-08-02 16:32:56.000000000 -0400 ++++ /dev/null 2018-08-15 19:12:03.420596798 -0400 +@@ -1,79 +0,0 @@ +-#ifndef WEBFLOWCREDENTIALS_H +-#define WEBFLOWCREDENTIALS_H +- +-#include <QSslCertificate> +-#include <QSslKey> +- +-#include "creds/abstractcredentials.h" +- +-class QDialog; +-class QLabel; +-class QNetworkReply; +-class QAuthenticator; +- +-namespace QKeychain { +- class Job; +-} +- +-namespace OCC { +- +-class WebFlowCredentialsDialog; +- +-class WebFlowCredentials : public AbstractCredentials +-{ +- Q_OBJECT +-public: +- explicit WebFlowCredentials(); +- WebFlowCredentials(const QString &user, const QString &password, const QSslCertificate &certificate = QSslCertificate(), const QSslKey &key = QSslKey()); +- +- QString authType() const override; +- QString user() const override; +- QString password() const; +- QNetworkAccessManager *createQNAM() const override; +- +- bool ready() const override; +- +- void fetchFromKeychain() override; +- void askFromUser() override; +- +- bool stillValid(QNetworkReply *reply) override; +- void persist() override; +- void invalidateToken() override; +- void forgetSensitiveData() override; +- +- // To fetch the user name as early as possible +- void setAccount(Account *account) override; +- +-private slots: +- void slotAuthentication(QNetworkReply *reply, QAuthenticator *authenticator); +- void slotFinished(QNetworkReply *reply); +- +- void slotReadPasswordJobDone(QKeychain::Job *incomingJob); +- void slotAskFromUserCredentialsProvided(const QString &user, const QString &pass, const QString &host); +- +-private: +- /** Reads data from keychain locations +- * +- * Goes through +- * slotReadClientCertPEMJobDone to +- * slotReadClientCertPEMJobDone to +- * slotReadJobDone +- */ +- void fetchFromKeychainHelper(); +- +- QString fetchUser(); +- +- QString _user; +- QString _password; +- QSslKey _clientSslKey; +- QSslCertificate _clientSslCertificate; +- +- bool _ready; +- bool _credentialsValid; +- +- WebFlowCredentialsDialog *_askDialog; +-}; +- +-} +- +-#endif // WEBFLOWCREDENTIALS_H +--- desktop-2.5.0-beta1/src/gui/CMakeLists.txt 2018-08-02 16:32:56.000000000 -0400 ++++ desktop-2.5.0-beta1/src/gui/CMakeLists.txt 2018-08-15 19:28:53.640614870 -0400 +@@ -41,7 +41,6 @@ + wizard/owncloudoauthcredspage.ui + wizard/owncloudsetupnocredspage.ui + wizard/owncloudwizardresultpage.ui +- wizard/webview.ui + ) + + set(client_SRCS +@@ -104,8 +103,6 @@ + creds/credentialsfactory.cpp + creds/httpcredentialsgui.cpp + creds/oauth.cpp +- creds/webflowcredentials.cpp +- creds/webflowcredentialsdialog.cpp + wizard/postfixlineedit.cpp + wizard/abstractcredswizardpage.cpp + wizard/owncloudadvancedsetuppage.cpp +@@ -116,8 +113,6 @@ + wizard/owncloudwizardcommon.cpp + wizard/owncloudwizard.cpp + wizard/owncloudwizardresultpage.cpp +- wizard/webviewpage.cpp +- wizard/webview.cpp + ) + + IF(NOT NO_SHIBBOLETH) +@@ -290,7 +290,7 @@ + endif() + + add_library(updater STATIC ${updater_SRCS}) +-target_link_libraries(updater ${synclib_NAME} Qt5::Widgets Qt5::Network Qt5::Xml Qt5::WebEngineWidgets) ++target_link_libraries(updater ${synclib_NAME} Qt5::Widgets Qt5::Network Qt5::Xml) + target_include_directories(updater PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}) + + set_target_properties( ${APPLICATION_EXECUTABLE} PROPERTIES +--- desktop-2.5.0-beta2/src/gui/wizard/webview.cpp 2018-08-24 12:54:42.000000000 +0000 ++++ /dev/null 2018-10-03 06:10:44.230254545 +0000 +@@ -1,162 +0,0 @@ +-#include "webview.h" +- +-#include <QWebEnginePage> +-#include <QWebEngineProfile> +-#include <QWebEngineUrlRequestInterceptor> +-#include <QWebEngineUrlRequestJob> +-#include <QWebEngineUrlSchemeHandler> +-#include <QWebEngineView> +-#include <QDesktopServices> +-#include <QProgressBar> +-#include <QLoggingCategory> +-#include <QLocale> +- +-#include "common/utility.h" +- +-namespace OCC { +- +-Q_LOGGING_CATEGORY(lcWizardWebiew, "gui.wizard.webview", QtInfoMsg) +- +- +-class WebViewPageUrlRequestInterceptor : public QWebEngineUrlRequestInterceptor +-{ +- Q_OBJECT +-public: +- WebViewPageUrlRequestInterceptor(QObject *parent = 0); +- void interceptRequest(QWebEngineUrlRequestInfo &info); +-}; +- +-class WebViewPageUrlSchemeHandler : public QWebEngineUrlSchemeHandler +-{ +- Q_OBJECT +-public: +- WebViewPageUrlSchemeHandler(QObject *parent = 0); +- void requestStarted(QWebEngineUrlRequestJob *request); +- +-Q_SIGNALS: +- void urlCatched(QString user, QString pass, QString host); +-}; +- +-class WebEnginePage : public QWebEnginePage { +-public: +- WebEnginePage(QWebEngineProfile *profile, QObject* parent = nullptr); +- QWebEnginePage * createWindow(QWebEnginePage::WebWindowType type) override; +-}; +- +-// We need a separate class here, since we cannot simply return the same WebEnginePage object +-// this leads to a strage segfault somewhere deep inside of the QWebEngine code +-class ExternalWebEnginePage : public QWebEnginePage { +-public: +- ExternalWebEnginePage(QWebEngineProfile *profile, QObject* parent = nullptr); +- bool acceptNavigationRequest(const QUrl &url, QWebEnginePage::NavigationType type, bool isMainFrame) override; +-}; +- +-WebView::WebView(QWidget *parent) +- : QWidget(parent), +- _ui() +-{ +- _ui.setupUi(this); +- +- _webview = new QWebEngineView(this); +- _profile = new QWebEngineProfile(this); +- _page = new WebEnginePage(_profile); +- _interceptor = new WebViewPageUrlRequestInterceptor(this); +- _schemeHandler = new WebViewPageUrlSchemeHandler(this); +- +- const QString userAgent(Utility::userAgentString()); +- _profile->setHttpUserAgent(userAgent); +- QWebEngineProfile::defaultProfile()->setHttpUserAgent(userAgent); +- _profile->setRequestInterceptor(_interceptor); +- _profile->installUrlSchemeHandler("nc", _schemeHandler); +- +- /* +- * Set a proper accept langauge to the language of the client +- * code from: http://code.qt.io/cgit/qt/qtbase.git/tree/src/network/access/qhttpnetworkconnection.cpp +- */ +- { +- QString systemLocale = QLocale::system().name().replace(QChar::fromLatin1('_'),QChar::fromLatin1('-')); +- QString acceptLanguage; +- if (systemLocale == QLatin1String("C")) { +- acceptLanguage = QString::fromLatin1("en,*"); +- } else if (systemLocale.startsWith(QLatin1String("en-"))) { +- acceptLanguage = systemLocale + QLatin1String(",*"); +- } else { +- acceptLanguage = systemLocale + QLatin1String(",en,*"); +- } +- _profile->setHttpAcceptLanguage(acceptLanguage); +- } +- +- _webview->setPage(_page); +- _ui.verticalLayout->addWidget(_webview); +- +- connect(_webview, &QWebEngineView::loadProgress, _ui.progressBar, &QProgressBar::setValue); +- connect(_schemeHandler, &WebViewPageUrlSchemeHandler::urlCatched, this, &WebView::urlCatched); +-} +- +-void WebView::setUrl(const QUrl &url) { +- _page->setUrl(url); +-} +- +-WebViewPageUrlRequestInterceptor::WebViewPageUrlRequestInterceptor(QObject *parent) +- : QWebEngineUrlRequestInterceptor(parent) { +- +-} +- +-void WebViewPageUrlRequestInterceptor::interceptRequest(QWebEngineUrlRequestInfo &info) { +- info.setHttpHeader("OCS-APIREQUEST", "true"); +-} +- +-WebViewPageUrlSchemeHandler::WebViewPageUrlSchemeHandler(QObject *parent) +- : QWebEngineUrlSchemeHandler(parent) { +- +-} +- +-void WebViewPageUrlSchemeHandler::requestStarted(QWebEngineUrlRequestJob *request) { +- QUrl url = request->requestUrl(); +- +- QString path = url.path().mid(1); +- QStringList parts = path.split("&"); +- +- QString server; +- QString user; +- QString password; +- +- for (QString part : parts) { +- if (part.startsWith("server:")) { +- server = part.mid(7); +- } else if (part.startsWith("user:")) { +- user = part.mid(5); +- } else if (part.startsWith("password:")) { +- password = part.mid(9); +- } +- } +- +- qCInfo(lcWizardWebiew()) << "Got user: " << user << ", server: " << server; +- +- emit urlCatched(user, password, server); +-} +- +- +-WebEnginePage::WebEnginePage(QWebEngineProfile *profile, QObject* parent) : QWebEnginePage(profile, parent) { +- +-} +- +-QWebEnginePage * WebEnginePage::createWindow(QWebEnginePage::WebWindowType type) { +- ExternalWebEnginePage *view = new ExternalWebEnginePage(this->profile()); +- return view; +-} +- +-ExternalWebEnginePage::ExternalWebEnginePage(QWebEngineProfile *profile, QObject* parent) : QWebEnginePage(profile, parent) { +- +-} +- +- +-bool ExternalWebEnginePage::acceptNavigationRequest(const QUrl &url, QWebEnginePage::NavigationType type, bool isMainFrame) +-{ +- QDesktopServices::openUrl(url); +- return false; +-} +- +-} +- +-#include "webview.moc" +--- desktop-2.5.0-beta1/src/gui/wizard/webviewpage.cpp 2018-08-02 16:32:56.000000000 -0400 ++++ /dev/null 2018-08-15 19:06:30.250590838 -0400 +@@ -1,73 +0,0 @@ +-#include "webviewpage.h" +- +-#include <QWebEngineUrlRequestJob> +-#include <QProgressBar> +-#include <QVBoxLayout> +- +-#include "owncloudwizard.h" +-#include "creds/webflowcredentials.h" +-#include "webview.h" +-#include "account.h" +- +-namespace OCC { +- +-Q_LOGGING_CATEGORY(lcWizardWebiewPage, "gui.wizard.webviewpage", QtInfoMsg) +- +- +-WebViewPage::WebViewPage(QWidget *parent) +- : AbstractCredentialsWizardPage() +-{ +- _ocWizard = qobject_cast<OwncloudWizard *>(parent); +- +- qCInfo(lcWizardWebiewPage()) << "Time for a webview!"; +- _webView = new WebView(this); +- +- QVBoxLayout *layout = new QVBoxLayout(this); +- layout->addWidget(_webView); +- setLayout(layout); +- +- connect(_webView, &WebView::urlCatched, this, &WebViewPage::urlCatched); +-} +- +-void WebViewPage::initializePage() { +- QString url; +- if (_ocWizard->registration()) { +- url = "https://nextcloud.com/register"; +- } else { +- url = _ocWizard->ocUrl(); +- url += "/index.php/login/flow"; +- } +- qCInfo(lcWizardWebiewPage()) << "Url to auth at: " << url; +- _webView->setUrl(QUrl(url)); +-} +- +-int WebViewPage::nextId() const { +- return WizardCommon::Page_AdvancedSetup; +-} +- +-bool WebViewPage::isComplete() const { +- return false; +-} +- +-AbstractCredentials* WebViewPage::getCredentials() const { +- return new WebFlowCredentials(_user, _pass, _ocWizard->_clientSslCertificate, _ocWizard->_clientSslKey); +-} +- +-void WebViewPage::setConnected() { +- qCInfo(lcWizardWebiewPage()) << "YAY! we are connected!"; +-} +- +-void WebViewPage::urlCatched(QString user, QString pass, QString host) { +- qCInfo(lcWizardWebiewPage()) << "Got user: " << user << ", server: " << host; +- +- _user = user; +- _pass = pass; +- +- AccountPtr account = _ocWizard->account(); +- account->setUrl(host); +- +- qCInfo(lcWizardWebiewPage()) << "URL: " << field("OCUrl").toString(); +- emit connectToOCUrl(host); +-} +- +-} +--- desktop-2.5.0-beta2/src/gui/wizard/webview.h 2018-08-24 12:54:42.000000000 +0000 ++++ /dev/null 2018-10-03 06:11:27.640255322 +0000 +@@ -1,42 +0,0 @@ +-#ifndef WEBVIEW_H +-#define WEBVIEW_H +- +-#include <QUrl> +-#include <QWidget> +- +-#include "ui_webview.h" +- +-class QWebEngineView; +-class QWebEngineProfile; +-class QWebEnginePage; +- +-namespace OCC { +- +-class WebViewPageUrlRequestInterceptor; +-class WebViewPageUrlSchemeHandler; +-class WebEnginePage; +- +-class WebView : public QWidget +-{ +- Q_OBJECT +-public: +- WebView(QWidget *parent = 0); +- void setUrl(const QUrl &url); +- +-signals: +- void urlCatched(const QString user, const QString pass, const QString host); +- +-private: +- Ui_WebView _ui; +- +- QWebEngineView *_webview; +- QWebEngineProfile *_profile; +- WebEnginePage *_page; +- +- WebViewPageUrlRequestInterceptor *_interceptor; +- WebViewPageUrlSchemeHandler *_schemeHandler; +-}; +- +-} +- +-#endif // WEBVIEW_H +--- desktop-2.5.0-beta1/src/gui/wizard/webviewpage.h 2018-08-02 16:32:56.000000000 -0400 ++++ /dev/null 2018-08-15 19:25:56.010611692 -0400 +@@ -1,41 +0,0 @@ +-#ifndef WEBVIEWPAGE_H +-#define WEBVIEWPAGE_H +- +-#include "wizard/abstractcredswizardpage.h" +- +-namespace OCC { +- +-class AbstractCredentials; +-class OwncloudWizard; +-class WebView; +- +-class WebViewPage : public AbstractCredentialsWizardPage +-{ +- Q_OBJECT +-public: +- WebViewPage(QWidget *parent = 0); +- +- void initializePage() Q_DECL_OVERRIDE; +- int nextId() const Q_DECL_OVERRIDE; +- bool isComplete() const; +- +- AbstractCredentials* getCredentials() const; +- void setConnected(); +- +-signals: +- void connectToOCUrl(const QString&); +- +-private slots: +- void urlCatched(QString user, QString pass, QString host); +- +-private: +- OwncloudWizard *_ocWizard; +- WebView *_webView; +- +- QString _user; +- QString _pass; +-}; +- +-} +- +-#endif // WEBVIEWPAGE_H +--- desktop-2.5.0-beta1/src/gui/wizard/owncloudsetuppage.cpp 2018-08-02 16:32:56.000000000 -0400 ++++ desktop-2.5.0-beta1/src/gui/wizard/owncloudsetuppage.cpp 2018-08-15 19:23:33.100609136 -0400 +@@ -161,7 +161,7 @@ + void OwncloudSetupPage::slotGotoProviderList() + { + _ocWizard->setRegistration(true); +- _ocWizard->setAuthType(DetermineAuthTypeJob::AuthType::WebViewFlow); ++ _ocWizard->setAuthType(DetermineAuthTypeJob::AuthType::Basic); + _authTypeKnown = true; + _checking = false; + emit completeChanged(); +@@ -278,8 +278,6 @@ + return WizardCommon::Page_OAuthCreds; + case DetermineAuthTypeJob::Shibboleth: + return WizardCommon::Page_ShibbolethCreds; +- case DetermineAuthTypeJob::WebViewFlow: +- return WizardCommon::Page_WebView; + } + return WizardCommon::Page_HttpCreds; + } +--- desktop-2.5.0-beta1/src/gui/wizard/webview.ui 2018-08-02 16:32:56.000000000 -0400 ++++ /dev/null 2018-08-15 19:24:43.320610392 -0400 +@@ -1,80 +0,0 @@ +-<?xml version="1.0" encoding="UTF-8"?> +-<ui version="4.0"> +- <class>WebView</class> +- <widget class="QWidget" name="WebView"> +- <property name="geometry"> +- <rect> +- <x>0</x> +- <y>0</y> +- <width>800</width> +- <height>700</height> +- </rect> +- </property> +- <property name="sizePolicy"> +- <sizepolicy hsizetype="Minimum" vsizetype="Maximum"> +- <horstretch>0</horstretch> +- <verstretch>0</verstretch> +- </sizepolicy> +- </property> +- <property name="minimumSize"> +- <size> +- <width>800</width> +- <height>650</height> +- </size> +- </property> +- <property name="windowTitle"> +- <string>Form</string> +- </property> +- <layout class="QGridLayout" name="gridLayout"> +- <property name="leftMargin"> +- <number>0</number> +- </property> +- <property name="topMargin"> +- <number>0</number> +- </property> +- <property name="rightMargin"> +- <number>0</number> +- </property> +- <property name="bottomMargin"> +- <number>0</number> +- </property> +- <item row="1" column="0"> +- <layout class="QVBoxLayout" name="verticalLayout"> +- <property name="spacing"> +- <number>0</number> +- </property> +- <item> +- <widget class="QProgressBar" name="progressBar"> +- <property name="maximumSize"> +- <size> +- <width>16777215</width> +- <height>5</height> +- </size> +- </property> +- <property name="styleSheet"> +- <string notr="true">QProgressBar::chunk { +- background-color: rgba(0, 130, 201, 255); +-}</string> +- </property> +- <property name="value"> +- <number>0</number> +- </property> +- <property name="textVisible"> +- <bool>false</bool> +- </property> +- </widget> +- </item> +- <item> +- <layout class="QHBoxLayout" name="resultLayout"> +- <property name="spacing"> +- <number>0</number> +- </property> +- </layout> +- </item> +- </layout> +- </item> +- </layout> +- </widget> +- <resources/> +- <connections/> +-</ui> +--- desktop-2.5.0-beta1/src/gui/wizard/owncloudwizard.h 2018-08-02 16:32:56.000000000 -0400 ++++ desktop-2.5.0-beta1/src/gui/wizard/owncloudwizard.h 2018-08-15 19:22:00.430607478 -0400 +@@ -39,7 +39,6 @@ + class OwncloudWizardResultPage; + class AbstractCredentials; + class AbstractCredentialsWizardPage; +-class WebViewPage; + + /** + * @brief The OwncloudWizard class +@@ -106,7 +105,6 @@ + OwncloudAdvancedSetupPage *_advancedSetupPage; + OwncloudWizardResultPage *_resultPage; + AbstractCredentialsWizardPage *_credentialsPage; +- WebViewPage *_webViewPage; + + QStringList _setupLog; + +--- desktop-2.5.0-beta1/src/gui/wizard/owncloudwizard.cpp 2018-08-02 16:32:56.000000000 -0400 ++++ desktop-2.5.0-beta1/src/gui/wizard/owncloudwizard.cpp 2018-08-15 19:04:35.670588788 -0400 +@@ -26,7 +26,6 @@ + #endif + #include "wizard/owncloudadvancedsetuppage.h" + #include "wizard/owncloudwizardresultpage.h" +-#include "wizard/webviewpage.h" + + #include "QProgressIndicator.h" + +@@ -51,7 +50,6 @@ + , _advancedSetupPage(new OwncloudAdvancedSetupPage) + , _resultPage(new OwncloudWizardResultPage) + , _credentialsPage(0) +- , _webViewPage(new WebViewPage(this)) + , _setupLog() + , _registration(false) + { +@@ -64,7 +62,6 @@ + #endif + setPage(WizardCommon::Page_AdvancedSetup, _advancedSetupPage); + setPage(WizardCommon::Page_Result, _resultPage); +- setPage(WizardCommon::Page_WebView, _webViewPage); + + connect(this, &QDialog::finished, this, &OwncloudWizard::basicSetupFinished); + +@@ -79,7 +76,6 @@ + #ifndef NO_SHIBBOLETH + connect(_shibbolethCredsPage, &OwncloudShibbolethCredsPage::connectToOCUrl, this, &OwncloudWizard::connectToOCUrl); + #endif +- connect(_webViewPage, &WebViewPage::connectToOCUrl, this, &OwncloudWizard::connectToOCUrl); + connect(_advancedSetupPage, &OwncloudAdvancedSetupPage::createLocalAndRemoteFolders, + this, &OwncloudWizard::createLocalAndRemoteFolders); + connect(this, &QWizard::customButtonClicked, this, &OwncloudWizard::skipFolderConfiguration); +@@ -168,10 +164,6 @@ + break; + #endif + +- case WizardCommon::Page_WebView: +- _webViewPage->setConnected(); +- break; +- + case WizardCommon::Page_AdvancedSetup: + _advancedSetupPage->directoriesCreated(); + break; +@@ -195,8 +187,6 @@ + #endif + if (type == DetermineAuthTypeJob::OAuth) { + _credentialsPage = _browserCredsPage; +- } else if (type == DetermineAuthTypeJob::WebViewFlow) { +- _credentialsPage = _webViewPage; + } else { // try Basic auth even for "Unknown" + _credentialsPage = _httpCredsPage; + } +--- desktop-2.5.0-beta1/src/CMakeLists.txt 2018-08-02 16:32:56.000000000 -0400 ++++ desktop-2.5.0-beta1/src/CMakeLists.txt 2018-08-15 20:59:59.390712646 -0400 +@@ -4,7 +4,7 @@ + + set(synclib_NAME ${APPLICATION_EXECUTABLE}sync) + +-find_package(Qt5 5.6 COMPONENTS Core Network Xml Concurrent WebEngineWidgets WebEngine REQUIRED) ++find_package(Qt5 5.6 COMPONENTS Core Network Xml Concurrent REQUIRED) + if (Qt5Core_VERSION VERSION_LESS 5.9.0) + message(STATUS "For HTTP/2 support, compile with Qt 5.9 or higher.") + endif() diff --git a/user/nextcloud-client/openssl.patch b/user/nextcloud-client/openssl.patch new file mode 100644 index 000000000..426fa0cfb --- /dev/null +++ b/user/nextcloud-client/openssl.patch @@ -0,0 +1,11 @@ +--- desktop-2.5.0-beta2/CMakeLists.txt 2018-08-24 12:54:42.000000000 +0000 ++++ desktop-2.5.0-beta2/CMakeLists.txt 2018-10-03 06:19:15.840263697 +0000 +@@ -183,7 +183,7 @@ if(BUILD_CLIENT) + endif() + find_package(Sphinx) + find_package(PdfLatex) +- find_package(OpenSSL 1.1 REQUIRED ) ++ find_package(OpenSSL 1.0 REQUIRED ) + + find_package(ZLIB REQUIRED) + find_package(GLib2) diff --git a/user/nghttp2/APKBUILD b/user/nghttp2/APKBUILD index f3c0b14f9..50b89c95d 100644 --- a/user/nghttp2/APKBUILD +++ b/user/nghttp2/APKBUILD @@ -1,7 +1,7 @@ # Contributor: Natanael Copa <ncopa@alpinelinux.org> # Maintainer: pkgname=nghttp2 -pkgver=1.32.0 +pkgver=1.33.0 pkgrel=0 pkgdesc="Experimental HTTP/2 client, server and proxy" url="https://nghttp2.org/" @@ -39,4 +39,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="ec7e417fbc5497861d2b6dde5145da1640b36441882824e85940e5ca6ac52ec444aa7123846960f7211dd96462eab421d39f9cc49454f3f52e0dcdb36402044e nghttp2-1.32.0.tar.xz" +sha512sums="eeb0bf64fea115444c685c8a01c1017ce96be18adf88ffcdecad067de7012ca61c6b2b6a627b18e2572bba7bd77ec56a3ca4b1109f7a4b21220e8e28687b5b74 nghttp2-1.33.0.tar.xz" diff --git a/user/ntfs-3g/APKBUILD b/user/ntfs-3g/APKBUILD new file mode 100644 index 000000000..d403c4f42 --- /dev/null +++ b/user/ntfs-3g/APKBUILD @@ -0,0 +1,40 @@ +# Contributor: Valery Kartel <valery.kartel@gmail.com> +# Contributor: Carlo Landmeter <clandmeter@gmail.com> +# Contributor: Natanael Copa <ncopa@alpinelinux.org> +# Maintainer: Max Rees <maxcrees@me.com> +pkgname=ntfs-3g +_pkgname=ntfs-3g_ntfsprogs +pkgver=2017.3.23 +pkgrel=1 +pkgdesc="Stable, full-featured, read-write NTFS" +url="https://www.tuxera.com/community/open-source-ntfs-3g/" +arch="all" +options="!check" # No test suite. +license="LGPL-2.1-only AND BSD-2-Clause AND GPL-2.0+ AND GPL-3.0+" +makedepends="attr-dev util-linux-dev linux-headers fuse-dev" +subpackages="$pkgname-doc $pkgname-dev $pkgname-libs" +source="https://tuxera.com/opensource/$_pkgname-$pkgver.tgz" +builddir="$srcdir/$_pkgname-$pkgver" + +build() { + cd "$builddir" + ./configure \ + --build=$CBUILD \ + --host=$CHOST \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --infodir=/usr/share/info \ + --localstatedir=/var \ + --with-fuse=external + make +} + +package() { + cd "$builddir" + mkdir -p "$pkgdir"/lib + make -j1 DESTDIR="$pkgdir" LDCONFIG=: install + ln -s /bin/ntfs-3g "$pkgdir"/sbin/mount.ntfs +} + +sha512sums="3a607f0d7be35204c992d8931de0404fbc52032c13b4240d2c5e6f285c318a28eb2a385d7cf5ac4cd445876aee5baa5753bb636ada0d870d84a9d3fdbce794ef ntfs-3g_ntfsprogs-2017.3.23.tgz" diff --git a/user/ode/APKBUILD b/user/ode/APKBUILD new file mode 100644 index 000000000..f21ef2b42 --- /dev/null +++ b/user/ode/APKBUILD @@ -0,0 +1,48 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: A. Wilcox <awilfox@adelielinux.org> +pkgname=ode +pkgver=0.14 +pkgrel=0 +pkgdesc="High performance library for simulating rigid body dynamics" +url="https://www.ode-wiki.org/wiki/index.php?title=Main_Page" +arch="all" +options="!check" # Fails 48/52 tests +license="LGPL-2.1+ OR BSD-3-Clause" +depends="" +makedepends="autoconf automake libtool" +subpackages="$pkgname-dev" +source="https://bitbucket.org/odedevs/ode/downloads/ode-$pkgver.tar.gz + fix-test-link.patch + " + +build() { + cd "$builddir" + + ./bootstrap + CXXFLAGS="$CXXFLAGS -fpermissive" ./configure \ + --build=$CBUILD \ + --host=$CHOST \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --localstatedir=/var \ + --enable-shared \ + --disable-static \ + --disable-double-precision \ + --enable-libccd \ + --enable-ou + make +} + +check() { + cd "$builddir" + make check +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install +} + +sha512sums="1f74c3c4687ee9665fa70e65a79100747fba577729830a90806e374115f1c161a2f4545cf591b0979054aa3e2f9a3673635668cb7362ab5c213ada0d39b1a03d ode-0.14.tar.gz +8630d5d059fd0f623db6af4000666868358002a42ba84817117b1fb5e01c776bb23cbf1c8c43181d7bf40a0d71b640f9d2f9785461d8a77877dcbdadd775792e fix-test-link.patch" diff --git a/user/ode/fix-test-link.patch b/user/ode/fix-test-link.patch new file mode 100644 index 000000000..a9d66dbbe --- /dev/null +++ b/user/ode/fix-test-link.patch @@ -0,0 +1,9 @@ +--- ode-0.15.2/tests/Makefile.am.old 2017-06-05 08:12:18.000000000 +0000 ++++ ode-0.15.2/tests/Makefile.am 2018-09-30 22:44:06.310000000 +0000 +@@ -26,5 +26,5 @@ + + tests_LDADD = \ + $(top_builddir)/ode/src/libode.la \ +- joints/*.o \ ++ joints/libjoints.la \ + UnitTest++/src/libunittestpp.la diff --git a/user/okteta/APKBUILD b/user/okteta/APKBUILD index 6f5c1111b..9a96a915b 100644 --- a/user/okteta/APKBUILD +++ b/user/okteta/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=okteta -pkgver=0.25.3 +pkgver=0.25.4 pkgrel=0 pkgdesc="Graphical hex/binary editor" url="https://www.kde.org/applications/utilities/okteta/" @@ -43,4 +43,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="f27b0c2ca3c5f1ad838af847e08c53c8f8f3c386921bd2e0d5e833902659477196e6c6b72a428443e2be9013928c2151c1889ef33d59404815a34d81560ef2a7 okteta-0.25.3.tar.xz" +sha512sums="d9887a90efbad3bb2caa0d3bb12af27708b77d54a90cd0da82eace7ea6dfc2efbcea3d7dc720bf4a088a823a8ed9edf75ab1c3680aa6d99c640d5c9e4c385e16 okteta-0.25.4.tar.xz" diff --git a/user/okular/APKBUILD b/user/okular/APKBUILD index ba2fd75c2..f828ce146 100644 --- a/user/okular/APKBUILD +++ b/user/okular/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=okular -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="Universal document reader developed by KDE" url="https://okular.kde.org/" @@ -44,4 +44,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="4114c614c3d773de158469a201c976ad36d706a0eb00b238af49d5e5a97fb272ce6033f744101c7e26110a7ac6b9c6cda26e3fc8c9c1bde22277f3ba2c55a375 okular-18.08.1.tar.xz" +sha512sums="099efe86a99f3c44f00873a01f6b3461bd0b1d0a6099c9954de034bfad9c483647d2b2c5cf87c5fbea4b2f6b4c350344480fb1dc77d9710991f9d7c5300ca8c4 okular-18.08.2.tar.xz" diff --git a/user/opencv/APKBUILD b/user/opencv/APKBUILD index 3f4c9e58c..1f33734f0 100644 --- a/user/opencv/APKBUILD +++ b/user/opencv/APKBUILD @@ -1,8 +1,8 @@ # Contributor: Carlo Landmeter <clandmeter@gmail.com> # Maintainer: pkgname=opencv -pkgver=3.4.1 -pkgrel=2 +pkgver=3.4.3 +pkgrel=0 pkgdesc="Computer vision and machine learning software library" url="https://opencv.org" arch="all" @@ -13,9 +13,7 @@ makedepends="cmake doxygen ffmpeg-dev gst-plugins-base-dev gtk+2.0-dev gtk+3.0-dev jasper-dev libdc1394-dev libgomp libgphoto2-dev libjpeg-turbo-dev libpng-dev libwebp-dev tiff-dev v4l-utils-dev" subpackages="$pkgname-dev $pkgname-libs" -source="opencv-$pkgver.tar.gz::https://github.com/opencv/opencv/archive/$pkgver.tar.gz - pmmx.patch - " +source="opencv-$pkgver.tar.gz::https://github.com/opencv/opencv/archive/$pkgver.tar.gz" prepare() { cd "$builddir" @@ -64,5 +62,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="e1fc14285090c6fe9e26e721f2d67d7096650c523147e925567426ef76aa7f4c6f12035d6f6ce3ec7991a75a6828a810fd4f9b75f78ed5fcccecefbadd79944b opencv-3.4.1.tar.gz -8ebf573e3f02b78b5769eaf828215698073096a1dade9214af0382cfbbe2353307df836a6af8c4e86246ad33fefe1f64a1087d0ff7a6dc7c5f3e231592c20b4c pmmx.patch" +sha512sums="d653a58eb5e3939b9fdb7438ac35f77cf4385cf72d5d22bfd21722a109e1b3283dbb9407985061b7548114f0d05c9395aac9bb62b4d2bc1f68da770a49987fef opencv-3.4.3.tar.gz" diff --git a/user/opencv/pmmx.patch b/user/opencv/pmmx.patch deleted file mode 100644 index f36d643cf..000000000 --- a/user/opencv/pmmx.patch +++ /dev/null @@ -1,27 +0,0 @@ -From 7dc162cb4252ccf461f1c63650abde3c8807b79c Mon Sep 17 00:00:00 2001 -From: Alexander Alekhin <alexander.alekhin@intel.com> -Date: Mon, 9 Apr 2018 18:25:51 +0300 -Subject: [PATCH] core: fix mm_pause() for non-SSE i386 builds - -replaced to safe binary compatible 'rep; nop' asm instruction ---- - modules/core/src/parallel_impl.cpp | 6 +++++- - 1 file changed, 5 insertions(+), 1 deletion(-) - -diff --git a/modules/core/src/parallel_impl.cpp b/modules/core/src/parallel_impl.cpp -index 78d9eb63694..bc64fce7a81 100644 ---- a/modules/core/src/parallel_impl.cpp -+++ b/modules/core/src/parallel_impl.cpp -@@ -49,7 +49,11 @@ DECLARE_CV_YIELD - DECLARE_CV_PAUSE - #endif - #ifndef CV_PAUSE --#if defined __GNUC__ && (defined __i386__ || defined __x86_64__) -+# if defined __GNUC__ && (defined __i386__ || defined __x86_64__) -+# if !defined(__SSE__) -+ static inline void cv_non_sse_mm_pause() { __asm__ __volatile__ ("rep; nop"); } -+# define _mm_pause cv_non_sse_mm_pause -+# endif - # define CV_PAUSE(v) do { for (int __delay = (v); __delay > 0; --__delay) { _mm_pause(); } } while (0) - # elif defined __GNUC__ && defined __aarch64__ - # define CV_PAUSE(v) do { for (int __delay = (v); __delay > 0; --__delay) { asm volatile("yield" ::: "memory"); } } while (0) diff --git a/user/openvpn/APKBUILD b/user/openvpn/APKBUILD new file mode 100644 index 000000000..06317735b --- /dev/null +++ b/user/openvpn/APKBUILD @@ -0,0 +1,69 @@ +# Contributor: Valery Kartel <valery.kartel@gmail.com> +# Contributor: Natanael Copa <ncopa@alpinelinux.org> +# Maintainer: Lee Starnes <lee@canned-death.us> +pkgname=openvpn +pkgver=2.4.6 +pkgrel=1 +pkgdesc="A robust, and highly configurable VPN (Virtual Private Network)" +url="https://openvpn.net/" +arch="all" +license="GPL-2.0-only WITH openvpn-openssl-exception" +subpackages="$pkgname-doc $pkgname-dev $pkgname-auth-pam:pam $pkgname-openrc" +depends="iproute2" +makedepends="openssl-dev lzo-dev linux-pam-dev linux-headers" +install="$pkgname.pre-install" +source="https://swupdate.openvpn.net/community/releases/$pkgname-$pkgver.tar.gz + openvpn.initd + openvpn.confd + openvpn.up + openvpn.down + " + +build() { + cd "$builddir" + ./configure \ + --build=$CBUILD \ + --host=$CHOST \ + --prefix=/usr \ + --mandir=/usr/share/man \ + --sysconfdir=/etc/openvpn \ + --enable-crypto \ + --enable-iproute2 + make +} + +check() { + cd "$builddir" + make check +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + + # install samples + mkdir -p "$pkgdir"/usr/share/doc/$pkgname/samples + cp -a sample/sample-* "$pkgdir"/usr/share/doc/$pkgname/samples + install -D -m644 COPYING "$pkgdir"/usr/share/licenses/$pkgname/COPYING + + # install init.d and conf.d + install -Dm755 "$srcdir"/openvpn.initd "$pkgdir"/etc/init.d/openvpn + install -Dm644 "$srcdir"/openvpn.confd "$pkgdir"/etc/conf.d/openvpn + + # install up and down scripts + install -Dm755 "$srcdir"/openvpn.up "$pkgdir"/etc/openvpn/up.sh + install -Dm755 "$srcdir"/openvpn.down "$pkgdir"/etc/openvpn/down.sh +} + +pam() { + pkgdesc="OpenVPN plugin for PAM authentication" + mkdir -p "$subpkgdir"/usr/lib/openvpn/plugins + mv "$pkgdir"/usr/lib/openvpn/plugins/*-auth-pam* \ + "$subpkgdir"/usr/lib/openvpn/plugins/ +} + +sha512sums="cdd70bfd03177bc6cb70d0d614e40389df00816b7097740b4cda9d7bee094d1463fdb5afeaf604c52c7b3167d1edb098a2e095e131a8b9fed0ed8b29da90cbe8 openvpn-2.4.6.tar.gz +3594937d4cc9d7b87ac6a3af433f651ed9695f41586994f9d9789554fbe3f87f054b997b89486eda4ae0b852d816aac9007222168d585910aa9f255073324bd9 openvpn.initd +6b2353aca9df7f43044e4e37990491b4ba077e259ebe13b8f2eb43e35ca7a617c1a65c5bfb8ab05e87cf12c4444184ae064f01f9abbb3c023dbbc07ff3f9c84e openvpn.confd +cdb73c9a5b1eb56e9cbd29955d94297ce5a87079419cd626d6a0b6680d88cbf310735a53f794886df02030b687eaea553c7c569a8ea1282a149441add1c65760 openvpn.up +4456880d5c2db061219ba94e4052786700efa5e685f03b0d12d75a6023e3c0fc7b5242cc3d2bd3988e42fcd99701ab13a6257b1a0943b812318d30c64843ad27 openvpn.down" diff --git a/user/openvpn/openvpn.confd b/user/openvpn/openvpn.confd new file mode 100644 index 000000000..7274a079d --- /dev/null +++ b/user/openvpn/openvpn.confd @@ -0,0 +1,24 @@ +# Configuration for /etc/init.d/openvpn{,.*} + +# OpenVPN can run in many modes. Most people want the init script to +# automatically detect the mode and try and apply a good default configuration +# and setup scripts. However, there are cases where the OpenVPN configuration +# looks like a client, but it's really a peer or something else. +# detect_client controls this behaviour. +#detect_client="yes" + +# Path of the OpenVPN configuration file to load. +# Default is /etc/openvpn/openvpn.conf, or /etc/openvpn/<vpn>.conf if +# the runscript is symlinked to openvpn.<vpn> or <vpn>. +#cfgfile= + +# The script to run in client mode after successful TUN/TAP device open. +#up_script="/etc/openvpn/up.sh" + +# The script to run in client mode after TUN/TAP device close. +#down_script="/etc/openvpn/down.sh" + +# OpenVPN automatically creates an /etc/resolv.conf (or sends it to +# resolvconf) if given DNS information by the OpenVPN server. +# Set to "no" to stop this. +#peer_dns="yes" diff --git a/user/openvpn/openvpn.down b/user/openvpn/openvpn.down new file mode 100644 index 000000000..50d463f16 --- /dev/null +++ b/user/openvpn/openvpn.down @@ -0,0 +1,33 @@ +#!/bin/sh +# Copyright (c) 2006-2007 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# Contributed by Roy Marples (uberlord@gentoo.org) + +# If we have a service specific script, run this now +if [ -x /etc/openvpn/"${RC_SVCNAME}"-down.sh ] ; then + /etc/openvpn/"${RC_SVCNAME}"-down.sh "$@" +fi + +# Restore resolv.conf to how it was +if [ "${PEER_DNS}" != "no" ]; then + if [ -x /sbin/resolvconf ] ; then + /sbin/resolvconf -d "${dev}" + elif [ -e /etc/resolv.conf-"${dev}".sv ] ; then + # Important that we cat instead of move incase resolv.conf is + # a symlink and not an actual file + cat /etc/resolv.conf-"${dev}".sv > /etc/resolv.conf + rm -f /etc/resolv.conf-"${dev}".sv + fi +fi + +if [ -n "${RC_SVCNAME}" ]; then + # Re-enter the init script to start any dependant services + if /etc/init.d/"${RC_SVCNAME}" --quiet status ; then + export IN_BACKGROUND=true + /etc/init.d/"${RC_SVCNAME}" --quiet stop + fi +fi + +exit 0 + +# vim: ts=4 : diff --git a/user/openvpn/openvpn.initd b/user/openvpn/openvpn.initd new file mode 100644 index 000000000..dae0e3833 --- /dev/null +++ b/user/openvpn/openvpn.initd @@ -0,0 +1,130 @@ +#!/sbin/openrc-run + +extra_commands="checkconfig" + +instance_name=${RC_SVCNAME#*.} +[ "$instance_name" != "openvpn" ] \ + && name="OpenVPN ($instance_name)" \ + || name="OpenVPN" + +# Upper case variables are for backward compatibility with Alpine < v3.8. +: ${cfgdir:=${VPNDIR:-"/etc/openvpn"}} +: ${cfgfile:="$cfgdir/$instance_name.conf"} +: ${detect_client:="${DETECT_CLIENT:-yes}"} +: ${up_script:="$cfgdir/up.sh"} +: ${down_script:="$cfgdir/down.sh"} +: ${peer_dns:=${PEER_DNS:-"yes"}} + +pidfile="/run/$RC_SVCNAME.pid" +command="/usr/sbin/openvpn" +command_args=" + --daemon + --config $cfgfile + --writepid $pidfile + --setenv RC_SVCNAME $RC_SVCNAME + --setenv PEER_DNS $peer_dns" + +required_dirs="$cfgdir" +required_files="$cfgfile" + + +depend() { + need localmount net + use dns + after bootmisc +} + +checkconfig() { + # Note: This is not just a check; we need to detect the mode both for + # "start" and "checkconfig" commands, that's why it's here. + if [ -z "$client_mode" ] && yesno "$detect_client"; then + cfgfile_has_option 'remote' \ + && client_mode=yes \ + || client_mode=no + fi + + if [ ! -e /dev/net/tun ]; then + if ! modprobe tun; then + eerror "TUN/TAP support is not available in this kernel" + return 1 + fi + fi + if [ -h /dev/net/tun ] && [ -c /dev/misc/net/tun ]; then + ebegin "Detected broken /dev/net/tun symlink, fixing..." + rm -f /dev/net/tun + ln -s /dev/misc/net/tun /dev/net/tun + eend $? + fi + + if yesno "$client_mode"; then + local f; for f in "$up_script" "$down_script"; do + [ -r "$f" ] || { eerror "'$f' is not readable"; return 1; } + done + + # Warn about setting scripts as we override them + if cfgfile_has_option "(up|down)"; then + ewarn "WARNING: You have defined your own up/down scripts" + ewarn "As you're running as a client, we now force Alpine specific" + ewarn "scripts to be run for up and down events." + ewarn "These scripts will call /etc/openvpn/$RC_SVCNAME-{up,down}.sh" + ewarn "where you can put your own code." + fi + # Warn about the inability to change ip/route/dns information when + # dropping privs + if cfgfile_has_option "user"; then + ewarn "WARNING: You are dropping root privileges!" + ewarn "As such openvpn may not be able to change ip, routing" + ewarn "or DNS configuration." + fi + fi +} + +start_pre() { + checkconfig || return 1 + + if yesno "$client_mode"; then + command_args="$command_args + --up-delay + --up-restart + --down-pre + --script-security 2 + --up $up_script + --down $down_script" + start_inactive="yes" + else + # Run as openvpn unless otherwise specified. + cfgfile_has_option "user" || command_args="$command_args --user openvpn" + cfgfile_has_option "group" || command_args="$command_args --group openvpn" + fi + + # If the config file does not specify the cd option, we do. + # But if we specify it, we override the config option which we do not want. + if cfgfile_has_option "cd"; then + command_args="$command_args --cd $cfgdir" + fi +} + +start() { + # If we are re-called by the up.sh script, then we don't actually want + # to start OpenVPN. We do this so we can "start" ourselves from + # inactive (from the up.sh script) which then triggers other + # services to start which depend on us. + yesno "$IN_BACKGROUND" && return 0 + + default_start +} + +stop() { + # If we are re-called by the down.sh script, then we don't actually + # want to stop OpenVPN. + if yesno "$IN_BACKGROUND"; then + mark_service_inactive "$RC_SVCNAME" + return 0 + fi + + default_stop +} + +cfgfile_has_option() { + grep -Eq "^\s*$1\s" "$cfgfile" +} diff --git a/user/openvpn/openvpn.pre-install b/user/openvpn/openvpn.pre-install new file mode 100644 index 000000000..c07253531 --- /dev/null +++ b/user/openvpn/openvpn.pre-install @@ -0,0 +1,6 @@ +#!/bin/sh + +addgroup -S openvpn 2>/dev/null +adduser -S -D -H -h /dev/null -s /sbin/nologin -G openvpn -g openvpn openvpn 2>/dev/null + +exit 0 diff --git a/user/openvpn/openvpn.up b/user/openvpn/openvpn.up new file mode 100644 index 000000000..2923bef7a --- /dev/null +++ b/user/openvpn/openvpn.up @@ -0,0 +1,82 @@ +#!/bin/sh +# Copyright (c) 2006-2007 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# Contributed by Roy Marples (uberlord@gentoo.org) + +# Setup our resolv.conf +# Vitally important that we use the domain entry in resolv.conf so we +# can setup the nameservers are for the domain ONLY in resolvconf if +# we're using a decent dns cache/forwarder like dnsmasq and NOT nscd/libc. +# nscd/libc users will get the VPN nameservers before their other ones +# and will use the first one that responds - maybe the LAN ones? +# non resolvconf users just the the VPN resolv.conf + +# FIXME:- if we have >1 domain, then we have to use search :/ +# We need to add a flag to resolvconf to say +# "these nameservers should only be used for the listed search domains +# if other global nameservers are present on other interfaces" +# This however, will break compatibility with Debians resolvconf +# A possible workaround would be to just list multiple domain lines +# and try and let resolvconf handle it + +if [ "${PEER_DNS}" != "no" ]; then + NS= + DOMAIN= + SEARCH= + i=1 + while true ; do + eval opt=\$foreign_option_${i} + [ -z "${opt}" ] && break + if [ "${opt}" != "${opt#dhcp-option DOMAIN *}" ] ; then + if [ -z "${DOMAIN}" ] ; then + DOMAIN="${opt#dhcp-option DOMAIN *}" + else + SEARCH="${SEARCH}${SEARCH:+ }${opt#dhcp-option DOMAIN *}" + fi + elif [ "${opt}" != "${opt#dhcp-option DNS *}" ] ; then + NS="${NS}nameserver ${opt#dhcp-option DNS *}\n" + fi + i=$((${i} + 1)) + done + + if [ -n "${NS}" ] ; then + DNS="# Generated by openvpn for interface ${dev}\n" + if [ -n "${SEARCH}" ] ; then + DNS="${DNS}search ${DOMAIN} ${SEARCH}\n" + elif [ -n "${DOMAIN}" ]; then + DNS="${DNS}domain ${DOMAIN}\n" + fi + DNS="${DNS}${NS}" + if [ -x /sbin/resolvconf ] ; then + printf "${DNS}" | /sbin/resolvconf -a "${dev}" + else + # Preserve the existing resolv.conf + if [ -e /etc/resolv.conf ] ; then + cp /etc/resolv.conf /etc/resolv.conf-"${dev}".sv + fi + printf "${DNS}" > /etc/resolv.conf + chmod 644 /etc/resolv.conf + fi + fi +fi + +# Below section is Gentoo specific +# Quick summary - our init scripts are re-entrant and set the RC_SVCNAME env var +# as we could have >1 openvpn service + +if [ -n "${RC_SVCNAME}" ]; then + # If we have a service specific script, run this now + if [ -x /etc/openvpn/"${RC_SVCNAME}"-up.sh ] ; then + /etc/openvpn/"${RC_SVCNAME}"-up.sh "$@" + fi + + # Re-enter the init script to start any dependant services + if ! /etc/init.d/"${RC_SVCNAME}" --quiet status ; then + export IN_BACKGROUND=true + /etc/init.d/${RC_SVCNAME} --quiet start + fi +fi + +exit 0 + +# vim: ts=4 : diff --git a/user/oprofile/APKBUILD b/user/oprofile/APKBUILD new file mode 100644 index 000000000..90641b0e3 --- /dev/null +++ b/user/oprofile/APKBUILD @@ -0,0 +1,42 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: A. Wilcox <awilfox@adelielinux.org> +pkgname=oprofile +pkgver=1.3.0 +pkgrel=0 +pkgdesc="System profiler for Linux" +url="http://oprofile.sourceforge.net/news/" +arch="all" +license="GPL-2.0-only" +depends="" +makedepends="binutils-dev libpfm-dev popt-dev" +subpackages="$pkgname-doc" +source="https://prdownloads.sourceforge.net/oprofile/oprofile-$pkgver.tar.gz + disable-regex-test.patch + posixise.patch + " + +build() { + cd "$builddir" + CXXFLAGS="$CXXFLAGS" ./configure \ + --build=$CBUILD \ + --host=$CHOST \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --localstatedir=/var + make +} + +check() { + cd "$builddir" + make check +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install +} + +sha512sums="02a940cd8d38834dca2a97c8ac0fff04ef95b3819cfdf74a462b9326c7abbf2dc55d2a9b9d1fbefc7f455465bf85516be2b879d7daf1861ba2c4af51214377ba oprofile-1.3.0.tar.gz +9ad0e25f2ab165e6613d8fbd65b652fb82b41beef28f9edca6b763001d50fb5f35e433454a7beeecaa1d0d3adc9c9f16adc6d4d9f20ae9d27cc3120c04906576 disable-regex-test.patch +831fd9b18df0daaa01682c50479f432e81da951550db6d0b11315232b728517493533b41b46fd64f3e74405b8d515fb86d7b4b96898cf45b262a7e790a131740 posixise.patch" diff --git a/user/oprofile/disable-regex-test.patch b/user/oprofile/disable-regex-test.patch new file mode 100644 index 000000000..7904cae4f --- /dev/null +++ b/user/oprofile/disable-regex-test.patch @@ -0,0 +1,11 @@ +--- oprofile-1.3.0/libregex/tests/Makefile.in.old 2018-07-16 19:39:39.000000000 +0000 ++++ oprofile-1.3.0/libregex/tests/Makefile.in 2018-10-10 20:38:01.400000000 +0000 +@@ -87,7 +87,7 @@ + POST_UNINSTALL = : + build_triplet = @build@ + host_triplet = @host@ +-check_PROGRAMS = regex_test$(EXEEXT) java_test$(EXEEXT) ++check_PROGRAMS = java_test$(EXEEXT) + TESTS = $(check_PROGRAMS) + subdir = libregex/tests + ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 diff --git a/user/oprofile/posixise.patch b/user/oprofile/posixise.patch new file mode 100644 index 000000000..85e064b8c --- /dev/null +++ b/user/oprofile/posixise.patch @@ -0,0 +1,54 @@ +--- oprofile-1.3.0/libpe_utils/op_pe_utils.cpp.old 2018-07-16 18:58:37.000000000 +0000 ++++ oprofile-1.3.0/libpe_utils/op_pe_utils.cpp 2018-10-10 20:20:10.730000000 +0000 +@@ -530,7 +530,7 @@ + static string _handle_powerpc_event_spec(string event_spec) + { + FILE * fp; +- char line[MAX_INPUT]; ++ char line[_POSIX_MAX_INPUT]; + size_t grp_pos; + string evt, err_msg; + size_t evt_name_len; +@@ -579,7 +579,7 @@ + } + + err_msg = "Cannot find event "; +- while (fgets(line, MAX_INPUT, fp)) { ++ while (fgets(line, _POSIX_MAX_INPUT, fp)) { + if (!first_non_cyc_evt_found) { + if (!strncmp(line, "PM_", 3)) + first_non_cyc_evt_found = true; +--- oprofile-1.3.0/pe_profiling/operf.cpp.old 2016-08-08 15:03:27.000000000 +0000 ++++ oprofile-1.3.0/pe_profiling/operf.cpp 2018-10-10 20:27:23.190000000 +0000 +@@ -860,9 +860,9 @@ + { + if (remove(fpath)) { + perror("sample data removal error"); +- return FTW_STOP; ++ return -1; + } else { +- return FTW_CONTINUE; ++ return 0; + } + } + +@@ -897,7 +897,7 @@ + return; + + if (!operf_options::append) { +- int flags = FTW_DEPTH | FTW_ACTIONRETVAL; ++ int flags = FTW_DEPTH; + errno = 0; + if (nftw(previous_sampledir.c_str(), __delete_old_previous_sample_data, 32, flags) !=0 && + errno != ENOENT) { +--- oprofile-1.3.0/libop/op_events.c.old 2018-01-18 16:46:48.000000000 +0000 ++++ oprofile-1.3.0/libop/op_events.c 2018-10-11 00:34:04.362677027 +0000 +@@ -83,7 +83,7 @@ + static u64 parse_long_hex(char const * str) + { + u64 value; +- if (sscanf(str, "%Lx", &value) != 1) ++ if (sscanf(str, "%llx", &value) != 1) + parse_error("expected long hexadecimal value"); + + fflush(stderr); diff --git a/user/opusfile/APKBUILD b/user/opusfile/APKBUILD index 9d92f0276..fa68d8249 100644 --- a/user/opusfile/APKBUILD +++ b/user/opusfile/APKBUILD @@ -1,7 +1,7 @@ # Maintainer: pkgname=opusfile -pkgver=0.10 -pkgrel=1 +pkgver=0.11 +pkgrel=0 pkgdesc="High-level API for decoding and seeking within .opus files" url="http://www.opus-codec.org/" arch="all" @@ -37,4 +37,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="302601c31ca28bff175cefa99ac16177122a786d043be229616e2c98b7ffaf4a96b8bb17ca16e31240325a92763f417315b54d8f1b2f4f63f445cb7ad43c4a37 opusfile-0.10.tar.gz" +sha512sums="ec3e282310cc4f25475c27b7bc8d1652dcb25d3ac6badf87bd1b4e5397fbe106a0dab81c60d88d198003a23d8a2c9bae8b661edc9b31433effeca438ce56a349 opusfile-0.11.tar.gz" diff --git a/user/orage/APKBUILD b/user/orage/APKBUILD new file mode 100644 index 000000000..48f5ef945 --- /dev/null +++ b/user/orage/APKBUILD @@ -0,0 +1,38 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=orage +pkgver=4.12.1 +pkgrel=0 +pkgdesc="Calendaring software for the XFCE desktop environment" +url="https://xfce.org" +arch="all" +license="GPL-2.0+ AND BSD-3-Clause AND (LGPL-2.1-only OR MPL-1.0) AND (GPL-2.0+ OR Artistic-2.0) AND MPL-1.0 AND BSD-2-Clause AND LGPL-2.0+" +makedepends="intltool gtk+2.0-dev dbus-glib-dev libnotify-dev popt-dev + xfce4-panel-dev" +subpackages="$pkgname-doc $pkgname-lang" +langdir="/usr/lib/locale" +source="http://archive.xfce.org/src/apps/orage/4.12/orage-$pkgver.tar.bz2" + +build() { + cd "$builddir" + ./configure \ + --build=$CBUILD \ + --host=$CHOST \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --localstatedir=/var + make +} + +check() { + cd "$builddir" + make check +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install +} + +sha512sums="3fec0201171140586cdc9bcf151450a7086515e18b5815afe4fe4c4726ba554c50582b0479e52985b330140c51b7233ef81f678f986f848afbeee74c66b2d196 orage-4.12.1.tar.bz2" diff --git a/user/p11-kit/APKBUILD b/user/p11-kit/APKBUILD index 0f8a65a8f..f9e45cfd8 100644 --- a/user/p11-kit/APKBUILD +++ b/user/p11-kit/APKBUILD @@ -1,7 +1,7 @@ # Contributor: Fabian Affolter <fabian@affolter-engineering.ch> # Maintainer: pkgname=p11-kit -pkgver=0.23.12 +pkgver=0.23.14 pkgrel=0 pkgdesc="Library for loading and sharing PKCS#11 modules" url="https://p11-glue.github.io/p11-glue/p11-kit.html" @@ -46,4 +46,4 @@ trust() { "$subpkgdir"/usr/lib/pkcs11/ } -sha512sums="ae43b1f6ba5400cf5ae7b64b8c93aa47e5c7ee927196828600fd88beb6fdf6bcb6a63bc822d356757255638f9fbf10896e0604e32a1332a9a833836fa0468726 p11-kit-0.23.12.tar.gz" +sha512sums="fc7e7e0745d7f8e5d783a1f38bad9bbe65b56d54897b6ba2c3118a0d912451c2d48dd113a875e7f7bfcff8fbd6b4905472fcd120630661c12029a16d2b13add4 p11-kit-0.23.14.tar.gz" diff --git a/user/pango/APKBUILD b/user/pango/APKBUILD index f2f8db1a3..aff854dc0 100644 --- a/user/pango/APKBUILD +++ b/user/pango/APKBUILD @@ -1,6 +1,6 @@ # Maintainer: pkgname=pango -pkgver=1.42.1 +pkgver=1.42.4 pkgrel=0 pkgdesc="Library for laying out and rendering text" url="https://www.pango.org/" @@ -31,4 +31,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="70f0519fdcb896880a9552ed1f3ef85e3e7b99a161818e7c3a5ac851b64366544393546336bfdc1d66ecfc1aa4791b65ff4182ca9f6e93455ca154fbc9cbef80 pango-1.42.1.tar.xz" +sha512sums="993e97f647eba0c5ed90bcfcb8228bf67fa3f20b1f4331e4e40a30788d7c3ac55eee1209471bf21df125cb8fc6121acc8062a9da2f8a7d6cbe8e9ad13a9320dc pango-1.42.4.tar.xz" diff --git a/user/parole/APKBUILD b/user/parole/APKBUILD new file mode 100644 index 000000000..ad29a1cfb --- /dev/null +++ b/user/parole/APKBUILD @@ -0,0 +1,38 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=parole +pkgver=1.0.1 +pkgrel=0 +pkgdesc="GStreamer-based media player for the XFCE desktop environment" +url="https://xfce.org" +arch="all" +license="GPL-2.0+ AND LGPL-2.1+" +makedepends="intltool gtk+3.0-dev dbus-glib-dev libxfce4ui-dev gstreamer-dev + gst-plugins-base-dev libnotify-dev libice-dev" +subpackages="$pkgname-dev $pkgname-lang" +langdir="/usr/lib/locale" +source="http://archive.xfce.org/src/apps/parole/1.0/parole-$pkgver.tar.bz2" + +build() { + cd "$builddir" + LIBS="-lX11" ./configure \ + --build=$CBUILD \ + --host=$CHOST \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --localstatedir=/var + make +} + +check() { + cd "$builddir" + make check +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install +} + +sha512sums="026ece62e6a8175976e7ce218edbd6955a0cdb5074996adad5bed3e536f90108e4d1106f22edcb06d213fb09dd47b04f81bff94f4534710b61f0f53cb0395f72 parole-1.0.1.tar.bz2" diff --git a/user/password-store/APKBUILD b/user/password-store/APKBUILD index 29880d54d..f8830a2ef 100644 --- a/user/password-store/APKBUILD +++ b/user/password-store/APKBUILD @@ -2,7 +2,7 @@ # Contributor: Johannes Matheis <jomat+alpinebuild@jmt.gr> # Maintainer: Dan Theisen <djt@hxx.in> pkgname=password-store -pkgver=1.7.2 +pkgver=1.7.3 pkgrel=0 pkgdesc="Stores, retrieves, generates, and synchronizes passwords securely" url="https://www.passwordstore.org" @@ -61,4 +61,4 @@ zshcomp() { "$subpkgdir"/usr/share/zsh/site-functions } -sha512sums="e6719a7125af6ecd80fdbeb38b4e2e89e7358ff16e18739d68a04b72dfdf860294b54f7ec0ec9676a62d2e270db8f54784a357c82217a478694472f8136e3657 password-store-1.7.2.tar.xz" +sha512sums="89755a7b02f05d75055a9fc14fd3f456c0a49ec31bdffd097a027f91228c64a98b18c1e80017aeda811773ae3287ff1b9737532da8ded06799d8fe3979ca06f7 password-store-1.7.3.tar.xz" diff --git a/user/pciutils/APKBUILD b/user/pciutils/APKBUILD index a58a509e4..92964b95f 100644 --- a/user/pciutils/APKBUILD +++ b/user/pciutils/APKBUILD @@ -1,7 +1,7 @@ # Contributor: Leonardo Arena <rnalrd@alpinelinux.org> # Maintainer: pkgname=pciutils -pkgver=3.6.1 +pkgver=3.6.2 pkgrel=0 pkgdesc="PCI bus configuration space access library and tools" url="http://mj.ucw.cz/pciutils.html" @@ -44,6 +44,6 @@ package() { } -sha512sums="c45ba5b42c6f03a50df75f4f4f33ec1feef8f0cae1217802e6c4351e88da23431e0273f6776fa076f4d1f8c73ed20433392bc11fe1478db98dc482d2de75dd92 pciutils-3.6.1.tar.gz +sha512sums="a9332f07755ab8af6ba99a5fa3cf739b0f3688276902673b9fe981955c4fa732c3d0ccaa150942ecaf4b263a10c2653f5454aa87492cac1dd805f33500fac489 pciutils-3.6.2.tar.gz 520b39602078e4325d7dac2d460547b360f7b52c668d88cf3d776c59246c8cfcb537b7b4f50575da9d2fcea1e207b3e99626ce4f23df890d2565b7dac1db2d94 fix-linking-pci-malloc-Makefile.patch aa1d3272500180256929b39a5fc4ea38ddb6a9fad090d732832ded9cc396303cf56efc91cfdeb76edbcfefc9a7c8eb058562c3c2b09a9090a59d3e68c27cec62 pread.patch" diff --git a/user/perl-algorithm-diff/APKBUILD b/user/perl-algorithm-diff/APKBUILD new file mode 100644 index 000000000..5e0c60775 --- /dev/null +++ b/user/perl-algorithm-diff/APKBUILD @@ -0,0 +1,34 @@ +# Contributor: Dan Theisen <djt@hxx.in> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-algorithm-diff +pkgver=1.1903 +pkgrel=0 +pkgdesc="Compute 'intelligent' differences between two files / lists" +url="https://metacpan.org/pod/Algorithm::Diff" +arch="noarch" +license="Artistic-1.0-Perl AND GPL-2.0" +depends="perl" +makedepends="perl-dev" +install="" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/T/TY/TYEMQ/Algorithm-Diff-$pkgver.tar.gz" +builddir="$srcdir/Algorithm-Diff-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="61632be4c19a03ccacaa218ab7cb8bdbc53a4a6030b8173a59c7611056375536788392c1da00ab88f3df9884fc8a67825efc83b70e2e564664d5187021d6b106 Algorithm-Diff-1.1903.tar.gz" diff --git a/user/perl-any-moose/APKBUILD b/user/perl-any-moose/APKBUILD new file mode 100644 index 000000000..eed2735ca --- /dev/null +++ b/user/perl-any-moose/APKBUILD @@ -0,0 +1,34 @@ +# Contributor: Dan Theisen <djt@hxx.in> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-any-moose +pkgver=0.27 +pkgrel=0 +pkgdesc="Deprecated Moose Mouse abstraction layer" +url="https://metacpan.org/pod/Any::Moose" +arch="noarch" +license="Artistic-1.0-Perl AND GPL-2.0" +depends="perl perl-mouse" +makedepends="perl-dev" +install="" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/E/ET/ETHER/Any-Moose-$pkgver.tar.gz" +builddir="$srcdir/Any-Moose-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="5c97caf2e64462bae95fc4d5dd41868c01f856bd8f74872985254b7cc6ce0e13b4accad7955047ff5c4013399f7aea2ad6d48ae3592883a3b6cd20c0e4478b7b Any-Moose-0.27.tar.gz" diff --git a/user/perl-anyevent/APKBUILD b/user/perl-anyevent/APKBUILD new file mode 100644 index 000000000..f97e983eb --- /dev/null +++ b/user/perl-anyevent/APKBUILD @@ -0,0 +1,34 @@ +# Contributor: Dan Theisen <djt@hxx.in> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-anyevent +pkgver=7.14 +pkgrel=0 +pkgdesc="The DBI of event loop programming" +url="https://metacpan.org/pod/AnyEvent" +arch="noarch" +license="Artistic-1.0-Perl AND GPL-2.0" +depends="perl" +makedepends="perl-dev" +install="" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/M/ML/MLEHMANN/AnyEvent-$pkgver.tar.gz" +builddir="$srcdir/AnyEvent-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="98e7b9e06cf74b99d3407a25b60f3b825fceed3bae43505e1fb90785e24bd88ae25955cff25d29b4cc96957db7f4f5203d19ad2365abb4e3a3227fd91a16fb25 AnyEvent-7.14.tar.gz" diff --git a/user/perl-appconfig/APKBUILD b/user/perl-appconfig/APKBUILD new file mode 100644 index 000000000..3b517cf02 --- /dev/null +++ b/user/perl-appconfig/APKBUILD @@ -0,0 +1,33 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-appconfig +pkgver=1.71 +pkgrel=0 +pkgdesc="Perl modules for reading configuration and parsing command line arguments" +url="https://metacpan.org/release/AppConfig" +arch="noarch" +license="Artistic-1.0-Perl" +depends="" +makedepends="perl-dev" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/N/NE/NEILB/AppConfig-$pkgver.tar.gz" +builddir="$srcdir/AppConfig-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="cbd58601ce0ea6c237e86b8b013cf75e552914263f56b1ab26b8079bff75b28ca2bb35585bfaa187b611afa969767c25494d3ec2a6b3ff5d1aecd2f9ffa8df72 AppConfig-1.71.tar.gz" diff --git a/user/perl-b-hooks-endofscope/APKBUILD b/user/perl-b-hooks-endofscope/APKBUILD new file mode 100644 index 000000000..0d9d641c2 --- /dev/null +++ b/user/perl-b-hooks-endofscope/APKBUILD @@ -0,0 +1,34 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-b-hooks-endofscope +pkgver=0.24 +pkgrel=0 +pkgdesc="Execute Perl code after a scope finished compilation" +url="https://metacpan.org/release/B-Hooks-EndOfScope" +arch="noarch" +license="Artistic-1.0-Perl" +depends="perl-module-implementation perl-sub-exporter-progressive perl-sub-name + perl-variable-magic" +makedepends="perl-dev" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/E/ET/ETHER/B-Hooks-EndOfScope-$pkgver.tar.gz" +builddir="$srcdir/B-Hooks-EndOfScope-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="5c061a81a3fed88ad868a14a1f817f7952b2f0c9512408174354e0ecf7e3caa5d646054cf75efa8b8c558e6241a8dfebf9400e8826021bdb5cbdf3a00065b147 B-Hooks-EndOfScope-0.24.tar.gz" diff --git a/user/perl-canary-stability/APKBUILD b/user/perl-canary-stability/APKBUILD new file mode 100644 index 000000000..f68eadfc0 --- /dev/null +++ b/user/perl-canary-stability/APKBUILD @@ -0,0 +1,34 @@ +# Contributor: Dan Theisen <djt@hxx.in> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-canary-stability +pkgver=2012 +pkgrel=0 +pkgdesc="Canary to check Perl compatibility for schmorp's modules" +url="https://metacpan.org/pod/Canary::Stability" +arch="noarch" +license="Artistic-1.0-Perl AND GPL-2.0" +depends="perl" +makedepends="perl-dev" +install="" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/M/ML/MLEHMANN/Canary-Stability-$pkgver.tar.gz" +builddir="$srcdir/Canary-Stability-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="7780731e4142d536182e1820c041c43ae67c5b47c044f15d8dcc060646bbab10a974bddcb703fdb27f427db3cd4dbdff54e131dc708c0260d7275be869eb27b1 Canary-Stability-2012.tar.gz" diff --git a/user/perl-capture-tiny/APKBUILD b/user/perl-capture-tiny/APKBUILD new file mode 100644 index 000000000..1ac11f9d0 --- /dev/null +++ b/user/perl-capture-tiny/APKBUILD @@ -0,0 +1,43 @@ +# Automatically generated by apkbuild-cpan, template 1 +# Contributor: Francesco Colista <fcolista@alpinelinux.org> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-capture-tiny +_pkgreal=Capture-Tiny +pkgver=0.48 +pkgrel=0 +pkgdesc="Capture STDOUT and STDERR from Perl, XS or external programs" +url="https://metacpan.org/release/Capture-Tiny" +arch="noarch" +license="Apache-2.0" +cpandepends="" +cpanmakedepends="" +depends="$cpandepends" +makedepends="perl-dev $cpanmakedepends" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/D/DA/DAGOLDEN/$_pkgreal-$pkgver.tar.gz" +builddir="$srcdir/$_pkgreal-$pkgver" + +prepare() { + cd "$builddir" + export CFLAGS=`perl -MConfig -E 'say $Config{ccflags}'` + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor +} + +build() { + cd "$builddir" + export CFLAGS=`perl -MConfig -E 'say $Config{ccflags}'` + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="96d140b33a5ee147804925353ec5b49b806fa9c98b4ac23ec9c9494828f52ac72fd6f69c08e14ada18e5187dc4cece3d72901ce07b12eef20595322161a98437 Capture-Tiny-0.48.tar.gz" diff --git a/user/perl-cgi/APKBUILD b/user/perl-cgi/APKBUILD new file mode 100644 index 000000000..09fca609f --- /dev/null +++ b/user/perl-cgi/APKBUILD @@ -0,0 +1,34 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-cgi +pkgver=4.40 +pkgrel=0 +pkgdesc="Handle CGI requests and responses in Perl" +url="https://metacpan.org/release/CGI" +arch="noarch" +license="Artistic-1.0-Perl" +depends="perl-html-parser" +makedepends="perl-dev" +checkdepends="perl-test-deep perl-test-nowarnings perl-test-warn" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/L/LE/LEEJO/CGI-$pkgver.tar.gz" +builddir="$srcdir/CGI-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="317cc410d8cc630067759cc05b8643e0c3fe4e55307c437176892a625b88d46443c3e0ff4361e066c54f95c3573e5fa8c21e23069071fa0dc74fc2d93dca13c1 CGI-4.40.tar.gz" diff --git a/user/perl-class-data-inheritable/APKBUILD b/user/perl-class-data-inheritable/APKBUILD new file mode 100644 index 000000000..4e1745f22 --- /dev/null +++ b/user/perl-class-data-inheritable/APKBUILD @@ -0,0 +1,33 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-class-data-inheritable +pkgver=0.08 +pkgrel=0 +pkgdesc="Inheritable, overridable class data for Perl modules" +url="https://metacpan.org/release/Class-Data-Inheritable" +arch="noarch" +license="Artistic-1.0-Perl" +depends="" +makedepends="perl-dev" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/T/TM/TMTM/Class-Data-Inheritable-$pkgver.tar.gz" +builddir="$srcdir/Class-Data-Inheritable-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="bddc61096158b21d4cfa69538d5db0f53617a66c71447ee193141064f4f58194462b21e0a849510e24e4c263b13be3ee1bc6bb8504320e0a86c02b67ad1652c8 Class-Data-Inheritable-0.08.tar.gz" diff --git a/user/perl-class-load-xs/APKBUILD b/user/perl-class-load-xs/APKBUILD new file mode 100644 index 000000000..ebdcca147 --- /dev/null +++ b/user/perl-class-load-xs/APKBUILD @@ -0,0 +1,34 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-class-load-xs +pkgver=0.10 +pkgrel=0 +pkgdesc="Perl XS implementation of Class::Load" +url="https://metacpan.org/release/Class-Load-XS" +arch="all" +license="Artistic-2.0" +depends="perl-class-load" +makedepends="perl-dev" +checkdepends="perl-test-fatal perl-test-needs" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/E/ET/ETHER/Class-Load-XS-$pkgver.tar.gz" +builddir="$srcdir/Class-Load-XS-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="16ab845dc393567f0b0e9597eda7d7678b8a41d218823a166bacdfd4dc93e704a6aff98662340b8d7f4d045a60530071bb84ea8da8be5a6930af47722207d126 Class-Load-XS-0.10.tar.gz" diff --git a/user/perl-class-load/APKBUILD b/user/perl-class-load/APKBUILD new file mode 100644 index 000000000..a90d30bff --- /dev/null +++ b/user/perl-class-load/APKBUILD @@ -0,0 +1,35 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-class-load +pkgver=0.25 +pkgrel=0 +pkgdesc="Perl module for loading classes" +url="https://metacpan.org/release/Class-Load" +arch="noarch" +license="Artistic-1.0-Perl" +depends="perl-data-optlist perl-module-implementation perl-module-runtime + perl-package-stash perl-try-tiny" +makedepends="perl-dev" +checkdepends="perl-test-fatal perl-test-needs" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/E/ET/ETHER/Class-Load-$pkgver.tar.gz" +builddir="$srcdir/Class-Load-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="feacb4ae99358d3dc45b23b2d7cc814603e59a72424e7e0620d4939fa6d6206a1bb123c010b49013ce4764df11dc7c04fc1d7bd5783c61a391310bcb653e7ca4 Class-Load-0.25.tar.gz" diff --git a/user/perl-class-method-modifiers/APKBUILD b/user/perl-class-method-modifiers/APKBUILD new file mode 100644 index 000000000..7d22c357d --- /dev/null +++ b/user/perl-class-method-modifiers/APKBUILD @@ -0,0 +1,35 @@ +# Contributor: Dan Theisen <djt@hxx.in> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-class-method-modifiers +pkgver=2.12 +pkgrel=0 +pkgdesc="Provides Moose-like method modifiers" +url="https://metacpan.org/pod/Class::Method::Modifiers" +arch="noarch" +license="Artistic-1.0-Perl AND GPL-2.0" +depends="perl" +makedepends="perl-dev" +checkdepends="perl-test-requires perl-test-fatal" +install="" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/E/ET/ETHER/Class-Method-Modifiers-$pkgver.tar.gz" +builddir="$srcdir/Class-Method-Modifiers-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="18c7cdff214d39a475b116cc5e6dda043c31765bcdfa9a1fa7242ce61e42583c4981d41a43ba556fb5a057e0cfbd5e52dd60048ea7dfae0fec3618dc47876dd4 Class-Method-Modifiers-2.12.tar.gz" diff --git a/user/perl-class-xsaccessor/APKBUILD b/user/perl-class-xsaccessor/APKBUILD new file mode 100644 index 000000000..6ef87555a --- /dev/null +++ b/user/perl-class-xsaccessor/APKBUILD @@ -0,0 +1,33 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: A. Wilcox <awilfox@adelielinux.org> +pkgname=perl-class-xsaccessor +pkgver=1.19 +pkgrel=0 +pkgdesc="Perl module to generate fast XS accessors without compilation" +url="https://metacpan.org/release/Class-XSAccessor" +arch="all" +license="Artistic-1.0-Perl" +depends="" +makedepends="perl-dev" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/S/SM/SMUELLER/Class-XSAccessor-$pkgver.tar.gz" +builddir="$srcdir/Class-XSAccessor-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="58855bb2108b60cc90ae1d1c4d6a011da7bac2d063c7c953ff8610ae164ba60731a664f0fbddf148e1eabb60042913a17633a9c9a8936a23a59130b381bf63f8 Class-XSAccessor-1.19.tar.gz" diff --git a/user/perl-code-tidyall/APKBUILD b/user/perl-code-tidyall/APKBUILD new file mode 100644 index 000000000..ed36959e5 --- /dev/null +++ b/user/perl-code-tidyall/APKBUILD @@ -0,0 +1,40 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-code-tidyall +pkgver=0.71 +pkgrel=0 +pkgdesc="Your all-in-one Perl code tidier and validator" +url="https://metacpan.org/release/Code-TidyAll" +arch="noarch" +license="Artistic-1.0-Perl" +depends="perl-capture-tiny perl-config-ini perl-file-pushd perl-file-which + perl-ipc-run3 perl-ipc-system-simple perl-list-compare + perl-list-someutils perl-log-any perl-module-runtime perl-moo + perl-path-tiny perl-scope-guard perl-specio + perl-specio-library-path-tiny perl-text-diff perl-timedate + perl-time-duration-parse perl-try-tiny" +makedepends="perl-dev" +checkdepends="perl-lib-relative perl-test-class-most perl-test-differences + perl-test-fatal perl-test-warnings" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/D/DR/DROLSKY/Code-TidyAll-$pkgver.tar.gz" +builddir="$srcdir/Code-TidyAll-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="b8d29eaceedf95ce8dc92142a861a7f552443dd713cbfe4a273bcbaa7222ec48646bde434e81cc209adde07d5a2f6e2d6b408e7427dfc574df0af884c8a61f92 Code-TidyAll-0.71.tar.gz" diff --git a/user/perl-common-sense/APKBUILD b/user/perl-common-sense/APKBUILD new file mode 100644 index 000000000..8f159d0b3 --- /dev/null +++ b/user/perl-common-sense/APKBUILD @@ -0,0 +1,34 @@ +# Contributor: Dan Theisen <djt@hxx.in> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-common-sense +pkgver=3.74 +pkgrel=0 +pkgdesc="Implements some (in)sane defaults for Perl programs" +url="https://metacpan.org/pod/common::sense" +arch="noarch" +license="Artistic-1.0-Perl AND GPL-2.0" +depends="perl" +makedepends="perl-dev" +install="" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/M/ML/MLEHMANN/common-sense-$pkgver.tar.gz" +builddir="$srcdir/common-sense-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="658ad70a2d1bbd0b26f91c4ea5d69b4cc0b632ede9532b88282987002a5e280f0475d63ee846b7bd2d38ef82f2680e20c2093803e4b62a984750ed447f318d60 common-sense-3.74.tar.gz" diff --git a/user/perl-config-ini/APKBUILD b/user/perl-config-ini/APKBUILD new file mode 100644 index 000000000..fd92f0812 --- /dev/null +++ b/user/perl-config-ini/APKBUILD @@ -0,0 +1,33 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-config-ini +pkgver=0.025 +pkgrel=0 +pkgdesc="Simple .ini file format handler for Perl" +url="https://metacpan.org/release/Config-INI" +arch="noarch" +license="Artistic-1.0-Perl" +depends="perl-mixin-linewise" +makedepends="perl-dev" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/R/RJ/RJBS/Config-INI-$pkgver.tar.gz" +builddir="$srcdir/Config-INI-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="2831e2611409c1f09029b37e56bcbc875051cf9ac5e458f38fbac29a3e48665f49ea9ac66519eeee71e9b52b2c702507eb801c518a8417bbf0806270b0bc4155 Config-INI-0.025.tar.gz" diff --git a/user/perl-cpan-meta-check/APKBUILD b/user/perl-cpan-meta-check/APKBUILD new file mode 100644 index 000000000..e23edf9b9 --- /dev/null +++ b/user/perl-cpan-meta-check/APKBUILD @@ -0,0 +1,34 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-cpan-meta-check +pkgver=0.014 +pkgrel=0 +pkgdesc="Verify requirements in a Perl CPAN::Meta object" +url="https://metacpan.org/release/CPAN-Meta-Check" +arch="noarch" +license="Artistic-1.0-Perl" +depends="" +makedepends="perl-dev" +checkdepends="perl-test-deep" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/L/LE/LEONT/CPAN-Meta-Check-$pkgver.tar.gz" +builddir="$srcdir/CPAN-Meta-Check-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="a10af09a7ce771ca3983adea8053d141750fd09849609a28e7f973831fd3a3ece55281841aec93c099154bb59135986da4983bf612ae4e956c45dbb3f2770f5e CPAN-Meta-Check-0.014.tar.gz" diff --git a/user/perl-cwd-guard/APKBUILD b/user/perl-cwd-guard/APKBUILD new file mode 100644 index 000000000..5976741ef --- /dev/null +++ b/user/perl-cwd-guard/APKBUILD @@ -0,0 +1,39 @@ +# Contributor: Dan Theisen <djt@hxx.in> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-cwd-guard +pkgver=0.05 +pkgrel=0 +pkgdesc="Temporary changing working directory (chdir)" +url="https://metacpan.org/pod/Cwd::Guard" +arch="noarch" +license="Artistic-1.0-Perl AND GPL-2.0" +depends="perl" +makedepends="perl-dev perl-module-build" +checkdepends="perl-test-requires" +install="" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/K/KA/KAZEBURO/Cwd-Guard-$pkgver.tar.gz" +builddir="$srcdir/Cwd-Guard-$pkgver" + +prepare() { + cd "$builddir" + perl Build.PL installdirs=vendor +} + +build() { + cd "$builddir" + ./Build +} + +check() { + cd "$builddir" + ./Build test +} + +package() { + cd "$builddir" + ./Build install destdir="$pkgdir" + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="14aa68e535cec8f7182d5648558c539cbf6eebe2fee9c59d0b06f5b45cca1c6c652104a58f71b5a56f796f03d139e3e74962e45fb127bf038803b05cb9f32b82 Cwd-Guard-0.05.tar.gz" diff --git a/user/perl-data-dump/APKBUILD b/user/perl-data-dump/APKBUILD new file mode 100644 index 000000000..26deca4d9 --- /dev/null +++ b/user/perl-data-dump/APKBUILD @@ -0,0 +1,32 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=perl-data-dump +pkgver=1.23 +pkgrel=0 +pkgdesc="Perl module for outputting data structures" +url="https://metacpan.org/pod/Data::Dump" +arch="noarch" +license="Artistic-1.0-Perl AND GPL-2.0+" +depends="perl" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/G/GA/GAAS/Data-Dump-$pkgver.tar.gz" +builddir="$srcdir/Data-Dump-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="6fd6c23bb6df7f7396219149dbfd23132fc2ea1dd344c32f62fc27a1afeeb28d7ebf2d429184bb6d1189f412e218f9e62a966b49fdd9ad5564e5152d67a02b96 Data-Dump-1.23.tar.gz" diff --git a/user/perl-data-optlist/APKBUILD b/user/perl-data-optlist/APKBUILD new file mode 100644 index 000000000..c2f5f6308 --- /dev/null +++ b/user/perl-data-optlist/APKBUILD @@ -0,0 +1,34 @@ +# Contributor: Natanael Copa <ncopa@alpinelinux.org> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-data-optlist +_pkgreal=Data-OptList +pkgver=0.110 +pkgrel=0 +pkgdesc="Parse and validate simple name/value option pairs" +url="https://metacpan.org/release/Data-OptList" +arch="noarch" +license="GPL-1.0+ OR Artistic-1.0-Perl" +depends="perl perl-params-util perl-sub-install" +makedepends="perl-dev" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/R/RJ/RJBS/$_pkgreal-$pkgver.tar.gz" +builddir="$srcdir/$_pkgreal-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="68393958a38f509a71cfba61f6dff8303821918ba29ad8492af0c23cfd4f741c6ce98c4f68ad295f27e166287fc546229c430816f0bdd6009d4f60860c967b76 Data-OptList-0.110.tar.gz" diff --git a/user/perl-devel-checkcompiler/APKBUILD b/user/perl-devel-checkcompiler/APKBUILD new file mode 100644 index 000000000..6e99b7ced --- /dev/null +++ b/user/perl-devel-checkcompiler/APKBUILD @@ -0,0 +1,39 @@ +# Contributor: Dan Theisen <djt@hxx.in> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-devel-checkcompiler +pkgver=0.07 +pkgrel=0 +pkgdesc="Check the compiler's availability" +url="https://metacpan.org/pod/Devel::CheckCompiler" +arch="noarch" +license="Artistic-1.0-Perl AND GPL-2.0" +depends="perl" +makedepends="perl-dev perl-module-build-tiny" +install="" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/S/SY/SYOHEX/Devel-CheckCompiler-$pkgver.tar.gz" +builddir="$srcdir/Devel-CheckCompiler-$pkgver" + +prepare() { + cd "$builddir" + perl Build.PL --destdir="$pkgdir" --prefix="/usr" --installdirs=vendor +} + +build() { + cd "$builddir" + export CFLAGS=`perl -MConfig -E 'say $Config{ccflags}'` + ./Build +} + +check() { + cd "$builddir" + ./Build test +} + +package() { + cd "$builddir" + ./Build install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="147fbdab382ff40bf1402d2d6be1143fe77403cd2444e854fdf11eb02e8acdcab8cb6bbdd7f3aef01cc64fac2862efaa044c5148c7770b84b464f7360c399d7a Devel-CheckCompiler-0.07.tar.gz" diff --git a/user/perl-devel-globaldestruction/APKBUILD b/user/perl-devel-globaldestruction/APKBUILD new file mode 100644 index 000000000..af612cad4 --- /dev/null +++ b/user/perl-devel-globaldestruction/APKBUILD @@ -0,0 +1,34 @@ +# Contributor: Dan Theisen <djt@hxx.in> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-devel-globaldestruction +pkgver=0.14 +pkgrel=0 +pkgdesc="Provides Global Destruction for older perls" +url="https://metacpan.org/pod/Devel::GlobalDestruction" +arch="noarch" +license="Artistic-1.0-Perl AND GPL-2.0" +depends="perl perl-sub-exporter-progressive" +makedepends="perl-dev" +install="" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/H/HA/HAARG/Devel-GlobalDestruction-$pkgver.tar.gz" +builddir="$srcdir/Devel-GlobalDestruction-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="75c346feae98897fb202dea0295f0225bf3cac59f21915da5dd1cdcf845052f4f8bcd0362d357020fb0facb6358175112b3685860ca1c1f173421c7c6a54f45d Devel-GlobalDestruction-0.14.tar.gz" diff --git a/user/perl-devel-overloadinfo/APKBUILD b/user/perl-devel-overloadinfo/APKBUILD new file mode 100644 index 000000000..98601047e --- /dev/null +++ b/user/perl-devel-overloadinfo/APKBUILD @@ -0,0 +1,34 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-devel-overloadinfo +pkgver=0.005 +pkgrel=0 +pkgdesc="Introspect overloaded Perl operators" +url="https://metacpan.org/release/Devel-OverloadInfo" +arch="noarch" +license="Artistic-1.0-Perl" +depends="perl-mro-compat perl-package-stash perl-sub-identify" +makedepends="perl-dev" +checkdepends="perl-test-fatal" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/I/IL/ILMARI/Devel-OverloadInfo-$pkgver.tar.gz" +builddir="$srcdir/Devel-OverloadInfo-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="66ff0869ecd34b2a80e6c8052e9ba7cf396b85e25f2efa92e42447ae3164ac50f703ca4dbee38ac676b70caf19ce189a6d2a1d6322cf3af342d4edd5c0b336e7 Devel-OverloadInfo-0.005.tar.gz" diff --git a/user/perl-devel-stacktrace/APKBUILD b/user/perl-devel-stacktrace/APKBUILD new file mode 100644 index 000000000..1420b82f3 --- /dev/null +++ b/user/perl-devel-stacktrace/APKBUILD @@ -0,0 +1,33 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-devel-stacktrace +pkgver=2.03 +pkgrel=0 +pkgdesc="A Perl object representing a stack trace" +url="https://metacpan.org/release/Devel-StackTrace" +arch="noarch" +license="Artistic-2.0" +depends="" +makedepends="perl-dev" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/D/DR/DROLSKY/Devel-StackTrace-$pkgver.tar.gz" +builddir="$srcdir/Devel-StackTrace-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="a5263ec76f5adb83b83cc4906c18d6c341f50472a254617882a889315597698968988be1bacbbb4c6c0709974ff4ba67a14835d3c2278d672219c52e4c823514 Devel-StackTrace-2.03.tar.gz" diff --git a/user/perl-devel-symdump/APKBUILD b/user/perl-devel-symdump/APKBUILD new file mode 100644 index 000000000..a56a92cd9 --- /dev/null +++ b/user/perl-devel-symdump/APKBUILD @@ -0,0 +1,34 @@ +# Contributor: Dan Theisen <djt@hxx.in> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-devel-symdump +pkgver=2.18 +pkgrel=0 +pkgdesc="Dump symbol names or the symbol table" +url="https://metacpan.org/pod/Devel::Symdump" +arch="noarch" +license="Artistic-1.0-Perl AND GPL-2.0" +depends="perl" +makedepends="perl-dev" +install="" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/A/AN/ANDK/Devel-Symdump-$pkgver.tar.gz" +builddir="$srcdir/Devel-Symdump-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="4e8e1ee723e3e02d2f0c100dace40d7722f6366402cff24fb50c8616a863628bc2faa02210754132afa7cbebbd90c75ea6f173e15bbcfaa5158dfcfdfd03da73 Devel-Symdump-2.18.tar.gz" diff --git a/user/perl-dist-checkconflicts/APKBUILD b/user/perl-dist-checkconflicts/APKBUILD new file mode 100644 index 000000000..481277c32 --- /dev/null +++ b/user/perl-dist-checkconflicts/APKBUILD @@ -0,0 +1,34 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-dist-checkconflicts +pkgver=0.11 +pkgrel=0 +pkgdesc="Declare version conflicts for Perl distributions" +url="https://metacpan.org/release/Dist-CheckConflicts" +arch="noarch" +license="Artistic-1.0-Perl" +depends="perl-module-runtime" +makedepends="perl-dev" +checkdepends="perl-test-fatal" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/D/DO/DOY/Dist-CheckConflicts-$pkgver.tar.gz" +builddir="$srcdir/Dist-CheckConflicts-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="6c3f8546c1c7904bbc2a3c1135d145cbff95997c3032e9129afc98bdd98578dd9219af444f357dd8e9b1f08442a2fdd9d6f7fe8768f8ef165e71570f5ae246ad Dist-CheckConflicts-0.11.tar.gz" diff --git a/user/perl-env-path/APKBUILD b/user/perl-env-path/APKBUILD new file mode 100644 index 000000000..8b321c27e --- /dev/null +++ b/user/perl-env-path/APKBUILD @@ -0,0 +1,33 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-env-path +pkgver=0.19 +pkgrel=0 +pkgdesc="Advanced operations on path variables (Perl module)" +url="https://metacpan.org/release/Env-Path" +arch="noarch" +license="Artistic-1.0-Perl" +depends="" +makedepends="perl-dev" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/D/DS/DSB/Env-Path-$pkgver.tar.gz" +builddir="$srcdir/Env-Path-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="ea75dd808bd1d1e00a70179ccf834b4395e810ae46373eb16a9ebd37ada550ce3d9996073dfbe45909c66537fbc7712920d4dbb6dbf905200501884c5acb52fa Env-Path-0.19.tar.gz" diff --git a/user/perl-eval-closure/APKBUILD b/user/perl-eval-closure/APKBUILD new file mode 100644 index 000000000..93d0f376e --- /dev/null +++ b/user/perl-eval-closure/APKBUILD @@ -0,0 +1,34 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-eval-closure +pkgver=0.14 +pkgrel=0 +pkgdesc="Safely and cleanly create Perl closures using string eval" +url="https://metacpan.org/release/Eval-Closure" +arch="noarch" +license="Artistic-1.0-Perl" +depends="" +makedepends="perl-dev" +checkdepends="perl-test-fatal perl-test-requires" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/D/DO/DOY/Eval-Closure-$pkgver.tar.gz" +builddir="$srcdir/Eval-Closure-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="fc55206bd39c4cb39360d06b6f39a65743f34b5e59d1a1ce99bf5831b9d88a03fb6dadf32fa9f0868e140fce719d53a7b13027f397cdd7f6ca05cc81277bdc08 Eval-Closure-0.14.tar.gz" diff --git a/user/perl-exception-class/APKBUILD b/user/perl-exception-class/APKBUILD new file mode 100644 index 000000000..4ff03bda6 --- /dev/null +++ b/user/perl-exception-class/APKBUILD @@ -0,0 +1,33 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: A. Wilcox <awilfox@adelielinux.org> +pkgname=perl-exception-class +pkgver=1.44 +pkgrel=0 +pkgdesc="Perl module for declaring 'real' exception classes" +url="https://metacpan.org/release/Exception-Class" +arch="noarch" +license="Artistic-1.0-Perl" +depends="perl-class-data-inheritable perl-devel-stacktrace" +makedepends="perl-dev" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/D/DR/DROLSKY/Exception-Class-$pkgver.tar.gz" +builddir="$srcdir/Exception-Class-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="7ce1e488505dc3d1c6d6365b5ed523b204b93d89d205ad4cdf6c9ee9dbad1a6edc257251a365275f067479e734def56b3b21d588e978822e7714bd8a49ba6bb2 Exception-Class-1.44.tar.gz" diff --git a/user/perl-exporter-lite/APKBUILD b/user/perl-exporter-lite/APKBUILD new file mode 100644 index 000000000..4831d5f98 --- /dev/null +++ b/user/perl-exporter-lite/APKBUILD @@ -0,0 +1,33 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-exporter-lite +pkgver=0.08 +pkgrel=0 +pkgdesc="Lightweight exporting of Perl functions and variables" +url="https://metacpan.org/release/Exporter-Lite" +arch="noarch" +license="Artistic-1.0-Perl" +depends="" +makedepends="perl-dev" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/N/NE/NEILB/Exporter-Lite-$pkgver.tar.gz" +builddir="$srcdir/Exporter-Lite-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="8c6ff5a88c1b810d74156c5d84695cfde6f555e0fc663804123e2a96f5e2235a5adeebbf24b18301ed2c3fb57f76788ecfdf301b26263279e92a88a9143b8953 Exporter-Lite-0.08.tar.gz" diff --git a/user/perl-exporter-tiny/APKBUILD b/user/perl-exporter-tiny/APKBUILD new file mode 100644 index 000000000..7e06cb066 --- /dev/null +++ b/user/perl-exporter-tiny/APKBUILD @@ -0,0 +1,33 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-exporter-tiny +pkgver=1.002001 +pkgrel=0 +pkgdesc="Light-weight exporter with the features of Sub::Exporter" +url="https://metacpan.org/release/Exporter-Tiny" +arch="noarch" +license="Artistic-1.0-Perl" +depends="" +makedepends="perl-dev" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/T/TO/TOBYINK/Exporter-Tiny-$pkgver.tar.gz" +sha512sums="b247e7785e02c3346f231736a430c2d54e5ac93c175892090c40121c86eb255ce4d138c65e31836fd2970b45fb71dc7e68ea3c45a06a9e9c4135b45df48621d8 Exporter-Tiny-1.002001.tar.gz" +builddir="$srcdir/Exporter-Tiny-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + diff --git a/user/perl-extutils-depends/APKBUILD b/user/perl-extutils-depends/APKBUILD new file mode 100644 index 000000000..3947f7667 --- /dev/null +++ b/user/perl-extutils-depends/APKBUILD @@ -0,0 +1,34 @@ +# Contributor: Dan Theisen <djt@hxx.in> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-extutils-depends +pkgver=0.405 +pkgrel=0 +pkgdesc="Easily build XS extensions that depend on XS extensions" +url="https://metacpan.org/release/ExtUtils::Depends" +arch="noarch" +license="Artistic-1.0-Perl AND GPL-2.0" +depends="perl" +makedepends="perl-dev" +install="" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/X/XA/XAOC/ExtUtils-Depends-$pkgver.tar.gz" +sha512sums="b9983ad763ff0cb81c899bc24f3152f13c69e608304b6e4446bd07b9b13d039650f3f87544c0bdd29c67246ea2973f04a1ce0fccbffb566fe89fdbe0bb03f11b ExtUtils-Depends-0.405.tar.gz" +builddir="$srcdir/ExtUtils-Depends-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + diff --git a/user/perl-file-copy-recursive-reduced/APKBUILD b/user/perl-file-copy-recursive-reduced/APKBUILD new file mode 100644 index 000000000..76e66d192 --- /dev/null +++ b/user/perl-file-copy-recursive-reduced/APKBUILD @@ -0,0 +1,35 @@ +# Contributor: Dan Theisen <djt@hxx.in> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-file-copy-recursive-reduced +pkgver=0.006 +pkgrel=0 +pkgdesc="Recursive copying of files and directories within Perl 5 toolchain" +url="https://metacpan.org/pod/File::Copy::Recursive::Reduced" +arch="noarch" +license="Artistic-1.0-Perl AND GPL-2.0" +depends="perl" +makedepends="perl-dev" +checkdepends="perl-capture-tiny perl-path-tiny" +install="" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/J/JK/JKEENAN/File-Copy-Recursive-Reduced-$pkgver.tar.gz" +builddir="$srcdir/File-Copy-Recursive-Reduced-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="7cf888b8c004d9430c87c1cceba25e997cb12974a79c3f4d803b11779abef81f5b686caac4c46a70caadb2eee12a71cb1fb87abfc7d5fec43dc37bbd2ef07694 File-Copy-Recursive-Reduced-0.006.tar.gz" diff --git a/user/perl-file-copy-recursive/APKBUILD b/user/perl-file-copy-recursive/APKBUILD new file mode 100644 index 000000000..882a25d2f --- /dev/null +++ b/user/perl-file-copy-recursive/APKBUILD @@ -0,0 +1,35 @@ +# Contributor: Dan Theisen <djt@hxx.in> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-file-copy-recursive +pkgver=0.44 +pkgrel=0 +pkgdesc="Perl extension for recursively copying files and directories" +url="https://metacpan.org/pod/File::Copy::Recursive" +arch="noarch" +license="Artistic-1.0-Perl AND GPL-2.0" +depends="perl" +makedepends="perl-dev" +checkdepends="perl-test-fatal perl-test-warnings perl-path-tiny perl-test-deep perl-test-file" +install="" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/D/DM/DMUEY/File-Copy-Recursive-$pkgver.tar.gz" +builddir="$srcdir/File-Copy-Recursive-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="7599c48cee0b9848d5e275a1de00845cb2d4820eda9092d550063d4791974870129ce8d3d9337a8f7ea413ed4c21e533c2eb3134c2fcb5cc412dbbfddd2500e4 File-Copy-Recursive-0.44.tar.gz" diff --git a/user/perl-file-find-object-rule/APKBUILD b/user/perl-file-find-object-rule/APKBUILD new file mode 100644 index 000000000..f8938a59c --- /dev/null +++ b/user/perl-file-find-object-rule/APKBUILD @@ -0,0 +1,34 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-file-find-object-rule +pkgver=0.0309 +pkgrel=0 +pkgdesc="Alternative Perl interface to File::Find::Object" +url="https://metacpan.org/release/File-Find-Object-Rule" +arch="noarch" +license="Artistic-1.0-Perl" +depends="perl-class-xsaccessor perl-file-find-object perl-number-compare + perl-text-glob" +makedepends="perl-dev perl-module-build" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/S/SH/SHLOMIF/File-Find-Object-Rule-$pkgver.tar.gz" +builddir="$srcdir/File-Find-Object-Rule-$pkgver" + +build() { + cd "$builddir" + perl Build.PL installdirs=vendor + ./Build +} + +check() { + cd "$builddir" + ./Build test +} + +package() { + cd "$builddir" + ./Build install destdir="$pkgdir" + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="d4fe0bc369faa4870bb4f66b4e1212f0597ab0eb723dfb0ab6473428657067c0a72f9b9d6354a549117e553be1ddde222ede822555f94846ba110a2f82cc4b68 File-Find-Object-Rule-0.0309.tar.gz" diff --git a/user/perl-file-find-object/APKBUILD b/user/perl-file-find-object/APKBUILD new file mode 100644 index 000000000..b35c550d5 --- /dev/null +++ b/user/perl-file-find-object/APKBUILD @@ -0,0 +1,33 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: A. Wilcox <awilfox@adelielinux.org> +pkgname=perl-file-find-object +pkgver=0.3.2 +pkgrel=0 +pkgdesc="Object-oriented File::Find replacement for Perl" +url="https://metacpan.org/release/File-Find-Object" +arch="noarch" +license="Artistic-2.0" +depends="perl-class-xsaccessor" +makedepends="perl-dev perl-module-build" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/S/SH/SHLOMIF/File-Find-Object-v$pkgver.tar.gz" +builddir="$srcdir/File-Find-Object-v$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="58ca07083da520aee03945259ac89b6b584728d89ad52aea1a6f19a14da73fc92fcfc46c01656130d64fbc9fc9e4b1c5ef56274f30ebe3711972235dd8945956 File-Find-Object-v0.3.2.tar.gz" diff --git a/user/perl-file-finder/APKBUILD b/user/perl-file-finder/APKBUILD new file mode 100644 index 000000000..83f2ada97 --- /dev/null +++ b/user/perl-file-finder/APKBUILD @@ -0,0 +1,36 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-file-finder +pkgver=0.53 +pkgrel=1 +pkgdesc="Wrap Perl File::Find" +url="https://metacpan.org/release/File-Finder" +arch="noarch" +license="Artistic-1.0-Perl" +depends="perl-text-glob" +makedepends="perl-dev" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/M/ME/MERLYN/File-Finder-$pkgver.tar.gz + fix-test.patch + " +builddir="$srcdir/File-Finder-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="abcbc5b5c7ae09eb13e62ab1656e79a25becafb91eeef241fc0803ba0b35ae902c93db2240dfff6342952df7f0ff589350f63fdb1ccead64816f51bf52e366f0 File-Finder-0.53.tar.gz +8b96e6adb28e0a26843a3551d5939b9c9f65fbef155e46c155b82263923e1275a6be8c6184bbc831dfff7cc899d7b48df0f21e7005f273c389eff830190be166 fix-test.patch" diff --git a/user/perl-file-finder/fix-test.patch b/user/perl-file-finder/fix-test.patch new file mode 100644 index 000000000..6c371f6fc --- /dev/null +++ b/user/perl-file-finder/fix-test.patch @@ -0,0 +1,16 @@ +Thanks @smaeul + +--- File-Finder-0.53/t/05-steps.t.old 2004-10-07 01:04:12.000000000 -0500 ++++ File-Finder-0.53/t/05-steps.t 2018-10-02 22:27:29.867015209 -0500 +@@ -51,9 +51,9 @@ + 'mode 755'); + + { +- my $dirperm = (stat ".")[2] & 07777; ++ my $dirperm = (stat ".")[2] & 0777; + is_deeply([File::Finder->perm($dirperm)->in(qw(.))], +- [fin(sub { ((stat($_))[2] & 07777) == $dirperm }, '.')], ++ [fin(sub { ((stat($_))[2] & 0777) == $dirperm }, '.')], + 'mode same as current directory'); + } + diff --git a/user/perl-file-pushd/APKBUILD b/user/perl-file-pushd/APKBUILD new file mode 100644 index 000000000..e4c1bd0f4 --- /dev/null +++ b/user/perl-file-pushd/APKBUILD @@ -0,0 +1,33 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-file-pushd +pkgver=1.016 +pkgrel=0 +pkgdesc="Change directory temporarily in Perl for a limited scope" +url="https://metacpan.org/release/File-pushd" +arch="noarch" +license="Apache-2.0" +depends="" +makedepends="perl-dev" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/D/DA/DAGOLDEN/File-pushd-$pkgver.tar.gz" +builddir="$srcdir/File-pushd-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="f80f24831c28aed6efcb036db8da2404aadf1005ed751a82c10071a24572c05758eb1785cd9d1f9fdee86a20cf83b41bd73125862d8d24bfa240cc0d6b33ccdd File-pushd-1.016.tar.gz" diff --git a/user/perl-file-sharedir-install/APKBUILD b/user/perl-file-sharedir-install/APKBUILD new file mode 100644 index 000000000..f2b567b5e --- /dev/null +++ b/user/perl-file-sharedir-install/APKBUILD @@ -0,0 +1,34 @@ +# Contributor: Dan Theisen <djt@hxx.in> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-file-sharedir-install +pkgver=0.13 +pkgrel=0 +pkgdesc="Install shared files" +url="https://metacpan.org/pod/File::ShareDir::Install" +arch="noarch" +license="GPL-1.0+ OR Artistic-1.0-Perl" +depends="perl" +makedepends="perl-dev" +install="" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/E/ET/ETHER/File-ShareDir-Install-$pkgver.tar.gz" +builddir="$srcdir/File-ShareDir-Install-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="a119e38491fad8ae0ebd95913e3b608e09a2b99376a5160e75083a28abe4f83c4f6a36df216365527ff87bf8ec095254b16a2f6d2515c69f34609df8672605ca File-ShareDir-Install-0.13.tar.gz" diff --git a/user/perl-file-slurp/APKBUILD b/user/perl-file-slurp/APKBUILD new file mode 100644 index 000000000..102d45097 --- /dev/null +++ b/user/perl-file-slurp/APKBUILD @@ -0,0 +1,34 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-file-slurp +pkgver=9999.22 +pkgrel=0 +pkgdesc="Simple and efficient file manipulation in Perl" +url="https://metacpan.org/release/File-Slurp" +arch="noarch" +license="Artistic-1.0-Perl" +depends="" +makedepends="perl-dev" +subpackages="$pkgname-doc" +#source="https://cpan.metacpan.org/authors/id/U/UR/URI/File-Slurp-$pkgver.tar.gz" +source="https://cpan.metacpan.org/authors/id/C/CA/CAPOEIRAB/File-Slurp-$pkgver.tar.gz" +builddir="$srcdir/File-Slurp-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="54a77ed58bb93547d3ff0b01ebe39c9daaa5d16c335e16922ea2964edb5716f662d512c9c505a09c63f4bd465fb3e5f0af365ad3734c98e5225d53a5c616ca4e File-Slurp-9999.22.tar.gz" diff --git a/user/perl-file-which/APKBUILD b/user/perl-file-which/APKBUILD new file mode 100644 index 000000000..fddd35ce9 --- /dev/null +++ b/user/perl-file-which/APKBUILD @@ -0,0 +1,33 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-file-which +pkgver=1.22 +pkgrel=0 +pkgdesc="Perl implementation of the which(1) utility as an API" +url="https://metacpan.org/release/File-Which" +arch="noarch" +license="Artistic-1.0-Perl" +depends="" +makedepends="perl-dev" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/P/PL/PLICEASE/File-Which-$pkgver.tar.gz" +builddir="$srcdir/File-Which-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="9efd8cc6d08e82a429ab3b0ec5193cb894432311338dc4cdcb73b4536a40bf4829c414e75e5dcb0d03b9190511b232f1d27e441657afa7299b0a5b882877f2d1 File-Which-1.22.tar.gz" diff --git a/user/perl-games-solitaire-verify/APKBUILD b/user/perl-games-solitaire-verify/APKBUILD new file mode 100644 index 000000000..bcf5b7a45 --- /dev/null +++ b/user/perl-games-solitaire-verify/APKBUILD @@ -0,0 +1,35 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: A. Wilcox <awilfox@adelielinux.org> +pkgname=perl-games-solitaire-verify +pkgver=0.1900 +pkgrel=0 +pkgdesc="Verify solutions to solitaire games" +url="https://metacpan.org/release/Games-Solitaire-Verify" +arch="noarch" +license="MIT" +depends="perl-class-xsaccessor perl-exception-class perl-list-moreutils" +makedepends="perl-dev perl-module-build" +checkdepends="perl-test-differences" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/S/SH/SHLOMIF/Games-Solitaire-Verify-$pkgver.tar.gz" +builddir="$srcdir/Games-Solitaire-Verify-$pkgver" + +build() { + cd "$builddir" + perl Build.PL installdirs=vendor + export CFLAGS=`perl -MConfig -E 'say $Config{ccflags}'` + ./Build +} + +check() { + cd "$builddir" + ./Build test +} + +package() { + cd "$builddir" + ./Build install destdir="$pkgdir" + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="d161bc395f85f2aa404fe7aac893c840b302c7659e529b62bda9ad6c274508c4294c03c9037b9ab6a667e8a90292ef83445c88be26e42dde89625224f85027f0 Games-Solitaire-Verify-0.1900.tar.gz" diff --git a/user/perl-getopt-long-descriptive/APKBUILD b/user/perl-getopt-long-descriptive/APKBUILD new file mode 100644 index 000000000..92fe31c60 --- /dev/null +++ b/user/perl-getopt-long-descriptive/APKBUILD @@ -0,0 +1,34 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-getopt-long-descriptive +pkgver=0.103 +pkgrel=0 +pkgdesc="Simpler Perl implementation of Getopt::Long" +url="https://metacpan.org/release/Getopt-Long-Descriptive" +arch="noarch" +license="Artistic-1.0-Perl" +depends="perl-params-validate perl-sub-exporter" +makedepends="perl-dev" +checkdepends="perl-cpan-meta-check perl-test-fatal perl-test-warnings" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/R/RJ/RJBS/Getopt-Long-Descriptive-$pkgver.tar.gz" +builddir="$srcdir/Getopt-Long-Descriptive-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="9229575bde794fa1213871fbb33a12222737d7979cf4c290200fd85c7da9e3227539809b8380a88a85675429ceb61e505bac8cc4e1408ca63ba92b4e1b33149f Getopt-Long-Descriptive-0.103.tar.gz" diff --git a/user/perl-import-into/APKBUILD b/user/perl-import-into/APKBUILD new file mode 100644 index 000000000..29ccfb837 --- /dev/null +++ b/user/perl-import-into/APKBUILD @@ -0,0 +1,33 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-import-into +pkgver=1.002005 +pkgrel=0 +pkgdesc="Import Perl packages into other packages" +url="https://metacpan.org/release/Import-Into" +arch="noarch" +license="Artistic-1.0-Perl" +depends="perl-module-runtime" +makedepends="perl-dev" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/H/HA/HAARG/Import-Into-$pkgver.tar.gz" +builddir="$srcdir/Import-Into-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="d356307072da18bc40b25f11583018ed416cb87178f080982e14e98e53d42bc1e04aebda56d595e707c05065eaa6ad7a6b059920e8b5b8e1589bfd68e26900fb Import-Into-1.002005.tar.gz" diff --git a/user/perl-inline-c/APKBUILD b/user/perl-inline-c/APKBUILD new file mode 100644 index 000000000..50d298bb0 --- /dev/null +++ b/user/perl-inline-c/APKBUILD @@ -0,0 +1,35 @@ +# Contributor: Dan Theisen <djt@hxx.in> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-inline-c +pkgver=0.78 +pkgrel=0 +pkgdesc="C Language Support for Inline" +url="https://metacpan.org/pod/Inline::C" +arch="noarch" +license="GPL-1.0+ OR Artistic-1.0-Perl" +depends="perl perl-inline perl-pegex perl-parse-recdescent" +makedepends="perl-dev perl-file-sharedir-install" +checkdepends="perl-test-warn perl-yaml-libyaml perl-file-copy-recursive" +install="" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/T/TI/TINITA/Inline-C-$pkgver.tar.gz" +builddir="$srcdir/Inline-C-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="368e68dfb9f1700534d9b391090e340172e3adde5fe15576f883e9341047fec35cea8660751883b27e128ad91dda363d513547368097a989457d669bbbdc8ce4 Inline-C-0.78.tar.gz" diff --git a/user/perl-inline/APKBUILD b/user/perl-inline/APKBUILD new file mode 100644 index 000000000..032805c28 --- /dev/null +++ b/user/perl-inline/APKBUILD @@ -0,0 +1,35 @@ +# Contributor: Dan Theisen <djt@hxx.in> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-inline +pkgver=0.80 +pkgrel=0 +pkgdesc="Write Perl Subroutines in Other Programming Languages" +url="https://metacpan.org/pod/Inline" +arch="noarch" +license="GPL-1.0+ OR Artistic-1.0-Perl" +depends="perl" +makedepends="perl-dev" +checkdepends="perl-test-warn" +install="" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/I/IN/INGY/Inline-$pkgver.tar.gz" +builddir="$srcdir/Inline-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="e64f7752f32fd07c7c7a975429e04730f2987c9588f99b95502d4e5c87d458736a606c03943a68660940c3987cd632ad2f75ec3862342956c1754b1aca86e0bb Inline-0.80.tar.gz" diff --git a/user/perl-io-all/APKBUILD b/user/perl-io-all/APKBUILD new file mode 100644 index 000000000..bfa29c999 --- /dev/null +++ b/user/perl-io-all/APKBUILD @@ -0,0 +1,33 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-io-all +pkgver=0.87 +pkgrel=0 +pkgdesc="Simple Perl module for all I/O needs" +url="https://metacpan.org/release/IO-All" +arch="noarch" +license="Artistic-1.0-Perl" +depends="" +makedepends="perl-dev" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/F/FR/FREW/IO-All-$pkgver.tar.gz" +builddir="$srcdir/IO-All-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="bd8cb6d44db51a9a140209223f016e48acd713ec03ced1b9c02933fd88c6363926635dae033b20905201b13e8186b8bcc3f428d4d85cd187fc68b777cd197267 IO-All-0.87.tar.gz" diff --git a/user/perl-io-stringy/APKBUILD b/user/perl-io-stringy/APKBUILD new file mode 100644 index 000000000..e5a271ac7 --- /dev/null +++ b/user/perl-io-stringy/APKBUILD @@ -0,0 +1,41 @@ +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-io-stringy +_pkgreal=IO-stringy +pkgver=2.111 +pkgrel=0 +pkgdesc="I/O on in-core objects like strings and arrays" +url="https://metacpan.org/release/IO-stringy" +arch="noarch" +license="GPL-1.0+ OR Artistic-1.0-Perl" +cpandepends="" +cpanmakedepends="" +depends="$cpandepends" +makedepends="perl-dev $cpanmakedepends" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/D/DS/DSKOLL/$_pkgreal-$pkgver.tar.gz" +builddir="$srcdir/$_pkgreal-$pkgver" + +prepare() { + cd "$builddir" + export CFLAGS=`perl -MConfig -E 'say $Config{ccflags}'` + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor +} + +build() { + cd "$builddir" + export CFLAGS=`perl -MConfig -E 'say $Config{ccflags}'` + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="9da8fb03945bc4a59cea3b3b2e22b15d56b133470e581d1cb03920bda2b4953e3c9e4a25d095ed8a384efb5a4c58db437c92cca6a81d583791191f1a37691a4a IO-stringy-2.111.tar.gz" diff --git a/user/perl-io-tty/APKBUILD b/user/perl-io-tty/APKBUILD new file mode 100644 index 000000000..d42b831a2 --- /dev/null +++ b/user/perl-io-tty/APKBUILD @@ -0,0 +1,33 @@ +# Contributor: Dan Theisen <djt@hxx.in> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-io-tty +pkgver=1.12 +pkgrel=0 +pkgdesc="Low-level allocate a pseudo-tty" +url="https://metacpan.org/pod/IO::Tty" +arch="all" +license="Artistic-1.0-Perl" +depends="" +makedepends="perl-dev" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/T/TO/TODDR/IO-Tty-$pkgver.tar.gz" +builddir="$srcdir/IO-Tty-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="23733e7832a0de370952420df8a781f85d28ff60eb4cd55be22147337bf5587f4e1ec7fcfc190ae3ad1fd9df0f9697f2d647e00739f4a2927b1ac9c81435454d IO-Tty-1.12.tar.gz" diff --git a/user/perl-ipc-run/APKBUILD b/user/perl-ipc-run/APKBUILD new file mode 100644 index 000000000..c78ee10fb --- /dev/null +++ b/user/perl-ipc-run/APKBUILD @@ -0,0 +1,34 @@ +# Contributor: Dan Theisen <djt@hxx.in> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-ipc-run +pkgver=20180523.0 +pkgrel=0 +pkgdesc="system() and background procs w/ piping, redirs, ptys" +url="https://metacpan.org/pod/IPC::Run" +arch="noarch" +license="GPL-1.0+ OR Artistic-1.0-Perl" +depends="perl" +makedepends="perl-dev" +install="" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/T/TO/TODDR/IPC-Run-$pkgver.tar.gz" +builddir="$srcdir/IPC-Run-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="e9d97cbec9f2607d1a89c1a06bd166ae2f030157f201e870df3b88b9f0b915b06a4b0db05b7f50daa4883de255e29c6898b1f9964d706739d4bf7034b53d7f89 IPC-Run-20180523.0.tar.gz" diff --git a/user/perl-ipc-run3/APKBUILD b/user/perl-ipc-run3/APKBUILD new file mode 100644 index 000000000..9abe68fb1 --- /dev/null +++ b/user/perl-ipc-run3/APKBUILD @@ -0,0 +1,33 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-ipc-run3 +pkgver=0.048 +pkgrel=0 +pkgdesc="Run a subprocess from Perl with I/O redirection" +url="https://metacpan.org/release/IPC-Run3" +arch="noarch" +license="GPL-1.0+ OR BSD-2-Clause OR Artistic-1.0-Perl OR Artistic-2.0" +depends="" +makedepends="perl-dev" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/R/RJ/RJBS/IPC-Run3-$pkgver.tar.gz" +builddir="$srcdir/IPC-Run3-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="50432850d8dccd2e59aa6684d34f3e3242fd7df3eb4d9a5eb02dae389aa46b5fd68cc54114a157c3fe99956e68e74d575ab3db5009b7bf7d5c325f1f109b1262 IPC-Run3-0.048.tar.gz" diff --git a/user/perl-ipc-system-simple/APKBUILD b/user/perl-ipc-system-simple/APKBUILD new file mode 100644 index 000000000..938924620 --- /dev/null +++ b/user/perl-ipc-system-simple/APKBUILD @@ -0,0 +1,33 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-ipc-system-simple +pkgver=1.25 +pkgrel=0 +pkgdesc="Run commands from Perl with detailed diagnostics" +url="https://metacpan.org/release/IPC-System-Simple" +arch="noarch" +license="Artistic-1.0-Perl" +depends="" +makedepends="perl-dev" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/P/PJ/PJF/IPC-System-Simple-$pkgver.tar.gz" +builddir="$srcdir/IPC-System-Simple-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="fda275786605eb80acaa6062cc51c32aa0e84f150e7ca7afcfe874f088ce7b8f9a97669e91bec24fdb05426db8b0f05552aa8853e44b08996e625281d1892f72 IPC-System-Simple-1.25.tar.gz" diff --git a/user/perl-json-xs/APKBUILD b/user/perl-json-xs/APKBUILD new file mode 100644 index 000000000..75f0720ce --- /dev/null +++ b/user/perl-json-xs/APKBUILD @@ -0,0 +1,34 @@ +# Contributor: Dan Theisen <djt@hxx.in> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-json-xs +pkgver=3.04 +pkgrel=0 +pkgdesc="JSON serialising/deserialising, done correctly and fast" +url="https://metacpan.org/pod/JSON::XS" +arch="all" +license="Artistic-1.0-Perl AND GPL-2.0" +depends="perl perl-common-sense perl-types-serialiser" +makedepends="perl-dev perl-canary-stability" +install="" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/M/ML/MLEHMANN/JSON-XS-$pkgver.tar.gz" +builddir="$srcdir/JSON-XS-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="69c2e199385b5b5e331d905b64805304de80e1a3b393acaf7dce21c45254b1f23f1a83b246dcd3a80c2cfdadaf8ce3634ee587c469629cb69106f0c2239c73db JSON-XS-3.04.tar.gz" diff --git a/user/perl-lib-relative/APKBUILD b/user/perl-lib-relative/APKBUILD new file mode 100644 index 000000000..daeb17687 --- /dev/null +++ b/user/perl-lib-relative/APKBUILD @@ -0,0 +1,33 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-lib-relative +pkgver=0.002 +pkgrel=0 +pkgdesc="Add paths relative to the current file to Perl @INC" +url="https://metacpan.org/release/lib-relative" +arch="noarch" +license="Artistic-2.0" +depends="" +makedepends="perl-dev" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/D/DB/DBOOK/lib-relative-$pkgver.tar.gz" +builddir="$srcdir/lib-relative-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="ebe552fbc4967dd8615e2a1ecde69000358b3909095c66b557a6dd68c1a4744ca586dc91d2cf1b679a57ef981ec79a4689ba9c3f846393f4f48e528e85c326b0 lib-relative-0.002.tar.gz" diff --git a/user/perl-list-compare/APKBUILD b/user/perl-list-compare/APKBUILD new file mode 100644 index 000000000..611b3efb3 --- /dev/null +++ b/user/perl-list-compare/APKBUILD @@ -0,0 +1,33 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-list-compare +pkgver=0.53 +pkgrel=0 +pkgdesc="Compare elements of two or more Perl lists" +url="https://metacpan.org/release/List-Compare" +arch="noarch" +license="Artistic-1.0-Perl" +depends="" +makedepends="perl-dev" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/J/JK/JKEENAN/List-Compare-$pkgver.tar.gz" +builddir="$srcdir/List-Compare-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="b467e9395afa8297f5f59d745d22048373cfd60dc0c8ce56d0ad95e8f9fddcda487d99c906b9fb5ac1b28aa53873a7c9689347866c3aa907aecd31b4a127627a List-Compare-0.53.tar.gz" diff --git a/user/perl-list-moreutils-xs/APKBUILD b/user/perl-list-moreutils-xs/APKBUILD new file mode 100644 index 000000000..73f3454a8 --- /dev/null +++ b/user/perl-list-moreutils-xs/APKBUILD @@ -0,0 +1,33 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-list-moreutils-xs +pkgver=0.428 +pkgrel=0 +pkgdesc="Provide the stuff missing in List::Util in XS" +url="https://metacpan.org/release/List-MoreUtils-XS" +arch="all" +license="Apache-2.0" +depends="" +makedepends="perl-dev" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/R/RE/REHSACK/List-MoreUtils-XS-$pkgver.tar.gz" +builddir="$srcdir/List-MoreUtils-XS-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="a608568e3c4a2e160e4f9afa26640be5b97ec83e301a6b81849e37951698b9423c0a969d7e8797a49b4fb6c5123780630a3726c64713922b90b21b947682c3dd List-MoreUtils-XS-0.428.tar.gz" diff --git a/user/perl-list-moreutils/APKBUILD b/user/perl-list-moreutils/APKBUILD new file mode 100644 index 000000000..7f20abe32 --- /dev/null +++ b/user/perl-list-moreutils/APKBUILD @@ -0,0 +1,33 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-list-moreutils +pkgver=0.428 +pkgrel=0 +pkgdesc="Provide the stuff missing in List::Util" +url="https://metacpan.org/release/List-MoreUtils" +arch="noarch" +license="Apache-2.0" +depends="perl-exporter-tiny" +makedepends="perl-dev perl-list-moreutils-xs" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/R/RE/REHSACK/List-MoreUtils-$pkgver.tar.gz" +builddir="$srcdir/List-MoreUtils-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="f7e11f10f1d7bd3b8f9f8bc2fc325e1a9230056f68591da624aed01fb4e4cbac20caeae0c3e2aa3acc8b71febd6d4149284367f051d3c1e608e3a4ca8b62dbd8 List-MoreUtils-0.428.tar.gz" diff --git a/user/perl-list-someutils-xs/APKBUILD b/user/perl-list-someutils-xs/APKBUILD new file mode 100644 index 000000000..55e736bbe --- /dev/null +++ b/user/perl-list-someutils-xs/APKBUILD @@ -0,0 +1,34 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-list-someutils-xs +pkgver=0.58 +pkgrel=0 +pkgdesc="XS implementation of Perl List::SomeUtils" +url="https://metacpan.org/release/List-SomeUtils-XS" +arch="all" +license="Artistic-2.0" +depends="" +makedepends="perl-dev" +checkdepends="perl-test-leaktrace perl-test-warnings" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/D/DR/DROLSKY/List-SomeUtils-XS-$pkgver.tar.gz" +builddir="$srcdir/List-SomeUtils-XS-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="f89f5a35224a69a59c1d512a819bd725b324f0968ea447824a42c741c4ba66ee9522db939bd3e75d190e0f2f75d54100912b83a86d5e7dd1079025a57a245c38 List-SomeUtils-XS-0.58.tar.gz" diff --git a/user/perl-list-someutils/APKBUILD b/user/perl-list-someutils/APKBUILD new file mode 100644 index 000000000..80a5e64ee --- /dev/null +++ b/user/perl-list-someutils/APKBUILD @@ -0,0 +1,34 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-list-someutils +pkgver=0.56 +pkgrel=0 +pkgdesc="Provide the stuff missing in Perl's List::Util module" +url="https://metacpan.org/release/List-SomeUtils" +arch="noarch" +license="Artistic-1.0-Perl" +depends="perl-list-someutils-xs perl-module-implementation" +makedepends="perl-dev" +checkdepends="perl-test-leaktrace" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/D/DR/DROLSKY/List-SomeUtils-$pkgver.tar.gz" +builddir="$srcdir/List-SomeUtils-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="b74c2a97811185d21bfd68fe60606afe8e92c266e98a763d51589021c9b3ae5310275005dc80198b8f9d92118fed569b5251d5ad87643f47af75a478db388503 List-SomeUtils-0.56.tar.gz" diff --git a/user/perl-log-any/APKBUILD b/user/perl-log-any/APKBUILD new file mode 100644 index 000000000..8b0e5a88d --- /dev/null +++ b/user/perl-log-any/APKBUILD @@ -0,0 +1,33 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-log-any +pkgver=1.707 +pkgrel=0 +pkgdesc="Bring Perl loggers and listeners together" +url="https://metacpan.org/release/Log-Any" +arch="noarch" +license="Artistic-1.0-Perl" +depends="" +makedepends="perl-dev" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/P/PR/PREACTION/Log-Any-$pkgver.tar.gz" +builddir="$srcdir/Log-Any-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="b5fc37130b3bb07c9fac896c539657fffad2e80c2055a09816e133e48f3f5db9a3b896ea11bf087b5fe6844a72fb6189656a3033c7761c00f471282747e1c290 Log-Any-1.707.tar.gz" diff --git a/user/perl-mixin-linewise/APKBUILD b/user/perl-mixin-linewise/APKBUILD new file mode 100644 index 000000000..7c6a5339f --- /dev/null +++ b/user/perl-mixin-linewise/APKBUILD @@ -0,0 +1,33 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-mixin-linewise +pkgver=0.108 +pkgrel=0 +pkgdesc="Line-wise reader and writer for Perl strings" +url="https://metacpan.org/release/Mixin-Linewise" +arch="noarch" +license="Artistic-1.0-Perl" +depends="perl-perlio-utf8_strict perl-sub-exporter" +makedepends="perl-dev" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/R/RJ/RJBS/Mixin-Linewise-$pkgver.tar.gz" +builddir="$srcdir/Mixin-Linewise-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="2789126737e2798a94ab6d90614503717dbc6c4178d19a9dd1e32689869e8e1298ec168fd6ab53580e65b5ad7ff94e065dca4afb7b71c2bb453810da61d29450 Mixin-Linewise-0.108.tar.gz" diff --git a/user/perl-module-build-xsutil/APKBUILD b/user/perl-module-build-xsutil/APKBUILD new file mode 100644 index 000000000..80d03b9ed --- /dev/null +++ b/user/perl-module-build-xsutil/APKBUILD @@ -0,0 +1,39 @@ +# Contributor: Dan Theisen <djt@hxx.in> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-module-build-xsutil +pkgver=0.19 +pkgrel=0 +pkgdesc="A Module::Build class for building XS modules" +url="https://metacpan.org/pod/Module::Build::XSUtil" +arch="noarch" +license="Artistic-1.0-Perl AND GPL-2.0" +depends="perl perl-module-build perl-devel-checkcompiler" +makedepends="perl-dev" +checkdepends="perl-capture-tiny perl-cwd-guard perl-file-copy-recursive-reduced" +install="" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/H/HI/HIDEAKIO/Module-Build-XSUtil-$pkgver.tar.gz" +builddir="$srcdir/Module-Build-XSUtil-$pkgver" + +prepare() { + cd "$builddir" + perl Build.PL installdirs=vendor +} + +build() { + cd "$builddir" + ./Build +} + +check() { + cd "$builddir" + ./Build test +} + +package() { + cd "$builddir" + ./Build install destdir="$pkgdir" + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="187f504c3f26d15b96cdc5b682d3487a31cf124475160b7fe5dce727d5d6ec5de5a58d09535adb62a1a95b3030fb62951b2cc0eca860eb03c66a48042cea8819 Module-Build-XSUtil-0.19.tar.gz" diff --git a/user/perl-module-implementation/APKBUILD b/user/perl-module-implementation/APKBUILD new file mode 100644 index 000000000..d64f1a35d --- /dev/null +++ b/user/perl-module-implementation/APKBUILD @@ -0,0 +1,34 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-module-implementation +pkgver=0.09 +pkgrel=0 +pkgdesc="Loads an underlying implementation of a Perl module" +url="https://metacpan.org/release/Module-Implementation" +arch="noarch" +license="Artistic-2.0" +depends="perl-module-runtime perl-try-tiny" +makedepends="perl-dev" +checkdepends="perl-test-fatal perl-test-requires" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/D/DR/DROLSKY/Module-Implementation-$pkgver.tar.gz" +builddir="$srcdir/Module-Implementation-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="049f967ba1bd8a3914968b34006030ae318d99ac629a0f34736f1c2b5392490c30aa0914e777eaefda7f0f58755d2d3363a266b90db59b53fe145ef68e1d953c Module-Implementation-0.09.tar.gz" diff --git a/user/perl-module-runtime-conflicts/APKBUILD b/user/perl-module-runtime-conflicts/APKBUILD new file mode 100644 index 000000000..2fdca3cf1 --- /dev/null +++ b/user/perl-module-runtime-conflicts/APKBUILD @@ -0,0 +1,33 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-module-runtime-conflicts +pkgver=0.003 +pkgrel=0 +pkgdesc="Provides information on conflicts for Module::Runtime" +url="https://metacpan.org/release/Module-Runtime-Conflicts" +arch="noarch" +license="Artistic-1.0-Perl" +depends="perl-dist-checkconflicts perl-module-runtime" +makedepends="perl-dev" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/E/ET/ETHER/Module-Runtime-Conflicts-$pkgver.tar.gz" +builddir="$srcdir/Module-Runtime-Conflicts-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="1b72ea7cc9516721290d5ea433169697b4134b5fc77872d6822e4c395a154bf956d469ab5da2802d587d60dfb13b9784014fe492988cf3f8b5820da2d63e8ca1 Module-Runtime-Conflicts-0.003.tar.gz" diff --git a/user/perl-module-runtime/APKBUILD b/user/perl-module-runtime/APKBUILD new file mode 100644 index 000000000..0430740c3 --- /dev/null +++ b/user/perl-module-runtime/APKBUILD @@ -0,0 +1,35 @@ +# Contributor: Dan Theisen <djt@hxx.in> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-module-runtime +pkgver=0.016 +pkgrel=0 +pkgdesc="Runtime module handling" +url="https://metacpan.org/pod/Module::Runtime" +arch="noarch" +license="Artistic-1.0-Perl AND GPL-2.0" +depends="perl" +makedepends="perl-dev" +checkdepends="perl-test-pod perl-test-pod-coverage" +install="" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/Z/ZE/ZEFRAM/Module-Runtime-$pkgver.tar.gz" +builddir="$srcdir/Module-Runtime-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="64a362ee897646173dbbdd8794f863d93379d45d7ac20d3ae890d77b4ec3f5e36aaff66c41b4a6a33b28bf492216283528755550ab09e466ceafb4f0cfbaeb9e Module-Runtime-0.016.tar.gz" diff --git a/user/perl-moo/APKBUILD b/user/perl-moo/APKBUILD new file mode 100644 index 000000000..6e419cac2 --- /dev/null +++ b/user/perl-moo/APKBUILD @@ -0,0 +1,36 @@ +# Contributor: Dan Theisen <djt@hxx.in> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-moo +pkgver=2.003004 +pkgrel=0 +pkgdesc="Minimalist Object Orientation (with Moose compatibility)" +url="https://metacpan.org/pod/Moo" +arch="noarch" +license="Artistic-1.0-Perl AND GPL-2.0" +depends="perl perl-module-runtime perl-devel-globaldestruction perl-class-method-modifiers + perl-sub-quote perl-role-tiny" +makedepends="perl-dev" +checkdepends="perl-test-fatal" +install="" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/H/HA/HAARG/Moo-$pkgver.tar.gz" +builddir="$srcdir/Moo-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="686996e4dd0238cff7483e4e06db5439660e390c67e65ace67c3fd0b05ade379a168d36ae649812c8a5e2b715eefea7cb17e5db323a0cd31b90667d8954eb38a Moo-2.003004.tar.gz" diff --git a/user/perl-moose/APKBUILD b/user/perl-moose/APKBUILD new file mode 100644 index 000000000..74ebadf6b --- /dev/null +++ b/user/perl-moose/APKBUILD @@ -0,0 +1,40 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-moose +pkgver=2.2011 +pkgrel=0 +pkgdesc="A postmodern object system for Perl 5" +url="https://metacpan.org/release/Moose" +arch="all" +license="Artistic-1.0-Perl" +depends="perl-class-load perl-class-load-xs perl-data-optlist + perl-devel-globaldestruction perl-devel-overloadinfo + perl-devel-stacktrace perl-eval-closure perl-module-runtime + perl-module-runtime-conflicts perl-mro-compat + perl-package-deprecationmanager perl-params-util perl-sub-exporter + perl-sub-identify perl-sub-name perl-try-tiny" +makedepends="perl-dev" +checkdepends="perl-cpan-meta-check perl-dist-checkconflicts + perl-test-cleannamespaces perl-test-fatal perl-test-requires" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/E/ET/ETHER/Moose-$pkgver.tar.gz" +builddir="$srcdir/Moose-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="f94ed23c45a860b9afa8defe7f5067a65fdd9d457d94a85e4ea192640d09ad73bc336a2e54c4c663643ec0efa32872f4b2aa69083e99093e420cecf5430f34a3 Moose-2.2011.tar.gz" diff --git a/user/perl-moosex-getopt/APKBUILD b/user/perl-moosex-getopt/APKBUILD new file mode 100644 index 000000000..4669063ec --- /dev/null +++ b/user/perl-moosex-getopt/APKBUILD @@ -0,0 +1,36 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-moosex-getopt +pkgver=0.74 +pkgrel=0 +pkgdesc="Perl Moose role for processing command line arguments" +url="https://metacpan.org/release/MooseX-Getopt" +arch="noarch" +license="Artistic-1.0-Perl" +depends="perl-getopt-long-descriptive perl-moose perl-moosex-role-parameterised + perl-namespace-autoclean perl-try-tiny" +makedepends="perl-dev perl-module-build-tiny" +checkdepends="perl-moosex-strictconstructor perl-path-tiny perl-test-deep + perl-test-fatal perl-test-needs perl-test-trap perl-test-warnings" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/E/ET/ETHER/MooseX-Getopt-$pkgver.tar.gz" +builddir="$srcdir/MooseX-Getopt-$pkgver" + +build() { + cd "$builddir" + PERL_MM_FALLBACK_SILENCE_WARNING=1 PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="3b7ea4f75192c62936f7838809a4a3facc4ccc38fb9db5affd46d07273ac1ffadd5ddb0882fe5d29870bf4b8c816916febdc3748747223c837fc87c65faa60ac MooseX-Getopt-0.74.tar.gz" diff --git a/user/perl-moosex-role-parameterised/APKBUILD b/user/perl-moosex-role-parameterised/APKBUILD new file mode 100644 index 000000000..6225b2371 --- /dev/null +++ b/user/perl-moosex-role-parameterised/APKBUILD @@ -0,0 +1,35 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: A. Wilcox <awilfox@adelielinux.org> +pkgname=perl-moosex-role-parameterised +pkgver=1.10 +pkgrel=0 +pkgdesc="Perl Moose roles with composition parameters" +url="https://metacpan.org/release/MooseX-Role-Parameterized" +arch="noarch" +license="Artistic-1.0-Perl" +depends="perl-module-runtime perl-moose perl-namespace-autoclean perl-namespace-clean" +makedepends="perl-dev perl-module-build-tiny" +checkdepends="perl-cpan-meta-check perl-dist-checkconflicts perl-test-fatal perl-test-requires" +provides="perl-moosex-role-parameterized=$pkgver-r$pkgrel" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/E/ET/ETHER/MooseX-Role-Parameterized-$pkgver.tar.gz" +builddir="$srcdir/MooseX-Role-Parameterized-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="10f6b51dd6e09c30e36496469c4a213e0ab6d12529e0b91161f680ae595b312e9dbff035d6c8a2d10dbff7fa55cf7ca6b53cd66b848f75f7e6ac43b6e6eb9e84 MooseX-Role-Parameterized-1.10.tar.gz" diff --git a/user/perl-moosex-strictconstructor/APKBUILD b/user/perl-moosex-strictconstructor/APKBUILD new file mode 100644 index 000000000..964414d4a --- /dev/null +++ b/user/perl-moosex-strictconstructor/APKBUILD @@ -0,0 +1,34 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-moosex-strictconstructor +pkgver=0.21 +pkgrel=0 +pkgdesc="Ensure unknown attributes passed to Perl Moose ctors are errors" +url="https://metacpan.org/release/MooseX-StrictConstructor" +arch="noarch" +license="Artistic-2.0" +depends="perl-moose perl-namespace-autoclean" +makedepends="perl-dev" +checkdepends="perl-moo perl-test-fatal perl-test-needs" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/D/DR/DROLSKY/MooseX-StrictConstructor-$pkgver.tar.gz" +builddir="$srcdir/MooseX-StrictConstructor-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="b515ce0de7962b2d2da0da3dfd0fab978a014f2d5dc9e92e76cc137a260d3190a993d3b791db5eaf416e838180bdec1f827961aad4552c67f7c7cf1477107bfc MooseX-StrictConstructor-0.21.tar.gz" diff --git a/user/perl-moox-late/APKBUILD b/user/perl-moox-late/APKBUILD new file mode 100644 index 000000000..f9360c17f --- /dev/null +++ b/user/perl-moox-late/APKBUILD @@ -0,0 +1,34 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-moox-late +pkgver=0.015 +pkgrel=0 +pkgdesc="Translate Moose code into Moo" +url="https://metacpan.org/release/MooX-late" +arch="noarch" +license="Artistic-1.0-Perl" +depends="perl-moo perl-type-tiny" +makedepends="perl-dev" +checkdepends="perl-test-fatal perl-test-requires" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/T/TO/TOBYINK/MooX-late-$pkgver.tar.gz" +builddir="$srcdir/MooX-late-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="4d685f4e68abe10487a98def8f0e7b0bafbd9928af27e61a5ac410bcafa9833a4aebdc8cd5bdbebd1a6ee53b4b0d5ae9bfa3864cae428b21c926730365fefb6d MooX-late-0.015.tar.gz" diff --git a/user/perl-moox/APKBUILD b/user/perl-moox/APKBUILD new file mode 100644 index 000000000..73cb7d290 --- /dev/null +++ b/user/perl-moox/APKBUILD @@ -0,0 +1,33 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-moox +pkgver=0.101 +pkgrel=0 +pkgdesc="Perl module for using Moo and MooX:: lazily" +url="https://metacpan.org/release/MooX" +arch="noarch" +license="Artistic-1.0-Perl" +depends="perl-data-optlist perl-import-into perl-module-runtime perl-moo" +makedepends="perl-dev" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/G/GE/GETTY/MooX-$pkgver.tar.gz" +builddir="$srcdir/MooX-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="4ba77d472c3ffab5ff600c20bd2d2b51614db9d5488fad7d8a51ee6249505519220a00437192d0c7132cbf6898bf1ff314d5c28132abbcfeb4be17d131ad7778 MooX-0.101.tar.gz" diff --git a/user/perl-mouse/APKBUILD b/user/perl-mouse/APKBUILD new file mode 100644 index 000000000..d89d9c3b3 --- /dev/null +++ b/user/perl-mouse/APKBUILD @@ -0,0 +1,40 @@ +# Contributor: Dan Theisen <djt@hxx.in> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-mouse +pkgver=2.5.6 +pkgrel=0 +pkgdesc="Moose minus the antlers" +url="https://metacpan.org/pod/Mouse" +arch="all" +license="Artistic-1.0-Perl AND GPL-2.0" +depends="perl" +makedepends="perl-dev perl-module-build-xsutil" +checkdepends="perl-test-exception perl-test-fatal perl-test-leaktrace perl-test-output perl-test-requires perl-try-tiny" +install="" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/S/SK/SKAJI/Mouse-v$pkgver.tar.gz" +builddir="$srcdir/Mouse-v$pkgver" + +prepare() { + cd "$builddir" + perl Build.PL installdirs=vendor +} + +build() { + cd "$builddir" + ./Build +} + +check() { + # most, but not all functionality is tested + cd "$builddir" + ./Build test +} + +package() { + cd "$builddir" + ./Build install destdir="$pkgdir" + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="1f29430badec842c1b3aa5a8a4c4ad785cf26d2e6cc745da82c0fa667b19da0b9e6c364e10ef615fbc03f60cb5020f079113b470162d095d8c514e6cb9ce96e3 Mouse-v2.5.6.tar.gz" diff --git a/user/perl-mousex-nativetraits/APKBUILD b/user/perl-mousex-nativetraits/APKBUILD new file mode 100644 index 000000000..34cd187bc --- /dev/null +++ b/user/perl-mousex-nativetraits/APKBUILD @@ -0,0 +1,35 @@ +# Contributor: Dan Theisen <djt@hxx.in> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-mousex-nativetraits +pkgver=1.09 +pkgrel=0 +pkgdesc="Extend your attribute interfaces" +url="https://metacpan.org/pod/MouseX::NativeTraits" +arch="noarch" +license="Artistic-1.0-Perl AND GPL-2.0" +depends="perl perl-mouse" +makedepends="perl-dev perl-module-install" +checkdepends="perl-test-fatal perl-any-moose" +install="" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/G/GF/GFUJI/MouseX-NativeTraits-$pkgver.tar.gz" +builddir="$srcdir/MouseX-NativeTraits-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="2aad717c7c78c1014f705a85b8bb8cab79febb827aa478a0884bcdd4d8d702a366785bc6104ba115513c234b8ca71cafcbbbc070ba37d6328255fe1f972c3619 MouseX-NativeTraits-1.09.tar.gz" diff --git a/user/perl-mro-compat/APKBUILD b/user/perl-mro-compat/APKBUILD new file mode 100644 index 000000000..bdd0e6b96 --- /dev/null +++ b/user/perl-mro-compat/APKBUILD @@ -0,0 +1,33 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-mro-compat +pkgver=0.13 +pkgrel=0 +pkgdesc="mro::* interface compatibility for older Perl" +url="https://metacpan.org/release/MRO-Compat" +arch="noarch" +license="Artistic-1.0-Perl" +depends="" +makedepends="perl-dev" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/H/HA/HAARG/MRO-Compat-$pkgver.tar.gz" +builddir="$srcdir/MRO-Compat-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="3311c37c8fc73acaf68bae2b12315a448a87de8f756e817c967cf49b753cf218e8c762ecc44890297afd82193d71b2407060db0bc70720d228b31c0a30de10c1 MRO-Compat-0.13.tar.gz" diff --git a/user/perl-namespace-autoclean/APKBUILD b/user/perl-namespace-autoclean/APKBUILD new file mode 100644 index 000000000..77163cc96 --- /dev/null +++ b/user/perl-namespace-autoclean/APKBUILD @@ -0,0 +1,34 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-namespace-autoclean +pkgver=0.28 +pkgrel=0 +pkgdesc="Keep imports out of your Perl namespace" +url="https://metacpan.org/release/namespace-autoclean" +arch="noarch" +license="Artistic-1.0-Perl" +depends="perl-b-hooks-endofscope perl-namespace-clean perl-sub-identify" +makedepends="perl-dev" +checkdepends="perl-moo perl-moose perl-mouse perl-test-requires" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/E/ET/ETHER/namespace-autoclean-$pkgver.tar.gz" +builddir="$srcdir/namespace-autoclean-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="2541f69862b334fcfe30059d025668175de1b182a5c8ee8f2619bf1d661c316a38fe2014f274bb23e887cd36959f98abb297154ac8ceb600e2e93cbd4a75e28d namespace-autoclean-0.28.tar.gz" diff --git a/user/perl-namespace-clean/APKBUILD b/user/perl-namespace-clean/APKBUILD new file mode 100644 index 000000000..7c4d0ba43 --- /dev/null +++ b/user/perl-namespace-clean/APKBUILD @@ -0,0 +1,33 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-namespace-clean +pkgver=0.27 +pkgrel=0 +pkgdesc="Keep imports and functions out of your Perl namespace" +url="https://metacpan.org/release/namespace-clean" +arch="noarch" +license="Artistic-1.0-Perl" +depends="perl-b-hooks-endofscope perl-package-stash" +makedepends="perl-dev" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/R/RI/RIBASUSHI/namespace-clean-$pkgver.tar.gz" +builddir="$srcdir/namespace-clean-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="4422640656602e44c6d3675e55a0e699f8c0e07abbaf11f0b0905043f90e13bb95ee0eaa4c4a08c853296825dd8ef33c806e0a7c284a70448e35ac3354545744 namespace-clean-0.27.tar.gz" diff --git a/user/perl-number-compare/APKBUILD b/user/perl-number-compare/APKBUILD new file mode 100644 index 000000000..c88666cc0 --- /dev/null +++ b/user/perl-number-compare/APKBUILD @@ -0,0 +1,33 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-number-compare +pkgver=0.03 +pkgrel=0 +pkgdesc="Numeric comparisons for Perl" +url="https://metacpan.org/release/Number-Compare" +arch="noarch" +license="Artistic-1.0-Perl" +depends="" +makedepends="perl-dev" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/R/RC/RCLAMP/Number-Compare-$pkgver.tar.gz" +builddir="$srcdir/Number-Compare-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="fc7efb0177bcb84142619b7d8c0252f4548e547650ddbe9cfafaba97b8ae791c20fbffa6f8b01449b9dd217d9914f94bfeaff57cdfdc2c11e2a1456992bd9893 Number-Compare-0.03.tar.gz" diff --git a/user/perl-package-deprecationmanager/APKBUILD b/user/perl-package-deprecationmanager/APKBUILD new file mode 100644 index 000000000..492c684ea --- /dev/null +++ b/user/perl-package-deprecationmanager/APKBUILD @@ -0,0 +1,34 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-package-deprecationmanager +pkgver=0.17 +pkgrel=0 +pkgdesc="Manage deprecation warnings for your Perl distribution" +url="https://metacpan.org/release/Package-DeprecationManager" +arch="noarch" +license="Artistic-2.0" +depends="perl-package-stash perl-params-util perl-sub-install perl-sub-name" +makedepends="perl-dev" +checkdepends="perl-test-fatal perl-test-warnings" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/D/DR/DROLSKY/Package-DeprecationManager-$pkgver.tar.gz" +builddir="$srcdir/Package-DeprecationManager-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="57bf79df657895342ca5b8d13f155d85f34d1a85415570b112138b6c50c5d08b421a1707671fbf807918cc334006e4558a626a7201c60096924fc2200c751cde Package-DeprecationManager-0.17.tar.gz" diff --git a/user/perl-package-stash-xs/APKBUILD b/user/perl-package-stash-xs/APKBUILD new file mode 100644 index 000000000..e3f4a2635 --- /dev/null +++ b/user/perl-package-stash-xs/APKBUILD @@ -0,0 +1,34 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-package-stash-xs +pkgver=0.28 +pkgrel=0 +pkgdesc="Faster and more correct implementation of Package::Stash" +url="https://metacpan.org/release/Package-Stash-XS" +arch="all" +license="Artistic-1.0-Perl" +depends="" +makedepends="perl-dev" +checkdepends="perl-test-fatal perl-test-requires" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/D/DO/DOY/Package-Stash-XS-$pkgver.tar.gz" +builddir="$srcdir/Package-Stash-XS-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="409e884998bf063f438335067ff8f702aa1f12fc686c1912ad532f6536a711273e52c140d9c407c47b7ba4ccacedec480c1542437a90dd76367dc0f732c0db38 Package-Stash-XS-0.28.tar.gz" diff --git a/user/perl-package-stash/APKBUILD b/user/perl-package-stash/APKBUILD new file mode 100644 index 000000000..4b07f6718 --- /dev/null +++ b/user/perl-package-stash/APKBUILD @@ -0,0 +1,34 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-package-stash +pkgver=0.37 +pkgrel=0 +pkgdesc="Perl routines for manipulating stashes" +url="https://metacpan.org/release/Package-Stash" +arch="noarch" +license="Artistic-1.0-Perl" +depends="perl-module-implementation perl-package-stash-xs" +makedepends="perl-dev" +checkdepends="perl-dist-checkconflicts perl-test-fatal perl-test-requires" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/D/DO/DOY/Package-Stash-$pkgver.tar.gz" +builddir="$srcdir/Package-Stash-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="d10321903591568d4ac4db91ad9e4dfcffe564ab22a5ecdd8fa103749c9708da082ffb3ca478e98ac120a23e51c0ab0ccf799c0da10fe2be194e9cace1f16b06 Package-Stash-0.37.tar.gz" diff --git a/user/perl-params-util/APKBUILD b/user/perl-params-util/APKBUILD new file mode 100644 index 000000000..f18775a6f --- /dev/null +++ b/user/perl-params-util/APKBUILD @@ -0,0 +1,35 @@ +# Contributor: Natanael Copa <ncopa@alpinelinux.org> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-params-util +_pkgreal=Params-Util +pkgver=1.07 +pkgrel=5 +pkgdesc="Simple, compact and correct param-checking functions" +url="https://metacpan.org/release/Params-Util" +arch="all" +license="GPL-1.0+ OR Artistic-1.0-Perl" +depends="perl" +makedepends="perl-dev" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/A/AD/ADAMK/$_pkgreal-$pkgver.tar.gz" +builddir="$srcdir/$_pkgreal-$pkgver" + +build() { + cd "$builddir" + unset CFLAGS + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="ff471b01b33414fc5e1c68d97c21171a95d3418c33e3c45f9910cc768898690e35051506a83ad9403a200336654c14b8efc9d471c4b3fe3321047a7603d6fd56 Params-Util-1.07.tar.gz" diff --git a/user/perl-params-validate/APKBUILD b/user/perl-params-validate/APKBUILD new file mode 100644 index 000000000..64d524648 --- /dev/null +++ b/user/perl-params-validate/APKBUILD @@ -0,0 +1,34 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-params-validate +pkgver=1.29 +pkgrel=0 +pkgdesc="Validate Perl method/function parameters" +url="https://metacpan.org/release/Params-Validate" +arch="all" +license="Artistic-2.0" +depends="perl-module-implementation" +makedepends="perl-dev perl-module-build" +checkdepends="perl-test-fatal perl-test-requires" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/D/DR/DROLSKY/Params-Validate-$pkgver.tar.gz" +builddir="$srcdir/Params-Validate-$pkgver" + +build() { + cd "$builddir" + perl Build.PL installdirs=vendor + ./Build +} + +check() { + cd "$builddir" + ./Build test +} + +package() { + cd "$builddir" + ./Build install destdir="$pkgdir" + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="afa887d1ce60d38b82cbf3ad88fb892f473e0fa45db528b68e66bbb800058af453180cc96afddae56a2cdad8ec531a587e7aac36b6869c489caa6dd36a57a385 Params-Validate-1.29.tar.gz" diff --git a/user/perl-parse-recdescent/APKBUILD b/user/perl-parse-recdescent/APKBUILD new file mode 100644 index 000000000..7e9bd3ebd --- /dev/null +++ b/user/perl-parse-recdescent/APKBUILD @@ -0,0 +1,35 @@ +# Contributor: Dan Theisen <djt@hxx.in> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-parse-recdescent +pkgver=1.967015 +pkgrel=0 +pkgdesc="Generate Recursive-Descent Parsers" +url="https://metacpan.org/pod/Parse::RecDescent" +arch="noarch" +license="Artistic-1.0-Perl AND GPL-2.0" +depends="perl" +makedepends="perl-dev" +checkdepends="perl-test-warn perl-test-pod" +install="" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/J/JT/JTBRAUN/Parse-RecDescent-$pkgver.tar.gz" +builddir="$srcdir/Parse-RecDescent-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="38adbfc9a88f09d0465d862b845f48c0921ce462ffccaa7ce8b5f1b7090f33f70e7f00f9ee787fd698b5539804412c44f03e7942cf675d53a17a84c3510e5aa4 Parse-RecDescent-1.967015.tar.gz" diff --git a/user/perl-path-tiny/APKBUILD b/user/perl-path-tiny/APKBUILD new file mode 100644 index 000000000..0f32e49eb --- /dev/null +++ b/user/perl-path-tiny/APKBUILD @@ -0,0 +1,35 @@ +# Contributor: Dan Theisen <djt@hxx.in> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-path-tiny +pkgver=0.108 +pkgrel=0 +pkgdesc="File path utility" +url="https://metacpan.org/pod/Path::Tiny" +arch="noarch" +license="Apache-2.0" +depends="perl" +makedepends="perl-dev" +checkdepends="perl-test-mockrandom" +install="" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/D/DA/DAGOLDEN/Path-Tiny-$pkgver.tar.gz" +builddir="$srcdir/Path-Tiny-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="21cbc8ec84474a2fc14b77a2c8b659676d4842a87a7572497c0dd6ba1c2e5f91cdefa30fc9578fdc416d8c8ee4155ff302833925c1fdf9242c898ba6a0ebee13 Path-Tiny-0.108.tar.gz" diff --git a/user/perl-pegex/APKBUILD b/user/perl-pegex/APKBUILD new file mode 100644 index 000000000..468e3d7a4 --- /dev/null +++ b/user/perl-pegex/APKBUILD @@ -0,0 +1,35 @@ +# Contributor: Dan Theisen <djt@hxx.in> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-pegex +pkgver=0.67 +pkgrel=0 +pkgdesc="Acmeist PEG Parser Framework" +url="https://metacpan.org/pod/Pegex" +arch="noarch" +license="Artistic-1.0-Perl AND GPL-2.0" +depends="perl" +makedepends="perl-dev perl-file-sharedir-install" +checkdepends="perl-yaml-libyaml" +install="" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/I/IN/INGY/Pegex-$pkgver.tar.gz" +builddir="$srcdir/Pegex-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="905e22e54bdf8050bc470a2184d8b2444f583cae82b450f2e94e00ff78441687636927bf814a8f1a1e35a4b6126a6b7270d43b3dd55d68718a8c709176412274 Pegex-0.67.tar.gz" diff --git a/user/perl-perl-tidy/APKBUILD b/user/perl-perl-tidy/APKBUILD new file mode 100644 index 000000000..84361f161 --- /dev/null +++ b/user/perl-perl-tidy/APKBUILD @@ -0,0 +1,33 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-perl-tidy +pkgver=20180220 +pkgrel=0 +pkgdesc="Indent and reformat Perl scripts" +url="https://metacpan.org/release/Perl-Tidy" +arch="noarch" +license="GPL-2.0-only" +depends="" +makedepends="perl-dev" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/S/SH/SHANCOCK/Perl-Tidy-$pkgver.tar.gz" +builddir="$srcdir/Perl-Tidy-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="93bdf2c18efdd9d62d5bb666ded9d9502a722370049a2a51f9d41107d7fa67acd91dfdd184a11eaab287f11a901ad686585e959f09407b0493719d19ce5d842e Perl-Tidy-20180220.tar.gz" diff --git a/user/perl-perlio-utf8_strict/APKBUILD b/user/perl-perlio-utf8_strict/APKBUILD new file mode 100644 index 000000000..d3efd36ae --- /dev/null +++ b/user/perl-perlio-utf8_strict/APKBUILD @@ -0,0 +1,34 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-perlio-utf8_strict +pkgver=0.007 +pkgrel=0 +pkgdesc="Fast and correct UTF-8 I/O for Perl" +url="https://metacpan.org/release/PerlIO-utf8_strict" +arch="all" +license="Artistic-1.0-Perl" +depends="" +makedepends="perl-dev" +checkdepends="perl-test-exception" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/L/LE/LEONT/PerlIO-utf8_strict-$pkgver.tar.gz" +builddir="$srcdir/PerlIO-utf8_strict-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="0d39be9bcbab4cea087f59c67dc1af6773b6258c5e836590ff58cc18bf3392ba6e95c55a0c7ce94236e0be7053802b4b1d6010130355e1a973a3698aaf49af0f PerlIO-utf8_strict-0.007.tar.gz" diff --git a/user/perl-pod-coverage/APKBUILD b/user/perl-pod-coverage/APKBUILD new file mode 100644 index 000000000..39ef36d1b --- /dev/null +++ b/user/perl-pod-coverage/APKBUILD @@ -0,0 +1,34 @@ +# Contributor: Dan Theisen <djt@hxx.in> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-pod-coverage +pkgver=0.23 +pkgrel=0 +pkgdesc="Checks if the documentation of a module is comprehensive" +url="https://metacpan.org/pod/Pod::Coverage" +arch="noarch" +license="Artistic-1.0-Perl AND GPL-2.0" +depends="perl perl-devel-symdump" +makedepends="perl-dev" +install="" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/R/RC/RCLAMP/Pod-Coverage-$pkgver.tar.gz" +builddir="$srcdir/Pod-Coverage-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="64760bcaf37b22a1308b665bcccb9273e3f7d12c9a96e4a2c4a0fddd4b528e2b476dcfeb654dc52ef3f40f64f2e7a1e860647f139dc53909c7696f406b7a312e Pod-Coverage-0.23.tar.gz" diff --git a/user/perl-role-tiny/APKBUILD b/user/perl-role-tiny/APKBUILD new file mode 100644 index 000000000..b0552ccfb --- /dev/null +++ b/user/perl-role-tiny/APKBUILD @@ -0,0 +1,34 @@ +# Contributor: Dan Theisen <djt@hxx.in> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-role-tiny +pkgver=2.000006 +pkgrel=0 +pkgdesc="A minimalist role composition tool" +url="https://metacpan.org/pod/Role::Tiny" +arch="noarch" +license="Artistic-1.0-Perl AND GPL-2.0" +depends="perl" +makedepends="perl-dev" +install="" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/H/HA/HAARG/Role-Tiny-$pkgver.tar.gz" +builddir="$srcdir/Role-Tiny-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="7640196c4bc1bf7a5437c57f0137f3bbf7c5fb92b9614805f16fec41dfb87a8bf6b7f3348ceade0800bccd72c4e5b72bcd4ab8bf28768ecda9d912c1b4c78047 Role-Tiny-2.000006.tar.gz" diff --git a/user/perl-scope-guard/APKBUILD b/user/perl-scope-guard/APKBUILD new file mode 100644 index 000000000..121aa0f5f --- /dev/null +++ b/user/perl-scope-guard/APKBUILD @@ -0,0 +1,33 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-scope-guard +pkgver=0.21 +pkgrel=0 +pkgdesc="Lexically-scoped Perl resource management" +url="https://metacpan.org/release/Scope-Guard" +arch="noarch" +license="Artistic-1.0-Perl" +depends="" +makedepends="perl-dev" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/C/CH/CHOCOLATE/Scope-Guard-$pkgver.tar.gz" +builddir="$srcdir/Scope-Guard-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="65492e08ab79dc323649166e83ffc13c6f1fffaa9c60d581d8854dfe427a54a3c3c5e4d8b90308d4b1a31a1a54c7977b4e1d36fc9005c6e716c2361ce187fc9f Scope-Guard-0.21.tar.gz" diff --git a/user/perl-specio-library-path-tiny/APKBUILD b/user/perl-specio-library-path-tiny/APKBUILD new file mode 100644 index 000000000..907d3245d --- /dev/null +++ b/user/perl-specio-library-path-tiny/APKBUILD @@ -0,0 +1,33 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-specio-library-path-tiny +pkgver=0.04 +pkgrel=0 +pkgdesc="Path::Tiny types and coercions for Specio" +url="https://metacpan.org/release/Specio-Library-Path-Tiny" +arch="noarch" +license="Apache-2.0" +depends="perl-file-pushd perl-path-tiny perl-specio" +makedepends="perl-dev" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/D/DR/DROLSKY/Specio-Library-Path-Tiny-$pkgver.tar.gz" +builddir="$srcdir/Specio-Library-Path-Tiny-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="22ecd74d31a2ee4be2deac887b178d571c31aac1867838b38cb362ee6f5deaf3082282d39241a3432bfc14db86651a13283be68b0e23e224cf8ff502503d17de Specio-Library-Path-Tiny-0.04.tar.gz" diff --git a/user/perl-specio/APKBUILD b/user/perl-specio/APKBUILD new file mode 100644 index 000000000..d8a78f519 --- /dev/null +++ b/user/perl-specio/APKBUILD @@ -0,0 +1,36 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-specio +pkgver=0.42 +pkgrel=0 +pkgdesc="Type constraints and coercions for Perl" +url="https://metacpan.org/release/Specio" +arch="noarch" +license="Artistic-2.0" +depends="perl-devel-stacktrace perl-eval-closure perl-mro-compat + perl-module-runtime perl-role-tiny perl-sub-quote perl-test-fatal + perl-try-tiny" +makedepends="perl-dev" +checkdepends="perl-test-needs" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/D/DR/DROLSKY/Specio-$pkgver.tar.gz" +builddir="$srcdir/Specio-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="7a9ff3e96cf3957d7857cd5f6af5efd9e35fc4c888fcd8177041e34a2388f54269e7a3da84ec60961fb61307beb882ebf54e19ae4346876e06197b1ff57891a0 Specio-0.42.tar.gz" diff --git a/user/perl-string-shellquote/APKBUILD b/user/perl-string-shellquote/APKBUILD new file mode 100644 index 000000000..eb310c686 --- /dev/null +++ b/user/perl-string-shellquote/APKBUILD @@ -0,0 +1,33 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-string-shellquote +pkgver=1.04 +pkgrel=0 +pkgdesc="Quote strings for passing through to the shell" +url="https://metacpan.org/release/String-ShellQuote" +arch="noarch" +license="Artistic-1.0-Perl" +depends="" +makedepends="perl-dev" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/R/RO/ROSCH/String-ShellQuote-$pkgver.tar.gz" +builddir="$srcdir/String-ShellQuote-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="f5b472985fb9c15d5c82c03b5c6c90a3a545ada854b90a96cfb7b0f57b8a817707ed91ca0f20344a2b8d200fe365ea737a9b39b64d526310d41ac2466552236d String-ShellQuote-1.04.tar.gz" diff --git a/user/perl-sub-exporter-progressive/APKBUILD b/user/perl-sub-exporter-progressive/APKBUILD new file mode 100644 index 000000000..a744538c5 --- /dev/null +++ b/user/perl-sub-exporter-progressive/APKBUILD @@ -0,0 +1,34 @@ +# Contributor: Dan Theisen <djt@hxx.in> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-sub-exporter-progressive +pkgver=0.001013 +pkgrel=0 +pkgdesc="Only use Sub::Exporter if you need it" +url="https://metacpan.org/pod/Sub::Exporter::Progressive" +arch="noarch" +license="Artistic-1.0-Perl AND GPL-2.0" +depends="perl perl-sub-exporter" +makedepends="perl-dev" +install="" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/F/FR/FREW/Sub-Exporter-Progressive-$pkgver.tar.gz" +builddir="$srcdir/Sub-Exporter-Progressive-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="28d0ac6a380a4fc1515bd69320bcfd073c0c0e92ea34bb924972aa46fb2f6912485d686f0eca5d5b885d8b06927250dfaacd1a7ff86ba029f879a183cba546c4 Sub-Exporter-Progressive-0.001013.tar.gz" diff --git a/user/perl-sub-exporter/APKBUILD b/user/perl-sub-exporter/APKBUILD new file mode 100644 index 000000000..174da8d4b --- /dev/null +++ b/user/perl-sub-exporter/APKBUILD @@ -0,0 +1,43 @@ +# Automatically generated by apkbuild-cpan, template 1 +# Contributor: Natanael Copa <ncopa@alpinelinux.org> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-sub-exporter +_pkgreal=Sub-Exporter +pkgver=0.987 +pkgrel=0 +pkgdesc="A sophisticated exporter for custom-built routines" +url="https://metacpan.org/release/Sub-Exporter" +arch="noarch" +license="GPL-1.0+ OR Artistic-1.0-Perl" +cpandepends="perl-data-optlist perl-sub-install perl-params-util" +cpanmakedepends="" +depends="$cpandepends" +makedepends="perl-dev $cpanmakedepends" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/R/RJ/RJBS/$_pkgreal-$pkgver.tar.gz" +builddir="$srcdir/$_pkgreal-$pkgver" + +prepare() { + cd "$builddir" + export CFLAGS=`perl -MConfig -E 'say $Config{ccflags}'` + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor +} + +build() { + cd "$builddir" + export CFLAGS=`perl -MConfig -E 'say $Config{ccflags}'` + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="6b682d27a0df8ce971ea48aeca5162e1c70929c51cf27119b30361477876b0b86ecb15ab13a6c3cbe5bb85be9e600589fb9e3c9c4e94bad3fc05b675d293adad Sub-Exporter-0.987.tar.gz" diff --git a/user/perl-sub-identify/APKBUILD b/user/perl-sub-identify/APKBUILD new file mode 100644 index 000000000..10e60ed79 --- /dev/null +++ b/user/perl-sub-identify/APKBUILD @@ -0,0 +1,33 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-sub-identify +pkgver=0.14 +pkgrel=0 +pkgdesc="Retrieve names of Perl code references" +url="https://metacpan.org/release/Sub-Identify" +arch="all" +license="Artistic-1.0-Perl" +depends="" +makedepends="perl-dev" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/R/RG/RGARCIA/Sub-Identify-$pkgver.tar.gz" +builddir="$srcdir/Sub-Identify-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="f69f542c84c5c3ca1f1c7f5f58fd2cf19279a65229f43117c31f24ab0e49d5f329bef2bc00f22252fd2e52b4e17f16b279dac438920668e046e59f2e22e52c14 Sub-Identify-0.14.tar.gz" diff --git a/user/perl-sub-install/APKBUILD b/user/perl-sub-install/APKBUILD new file mode 100644 index 000000000..d0883e0cd --- /dev/null +++ b/user/perl-sub-install/APKBUILD @@ -0,0 +1,34 @@ +# Contributor: Natanael Copa <ncopa@alpinelinux.org> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-sub-install +_pkgreal=Sub-Install +pkgver=0.928 +pkgrel=0 +pkgdesc="Install subroutines into packages easily" +url="https://metacpan.org/release/Sub-Install" +arch="noarch" +license="GPL-1.0+ OR Artistic-1.0-Perl" +depends="perl" +makedepends="perl-dev" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/R/RJ/RJBS/$_pkgreal-$pkgver.tar.gz" +builddir="$srcdir/$_pkgreal-$pkgver" + +build() { + cd "$_builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="3f25df9f5992075968830d4235e9f6520c526331b9180391e41483241d43253a61ad8dc381d77aaeb6c6fb841cfc5c097598e62abb46208894275c393a133ade Sub-Install-0.928.tar.gz" diff --git a/user/perl-sub-name/APKBUILD b/user/perl-sub-name/APKBUILD new file mode 100644 index 000000000..656a7a7ee --- /dev/null +++ b/user/perl-sub-name/APKBUILD @@ -0,0 +1,33 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-sub-name +pkgver=0.21 +pkgrel=0 +pkgdesc="Rename a Perl sub" +url="https://metacpan.org/release/Sub-Name" +arch="all" +license="Artistic-1.0-Perl" +depends="" +makedepends="perl-dev" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/E/ET/ETHER/Sub-Name-$pkgver.tar.gz" +builddir="$srcdir/Sub-Name-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="94be57b569f6c434ec3ef4fdff1a9d946067cf6c7ee58f716f4bc188764ee103f9a2579ee0ddf4068ec6889c186d9d447d8252a5dd2a0e882719239ac1102294 Sub-Name-0.21.tar.gz" diff --git a/user/perl-sub-quote/APKBUILD b/user/perl-sub-quote/APKBUILD new file mode 100644 index 000000000..778b7f793 --- /dev/null +++ b/user/perl-sub-quote/APKBUILD @@ -0,0 +1,34 @@ +# Contributor: Dan Theisen <djt@hxx.in> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-sub-quote +pkgver=2.005001 +pkgrel=0 +pkgdesc="Efficient generation of subroutines via string eval" +url="https://metacpan.org/release/Sub-Quote" +arch="noarch" +license="Artistic-1.0-Perl AND GPL-2.0" +depends="perl" +makedepends="perl-dev perl-test-fatal" +install="" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/H/HA/HAARG/Sub-Quote-$pkgver.tar.gz" +builddir="$srcdir/Sub-Quote-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="3c32348c8ac6a8831faf75b084a6108657a3cfc0841fda8d8a182c4ca38c88f800bc60a01df07a2010b9a877e120fc46720f17f11092de5e97f40c36854ba24c Sub-Quote-2.005001.tar.gz" diff --git a/user/perl-task-freecellsolver-testing/APKBUILD b/user/perl-task-freecellsolver-testing/APKBUILD new file mode 100644 index 000000000..c31fc7b7d --- /dev/null +++ b/user/perl-task-freecellsolver-testing/APKBUILD @@ -0,0 +1,38 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-task-freecellsolver-testing +pkgver=0.0.11 +pkgrel=0 +pkgdesc="Perl module for testing the Freecell Solver package" +url="https://metacpan.org/release/Task-FreecellSolver-Testing" +arch="noarch" +license="MIT" +depends="perl-code-tidyall perl-env-path perl-file-which + perl-games-solitaire-verify perl-inline perl-inline-c + perl-list-moreutils perl-moo perl-moox perl-moox-late perl-path-tiny + perl-string-shellquote perl-task-test-run-allplugins + perl-template-toolkit perl-test-data-split perl-test-differences + perl-test-perltidy perl-test-runvalgrind perl-test-trailingspace" +makedepends="perl-dev perl-module-build" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/S/SH/SHLOMIF/Task-FreecellSolver-Testing-v$pkgver.tar.gz" +builddir="$srcdir/Task-FreecellSolver-Testing-v$pkgver" + +build() { + cd "$builddir" + perl Build.PL installdirs=vendor + ./Build +} + +check() { + cd "$builddir" + ./Build test +} + +package() { + cd "$builddir" + ./Build install destdir="$pkgdir" + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="85c3d7e68e0fa14abac2442ec7b6e90cc4df9f6733fbd87e5a872043a03a71d8cd3a262c816d861a1c729646ff379665c1d5d6e0bc80ae476db089d9d3793b82 Task-FreecellSolver-Testing-v0.0.11.tar.gz" diff --git a/user/perl-task-test-run-allplugins/APKBUILD b/user/perl-task-test-run-allplugins/APKBUILD new file mode 100644 index 000000000..1afce955b --- /dev/null +++ b/user/perl-task-test-run-allplugins/APKBUILD @@ -0,0 +1,38 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: A. Wilcox <awilfox@adelielinux.org> +pkgname=perl-task-test-run-allplugins +pkgver=0.0105 +pkgrel=0 +pkgdesc="Install all the Test::Run plugins" +url="https://metacpan.org/release/Task-Test-Run-AllPlugins" +arch="noarch" +license="MIT" +depends="perl-test-run perl-test-run-cmdline + perl-test-run-plugin-alternateinterpreters + perl-test-run-plugin-breakonfailure + perl-test-run-plugin-colourfileverdicts + perl-test-run-plugin-coloursummary + perl-test-run-plugin-trimdisplayedfilenames" +makedepends="perl-dev" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/S/SH/SHLOMIF/Task-Test-Run-AllPlugins-$pkgver.tar.gz" +builddir="$srcdir/Task-Test-Run-AllPlugins-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="5d2baa82658a3a80b07fd22d1ca2ccf7a1ff528685f8044fe5b152130957465d4bd1b032a2a02c966e7739d3b947b709bffabf96d74b77fe6c65479f6f09f964 Task-Test-Run-AllPlugins-0.0105.tar.gz" diff --git a/user/perl-template-toolkit/APKBUILD b/user/perl-template-toolkit/APKBUILD new file mode 100644 index 000000000..e8547949a --- /dev/null +++ b/user/perl-template-toolkit/APKBUILD @@ -0,0 +1,34 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-template-toolkit +pkgver=2.27 +pkgrel=0 +pkgdesc="Comprehensive template processing system" +url="https://metacpan.org/release/Template-Toolkit" +arch="all" +license="Artistic-1.0-Perl" +depends="perl-appconfig" +makedepends="perl-dev" +checkdepends="perl-cgi perl-test-leaktrace" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/A/AB/ABW/Template-Toolkit-$pkgver.tar.gz" +builddir="$srcdir/Template-Toolkit-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="17f03a01a3d6ab0ef2247c77da15c46d9bbce3e0158172162da6abe47f53c5e7ca041a7c31506bb3a37f31c476ba747f5111c5b1b1d69614a4ce3352927fd4e6 Template-Toolkit-2.27.tar.gz" diff --git a/user/perl-test-class-most/APKBUILD b/user/perl-test-class-most/APKBUILD new file mode 100644 index 000000000..fe48ea68e --- /dev/null +++ b/user/perl-test-class-most/APKBUILD @@ -0,0 +1,33 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-test-class-most +pkgver=0.08 +pkgrel=0 +pkgdesc="Test Perl classes the easy way" +url="https://metacpan.org/release/Test-Class-Most" +arch="noarch" +license="Artistic-1.0-Perl" +depends="perl-test-class perl-test-most" +makedepends="perl-dev" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/O/OV/OVID/Test-Class-Most-$pkgver.tar.gz" +builddir="$srcdir/Test-Class-Most-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="30284e5c186727df87688176e3fb8683000796c8fc2f45d243c8a2ad42d4d52e840ca6f0baedf5dc9a7b6a246472ff96c92d0c407dbd65c5152a7cf5a61003c1 Test-Class-Most-0.08.tar.gz" diff --git a/user/perl-test-class/APKBUILD b/user/perl-test-class/APKBUILD new file mode 100644 index 000000000..6043308d4 --- /dev/null +++ b/user/perl-test-class/APKBUILD @@ -0,0 +1,34 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-test-class +pkgver=0.50 +pkgrel=0 +pkgdesc="Create Perl test classes in xUnit/JUnit style" +url="https://metacpan.org/release/Test-Class" +arch="noarch" +license="Artistic-1.0-Perl" +depends="perl-module-runtime perl-mro-compat perl-try-tiny" +makedepends="perl-dev" +checkdepends="perl-test-exception" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/E/ET/ETHER/Test-Class-$pkgver.tar.gz" +builddir="$srcdir/Test-Class-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="27ae19f60a916f5a23cccdc02ff6168e76d5f1cee5df196df4fe50024f7270ee9eaffdf02e9b6de70565c9b6b30606ad0a30477ac8951164b87c641caf960dcc Test-Class-0.50.tar.gz" diff --git a/user/perl-test-cleannamespaces/APKBUILD b/user/perl-test-cleannamespaces/APKBUILD new file mode 100644 index 000000000..718bc3a27 --- /dev/null +++ b/user/perl-test-cleannamespaces/APKBUILD @@ -0,0 +1,36 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-test-cleannamespaces +pkgver=0.23 +pkgrel=0 +pkgdesc="Check Perl code for uncleaned imports" +url="https://metacpan.org/release/Test-CleanNamespaces" +arch="noarch" +license="Artistic-1.0-Perl" +depends="perl-file-pushd perl-module-runtime perl-namespace-clean + perl-package-stash perl-sub-identify" +makedepends="perl-dev" +checkdepends="perl-moo perl-mouse perl-sub-exporter perl-test-deep + perl-test-needs perl-test-warnings" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/E/ET/ETHER/Test-CleanNamespaces-$pkgver.tar.gz" +builddir="$srcdir/Test-CleanNamespaces-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="c40587c09bcd6a6ebc6801e12a3d33fcd2695b650fe02546a8a6da7d038ba5b1218d730a09f3b8942824a0506aca3edfcbcdf204906569dad5c46816b91e8a99 Test-CleanNamespaces-0.23.tar.gz" diff --git a/user/perl-test-data-split/APKBUILD b/user/perl-test-data-split/APKBUILD new file mode 100644 index 000000000..0e5269e41 --- /dev/null +++ b/user/perl-test-data-split/APKBUILD @@ -0,0 +1,34 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-test-data-split +pkgver=0.2.1 +pkgrel=0 +pkgdesc="Split data-driven Perl tests into several test scripts" +url="https://metacpan.org/release/Test-Data-Split" +arch="noarch" +license="MIT" +depends="perl-io-all perl-list-moreutils perl-moox perl-moox-late" +makedepends="perl-dev perl-module-build" +checkdepends="perl-test-differences" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/S/SH/SHLOMIF/Test-Data-Split-$pkgver.tar.gz" +builddir="$srcdir/Test-Data-Split-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="db6ae688318b6cd98cbbdf0c94e7a1d5ea52c96262d7ed5e1aea2a2380cfa851c468d8775c3cd5520f9e5e8bfdc67e367d66d0027f1452d208250c88f76bffae Test-Data-Split-0.2.1.tar.gz" diff --git a/user/perl-test-deep/APKBUILD b/user/perl-test-deep/APKBUILD new file mode 100644 index 000000000..0c488f4e2 --- /dev/null +++ b/user/perl-test-deep/APKBUILD @@ -0,0 +1,34 @@ +# Contributor: Dan Theisen <djt@hxx.in> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-test-deep +pkgver=1.128 +pkgrel=0 +pkgdesc="Extremely flexible deep comparison" +url="https://metacpan.org/pod/Test::Deep" +arch="noarch" +license="Artistic-1.0-Perl AND GPL-2.0" +depends="perl" +makedepends="perl-dev" +install="" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/R/RJ/RJBS/Test-Deep-$pkgver.tar.gz" +builddir="$srcdir/Test-Deep-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="d4642b3268a10d8e882beabfbb3b3bf891a57aa7ebb74bc4919a4368df9c9acd2351498401538ae50299071f99e06b4443686d20f8c9f95f5fd588309ccee302 Test-Deep-1.128.tar.gz" diff --git a/user/perl-test-differences/APKBUILD b/user/perl-test-differences/APKBUILD new file mode 100644 index 000000000..64a93147b --- /dev/null +++ b/user/perl-test-differences/APKBUILD @@ -0,0 +1,34 @@ +# Contributor: Dan Theisen <djt@hxx.in> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-test-differences +pkgver=0.64 +pkgrel=0 +pkgdesc="Test strings and data structures and show differences if not ok" +url="https://metacpan.org/pod/Test::Differences" +arch="noarch" +license="Artistic-1.0-Perl OR GPL-1.0" +depends="perl perl-text-diff perl-capture-tiny perl-test-pod-coverage perl-test-pod" +makedepends="perl-dev" +install="" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/D/DC/DCANTRELL/Test-Differences-$pkgver.tar.gz" +builddir="$srcdir/Test-Differences-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="118a4b8e3f61f64d6676c82913bb605a843a408f3fc5d960b40cc86f10423380a203b2a5604e15ba8d4e0cff96af88b551fba1c7aa2ada3c0ef408a27ee5f069 Test-Differences-0.64.tar.gz" diff --git a/user/perl-test-file/APKBUILD b/user/perl-test-file/APKBUILD new file mode 100644 index 000000000..947598ca1 --- /dev/null +++ b/user/perl-test-file/APKBUILD @@ -0,0 +1,35 @@ +# Contributor: Dan Theisen <djt@hxx.in> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-test-file +pkgver=1.443 +pkgrel=0 +pkgdesc="Test file attributes" +url="https://metacpan.org/pod/Test::File" +arch="noarch" +license="Artistic-1.0-Perl AND GPL-2.0" +depends="perl" +makedepends="perl-dev" +checkdepends="perl-test-pod perl-test-pod-coverage perl-test-utf8" +install="" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/B/BD/BDFOY/Test-File-$pkgver.tar.gz" +builddir="$srcdir/Test-File-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="9ad66b3a9dc1c3752a4ec22934db9139ac010ac3237a3de018d4ec4a65ac047f0152ab9e7979a2615412c1af02a1f2dfa0dbfdf5eba5358628b1b443232c45b2 Test-File-1.443.tar.gz" diff --git a/user/perl-test-mockrandom/APKBUILD b/user/perl-test-mockrandom/APKBUILD new file mode 100644 index 000000000..ddf840a56 --- /dev/null +++ b/user/perl-test-mockrandom/APKBUILD @@ -0,0 +1,34 @@ +# Contributor: Dan Theisen <djt@hxx.in> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-test-mockrandom +pkgver=1.01 +pkgrel=0 +pkgdesc="Replaces random number generation with non-random number generation" +url="https://metacpan.org/pod/Test::MockRandom" +arch="noarch" +license="Apache-2.0" +depends="perl" +makedepends="perl-dev" +install="" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/D/DA/DAGOLDEN/Test-MockRandom-$pkgver.tar.gz" +builddir="$srcdir/Test-MockRandom-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="e222bd0d3d7673b403e80d1633ddaca0ee35f96f2245e8df859d661edc7efc09b9a96d3718f25b6614395d1f24d66c9498e842cec476cf8c5b12464d585f85e7 Test-MockRandom-1.01.tar.gz" diff --git a/user/perl-test-most/APKBUILD b/user/perl-test-most/APKBUILD new file mode 100644 index 000000000..34cd800f8 --- /dev/null +++ b/user/perl-test-most/APKBUILD @@ -0,0 +1,33 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-test-most +pkgver=0.35 +pkgrel=0 +pkgdesc="Most commonly needed Perl test functions and features" +url="https://metacpan.org/release/Test-Most" +arch="noarch" +license="Artistic-1.0-Perl" +depends="perl-exception-class perl-test-deep perl-test-differences perl-test-exception perl-test-warn" +makedepends="perl-dev" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/O/OV/OVID/Test-Most-$pkgver.tar.gz" +builddir="$srcdir/Test-Most-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="1b2d201811e59d7afce47ff5f7da67c170d4685ffbec23360757b5cacc9fe72fc82609bc46cc9d8e351fdb75715696457c201dd94fadaeca70a6f31690236291 Test-Most-0.35.tar.gz" diff --git a/user/perl-test-output/APKBUILD b/user/perl-test-output/APKBUILD new file mode 100644 index 000000000..8454737f3 --- /dev/null +++ b/user/perl-test-output/APKBUILD @@ -0,0 +1,44 @@ +# Automatically generated by apkbuild-cpan, template 1 +# Contributor: Francesco Colista <fcolista@alpinelinux.org> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-test-output +_pkgreal=Test-Output +pkgver=1.031 +pkgrel=0 +pkgdesc="Utilities to test STDOUT and STDERR messages" +url="https://metacpan.org/release/Test-Output" +arch="noarch" +license="Artistic-2.0" +cpandepends="perl-capture-tiny perl-sub-exporter perl-test-simple" +cpanmakedepends="" +depends="$cpandepends" +makedepends="perl-dev $cpanmakedepends" +checkdepends="perl-test-pod" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/B/BD/BDFOY/$_pkgreal-$pkgver.tar.gz" +builddir="$srcdir/$_pkgreal-$pkgver" + +prepare() { + cd "$builddir" + export CFLAGS=`perl -MConfig -E 'say $Config{ccflags}'` + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor +} + +build() { + cd "$builddir" + export CFLAGS=`perl -MConfig -E 'say $Config{ccflags}'` + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="b443d5a4ab7be1c308b74ebc9a1a50022b404886e8a1dbd2700d974ead506a6976ec6d5c141528cf1c2833174c3afd9023362cb0b4e000f0e878d2e3e9f90e90 Test-Output-1.031.tar.gz" diff --git a/user/perl-test-perltidy/APKBUILD b/user/perl-test-perltidy/APKBUILD new file mode 100644 index 000000000..392257c83 --- /dev/null +++ b/user/perl-test-perltidy/APKBUILD @@ -0,0 +1,33 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-test-perltidy +pkgver=20130104 +pkgrel=0 +pkgdesc="Check all your Perl files for tidiness" +url="https://metacpan.org/release/Test-PerlTidy" +arch="noarch" +license="Artistic-1.0-Perl" +depends="perl-file-finder perl-file-slurp perl-perl-tidy perl-text-diff" +makedepends="perl-dev" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/L/LA/LARRYL/Test-PerlTidy-$pkgver.tar.gz" +builddir="$srcdir/Test-PerlTidy-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="47d77083ec6f4808ac60bdb19431b3013b996f83506b0af490a6fa52f4f71a8c1812cf21b447568661495c845d524f9c2be6842380bd41c9ccfe22ec6acd802f Test-PerlTidy-20130104.tar.gz" diff --git a/user/perl-test-pod-coverage/APKBUILD b/user/perl-test-pod-coverage/APKBUILD new file mode 100644 index 000000000..903724f9b --- /dev/null +++ b/user/perl-test-pod-coverage/APKBUILD @@ -0,0 +1,35 @@ +# Contributor: Dan Theisen <djt@hxx.in> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-test-pod-coverage +pkgver=1.10 +pkgrel=0 +pkgdesc="Check for pod coverage in your distribution" +url="https://metacpan.org/pod/Test::Pod::Coverage" +arch="noarch" +license="Artistic-2.0" +depends="perl perl-pod-coverage" +makedepends="perl-dev" +checkdepends="perl-test-pod" +install="" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/N/NE/NEILB/Test-Pod-Coverage-$pkgver.tar.gz" +builddir="$srcdir/Test-Pod-Coverage-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="ebcebb900f4367984245d1915937200e2de8586a6e6ea9c9b71588e56caf68808ee73c21e633434ab5c43b80b42dd56cb0cbd4e67519e928270e1eda06c1d02c Test-Pod-Coverage-1.10.tar.gz" diff --git a/user/perl-test-run-cmdline/APKBUILD b/user/perl-test-run-cmdline/APKBUILD new file mode 100644 index 000000000..42d624844 --- /dev/null +++ b/user/perl-test-run-cmdline/APKBUILD @@ -0,0 +1,35 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-test-run-cmdline +pkgver=0.0131 +pkgrel=0 +pkgdesc="Analyse tests from the command line using Perl Test::Run" +url="https://metacpan.org/release/Test-Run-CmdLine" +arch="noarch" +license="MIT" +depends="perl-moose perl-moosex-getopt perl-test-run perl-universal-require + perl-yaml-libyaml" +makedepends="perl-dev" +checkdepends="perl-test-trap" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/S/SH/SHLOMIF/Test-Run-CmdLine-$pkgver.tar.gz" +builddir="$srcdir/Test-Run-CmdLine-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="b55ccae6a8cd453fa13083eabf63afa0f01eebe2c244cb5d4118b1be3ecab8077b77e03bef768254a84bd38b1cfb00e9f7053349696fd64fbc670ed43bd54357 Test-Run-CmdLine-0.0131.tar.gz" diff --git a/user/perl-test-run-plugin-ai/APKBUILD b/user/perl-test-run-plugin-ai/APKBUILD new file mode 100644 index 000000000..3537a1197 --- /dev/null +++ b/user/perl-test-run-plugin-ai/APKBUILD @@ -0,0 +1,33 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-test-run-plugin-alternateinterpreters +pkgver=0.0124 +pkgrel=0 +pkgdesc="Define different interpreters for test scripts with Perl Test::Run" +url="https://metacpan.org/release/Test-Run-Plugin-AlternateInterpreters" +arch="noarch" +license="MIT" +depends="perl-moose perl-mro-compat perl-test-run perl-test-run-cmdline" +makedepends="perl-dev" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/S/SH/SHLOMIF/Test-Run-Plugin-AlternateInterpreters-$pkgver.tar.gz" +builddir="$srcdir/Test-Run-Plugin-AlternateInterpreters-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="54649bde2b97eb7dfeef5392a63787e4ce10c37474acf27f35ab7b466a05564f98be82d99690963b3249c1585ab986e25ac2cf2be72c13b460d467d90b4de719 Test-Run-Plugin-AlternateInterpreters-0.0124.tar.gz" diff --git a/user/perl-test-run-plugin-bof/APKBUILD b/user/perl-test-run-plugin-bof/APKBUILD new file mode 100644 index 000000000..e776778b6 --- /dev/null +++ b/user/perl-test-run-plugin-bof/APKBUILD @@ -0,0 +1,33 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-test-run-plugin-breakonfailure +pkgver=0.0.5 +pkgrel=0 +pkgdesc="Stop processing entire Test::Run suite on single failure" +url="https://metacpan.org/release/Test-Run-Plugin-BreakOnFailure" +arch="noarch" +license="MIT" +depends="perl-moose perl-mro-compat perl-test-run perl-test-run-cmdline" +makedepends="perl-dev" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/S/SH/SHLOMIF/Test-Run-Plugin-BreakOnFailure-v$pkgver.tar.gz" +builddir="$srcdir/Test-Run-Plugin-BreakOnFailure-v$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="a3e25847e0277ea32803b0eec68061471644f7bba03d9dd558d5a15c6dbe8615d933f6d4ee6851f217511434be933be1a848ee0d9b46c545ae37a0abc59a0a72 Test-Run-Plugin-BreakOnFailure-v0.0.5.tar.gz" diff --git a/user/perl-test-run-plugin-cfv/APKBUILD b/user/perl-test-run-plugin-cfv/APKBUILD new file mode 100644 index 000000000..3fa80c7d2 --- /dev/null +++ b/user/perl-test-run-plugin-cfv/APKBUILD @@ -0,0 +1,34 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-test-run-plugin-colourfileverdicts +pkgver=0.0124 +pkgrel=0 +pkgdesc="Make Perl Test::Run file verdicts (ok, not ok) colourful" +url="https://metacpan.org/release/Test-Run-Plugin-ColorFileVerdicts" +arch="noarch" +license="MIT" +depends="perl-moose perl-mro-compat perl-test-run perl-test-run-cmdline" +makedepends="perl-dev" +subpackages="$pkgname-doc" +provides="perl-test-run-plugin-colorfileverdicts=$pkgver-r$pkgrel" +source="https://cpan.metacpan.org/authors/id/S/SH/SHLOMIF/Test-Run-Plugin-ColorFileVerdicts-$pkgver.tar.gz" +builddir="$srcdir/Test-Run-Plugin-ColorFileVerdicts-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="405eb2e58b6c76fba3f5e0737e5816e8d4ef69d7fb3b7e81d8cfce10cd847d02339bc6802bb935009a27e5eb2ed16f8535280d7abb4ce5b6d1a26c9b2f99f117 Test-Run-Plugin-ColorFileVerdicts-0.0124.tar.gz" diff --git a/user/perl-test-run-plugin-cs/APKBUILD b/user/perl-test-run-plugin-cs/APKBUILD new file mode 100644 index 000000000..4dff25604 --- /dev/null +++ b/user/perl-test-run-plugin-cs/APKBUILD @@ -0,0 +1,34 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-test-run-plugin-coloursummary +pkgver=0.0202 +pkgrel=0 +pkgdesc="Perl Test::Run plugin that colours test summary" +url="https://metacpan.org/release/Test-Run-Plugin-ColorSummary" +arch="noarch" +license="MIT" +depends="perl-moose perl-mro-compat perl-test-run perl-test-run-cmdline" +makedepends="perl-dev" +subpackages="$pkgname-doc" +provides="perl-test-run-plugin-colorsummary=$pkgver-r$pkgrel" +source="https://cpan.metacpan.org/authors/id/S/SH/SHLOMIF/Test-Run-Plugin-ColorSummary-$pkgver.tar.gz" +builddir="$srcdir/Test-Run-Plugin-ColorSummary-$pkgver" + +build() { + cd "$builddir" + perl Build.PL installdirs=vendor + ./Build +} + +check() { + cd "$builddir" + ./Build test +} + +package() { + cd "$builddir" + ./Build install destdir="$pkgdir" + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="c5ab0c50379a8527f613dd9663573a89f4be2336c51789fa11c9cd2ddb9a416fb60b63b8ce6bdd121b10fae3ecd2fa306f523f0c27e84bcd7b3e234882c1d7ef Test-Run-Plugin-ColorSummary-0.0202.tar.gz" diff --git a/user/perl-test-run-plugin-tdf/APKBUILD b/user/perl-test-run-plugin-tdf/APKBUILD new file mode 100644 index 000000000..34b106e39 --- /dev/null +++ b/user/perl-test-run-plugin-tdf/APKBUILD @@ -0,0 +1,33 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-test-run-plugin-trimdisplayedfilenames +pkgver=0.0125 +pkgrel=0 +pkgdesc="Handle excessively long filenames in Perl Test::Run suites" +url="https://metacpan.org/release/Test-Run-Plugin-TrimDisplayedFilenames" +arch="noarch" +license="MIT" +depends="perl-moose perl-mro-compat perl-test-run perl-test-run-cmdline" +makedepends="perl-dev" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/S/SH/SHLOMIF/Test-Run-Plugin-TrimDisplayedFilenames-$pkgver.tar.gz" +builddir="$srcdir/Test-Run-Plugin-TrimDisplayedFilenames-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="79bdfc093e8a4ce16fe933ebe367e71c27eb67500a6fd1ce57e51a5998f35cbf3f6afe143c74ce82e1e5ab700399fec48b0acbb9e23cc7796a8aa5cdc2bd9ea3 Test-Run-Plugin-TrimDisplayedFilenames-0.0125.tar.gz" diff --git a/user/perl-test-run/APKBUILD b/user/perl-test-run/APKBUILD new file mode 100644 index 000000000..ccf3e975d --- /dev/null +++ b/user/perl-test-run/APKBUILD @@ -0,0 +1,35 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-test-run +pkgver=0.0304 +pkgrel=0 +pkgdesc="Perl classes to run standard TAP scripts" +url="https://metacpan.org/release/Test-Run" +arch="noarch" +license="MIT" +depends="perl-ipc-system-simple perl-list-moreutils perl-moose + perl-moosex-strictconstructor perl-test-trap perl-text-sprintf-named + perl-universal-require" +makedepends="perl-dev" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/S/SH/SHLOMIF/Test-Run-$pkgver.tar.gz" +builddir="$srcdir/Test-Run-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="05a4f5e621194319263b33a68a5a733062b6f17a0b08c32ad02a1fece4ff7072305ae6305494c9a0d8e03fb9ae2e4b1c9a044e591c1b30968f08adfed0fe3c37 Test-Run-0.0304.tar.gz" diff --git a/user/perl-test-runvalgrind/APKBUILD b/user/perl-test-runvalgrind/APKBUILD new file mode 100644 index 000000000..c6f31b336 --- /dev/null +++ b/user/perl-test-runvalgrind/APKBUILD @@ -0,0 +1,36 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-test-runvalgrind +pkgver=0.2.0 +pkgrel=0 +pkgdesc="Tests an external program is 'valgrind clean' from Perl" +url="https://metacpan.org/release/Test-RunValgrind" +arch="noarch" +license="MIT" +depends="perl-path-tiny perl-test-trap" +makedepends="perl-dev perl-module-build" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/S/SH/SHLOMIF/Test-RunValgrind-$pkgver.tar.gz + portable-memory-assumptions.patch + " +builddir="$srcdir/Test-RunValgrind-$pkgver" + +build() { + cd "$builddir" + perl Build.PL installdirs=vendor + ./Build +} + +check() { + cd "$builddir" + ./Build test +} + +package() { + cd "$builddir" + ./Build install destdir="$pkgdir" + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="e85547d24fb7c8b0a8fd1a84826eec51d3c4c94d83cbb525517515ecc27b0ba530378a10f8a2ffee9fb1f48eb2e65a6a2654738ee069bd85adcec7f4c205f143 Test-RunValgrind-0.2.0.tar.gz +f2ebba2310df820666728e5f59c44f5b63cd03efdb42092f22700da13b4f099ae5c911292fb2a0f271f7629343727ea14c5953d2918c98419a580e5a998cb650 portable-memory-assumptions.patch" diff --git a/user/perl-test-runvalgrind/portable-memory-assumptions.patch b/user/perl-test-runvalgrind/portable-memory-assumptions.patch new file mode 100644 index 000000000..927da1194 --- /dev/null +++ b/user/perl-test-runvalgrind/portable-memory-assumptions.patch @@ -0,0 +1,14 @@ +Upstream: https://github.com/shlomif/perl-Test-RunValgrind/issues/5 + +--- Test-RunValgrind-0.2.0/lib/Test/RunValgrind.pm.old 2018-01-26 18:07:19.000000000 +0000 ++++ Test-RunValgrind-0.2.0/lib/Test/RunValgrind.pm 2018-10-02 22:42:05.450000000 +0000 +@@ -80,7 +80,8 @@ + index( $$out_text, q{ERROR SUMMARY: 0 errors from 0 contexts} ) >= 0 + ) + && ( $self->_ignore_leaks +- || ( index( $$out_text, q{in use at exit: 0 bytes} ) >= 0 ) ) ++ || ( index( $$out_text, q{in use at exit: 0 bytes} ) >= 0 ) ++ || ( index( $$out_text, q{still reachable: 0 bytes} ) >= 0 ) ) + ); + } + diff --git a/user/perl-test-trailingspace/APKBUILD b/user/perl-test-trailingspace/APKBUILD new file mode 100644 index 000000000..ccaf8e873 --- /dev/null +++ b/user/perl-test-trailingspace/APKBUILD @@ -0,0 +1,33 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-test-trailingspace +pkgver=0.0301 +pkgrel=0 +pkgdesc="Test for trailing spaces in Perl source files" +url="https://metacpan.org/release/Test-TrailingSpace" +arch="noarch" +license="MIT" +depends="perl-file-find-object-rule" +makedepends="perl-dev perl-module-build" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/S/SH/SHLOMIF/Test-TrailingSpace-$pkgver.tar.gz" +builddir="$srcdir/Test-TrailingSpace-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="9ec511759b12265c2a98a06a54081e0ca0377e707b29174fb874fd505330e0abfafebe910f7ceba9f8a6bcbfcf5d74fc8ffdca2e17b9cad15c207213449085d4 Test-TrailingSpace-0.0301.tar.gz" diff --git a/user/perl-test-trap/APKBUILD b/user/perl-test-trap/APKBUILD new file mode 100644 index 000000000..6f777f969 --- /dev/null +++ b/user/perl-test-trap/APKBUILD @@ -0,0 +1,33 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-test-trap +pkgver=0.3.4 +pkgrel=0 +pkgdesc="Trap Perl exit codes, exceptions, and output" +url="https://metacpan.org/release/Test-Trap" +arch="noarch" +license="Artistic-1.0-Perl" +depends="perl-data-dump" +makedepends="perl-dev" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/E/EB/EBHANSSEN/Test-Trap-v$pkgver.tar.gz" +builddir="$srcdir/Test-Trap-v$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="cac4412a55511c820a1813a277afa802769a64219bf306190d83fea775c53bcd1d7faa275cb7f1b435e5ae274b6c1f78dd862525a6426040e51fdaf537e720ff Test-Trap-v0.3.4.tar.gz" diff --git a/user/perl-test-utf8/APKBUILD b/user/perl-test-utf8/APKBUILD new file mode 100644 index 000000000..ee562a170 --- /dev/null +++ b/user/perl-test-utf8/APKBUILD @@ -0,0 +1,34 @@ +# Contributor: Dan Theisen <djt@hxx.in> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-test-utf8 +pkgver=1.01 +pkgrel=0 +pkgdesc="Handy UTF8 tests" +url="https://metacpan.org/pod/Test::utf8" +arch="noarch" +license="Artistic-1.0-Perl AND GPL-2.0" +depends="perl" +makedepends="perl-dev perl-module-install" +install="" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/M/MA/MARKF/Test-utf8-$pkgver.tar.gz" +builddir="$srcdir/Test-utf8-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="07dcd5ed98a63f7d96bb0fc629b168773d02bb4c93c5bc44ec60738fc29669794547dfde5913f9de682cd583cf85f4d82b6151398aaebcfec9278525447b9c4e Test-utf8-1.01.tar.gz" diff --git a/user/perl-test-warnings/APKBUILD b/user/perl-test-warnings/APKBUILD new file mode 100644 index 000000000..9b65d822e --- /dev/null +++ b/user/perl-test-warnings/APKBUILD @@ -0,0 +1,34 @@ +# Contributor: Dan Theisen <djt@hxx.in> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-test-warnings +pkgver=0.026 +pkgrel=0 +pkgdesc="Test for warnings and the lack of them" +url="https://metacpan.org/pod/Test::Warnings" +arch="noarch" +license="Artistic-1.0-Perl AND GPL-2.0" +depends="perl" +makedepends="perl-dev" +install="" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/E/ET/ETHER/Test-Warnings-$pkgver.tar.gz" +builddir="$srcdir/Test-Warnings-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="510e182299173fa01482cde642fe5d84a77ea2f3b1761c7d8bf855caed963f276134357b4d7662bb3fbf09621ac6e11451fe19bf0ba2cf96bc841c280a624cd4 Test-Warnings-0.026.tar.gz" diff --git a/user/perl-text-diff/APKBUILD b/user/perl-text-diff/APKBUILD new file mode 100644 index 000000000..303106e54 --- /dev/null +++ b/user/perl-text-diff/APKBUILD @@ -0,0 +1,34 @@ +# Contributor: Dan Theisen <djt@hxx.in> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-text-diff +pkgver=1.45 +pkgrel=0 +pkgdesc="Perform diffs on files and record sets" +url="https://metacpan.org/pod/Text::Diff" +arch="noarch" +license="GPL-2.0+ OR Artistic-1.0-Perl" +depends="perl perl-algorithm-diff" +makedepends="perl-dev" +install="" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/N/NE/NEILB/Text-Diff-$pkgver.tar.gz" +builddir="$srcdir/Text-Diff-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="569370707bf30d60d12df6389594bcdba050805005916ac3a485c2226e528891b0af9ecfcc13d20e4f377d2c36a7ff67e51de5ca409c647aa8a36b7a87eab367 Text-Diff-1.45.tar.gz" diff --git a/user/perl-text-glob/APKBUILD b/user/perl-text-glob/APKBUILD new file mode 100644 index 000000000..85bbc7a9b --- /dev/null +++ b/user/perl-text-glob/APKBUILD @@ -0,0 +1,33 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-text-glob +pkgver=0.11 +pkgrel=0 +pkgdesc="glob(3) style string matching for Perl" +url="https://metacpan.org/release/Text-Glob" +arch="noarch" +license="Artistic-1.0-Perl" +depends="" +makedepends="perl-dev" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/R/RC/RCLAMP/Text-Glob-$pkgver.tar.gz" +builddir="$srcdir/Text-Glob-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="20322fee3f56ee7e65f0f8e5371d9dbbe89895d8b9c9207486e7934e29bd883fb557c9765e406f85f56b67019293d82a0318ded83a9387b164cb5e8f58bef0cb Text-Glob-0.11.tar.gz" diff --git a/user/perl-text-sprintf-named/APKBUILD b/user/perl-text-sprintf-named/APKBUILD new file mode 100644 index 000000000..210880dd4 --- /dev/null +++ b/user/perl-text-sprintf-named/APKBUILD @@ -0,0 +1,34 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-text-sprintf-named +pkgver=0.0403 +pkgrel=0 +pkgdesc="sprintf-like function for Perl with named conversions" +url="https://metacpan.org/release/Text-Sprintf-Named" +arch="noarch" +license="MIT" +depends="perl-module-build" +makedepends="perl-dev" +checkdepends="perl-test-warn" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/S/SH/SHLOMIF/Text-Sprintf-Named-$pkgver.tar.gz" +builddir="$srcdir/Text-Sprintf-Named-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="93e56c8850274625e3156826f57d40820632dde24e9ebbfdf502d83d29c9796faac25a422e5a15d0c97fb67424f9d9abd93437e3eb0818c8338f42a59bc3adb3 Text-Sprintf-Named-0.0403.tar.gz" diff --git a/user/perl-time-duration-parse/APKBUILD b/user/perl-time-duration-parse/APKBUILD new file mode 100644 index 000000000..22fbfbe7e --- /dev/null +++ b/user/perl-time-duration-parse/APKBUILD @@ -0,0 +1,33 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-time-duration-parse +pkgver=0.14 +pkgrel=0 +pkgdesc="Parse strings in Perl that represent time durations" +url="https://metacpan.org/release/Time-Duration-Parse" +arch="noarch" +license="Artistic-1.0-Perl" +depends="perl-exporter-lite perl-time-duration" +makedepends="perl-dev" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/N/NE/NEILB/Time-Duration-Parse-$pkgver.tar.gz" +builddir="$srcdir/Time-Duration-Parse-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="49dcb7d3979df7e84141ebf9262b2283dfe535502b71633d95424376146d81bbf5d6932035dde878a5b1bef265d84a029412ff0187927569cf48ad193ea2f8e3 Time-Duration-Parse-0.14.tar.gz" diff --git a/user/perl-time-duration/APKBUILD b/user/perl-time-duration/APKBUILD new file mode 100644 index 000000000..daf931ee5 --- /dev/null +++ b/user/perl-time-duration/APKBUILD @@ -0,0 +1,33 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-time-duration +pkgver=1.20 +pkgrel=0 +pkgdesc="Rounded or exact English expression of time durations in Perl" +url="https://metacpan.org/release/Time-Duration" +arch="noarch" +license="Artistic-1.0-Perl" +depends="" +makedepends="perl-dev" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/N/NE/NEILB/Time-Duration-$pkgver.tar.gz" +builddir="$srcdir/Time-Duration-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="74bdcbc2b65061ad30540a95467de24f552235cea2367a7770309d9ffefeb35717f438e4f7ebf6a1d63f338cd714ffe16b3f45808514995db9753d643892d5f9 Time-Duration-1.20.tar.gz" diff --git a/user/perl-timedate/APKBUILD b/user/perl-timedate/APKBUILD new file mode 100644 index 000000000..9ecfd67ae --- /dev/null +++ b/user/perl-timedate/APKBUILD @@ -0,0 +1,33 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-timedate +pkgver=2.30 +pkgrel=0 +pkgdesc="Date and time handling routines for Perl" +url="https://metacpan.org/release/TimeDate" +arch="noarch" +license="Artistic-1.0-Perl" +depends="" +makedepends="perl-dev" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/G/GB/GBARR/TimeDate-$pkgver.tar.gz" +builddir="$srcdir/TimeDate-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="c6aa7d57fbe82260c7455f74f6dfda55f7c93d7a75914bafb9d09ebfb83b5f57f6bc1e332ab0764d7688d857eb022b0f5e92cf5b685d809c63cdfa93a8d2c221 TimeDate-2.30.tar.gz" diff --git a/user/perl-type-tiny/APKBUILD b/user/perl-type-tiny/APKBUILD new file mode 100644 index 000000000..9e4cd812c --- /dev/null +++ b/user/perl-type-tiny/APKBUILD @@ -0,0 +1,33 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-type-tiny +pkgver=1.004002 +pkgrel=0 +pkgdesc="Tiny Moo(se) compatible type constraint" +url="https://metacpan.org/release/Type-Tiny" +arch="noarch" +license="Artistic-1.0-Perl" +depends="perl-exporter-tiny" +makedepends="perl-dev" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/T/TO/TOBYINK/Type-Tiny-$pkgver.tar.gz" +builddir="$srcdir/Type-Tiny-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="fcdd8740e1ef6a2c5d214a54b57e65ebd222188377ebdd7bbdadc74741f3a5d00ba4a7490628bfb7cc937a32f5d5a578963ea1b6208e8fb99f095f2c3239cf82 Type-Tiny-1.004002.tar.gz" diff --git a/user/perl-types-serialiser/APKBUILD b/user/perl-types-serialiser/APKBUILD new file mode 100644 index 000000000..6c34d8215 --- /dev/null +++ b/user/perl-types-serialiser/APKBUILD @@ -0,0 +1,34 @@ +# Contributor: Dan Theisen <djt@hxx.in> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-types-serialiser +pkgver=1.0 +pkgrel=0 +pkgdesc="Simple data types for common serialisation formats" +url="https://metacpan.org/pod/Types::Serialiser" +arch="noarch" +license="Artistic-1.0-Perl AND GPL-2.0" +depends="perl perl-common-sense" +makedepends="perl-dev" +install="" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/M/ML/MLEHMANN/Types-Serialiser-$pkgver.tar.gz" +builddir="$srcdir/Types-Serialiser-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="b786bcd3ee976a6ad948cc98a9c71d2cdcd30f485528eff059091f6d86ae7078c10ba2dc2982326fcf0184dbfbdddea84daff324c6ec6a129fe6aac01253c8fb Types-Serialiser-1.0.tar.gz" diff --git a/user/perl-universal-require/APKBUILD b/user/perl-universal-require/APKBUILD new file mode 100644 index 000000000..4bf801678 --- /dev/null +++ b/user/perl-universal-require/APKBUILD @@ -0,0 +1,33 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-universal-require +pkgver=0.18 +pkgrel=0 +pkgdesc="require() Perl modules from a variable" +url="https://metacpan.org/release/UNIVERSAL-require" +arch="noarch" +license="Artistic-1.0-Perl" +depends="" +makedepends="perl-dev" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/N/NE/NEILB/UNIVERSAL-require-$pkgver.tar.gz" +builddir="$srcdir/UNIVERSAL-require-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="4e1dbb62f850a2f3da3301e37862d03ad89106e9fd55ac8161ae56eff936948f87b9215c734c103d8031e1b712847bff86de43329f65f00e7e34ee83bb66c22d UNIVERSAL-require-0.18.tar.gz" diff --git a/user/perl-variable-magic/APKBUILD b/user/perl-variable-magic/APKBUILD new file mode 100644 index 000000000..605369668 --- /dev/null +++ b/user/perl-variable-magic/APKBUILD @@ -0,0 +1,33 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-variable-magic +pkgver=0.62 +pkgrel=0 +pkgdesc="Associate user-defined magic to variables from Perl" +url="https://metacpan.org/release/Variable-Magic" +arch="all" +license="Artistic-1.0-Perl" +depends="" +makedepends="perl-dev" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/V/VP/VPIT/Variable-Magic-$pkgver.tar.gz" +builddir="$srcdir/Variable-Magic-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="fdaad8ab1a16a4723e30a155086f7f9ecad60b021b0ca5d449a0bc001b858a53e2857cfdc3fc4e3dcc28e2f59a14f3531afd93e3f71fda3b8fcaa8bc50d0c380 Variable-Magic-0.62.tar.gz" diff --git a/user/perl-x11-xcb/APKBUILD b/user/perl-x11-xcb/APKBUILD new file mode 100644 index 000000000..586a8959d --- /dev/null +++ b/user/perl-x11-xcb/APKBUILD @@ -0,0 +1,38 @@ +# Contributor: Dan Theisen <djt@hxx.in> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-x11-xcb +pkgver=0.18 +pkgrel=0 +pkgdesc="Perl bindings for libxcb" +url="https://metacpan.org/pod/X11::XCB" +arch="all" +license="Artistic-1.0-Perl AND GPL-2.0" +depends="perl perl-extutils-pkgconfig perl-extutils-depends + perl-xs-object-magic perl-data-dump perl-xml-simple + perl-xml-descent perl-mouse perl-mousex-nativetraits" +makedepends="perl-dev perl-xs-object-magic-dev libxcb-dev + xcb-util-dev xcb-util-wm-dev" +checkdepends="perl-test-deep perl-test-exception" +options="!check" # Tests require a running X server +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/M/MS/MSTPLBG/X11-XCB-$pkgver.tar.gz" +builddir="$srcdir/X11-XCB-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make -j1 +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="eeecd8fbf080a6ca2f28b8fe4b64c97339f27b27c9c70d1a8e7c0f56af193243295aa1fc65039d24c81396126befc27ca114ca4cd1641139a788c46fe600f3ba X11-XCB-0.18.tar.gz" diff --git a/user/perl-xml-descent/APKBUILD b/user/perl-xml-descent/APKBUILD new file mode 100644 index 000000000..846a4361e --- /dev/null +++ b/user/perl-xml-descent/APKBUILD @@ -0,0 +1,35 @@ +# Contributor: Dan Theisen <djt@hxx.in> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-xml-descent +pkgver=1.04 +pkgrel=0 +pkgdesc="Recursive descent XML parsing" +url="https://metacpan.org/pod/XML::Descent" +arch="noarch" +license="Artistic-1.0-Perl AND GPL-2.0" +depends="perl perl-xml-tokeparser" +makedepends="perl-dev" +checkdepends="perl-test-pod perl-test-differences" +install="" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/A/AN/ANDYA/XML-Descent-$pkgver.tar.gz" +sha512sums="779a476907ecfbe9c279fa1f476c3aa64de626c515719643be21fef8b945cdd5c1f654a189bf7ea9a6964a88818e101e1eddc019439a5dcb397f56b13bdfa415 XML-Descent-1.04.tar.gz" +builddir="$srcdir/XML-Descent-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + diff --git a/user/perl-xml-namespacesupport/APKBUILD b/user/perl-xml-namespacesupport/APKBUILD new file mode 100644 index 000000000..e155f6b32 --- /dev/null +++ b/user/perl-xml-namespacesupport/APKBUILD @@ -0,0 +1,32 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-xml-namespacesupport +pkgver=1.12 +pkgrel=0 +pkgdesc="A Perl module for processing XML namespaces" +url="https://metacpan.org/pod/XML::NamespaceSupport" +arch="noarch" +license="Artistic-1.0-Perl AND GPL-2.0+" +depends="perl" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/P/PE/PERIGRIN/XML-NamespaceSupport-$pkgver.tar.gz" +builddir="$srcdir/XML-NamespaceSupport-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="8a29698acc152888b3abd53b277f89209252830cc3b57d587a5b66e5019445d7c1858a08fa548d42387c1143b726da1440e36eb0c69b0b59c3770b5f528f38b2 XML-NamespaceSupport-1.12.tar.gz" diff --git a/user/perl-xml-simple/APKBUILD b/user/perl-xml-simple/APKBUILD new file mode 100644 index 000000000..9327c5fc3 --- /dev/null +++ b/user/perl-xml-simple/APKBUILD @@ -0,0 +1,32 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-xml-simple +pkgver=2.25 +pkgrel=0 +pkgdesc="A Perl module for parsing XML" +url="https://metacpan.org/pod/XML::Simple" +arch="noarch" +license="Artistic-1.0-Perl AND GPL-2.0+" +depends="perl perl-xml-parser perl-xml-namespacesupport" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/G/GR/GRANTM/XML-Simple-$pkgver.tar.gz" +builddir="$srcdir/XML-Simple-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="0f1a6a1bdb8f6ac6fa4deef33d09930eb4758b4a3ed4431624004ffa2b1eb02f0d6ce14cb4942162cb76f7aa39fea4ec6a71e1eb9ebd464b710db7024bdd990c XML-Simple-2.25.tar.gz" diff --git a/user/perl-xml-tokeparser/APKBUILD b/user/perl-xml-tokeparser/APKBUILD new file mode 100644 index 000000000..a797ee9e4 --- /dev/null +++ b/user/perl-xml-tokeparser/APKBUILD @@ -0,0 +1,34 @@ +# Contributor: Dan Theisen <djt@hxx.in> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-xml-tokeparser +pkgver=0.05 +pkgrel=0 +pkgdesc="Simplified interface to XML::Parser" +url="https://metacpan.org/pod/XML::TokeParser" +arch="noarch" +license="Artistic-1.0-Perl AND GPL-2.0" +depends="perl perl-xml-parser" +makedepends="perl-dev" +install="" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/P/PO/PODMASTER/XML-TokeParser-$pkgver.tar.gz" +sha512sums="c19be15013a04908ae863ec1095af34785ad6050c8f895759e98053a0c097c9a80f5c99d33e30675c003cde7eb3b9340e866bc90c5fbcfcad93666df42439a7a XML-TokeParser-0.05.tar.gz" +builddir="$srcdir/XML-TokeParser-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + diff --git a/user/perl-xs-object-magic/APKBUILD b/user/perl-xs-object-magic/APKBUILD new file mode 100644 index 000000000..f36be4872 --- /dev/null +++ b/user/perl-xs-object-magic/APKBUILD @@ -0,0 +1,36 @@ +# Contributor: Dan Theisen <djt@hxx.in> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-xs-object-magic +pkgver=0.04 +pkgrel=0 +pkgdesc="Opaque, extensible XS pointer backed objects using sv_magic" +url="https://metacpan.org/pod/XS::Object::Magic" +arch="all" +license="Artistic-1.0-Perl AND GPL-2.0" +depends="perl perl-module-install perl-extutils-depends" +depends_dev="" +makedepends="$depends_dev perl-dev" +checkdepends="perl-test-fatal" +install="" +subpackages="$pkgname-dev $pkgname-doc" +source="https://cpan.metacpan.org/authors/id/F/FL/FLORA/XS-Object-Magic-$pkgver.tar.gz" +sha512sums="315288496c0bab79f16d010f7f140dc1483bb3a1053a7fc41a048308aa1f9ae01b03795be28f132c856360176372d2251315ae62db950e377be88ff222a441dd XS-Object-Magic-0.04.tar.gz" +builddir="$srcdir/XS-Object-Magic-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + diff --git a/user/perl-yaml-libyaml/APKBUILD b/user/perl-yaml-libyaml/APKBUILD new file mode 100644 index 000000000..516971ac2 --- /dev/null +++ b/user/perl-yaml-libyaml/APKBUILD @@ -0,0 +1,35 @@ +# Contributor: Dan Theisen <djt@hxx.in> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-yaml-libyaml +pkgver=0.74 +pkgrel=0 +pkgdesc="Perl YAML Serialization using XS and libyaml" +url="https://metacpan.org/pod/YAML::LibYAML" +arch="all" +license="Artistic-1.0-Perl AND GPL-2.0" +depends="perl" +depends_dev="" +makedepends="$depends_dev perl-dev" +install="" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/I/IN/INGY/YAML-LibYAML-$pkgver.tar.gz" +builddir="$srcdir/YAML-LibYAML-$pkgver" + +build() { + cd "$builddir" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete +} + +sha512sums="fbc502b1c9173ec76a01e99d303bffd4c97d0a8f30dc6fe8f1962f8edc0296d81fb06c1ef958a0ec81a45259f1f9f6fcdfc3a056054dbf24ae8ce4a4be736614 YAML-LibYAML-0.74.tar.gz" diff --git a/user/php7/APKBUILD b/user/php7/APKBUILD index 194120417..f68ba54d2 100644 --- a/user/php7/APKBUILD +++ b/user/php7/APKBUILD @@ -25,7 +25,7 @@ pkgname=php7 _pkgname=php -pkgver=7.2.8 +pkgver=7.2.11 pkgrel=0 _apiver=20170718 pkgdesc="The PHP7 language runtime engine" @@ -522,7 +522,7 @@ _mv() { mv $@ } -sha512sums="4eaab35ff99c6829e4e67b99d0dbc1d25b83210c9d894fbb9e6810dd3de8b7d5bd62b2d8a9f2ecb3c1f2f5a9c28116a22b36f019a21b8770f02fe1e3149728d9 php-7.2.8.tar.bz2 +sha512sums="a6bdd639648ae7845467e01303d0b4f4b85fd541409be97a5a605e91a9c994609e4e221a9c87c576134e66a2439920486d1f444e6fe8c34b0e5d025cee6d0cc8 php-7.2.11.tar.bz2 23df4e779c809db3e3b8e5b0353b1aafaad2f3dc56f2d1cd45f9b0e3ad71b32e40700d6ebfe914b3c87e8e0b670d0dc862ded1e5c898adf160e33dea372e044f php-fpm.initd 01d4ba3ef104ea378eb0e8cbb7bdee3fdf65e4bd6865eb3bc6c0dc4af31c2d52887abdf0150b5ef984b877860285a3b1af84b11ffebb5b8b722ea9faf83edfeb php-fpm.logrotate a7f9ba5e11652fd1cb9e756c3269269a95de083ecb5be936a85c7a09c1396db9088e0251c6a643c40235c0e776fce2a471e5c7f5a033b85c7d3b3110c2b39e48 php-module.conf diff --git a/user/physlock/APKBUILD b/user/physlock/APKBUILD new file mode 100644 index 000000000..a2c4e471f --- /dev/null +++ b/user/physlock/APKBUILD @@ -0,0 +1,28 @@ +# Contributor: Max Rees <maxcrees@me.com> +# Maintainer: Max Rees <maxcrees@me.com> +pkgname=physlock +pkgver=11 +pkgrel=0 +pkgdesc="Lightweight Linux console-locking tool" +url="https://github.com/muennich/physlock" +arch="all" +options="!check suid" # No test suite. +license="GPL-2.0+" +depends="" +makedepends="linux-headers linux-pam-dev utmps-dev" +subpackages="$pkgname-doc" +source="$pkgname-$pkgver.tar.gz::https://github.com/muennich/physlock/archive/v$pkgver.tar.gz + utmps.patch" + +build() { + cd "$builddir" + make +} + +package() { + cd "$builddir" + make PREFIX="/usr" DESTDIR="$pkgdir" install +} + +sha512sums="d3badf5c99e4e3e16f4e7ec5c59ee8320c845f1b180463900d816206362ce1aa8652f2489453ad5e190cceee2ed61a90acc52e25bb6b4c4a9dc8c4ebd3054938 physlock-11.tar.gz +d461b462dedfb7505f506ce1050d5140b8729f50a383157157e4f65465f63174cc11dc0a46cc1eed57cec0293006c5ec6cc6e96af9acab009ab3c9fe5e2381d5 utmps.patch" diff --git a/user/physlock/utmps.patch b/user/physlock/utmps.patch new file mode 100644 index 000000000..efae166a9 --- /dev/null +++ b/user/physlock/utmps.patch @@ -0,0 +1,33 @@ +--- physlock-11/auth.c 2017-07-13 07:23:52.000000000 +0000 ++++ physlock-11/auth.c 2018-09-21 21:21:36.240024566 +0000 +@@ -16,13 +16,14 @@ + * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + */ + ++#define _GNU_SOURCE + #include <paths.h> + #include <stdio.h> + #include <stdlib.h> + #include <string.h> + #include <pwd.h> + #include <unistd.h> +-#include <utmp.h> ++#include <utmpx.h> + #include <errno.h> + #include <security/pam_misc.h> + +@@ -41,12 +42,12 @@ static void get_pam(userinfo_t *uinfo) { + + void get_user(userinfo_t *uinfo, int vt, uid_t owner) { + FILE *uf; +- struct utmp r; ++ struct utmpx r; + struct passwd *pw; + char tty[16], name[UT_NAMESIZE+1]; + + uinfo->name = NULL; +- while ((uf = fopen(_PATH_UTMP, "r")) == NULL && errno == EINTR); ++ while ((uf = fopen(UTMPX_FILE, "r")) == NULL && errno == EINTR); + + if (uf != NULL) { + snprintf(tty, sizeof(tty), "tty%d", vt); diff --git a/user/pigz/APKBUILD b/user/pigz/APKBUILD new file mode 100644 index 000000000..107019248 --- /dev/null +++ b/user/pigz/APKBUILD @@ -0,0 +1,35 @@ +# Contributor: William Pitcock <nenolod@dereferenced.org> +# Maintainer: A. Wilcox <awilfox@adelielinux.org> +pkgname=pigz +pkgver=2.4 +pkgrel=0 +pkgdesc="Parallel implementation of gzip" +url="http://zlib.net/pigz/" +arch="all" +license="zlib" +makedepends="zlib-dev" +subpackages="$pkgname-doc" +source="http://zlib.net/pigz/pigz-$pkgver.tar.gz" + +build() { + cd "$builddir" + export CXXFLAGS="$CXXFLAGS -std=gnu++98" + make +} + +check() { + cd "$builddir" + make tests +} + +package() { + cd "$builddir" + mkdir -p "$pkgdir"/usr/bin + mkdir -p "$pkgdir"/usr/share/man/man1 + for i in pigz unpigz; do + install -m755 $i "$pkgdir"/usr/bin + done + install -m644 pigz.1 "$pkgdir"/usr/share/man/man1 +} + +sha512sums="79b2357176f93b9f3e2bc07fee393fc4d79b7bd0041808f8ddfd23eafccde72e60ca95e97595bb624a4f732fe3612bf46d57c44541c36ae62f9aa6336abe16ba pigz-2.4.tar.gz" diff --git a/user/plasma-framework/APKBUILD b/user/plasma-framework/APKBUILD index 6234f9b56..4bac08265 100644 --- a/user/plasma-framework/APKBUILD +++ b/user/plasma-framework/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=plasma-framework -pkgver=5.50.0 +pkgver=5.51.0 pkgrel=0 pkgdesc="Frameworks for the KDE Plasma 5 desktop environment" url="https://www.kde.org/" @@ -47,4 +47,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="b0cee3cbca89f5497ea3525b52dafe1c0219fa29086454ba235bc02e9a2870ac1dcbddd3c05f5eb9b0fd2e9a5ac04b9aafcd4d03939f5023b907a5749fb22d87 plasma-framework-5.50.0.tar.xz" +sha512sums="5c5949101ce9f3c520f9b2663041292b4f070fc97061678e8aa8ea05b677f15ff5804ad66242cc3ffb11dd32ced50fdfa976c1f36540f0f09dfd6e5df114d800 plasma-framework-5.51.0.tar.xz" diff --git a/user/polkit/APKBUILD b/user/polkit/APKBUILD index 52a742130..ea5cb0c02 100644 --- a/user/polkit/APKBUILD +++ b/user/polkit/APKBUILD @@ -2,7 +2,7 @@ # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=polkit pkgver=0.115 -pkgrel=0 +pkgrel=1 pkgdesc="Toolkit for controlling system-wide privileges" url="https://www.freedesktop.org/wiki/Software/polkit/" arch="all" @@ -12,7 +12,9 @@ depends="" makedepends="glib-dev gobject-introspection-dev gtk-doc intltool linux-pam-dev mozjs-dev" subpackages="$pkgname-dev $pkgname-doc $pkgname-lang" -pkgusers="polkit" +pkgusers="polkitd" +pkggroups="polkitd" +install="$pkgname.pre-install" source="https://www.freedesktop.org/software/polkit/releases/polkit-$pkgver.tar.gz 0001-make-netgroup-support-optional.patch fix-consolekit-db-stat.patch diff --git a/user/polkit/polkit.pre-install b/user/polkit/polkit.pre-install new file mode 100644 index 000000000..816f89236 --- /dev/null +++ b/user/polkit/polkit.pre-install @@ -0,0 +1,5 @@ +#!/bin/sh + +useradd -r -s /sbin/nologin -d /usr/lib/polkit-1 -M -U polkitd 2>/dev/null + +exit 0 diff --git a/user/poppler-qt5/APKBUILD b/user/poppler-qt5/APKBUILD index 854e018a7..f6d9eb933 100644 --- a/user/poppler-qt5/APKBUILD +++ b/user/poppler-qt5/APKBUILD @@ -1,7 +1,7 @@ # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=poppler-qt5 _realname=poppler -pkgver=0.68.0 +pkgver=0.69.0 pkgrel=0 pkgdesc="PDF rendering library based on xpdf 3.0 (Qt 5 bindings)" url="https://poppler.freedesktop.org/" @@ -38,4 +38,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="98449ab96db1d17901ec44b1a71b0375ac83d0f13e059b83afb452939a3ae6375c4667ae029fa333fad3eed2d8315e5f1208f34d3548c5530f0ecc7a5841c27a poppler-0.68.0.tar.xz" +sha512sums="9c0382059c786e17b16dc0847212006a7c05e51b3963a7470e49cede87c7855bdfa1b80b2d884e4fb4a430cdd5ab666391ecf53230486e245b6f28af03890e1d poppler-0.69.0.tar.xz" diff --git a/user/poppler/APKBUILD b/user/poppler/APKBUILD index 41371d01e..4542c0de7 100644 --- a/user/poppler/APKBUILD +++ b/user/poppler/APKBUILD @@ -1,6 +1,6 @@ # Maintainer: pkgname=poppler -pkgver=0.68.0 +pkgver=0.69.0 pkgrel=0 pkgdesc="PDF rendering library based on xpdf 3.0" url="https://poppler.freedesktop.org/" @@ -59,4 +59,4 @@ _cpp() { "$subpkgdir"/usr/lib/ } -sha512sums="98449ab96db1d17901ec44b1a71b0375ac83d0f13e059b83afb452939a3ae6375c4667ae029fa333fad3eed2d8315e5f1208f34d3548c5530f0ecc7a5841c27a poppler-0.68.0.tar.xz" +sha512sums="9c0382059c786e17b16dc0847212006a7c05e51b3963a7470e49cede87c7855bdfa1b80b2d884e4fb4a430cdd5ab666391ecf53230486e245b6f28af03890e1d poppler-0.69.0.tar.xz" diff --git a/user/postgresql/APKBUILD b/user/postgresql/APKBUILD index 8cd12f153..7fed2351e 100644 --- a/user/postgresql/APKBUILD +++ b/user/postgresql/APKBUILD @@ -2,7 +2,7 @@ # Contributor: Jakub Jirutka <jakub@jirutka.cz> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=postgresql -pkgver=10.4 +pkgver=10.5 pkgrel=0 pkgdesc="Featureful object-relational database system (RDBMS)" url="https://www.postgresql.org/" @@ -249,7 +249,7 @@ _submv() { done } -sha512sums="b7c0d2fdc724e2eb1cda9fc1eb01b47352bbe6ba6357b3e898b7f5990fd78499c8c68dcb3aa9bde7821d71b5882d8856131384e899f8055d89d51cdfdbc9e663 postgresql-10.4.tar.bz2 +sha512sums="1bad30ae88beca66f7e8b99b82e7f02aac1e9230b328e6e5a762a704cdd9dc767d924f5a66c68c93586badfef91b7ff336120a567ce970eaa58bb44c662ad48c postgresql-10.5.tar.bz2 1f8e7dc58f5b0a12427cf2fd904ffa898a34f23f3332c8382b94e0d991c007289e7913a69e04498f3d93fc5701855796c207b4b1cc4a0b366f586050124d7fcc initdb.patch 5f9d8bb4957194069d01af8ab3abc6d4d83a7e7f8bd7ebe1caae5361d621a3e58f91b14b952958138a794e0a80bc154fbb7e3e78d211e2a95b9b7901335de854 perl-rpath.patch 8439a6fdfdea0a4867daeb8bc23d6c825f30c00d91d4c39f48653f5ee77341f23282ce03a77aad94b5369700f11d2cb28d5aee360e59138352a9ab331a9f9d0f conf-unix_socket_directories.patch diff --git a/user/prison/APKBUILD b/user/prison/APKBUILD index 5ccc01d17..04d6f8939 100644 --- a/user/prison/APKBUILD +++ b/user/prison/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=prison -pkgver=5.50.0 +pkgver=5.51.0 pkgrel=0 pkgdesc="Qt Barcode library for programatically creating QR codes" url="https://www.kde.org/" @@ -47,4 +47,4 @@ quick() { mv "$pkgdir"/usr/lib/qt5/qml "$subpkgdir"/usr/lib/qt5/ } -sha512sums="69baa1f0fb3859d7c32e53463e4c81d4f394ddf61ed6b11bd907a9edc98098b1895b01990bfe787359b9f5eae5b214a1c514b4bdacdbd0f7de2a10dfe90163d9 prison-5.50.0.tar.xz" +sha512sums="69e6f56d5fac5b2601230f40a8db688bb95ebe476c9cffd5ece4b58cf8697c237b80fb6525f6ff330b9c720553ddcccd87ed6c3241c8c7ea4a59a599b420919a prison-5.51.0.tar.xz" diff --git a/user/prosody/APKBUILD b/user/prosody/APKBUILD new file mode 100644 index 000000000..990de722f --- /dev/null +++ b/user/prosody/APKBUILD @@ -0,0 +1,59 @@ +# Contributor: Mika Havela <mika.havela@gmail.com> +# Contributor: Francesco Colista <fcolista@alpinelinux.org> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=prosody +pkgver=0.10.2 +pkgrel=0 +pkgdesc="Lua based Jabber/XMPP server" +url="http://prosody.im/" +arch="all" +options="!check" # broken testsuite +license="MIT" +depends="lua-socket lua-expat lua-filesystem lua-sec lua5.3" +makedepends="linux-headers lua5.3-dev libidn-dev openssl-dev" +install="prosody.pre-install" +subpackages="$pkgname-doc $pkgname-openrc" +pkgusers="prosody" +pkggroups="prosody" +source="https://prosody.im/downloads/source/$pkgname-$pkgver.tar.gz + prosody.cfg.lua.patch + mallinfo.patch + $pkgname.initd + " + +build() { + cd "$builddir" + ./configure \ + --prefix=/usr \ + --sysconfdir=/etc/prosody \ + --ostype=linux \ + --with-lua-lib=/usr/lib \ + --with-lua-include=/usr/include \ + --lua-version=5.3 \ + --no-example-certs + # Don't generate certs + rm -f "$builddir"/certs/Makefile + + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + + install -d -o prosody -g prosody "$pkgdir/var/log/prosody" + install -d -o prosody -g prosody "$pkgdir/var/run/prosody" + install -d -m750 -o prosody -g prosody "$pkgdir/var/lib/prosody" + + install -D -m755 "$srcdir"/"$pkgname".initd "$pkgdir"/etc/init.d/"$pkgname" +} + +sha512sums="9fc05e34b45b0c16835ba94a73532fb3b4ee335f27d56bb9260e1b3e22614f89f44eb5d04b4e90d016db0b5bee6f5c7e7d099e1defb027e6823ee7667c1fe28f prosody-0.10.2.tar.gz +a6ca168fe3d11ee3b05295fb36dfaf8240c60a85507032b2502f9a97d3fd055f7eee38ba6efbb8f79472fc7cdd3556922194d0bd7099f7fb809be01890acc511 prosody.cfg.lua.patch +b07498cd42677d09f1a3fd4a5d91a085e90dd10cee7d6ee7c5e41438cfc2f4049ab9948c0fd0f7e148dd81f6a25c64c6ae832ea4864cee2329d3c6735216b78b mallinfo.patch +24360603dbd5d2a92758e6c4b4aab4f02cbd05373580cba2df76df98b6045891e8108e8c2d16af9508e93968ed5880db952e7a21b2742ebeec6f14b167968c2c prosody.initd" diff --git a/user/prosody/luasec-0.6-fix.patch b/user/prosody/luasec-0.6-fix.patch new file mode 100644 index 000000000..c8e37d091 --- /dev/null +++ b/user/prosody/luasec-0.6-fix.patch @@ -0,0 +1,14 @@ +diff --git a/util/dependencies.lua b/util/dependencies.lua +index 4d50cf6..9ea211d 100644 +--- a/util/dependencies.lua ++++ b/util/dependencies.lua +@@ -99,6 +99,9 @@ function check_dependencies() + ["luarocks"] = "luarocks install luasec"; + ["Source"] = "http://www.inf.puc-rio.br/~brunoos/luasec/"; + }, "SSL/TLS support will not be available"); ++ elseif not _G.ssl then ++ _G.ssl = ssl; ++ _G.ssl.context = require "ssl.context"; + end + + local encodings, err = softreq "util.encodings" diff --git a/user/prosody/mallinfo.patch b/user/prosody/mallinfo.patch new file mode 100644 index 000000000..4f9247c9b --- /dev/null +++ b/user/prosody/mallinfo.patch @@ -0,0 +1,13 @@ +diff --git a/util-src/pposix.c b/util-src/pposix.c +index e70a9d7..b9729ab 100644 +--- a/util-src/pposix.c ++++ b/util-src/pposix.c +@@ -52,7 +52,7 @@ + #include <linux/falloc.h> + #endif + +-#if !defined(WITHOUT_MALLINFO) && defined(__linux__) ++#ifdef __GLIBC__ + #include <malloc.h> + #define WITH_MALLINFO + #endif diff --git a/user/prosody/prosody.cfg.lua.patch b/user/prosody/prosody.cfg.lua.patch new file mode 100644 index 000000000..ff74c5172 --- /dev/null +++ b/user/prosody/prosody.cfg.lua.patch @@ -0,0 +1,36 @@ +diff --git a/prosody.cfg.lua.dist b/prosody.cfg.lua.dist +index a0fc6c9..23a36ac 100644 +--- a/prosody.cfg.lua.dist ++++ b/prosody.cfg.lua.dist +@@ -13,6 +13,9 @@ + -- blanks. Good luck, and happy Jabbering! + + ++daemonize = true ++pidfile = "/var/run/prosody/prosody.pid" ++ + ---------- Server-wide settings ---------- + -- Settings in this section apply to the whole server and are the default settings + -- for any virtual hosts +@@ -86,7 +89,7 @@ modules_disabled = { + -- "offline"; -- Store offline messages + -- "c2s"; -- Handle client connections + -- "s2s"; -- Handle server-to-server connections +- -- "posix"; -- POSIX functionality, sends server to background, enables syslog, etc. ++ "posix"; -- POSIX functionality, sends server to background, enables syslog, etc. + } + + -- Disable account creation by default, for security +@@ -161,9 +164,9 @@ archive_expires_after = "1w" -- Remove archived messages after 1 week + -- Logging configuration + -- For advanced logging see https://prosody.im/doc/logging + log = { +- info = "prosody.log"; -- Change 'info' to 'debug' for verbose logging +- error = "prosody.err"; +- -- "*syslog"; -- Uncomment this for logging to syslog ++ -- info = "prosody.log"; -- Change 'info' to 'debug' for verbose logging ++ -- error = "prosody.err"; ++ "*syslog"; -- Uncomment this for logging to syslog + -- "*console"; -- Log to the console, useful for debugging with daemonize=false + } + diff --git a/user/prosody/prosody.initd b/user/prosody/prosody.initd new file mode 100644 index 000000000..1d835daca --- /dev/null +++ b/user/prosody/prosody.initd @@ -0,0 +1,47 @@ +#!/sbin/openrc-run +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +description="Prosody is a server for prosody/XMPP written in Lua." +description_reload="Reload configuration and reopen log files." +extra_started_commands="reload" +pidfile="/var/run/prosody/prosody.pid" + +depend() { + use dns + need net + provide prosody-server +} + +checkconfig() { + if [ ! -e /etc/prosody/prosody.cfg.lua ] ; then + eerror "You need a /etc/prosody/prosody.cfg.lua file to run prosody" + return 1 + fi + luac5.2 -p /etc/prosody/prosody.cfg.lua + return $? +} + +start() { + checkconfig || return 1 + checkpath -q -d -m 0770 -o prosody:prosody "$(dirname ${pidfile})" + checkpath -q -f -m 0770 -o prosody:prosody "${pidfile}" + checkpath -q -d -m 0750 -o prosody:prosody /var/log/prosody + ebegin "Starting Prosody XMPP Server" + prosodyctl start + eend $? +} + +stop() { + ebegin "Stopping Prosody XMPP Server" + prosodyctl stop + eend $? +} + +reload() { + checkconfig || return 1 + ebegin "Reloading configuration of Prosody XMPP Server" + prosodyctl reload + eend $? +} diff --git a/user/prosody/prosody.pre-install b/user/prosody/prosody.pre-install new file mode 100644 index 000000000..39d9cfadd --- /dev/null +++ b/user/prosody/prosody.pre-install @@ -0,0 +1,11 @@ +#!/bin/sh + +addgroup -S prosody 2>/dev/null +adduser -S -D \ + -h /var/lib/prosody \ + -s /sbin/nologin \ + -G prosody \ + -g "Prosody XMPP Server" \ + prosody 2>/dev/null + +exit 0 diff --git a/user/prosody/prosodyctl.patch b/user/prosody/prosodyctl.patch new file mode 100644 index 000000000..18333dd52 --- /dev/null +++ b/user/prosody/prosodyctl.patch @@ -0,0 +1,11 @@ +--- prosody-0.9.10.q/prosodyctl ++++ prosody-0.9.10/prosodyctl +@@ -244,7 +244,7 @@ + local modulemanager = require "core.modulemanager" + + local prosodyctl = require "util.prosodyctl" +-require "socket" ++local socket = require "socket" + ----------------------- + + -- FIXME: Duplicate code waiting for util.startup diff --git a/user/protobuf/APKBUILD b/user/protobuf/APKBUILD new file mode 100644 index 000000000..f8ff737a6 --- /dev/null +++ b/user/protobuf/APKBUILD @@ -0,0 +1,108 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman@gmail.com> +# Contributor: Natanael Copa <ncopa@alpinelinux.org> +# Maintainer: Dan Theisen <djt@hxx.in> +# TODO: Build Python module, and clean up Ruby build process +pkgname=protobuf +_gemname=google-protobuf +pkgver=3.6.1 +_tstver=1.8.0 +pkgrel=0 +pkgdesc="Library for extensible, efficient structure packing" +url="https://github.com/google/protobuf" +arch="all" +license="BSD-3-Clause" +depends_dev="zlib-dev" +makedepends="$depends_dev autoconf automake libtool ruby ruby-dev ruby-rake" +subpackages="ruby-$_gemname:_ruby $pkgname-dev $pkgname-vim::noarch" +source="$pkgname-$pkgver.tar.gz::https://github.com/google/$pkgname/archive/v$pkgver.tar.gz + googletest-$_tstver.tar.gz::https://github.com/google/googletest/archive/release-$_tstver.tar.gz + musl-fix.patch + trim-rakefile.patch" +builddir="$srcdir/$pkgname-$pkgver" + +prepare() { + default_prepare + + cd "$builddir" + ./autogen.sh + + # symlink tests to the test directory + rm -rf third_party/* + ln -sf "$srcdir"/googletest-release-$_tstver \ + "$builddir"/third_party/googletest +} + +build() { + cd "$builddir" + + CXXFLAGS="$CXXFLAGS -fno-delete-null-pointer-checks" LDFLAGS="$LDFLAGS -latomic" \ + ./configure --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --infodir=/usr/share/info \ + --localstatedir=/var + make + + cd "$builddir"/ruby + + # Generate proto files for built-in protocols. + rake genproto + + gem build $_gemname.gemspec + gem install --local \ + --install-dir dist \ + --ignore-dependencies \ + --no-document \ + --verbose \ + $_gemname + + # build test-suite + local test; for test in googletest googlemock; do + cd "$builddir/third_party/googletest/$test" + autoreconf -vfi + ./configure + make + done +} + +# TODO: Run tests for ruby gem. +check() { + cd "$builddir" + make check +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install +} + +_ruby() { + pkgdesc="Ruby bindings to Google's data interchange format" + + local gemdir="$subpkgdir/$(ruby -e 'puts Gem.default_dir')" + cd "$builddir"/ruby/dist + + mkdir -p "$gemdir" + cp -r extensions gems specifications "$gemdir"/ + + # Remove duplicated .so libs (should be only in extensions directory). + find "$gemdir"/gems/ -name "*.so" -delete + + # Remove unnecessary files. + cd "$gemdir"/gems/$_gemname-$pkgver + rm -r ext/ tests/ +} + +vim() { + pkgdesc="Vim syntax for $pkgname" + depends="" + install_if="$pkgname=$pkgver-r$pkgrel vim" + + install -Dm644 "$builddir"/editors/proto.vim \ + "$subpkgdir"/usr/share/vim/vimfiles/syntax/proto.vim +} + +sha512sums="1bc175d24b49de1b1e41eaf39598194e583afffb924c86c8d2e569d935af21874be76b2cbd4d9655a1d38bac3d4cd811de88bc2c72d81bad79115e69e5b0d839 protobuf-3.6.1.tar.gz +1dbece324473e53a83a60601b02c92c089f5d314761351974e097b2cf4d24af4296f9eb8653b6b03b1e363d9c5f793897acae1f0c7ac40149216035c4d395d9d googletest-1.8.0.tar.gz +875592bc5dc5efe9087ea1b340673f54c984ecd5aa3b110a2da136bdc28009af7ce1a9c57f4747ff809fc02eb6c39a0209c277177172af467a54172d9700188a musl-fix.patch +d1d11fe76d2a1ae92f47f9eb1e0d94c67b7192a9dc4a382b6c0835f4fe4dbc2f98ca1b3c5095ad5b4e368581072330f943209c0decea02ebb47938588543fdb1 trim-rakefile.patch" diff --git a/user/protobuf/musl-fix.patch b/user/protobuf/musl-fix.patch new file mode 100644 index 000000000..442ca20ed --- /dev/null +++ b/user/protobuf/musl-fix.patch @@ -0,0 +1,22 @@ +seems like both musl libc and android has byteswap.h + +--- a/src/google/protobuf/stubs/port.h ++++ b/src/google/protobuf/stubs/port.h +@@ -94,7 +94,7 @@ + #include <intrin.h> + #elif defined(__APPLE__) + #include <libkern/OSByteOrder.h> +-#elif defined(__GLIBC__) || defined(__BIONIC__) || defined(__CYGWIN__) ++#elif defined(__linux__) || defined(__BIONIC__) || defined(__CYGWIN__) + #include <byteswap.h> // IWYU pragma: export + #endif + +@@ -380,7 +380,7 @@ inline void GOOGLE_UNALIGNED_STORE64(voi + #define bswap_32(x) OSSwapInt32(x) + #define bswap_64(x) OSSwapInt64(x) + +-#elif !defined(__GLIBC__) && !defined(__BIONIC__) && !defined(__CYGWIN__) ++#elif !defined(__linux__) && !defined(__BIONIC__) && !defined(__CYGWIN__) + + static inline uint16 bswap_16(uint16 x) { + return static_cast<uint16>(((x & 0xFF) << 8) | ((x & 0xFF00) >> 8)); diff --git a/user/protobuf/trim-rakefile.patch b/user/protobuf/trim-rakefile.patch new file mode 100644 index 000000000..7f53d7099 --- /dev/null +++ b/user/protobuf/trim-rakefile.patch @@ -0,0 +1,72 @@ +Remove code that we don't use to avoid installing additional dependencies. +--- a/ruby/Rakefile ++++ b/ruby/Rakefile +@@ -1,6 +1,4 @@ + require "rubygems" +-require "rubygems/package_task" +-require "rake/extensiontask" unless RUBY_PLATFORM == "java" + require "rake/testtask" + + spec = Gem::Specification.load("google-protobuf.gemspec") +@@ -39,51 +37,6 @@ + end + end + +-if RUBY_PLATFORM == "java" +- if `which mvn` == '' +- raise ArgumentError, "maven needs to be installed" +- end +- task :clean do +- system("mvn --batch-mode clean") +- end +- +- task :compile do +- system("mvn --batch-mode package") +- end +-else +- Rake::ExtensionTask.new("protobuf_c", spec) do |ext| +- unless RUBY_PLATFORM =~ /darwin/ +- # TODO: also set "no_native to true" for mac if possible. As is, +- # "no_native" can only be set if the RUBY_PLATFORM doing +- # cross-compilation is contained in the "ext.cross_platform" array. +- ext.no_native = true +- end +- ext.ext_dir = "ext/google/protobuf_c" +- ext.lib_dir = "lib/google" +- ext.cross_compile = true +- ext.cross_platform = [ +- 'x86-mingw32', 'x64-mingw32', +- 'x86_64-linux', 'x86-linux', +- 'universal-darwin' +- ] +- end +- +- task 'gem:windows' do +- require 'rake_compiler_dock' +- RakeCompilerDock.sh "bundle && IN_DOCKER=true rake cross native gem RUBY_CC_VERSION=2.5.0:2.4.0:2.3.0:2.2.2:2.1.6:2.0.0" +- end +- +- if RUBY_PLATFORM =~ /darwin/ +- task 'gem:native' do +- system "rake genproto" +- system "rake cross native gem RUBY_CC_VERSION=2.5.0:2.4.0:2.3.0:2.2.2:2.1.6:2.0.0" +- end +- else +- task 'gem:native' => [:genproto, 'gem:windows'] +- end +-end +- +- + # Proto for tests. + genproto_output << "tests/generated_code.rb" + genproto_output << "tests/test_import.rb" +@@ -104,9 +57,6 @@ + + task :clean do + sh "rm -f #{genproto_output.join(' ')}" +-end +- +-Gem::PackageTask.new(spec) do |pkg| + end + + Rake::TestTask.new(:test => :build) do |t| diff --git a/user/pulseaudio/APKBUILD b/user/pulseaudio/APKBUILD index 86910481a..1a5bf62d3 100644 --- a/user/pulseaudio/APKBUILD +++ b/user/pulseaudio/APKBUILD @@ -3,7 +3,7 @@ # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=pulseaudio pkgver=12.2 -pkgrel=0 +pkgrel=1 pkgdesc="A featureful, general-purpose sound server" url="https://www.freedesktop.org/wiki/Software/PulseAudio" pkgusers="pulse" @@ -91,6 +91,7 @@ bluez() { alsa() { pkgdesc="PulseAudio ALSA support" + install_if="$pkgname=$pkgver-r$pkgrel alsa-lib" mkdir -p "$subpkgdir"/usr/lib/pulse-$pkgver/modules mv "$pkgdir"/usr/lib/pulse-$pkgver/modules/*alsa*.so \ "$subpkgdir"/usr/lib/pulse-$pkgver/modules/ diff --git a/user/py3-attrs/APKBUILD b/user/py3-attrs/APKBUILD new file mode 100644 index 000000000..fad246453 --- /dev/null +++ b/user/py3-attrs/APKBUILD @@ -0,0 +1,32 @@ +# Contributor: Jean-Louis Fuchs <ganwell@fangorn.ch> +# Maintainer: Max Rees <maxcrees@me.com> +pkgname=py3-attrs +pkgver=18.2.0 +pkgrel=0 +pkgdesc="Python classes without boilerplate" +url="https://www.attrs.org" +arch="noarch" +options="!check" # Circular dependency with py3-pytest. Passes on x86_64 +license="MIT" +depends="python3" +makedepends="python3-dev" +#checkdepends="py3-tox" +source="py3-attrs-$pkgver.tar.gz::https://github.com/python-attrs/attrs/archive/$pkgver.tar.gz" +builddir="$srcdir/attrs-$pkgver" + +build() { + cd "$builddir" + python3 setup.py build +} + +check() { + cd "$builddir" + tox -e py36 +} + +package() { + cd "$builddir" + python3 setup.py install --prefix=/usr --root="$pkgdir" +} + +sha512sums="01bcd8d492f0b7e64ae42e311b0e443d2b365d98021d8c15f8003da084f48cd20456c12defd734d3386979bb69ac2bebafa1d14692c6dad69b084929992b2c2d py3-attrs-18.2.0.tar.gz" diff --git a/user/py3-cffi/APKBUILD b/user/py3-cffi/APKBUILD new file mode 100644 index 000000000..9c7e1124c --- /dev/null +++ b/user/py3-cffi/APKBUILD @@ -0,0 +1,32 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: A. Wilcox <awilfox@adelielinux.org> +pkgname=py3-cffi +pkgver=1.11.5 +pkgrel=0 +pkgdesc="Interface for Python to call in to C code" +url="https://cffi.readthedocs.io/" +arch="all" +license="MIT" +depends="python3 py3-cparser" +makedepends="libffi-dev python3-dev" +checkdepends="py3-pytest" +subpackages="" +source="https://files.pythonhosted.org/packages/e7/a7/4cd50e57cc6f436f1cc3a7e8fa700ff9b8b4d471620629074913e3735fb2/cffi-$pkgver.tar.gz" +builddir="$srcdir/cffi-$pkgver" + +build() { + cd "$builddir" + python3 setup.py build +} + +check() { + cd "$builddir" + python3 setup.py test +} + +package() { + cd "$builddir" + python3 setup.py install --prefix=/usr --root="$pkgdir" +} + +sha512sums="6770d5293cfd7405e733d60c96655641b5bcc5878fc66a737f4a8308f465d459ee0e3fcaa47893d8f57fb195e5534dd7e4728c868f33d7e657688f45e1fb1880 cffi-1.11.5.tar.gz" diff --git a/user/py3-cparser/APKBUILD b/user/py3-cparser/APKBUILD new file mode 100644 index 000000000..d08071bf2 --- /dev/null +++ b/user/py3-cparser/APKBUILD @@ -0,0 +1,31 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: A. Wilcox <awilfox@adelielinux.org> +pkgname=py3-cparser +pkgver=2.19 +pkgrel=0 +pkgdesc="C99 parser in pure Python" +url="https://github.com/eliben/pycparser" +arch="noarch" +license="BSD-3-Clause" +depends="python3" +makedepends="" +subpackages="" +source="py3-cparser-$pkgver.tar.gz::https://github.com/eliben/pycparser/archive/release_v$pkgver.tar.gz" +builddir="$srcdir/pycparser-release_v$pkgver" + +build() { + cd "$builddir" + python3 setup.py build +} + +check() { + cd "$builddir" + python3 tests/all_tests.py +} + +package() { + cd "$builddir" + python3 setup.py install --prefix=/usr --root="$pkgdir" +} + +sha512sums="88fe63c1a7a344c564dfd3b4f99735a4159c8a3f5738bab839943ea7fcbf1f5340f67326550b7e66508ea5862897e5bcdf363c2a8d47eccb50890573a2640a98 py3-cparser-2.19.tar.gz" diff --git a/user/py3-distutils-extra/APKBUILD b/user/py3-distutils-extra/APKBUILD new file mode 100644 index 000000000..8f68f3e10 --- /dev/null +++ b/user/py3-distutils-extra/APKBUILD @@ -0,0 +1,29 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=py3-distutils-extra +pkgver=2.41 +pkgrel=0 +pkgdesc="Python distutils extras for gettext, themed icons, and scrollkeepr docs" +url="https://launchpad.net/python-distutils-extra" +arch="noarch" +license="GPL-2.0-only" +depends="python3" +source="https://salsa.debian.org/debian/python-distutils-extra/-/archive/$pkgver/python-distutils-extra-$pkgver.tar.bz2" +builddir="$srcdir/python-distutils-extra-$pkgver" + +build() { + cd "$builddir" + python3 setup.py build +} + +check() { + cd "$builddir" + python3 setup.py check +} + +package() { + cd "$builddir" + python3 setup.py install --prefix=/usr --root="$pkgdir" +} + +sha512sums="db42d0f3b6cf9c77cc3b07f1224bcfecc6259816ebda87c5e8733933f8d906c352602a6ea50b93c9e6847010b9a28d295875535bc57efe42dbaa00567ffa0cfb python-distutils-extra-2.41.tar.bz2" diff --git a/user/py3-lxml/APKBUILD b/user/py3-lxml/APKBUILD index 3f10c708b..69e4721e7 100644 --- a/user/py3-lxml/APKBUILD +++ b/user/py3-lxml/APKBUILD @@ -3,7 +3,7 @@ # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=py3-lxml _pkgname=lxml -pkgver=4.2.4 +pkgver=4.2.5 pkgrel=0 pkgdesc="Python LXML Library" url="https://lxml.de/" @@ -24,4 +24,4 @@ package() { python3 setup.py install --prefix=/usr --root="$pkgdir" } -sha512sums="fdbc0f15c20047d2e6ee616f73f84b57e1effcecb009cbd90e16f405e3a4e12cc320a0eb31782922d934441580870991331f9a2f1ce6a319be8bf7b92312319f lxml-4.2.4.tar.gz" +sha512sums="4cf336d3e1471e8a26492760a143881517d12eb1c2dad82f8786540471bfabd68f8c795d97b7362166418c2be3c7996816638fdbd5a594536b9981478b90fdfe lxml-4.2.5.tar.gz" diff --git a/user/py3-more-itertools/APKBUILD b/user/py3-more-itertools/APKBUILD new file mode 100644 index 000000000..46baffedb --- /dev/null +++ b/user/py3-more-itertools/APKBUILD @@ -0,0 +1,33 @@ +# Contributor: Max Rees <maxcrees@me.com> +# Maintainer: Max Rees <maxcrees@me.com> +pkgname=py3-more-itertools +_pkgname=more-itertools +pkgver=4.3.0 +pkgrel=0 +pkgdesc="More routines for operating on iterables, beyond itertools" +url="https://pypi.org/project/more-itertools" +options="!check" # Circular dependency with py3-pytest. Passes on x86_64 +arch="noarch" +license="MIT" +depends="python3" +makedepends="" +#checkdepends="py3-tox" +source="$pkgname-$pkgver.tar.gz::https://files.pythonhosted.org/packages/source/m/$_pkgname/$_pkgname-$pkgver.tar.gz" +builddir="$srcdir/$_pkgname-$pkgver" + +build() { + cd "$builddir" + python3 setup.py build +} + +check() { + cd "$builddir" + tox -e py36 +} + +package() { + cd "$builddir" + python3 setup.py install --prefix=/usr --root="$pkgdir" +} + +sha512sums="5fee3d99fd796b0f0f6b5aa99a8db22e219d3dced71fef6f4b16286fe67061dce280389b3638c55c6e5f6c828ef1286cee845d76a6861d2af66d90e995d5aa4e py3-more-itertools-4.3.0.tar.gz" diff --git a/user/py3-pexpect/APKBUILD b/user/py3-pexpect/APKBUILD new file mode 100644 index 000000000..10978ca79 --- /dev/null +++ b/user/py3-pexpect/APKBUILD @@ -0,0 +1,30 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=py3-pexpect +pkgver=4.6.0 +pkgrel=0 +pkgdesc="Python library for managing console applications" +url="https://pexpect.readthedocs.io/" +arch="noarch" +license="ISC" +depends="python3 py3-ptyprocess" +makedepends="" +source="https://files.pythonhosted.org/packages/89/43/07d07654ee3e25235d8cea4164cdee0ec39d1fda8e9203156ebe403ffda4/pexpect-$pkgver.tar.gz" +sha512sums="9a2b1ef19d885e69cfd17ba0519581f782574019010043e66d8b68f98ac86b359f4a1ca42f8bb0059a5dfdd43275ad93531c076cc0ac2049e109408961b46bbd pexpect-4.6.0.tar.gz" +builddir="$srcdir/pexpect-$pkgver" + +build() { + cd "$builddir" + python3 setup.py build +} + +check() { + cd "$builddir" + python3 setup.py check +} + +package() { + cd "$builddir" + python3 setup.py install --prefix=/usr --root="$pkgdir" +} + diff --git a/user/py3-ptyprocess/APKBUILD b/user/py3-ptyprocess/APKBUILD new file mode 100644 index 000000000..981976f23 --- /dev/null +++ b/user/py3-ptyprocess/APKBUILD @@ -0,0 +1,30 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=py3-ptyprocess +pkgver=0.6.0 +pkgrel=0 +pkgdesc="Python library for using pseudo-terminals (ptys)" +url="https://github.com/pexpect/ptyprocess" +arch="noarch" +license="ISC" +depends="python3" +makedepends="" +source="https://files.pythonhosted.org/packages/7d/2d/e4b8733cf79b7309d84c9081a4ab558c89d8c89da5961bf4ddb050ca1ce0/ptyprocess-$pkgver.tar.gz" +sha512sums="b34b6bca977f09d1443b210e338e1300e12d6ef35857f9543b3a116ef3b500ad4844357a7a283321756f886af41bddb1f02b27bf200ef1e82a96fd9e431bed86 ptyprocess-0.6.0.tar.gz" +builddir="$srcdir/ptyprocess-$pkgver" + +build() { + cd "$builddir" + python3 setup.py build +} + +check() { + cd "$builddir" + python3 setup.py check +} + +package() { + cd "$builddir" + python3 setup.py install --prefix=/usr --root="$pkgdir" +} + diff --git a/user/py3-pycairo/APKBUILD b/user/py3-pycairo/APKBUILD new file mode 100644 index 000000000..b93a99c1e --- /dev/null +++ b/user/py3-pycairo/APKBUILD @@ -0,0 +1,36 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=py3-pycairo +pkgver=1.17.1 +pkgrel=0 +pkgdesc="Python bindings for Cairo" +url="https://pycairo.readthedocs.io/" +arch="all" +license="MIT AND (LGPL-2.1-only OR MPL-1.1)" +makedepends="python3-dev cairo-dev meson" +subpackages="$pkgname-dev" +source="https://files.pythonhosted.org/packages/68/76/340ff847897296b2c8174dfa5a5ec3406e3ed783a2abac918cf326abad86/pycairo-$pkgver.tar.gz" +sha512sums="b6a6af4afa4ac92020b375a72e6f8a7981e6628d4e68877a7fd08bd8ae3835063000b16214d84a40aff4c6b4cf0937236724631ae6dac368a9db0bf3837063fe pycairo-1.17.1.tar.gz" +builddir="$srcdir/pycairo-$pkgver" + +build() { + cd "$builddir" + meson \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --localstatedir=/var \ + --buildtype=release \ + . output + ninja -C output +} + +check() { + cd "$builddir" +} + +package() { + cd "$builddir" + DESTDIR="$pkgdir" ninja -C output install +} + diff --git a/user/py3-pycotap/APKBUILD b/user/py3-pycotap/APKBUILD new file mode 100644 index 000000000..a2731dc39 --- /dev/null +++ b/user/py3-pycotap/APKBUILD @@ -0,0 +1,32 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: A. Wilcox <awilfox@adelielinux.org> +pkgname=py3-pycotap +_pipname=pycotap +pkgver=1.1.0 +pkgrel=0 +pkgdesc="Tiny Python test runner that outputs TAP results" +url="https://el-tramo.be/pycotap/" +arch="noarch" +license="MIT" +depends="python3" +makedepends="" +subpackages="" +source="https://files.pythonhosted.org/packages/a1/99/f1dfa70ffe1140f701ba9797630fb12c12558c28865e1e01728800054d32/pycotap-$pkgver.tar.gz" +builddir="$srcdir/$_pipname-$pkgver" + +build() { + cd "$builddir" + python3 setup.py build +} + +check() { + cd "$builddir" + python3 setup.py check +} + +package() { + cd "$builddir" + python3 setup.py install --prefix=/usr --root="$pkgdir" +} + +sha512sums="dbe8d76c3e4b934dd4ff9ec0d48caafef3ae5583046a7316607b3c8cebf8cb920c68dc46487243aac81823994805c76f2be8ff0cbda593c70b70f268661fa289 pycotap-1.1.0.tar.gz" diff --git a/user/py3-pygobject/APKBUILD b/user/py3-pygobject/APKBUILD new file mode 100644 index 000000000..62c3717b7 --- /dev/null +++ b/user/py3-pygobject/APKBUILD @@ -0,0 +1,31 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=py3-pygobject +pkgver=3.30.1 +pkgrel=0 +pkgdesc="Python bindings for GObject libraries" +url="https://pygobject.readthedocs.io/" +arch="all" +license="LGPL-2.1+ AND LGPL-2.1-only" +depends="py3-pycairo" +makedepends="python3-dev gobject-introspection-dev py3-pycairo-dev" +subpackages="$pkgname-dev" +source="https://gitlab.gnome.org/GNOME/pygobject/-/archive/$pkgver/pygobject-$pkgver.tar.bz2" +builddir="$srcdir/pygobject-$pkgver" + +build() { + cd "$builddir" + python3 setup.py build +} + +check() { + cd "$builddir" + python3 setup.py check +} + +package() { + cd "$builddir" + python3 setup.py install --prefix=/usr --root="$pkgdir" +} + +sha512sums="99f25e19d36b9700670f1e6c6d279104ec449f958001e1c0dc7225169aeaccf882420badac419a2cb4ef8c39f847102d2d62435e95e1a334c440ee5de03b3f7f pygobject-3.30.1.tar.bz2" diff --git a/user/py3-pytest/APKBUILD b/user/py3-pytest/APKBUILD index 30a26fb30..8d720971e 100644 --- a/user/py3-pytest/APKBUILD +++ b/user/py3-pytest/APKBUILD @@ -3,13 +3,13 @@ pkgname=py3-pytest _pkgname=pytest pkgver=3.5.1 -pkgrel=0 +pkgrel=1 pkgdesc="A python test library" url="https://pypi.python.org/pypi/pytest" arch="noarch" options="net !check" # Circular dependency with py3-tox. Passes on x86_64 license="MIT" -depends="python3 py3-py" +depends="python3 py3-py py3-more-itertools py3-six py3-pluggy py3-attrs" makedepends="python3-dev" #checkdepends="py3-tox" source="$pkgname-$pkgver.tar.gz::https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz" diff --git a/user/py3-six/APKBUILD b/user/py3-six/APKBUILD index 7c001b2a9..3b5c00d34 100644 --- a/user/py3-six/APKBUILD +++ b/user/py3-six/APKBUILD @@ -7,10 +7,11 @@ pkgrel=1 pkgdesc="Python 2 compatibility library" url="https://pypi.python.org/pypi/six" arch="noarch" +options="!check" # Circular dependency with py3-pytest license="MIT" depends="" makedepends="python3-dev" -checkdepends="py3-pluggy py3-pytest" +#checkdepends="py3-pluggy py3-pytest" source="$pkgname-$pkgver.tar.gz::https://github.com/benjaminp/$_pkgname/archive/$pkgver.tar.gz" builddir="$srcdir/$_pkgname-$pkgver" diff --git a/user/qemu/spapr-page-size.patch b/user/qemu/spapr-page-size.patch new file mode 100644 index 000000000..2ea81ab80 --- /dev/null +++ b/user/qemu/spapr-page-size.patch @@ -0,0 +1,30 @@ +From 3a9eba6700a9f6fc307bb08b9fe672cc36804fb5 Mon Sep 17 00:00:00 2001 +From: "A. Wilcox" <AWilcox@Wilcox-Tech.com> +Date: Sun, 9 Sep 2018 19:58:37 -0500 +Subject: [PATCH] =?UTF-8?q?spapr:=20Default=20to=204=20KiB=20page=20size?= + =?UTF-8?q?=20for=20Ad=C3=A9lie?= +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Not upstream eligible, most likely. +--- + hw/ppc/spapr.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/hw/ppc/spapr.c b/hw/ppc/spapr.c +index 4edb6c7d16..8628673994 100644 +--- a/hw/ppc/spapr.c ++++ b/hw/ppc/spapr.c +@@ -3882,7 +3882,7 @@ static void spapr_machine_class_init(ObjectClass *oc, void *data) + smc->default_caps.caps[SPAPR_CAP_CFPC] = SPAPR_CAP_BROKEN; + smc->default_caps.caps[SPAPR_CAP_SBBC] = SPAPR_CAP_BROKEN; + smc->default_caps.caps[SPAPR_CAP_IBS] = SPAPR_CAP_BROKEN; +- smc->default_caps.caps[SPAPR_CAP_HPT_MAXPAGESIZE] = 16; /* 64kiB */ ++ smc->default_caps.caps[SPAPR_CAP_HPT_MAXPAGESIZE] = 12; /* 4kiB */ + spapr_caps_add_properties(smc, &error_abort); + smc->irq = &spapr_irq_xics; + } +-- +2.18.0 + diff --git a/user/qpdf/APKBUILD b/user/qpdf/APKBUILD index 57ff6bcff..0b957061b 100644 --- a/user/qpdf/APKBUILD +++ b/user/qpdf/APKBUILD @@ -1,6 +1,6 @@ # Maintainer: pkgname=qpdf -pkgver=8.1.0 +pkgver=8.2.1 pkgrel=0 pkgdesc="Command-line tools and library for transforming PDF files" url="http://qpdf.sourceforge.net" @@ -60,4 +60,4 @@ fix_qdf() { mv "$pkgdir"/usr/bin/fix-qdf "$subpkgdir"/usr/bin/ } -sha512sums="1831bcaaed87dae268db5d61805d1483ec5c101f6ce594be660664c119597ae67cf011c2b50092964d785a814d5f6c780935127a89401fe37a1026ae4d3af15c qpdf-8.1.0.tar.gz" +sha512sums="ef3aeb4a7ca3ec48ab62341533eedcb2a6d0985767317ab72c22f0c0ecfef6849bfdc34b1bcec6427c7bde166143adb409c895ff40d8be6628e6323e27697a8c qpdf-8.2.1.tar.gz" diff --git a/user/re2c/APKBUILD b/user/re2c/APKBUILD index 782b506b0..703bcacdd 100644 --- a/user/re2c/APKBUILD +++ b/user/re2c/APKBUILD @@ -1,7 +1,7 @@ # Contributor: Jeff Bilyk <jbilyk at gmail> # Maintainer: pkgname=re2c -pkgver=1.0.3 +pkgver=1.1.1 pkgrel=0 pkgdesc="Fast lexer generator for C and C++" url="http://re2c.org/" @@ -33,4 +33,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="7b2a43828da872a957af88fb0a226e1936a45c8a1020ba1f6544b588aaa61dff8df40e84f9053c30ac8e17c41164e70627d57f5d3721a34b2aba7b1dbf25b6ae re2c-1.0.3.tar.gz" +sha512sums="a6fe73611103588043748340976f0e6d07169a6546cb80627c0ccd2ceac83f362dbbf371530361d893537fd95deb19503b2c73c41ed40efe7787210d6c757397 re2c-1.1.1.tar.gz" diff --git a/user/redis/APKBUILD b/user/redis/APKBUILD index ec71b8eb9..cda552fdd 100644 --- a/user/redis/APKBUILD +++ b/user/redis/APKBUILD @@ -1,7 +1,7 @@ # Contributor: V.Krishn <vkrishn4@gmail.com> # Maintainer: pkgname=redis -pkgver=4.0.10 +pkgver=4.0.11 pkgrel=0 pkgdesc="Advanced key-value store" url="https://redis.io/" @@ -14,7 +14,7 @@ subpackages="$pkgname-openrc" install="redis.pre-install" pkgusers="redis" pkggroups="redis" -source="https://download.redis.io/releases/$pkgname-$pkgver.tar.gz +source="http://download.redis.io/releases/$pkgname-$pkgver.tar.gz fix-ppc-atomics.patch posix-runtest.patch redis.initd @@ -78,7 +78,7 @@ package() { install } -sha512sums="0978dabaf637e61889d492fd3629acd58ca8fb0c0088cdd7036ffd1a7ed3f018c107039d4c96bd61d0b7d35757df2366d051f57d77ffb5642aca0e5651b30603 redis-4.0.10.tar.gz +sha512sums="f0054af9ca2143731a397b2b21285387707b7f40d9326ba15225feb1a2ff470fab5194308342f63bbe1081f84c7e9ef19543c5a8e3eae49e17bfc515c64201f0 redis-4.0.11.tar.gz f768acea3e1868dbf0596085640c83e58d899860d7d647b0965fa858844c494d0a49b229fb417456d83f3e2690e5450950c31e0fa40529df85a9cde38d8981c4 fix-ppc-atomics.patch 856ae98e9e8670801827c3bd793dc14ed2c62c37365f8d04b452d7e1ab97300a0bf18c59b52ea686c2689d53aeed8e29e2c55207d3d4fb1fd8fc7fc820f33157 posix-runtest.patch 91b663f802aea9a473195940d3bf2ce3ca2af4e5b6e61a2d28ebbfe502ef2c764b574b7e87c49e60345d1a5d6b73d12920924c93b26be110c2ce824023347b6f redis.initd diff --git a/user/ristretto/APKBUILD b/user/ristretto/APKBUILD new file mode 100644 index 000000000..9fded5c45 --- /dev/null +++ b/user/ristretto/APKBUILD @@ -0,0 +1,38 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=ristretto +pkgver=0.8.3 +pkgrel=0 +pkgdesc="Image viewer for the XFCE desktop environment" +url="https://xfce.org" +arch="all" +license="GPL-2.0+ AND LGPL-2.0+" +makedepends="intltool libexif-dev gtk+2.0-dev libxfce4util-dev libxfce4ui-dev + libmagic" +subpackages="$pkgname-lang" +langdir="/usr/lib/locale" +source="http://archive.xfce.org/src/apps/ristretto/0.8/ristretto-$pkgver.tar.bz2" + +build() { + cd "$builddir" + ./configure \ + --build=$CBUILD \ + --host=$CHOST \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --localstatedir=/var + make +} + +check() { + cd "$builddir" + make check +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install +} + +sha512sums="c43b48dfdf9e8ed0ea3c5f2bbac1c837881aa6a467c78377b6f53dcce030b5a3b8134a7b8cbad1008ae758295953fde50a916c284e54e8c5490158e776554514 ristretto-0.8.3.tar.bz2" diff --git a/user/rocs/APKBUILD b/user/rocs/APKBUILD index 3cf0d9ef7..c7f2ce9c9 100644 --- a/user/rocs/APKBUILD +++ b/user/rocs/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=rocs -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="Graph theory IDE" url="https://www.kde.org/applications/education/rocs/" @@ -42,4 +42,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="3b850415274bbc9155d56b7ff25dc17467d5947609133fe8d903263311b9a5551080110ee9af6f9a28c8e50c96e7f1a7d28fb5e6f91c94debf6b3ddf6631d45d rocs-18.08.1.tar.xz" +sha512sums="2f5e51146cb060f7c36d4ee637ef4a9d31e4befcdadd41874b8353951f4eb1e1bee45c84c89a8a1748d4e9c74122d9d8f621391f030c3655666848ee53bf2082 rocs-18.08.2.tar.xz" diff --git a/user/rpcbind/APKBUILD b/user/rpcbind/APKBUILD new file mode 100644 index 000000000..c9f8cc956 --- /dev/null +++ b/user/rpcbind/APKBUILD @@ -0,0 +1,43 @@ +# Contributor: Natanael Copa <ncopa@alpinelinux.org> +# Maintainer: Dan Theisen <djt@hxx.in> +pkgname=rpcbind +pkgver=1.2.5 +pkgrel=0 +pkgdesc="portmap replacement which supports RPC over various protocols" +url="http://rpcbind.sourceforge.net" +arch="all" +options="!check" # No test suite. +license="BSD-3-Clause" +depends="" +install="$pkgname.pre-install $pkgname.pre-upgrade" +makedepends="libtirpc-dev bsd-compat-headers" +subpackages="$pkgname-dbg $pkgname-doc $pkgname-openrc" +source="http://downloads.sourceforge.net/project/rpcbind/rpcbind/$pkgver/rpcbind-$pkgver.tar.bz2 + rpcbind.initd + rpcbind.confd" + +build() { + cd "$builddir" + ./configure \ + --build=$CBUILD \ + --host=$CHOST \ + --prefix=/usr \ + --bindir=/sbin \ + --enable-warmstarts \ + --with-statedir=/var/lib/rpcbind \ + --with-rpcuser=rpc \ + --enable-debug \ + --with-systemdsystemunitdir='no' + make +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + install -Dm755 "$srcdir"/rpcbind.initd "$pkgdir"/etc/init.d/rpcbind + install -Dm644 "$srcdir"/rpcbind.confd "$pkgdir"/etc/conf.d/rpcbind + install -D -m644 COPYING "$pkgdir"/usr/share/licenses/rpcbind/COPYING +} +sha512sums="e884c4757950ccead0f9a07f50625a63e6f18f9bfae9fcfffa3e5fa4b7a66c3a99d9fa303061848fe8211509d5456f24ff26e4579af6e161a35522268f3ef3e4 rpcbind-1.2.5.tar.bz2 +1cd655d86226a45fa3e927f8ac2bb580537644d2fb3684e0f4a956bf3721c95d95b8b8c1d9a2a742fb714eeba9277e0400a7493bf1bf676466d70adb2b35a88e rpcbind.initd +0641087162ebc8fb10c5cb329105261d77cad073daed3f9a6c92574177298cd8a19a87b62dde14161cc554b5e68680cfd870b5334f3cfd8d6074ec8a43f4dfe3 rpcbind.confd" diff --git a/user/rpcbind/rpcbind.confd b/user/rpcbind/rpcbind.confd new file mode 100644 index 000000000..973320202 --- /dev/null +++ b/user/rpcbind/rpcbind.confd @@ -0,0 +1,5 @@ +# /etc/conf.d/rpcbind + +# Options for `rpcbind`. +RPCBIND_OPTS="-w" + diff --git a/user/rpcbind/rpcbind.initd b/user/rpcbind/rpcbind.initd new file mode 100644 index 000000000..b979c2226 --- /dev/null +++ b/user/rpcbind/rpcbind.initd @@ -0,0 +1,25 @@ +#!/sbin/openrc-run +# Copyright 1999-2007 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/net-nds/rpcbind/files/rpcbind.initd,v 1.1 2007/12/29 09:13:55 vapier Exp $ + +depend() { + use net + before inetd xinetd + after firewall + provide portmap +} + +start() { + ebegin "Starting rpcbind" + start-stop-daemon --start --quiet --exec /sbin/rpcbind \ + -- ${RPCBIND_OPTS} + eend $? +} + +stop() { + ebegin "Stopping rpcbind" + start-stop-daemon --stop --quiet --exec /sbin/rpcbind + eend $? +} + diff --git a/user/rpcbind/rpcbind.pre-install b/user/rpcbind/rpcbind.pre-install new file mode 100644 index 000000000..771cdbf7b --- /dev/null +++ b/user/rpcbind/rpcbind.pre-install @@ -0,0 +1,6 @@ +#!/bin/sh + +addgroup -S rpc 2>/dev/null +adduser -S -D -h /var/lib/rpcbind -s /sbin/nologin -G rpc -g rpc rpc 2>/dev/null + +exit 0 diff --git a/user/rpcbind/rpcbind.pre-upgrade b/user/rpcbind/rpcbind.pre-upgrade new file mode 120000 index 000000000..1ba8b0c77 --- /dev/null +++ b/user/rpcbind/rpcbind.pre-upgrade @@ -0,0 +1 @@ +rpcbind.pre-install
\ No newline at end of file diff --git a/user/rsibreak/APKBUILD b/user/rsibreak/APKBUILD index 5f7262ce7..1096db075 100644 --- a/user/rsibreak/APKBUILD +++ b/user/rsibreak/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=rsibreak -pkgver=0.12.8 +pkgver=0.12.9 pkgrel=0 pkgdesc="Helps you avoid wrist injury by telling you when to stop for a rest" url="https://www.kde.org/applications/utilities/rsibreak/" @@ -42,4 +42,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="6ab0c43232e56278525ce5ba07a6c7a5f7bc5da74a8461e3cdaed7ae832304ac9f3c1b3ff0adfdeaab6b8231bdcecae4e8fee9529df97b8ce2208f4cf74f0eb1 rsibreak-0.12.8.tar.xz" +sha512sums="37b193b0fffffcef6ffdb04950f5eb6f2503db3830e0c5142ad820243b4826567d2e4139e14ae2a6bdd08e6c7a0fb5a7b29b627d2dfb10fc7135e9bf86cb6e57 rsibreak-0.12.9.tar.xz" diff --git a/user/rust/0001-Require-static-native-libraries-when-linking-static-.patch b/user/rust/0001-Require-static-native-libraries-when-linking-static-.patch new file mode 100644 index 000000000..a9638ee75 --- /dev/null +++ b/user/rust/0001-Require-static-native-libraries-when-linking-static-.patch @@ -0,0 +1,44 @@ +From 9cee7b92ea492f9a879c88ae0ca2c1f791bdec97 Mon Sep 17 00:00:00 2001 +From: Samuel Holland <samuel@sholland.org> +Date: Fri, 8 Sep 2017 00:05:18 -0500 +Subject: [PATCH 01/29] Require static native libraries when linking static + executables + +--- + src/librustc_codegen_llvm/back/link.rs | 13 ++++++++++--- + 1 file changed, 10 insertions(+), 3 deletions(-) + +diff --git a/src/librustc_codegen_llvm/back/link.rs b/src/librustc_codegen_llvm/back/link.rs +index 845a66c6e4..f61318affc 100644 +--- a/src/librustc_codegen_llvm/back/link.rs ++++ b/src/librustc_codegen_llvm/back/link.rs +@@ -1551,8 +1551,8 @@ fn add_upstream_rust_crates(cmd: &mut dyn Linker, + } + } + +-// Link in all of our upstream crates' native dependencies. Remember that +-// all of these upstream native dependencies are all non-static ++// Link in all of our upstream crates' native dependencies. Remember that when ++// linking libraries, these upstream native dependencies are all non-static + // dependencies. We've got two cases then: + // + // 1. The upstream crate is an rlib. In this case we *must* link in the +@@ -1596,7 +1596,14 @@ fn add_upstream_native_libraries(cmd: &mut dyn Linker, + continue + } + match lib.kind { +- NativeLibraryKind::NativeUnknown => cmd.link_dylib(&name.as_str()), ++ NativeLibraryKind::NativeUnknown => { ++ // When creating executables, match library linkage to that of the executable. ++ if crate_type == config::CrateTypeExecutable && sess.crt_static() { ++ cmd.link_staticlib(&name.as_str()) ++ } else { ++ cmd.link_dylib(&name.as_str()) ++ } ++ }, + NativeLibraryKind::NativeFramework => cmd.link_framework(&name.as_str()), + NativeLibraryKind::NativeStaticNobundle => { + // Link "static-nobundle" native libs only if the crate they originate from +-- +2.18.0 + diff --git a/user/rust/0002-Don-t-pass-CFLAGS-to-the-C-compiler.patch b/user/rust/0002-Don-t-pass-CFLAGS-to-the-C-compiler.patch new file mode 100644 index 000000000..6b9bcb876 --- /dev/null +++ b/user/rust/0002-Don-t-pass-CFLAGS-to-the-C-compiler.patch @@ -0,0 +1,36 @@ +From 8523832491df1889d9c226bef0cc76ed7b1a8d33 Mon Sep 17 00:00:00 2001 +From: Samuel Holland <samuel@sholland.org> +Date: Wed, 10 Jan 2018 13:36:41 -0600 +Subject: [PATCH 02/29] Don't pass CFLAGS to the C++ compiler + +--- + src/bootstrap/builder.rs | 6 ++---- + 1 file changed, 2 insertions(+), 4 deletions(-) + +diff --git a/src/bootstrap/builder.rs b/src/bootstrap/builder.rs +index dc0b0aaf0b..257d369750 100644 +--- a/src/bootstrap/builder.rs ++++ b/src/bootstrap/builder.rs +@@ -966,7 +966,7 @@ impl<'a> Builder<'a> { + let cflags = self.cflags(target).join(" "); + cargo + .env(format!("CFLAGS_{}", target), cflags.clone()) +- .env("CFLAGS", cflags.clone()); ++ .env("CFLAGS", cflags); + + if let Some(ar) = self.ar(target) { + let ranlib = format!("{} s", ar.display()); +@@ -981,9 +981,7 @@ impl<'a> Builder<'a> { + let cxx = ccacheify(&cxx); + cargo + .env(format!("CXX_{}", target), &cxx) +- .env("CXX", &cxx) +- .env(format!("CXXFLAGS_{}", target), cflags.clone()) +- .env("CXXFLAGS", cflags); ++ .env("CXX", &cxx); + } + } + +-- +2.18.0 + diff --git a/user/rust/0003-Fix-LLVM-build.patch b/user/rust/0003-Fix-LLVM-build.patch new file mode 100644 index 000000000..72108f0ae --- /dev/null +++ b/user/rust/0003-Fix-LLVM-build.patch @@ -0,0 +1,26 @@ +From f8878714f01309b99cae990f390431929a37c2c8 Mon Sep 17 00:00:00 2001 +From: Samuel Holland <samuel@sholland.org> +Date: Fri, 8 Sep 2017 00:04:29 -0500 +Subject: [PATCH 03/29] Fix LLVM build + +--- + src/bootstrap/lib.rs | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/src/bootstrap/lib.rs b/src/bootstrap/lib.rs +index 1efff19dfb..e6ac847afe 100644 +--- a/src/bootstrap/lib.rs ++++ b/src/bootstrap/lib.rs +@@ -742,7 +742,8 @@ impl Build { + // cc-rs because the build scripts will determine that for themselves. + let mut base = self.cc[&target].args().iter() + .map(|s| s.to_string_lossy().into_owned()) +- .filter(|s| !s.starts_with("-O") && !s.starts_with("/O")) ++ .filter(|s| !s.starts_with("-O") && !s.starts_with("/O") ++ && !s.starts_with("-static")) + .collect::<Vec<_>>(); + + // If we're compiling on macOS then we add a few unconditional flags +-- +2.18.0 + diff --git a/user/rust/0004-test-sysroot-crates-are-unstable-Fix-test-when-rpath.patch b/user/rust/0004-test-sysroot-crates-are-unstable-Fix-test-when-rpath.patch new file mode 100644 index 000000000..a28fc39b0 --- /dev/null +++ b/user/rust/0004-test-sysroot-crates-are-unstable-Fix-test-when-rpath.patch @@ -0,0 +1,25 @@ +From 898e72085351cae381669960fcc4d20b8afeeb78 Mon Sep 17 00:00:00 2001 +From: Samuel Holland <samuel@sholland.org> +Date: Mon, 17 Sep 2018 01:32:20 +0000 +Subject: [PATCH 04/29] test/sysroot-crates-are-unstable: Fix test when rpath + is disabled + +Without this environment var, the test can't run rustc to find +the sysroot path. +--- + .../run-make-fulldeps/sysroot-crates-are-unstable/Makefile | 4 +++- + 1 file changed, 3 insertions(+), 1 deletion(-) + +diff --git a/src/test/run-make-fulldeps/sysroot-crates-are-unstable/Makefile b/src/test/run-make-fulldeps/sysroot-crates-are-unstable/Makefile +index a35174b3c2..9e77070685 100644 +--- a/src/test/run-make-fulldeps/sysroot-crates-are-unstable/Makefile ++++ b/src/test/run-make-fulldeps/sysroot-crates-are-unstable/Makefile +@@ -1,2 +1,4 @@ ++-include ../tools.mk ++ + all: +- python2.7 test.py ++ env '$(HOST_RPATH_ENV)' python2.7 test.py +-- +2.18.0 + diff --git a/user/rust/0005-Remove-nostdlib-and-musl_root-from-musl-targets.patch b/user/rust/0005-Remove-nostdlib-and-musl_root-from-musl-targets.patch new file mode 100644 index 000000000..eda99398c --- /dev/null +++ b/user/rust/0005-Remove-nostdlib-and-musl_root-from-musl-targets.patch @@ -0,0 +1,444 @@ +From 1b47e0a7cfc3fd6572d939aa894e3a23522ed4c0 Mon Sep 17 00:00:00 2001 +From: Samuel Holland <samuel@sholland.org> +Date: Fri, 8 Sep 2017 22:11:14 -0500 +Subject: [PATCH 05/29] Remove -nostdlib and musl_root from musl targets + +--- + config.toml.example | 6 --- + src/bootstrap/bin/rustc.rs | 10 ----- + src/bootstrap/cc_detect.rs | 27 ++---------- + src/bootstrap/compile.rs | 31 -------------- + src/bootstrap/config.rs | 7 ---- + src/bootstrap/configure.py | 22 ---------- + src/bootstrap/lib.rs | 8 ---- + src/bootstrap/sanity.rs | 30 +------------- + .../dist-i586-gnu-i586-i686-musl/Dockerfile | 2 - + src/ci/docker/dist-various-1/Dockerfile | 7 ---- + src/ci/docker/dist-x86_64-musl/Dockerfile | 1 - + src/librustc_target/spec/linux_musl_base.rs | 41 ------------------- + 12 files changed, 4 insertions(+), 188 deletions(-) + +diff --git a/config.toml.example b/config.toml.example +index 9907341633..6f8b52e235 100644 +--- a/config.toml.example ++++ b/config.toml.example +@@ -409,12 +409,6 @@ + # only use static libraries. If unset, the target's default linkage is used. + #crt-static = false + +-# The root location of the MUSL installation directory. The library directory +-# will also need to contain libunwind.a for an unwinding implementation. Note +-# that this option only makes sense for MUSL targets that produce statically +-# linked binaries +-#musl-root = "..." +- + # Used in testing for configuring where the QEMU images are located, you + # probably don't want to use this. + #qemu-rootfs = "..." +diff --git a/src/bootstrap/bin/rustc.rs b/src/bootstrap/bin/rustc.rs +index 7192cae895..71435f9306 100644 +--- a/src/bootstrap/bin/rustc.rs ++++ b/src/bootstrap/bin/rustc.rs +@@ -30,7 +30,6 @@ + extern crate bootstrap; + + use std::env; +-use std::ffi::OsString; + use std::io; + use std::path::PathBuf; + use std::process::Command; +@@ -126,15 +125,6 @@ fn main() { + cmd.arg("-Cprefer-dynamic"); + } + +- // Help the libc crate compile by assisting it in finding the MUSL +- // native libraries. +- if let Some(s) = env::var_os("MUSL_ROOT") { +- let mut root = OsString::from("native="); +- root.push(&s); +- root.push("/lib"); +- cmd.arg("-L").arg(&root); +- } +- + // Override linker if necessary. + if let Ok(target_linker) = env::var("RUSTC_TARGET_LINKER") { + cmd.arg(format!("-Clinker={}", target_linker)); +diff --git a/src/bootstrap/cc_detect.rs b/src/bootstrap/cc_detect.rs +index 698903f128..629cedf019 100644 +--- a/src/bootstrap/cc_detect.rs ++++ b/src/bootstrap/cc_detect.rs +@@ -95,7 +95,7 @@ pub fn find(build: &mut Build) { + if let Some(cc) = config.and_then(|c| c.cc.as_ref()) { + cfg.compiler(cc); + } else { +- set_compiler(&mut cfg, Language::C, target, config, build); ++ set_compiler(&mut cfg, Language::C, target, config); + } + + let compiler = cfg.get_compiler(); +@@ -124,7 +124,7 @@ pub fn find(build: &mut Build) { + if let Some(cxx) = config.and_then(|c| c.cxx.as_ref()) { + cfg.compiler(cxx); + } else { +- set_compiler(&mut cfg, Language::CPlusPlus, host, config, build); ++ set_compiler(&mut cfg, Language::CPlusPlus, host, config); + } + let compiler = cfg.get_compiler(); + build.verbose(&format!("CXX_{} = {:?}", host, compiler.path())); +@@ -135,8 +135,7 @@ pub fn find(build: &mut Build) { + fn set_compiler(cfg: &mut cc::Build, + compiler: Language, + target: Interned<String>, +- config: Option<&Target>, +- build: &Build) { ++ config: Option<&Target>) { + match &*target { + // When compiling for android we may have the NDK configured in the + // config.toml in which case we look there. Otherwise the default +@@ -173,26 +172,6 @@ fn set_compiler(cfg: &mut cc::Build, + } + } + +- "mips-unknown-linux-musl" => { +- if cfg.get_compiler().path().to_str() == Some("gcc") { +- cfg.compiler("mips-linux-musl-gcc"); +- } +- } +- "mipsel-unknown-linux-musl" => { +- if cfg.get_compiler().path().to_str() == Some("gcc") { +- cfg.compiler("mipsel-linux-musl-gcc"); +- } +- } +- +- t if t.contains("musl") => { +- if let Some(root) = build.musl_root(target) { +- let guess = root.join("bin/musl-gcc"); +- if guess.exists() { +- cfg.compiler(guess); +- } +- } +- } +- + _ => {} + } + } +diff --git a/src/bootstrap/compile.rs b/src/bootstrap/compile.rs +index 04e8e133b0..7767956cd8 100644 +--- a/src/bootstrap/compile.rs ++++ b/src/bootstrap/compile.rs +@@ -87,13 +87,6 @@ impl Step for Std { + }); + builder.info(&format!("Uplifting stage1 std ({} -> {})", from.host, target)); + +- // Even if we're not building std this stage, the new sysroot must +- // still contain the musl startup objects. +- if target.contains("musl") { +- let libdir = builder.sysroot_libdir(compiler, target); +- copy_musl_third_party_objects(builder, target, &libdir); +- } +- + builder.ensure(StdLink { + compiler: from, + target_compiler: compiler, +@@ -102,11 +95,6 @@ impl Step for Std { + return; + } + +- if target.contains("musl") { +- let libdir = builder.sysroot_libdir(compiler, target); +- copy_musl_third_party_objects(builder, target, &libdir); +- } +- + let out_dir = builder.cargo_out(compiler, Mode::Std, target); + builder.clear_if_dirty(&out_dir, &builder.rustc(compiler)); + let mut cargo = builder.cargo(compiler, Mode::Std, target, "build"); +@@ -128,20 +116,6 @@ impl Step for Std { + } + } + +-/// Copies the crt(1,i,n).o startup objects +-/// +-/// Since musl supports fully static linking, we can cross link for it even +-/// with a glibc-targeting toolchain, given we have the appropriate startup +-/// files. As those shipped with glibc won't work, copy the ones provided by +-/// musl so we have them on linux-gnu hosts. +-fn copy_musl_third_party_objects(builder: &Builder, +- target: Interned<String>, +- into: &Path) { +- for &obj in &["crt1.o", "crti.o", "crtn.o"] { +- builder.copy(&builder.musl_root(target).unwrap().join("lib").join(obj), &into.join(obj)); +- } +-} +- + /// Configure cargo to compile the standard library, adding appropriate env vars + /// and such. + pub fn std_cargo(builder: &Builder, +@@ -196,11 +170,6 @@ pub fn std_cargo(builder: &Builder, + cargo.env("JEMALLOC_OVERRIDE", jemalloc); + } + } +- if target.contains("musl") { +- if let Some(p) = builder.musl_root(target) { +- cargo.env("MUSL_ROOT", p); +- } +- } + } + } + +diff --git a/src/bootstrap/config.rs b/src/bootstrap/config.rs +index 0a8a5c87d0..9fdf8690c5 100644 +--- a/src/bootstrap/config.rs ++++ b/src/bootstrap/config.rs +@@ -131,8 +131,6 @@ pub struct Config { + pub save_toolstates: Option<PathBuf>, + pub print_step_timings: bool, + +- // Fallback musl-root for all targets +- pub musl_root: Option<PathBuf>, + pub prefix: Option<PathBuf>, + pub sysconfdir: Option<PathBuf>, + pub datadir: Option<PathBuf>, +@@ -165,7 +163,6 @@ pub struct Target { + pub linker: Option<PathBuf>, + pub ndk: Option<PathBuf>, + pub crt_static: Option<bool>, +- pub musl_root: Option<PathBuf>, + pub qemu_rootfs: Option<PathBuf>, + pub no_std: bool, + } +@@ -294,7 +291,6 @@ struct Rust { + backtrace: Option<bool>, + default_linker: Option<String>, + channel: Option<String>, +- musl_root: Option<String>, + rpath: Option<bool>, + optimize_tests: Option<bool>, + debuginfo_tests: Option<bool>, +@@ -328,7 +324,6 @@ struct TomlTarget { + linker: Option<String>, + android_ndk: Option<String>, + crt_static: Option<bool>, +- musl_root: Option<String>, + qemu_rootfs: Option<String>, + } + +@@ -541,7 +536,6 @@ impl Config { + set(&mut config.llvm_tools_enabled, rust.llvm_tools); + config.rustc_parallel_queries = rust.experimental_parallel_queries.unwrap_or(false); + config.rustc_default_linker = rust.default_linker.clone(); +- config.musl_root = rust.musl_root.clone().map(PathBuf::from); + config.save_toolstates = rust.save_toolstates.clone().map(PathBuf::from); + set(&mut config.deny_warnings, rust.deny_warnings.or(flags.warnings)); + set(&mut config.backtrace_on_ice, rust.backtrace_on_ice); +@@ -580,7 +574,6 @@ impl Config { + target.ar = cfg.ar.clone().map(PathBuf::from); + target.linker = cfg.linker.clone().map(PathBuf::from); + target.crt_static = cfg.crt_static.clone(); +- target.musl_root = cfg.musl_root.clone().map(PathBuf::from); + target.qemu_rootfs = cfg.qemu_rootfs.clone().map(PathBuf::from); + + config.target_config.insert(INTERNER.intern_string(triple.clone()), target); +diff --git a/src/bootstrap/configure.py b/src/bootstrap/configure.py +index 9fdba044f4..513935e4c8 100755 +--- a/src/bootstrap/configure.py ++++ b/src/bootstrap/configure.py +@@ -108,28 +108,6 @@ v("aarch64-linux-android-ndk", "target.aarch64-linux-android.android-ndk", + "aarch64-linux-android NDK standalone path") + v("x86_64-linux-android-ndk", "target.x86_64-linux-android.android-ndk", + "x86_64-linux-android NDK standalone path") +-v("musl-root", "target.x86_64-unknown-linux-musl.musl-root", +- "MUSL root installation directory (deprecated)") +-v("musl-root-x86_64", "target.x86_64-unknown-linux-musl.musl-root", +- "x86_64-unknown-linux-musl install directory") +-v("musl-root-i586", "target.i586-unknown-linux-musl.musl-root", +- "i586-unknown-linux-musl install directory") +-v("musl-root-i686", "target.i686-unknown-linux-musl.musl-root", +- "i686-unknown-linux-musl install directory") +-v("musl-root-arm", "target.arm-unknown-linux-musleabi.musl-root", +- "arm-unknown-linux-musleabi install directory") +-v("musl-root-armhf", "target.arm-unknown-linux-musleabihf.musl-root", +- "arm-unknown-linux-musleabihf install directory") +-v("musl-root-armv5te", "target.armv5te-unknown-linux-musleabi.musl-root", +- "armv5te-unknown-linux-musleabi install directory") +-v("musl-root-armv7", "target.armv7-unknown-linux-musleabihf.musl-root", +- "armv7-unknown-linux-musleabihf install directory") +-v("musl-root-aarch64", "target.aarch64-unknown-linux-musl.musl-root", +- "aarch64-unknown-linux-musl install directory") +-v("musl-root-mips", "target.mips-unknown-linux-musl.musl-root", +- "mips-unknown-linux-musl install directory") +-v("musl-root-mipsel", "target.mipsel-unknown-linux-musl.musl-root", +- "mipsel-unknown-linux-musl install directory") + v("qemu-armhf-rootfs", "target.arm-unknown-linux-gnueabihf.qemu-rootfs", + "rootfs in qemu testing, you probably don't want to use this") + v("qemu-aarch64-rootfs", "target.aarch64-unknown-linux-gnu.qemu-rootfs", +diff --git a/src/bootstrap/lib.rs b/src/bootstrap/lib.rs +index e6ac847afe..dd785124d2 100644 +--- a/src/bootstrap/lib.rs ++++ b/src/bootstrap/lib.rs +@@ -803,14 +803,6 @@ impl Build { + } + } + +- /// Returns the "musl root" for this `target`, if defined +- fn musl_root(&self, target: Interned<String>) -> Option<&Path> { +- self.config.target_config.get(&target) +- .and_then(|t| t.musl_root.as_ref()) +- .or(self.config.musl_root.as_ref()) +- .map(|p| &**p) +- } +- + /// Returns true if this is a no-std `target`, if defined + fn no_std(&self, target: Interned<String>) -> Option<bool> { + self.config.target_config.get(&target) +diff --git a/src/bootstrap/sanity.rs b/src/bootstrap/sanity.rs +index c7f514da93..617a3c2399 100644 +--- a/src/bootstrap/sanity.rs ++++ b/src/bootstrap/sanity.rs +@@ -21,7 +21,7 @@ + use std::collections::HashMap; + use std::env; + use std::ffi::{OsString, OsStr}; +-use std::fs::{self, File}; ++use std::fs::File; + use std::io::Read; + use std::path::PathBuf; + use std::process::Command; +@@ -186,34 +186,6 @@ pub fn check(build: &mut Build) { + } + } + +- // Make sure musl-root is valid +- if target.contains("musl") { +- // If this is a native target (host is also musl) and no musl-root is given, +- // fall back to the system toolchain in /usr before giving up +- if build.musl_root(*target).is_none() && build.config.build == *target { +- let target = build.config.target_config.entry(target.clone()) +- .or_insert(Default::default()); +- target.musl_root = Some("/usr".into()); +- } +- match build.musl_root(*target) { +- Some(root) => { +- if fs::metadata(root.join("lib/libc.a")).is_err() { +- panic!("couldn't find libc.a in musl dir: {}", +- root.join("lib").display()); +- } +- if fs::metadata(root.join("lib/libunwind.a")).is_err() { +- panic!("couldn't find libunwind.a in musl dir: {}", +- root.join("lib").display()); +- } +- } +- None => { +- panic!("when targeting MUSL either the rust.musl-root \ +- option or the target.$TARGET.musl-root option must \ +- be specified in config.toml") +- } +- } +- } +- + if target.contains("msvc") { + // There are three builds of cmake on windows: MSVC, MinGW, and + // Cygwin. The Cygwin build does not have generators for Visual +diff --git a/src/ci/docker/dist-i586-gnu-i586-i686-musl/Dockerfile b/src/ci/docker/dist-i586-gnu-i586-i686-musl/Dockerfile +index ba2d32a929..412c37fdd1 100644 +--- a/src/ci/docker/dist-i586-gnu-i586-i686-musl/Dockerfile ++++ b/src/ci/docker/dist-i586-gnu-i586-i686-musl/Dockerfile +@@ -30,8 +30,6 @@ COPY scripts/sccache.sh /scripts/ + RUN sh /scripts/sccache.sh + + ENV RUST_CONFIGURE_ARGS \ +- --musl-root-i586=/musl-i586 \ +- --musl-root-i686=/musl-i686 \ + --enable-extended \ + --disable-docs + +diff --git a/src/ci/docker/dist-various-1/Dockerfile b/src/ci/docker/dist-various-1/Dockerfile +index 6302f55009..e04fdaa226 100644 +--- a/src/ci/docker/dist-various-1/Dockerfile ++++ b/src/ci/docker/dist-various-1/Dockerfile +@@ -109,13 +109,6 @@ ENV CC_mipsel_unknown_linux_musl=mipsel-openwrt-linux-gcc \ + CC_x86_64_unknown_redox=x86_64-unknown-redox-gcc + + ENV RUST_CONFIGURE_ARGS \ +- --musl-root-armv5te=/musl-armv5te \ +- --musl-root-arm=/musl-arm \ +- --musl-root-armhf=/musl-armhf \ +- --musl-root-armv7=/musl-armv7 \ +- --musl-root-aarch64=/musl-aarch64 \ +- --musl-root-mips=/musl-mips \ +- --musl-root-mipsel=/musl-mipsel \ + --enable-emscripten \ + --disable-docs + +diff --git a/src/ci/docker/dist-x86_64-musl/Dockerfile b/src/ci/docker/dist-x86_64-musl/Dockerfile +index 06f8a2fbba..f5dd379528 100644 +--- a/src/ci/docker/dist-x86_64-musl/Dockerfile ++++ b/src/ci/docker/dist-x86_64-musl/Dockerfile +@@ -30,7 +30,6 @@ COPY scripts/sccache.sh /scripts/ + RUN sh /scripts/sccache.sh + + ENV RUST_CONFIGURE_ARGS \ +- --musl-root-x86_64=/musl-x86_64 \ + --enable-extended \ + --disable-docs + +diff --git a/src/librustc_target/spec/linux_musl_base.rs b/src/librustc_target/spec/linux_musl_base.rs +index 7a3f3c2a51..32fe2f880a 100644 +--- a/src/librustc_target/spec/linux_musl_base.rs ++++ b/src/librustc_target/spec/linux_musl_base.rs +@@ -13,53 +13,12 @@ use spec::{LinkerFlavor, TargetOptions}; + pub fn opts() -> TargetOptions { + let mut base = super::linux_base::opts(); + +- // Make sure that the linker/gcc really don't pull in anything, including +- // default objects, libs, etc. +- base.pre_link_args_crt.insert(LinkerFlavor::Gcc, Vec::new()); +- base.pre_link_args_crt.get_mut(&LinkerFlavor::Gcc).unwrap().push("-nostdlib".to_string()); +- + // At least when this was tested, the linker would not add the + // `GNU_EH_FRAME` program header to executables generated, which is required + // when unwinding to locate the unwinding information. I'm not sure why this + // argument is *not* necessary for normal builds, but it can't hurt! + base.pre_link_args.get_mut(&LinkerFlavor::Gcc).unwrap().push("-Wl,--eh-frame-hdr".to_string()); + +- // There's a whole bunch of circular dependencies when dealing with MUSL +- // unfortunately. To put this in perspective libc is statically linked to +- // liblibc and libunwind is statically linked to libstd: +- // +- // * libcore depends on `fmod` which is in libc (transitively in liblibc). +- // liblibc, however, depends on libcore. +- // * compiler-rt has personality symbols that depend on libunwind, but +- // libunwind is in libstd which depends on compiler-rt. +- // +- // Recall that linkers discard libraries and object files as much as +- // possible, and with all the static linking and archives flying around with +- // MUSL the linker is super aggressively stripping out objects. For example +- // the first case has fmod stripped from liblibc (it's in its own object +- // file) so it's not there when libcore needs it. In the second example all +- // the unused symbols from libunwind are stripped (each is in its own object +- // file in libstd) before we end up linking compiler-rt which depends on +- // those symbols. +- // +- // To deal with these circular dependencies we just force the compiler to +- // link everything as a group, not stripping anything out until everything +- // is processed. The linker will still perform a pass to strip out object +- // files but it won't do so until all objects/archives have been processed. +- base.pre_link_args.get_mut(&LinkerFlavor::Gcc).unwrap().push("-Wl,-(".to_string()); +- base.post_link_args.insert(LinkerFlavor::Gcc, vec!["-Wl,-)".to_string()]); +- +- // When generating a statically linked executable there's generally some +- // small setup needed which is listed in these files. These are provided by +- // a musl toolchain and are linked by default by the `musl-gcc` script. Note +- // that `gcc` also does this by default, it just uses some different files. +- // +- // Each target directory for musl has these object files included in it so +- // they'll be included from there. +- base.pre_link_objects_exe_crt.push("crt1.o".to_string()); +- base.pre_link_objects_exe_crt.push("crti.o".to_string()); +- base.post_link_objects_crt.push("crtn.o".to_string()); +- + // These targets statically link libc by default + base.crt_static_default = true; + // These targets allow the user to choose between static and dynamic linking. +-- +2.18.0 + diff --git a/user/rust/0006-Prefer-libgcc_eh-over-libunwind-for-musl.patch b/user/rust/0006-Prefer-libgcc_eh-over-libunwind-for-musl.patch new file mode 100644 index 000000000..5a2b6c422 --- /dev/null +++ b/user/rust/0006-Prefer-libgcc_eh-over-libunwind-for-musl.patch @@ -0,0 +1,24 @@ +From e3b90583112fd59255406f245db1856e0c21dab3 Mon Sep 17 00:00:00 2001 +From: Samuel Holland <samuel@sholland.org> +Date: Sat, 9 Sep 2017 00:14:16 -0500 +Subject: [PATCH 06/29] Prefer libgcc_eh over libunwind for musl + +--- + src/libunwind/lib.rs | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/libunwind/lib.rs b/src/libunwind/lib.rs +index 2b3c19c067..8233beada0 100644 +--- a/src/libunwind/lib.rs ++++ b/src/libunwind/lib.rs +@@ -35,6 +35,6 @@ cfg_if! { + } + + #[cfg(target_env = "musl")] +-#[link(name = "unwind", kind = "static", cfg(target_feature = "crt-static"))] ++#[link(name = "gcc_eh", cfg(target_feature = "crt-static"))] + #[link(name = "gcc_s", cfg(not(target_feature = "crt-static")))] + extern {} +-- +2.18.0 + diff --git a/user/rust/0007-runtest-Fix-proc-macro-tests-on-musl-hosts.patch b/user/rust/0007-runtest-Fix-proc-macro-tests-on-musl-hosts.patch new file mode 100644 index 000000000..745c5a45f --- /dev/null +++ b/user/rust/0007-runtest-Fix-proc-macro-tests-on-musl-hosts.patch @@ -0,0 +1,37 @@ +From d77940e640855aed389af02a95db7958375785e1 Mon Sep 17 00:00:00 2001 +From: Samuel Holland <samuel@sholland.org> +Date: Sun, 16 Sep 2018 16:40:04 +0000 +Subject: [PATCH 07/29] runtest: Fix proc-macro tests on musl hosts + +--- + src/tools/compiletest/src/runtest.rs | 7 ++----- + 1 file changed, 2 insertions(+), 5 deletions(-) + +diff --git a/src/tools/compiletest/src/runtest.rs b/src/tools/compiletest/src/runtest.rs +index ce7828144c..ec48fd2d85 100644 +--- a/src/tools/compiletest/src/runtest.rs ++++ b/src/tools/compiletest/src/runtest.rs +@@ -1509,7 +1509,6 @@ impl<'test> TestCx<'test> { + None + } else if self.config.target.contains("cloudabi") + || self.config.target.contains("emscripten") +- || (self.config.target.contains("musl") && !aux_props.force_host) + || self.config.target.contains("wasm32") + { + // We primarily compile all auxiliary libraries as dynamic libraries +@@ -1517,10 +1516,8 @@ impl<'test> TestCx<'test> { + // for the test suite (otherwise including libstd statically in all + // executables takes up quite a bit of space). + // +- // For targets like MUSL or Emscripten, however, there is no support for +- // dynamic libraries so we just go back to building a normal library. Note, +- // however, that for MUSL if the library is built with `force_host` then +- // it's ok to be a dylib as the host should always support dylibs. ++ // For targets like Emscripten, however, there is no support for ++ // dynamic libraries so we just go back to building a normal library. + Some("lib") + } else { + Some("dylib") +-- +2.18.0 + diff --git a/user/rust/0008-Allow-rustdoc-to-work-when-cross-compiling-on-musl.patch b/user/rust/0008-Allow-rustdoc-to-work-when-cross-compiling-on-musl.patch new file mode 100644 index 000000000..a3caa20f5 --- /dev/null +++ b/user/rust/0008-Allow-rustdoc-to-work-when-cross-compiling-on-musl.patch @@ -0,0 +1,36 @@ +From 3028ae603ea6f08fd6bc1c64a7fe28628a1232e9 Mon Sep 17 00:00:00 2001 +From: Samuel Holland <samuel@sholland.org> +Date: Sat, 2 Dec 2017 17:25:44 -0600 +Subject: [PATCH 08/29] Allow rustdoc to work when cross-compiling on musl + +musl can't handle foreign-architecture libraries in LD_LIBRARY_PATH. +--- + src/bootstrap/bin/rustdoc.rs | 5 +---- + 1 file changed, 1 insertion(+), 4 deletions(-) + +diff --git a/src/bootstrap/bin/rustdoc.rs b/src/bootstrap/bin/rustdoc.rs +index a54e58665c..fc0cf940e2 100644 +--- a/src/bootstrap/bin/rustdoc.rs ++++ b/src/bootstrap/bin/rustdoc.rs +@@ -34,9 +34,6 @@ fn main() { + Err(_) => 0, + }; + +- let mut dylib_path = bootstrap::util::dylib_path(); +- dylib_path.insert(0, PathBuf::from(libdir.clone())); +- + let mut cmd = Command::new(rustdoc); + cmd.args(&args) + .arg("--cfg") +@@ -46,7 +43,7 @@ fn main() { + .arg("--sysroot") + .arg(sysroot) + .env(bootstrap::util::dylib_path_var(), +- env::join_paths(&dylib_path).unwrap()); ++ PathBuf::from(libdir.clone())); + + // Force all crates compiled by this compiler to (a) be unstable and (b) + // allow the `rustc_private` feature to link to other unstable crates +-- +2.18.0 + diff --git a/user/rust/0009-Add-missing-OpenSSL-configurations-for-musl-targets.patch b/user/rust/0009-Add-missing-OpenSSL-configurations-for-musl-targets.patch new file mode 100644 index 000000000..6ae697151 --- /dev/null +++ b/user/rust/0009-Add-missing-OpenSSL-configurations-for-musl-targets.patch @@ -0,0 +1,42 @@ +From 7595533dfe8121a2dcaec6de1653c3fb40349985 Mon Sep 17 00:00:00 2001 +From: Samuel Holland <samuel@sholland.org> +Date: Mon, 11 Sep 2017 11:21:56 -0500 +Subject: [PATCH 09/29] Add missing OpenSSL configurations for musl targets + +--- + src/bootstrap/native.rs | 6 ++++++ + 1 file changed, 6 insertions(+) + +diff --git a/src/bootstrap/native.rs b/src/bootstrap/native.rs +index 9aeb4e0eda..18c3dba233 100644 +--- a/src/bootstrap/native.rs ++++ b/src/bootstrap/native.rs +@@ -610,9 +610,13 @@ impl Step for Openssl { + "arm-linux-androideabi" => "android", + "arm-unknown-linux-gnueabi" => "linux-armv4", + "arm-unknown-linux-gnueabihf" => "linux-armv4", ++ "arm-unknown-linux-musleabi" => "linux-armv4", ++ "arm-unknown-linux-musleabihf" => "linux-armv4", ++ "armv5te-unknown-linux-musleabi" => "linux-armv4", + "armv6-unknown-netbsd-eabihf" => "BSD-generic32", + "armv7-linux-androideabi" => "android-armv7", + "armv7-unknown-linux-gnueabihf" => "linux-armv4", ++ "armv7-unknown-linux-musleabihf" => "linux-armv4", + "armv7-unknown-netbsd-eabihf" => "BSD-generic32", + "i586-unknown-linux-gnu" => "linux-elf", + "i586-unknown-linux-musl" => "linux-elf", +@@ -623,9 +627,11 @@ impl Step for Openssl { + "i686-unknown-linux-musl" => "linux-elf", + "i686-unknown-netbsd" => "BSD-x86-elf", + "mips-unknown-linux-gnu" => "linux-mips32", ++ "mips-unknown-linux-musl" => "linux-mips32", + "mips64-unknown-linux-gnuabi64" => "linux64-mips64", + "mips64el-unknown-linux-gnuabi64" => "linux64-mips64", + "mipsel-unknown-linux-gnu" => "linux-mips32", ++ "mipsel-unknown-linux-musl" => "linux-mips32", + "powerpc-unknown-linux-gnu" => "linux-ppc", + "powerpc-unknown-linux-gnuspe" => "linux-ppc", + "powerpc-unknown-netbsd" => "BSD-generic32", +-- +2.18.0 + diff --git a/user/rust/0010-test-linkage-visibility-dlsym-only-sees-exported-sym.patch b/user/rust/0010-test-linkage-visibility-dlsym-only-sees-exported-sym.patch new file mode 100644 index 000000000..15f431e5a --- /dev/null +++ b/user/rust/0010-test-linkage-visibility-dlsym-only-sees-exported-sym.patch @@ -0,0 +1,26 @@ +From 289d2f3ceb6226c385f3784d310465f375dc0c00 Mon Sep 17 00:00:00 2001 +From: Samuel Holland <samuel@sholland.org> +Date: Sun, 16 Sep 2018 16:35:41 +0000 +Subject: [PATCH 10/29] test/linkage-visibility: dlsym only sees exported + symbols + +--- + src/test/run-pass-fulldeps/auxiliary/linkage-visibility.rs | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/src/test/run-pass-fulldeps/auxiliary/linkage-visibility.rs b/src/test/run-pass-fulldeps/auxiliary/linkage-visibility.rs +index 7a15a4cb3a..853d97670d 100644 +--- a/src/test/run-pass-fulldeps/auxiliary/linkage-visibility.rs ++++ b/src/test/run-pass-fulldeps/auxiliary/linkage-visibility.rs +@@ -8,6 +8,8 @@ + // option. This file may not be copied, modified, or distributed + // except according to those terms. + ++// compile-flags: -C link-arg=-Wl,--export-dynamic ++ + #![feature(rustc_private)] + + // We're testing linkage visibility; the compiler warns us, but we want to +-- +2.18.0 + diff --git a/user/rust/0011-test-invalid_const_promotion-Accept-SIGTRAP-as-a-val.patch b/user/rust/0011-test-invalid_const_promotion-Accept-SIGTRAP-as-a-val.patch new file mode 100644 index 000000000..58db71538 --- /dev/null +++ b/user/rust/0011-test-invalid_const_promotion-Accept-SIGTRAP-as-a-val.patch @@ -0,0 +1,25 @@ +From 097f992e9ef62963f5e938e9a21171253a72b36a Mon Sep 17 00:00:00 2001 +From: Samuel Holland <samuel@sholland.org> +Date: Sun, 16 Sep 2018 16:37:09 +0000 +Subject: [PATCH 11/29] test/invalid_const_promotion: Accept SIGTRAP as a valid + death signal + +--- + src/test/run-pass/invalid_const_promotion.rs | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/src/test/run-pass/invalid_const_promotion.rs b/src/test/run-pass/invalid_const_promotion.rs +index 53cb4c4b00..dc4c0a51dd 100644 +--- a/src/test/run-pass/invalid_const_promotion.rs ++++ b/src/test/run-pass/invalid_const_promotion.rs +@@ -33,6 +33,7 @@ fn check_status(status: std::process::ExitStatus) + use std::os::unix::process::ExitStatusExt; + + assert!(status.signal() == Some(libc::SIGILL) ++ || status.signal() == Some(libc::SIGTRAP) + || status.signal() == Some(libc::SIGABRT)); + } + +-- +2.18.0 + diff --git a/user/rust/0015-flock-Fix-F_SETLK-F_SETLKW-on-32-bit-O_LARGEFILE.patch b/user/rust/0015-flock-Fix-F_SETLK-F_SETLKW-on-32-bit-O_LARGEFILE.patch new file mode 100644 index 000000000..de9661d3a --- /dev/null +++ b/user/rust/0015-flock-Fix-F_SETLK-F_SETLKW-on-32-bit-O_LARGEFILE.patch @@ -0,0 +1,27 @@ +From 9c13dec5a526a4a66dc45453ab1808ab9a1bb10b Mon Sep 17 00:00:00 2001 +From: Samuel Holland <samuel@sholland.org> +Date: Tue, 9 Oct 2018 04:15:48 +0000 +Subject: [PATCH 15/29] flock: Fix F_SETLK/F_SETLKW on 32-bit O_LARGEFILE + +--- + src/librustc_data_structures/flock.rs | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/src/librustc_data_structures/flock.rs b/src/librustc_data_structures/flock.rs +index ff1ebb11b7..d85017ec50 100644 +--- a/src/librustc_data_structures/flock.rs ++++ b/src/librustc_data_structures/flock.rs +@@ -46,8 +46,8 @@ mod imp { + pub const F_RDLCK: libc::c_short = 0; + pub const F_WRLCK: libc::c_short = 1; + pub const F_UNLCK: libc::c_short = 2; +- pub const F_SETLK: libc::c_int = 6; +- pub const F_SETLKW: libc::c_int = 7; ++ pub const F_SETLK: libc::c_int = libc::F_SETLK; ++ pub const F_SETLKW: libc::c_int = libc::F_SETLKW; + } + + #[cfg(target_os = "freebsd")] +-- +2.18.0 + diff --git a/user/rust/0016-Add-powerpc-unknown-linux-musl-target.patch b/user/rust/0016-Add-powerpc-unknown-linux-musl-target.patch new file mode 100644 index 000000000..1bafb8dd5 --- /dev/null +++ b/user/rust/0016-Add-powerpc-unknown-linux-musl-target.patch @@ -0,0 +1,92 @@ +From 763b30d1e146fc04f7de2a8b1d6b17dcd94e3e0f Mon Sep 17 00:00:00 2001 +From: Samuel Holland <samuel@sholland.org> +Date: Mon, 10 Sep 2018 01:35:35 +0000 +Subject: [PATCH 16/29] Add powerpc-unknown-linux-musl target + +--- + src/bootstrap/native.rs | 1 + + src/librustc_target/spec/mod.rs | 1 + + .../spec/powerpc_unknown_linux_musl.rs | 34 +++++++++++++++++++ + src/tools/build-manifest/src/main.rs | 1 + + 4 files changed, 37 insertions(+) + create mode 100644 src/librustc_target/spec/powerpc_unknown_linux_musl.rs + +diff --git a/src/bootstrap/native.rs b/src/bootstrap/native.rs +index 18c3dba233..7c32b8b546 100644 +--- a/src/bootstrap/native.rs ++++ b/src/bootstrap/native.rs +@@ -634,6 +634,7 @@ impl Step for Openssl { + "mipsel-unknown-linux-musl" => "linux-mips32", + "powerpc-unknown-linux-gnu" => "linux-ppc", + "powerpc-unknown-linux-gnuspe" => "linux-ppc", ++ "powerpc-unknown-linux-musl" => "linux-ppc", + "powerpc-unknown-netbsd" => "BSD-generic32", + "powerpc64-unknown-linux-gnu" => "linux-ppc64", + "powerpc64le-unknown-linux-gnu" => "linux-ppc64le", +diff --git a/src/librustc_target/spec/mod.rs b/src/librustc_target/spec/mod.rs +index c5d21cdc46..f09e5a7465 100644 +--- a/src/librustc_target/spec/mod.rs ++++ b/src/librustc_target/spec/mod.rs +@@ -272,6 +272,7 @@ supported_targets! { + ("mipsel-unknown-linux-gnu", mipsel_unknown_linux_gnu), + ("powerpc-unknown-linux-gnu", powerpc_unknown_linux_gnu), + ("powerpc-unknown-linux-gnuspe", powerpc_unknown_linux_gnuspe), ++ ("powerpc-unknown-linux-musl", powerpc_unknown_linux_musl), + ("powerpc64-unknown-linux-gnu", powerpc64_unknown_linux_gnu), + ("powerpc64le-unknown-linux-gnu", powerpc64le_unknown_linux_gnu), + ("powerpc64le-unknown-linux-musl", powerpc64le_unknown_linux_musl), +diff --git a/src/librustc_target/spec/powerpc_unknown_linux_musl.rs b/src/librustc_target/spec/powerpc_unknown_linux_musl.rs +new file mode 100644 +index 0000000000..48340da514 +--- /dev/null ++++ b/src/librustc_target/spec/powerpc_unknown_linux_musl.rs +@@ -0,0 +1,34 @@ ++// Copyright 2018 The Rust Project Developers. See the COPYRIGHT ++// file at the top-level directory of this distribution and at ++// http://rust-lang.org/COPYRIGHT. ++// ++// Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or ++// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license ++// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your ++// option. This file may not be copied, modified, or distributed ++// except according to those terms. ++ ++use spec::{LinkerFlavor, Target, TargetResult}; ++ ++pub fn target() -> TargetResult { ++ let mut base = super::linux_musl_base::opts(); ++ base.pre_link_args.get_mut(&LinkerFlavor::Gcc).unwrap().push("-m32".to_string()); ++ base.max_atomic_width = Some(32); ++ ++ // see #36994 ++ base.exe_allocation_crate = None; ++ ++ Ok(Target { ++ llvm_target: "powerpc-unknown-linux-musl".to_string(), ++ target_endian: "big".to_string(), ++ target_pointer_width: "32".to_string(), ++ target_c_int_width: "32".to_string(), ++ data_layout: "E-m:e-p:32:32-i64:64-n32".to_string(), ++ arch: "powerpc".to_string(), ++ target_os: "linux".to_string(), ++ target_env: "musl".to_string(), ++ target_vendor: "unknown".to_string(), ++ linker_flavor: LinkerFlavor::Gcc, ++ options: base, ++ }) ++} +diff --git a/src/tools/build-manifest/src/main.rs b/src/tools/build-manifest/src/main.rs +index 83b2895e1d..7659d24f47 100644 +--- a/src/tools/build-manifest/src/main.rs ++++ b/src/tools/build-manifest/src/main.rs +@@ -86,6 +86,7 @@ static TARGETS: &'static [&'static str] = &[ + "mipsel-unknown-linux-musl", + "powerpc-unknown-linux-gnu", + "powerpc-unknown-linux-gnuspe", ++ "powerpc-unknown-linux-musl", + "powerpc64-unknown-linux-gnu", + "powerpc64le-unknown-linux-gnu", + "powerpc64le-unknown-linux-musl", +-- +2.18.0 + diff --git a/user/rust/0017-Use-the-ELFv2-ABI-on-powerpc64-musl.patch b/user/rust/0017-Use-the-ELFv2-ABI-on-powerpc64-musl.patch new file mode 100644 index 000000000..dd11dd568 --- /dev/null +++ b/user/rust/0017-Use-the-ELFv2-ABI-on-powerpc64-musl.patch @@ -0,0 +1,43 @@ +From e1214a04a9f8a30b67665ef353e3934e15e24a16 Mon Sep 17 00:00:00 2001 +From: Samuel Holland <samuel@sholland.org> +Date: Wed, 8 Aug 2018 22:06:18 -0500 +Subject: [PATCH 17/29] Use the ELFv2 ABI on powerpc64 musl + +--- + src/librustc_target/abi/call/powerpc64.rs | 12 ++++++++---- + 1 file changed, 8 insertions(+), 4 deletions(-) + +diff --git a/src/librustc_target/abi/call/powerpc64.rs b/src/librustc_target/abi/call/powerpc64.rs +index 0c5ec77a39..4851b25fe7 100644 +--- a/src/librustc_target/abi/call/powerpc64.rs ++++ b/src/librustc_target/abi/call/powerpc64.rs +@@ -14,6 +14,7 @@ + + use abi::call::{FnType, ArgType, Reg, RegKind, Uniform}; + use abi::{Align, Endian, HasDataLayout, LayoutOf, TyLayout, TyLayoutMethods}; ++use spec::HasTargetSpec; + + #[derive(Debug, Clone, Copy, PartialEq)] + enum ABI { +@@ -136,11 +137,14 @@ fn classify_arg_ty<'a, Ty, C>(cx: C, arg: &mut ArgType<'a, Ty>, abi: ABI) + + pub fn compute_abi_info<'a, Ty, C>(cx: C, fty: &mut FnType<'a, Ty>) + where Ty: TyLayoutMethods<'a, C> + Copy, +- C: LayoutOf<Ty = Ty, TyLayout = TyLayout<'a, Ty>> + HasDataLayout ++ C: LayoutOf<Ty = Ty, TyLayout = TyLayout<'a, Ty>> + HasDataLayout + HasTargetSpec + { +- let abi = match cx.data_layout().endian { +- Endian::Big => ELFv1, +- Endian::Little => ELFv2, ++ let abi = match cx.target_spec().target_env { ++ "musl" => ELFv2, ++ _ => match cx.data_layout().endian { ++ Endian::Big => ELFv1, ++ Endian::Little => ELFv2 ++ } + }; + + if !fty.ret.is_ignore() { +-- +2.18.0 + diff --git a/user/rust/0018-Fix-powerpc64-ELFv2-big-endian-struct-passing-ABI.patch b/user/rust/0018-Fix-powerpc64-ELFv2-big-endian-struct-passing-ABI.patch new file mode 100644 index 000000000..d1a6daa16 --- /dev/null +++ b/user/rust/0018-Fix-powerpc64-ELFv2-big-endian-struct-passing-ABI.patch @@ -0,0 +1,93 @@ +From c99f30986f8486cc24dda5630b685dd932d510d4 Mon Sep 17 00:00:00 2001 +From: Samuel Holland <samuel@sholland.org> +Date: Sun, 16 Sep 2018 16:34:15 +0000 +Subject: [PATCH 18/29] Fix powerpc64 ELFv2 big-endian struct-passing ABI + +The requirements here are not "ELFv1" requirements, but big-endian +requirements, as the extension or non-extension of the argument is +necessary to put the argument in the correct half of the register. +Parameter passing in the ELFv2 ABI needs these same transformations. +Since this code makes no difference on little-endian machines, simplify +it to use the same code path everywhere. +--- + src/librustc_target/abi/call/powerpc64.rs | 36 ++++++++++------------- + src/librustc_target/abi/mod.rs | 2 +- + 2 files changed, 17 insertions(+), 21 deletions(-) + +diff --git a/src/librustc_target/abi/call/powerpc64.rs b/src/librustc_target/abi/call/powerpc64.rs +index 4851b25fe7..9e616c034e 100644 +--- a/src/librustc_target/abi/call/powerpc64.rs ++++ b/src/librustc_target/abi/call/powerpc64.rs +@@ -76,7 +76,9 @@ fn classify_ret_ty<'a, Ty, C>(cx: C, ret: &mut ArgType<'a, Ty>, abi: ABI) + let size = ret.layout.size; + let bits = size.bits(); + if bits <= 128 { +- let unit = if bits <= 8 { ++ let unit = if cx.data_layout().endian == Endian::Big { ++ Reg { kind: RegKind::Integer, size } ++ } else if bits <= 8 { + Reg::i8() + } else if bits <= 16 { + Reg::i16() +@@ -111,22 +113,15 @@ fn classify_arg_ty<'a, Ty, C>(cx: C, arg: &mut ArgType<'a, Ty>, abi: ABI) + } + + let size = arg.layout.size; +- let (unit, total) = match abi { +- ELFv1 => { +- // In ELFv1, aggregates smaller than a doubleword should appear in +- // the least-significant bits of the parameter doubleword. The rest +- // should be padded at their tail to fill out multiple doublewords. +- if size.bits() <= 64 { +- (Reg { kind: RegKind::Integer, size }, size) +- } else { +- let align = Align::from_bits(64, 64).unwrap(); +- (Reg::i64(), size.abi_align(align)) +- } +- }, +- ELFv2 => { +- // In ELFv2, we can just cast directly. +- (Reg::i64(), size) +- }, ++ let (unit, total) = if size.bits() <= 64 { ++ // Aggregates smaller than a doubleword should appear in ++ // the least-significant bits of the parameter doubleword. ++ (Reg { kind: RegKind::Integer, size }, size) ++ } else { ++ // Aggregates larger than a doubleword should be padded ++ // at the tail to fill out a whole number of doublewords. ++ let align = Align::from_bits(64, 64).unwrap(); ++ (Reg::i64(), size.abi_align(align)) + }; + + arg.cast_to(Uniform { +@@ -139,9 +134,10 @@ pub fn compute_abi_info<'a, Ty, C>(cx: C, fty: &mut FnType<'a, Ty>) + where Ty: TyLayoutMethods<'a, C> + Copy, + C: LayoutOf<Ty = Ty, TyLayout = TyLayout<'a, Ty>> + HasDataLayout + HasTargetSpec + { +- let abi = match cx.target_spec().target_env { +- "musl" => ELFv2, +- _ => match cx.data_layout().endian { ++ let abi = if cx.target_spec().target_env == "musl" { ++ ELFv2 ++ } else { ++ match cx.data_layout().endian { + Endian::Big => ELFv1, + Endian::Little => ELFv2 + } +diff --git a/src/librustc_target/abi/mod.rs b/src/librustc_target/abi/mod.rs +index dac4738e2b..35b1ceb967 100644 +--- a/src/librustc_target/abi/mod.rs ++++ b/src/librustc_target/abi/mod.rs +@@ -214,7 +214,7 @@ impl<'a> HasDataLayout for &'a TargetDataLayout { + } + + /// Endianness of the target, which must match cfg(target-endian). +-#[derive(Copy, Clone)] ++#[derive(Copy, Clone, PartialEq)] + pub enum Endian { + Little, + Big +-- +2.18.0 + diff --git a/user/rust/0019-Add-powerpc64-unknown-linux-musl-target.patch b/user/rust/0019-Add-powerpc64-unknown-linux-musl-target.patch new file mode 100644 index 000000000..de0f2bc82 --- /dev/null +++ b/user/rust/0019-Add-powerpc64-unknown-linux-musl-target.patch @@ -0,0 +1,118 @@ +From 914179b27fdabbbd42da8206f46621a006e54180 Mon Sep 17 00:00:00 2001 +From: Samuel Holland <samuel@sholland.org> +Date: Tue, 7 Aug 2018 21:59:15 -0500 +Subject: [PATCH 19/29] Add powerpc64-unknown-linux-musl target + +--- + src/bootstrap/native.rs | 5 +++ + src/librustc_target/abi/call/powerpc64.rs | 2 +- + src/librustc_target/spec/mod.rs | 1 + + .../spec/powerpc64_unknown_linux_musl.rs | 35 +++++++++++++++++++ + src/tools/build-manifest/src/main.rs | 1 + + 5 files changed, 43 insertions(+), 1 deletion(-) + create mode 100644 src/librustc_target/spec/powerpc64_unknown_linux_musl.rs + +diff --git a/src/bootstrap/native.rs b/src/bootstrap/native.rs +index 7c32b8b546..186ef75189 100644 +--- a/src/bootstrap/native.rs ++++ b/src/bootstrap/native.rs +@@ -637,6 +637,7 @@ impl Step for Openssl { + "powerpc-unknown-linux-musl" => "linux-ppc", + "powerpc-unknown-netbsd" => "BSD-generic32", + "powerpc64-unknown-linux-gnu" => "linux-ppc64", ++ "powerpc64-unknown-linux-musl" => "linux-ppc64", + "powerpc64le-unknown-linux-gnu" => "linux-ppc64le", + "powerpc64le-unknown-linux-musl" => "linux-ppc64le", + "s390x-unknown-linux-gnu" => "linux64-s390x", +@@ -664,6 +665,10 @@ impl Step for Openssl { + configure.arg("-mandroid"); + configure.arg("-fomit-frame-pointer"); + } ++ // OpenSSL ships incompatible ELFv1 ABI assembly code ++ if target == "powerpc64-unknown-linux-musl" { ++ configure.arg("no-asm"); ++ } + if target == "sparc64-unknown-netbsd" { + // Need -m64 to get assembly generated correctly for sparc64. + configure.arg("-m64"); +diff --git a/src/librustc_target/abi/call/powerpc64.rs b/src/librustc_target/abi/call/powerpc64.rs +index 9e616c034e..18d14495e2 100644 +--- a/src/librustc_target/abi/call/powerpc64.rs ++++ b/src/librustc_target/abi/call/powerpc64.rs +@@ -19,7 +19,7 @@ use spec::HasTargetSpec; + #[derive(Debug, Clone, Copy, PartialEq)] + enum ABI { + ELFv1, // original ABI used for powerpc64 (big-endian) +- ELFv2, // newer ABI used for powerpc64le ++ ELFv2, // newer ABI used for powerpc64le and musl (both endians) + } + use self::ABI::*; + +diff --git a/src/librustc_target/spec/mod.rs b/src/librustc_target/spec/mod.rs +index f09e5a7465..94aa07abb6 100644 +--- a/src/librustc_target/spec/mod.rs ++++ b/src/librustc_target/spec/mod.rs +@@ -274,6 +274,7 @@ supported_targets! { + ("powerpc-unknown-linux-gnuspe", powerpc_unknown_linux_gnuspe), + ("powerpc-unknown-linux-musl", powerpc_unknown_linux_musl), + ("powerpc64-unknown-linux-gnu", powerpc64_unknown_linux_gnu), ++ ("powerpc64-unknown-linux-musl", powerpc64_unknown_linux_musl), + ("powerpc64le-unknown-linux-gnu", powerpc64le_unknown_linux_gnu), + ("powerpc64le-unknown-linux-musl", powerpc64le_unknown_linux_musl), + ("s390x-unknown-linux-gnu", s390x_unknown_linux_gnu), +diff --git a/src/librustc_target/spec/powerpc64_unknown_linux_musl.rs b/src/librustc_target/spec/powerpc64_unknown_linux_musl.rs +new file mode 100644 +index 0000000000..24ff9e0ecd +--- /dev/null ++++ b/src/librustc_target/spec/powerpc64_unknown_linux_musl.rs +@@ -0,0 +1,35 @@ ++// Copyright 2018 The Rust Project Developers. See the COPYRIGHT ++// file at the top-level directory of this distribution and at ++// http://rust-lang.org/COPYRIGHT. ++// ++// Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or ++// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license ++// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your ++// option. This file may not be copied, modified, or distributed ++// except according to those terms. ++ ++use spec::{LinkerFlavor, Target, TargetResult}; ++ ++pub fn target() -> TargetResult { ++ let mut base = super::linux_musl_base::opts(); ++ base.cpu = "ppc64".to_string(); ++ base.pre_link_args.get_mut(&LinkerFlavor::Gcc).unwrap().push("-m64".to_string()); ++ base.max_atomic_width = Some(64); ++ ++ // see #36994 ++ base.exe_allocation_crate = None; ++ ++ Ok(Target { ++ llvm_target: "powerpc64-unknown-linux-musl".to_string(), ++ target_endian: "big".to_string(), ++ target_pointer_width: "64".to_string(), ++ target_c_int_width: "32".to_string(), ++ data_layout: "E-m:e-i64:64-n32:64".to_string(), ++ arch: "powerpc64".to_string(), ++ target_os: "linux".to_string(), ++ target_env: "musl".to_string(), ++ target_vendor: "unknown".to_string(), ++ linker_flavor: LinkerFlavor::Gcc, ++ options: base, ++ }) ++} +diff --git a/src/tools/build-manifest/src/main.rs b/src/tools/build-manifest/src/main.rs +index 7659d24f47..e20f9fe216 100644 +--- a/src/tools/build-manifest/src/main.rs ++++ b/src/tools/build-manifest/src/main.rs +@@ -88,6 +88,7 @@ static TARGETS: &'static [&'static str] = &[ + "powerpc-unknown-linux-gnuspe", + "powerpc-unknown-linux-musl", + "powerpc64-unknown-linux-gnu", ++ "powerpc64-unknown-linux-musl", + "powerpc64le-unknown-linux-gnu", + "powerpc64le-unknown-linux-musl", + "s390x-unknown-linux-gnu", +-- +2.18.0 + diff --git a/user/rust/0020-run-pass-const-endianness-negate-before-to_le.patch b/user/rust/0020-run-pass-const-endianness-negate-before-to_le.patch new file mode 100644 index 000000000..151b3f419 --- /dev/null +++ b/user/rust/0020-run-pass-const-endianness-negate-before-to_le.patch @@ -0,0 +1,29 @@ +From 72c7e78b400c1ad96d84b254b51dcc9f2baea3e1 Mon Sep 17 00:00:00 2001 +From: Josh Stone <jistone@redhat.com> +Date: Mon, 30 Jul 2018 13:08:56 -0700 +Subject: [PATCH 20/29] run-pass/const-endianness: negate before to_le() + +`const LE_I128` needs parentheses to negate the value *before* calling +`to_le()`, otherwise it doesn't match the operations performed in the +black-boxed part of the test. This only makes a tangible difference on +big-endian targets. +--- + src/test/run-pass/const-endianess.rs | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/test/run-pass/const-endianess.rs b/src/test/run-pass/const-endianess.rs +index fa34b49210..95c738d3ec 100644 +--- a/src/test/run-pass/const-endianess.rs ++++ b/src/test/run-pass/const-endianess.rs +@@ -25,7 +25,7 @@ fn main() { + #[cfg(not(target_arch = "asmjs"))] + { + const BE_U128: u128 = 999999u128.to_be(); +- const LE_I128: i128 = -999999i128.to_le(); ++ const LE_I128: i128 = (-999999i128).to_le(); + assert_eq!(BE_U128, b(999999u128).to_be()); + assert_eq!(LE_I128, b(-999999i128).to_le()); + } +-- +2.18.0 + diff --git a/user/rust/0021-Fix-double_check-tests-on-big-endian-targets.patch b/user/rust/0021-Fix-double_check-tests-on-big-endian-targets.patch new file mode 100644 index 000000000..720db7d10 --- /dev/null +++ b/user/rust/0021-Fix-double_check-tests-on-big-endian-targets.patch @@ -0,0 +1,75 @@ +From 55549ca3d760200dc6037fecc7e5b8816558c5b1 Mon Sep 17 00:00:00 2001 +From: Samuel Holland <samuel@sholland.org> +Date: Sun, 16 Sep 2018 16:37:58 +0000 +Subject: [PATCH 21/29] Fix double_check tests on big-endian targets + +Since the enums get optimized down to 1 byte long, the bits +set in the usize member don't align with the enums on big-endian +machines. Avoid this issue by shrinking the integer member to the +same size as the enums. +--- + src/test/ui/const-eval/double_check.rs | 8 ++++---- + src/test/ui/const-eval/double_check2.rs | 8 ++++---- + src/test/ui/const-eval/double_check2.stderr | 4 ++-- + 3 files changed, 10 insertions(+), 10 deletions(-) + +diff --git a/src/test/ui/const-eval/double_check.rs b/src/test/ui/const-eval/double_check.rs +index 81f6e7ddd2..76f9276c05 100644 +--- a/src/test/ui/const-eval/double_check.rs ++++ b/src/test/ui/const-eval/double_check.rs +@@ -21,12 +21,12 @@ enum Bar { + union Union { + foo: &'static Foo, + bar: &'static Bar, +- usize: &'static usize, ++ u8: &'static u8, + } +-static BAR: usize = 42; ++static BAR: u8 = 42; + static FOO: (&Foo, &Bar) = unsafe {( +- Union { usize: &BAR }.foo, +- Union { usize: &BAR }.bar, ++ Union { u8: &BAR }.foo, ++ Union { u8: &BAR }.bar, + )}; + + fn main() {} +diff --git a/src/test/ui/const-eval/double_check2.rs b/src/test/ui/const-eval/double_check2.rs +index b661ee9247..701632362c 100644 +--- a/src/test/ui/const-eval/double_check2.rs ++++ b/src/test/ui/const-eval/double_check2.rs +@@ -19,12 +19,12 @@ enum Bar { + union Union { + foo: &'static Foo, + bar: &'static Bar, +- usize: &'static usize, ++ u8: &'static u8, + } +-static BAR: usize = 5; ++static BAR: u8 = 5; + static FOO: (&Foo, &Bar) = unsafe {( //~ undefined behavior +- Union { usize: &BAR }.foo, +- Union { usize: &BAR }.bar, ++ Union { u8: &BAR }.foo, ++ Union { u8: &BAR }.bar, + )}; + + fn main() {} +diff --git a/src/test/ui/const-eval/double_check2.stderr b/src/test/ui/const-eval/double_check2.stderr +index 2a0a674e23..d0f44a627b 100644 +--- a/src/test/ui/const-eval/double_check2.stderr ++++ b/src/test/ui/const-eval/double_check2.stderr +@@ -2,8 +2,8 @@ error[E0080]: this static likely exhibits undefined behavior + --> $DIR/double_check2.rs:25:1 + | + LL | / static FOO: (&Foo, &Bar) = unsafe {( //~ undefined behavior +-LL | | Union { usize: &BAR }.foo, +-LL | | Union { usize: &BAR }.bar, ++LL | | Union { u8: &BAR }.foo, ++LL | | Union { u8: &BAR }.bar, + LL | | )}; + | |___^ type validation failed: encountered 5 at (*.1).TAG, but expected something in the range 42..=99 + | +-- +2.18.0 + diff --git a/user/rust/0022-x.py-Use-python3-instead-of-python.patch b/user/rust/0022-x.py-Use-python3-instead-of-python.patch new file mode 100644 index 000000000..e23de6cef --- /dev/null +++ b/user/rust/0022-x.py-Use-python3-instead-of-python.patch @@ -0,0 +1,22 @@ +From 2a14cfeafd57037b4063e411f8e90f09bbe29fa4 Mon Sep 17 00:00:00 2001 +From: Samuel Holland <samuel@sholland.org> +Date: Mon, 10 Sep 2018 01:36:00 +0000 +Subject: [PATCH 22/29] x.py: Use python3 instead of python + +--- + x.py | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/x.py b/x.py +index e277ab98be..a75176a3f9 100755 +--- a/x.py ++++ b/x.py +@@ -1,4 +1,4 @@ +-#!/usr/bin/env python ++#!/usr/bin/env python3 + # Copyright 2016 The Rust Project Developers. See the COPYRIGHT + # file at the top-level directory of this distribution and at + # http://rust-lang.org/COPYRIGHT. +-- +2.18.0 + diff --git a/user/rust/0023-test-target-feature-gate-Only-run-on-relevant-target.patch b/user/rust/0023-test-target-feature-gate-Only-run-on-relevant-target.patch new file mode 100644 index 000000000..0bfa28fe9 --- /dev/null +++ b/user/rust/0023-test-target-feature-gate-Only-run-on-relevant-target.patch @@ -0,0 +1,37 @@ +From beb589601f0ca9dd762aaa9f52a440bbef68e943 Mon Sep 17 00:00:00 2001 +From: Samuel Holland <samuel@sholland.org> +Date: Sun, 16 Sep 2018 16:39:46 +0000 +Subject: [PATCH 23/29] test/target-feature-gate: Only run on relevant targets + +--- + src/test/ui/target-feature-gate.rs | 2 ++ + src/test/ui/target-feature-gate.stderr | 2 +- + 2 files changed, 3 insertions(+), 1 deletion(-) + +diff --git a/src/test/ui/target-feature-gate.rs b/src/test/ui/target-feature-gate.rs +index 69208f1513..59c5708b0c 100644 +--- a/src/test/ui/target-feature-gate.rs ++++ b/src/test/ui/target-feature-gate.rs +@@ -10,6 +10,8 @@ + + // ignore-arm + // ignore-aarch64 ++// ignore-powerpc ++// ignore-powerpc64 + // ignore-wasm + // ignore-emscripten + // gate-test-sse4a_target_feature +diff --git a/src/test/ui/target-feature-gate.stderr b/src/test/ui/target-feature-gate.stderr +index a6f794a1a1..24141d0064 100644 +--- a/src/test/ui/target-feature-gate.stderr ++++ b/src/test/ui/target-feature-gate.stderr +@@ -1,5 +1,5 @@ + error[E0658]: the target feature `avx512bw` is currently unstable (see issue #44839) +- --> $DIR/target-feature-gate.rs:26:18 ++ --> $DIR/target-feature-gate.rs:28:18 + | + LL | #[target_feature(enable = "avx512bw")] + | ^^^^^^^^^^^^^^^^^^^ +-- +2.18.0 + diff --git a/user/rust/0024-test-use-extern-for-plugins-Don-t-assume-multilib.patch b/user/rust/0024-test-use-extern-for-plugins-Don-t-assume-multilib.patch new file mode 100644 index 000000000..c033bb558 --- /dev/null +++ b/user/rust/0024-test-use-extern-for-plugins-Don-t-assume-multilib.patch @@ -0,0 +1,30 @@ +From 0fbfd4524768afad009e8e94c8824adfd7bd3b00 Mon Sep 17 00:00:00 2001 +From: Samuel Holland <samuel@sholland.org> +Date: Sat, 6 Oct 2018 04:01:48 +0000 +Subject: [PATCH 24/29] test/use-extern-for-plugins: Don't assume multilib + +--- + src/test/run-make-fulldeps/use-extern-for-plugins/Makefile | 7 +------ + 1 file changed, 1 insertion(+), 6 deletions(-) + +diff --git a/src/test/run-make-fulldeps/use-extern-for-plugins/Makefile b/src/test/run-make-fulldeps/use-extern-for-plugins/Makefile +index cc7bc176f4..36553f1e44 100644 +--- a/src/test/run-make-fulldeps/use-extern-for-plugins/Makefile ++++ b/src/test/run-make-fulldeps/use-extern-for-plugins/Makefile +@@ -4,12 +4,7 @@ SKIP_OS := 'FreeBSD OpenBSD Bitrig SunOS' + + ifneq ($(UNAME),$(findstring $(UNAME),$(SKIP_OS))) + +-HOST := $(shell $(RUSTC) -vV | grep 'host:' | sed 's/host: //') +-ifeq ($(findstring i686,$(HOST)),i686) +-TARGET := $(subst i686,x86_64,$(HOST)) +-else +-TARGET := $(subst x86_64,i686,$(HOST)) +-endif ++TARGET := $(shell $(RUSTC) -vV | grep 'host:' | sed 's/host: //') + + all: + $(RUSTC) foo.rs -C extra-filename=-host +-- +2.18.0 + diff --git a/user/rust/0025-Ignore-broken-and-non-applicable-tests.patch b/user/rust/0025-Ignore-broken-and-non-applicable-tests.patch new file mode 100644 index 000000000..12c3e46dd --- /dev/null +++ b/user/rust/0025-Ignore-broken-and-non-applicable-tests.patch @@ -0,0 +1,48 @@ +From 72a9bf3841f3c07db121f6d41ccd448d73aa1c01 Mon Sep 17 00:00:00 2001 +From: Samuel Holland <samuel@sholland.org> +Date: Sun, 16 Sep 2018 16:38:48 +0000 +Subject: [PATCH 25/29] Ignore broken and non-applicable tests + +long-linker-command-lines: takes >10 minutes to run (but still passes) +sparc-struct-abi: no sparc target +sysroot-crates-are-unstable: can't run rustc without rpath +--- + src/test/codegen/sparc-struct-abi.rs | 1 + + src/test/run-make-fulldeps/long-linker-command-lines/Makefile | 1 - + src/test/run-make-fulldeps/sysroot-crates-are-unstable/Makefile | 2 +- + 3 files changed, 2 insertions(+), 2 deletions(-) + +diff --git a/src/test/codegen/sparc-struct-abi.rs b/src/test/codegen/sparc-struct-abi.rs +index d3b7a5cd59..5e0f94cdf9 100644 +--- a/src/test/codegen/sparc-struct-abi.rs ++++ b/src/test/codegen/sparc-struct-abi.rs +@@ -12,6 +12,7 @@ + // See issue #52638. + + // compile-flags: -O --target=sparc64-unknown-linux-gnu --crate-type=rlib ++// ignore-test + #![feature(no_core, lang_items)] + #![no_core] + +diff --git a/src/test/run-make-fulldeps/long-linker-command-lines/Makefile b/src/test/run-make-fulldeps/long-linker-command-lines/Makefile +index 5876fbc94b..e9f5c33b77 100644 +--- a/src/test/run-make-fulldeps/long-linker-command-lines/Makefile ++++ b/src/test/run-make-fulldeps/long-linker-command-lines/Makefile +@@ -2,4 +2,3 @@ + + all: + $(RUSTC) foo.rs -g -O +- RUSTC="$(RUSTC_ORIGINAL)" $(call RUN,foo) +diff --git a/src/test/run-make-fulldeps/sysroot-crates-are-unstable/Makefile b/src/test/run-make-fulldeps/sysroot-crates-are-unstable/Makefile +index 9e77070685..7784230b46 100644 +--- a/src/test/run-make-fulldeps/sysroot-crates-are-unstable/Makefile ++++ b/src/test/run-make-fulldeps/sysroot-crates-are-unstable/Makefile +@@ -1,4 +1,4 @@ + -include ../tools.mk + + all: +- env '$(HOST_RPATH_ENV)' python2.7 test.py ++ true +-- +2.18.0 + diff --git a/user/rust/0026-Link-stage-2-tools-dynamically-to-libstd.patch b/user/rust/0026-Link-stage-2-tools-dynamically-to-libstd.patch new file mode 100644 index 000000000..ffd3e8342 --- /dev/null +++ b/user/rust/0026-Link-stage-2-tools-dynamically-to-libstd.patch @@ -0,0 +1,27 @@ +From 29df88cb3f1bdaac8e6a0049f8f1c1e335954509 Mon Sep 17 00:00:00 2001 +From: Samuel Holland <samuel@sholland.org> +Date: Mon, 24 Sep 2018 23:42:23 +0000 +Subject: [PATCH 26/29] Link stage 2 tools dynamically to libstd + +--- + src/bootstrap/tool.rs | 4 +++- + 1 file changed, 3 insertions(+), 1 deletion(-) + +diff --git a/src/bootstrap/tool.rs b/src/bootstrap/tool.rs +index 5e68b797b3..6a4c53f9a1 100644 +--- a/src/bootstrap/tool.rs ++++ b/src/bootstrap/tool.rs +@@ -261,7 +261,9 @@ pub fn prepare_tool_cargo( + + // We don't want to build tools dynamically as they'll be running across + // stages and such and it's just easier if they're not dynamically linked. +- cargo.env("RUSTC_NO_PREFER_DYNAMIC", "1"); ++ if compiler.stage < 2 { ++ cargo.env("RUSTC_NO_PREFER_DYNAMIC", "1"); ++ } + + if source_type == SourceType::Submodule { + cargo.env("RUSTC_EXTERNAL_TOOL", "1"); +-- +2.18.0 + diff --git a/user/rust/0027-Move-debugger-scripts-to-usr-share-rust.patch b/user/rust/0027-Move-debugger-scripts-to-usr-share-rust.patch new file mode 100644 index 000000000..81c649eaf --- /dev/null +++ b/user/rust/0027-Move-debugger-scripts-to-usr-share-rust.patch @@ -0,0 +1,53 @@ +From d8c25e109fbf44a3dc18ae0ea8da50cc6ee6b312 Mon Sep 17 00:00:00 2001 +From: Samuel Holland <samuel@sholland.org> +Date: Mon, 17 Sep 2018 02:09:10 +0000 +Subject: [PATCH 27/29] Move debugger scripts to /usr/share/rust + +--- + src/bootstrap/dist.rs | 2 +- + src/etc/rust-gdb | 2 +- + src/etc/rust-lldb | 2 +- + 3 files changed, 3 insertions(+), 3 deletions(-) + +diff --git a/src/bootstrap/dist.rs b/src/bootstrap/dist.rs +index c6b39a52ae..ca21e87c9d 100644 +--- a/src/bootstrap/dist.rs ++++ b/src/bootstrap/dist.rs +@@ -575,7 +575,7 @@ impl Step for DebuggerScripts { + fn run(self, builder: &Builder) { + let host = self.host; + let sysroot = self.sysroot; +- let dst = sysroot.join("lib/rustlib/etc"); ++ let dst = sysroot.join("share/rust"); + t!(fs::create_dir_all(&dst)); + let cp_debugger_script = |file: &str| { + builder.install(&builder.src.join("src/etc/").join(file), &dst, 0o644); +diff --git a/src/etc/rust-gdb b/src/etc/rust-gdb +index 6835d6aa90..dbdee6af31 100755 +--- a/src/etc/rust-gdb ++++ b/src/etc/rust-gdb +@@ -14,7 +14,7 @@ set -e + + # Find out where the pretty printer Python module is + RUSTC_SYSROOT=`rustc --print=sysroot` +-GDB_PYTHON_MODULE_DIRECTORY="$RUSTC_SYSROOT/lib/rustlib/etc" ++GDB_PYTHON_MODULE_DIRECTORY="$RUSTC_SYSROOT/share/rust" + + # Run GDB with the additional arguments that load the pretty printers + # Set the environment variable `RUST_GDB` to overwrite the call to a +diff --git a/src/etc/rust-lldb b/src/etc/rust-lldb +index f70ab65bce..621546bd3f 100755 +--- a/src/etc/rust-lldb ++++ b/src/etc/rust-lldb +@@ -33,7 +33,7 @@ trap "rm -f $TMPFILE; exit" INT TERM EXIT + RUSTC_SYSROOT=`rustc --print sysroot` + + # Write the LLDB script to the tempfile +-echo "command script import \"$RUSTC_SYSROOT/lib/rustlib/etc/lldb_rust_formatters.py\"" >> $TMPFILE ++echo "command script import \"$RUSTC_SYSROOT/share/rust/lldb_rust_formatters.py\"" >> $TMPFILE + echo "type summary add --no-value --python-function lldb_rust_formatters.print_val -x \".*\" --category Rust" >> $TMPFILE + echo "type category enable Rust" >> $TMPFILE + +-- +2.18.0 + diff --git a/user/rust/0028-Add-foxkit-target-specs.patch b/user/rust/0028-Add-foxkit-target-specs.patch new file mode 100644 index 000000000..46a255a3c --- /dev/null +++ b/user/rust/0028-Add-foxkit-target-specs.patch @@ -0,0 +1,240 @@ +From a6da366371be1d8a1c55de52d9a53f93b9951cd0 Mon Sep 17 00:00:00 2001 +From: Samuel Holland <samuel@sholland.org> +Date: Mon, 17 Sep 2018 02:29:06 +0000 +Subject: [PATCH 28/29] Add foxkit target specs + +--- + src/bootstrap/native.rs | 10 +++++++-- + .../spec/aarch64_foxkit_linux_musl.rs | 21 +++++++++++++++++++ + .../spec/armv7_foxkit_linux_musleabihf.rs | 21 +++++++++++++++++++ + .../spec/i586_foxkit_linux_musl.rs | 21 +++++++++++++++++++ + src/librustc_target/spec/mod.rs | 7 +++++++ + .../spec/powerpc64_foxkit_linux_musl.rs | 21 +++++++++++++++++++ + .../spec/powerpc_foxkit_linux_musl.rs | 21 +++++++++++++++++++ + .../spec/x86_64_foxkit_linux_musl.rs | 21 +++++++++++++++++++ + 8 files changed, 141 insertions(+), 2 deletions(-) + create mode 100644 src/librustc_target/spec/aarch64_foxkit_linux_musl.rs + create mode 100644 src/librustc_target/spec/armv7_foxkit_linux_musleabihf.rs + create mode 100644 src/librustc_target/spec/i586_foxkit_linux_musl.rs + create mode 100644 src/librustc_target/spec/powerpc64_foxkit_linux_musl.rs + create mode 100644 src/librustc_target/spec/powerpc_foxkit_linux_musl.rs + create mode 100644 src/librustc_target/spec/x86_64_foxkit_linux_musl.rs + +diff --git a/src/bootstrap/native.rs b/src/bootstrap/native.rs +index 186ef75189..9122eeb785 100644 +--- a/src/bootstrap/native.rs ++++ b/src/bootstrap/native.rs +@@ -652,6 +652,12 @@ impl Step for Openssl { + "x86_64-unknown-linux-gnux32" => "linux-x32", + "x86_64-unknown-linux-musl" => "linux-x86_64", + "x86_64-unknown-netbsd" => "BSD-x86_64", ++ "aarch64-foxkit-linux-musl" => "linux-aarch64", ++ "armv7-foxkit-linux-musleabihf" => "linux-armv4", ++ "i586-foxkit-linux-musl" => "linux-elf", ++ "powerpc-foxkit-linux-musl" => "linux-ppc", ++ "powerpc64-foxkit-linux-musl" => "linux-ppc64", ++ "x86_64-foxkit-linux-musl" => "linux-x86_64", + _ => panic!("don't know how to configure OpenSSL for {}", target), + }; + configure.arg(os); +@@ -666,7 +672,7 @@ impl Step for Openssl { + configure.arg("-fomit-frame-pointer"); + } + // OpenSSL ships incompatible ELFv1 ABI assembly code +- if target == "powerpc64-unknown-linux-musl" { ++ if target == "powerpc64-unknown-linux-musl" || target == "powerpc64-foxkit-linux-musl" { + configure.arg("no-asm"); + } + if target == "sparc64-unknown-netbsd" { +@@ -681,7 +687,7 @@ impl Step for Openssl { + // Make PIE binaries + // Non-PIE linker support was removed in Lollipop + // https://source.android.com/security/enhancements/enhancements50 +- if target == "i686-linux-android" { ++ if target == "i686-linux-android" || target == "i586-foxkit-linux-musl" { + configure.arg("no-asm"); + } + configure.current_dir(&obj); +diff --git a/src/librustc_target/spec/aarch64_foxkit_linux_musl.rs b/src/librustc_target/spec/aarch64_foxkit_linux_musl.rs +new file mode 100644 +index 0000000000..18ad2c2f31 +--- /dev/null ++++ b/src/librustc_target/spec/aarch64_foxkit_linux_musl.rs +@@ -0,0 +1,21 @@ ++// Copyright 2018 The Rust Project Developers. See the COPYRIGHT ++// file at the top-level directory of this distribution and at ++// http://rust-lang.org/COPYRIGHT. ++// ++// Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or ++// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license ++// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your ++// option. This file may not be copied, modified, or distributed ++// except according to those terms. ++ ++use spec::TargetResult; ++ ++pub fn target() -> TargetResult { ++ let mut base = super::aarch64_unknown_linux_musl::target()?; ++ ++ base.llvm_target = "aarch64-foxkit-linux-musl".to_string(); ++ base.target_vendor = "foxkit".to_string(); ++ base.options.crt_static_default = false; ++ ++ Ok(base) ++} +diff --git a/src/librustc_target/spec/armv7_foxkit_linux_musleabihf.rs b/src/librustc_target/spec/armv7_foxkit_linux_musleabihf.rs +new file mode 100644 +index 0000000000..facfd5d363 +--- /dev/null ++++ b/src/librustc_target/spec/armv7_foxkit_linux_musleabihf.rs +@@ -0,0 +1,21 @@ ++// Copyright 2018 The Rust Project Developers. See the COPYRIGHT ++// file at the top-level directory of this distribution and at ++// http://rust-lang.org/COPYRIGHT. ++// ++// Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or ++// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license ++// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your ++// option. This file may not be copied, modified, or distributed ++// except according to those terms. ++ ++use spec::TargetResult; ++ ++pub fn target() -> TargetResult { ++ let mut base = super::armv7_unknown_linux_musleabihf::target()?; ++ ++ base.llvm_target = "armv7-foxkit-linux-musleabihf".to_string(); ++ base.target_vendor = "foxkit".to_string(); ++ base.options.crt_static_default = false; ++ ++ Ok(base) ++} +diff --git a/src/librustc_target/spec/i586_foxkit_linux_musl.rs b/src/librustc_target/spec/i586_foxkit_linux_musl.rs +new file mode 100644 +index 0000000000..cd6280e586 +--- /dev/null ++++ b/src/librustc_target/spec/i586_foxkit_linux_musl.rs +@@ -0,0 +1,21 @@ ++// Copyright 2018 The Rust Project Developers. See the COPYRIGHT ++// file at the top-level directory of this distribution and at ++// http://rust-lang.org/COPYRIGHT. ++// ++// Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or ++// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license ++// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your ++// option. This file may not be copied, modified, or distributed ++// except according to those terms. ++ ++use spec::TargetResult; ++ ++pub fn target() -> TargetResult { ++ let mut base = super::i586_unknown_linux_musl::target()?; ++ ++ base.llvm_target = "i586-foxkit-linux-musl".to_string(); ++ base.target_vendor = "foxkit".to_string(); ++ base.options.crt_static_default = false; ++ ++ Ok(base) ++} +diff --git a/src/librustc_target/spec/mod.rs b/src/librustc_target/spec/mod.rs +index 94aa07abb6..1187afbb60 100644 +--- a/src/librustc_target/spec/mod.rs ++++ b/src/librustc_target/spec/mod.rs +@@ -375,6 +375,13 @@ supported_targets! { + ("armv7-unknown-cloudabi-eabihf", armv7_unknown_cloudabi_eabihf), + ("i686-unknown-cloudabi", i686_unknown_cloudabi), + ("x86_64-unknown-cloudabi", x86_64_unknown_cloudabi), ++ ++ ("aarch64-foxkit-linux-musl", aarch64_foxkit_linux_musl), ++ ("armv7-foxkit-linux-musleabihf", armv7_foxkit_linux_musleabihf), ++ ("i586-foxkit-linux-musl", i586_foxkit_linux_musl), ++ ("powerpc-foxkit-linux-musl", powerpc_foxkit_linux_musl), ++ ("powerpc64-foxkit-linux-musl", powerpc64_foxkit_linux_musl), ++ ("x86_64-foxkit-linux-musl", x86_64_foxkit_linux_musl), + } + + /// Everything `rustc` knows about how to compile for a specific target. +diff --git a/src/librustc_target/spec/powerpc64_foxkit_linux_musl.rs b/src/librustc_target/spec/powerpc64_foxkit_linux_musl.rs +new file mode 100644 +index 0000000000..b7202ee0fc +--- /dev/null ++++ b/src/librustc_target/spec/powerpc64_foxkit_linux_musl.rs +@@ -0,0 +1,21 @@ ++// Copyright 2018 The Rust Project Developers. See the COPYRIGHT ++// file at the top-level directory of this distribution and at ++// http://rust-lang.org/COPYRIGHT. ++// ++// Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or ++// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license ++// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your ++// option. This file may not be copied, modified, or distributed ++// except according to those terms. ++ ++use spec::TargetResult; ++ ++pub fn target() -> TargetResult { ++ let mut base = super::powerpc64_unknown_linux_musl::target()?; ++ ++ base.llvm_target = "powerpc64-foxkit-linux-musl".to_string(); ++ base.target_vendor = "foxkit".to_string(); ++ base.options.crt_static_default = false; ++ ++ Ok(base) ++} +diff --git a/src/librustc_target/spec/powerpc_foxkit_linux_musl.rs b/src/librustc_target/spec/powerpc_foxkit_linux_musl.rs +new file mode 100644 +index 0000000000..4daa96d3ce +--- /dev/null ++++ b/src/librustc_target/spec/powerpc_foxkit_linux_musl.rs +@@ -0,0 +1,21 @@ ++// Copyright 2018 The Rust Project Developers. See the COPYRIGHT ++// file at the top-level directory of this distribution and at ++// http://rust-lang.org/COPYRIGHT. ++// ++// Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or ++// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license ++// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your ++// option. This file may not be copied, modified, or distributed ++// except according to those terms. ++ ++use spec::TargetResult; ++ ++pub fn target() -> TargetResult { ++ let mut base = super::powerpc_unknown_linux_musl::target()?; ++ ++ base.llvm_target = "powerpc-foxkit-linux-musl".to_string(); ++ base.target_vendor = "foxkit".to_string(); ++ base.options.crt_static_default = false; ++ ++ Ok(base) ++} +diff --git a/src/librustc_target/spec/x86_64_foxkit_linux_musl.rs b/src/librustc_target/spec/x86_64_foxkit_linux_musl.rs +new file mode 100644 +index 0000000000..801dd8d6f4 +--- /dev/null ++++ b/src/librustc_target/spec/x86_64_foxkit_linux_musl.rs +@@ -0,0 +1,21 @@ ++// Copyright 2018 The Rust Project Developers. See the COPYRIGHT ++// file at the top-level directory of this distribution and at ++// http://rust-lang.org/COPYRIGHT. ++// ++// Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or ++// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license ++// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your ++// option. This file may not be copied, modified, or distributed ++// except according to those terms. ++ ++use spec::TargetResult; ++ ++pub fn target() -> TargetResult { ++ let mut base = super::x86_64_unknown_linux_musl::target()?; ++ ++ base.llvm_target = "x86_64-foxkit-linux-musl".to_string(); ++ base.target_vendor = "foxkit".to_string(); ++ base.options.crt_static_default = false; ++ ++ Ok(base) ++} +-- +2.18.0 + diff --git a/user/rust/0029-Work-around-libbacktrace-built-with-fstack-protector.patch b/user/rust/0029-Work-around-libbacktrace-built-with-fstack-protector.patch new file mode 100644 index 000000000..29a31508d --- /dev/null +++ b/user/rust/0029-Work-around-libbacktrace-built-with-fstack-protector.patch @@ -0,0 +1,47 @@ +From 22bb29c2b807180ed0522d9c930e14c327582571 Mon Sep 17 00:00:00 2001 +From: Samuel Holland <samuel@sholland.org> +Date: Sat, 6 Oct 2018 04:17:14 +0000 +Subject: [PATCH 29/29] Work around libbacktrace built with -fstack-protector + +On 32-bit x86 and ppc, gcc generates calls to __stack_chk_fail_local, +which must be a hidden function in every DSO. gcc provides the +implementation in libssp_nonshared. libbacktrace is built in hosted +mode, where Adelie's compiler enables -fstack-protector by default. +However, rustc passes -nodefaultlibs, inhibiting gcc from linking +libssp_nonshared. +--- + src/libpanic_unwind/Cargo.toml | 1 + + src/libpanic_unwind/build.rs | 10 ++++++++++ + 2 files changed, 11 insertions(+) + create mode 100644 src/libpanic_unwind/build.rs + +diff --git a/src/libpanic_unwind/Cargo.toml b/src/libpanic_unwind/Cargo.toml +index 74aaa4d5ae..c1b66aeefe 100644 +--- a/src/libpanic_unwind/Cargo.toml ++++ b/src/libpanic_unwind/Cargo.toml +@@ -1,5 +1,6 @@ + [package] + authors = ["The Rust Project Developers"] ++build = "build.rs" + name = "panic_unwind" + version = "0.0.0" + +diff --git a/src/libpanic_unwind/build.rs b/src/libpanic_unwind/build.rs +new file mode 100644 +index 0000000000..0d9a14b64c +--- /dev/null ++++ b/src/libpanic_unwind/build.rs +@@ -0,0 +1,10 @@ ++use std::env; ++ ++fn main() { ++ let target = env::var("TARGET").unwrap(); ++ match target.as_ref() { ++ "i586-foxkit-linux-musl" => println!("cargo:rustc-link-lib=ssp_nonshared"), ++ "powerpc-foxkit-linux-musl" => println!("cargo:rustc-link-lib=ssp_nonshared"), ++ _ => {}, ++ }; ++} +-- +2.18.0 + diff --git a/user/rust/0030-liblibc-linkage.patch b/user/rust/0030-liblibc-linkage.patch new file mode 100644 index 000000000..4daa0e48f --- /dev/null +++ b/user/rust/0030-liblibc-linkage.patch @@ -0,0 +1,17 @@ +diff --git a/src/liblibc/src/unix/mod.rs b/src/liblibc/src/unix/mod.rs +index 9c68178a..1ae270e9 100644 +--- a/src/liblibc/src/unix/mod.rs ++++ b/src/liblibc/src/unix/mod.rs +@@ -287,11 +287,7 @@ cfg_if! { + // cargo build, don't pull in anything extra as the libstd dep + // already pulls in all libs. + } else if #[cfg(target_env = "musl")] { +- #[cfg_attr(feature = "stdbuild", +- link(name = "c", kind = "static", +- cfg(target_feature = "crt-static")))] +- #[cfg_attr(feature = "stdbuild", +- link(name = "c", cfg(not(target_feature = "crt-static"))))] ++ #[link(name = "c")] + extern {} + } else if #[cfg(target_os = "emscripten")] { + #[link(name = "c")] diff --git a/user/rust/0031-liblibc-0163a7ce20b5.patch b/user/rust/0031-liblibc-0163a7ce20b5.patch new file mode 100644 index 000000000..6c2268a53 --- /dev/null +++ b/user/rust/0031-liblibc-0163a7ce20b5.patch @@ -0,0 +1,1343 @@ +From 0163a7ce20b5f4c8d8f725811e48e1f268b0253e Mon Sep 17 00:00:00 2001 +From: Marek Benc <dusxmt@gmx.com> +Date: Thu, 5 Jul 2018 15:51:38 +0200 +Subject: [PATCH] Add linux musl powerpc (32-bit) support + +--- + src/unix/notbsd/linux/musl/b32/arm.rs | 85 +++ + src/unix/notbsd/linux/musl/b32/mips.rs | 85 +++ + src/unix/notbsd/linux/musl/b32/mod.rs | 88 +-- + src/unix/notbsd/linux/musl/b32/powerpc.rs | 866 ++++++++++++++++++++++ + src/unix/notbsd/linux/musl/b32/x86.rs | 85 +++ + src/unix/notbsd/linux/musl/mod.rs | 3 +- + 6 files changed, 1127 insertions(+), 85 deletions(-) + create mode 100644 src/unix/notbsd/linux/musl/b32/powerpc.rs + +diff --git a/src/liblibc/src/unix/notbsd/linux/musl/b32/arm.rs b/src/liblibc/src/unix/notbsd/linux/musl/b32/arm.rs +index 22bf16c1fda..20fa33a3f77 100644 +--- a/src/liblibc/src/unix/notbsd/linux/musl/b32/arm.rs ++++ b/src/liblibc/src/unix/notbsd/linux/musl/b32/arm.rs +@@ -52,6 +52,18 @@ s! { + pub ss_size: ::size_t + } + ++ pub struct ipc_perm { ++ pub __ipc_perm_key: ::key_t, ++ pub uid: ::uid_t, ++ pub gid: ::gid_t, ++ pub cuid: ::uid_t, ++ pub cgid: ::gid_t, ++ pub mode: ::mode_t, ++ pub __seq: ::c_int, ++ __unused1: ::c_long, ++ __unused2: ::c_long ++ } ++ + pub struct shmid_ds { + pub shm_perm: ::ipc_perm, + pub shm_segsz: ::size_t, +@@ -151,6 +163,9 @@ s! { + } + } + ++pub const SIGSTKSZ: ::size_t = 8192; ++pub const MINSIGSTKSZ: ::size_t = 2048; ++ + pub const O_DIRECT: ::c_int = 0x10000; + pub const O_DIRECTORY: ::c_int = 0x4000; + pub const O_NOFOLLOW: ::c_int = 0x8000; +@@ -165,6 +180,76 @@ pub const RLIMIT_NOFILE: ::c_int = 7; + pub const RLIMIT_AS: ::c_int = 9; + pub const RLIMIT_NPROC: ::c_int = 6; + pub const RLIMIT_MEMLOCK: ::c_int = 8; ++pub const RLIMIT_NLIMITS: ::c_int = 16; ++ ++pub const MCL_CURRENT: ::c_int = 0x0001; ++pub const MCL_FUTURE: ::c_int = 0x0002; ++pub const CBAUD: ::tcflag_t = 0o0010017; ++pub const TAB1: ::c_int = 0x00000800; ++pub const TAB2: ::c_int = 0x00001000; ++pub const TAB3: ::c_int = 0x00001800; ++pub const CR1: ::c_int = 0x00000200; ++pub const CR2: ::c_int = 0x00000400; ++pub const CR3: ::c_int = 0x00000600; ++pub const FF1: ::c_int = 0x00008000; ++pub const BS1: ::c_int = 0x00002000; ++pub const VT1: ::c_int = 0x00004000; ++pub const VWERASE: usize = 14; ++pub const VREPRINT: usize = 12; ++pub const VSUSP: usize = 10; ++pub const VSTART: usize = 8; ++pub const VSTOP: usize = 9; ++pub const VDISCARD: usize = 13; ++pub const VTIME: usize = 5; ++pub const IXON: ::tcflag_t = 0x00000400; ++pub const IXOFF: ::tcflag_t = 0x00001000; ++pub const ONLCR: ::tcflag_t = 0x4; ++pub const CSIZE: ::tcflag_t = 0x00000030; ++pub const CS6: ::tcflag_t = 0x00000010; ++pub const CS7: ::tcflag_t = 0x00000020; ++pub const CS8: ::tcflag_t = 0x00000030; ++pub const CSTOPB: ::tcflag_t = 0x00000040; ++pub const CREAD: ::tcflag_t = 0x00000080; ++pub const PARENB: ::tcflag_t = 0x00000100; ++pub const PARODD: ::tcflag_t = 0x00000200; ++pub const HUPCL: ::tcflag_t = 0x00000400; ++pub const CLOCAL: ::tcflag_t = 0x00000800; ++pub const ECHOKE: ::tcflag_t = 0x00000800; ++pub const ECHOE: ::tcflag_t = 0x00000010; ++pub const ECHOK: ::tcflag_t = 0x00000020; ++pub const ECHONL: ::tcflag_t = 0x00000040; ++pub const ECHOPRT: ::tcflag_t = 0x00000400; ++pub const ECHOCTL: ::tcflag_t = 0x00000200; ++pub const ISIG: ::tcflag_t = 0x00000001; ++pub const ICANON: ::tcflag_t = 0x00000002; ++pub const PENDIN: ::tcflag_t = 0x00004000; ++pub const NOFLSH: ::tcflag_t = 0x00000080; ++pub const CIBAUD: ::tcflag_t = 0o02003600000; ++pub const CBAUDEX: ::tcflag_t = 0o010000; ++pub const VSWTC: usize = 7; ++pub const OLCUC: ::tcflag_t = 0o000002; ++pub const NLDLY: ::tcflag_t = 0o000400; ++pub const CRDLY: ::tcflag_t = 0o003000; ++pub const TABDLY: ::tcflag_t = 0o014000; ++pub const BSDLY: ::tcflag_t = 0o020000; ++pub const FFDLY: ::tcflag_t = 0o100000; ++pub const VTDLY: ::tcflag_t = 0o040000; ++pub const XTABS: ::tcflag_t = 0o014000; ++pub const B57600: ::speed_t = 0o010001; ++pub const B115200: ::speed_t = 0o010002; ++pub const B230400: ::speed_t = 0o010003; ++pub const B460800: ::speed_t = 0o010004; ++pub const B500000: ::speed_t = 0o010005; ++pub const B576000: ::speed_t = 0o010006; ++pub const B921600: ::speed_t = 0o010007; ++pub const B1000000: ::speed_t = 0o010010; ++pub const B1152000: ::speed_t = 0o010011; ++pub const B1500000: ::speed_t = 0o010012; ++pub const B2000000: ::speed_t = 0o010013; ++pub const B2500000: ::speed_t = 0o010014; ++pub const B3000000: ::speed_t = 0o010015; ++pub const B3500000: ::speed_t = 0o010016; ++pub const B4000000: ::speed_t = 0o010017; + + pub const O_APPEND: ::c_int = 1024; + pub const O_CREAT: ::c_int = 64; +diff --git a/src/liblibc/src/unix/notbsd/linux/musl/b32/mips.rs b/src/liblibc/src/unix/notbsd/linux/musl/b32/mips.rs +index 89231a0c751..bfde73c563d 100644 +--- a/src/liblibc/src/unix/notbsd/linux/musl/b32/mips.rs ++++ b/src/liblibc/src/unix/notbsd/linux/musl/b32/mips.rs +@@ -54,6 +54,18 @@ s! { + pub ss_flags: ::c_int, + } + ++ pub struct ipc_perm { ++ pub __ipc_perm_key: ::key_t, ++ pub uid: ::uid_t, ++ pub gid: ::gid_t, ++ pub cuid: ::uid_t, ++ pub cgid: ::gid_t, ++ pub mode: ::mode_t, ++ pub __seq: ::c_int, ++ __unused1: ::c_long, ++ __unused2: ::c_long ++ } ++ + pub struct shmid_ds { + pub shm_perm: ::ipc_perm, + pub shm_segsz: ::size_t, +@@ -162,6 +174,9 @@ s! { + } + } + ++pub const SIGSTKSZ: ::size_t = 8192; ++pub const MINSIGSTKSZ: ::size_t = 2048; ++ + pub const O_DIRECT: ::c_int = 0o100000; + pub const O_DIRECTORY: ::c_int = 0o200000; + pub const O_NOFOLLOW: ::c_int = 0o400000; +@@ -176,6 +191,76 @@ pub const RLIMIT_NOFILE: ::c_int = 5; + pub const RLIMIT_AS: ::c_int = 6; + pub const RLIMIT_NPROC: ::c_int = 8; + pub const RLIMIT_MEMLOCK: ::c_int = 9; ++pub const RLIMIT_NLIMITS: ::c_int = 16; ++ ++pub const MCL_CURRENT: ::c_int = 0x0001; ++pub const MCL_FUTURE: ::c_int = 0x0002; ++pub const CBAUD: ::tcflag_t = 0o0010017; ++pub const TAB1: ::c_int = 0x00000800; ++pub const TAB2: ::c_int = 0x00001000; ++pub const TAB3: ::c_int = 0x00001800; ++pub const CR1: ::c_int = 0x00000200; ++pub const CR2: ::c_int = 0x00000400; ++pub const CR3: ::c_int = 0x00000600; ++pub const FF1: ::c_int = 0x00008000; ++pub const BS1: ::c_int = 0x00002000; ++pub const VT1: ::c_int = 0x00004000; ++pub const VWERASE: usize = 14; ++pub const VREPRINT: usize = 12; ++pub const VSUSP: usize = 10; ++pub const VSTART: usize = 8; ++pub const VSTOP: usize = 9; ++pub const VDISCARD: usize = 13; ++pub const VTIME: usize = 5; ++pub const IXON: ::tcflag_t = 0x00000400; ++pub const IXOFF: ::tcflag_t = 0x00001000; ++pub const ONLCR: ::tcflag_t = 0x4; ++pub const CSIZE: ::tcflag_t = 0x00000030; ++pub const CS6: ::tcflag_t = 0x00000010; ++pub const CS7: ::tcflag_t = 0x00000020; ++pub const CS8: ::tcflag_t = 0x00000030; ++pub const CSTOPB: ::tcflag_t = 0x00000040; ++pub const CREAD: ::tcflag_t = 0x00000080; ++pub const PARENB: ::tcflag_t = 0x00000100; ++pub const PARODD: ::tcflag_t = 0x00000200; ++pub const HUPCL: ::tcflag_t = 0x00000400; ++pub const CLOCAL: ::tcflag_t = 0x00000800; ++pub const ECHOKE: ::tcflag_t = 0x00000800; ++pub const ECHOE: ::tcflag_t = 0x00000010; ++pub const ECHOK: ::tcflag_t = 0x00000020; ++pub const ECHONL: ::tcflag_t = 0x00000040; ++pub const ECHOPRT: ::tcflag_t = 0x00000400; ++pub const ECHOCTL: ::tcflag_t = 0x00000200; ++pub const ISIG: ::tcflag_t = 0x00000001; ++pub const ICANON: ::tcflag_t = 0x00000002; ++pub const PENDIN: ::tcflag_t = 0x00004000; ++pub const NOFLSH: ::tcflag_t = 0x00000080; ++pub const CIBAUD: ::tcflag_t = 0o02003600000; ++pub const CBAUDEX: ::tcflag_t = 0o010000; ++pub const VSWTC: usize = 7; ++pub const OLCUC: ::tcflag_t = 0o000002; ++pub const NLDLY: ::tcflag_t = 0o000400; ++pub const CRDLY: ::tcflag_t = 0o003000; ++pub const TABDLY: ::tcflag_t = 0o014000; ++pub const BSDLY: ::tcflag_t = 0o020000; ++pub const FFDLY: ::tcflag_t = 0o100000; ++pub const VTDLY: ::tcflag_t = 0o040000; ++pub const XTABS: ::tcflag_t = 0o014000; ++pub const B57600: ::speed_t = 0o010001; ++pub const B115200: ::speed_t = 0o010002; ++pub const B230400: ::speed_t = 0o010003; ++pub const B460800: ::speed_t = 0o010004; ++pub const B500000: ::speed_t = 0o010005; ++pub const B576000: ::speed_t = 0o010006; ++pub const B921600: ::speed_t = 0o010007; ++pub const B1000000: ::speed_t = 0o010010; ++pub const B1152000: ::speed_t = 0o010011; ++pub const B1500000: ::speed_t = 0o010012; ++pub const B2000000: ::speed_t = 0o010013; ++pub const B2500000: ::speed_t = 0o010014; ++pub const B3000000: ::speed_t = 0o010015; ++pub const B3500000: ::speed_t = 0o010016; ++pub const B4000000: ::speed_t = 0o010017; + + pub const O_APPEND: ::c_int = 0o010; + pub const O_CREAT: ::c_int = 0o400; +diff --git a/src/liblibc/src/unix/notbsd/linux/musl/b32/mod.rs b/src/liblibc/src/unix/notbsd/linux/musl/b32/mod.rs +index b4a0f761636..4128a8e4da6 100644 +--- a/src/liblibc/src/unix/notbsd/linux/musl/b32/mod.rs ++++ b/src/liblibc/src/unix/notbsd/linux/musl/b32/mod.rs +@@ -32,96 +32,13 @@ s! { + pub struct sem_t { + __val: [::c_int; 4], + } +- +- pub struct ipc_perm { +- pub __ipc_perm_key: ::key_t, +- pub uid: ::uid_t, +- pub gid: ::gid_t, +- pub cuid: ::uid_t, +- pub cgid: ::gid_t, +- pub mode: ::mode_t, +- pub __seq: ::c_int, +- __unused1: ::c_long, +- __unused2: ::c_long +- } + } + +-pub const SIGSTKSZ: ::size_t = 8192; +-pub const MINSIGSTKSZ: ::size_t = 2048; +- + pub const __SIZEOF_PTHREAD_RWLOCK_T: usize = 32; + pub const __SIZEOF_PTHREAD_MUTEX_T: usize = 24; + +-pub const RLIMIT_NLIMITS: ::c_int = 16; + pub const TIOCINQ: ::c_int = ::FIONREAD; +-pub const MCL_CURRENT: ::c_int = 0x0001; +-pub const MCL_FUTURE: ::c_int = 0x0002; +-pub const CBAUD: ::tcflag_t = 0o0010017; +-pub const TAB1: ::c_int = 0x00000800; +-pub const TAB2: ::c_int = 0x00001000; +-pub const TAB3: ::c_int = 0x00001800; +-pub const CR1: ::c_int = 0x00000200; +-pub const CR2: ::c_int = 0x00000400; +-pub const CR3: ::c_int = 0x00000600; +-pub const FF1: ::c_int = 0x00008000; +-pub const BS1: ::c_int = 0x00002000; +-pub const VT1: ::c_int = 0x00004000; +-pub const VWERASE: usize = 14; +-pub const VREPRINT: usize = 12; +-pub const VSUSP: usize = 10; +-pub const VSTART: usize = 8; +-pub const VSTOP: usize = 9; +-pub const VDISCARD: usize = 13; +-pub const VTIME: usize = 5; +-pub const IXON: ::tcflag_t = 0x00000400; +-pub const IXOFF: ::tcflag_t = 0x00001000; +-pub const ONLCR: ::tcflag_t = 0x4; +-pub const CSIZE: ::tcflag_t = 0x00000030; +-pub const CS6: ::tcflag_t = 0x00000010; +-pub const CS7: ::tcflag_t = 0x00000020; +-pub const CS8: ::tcflag_t = 0x00000030; +-pub const CSTOPB: ::tcflag_t = 0x00000040; +-pub const CREAD: ::tcflag_t = 0x00000080; +-pub const PARENB: ::tcflag_t = 0x00000100; +-pub const PARODD: ::tcflag_t = 0x00000200; +-pub const HUPCL: ::tcflag_t = 0x00000400; +-pub const CLOCAL: ::tcflag_t = 0x00000800; +-pub const ECHOKE: ::tcflag_t = 0x00000800; +-pub const ECHOE: ::tcflag_t = 0x00000010; +-pub const ECHOK: ::tcflag_t = 0x00000020; +-pub const ECHONL: ::tcflag_t = 0x00000040; +-pub const ECHOPRT: ::tcflag_t = 0x00000400; +-pub const ECHOCTL: ::tcflag_t = 0x00000200; +-pub const ISIG: ::tcflag_t = 0x00000001; +-pub const ICANON: ::tcflag_t = 0x00000002; +-pub const PENDIN: ::tcflag_t = 0x00004000; +-pub const NOFLSH: ::tcflag_t = 0x00000080; +-pub const CIBAUD: ::tcflag_t = 0o02003600000; +-pub const CBAUDEX: ::tcflag_t = 0o010000; +-pub const VSWTC: usize = 7; +-pub const OLCUC: ::tcflag_t = 0o000002; +-pub const NLDLY: ::tcflag_t = 0o000400; +-pub const CRDLY: ::tcflag_t = 0o003000; +-pub const TABDLY: ::tcflag_t = 0o014000; +-pub const BSDLY: ::tcflag_t = 0o020000; +-pub const FFDLY: ::tcflag_t = 0o100000; +-pub const VTDLY: ::tcflag_t = 0o040000; +-pub const XTABS: ::tcflag_t = 0o014000; +-pub const B57600: ::speed_t = 0o010001; +-pub const B115200: ::speed_t = 0o010002; +-pub const B230400: ::speed_t = 0o010003; +-pub const B460800: ::speed_t = 0o010004; +-pub const B500000: ::speed_t = 0o010005; +-pub const B576000: ::speed_t = 0o010006; +-pub const B921600: ::speed_t = 0o010007; +-pub const B1000000: ::speed_t = 0o010010; +-pub const B1152000: ::speed_t = 0o010011; +-pub const B1500000: ::speed_t = 0o010012; +-pub const B2000000: ::speed_t = 0o010013; +-pub const B2500000: ::speed_t = 0o010014; +-pub const B3000000: ::speed_t = 0o010015; +-pub const B3500000: ::speed_t = 0o010016; +-pub const B4000000: ::speed_t = 0o010017; ++ + extern { + pub fn ioctl(fd: ::c_int, request: ::c_int, ...) -> ::c_int; + } +@@ -136,6 +53,9 @@ cfg_if! { + } else if #[cfg(any(target_arch = "arm"))] { + mod arm; + pub use self::arm::*; ++ } else if #[cfg(any(target_arch = "powerpc"))] { ++ mod powerpc; ++ pub use self::powerpc::*; + } else { + // Unknown target_arch + } +diff --git a/src/liblibc/src/unix/notbsd/linux/musl/b32/powerpc.rs b/src/liblibc/src/unix/notbsd/linux/musl/b32/powerpc.rs +new file mode 100644 +index 00000000000..50b6b57ef11 +--- /dev/null ++++ b/src/liblibc/src/unix/notbsd/linux/musl/b32/powerpc.rs +@@ -0,0 +1,866 @@ ++pub type c_char = u8; ++pub type wchar_t = i32; ++ ++s! { ++ pub struct stat { ++ pub st_dev: ::dev_t, ++ pub st_ino: ::ino_t, ++ pub st_mode: ::mode_t, ++ pub st_nlink: ::nlink_t, ++ pub st_uid: ::uid_t, ++ pub st_gid: ::gid_t, ++ pub st_rdev: ::dev_t, ++ __st_rdev_padding: ::c_short, ++ pub st_size: ::off_t, ++ pub st_blksize: ::blksize_t, ++ pub st_blocks: ::blkcnt_t, ++ pub st_atime: ::time_t, ++ pub st_atime_nsec: ::c_long, ++ pub st_mtime: ::time_t, ++ pub st_mtime_nsec: ::c_long, ++ pub st_ctime: ::time_t, ++ pub st_ctime_nsec: ::c_long, ++ __unused: [::c_long; 2], ++ } ++ ++ pub struct stat64 { ++ pub st_dev: ::dev_t, ++ pub st_ino: ::ino_t, ++ pub st_mode: ::mode_t, ++ pub st_nlink: ::nlink_t, ++ pub st_uid: ::uid_t, ++ pub st_gid: ::gid_t, ++ pub st_rdev: ::dev_t, ++ __st_rdev_padding: ::c_short, ++ pub st_size: ::off_t, ++ pub st_blksize: ::blksize_t, ++ pub st_blocks: ::blkcnt_t, ++ pub st_atime: ::time_t, ++ pub st_atime_nsec: ::c_long, ++ pub st_mtime: ::time_t, ++ pub st_mtime_nsec: ::c_long, ++ pub st_ctime: ::time_t, ++ pub st_ctime_nsec: ::c_long, ++ __unused: [::c_long; 2], ++ } ++ ++ pub struct stack_t { ++ pub ss_sp: *mut ::c_void, ++ pub ss_flags: ::c_int, ++ pub ss_size: ::size_t ++ } ++ ++ pub struct ipc_perm { ++ pub __ipc_perm_key: ::key_t, ++ pub uid: ::uid_t, ++ pub gid: ::gid_t, ++ pub cuid: ::uid_t, ++ pub cgid: ::gid_t, ++ pub mode: ::mode_t, ++ pub __seq: ::c_int, ++ __pad1: ::c_int, ++ __pad2: ::c_longlong, ++ __pad3: ::c_longlong ++ } ++ ++ pub struct shmid_ds { ++ pub shm_perm: ::ipc_perm, ++ __unused1: ::c_int, ++ pub shm_atime: ::time_t, ++ __unused2: ::c_int, ++ pub shm_dtime: ::time_t, ++ __unused3: ::c_int, ++ pub shm_ctime: ::time_t, ++ __unused4: ::c_int, ++ pub shm_segsz: ::size_t, ++ pub shm_cpid: ::pid_t, ++ pub shm_lpid: ::pid_t, ++ pub shm_nattch: ::c_ulong, ++ __pad1: ::c_ulong, ++ __pad2: ::c_ulong, ++ } ++ ++ pub struct msqid_ds { ++ pub msg_perm: ::ipc_perm, ++ __unused1: ::c_int, ++ pub msg_stime: ::time_t, ++ __unused2: ::c_int, ++ pub msg_rtime: ::time_t, ++ __unused3: ::c_int, ++ pub msg_ctime: ::time_t, ++ __msg_cbytes: ::c_ulong, ++ pub msg_qnum: ::msgqnum_t, ++ pub msg_qbytes: ::msglen_t, ++ pub msg_lspid: ::pid_t, ++ pub msg_lrpid: ::pid_t, ++ __pad1: ::c_ulong, ++ __pad2: ::c_ulong, ++ } ++ ++ pub struct statfs { ++ pub f_type: ::c_ulong, ++ pub f_bsize: ::c_ulong, ++ pub f_blocks: ::fsblkcnt_t, ++ pub f_bfree: ::fsblkcnt_t, ++ pub f_bavail: ::fsblkcnt_t, ++ pub f_files: ::fsfilcnt_t, ++ pub f_ffree: ::fsfilcnt_t, ++ pub f_fsid: ::fsid_t, ++ pub f_namelen: ::c_ulong, ++ pub f_frsize: ::c_ulong, ++ pub f_flags: ::c_ulong, ++ pub f_spare: [::c_ulong; 4], ++ } ++ ++ pub struct siginfo_t { ++ pub si_signo: ::c_int, ++ pub si_errno: ::c_int, ++ pub si_code: ::c_int, ++ pub _pad: [::c_int; 29], ++ _align: [usize; 0], ++ } ++ ++ pub struct statfs64 { ++ pub f_type: ::c_ulong, ++ pub f_bsize: ::c_ulong, ++ pub f_blocks: ::fsblkcnt_t, ++ pub f_bfree: ::fsblkcnt_t, ++ pub f_bavail: ::fsblkcnt_t, ++ pub f_files: ::fsfilcnt_t, ++ pub f_ffree: ::fsfilcnt_t, ++ pub f_fsid: ::fsid_t, ++ pub f_namelen: ::c_ulong, ++ pub f_frsize: ::c_ulong, ++ pub f_flags: ::c_ulong, ++ pub f_spare: [::c_ulong; 4], ++ } ++ ++ pub struct statvfs64 { ++ pub f_bsize: ::c_ulong, ++ pub f_frsize: ::c_ulong, ++ pub f_blocks: u64, ++ pub f_bfree: u64, ++ pub f_bavail: u64, ++ pub f_files: u64, ++ pub f_ffree: u64, ++ pub f_favail: u64, ++ #[cfg(target_endian = "little")] ++ pub f_fsid: ::c_ulong, ++ __f_unused: ::c_int, ++ #[cfg(target_endian = "big")] ++ pub f_fsid: ::c_ulong, ++ pub f_flag: ::c_ulong, ++ pub f_namemax: ::c_ulong, ++ __f_spare: [::c_int; 6], ++ } ++ ++ pub struct termios2 { ++ pub c_iflag: ::tcflag_t, ++ pub c_oflag: ::tcflag_t, ++ pub c_cflag: ::tcflag_t, ++ pub c_lflag: ::tcflag_t, ++ pub c_cc: [::cc_t; 19], ++ pub c_line: ::cc_t, ++ pub c_ispeed: ::speed_t, ++ pub c_ospeed: ::speed_t, ++ } ++} ++ ++pub const SIGSTKSZ: ::size_t = 10240; ++pub const MINSIGSTKSZ: ::size_t = 4096; ++ ++pub const O_DIRECT: ::c_int = 0x20000; ++pub const O_DIRECTORY: ::c_int = 0x4000; ++pub const O_NOFOLLOW: ::c_int = 0x8000; ++pub const O_ASYNC: ::c_int = 0x2000; ++pub const O_LARGEFILE: ::c_int = 0x10000; ++ ++pub const FIOCLEX: ::c_int = 0x20006601; ++pub const FIONBIO: ::c_int = 0x8004667E; ++ ++pub const RLIMIT_RSS: ::c_int = 5; ++pub const RLIMIT_NOFILE: ::c_int = 7; ++pub const RLIMIT_AS: ::c_int = 9; ++pub const RLIMIT_NPROC: ::c_int = 6; ++pub const RLIMIT_MEMLOCK: ::c_int = 8; ++pub const RLIMIT_NLIMITS: ::c_int = 15; ++ ++pub const MCL_CURRENT: ::c_int = 0x2000; ++pub const MCL_FUTURE: ::c_int = 0x4000; ++pub const CBAUD: ::tcflag_t = 0o0000377; ++pub const TAB1: ::c_int = 0x00000400; ++pub const TAB2: ::c_int = 0x00000800; ++pub const TAB3: ::c_int = 0x00000C00; ++pub const CR1: ::c_int = 0x00001000; ++pub const CR2: ::c_int = 0x00002000; ++pub const CR3: ::c_int = 0x00003000; ++pub const FF1: ::c_int = 0x00004000; ++pub const BS1: ::c_int = 0x00008000; ++pub const VT1: ::c_int = 0x00010000; ++pub const VWERASE: usize = 10; ++pub const VREPRINT: usize = 11; ++pub const VSUSP: usize = 12; ++pub const VSTART: usize = 13; ++pub const VSTOP: usize = 14; ++pub const VDISCARD: usize = 16; ++pub const VTIME: usize = 7; ++pub const IXON: ::tcflag_t = 0x00000200; ++pub const IXOFF: ::tcflag_t = 0x00000400; ++pub const ONLCR: ::tcflag_t = 0x00000002; ++pub const CSIZE: ::tcflag_t = 0x00000300; ++pub const CS6: ::tcflag_t = 0x00000100; ++pub const CS7: ::tcflag_t = 0x00000200; ++pub const CS8: ::tcflag_t = 0x00000300; ++pub const CSTOPB: ::tcflag_t = 0x00000400; ++pub const CREAD: ::tcflag_t = 0x00000800; ++pub const PARENB: ::tcflag_t = 0x00001000; ++pub const PARODD: ::tcflag_t = 0x00002000; ++pub const HUPCL: ::tcflag_t = 0x00004000; ++pub const CLOCAL: ::tcflag_t = 0x00008000; ++pub const ECHOKE: ::tcflag_t = 0x00000001; ++pub const ECHOE: ::tcflag_t = 0x00000002; ++pub const ECHOK: ::tcflag_t = 0x00000004; ++pub const ECHONL: ::tcflag_t = 0x00000010; ++pub const ECHOPRT: ::tcflag_t = 0x00000020; ++pub const ECHOCTL: ::tcflag_t = 0x00000040; ++pub const ISIG: ::tcflag_t = 0x00000080; ++pub const ICANON: ::tcflag_t = 0x00000100; ++pub const PENDIN: ::tcflag_t = 0x20000000; ++pub const NOFLSH: ::tcflag_t = 0x80000000; ++pub const CIBAUD: ::tcflag_t = 0o00077600000; ++pub const CBAUDEX: ::tcflag_t = 0o000020; ++pub const VSWTC: usize = 9; ++pub const OLCUC: ::tcflag_t = 0o000004; ++pub const NLDLY: ::tcflag_t = 0o001400; ++pub const CRDLY: ::tcflag_t = 0o030000; ++pub const TABDLY: ::tcflag_t = 0o006000; ++pub const BSDLY: ::tcflag_t = 0o100000; ++pub const FFDLY: ::tcflag_t = 0o040000; ++pub const VTDLY: ::tcflag_t = 0o200000; ++pub const XTABS: ::tcflag_t = 0o006000; ++pub const B57600: ::speed_t = 0o000020; ++pub const B115200: ::speed_t = 0o000021; ++pub const B230400: ::speed_t = 0o000022; ++pub const B460800: ::speed_t = 0o000023; ++pub const B500000: ::speed_t = 0o000024; ++pub const B576000: ::speed_t = 0o000025; ++pub const B921600: ::speed_t = 0o000026; ++pub const B1000000: ::speed_t = 0o000027; ++pub const B1152000: ::speed_t = 0o000030; ++pub const B1500000: ::speed_t = 0o000031; ++pub const B2000000: ::speed_t = 0o000032; ++pub const B2500000: ::speed_t = 0o000033; ++pub const B3000000: ::speed_t = 0o000034; ++pub const B3500000: ::speed_t = 0o000035; ++pub const B4000000: ::speed_t = 0o000036; ++ ++pub const O_APPEND: ::c_int = 1024; ++pub const O_CREAT: ::c_int = 64; ++pub const O_EXCL: ::c_int = 128; ++pub const O_NOCTTY: ::c_int = 256; ++pub const O_NONBLOCK: ::c_int = 2048; ++pub const O_SYNC: ::c_int = 1052672; ++pub const O_RSYNC: ::c_int = 1052672; ++pub const O_DSYNC: ::c_int = 4096; ++ ++pub const SOCK_NONBLOCK: ::c_int = 2048; ++ ++pub const MAP_ANON: ::c_int = 0x0020; ++pub const MAP_GROWSDOWN: ::c_int = 0x0100; ++pub const MAP_DENYWRITE: ::c_int = 0x0800; ++pub const MAP_EXECUTABLE: ::c_int = 0x01000; ++pub const MAP_LOCKED: ::c_int = 0x00080; ++pub const MAP_NORESERVE: ::c_int = 0x00040; ++pub const MAP_POPULATE: ::c_int = 0x08000; ++pub const MAP_NONBLOCK: ::c_int = 0x010000; ++pub const MAP_STACK: ::c_int = 0x020000; ++ ++pub const SOCK_STREAM: ::c_int = 1; ++pub const SOCK_DGRAM: ::c_int = 2; ++pub const SOCK_SEQPACKET: ::c_int = 5; ++ ++pub const SOL_SOCKET: ::c_int = 1; ++ ++pub const EDEADLK: ::c_int = 35; ++pub const ENAMETOOLONG: ::c_int = 36; ++pub const ENOLCK: ::c_int = 37; ++pub const ENOSYS: ::c_int = 38; ++pub const ENOTEMPTY: ::c_int = 39; ++pub const ELOOP: ::c_int = 40; ++pub const ENOMSG: ::c_int = 42; ++pub const EIDRM: ::c_int = 43; ++pub const ECHRNG: ::c_int = 44; ++pub const EL2NSYNC: ::c_int = 45; ++pub const EL3HLT: ::c_int = 46; ++pub const EL3RST: ::c_int = 47; ++pub const ELNRNG: ::c_int = 48; ++pub const EUNATCH: ::c_int = 49; ++pub const ENOCSI: ::c_int = 50; ++pub const EL2HLT: ::c_int = 51; ++pub const EBADE: ::c_int = 52; ++pub const EBADR: ::c_int = 53; ++pub const EXFULL: ::c_int = 54; ++pub const ENOANO: ::c_int = 55; ++pub const EBADRQC: ::c_int = 56; ++pub const EBADSLT: ::c_int = 57; ++pub const EDEADLOCK: ::c_int = 58; ++pub const EMULTIHOP: ::c_int = 72; ++pub const EBADMSG: ::c_int = 74; ++pub const EOVERFLOW: ::c_int = 75; ++pub const ENOTUNIQ: ::c_int = 76; ++pub const EBADFD: ::c_int = 77; ++pub const EREMCHG: ::c_int = 78; ++pub const ELIBACC: ::c_int = 79; ++pub const ELIBBAD: ::c_int = 80; ++pub const ELIBSCN: ::c_int = 81; ++pub const ELIBMAX: ::c_int = 82; ++pub const ELIBEXEC: ::c_int = 83; ++pub const EILSEQ: ::c_int = 84; ++pub const ERESTART: ::c_int = 85; ++pub const ESTRPIPE: ::c_int = 86; ++pub const EUSERS: ::c_int = 87; ++pub const ENOTSOCK: ::c_int = 88; ++pub const EDESTADDRREQ: ::c_int = 89; ++pub const EMSGSIZE: ::c_int = 90; ++pub const EPROTOTYPE: ::c_int = 91; ++pub const ENOPROTOOPT: ::c_int = 92; ++pub const EPROTONOSUPPORT: ::c_int = 93; ++pub const ESOCKTNOSUPPORT: ::c_int = 94; ++pub const EOPNOTSUPP: ::c_int = 95; ++pub const ENOTSUP: ::c_int = EOPNOTSUPP; ++pub const EPFNOSUPPORT: ::c_int = 96; ++pub const EAFNOSUPPORT: ::c_int = 97; ++pub const EADDRINUSE: ::c_int = 98; ++pub const EADDRNOTAVAIL: ::c_int = 99; ++pub const ENETDOWN: ::c_int = 100; ++pub const ENETUNREACH: ::c_int = 101; ++pub const ENETRESET: ::c_int = 102; ++pub const ECONNABORTED: ::c_int = 103; ++pub const ECONNRESET: ::c_int = 104; ++pub const ENOBUFS: ::c_int = 105; ++pub const EISCONN: ::c_int = 106; ++pub const ENOTCONN: ::c_int = 107; ++pub const ESHUTDOWN: ::c_int = 108; ++pub const ETOOMANYREFS: ::c_int = 109; ++pub const ETIMEDOUT: ::c_int = 110; ++pub const ECONNREFUSED: ::c_int = 111; ++pub const EHOSTDOWN: ::c_int = 112; ++pub const EHOSTUNREACH: ::c_int = 113; ++pub const EALREADY: ::c_int = 114; ++pub const EINPROGRESS: ::c_int = 115; ++pub const ESTALE: ::c_int = 116; ++pub const EUCLEAN: ::c_int = 117; ++pub const ENOTNAM: ::c_int = 118; ++pub const ENAVAIL: ::c_int = 119; ++pub const EISNAM: ::c_int = 120; ++pub const EREMOTEIO: ::c_int = 121; ++pub const EDQUOT: ::c_int = 122; ++pub const ENOMEDIUM: ::c_int = 123; ++pub const EMEDIUMTYPE: ::c_int = 124; ++pub const ECANCELED: ::c_int = 125; ++pub const ENOKEY: ::c_int = 126; ++pub const EKEYEXPIRED: ::c_int = 127; ++pub const EKEYREVOKED: ::c_int = 128; ++pub const EKEYREJECTED: ::c_int = 129; ++pub const EOWNERDEAD: ::c_int = 130; ++pub const ENOTRECOVERABLE: ::c_int = 131; ++pub const ERFKILL: ::c_int = 132; ++pub const EHWPOISON: ::c_int = 133; ++ ++pub const SO_REUSEADDR: ::c_int = 2; ++pub const SO_TYPE: ::c_int = 3; ++pub const SO_ERROR: ::c_int = 4; ++pub const SO_DONTROUTE: ::c_int = 5; ++pub const SO_BROADCAST: ::c_int = 6; ++pub const SO_SNDBUF: ::c_int = 7; ++pub const SO_RCVBUF: ::c_int = 8; ++pub const SO_KEEPALIVE: ::c_int = 9; ++pub const SO_OOBINLINE: ::c_int = 10; ++pub const SO_NO_CHECK: ::c_int = 11; ++pub const SO_PRIORITY: ::c_int = 12; ++pub const SO_LINGER: ::c_int = 13; ++pub const SO_BSDCOMPAT: ::c_int = 14; ++pub const SO_REUSEPORT: ::c_int = 15; ++pub const SO_RCVLOWAT: ::c_int = 16; ++pub const SO_SNDLOWAT: ::c_int = 17; ++pub const SO_RCVTIMEO: ::c_int = 18; ++pub const SO_SNDTIMEO: ::c_int = 19; ++pub const SO_PASSCRED: ::c_int = 20; ++pub const SO_PEERCRED: ::c_int = 21; ++pub const SO_ACCEPTCONN: ::c_int = 30; ++pub const SO_SNDBUFFORCE: ::c_int = 32; ++pub const SO_RCVBUFFORCE: ::c_int = 33; ++pub const SO_PROTOCOL: ::c_int = 38; ++pub const SO_DOMAIN: ::c_int = 39; ++ ++pub const SA_ONSTACK: ::c_int = 0x08000000; ++pub const SA_SIGINFO: ::c_int = 0x00000004; ++pub const SA_NOCLDWAIT: ::c_int = 0x00000002; ++ ++pub const SIGCHLD: ::c_int = 17; ++pub const SIGBUS: ::c_int = 7; ++pub const SIGTTIN: ::c_int = 21; ++pub const SIGTTOU: ::c_int = 22; ++pub const SIGXCPU: ::c_int = 24; ++pub const SIGXFSZ: ::c_int = 25; ++pub const SIGVTALRM: ::c_int = 26; ++pub const SIGPROF: ::c_int = 27; ++pub const SIGWINCH: ::c_int = 28; ++pub const SIGUSR1: ::c_int = 10; ++pub const SIGUSR2: ::c_int = 12; ++pub const SIGCONT: ::c_int = 18; ++pub const SIGSTOP: ::c_int = 19; ++pub const SIGTSTP: ::c_int = 20; ++pub const SIGURG: ::c_int = 23; ++pub const SIGIO: ::c_int = 29; ++pub const SIGSYS: ::c_int = 31; ++pub const SIGSTKFLT: ::c_int = 16; ++pub const SIGPOLL: ::c_int = 29; ++pub const SIGPWR: ::c_int = 30; ++pub const SIG_SETMASK: ::c_int = 2; ++pub const SIG_BLOCK: ::c_int = 0x000000; ++pub const SIG_UNBLOCK: ::c_int = 0x01; ++ ++pub const EXTPROC: ::tcflag_t = 0x10000000; ++ ++pub const MAP_HUGETLB: ::c_int = 0x040000; ++ ++pub const F_GETLK: ::c_int = 12; ++pub const F_GETOWN: ::c_int = 9; ++pub const F_SETLK: ::c_int = 13; ++pub const F_SETLKW: ::c_int = 14; ++pub const F_SETOWN: ::c_int = 8; ++ ++pub const VEOF: usize = 4; ++pub const VEOL: usize = 6; ++pub const VEOL2: usize = 8; ++pub const VMIN: usize = 5; ++pub const IEXTEN: ::tcflag_t = 0x00000400; ++pub const TOSTOP: ::tcflag_t = 0x00400000; ++pub const FLUSHO: ::tcflag_t = 0x00800000; ++ ++pub const TCGETS: ::c_int = 0x402C7413; ++pub const TCSETS: ::c_int = 0x802C7414; ++pub const TCSETSW: ::c_int = 0x802C7415; ++pub const TCSETSF: ::c_int = 0x802C7416; ++pub const TCGETA: ::c_int = 0x40147417; ++pub const TCSETA: ::c_int = 0x80147418; ++pub const TCSETAW: ::c_int = 0x80147419; ++pub const TCSETAF: ::c_int = 0x8014741C; ++pub const TCSBRK: ::c_int = 0x2000741D; ++pub const TCXONC: ::c_int = 0x2000741E; ++pub const TCFLSH: ::c_int = 0x2000741F; ++pub const TIOCGSOFTCAR: ::c_int = 0x5419; ++pub const TIOCSSOFTCAR: ::c_int = 0x541A; ++pub const TIOCLINUX: ::c_int = 0x541C; ++pub const TIOCGSERIAL: ::c_int = 0x541E; ++pub const TIOCEXCL: ::c_int = 0x540C; ++pub const TIOCNXCL: ::c_int = 0x540D; ++pub const TIOCSCTTY: ::c_int = 0x540E; ++pub const TIOCGPGRP: ::c_int = 0x40047477; ++pub const TIOCSPGRP: ::c_int = 0x80047476; ++pub const TIOCOUTQ: ::c_int = 0x40047473; ++pub const TIOCSTI: ::c_int = 0x5412; ++pub const TIOCGWINSZ: ::c_int = 0x40087468; ++pub const TIOCSWINSZ: ::c_int = 0x80087467; ++pub const TIOCMGET: ::c_int = 0x5415; ++pub const TIOCMBIS: ::c_int = 0x5416; ++pub const TIOCMBIC: ::c_int = 0x5417; ++pub const TIOCMSET: ::c_int = 0x5418; ++pub const FIONREAD: ::c_int = 0x4004667F; ++pub const TIOCCONS: ::c_int = 0x541D; ++ ++pub const POLLWRNORM: ::c_short = 0x100; ++pub const POLLWRBAND: ::c_short = 0x200; ++ ++pub const TIOCM_LE: ::c_int = 0x001; ++pub const TIOCM_DTR: ::c_int = 0x002; ++pub const TIOCM_RTS: ::c_int = 0x004; ++pub const TIOCM_ST: ::c_int = 0x008; ++pub const TIOCM_SR: ::c_int = 0x010; ++pub const TIOCM_CTS: ::c_int = 0x020; ++pub const TIOCM_CAR: ::c_int = 0x040; ++pub const TIOCM_RNG: ::c_int = 0x080; ++pub const TIOCM_DSR: ::c_int = 0x100; ++pub const TIOCM_CD: ::c_int = TIOCM_CAR; ++pub const TIOCM_RI: ::c_int = TIOCM_RNG; ++ ++// Syscall table ++pub const SYS_restart_syscall: ::c_long = 0; ++pub const SYS_exit: ::c_long = 1; ++pub const SYS_fork: ::c_long = 2; ++pub const SYS_read: ::c_long = 3; ++pub const SYS_write: ::c_long = 4; ++pub const SYS_open: ::c_long = 5; ++pub const SYS_close: ::c_long = 6; ++pub const SYS_waitpid: ::c_long = 7; ++pub const SYS_creat: ::c_long = 8; ++pub const SYS_link: ::c_long = 9; ++pub const SYS_unlink: ::c_long = 10; ++pub const SYS_execve: ::c_long = 11; ++pub const SYS_chdir: ::c_long = 12; ++pub const SYS_time: ::c_long = 13; ++pub const SYS_mknod: ::c_long = 14; ++pub const SYS_chmod: ::c_long = 15; ++pub const SYS_lchown: ::c_long = 16; ++pub const SYS_break: ::c_long = 17; ++pub const SYS_oldstat: ::c_long = 18; ++pub const SYS_lseek: ::c_long = 19; ++pub const SYS_getpid: ::c_long = 20; ++pub const SYS_mount: ::c_long = 21; ++pub const SYS_umount: ::c_long = 22; ++pub const SYS_setuid: ::c_long = 23; ++pub const SYS_getuid: ::c_long = 24; ++pub const SYS_stime: ::c_long = 25; ++pub const SYS_ptrace: ::c_long = 26; ++pub const SYS_alarm: ::c_long = 27; ++pub const SYS_oldfstat: ::c_long = 28; ++pub const SYS_pause: ::c_long = 29; ++pub const SYS_utime: ::c_long = 30; ++pub const SYS_stty: ::c_long = 31; ++pub const SYS_gtty: ::c_long = 32; ++pub const SYS_access: ::c_long = 33; ++pub const SYS_nice: ::c_long = 34; ++pub const SYS_ftime: ::c_long = 35; ++pub const SYS_sync: ::c_long = 36; ++pub const SYS_kill: ::c_long = 37; ++pub const SYS_rename: ::c_long = 38; ++pub const SYS_mkdir: ::c_long = 39; ++pub const SYS_rmdir: ::c_long = 40; ++pub const SYS_dup: ::c_long = 41; ++pub const SYS_pipe: ::c_long = 42; ++pub const SYS_times: ::c_long = 43; ++pub const SYS_prof: ::c_long = 44; ++pub const SYS_brk: ::c_long = 45; ++pub const SYS_setgid: ::c_long = 46; ++pub const SYS_getgid: ::c_long = 47; ++pub const SYS_signal: ::c_long = 48; ++pub const SYS_geteuid: ::c_long = 49; ++pub const SYS_getegid: ::c_long = 50; ++pub const SYS_acct: ::c_long = 51; ++pub const SYS_umount2: ::c_long = 52; ++pub const SYS_lock: ::c_long = 53; ++pub const SYS_ioctl: ::c_long = 54; ++pub const SYS_fcntl: ::c_long = 55; ++pub const SYS_mpx: ::c_long = 56; ++pub const SYS_setpgid: ::c_long = 57; ++pub const SYS_ulimit: ::c_long = 58; ++pub const SYS_oldolduname: ::c_long = 59; ++pub const SYS_umask: ::c_long = 60; ++pub const SYS_chroot: ::c_long = 61; ++pub const SYS_ustat: ::c_long = 62; ++pub const SYS_dup2: ::c_long = 63; ++pub const SYS_getppid: ::c_long = 64; ++pub const SYS_getpgrp: ::c_long = 65; ++pub const SYS_setsid: ::c_long = 66; ++pub const SYS_sigaction: ::c_long = 67; ++pub const SYS_sgetmask: ::c_long = 68; ++pub const SYS_ssetmask: ::c_long = 69; ++pub const SYS_setreuid: ::c_long = 70; ++pub const SYS_setregid: ::c_long = 71; ++pub const SYS_sigsuspend: ::c_long = 72; ++pub const SYS_sigpending: ::c_long = 73; ++pub const SYS_sethostname: ::c_long = 74; ++pub const SYS_setrlimit: ::c_long = 75; ++pub const SYS_getrlimit: ::c_long = 76; ++pub const SYS_getrusage: ::c_long = 77; ++pub const SYS_gettimeofday: ::c_long = 78; ++pub const SYS_settimeofday: ::c_long = 79; ++pub const SYS_getgroups: ::c_long = 80; ++pub const SYS_setgroups: ::c_long = 81; ++pub const SYS_select: ::c_long = 82; ++pub const SYS_symlink: ::c_long = 83; ++pub const SYS_oldlstat: ::c_long = 84; ++pub const SYS_readlink: ::c_long = 85; ++pub const SYS_uselib: ::c_long = 86; ++pub const SYS_swapon: ::c_long = 87; ++pub const SYS_reboot: ::c_long = 88; ++pub const SYS_readdir: ::c_long = 89; ++pub const SYS_mmap: ::c_long = 90; ++pub const SYS_munmap: ::c_long = 91; ++pub const SYS_truncate: ::c_long = 92; ++pub const SYS_ftruncate: ::c_long = 93; ++pub const SYS_fchmod: ::c_long = 94; ++pub const SYS_fchown: ::c_long = 95; ++pub const SYS_getpriority: ::c_long = 96; ++pub const SYS_setpriority: ::c_long = 97; ++pub const SYS_profil: ::c_long = 98; ++pub const SYS_statfs: ::c_long = 99; ++pub const SYS_fstatfs: ::c_long = 100; ++pub const SYS_ioperm: ::c_long = 101; ++pub const SYS_socketcall: ::c_long = 102; ++pub const SYS_syslog: ::c_long = 103; ++pub const SYS_setitimer: ::c_long = 104; ++pub const SYS_getitimer: ::c_long = 105; ++pub const SYS_stat: ::c_long = 106; ++pub const SYS_lstat: ::c_long = 107; ++pub const SYS_fstat: ::c_long = 108; ++pub const SYS_olduname: ::c_long = 109; ++pub const SYS_iopl: ::c_long = 110; ++pub const SYS_vhangup: ::c_long = 111; ++pub const SYS_idle: ::c_long = 112; ++pub const SYS_vm86: ::c_long = 113; ++pub const SYS_wait4: ::c_long = 114; ++pub const SYS_swapoff: ::c_long = 115; ++pub const SYS_sysinfo: ::c_long = 116; ++pub const SYS_ipc: ::c_long = 117; ++pub const SYS_fsync: ::c_long = 118; ++pub const SYS_sigreturn: ::c_long = 119; ++pub const SYS_clone: ::c_long = 120; ++pub const SYS_setdomainname: ::c_long = 121; ++pub const SYS_uname: ::c_long = 122; ++pub const SYS_modify_ldt: ::c_long = 123; ++pub const SYS_adjtimex: ::c_long = 124; ++pub const SYS_mprotect: ::c_long = 125; ++pub const SYS_sigprocmask: ::c_long = 126; ++pub const SYS_create_module: ::c_long = 127; ++pub const SYS_init_module: ::c_long = 128; ++pub const SYS_delete_module: ::c_long = 129; ++pub const SYS_get_kernel_syms: ::c_long = 130; ++pub const SYS_quotactl: ::c_long = 131; ++pub const SYS_getpgid: ::c_long = 132; ++pub const SYS_fchdir: ::c_long = 133; ++pub const SYS_bdflush: ::c_long = 134; ++pub const SYS_sysfs: ::c_long = 135; ++pub const SYS_personality: ::c_long = 136; ++pub const SYS_afs_syscall: ::c_long = 137; ++pub const SYS_setfsuid: ::c_long = 138; ++pub const SYS_setfsgid: ::c_long = 139; ++pub const SYS__llseek: ::c_long = 140; ++pub const SYS_getdents: ::c_long = 141; ++pub const SYS__newselect: ::c_long = 142; ++pub const SYS_flock: ::c_long = 143; ++pub const SYS_msync: ::c_long = 144; ++pub const SYS_readv: ::c_long = 145; ++pub const SYS_writev: ::c_long = 146; ++pub const SYS_getsid: ::c_long = 147; ++pub const SYS_fdatasync: ::c_long = 148; ++pub const SYS__sysctl: ::c_long = 149; ++pub const SYS_mlock: ::c_long = 150; ++pub const SYS_munlock: ::c_long = 151; ++pub const SYS_mlockall: ::c_long = 152; ++pub const SYS_munlockall: ::c_long = 153; ++pub const SYS_sched_setparam: ::c_long = 154; ++pub const SYS_sched_getparam: ::c_long = 155; ++pub const SYS_sched_setscheduler: ::c_long = 156; ++pub const SYS_sched_getscheduler: ::c_long = 157; ++pub const SYS_sched_yield: ::c_long = 158; ++pub const SYS_sched_get_priority_max: ::c_long = 159; ++pub const SYS_sched_get_priority_min: ::c_long = 160; ++pub const SYS_sched_rr_get_interval: ::c_long = 161; ++pub const SYS_nanosleep: ::c_long = 162; ++pub const SYS_mremap: ::c_long = 163; ++pub const SYS_setresuid: ::c_long = 164; ++pub const SYS_getresuid: ::c_long = 165; ++pub const SYS_query_module: ::c_long = 166; ++pub const SYS_poll: ::c_long = 167; ++pub const SYS_nfsservctl: ::c_long = 168; ++pub const SYS_setresgid: ::c_long = 169; ++pub const SYS_getresgid: ::c_long = 170; ++pub const SYS_prctl: ::c_long = 171; ++pub const SYS_rt_sigreturn: ::c_long = 172; ++pub const SYS_rt_sigaction: ::c_long = 173; ++pub const SYS_rt_sigprocmask: ::c_long = 174; ++pub const SYS_rt_sigpending: ::c_long = 175; ++pub const SYS_rt_sigtimedwait: ::c_long = 176; ++pub const SYS_rt_sigqueueinfo: ::c_long = 177; ++pub const SYS_rt_sigsuspend: ::c_long = 178; ++pub const SYS_pread64: ::c_long = 179; ++pub const SYS_pwrite64: ::c_long = 180; ++pub const SYS_chown: ::c_long = 181; ++pub const SYS_getcwd: ::c_long = 182; ++pub const SYS_capget: ::c_long = 183; ++pub const SYS_capset: ::c_long = 184; ++pub const SYS_sigaltstack: ::c_long = 185; ++pub const SYS_sendfile: ::c_long = 186; ++pub const SYS_getpmsg: ::c_long = 187; ++pub const SYS_putpmsg: ::c_long = 188; ++pub const SYS_vfork: ::c_long = 189; ++pub const SYS_ugetrlimit: ::c_long = 190; ++pub const SYS_readahead: ::c_long = 191; ++pub const SYS_mmap2: ::c_long = 192; ++pub const SYS_truncate64: ::c_long = 193; ++pub const SYS_ftruncate64: ::c_long = 194; ++pub const SYS_stat64: ::c_long = 195; ++pub const SYS_lstat64: ::c_long = 196; ++pub const SYS_fstat64: ::c_long = 197; ++pub const SYS_pciconfig_read: ::c_long = 198; ++pub const SYS_pciconfig_write: ::c_long = 199; ++pub const SYS_pciconfig_iobase: ::c_long = 200; ++pub const SYS_multiplexer: ::c_long = 201; ++pub const SYS_getdents64: ::c_long = 202; ++pub const SYS_pivot_root: ::c_long = 203; ++pub const SYS_fcntl64: ::c_long = 204; ++pub const SYS_madvise: ::c_long = 205; ++pub const SYS_mincore: ::c_long = 206; ++pub const SYS_gettid: ::c_long = 207; ++pub const SYS_tkill: ::c_long = 208; ++pub const SYS_setxattr: ::c_long = 209; ++pub const SYS_lsetxattr: ::c_long = 210; ++pub const SYS_fsetxattr: ::c_long = 211; ++pub const SYS_getxattr: ::c_long = 212; ++pub const SYS_lgetxattr: ::c_long = 213; ++pub const SYS_fgetxattr: ::c_long = 214; ++pub const SYS_listxattr: ::c_long = 215; ++pub const SYS_llistxattr: ::c_long = 216; ++pub const SYS_flistxattr: ::c_long = 217; ++pub const SYS_removexattr: ::c_long = 218; ++pub const SYS_lremovexattr: ::c_long = 219; ++pub const SYS_fremovexattr: ::c_long = 220; ++pub const SYS_futex: ::c_long = 221; ++pub const SYS_sched_setaffinity: ::c_long = 222; ++pub const SYS_sched_getaffinity: ::c_long = 223; ++pub const SYS_tuxcall: ::c_long = 225; ++pub const SYS_sendfile64: ::c_long = 226; ++pub const SYS_io_setup: ::c_long = 227; ++pub const SYS_io_destroy: ::c_long = 228; ++pub const SYS_io_getevents: ::c_long = 229; ++pub const SYS_io_submit: ::c_long = 230; ++pub const SYS_io_cancel: ::c_long = 231; ++pub const SYS_set_tid_address: ::c_long = 232; ++pub const SYS_fadvise64: ::c_long = 233; ++pub const SYS_exit_group: ::c_long = 234; ++pub const SYS_lookup_dcookie: ::c_long = 235; ++pub const SYS_epoll_create: ::c_long = 236; ++pub const SYS_epoll_ctl: ::c_long = 237; ++pub const SYS_epoll_wait: ::c_long = 238; ++pub const SYS_remap_file_pages: ::c_long = 239; ++pub const SYS_timer_create: ::c_long = 240; ++pub const SYS_timer_settime: ::c_long = 241; ++pub const SYS_timer_gettime: ::c_long = 242; ++pub const SYS_timer_getoverrun: ::c_long = 243; ++pub const SYS_timer_delete: ::c_long = 244; ++pub const SYS_clock_settime: ::c_long = 245; ++pub const SYS_clock_gettime: ::c_long = 246; ++pub const SYS_clock_getres: ::c_long = 247; ++pub const SYS_clock_nanosleep: ::c_long = 248; ++pub const SYS_swapcontext: ::c_long = 249; ++pub const SYS_tgkill: ::c_long = 250; ++pub const SYS_utimes: ::c_long = 251; ++pub const SYS_statfs64: ::c_long = 252; ++pub const SYS_fstatfs64: ::c_long = 253; ++pub const SYS_fadvise64_64: ::c_long = 254; ++pub const SYS_rtas: ::c_long = 255; ++pub const SYS_sys_debug_setcontext: ::c_long = 256; ++pub const SYS_migrate_pages: ::c_long = 258; ++pub const SYS_mbind: ::c_long = 259; ++pub const SYS_get_mempolicy: ::c_long = 260; ++pub const SYS_set_mempolicy: ::c_long = 261; ++pub const SYS_mq_open: ::c_long = 262; ++pub const SYS_mq_unlink: ::c_long = 263; ++pub const SYS_mq_timedsend: ::c_long = 264; ++pub const SYS_mq_timedreceive: ::c_long = 265; ++pub const SYS_mq_notify: ::c_long = 266; ++pub const SYS_mq_getsetattr: ::c_long = 267; ++pub const SYS_kexec_load: ::c_long = 268; ++pub const SYS_add_key: ::c_long = 269; ++pub const SYS_request_key: ::c_long = 270; ++pub const SYS_keyctl: ::c_long = 271; ++pub const SYS_waitid: ::c_long = 272; ++pub const SYS_ioprio_set: ::c_long = 273; ++pub const SYS_ioprio_get: ::c_long = 274; ++pub const SYS_inotify_init: ::c_long = 275; ++pub const SYS_inotify_add_watch: ::c_long = 276; ++pub const SYS_inotify_rm_watch: ::c_long = 277; ++pub const SYS_spu_run: ::c_long = 278; ++pub const SYS_spu_create: ::c_long = 279; ++pub const SYS_pselect6: ::c_long = 280; ++pub const SYS_ppoll: ::c_long = 281; ++pub const SYS_unshare: ::c_long = 282; ++pub const SYS_splice: ::c_long = 283; ++pub const SYS_tee: ::c_long = 284; ++pub const SYS_vmsplice: ::c_long = 285; ++pub const SYS_openat: ::c_long = 286; ++pub const SYS_mkdirat: ::c_long = 287; ++pub const SYS_mknodat: ::c_long = 288; ++pub const SYS_fchownat: ::c_long = 289; ++pub const SYS_futimesat: ::c_long = 290; ++pub const SYS_fstatat64: ::c_long = 291; ++pub const SYS_unlinkat: ::c_long = 292; ++pub const SYS_renameat: ::c_long = 293; ++pub const SYS_linkat: ::c_long = 294; ++pub const SYS_symlinkat: ::c_long = 295; ++pub const SYS_readlinkat: ::c_long = 296; ++pub const SYS_fchmodat: ::c_long = 297; ++pub const SYS_faccessat: ::c_long = 298; ++pub const SYS_get_robust_list: ::c_long = 299; ++pub const SYS_set_robust_list: ::c_long = 300; ++pub const SYS_move_pages: ::c_long = 301; ++pub const SYS_getcpu: ::c_long = 302; ++pub const SYS_epoll_pwait: ::c_long = 303; ++pub const SYS_utimensat: ::c_long = 304; ++pub const SYS_signalfd: ::c_long = 305; ++pub const SYS_timerfd_create: ::c_long = 306; ++pub const SYS_eventfd: ::c_long = 307; ++pub const SYS_sync_file_range2: ::c_long = 308; ++pub const SYS_fallocate: ::c_long = 309; ++pub const SYS_subpage_prot: ::c_long = 310; ++pub const SYS_timerfd_settime: ::c_long = 311; ++pub const SYS_timerfd_gettime: ::c_long = 312; ++pub const SYS_signalfd4: ::c_long = 313; ++pub const SYS_eventfd2: ::c_long = 314; ++pub const SYS_epoll_create1: ::c_long = 315; ++pub const SYS_dup3: ::c_long = 316; ++pub const SYS_pipe2: ::c_long = 317; ++pub const SYS_inotify_init1: ::c_long = 318; ++pub const SYS_perf_event_open: ::c_long = 319; ++pub const SYS_preadv: ::c_long = 320; ++pub const SYS_pwritev: ::c_long = 321; ++pub const SYS_rt_tgsigqueueinfo: ::c_long = 322; ++pub const SYS_fanotify_init: ::c_long = 323; ++pub const SYS_fanotify_mark: ::c_long = 324; ++pub const SYS_prlimit64: ::c_long = 325; ++pub const SYS_socket: ::c_long = 326; ++pub const SYS_bind: ::c_long = 327; ++pub const SYS_connect: ::c_long = 328; ++pub const SYS_listen: ::c_long = 329; ++pub const SYS_accept: ::c_long = 330; ++pub const SYS_getsockname: ::c_long = 331; ++pub const SYS_getpeername: ::c_long = 332; ++pub const SYS_socketpair: ::c_long = 333; ++pub const SYS_send: ::c_long = 334; ++pub const SYS_sendto: ::c_long = 335; ++pub const SYS_recv: ::c_long = 336; ++pub const SYS_recvfrom: ::c_long = 337; ++pub const SYS_shutdown: ::c_long = 338; ++pub const SYS_setsockopt: ::c_long = 339; ++pub const SYS_getsockopt: ::c_long = 340; ++pub const SYS_sendmsg: ::c_long = 341; ++pub const SYS_recvmsg: ::c_long = 342; ++pub const SYS_recvmmsg: ::c_long = 343; ++pub const SYS_accept4: ::c_long = 344; ++pub const SYS_name_to_handle_at: ::c_long = 345; ++pub const SYS_open_by_handle_at: ::c_long = 346; ++pub const SYS_clock_adjtime: ::c_long = 347; ++pub const SYS_syncfs: ::c_long = 348; ++pub const SYS_sendmmsg: ::c_long = 349; ++pub const SYS_setns: ::c_long = 350; ++pub const SYS_process_vm_readv: ::c_long = 351; ++pub const SYS_process_vm_writev: ::c_long = 352; ++pub const SYS_finit_module: ::c_long = 353; ++pub const SYS_kcmp: ::c_long = 354; ++pub const SYS_sched_setattr: ::c_long = 355; ++pub const SYS_sched_getattr: ::c_long = 356; ++pub const SYS_renameat2: ::c_long = 357; ++pub const SYS_seccomp: ::c_long = 358; ++pub const SYS_getrandom: ::c_long = 359; ++pub const SYS_memfd_create: ::c_long = 360; ++pub const SYS_bpf: ::c_long = 361; ++pub const SYS_execveat: ::c_long = 362; ++pub const SYS_switch_endian: ::c_long = 363; ++pub const SYS_userfaultfd: ::c_long = 364; ++pub const SYS_membarrier: ::c_long = 365; ++pub const SYS_mlock2: ::c_long = 378; ++pub const SYS_copy_file_range: ::c_long = 379; ++pub const SYS_preadv2: ::c_long = 380; ++pub const SYS_pwritev2: ::c_long = 381; ++pub const SYS_kexec_file_load: ::c_long = 382; ++pub const SYS_statx: ::c_long = 383; ++pub const SYS_pkey_alloc: ::c_long = 384; ++pub const SYS_pkey_free: ::c_long = 385; ++pub const SYS_pkey_mprotect: ::c_long = 386; ++ ++#[doc(hidden)] ++pub const AF_MAX: ::c_int = 43; ++#[doc(hidden)] ++pub const PF_MAX: ::c_int = AF_MAX; +diff --git a/src/liblibc/src/unix/notbsd/linux/musl/b32/x86.rs b/src/liblibc/src/unix/notbsd/linux/musl/b32/x86.rs +index fa570248c72..9f704c7fac9 100644 +--- a/src/liblibc/src/unix/notbsd/linux/musl/b32/x86.rs ++++ b/src/liblibc/src/unix/notbsd/linux/musl/b32/x86.rs +@@ -52,6 +52,18 @@ s! { + pub ss_size: ::size_t + } + ++ pub struct ipc_perm { ++ pub __ipc_perm_key: ::key_t, ++ pub uid: ::uid_t, ++ pub gid: ::gid_t, ++ pub cuid: ::uid_t, ++ pub cgid: ::gid_t, ++ pub mode: ::mode_t, ++ pub __seq: ::c_int, ++ __unused1: ::c_long, ++ __unused2: ::c_long ++ } ++ + pub struct shmid_ds { + pub shm_perm: ::ipc_perm, + pub shm_segsz: ::size_t, +@@ -164,6 +176,9 @@ s! { + } + } + ++pub const SIGSTKSZ: ::size_t = 8192; ++pub const MINSIGSTKSZ: ::size_t = 2048; ++ + pub const O_DIRECT: ::c_int = 0x4000; + pub const O_DIRECTORY: ::c_int = 0x10000; + pub const O_NOFOLLOW: ::c_int = 0x20000; +@@ -178,6 +193,76 @@ pub const RLIMIT_NOFILE: ::c_int = 7; + pub const RLIMIT_AS: ::c_int = 9; + pub const RLIMIT_NPROC: ::c_int = 6; + pub const RLIMIT_MEMLOCK: ::c_int = 8; ++pub const RLIMIT_NLIMITS: ::c_int = 16; ++ ++pub const MCL_CURRENT: ::c_int = 0x0001; ++pub const MCL_FUTURE: ::c_int = 0x0002; ++pub const CBAUD: ::tcflag_t = 0o0010017; ++pub const TAB1: ::c_int = 0x00000800; ++pub const TAB2: ::c_int = 0x00001000; ++pub const TAB3: ::c_int = 0x00001800; ++pub const CR1: ::c_int = 0x00000200; ++pub const CR2: ::c_int = 0x00000400; ++pub const CR3: ::c_int = 0x00000600; ++pub const FF1: ::c_int = 0x00008000; ++pub const BS1: ::c_int = 0x00002000; ++pub const VT1: ::c_int = 0x00004000; ++pub const VWERASE: usize = 14; ++pub const VREPRINT: usize = 12; ++pub const VSUSP: usize = 10; ++pub const VSTART: usize = 8; ++pub const VSTOP: usize = 9; ++pub const VDISCARD: usize = 13; ++pub const VTIME: usize = 5; ++pub const IXON: ::tcflag_t = 0x00000400; ++pub const IXOFF: ::tcflag_t = 0x00001000; ++pub const ONLCR: ::tcflag_t = 0x4; ++pub const CSIZE: ::tcflag_t = 0x00000030; ++pub const CS6: ::tcflag_t = 0x00000010; ++pub const CS7: ::tcflag_t = 0x00000020; ++pub const CS8: ::tcflag_t = 0x00000030; ++pub const CSTOPB: ::tcflag_t = 0x00000040; ++pub const CREAD: ::tcflag_t = 0x00000080; ++pub const PARENB: ::tcflag_t = 0x00000100; ++pub const PARODD: ::tcflag_t = 0x00000200; ++pub const HUPCL: ::tcflag_t = 0x00000400; ++pub const CLOCAL: ::tcflag_t = 0x00000800; ++pub const ECHOKE: ::tcflag_t = 0x00000800; ++pub const ECHOE: ::tcflag_t = 0x00000010; ++pub const ECHOK: ::tcflag_t = 0x00000020; ++pub const ECHONL: ::tcflag_t = 0x00000040; ++pub const ECHOPRT: ::tcflag_t = 0x00000400; ++pub const ECHOCTL: ::tcflag_t = 0x00000200; ++pub const ISIG: ::tcflag_t = 0x00000001; ++pub const ICANON: ::tcflag_t = 0x00000002; ++pub const PENDIN: ::tcflag_t = 0x00004000; ++pub const NOFLSH: ::tcflag_t = 0x00000080; ++pub const CIBAUD: ::tcflag_t = 0o02003600000; ++pub const CBAUDEX: ::tcflag_t = 0o010000; ++pub const VSWTC: usize = 7; ++pub const OLCUC: ::tcflag_t = 0o000002; ++pub const NLDLY: ::tcflag_t = 0o000400; ++pub const CRDLY: ::tcflag_t = 0o003000; ++pub const TABDLY: ::tcflag_t = 0o014000; ++pub const BSDLY: ::tcflag_t = 0o020000; ++pub const FFDLY: ::tcflag_t = 0o100000; ++pub const VTDLY: ::tcflag_t = 0o040000; ++pub const XTABS: ::tcflag_t = 0o014000; ++pub const B57600: ::speed_t = 0o010001; ++pub const B115200: ::speed_t = 0o010002; ++pub const B230400: ::speed_t = 0o010003; ++pub const B460800: ::speed_t = 0o010004; ++pub const B500000: ::speed_t = 0o010005; ++pub const B576000: ::speed_t = 0o010006; ++pub const B921600: ::speed_t = 0o010007; ++pub const B1000000: ::speed_t = 0o010010; ++pub const B1152000: ::speed_t = 0o010011; ++pub const B1500000: ::speed_t = 0o010012; ++pub const B2000000: ::speed_t = 0o010013; ++pub const B2500000: ::speed_t = 0o010014; ++pub const B3000000: ::speed_t = 0o010015; ++pub const B3500000: ::speed_t = 0o010016; ++pub const B4000000: ::speed_t = 0o010017; + + pub const O_APPEND: ::c_int = 1024; + pub const O_CREAT: ::c_int = 64; +diff --git a/src/liblibc/src/unix/notbsd/linux/musl/mod.rs b/src/liblibc/src/unix/notbsd/linux/musl/mod.rs +index 0d92a4b9d14..10d61ebebef 100644 +--- a/src/liblibc/src/unix/notbsd/linux/musl/mod.rs ++++ b/src/liblibc/src/unix/notbsd/linux/musl/mod.rs +@@ -260,7 +260,8 @@ cfg_if! { + pub use self::b64::*; + } else if #[cfg(any(target_arch = "x86", + target_arch = "mips", +- target_arch = "arm"))] { ++ target_arch = "arm", ++ target_arch = "powerpc"))] { + mod b32; + pub use self::b32::*; + } else { } diff --git a/user/rust/0032-libc-dcff154781e4.patch b/user/rust/0032-libc-dcff154781e4.patch new file mode 100644 index 000000000..6840e203f --- /dev/null +++ b/user/rust/0032-libc-dcff154781e4.patch @@ -0,0 +1,642 @@ +From dcff154781e4b3c6ef3a6a4024c73631f52f48cb Mon Sep 17 00:00:00 2001 +From: Mike Sullivan <mksully22@gmail.com> +Date: Mon, 18 Jun 2018 15:16:25 +0000 +Subject: [PATCH] libc: changes to ppc64le musl branch to support building of + rust on Alpine amend to add style changes amend to add style changes + +--- + src/unix/notbsd/linux/musl/b32/mod.rs | 74 ++++++++++ + src/unix/notbsd/linux/musl/b64/mod.rs | 62 -------- + src/unix/notbsd/linux/musl/b64/powerpc64.rs | 155 ++++++++++++++++++-- + src/unix/notbsd/linux/musl/b64/x86_64.rs | 136 +++++++++++++++++ + src/unix/notbsd/linux/musl/mod.rs | 74 ---------- + 5 files changed, 353 insertions(+), 148 deletions(-) + +diff --git a/src/vendor/libc/src/unix/notbsd/linux/musl/b32/mod.rs b/src/vendor/libc/src/unix/notbsd/linux/musl/b32/mod.rs +index f6e19d981dd..b4a0f761636 100644 +--- a/src/vendor/libc/src/unix/notbsd/linux/musl/b32/mod.rs ++++ b/src/vendor/libc/src/unix/notbsd/linux/musl/b32/mod.rs +@@ -52,6 +52,80 @@ pub const MINSIGSTKSZ: ::size_t = 2048; + pub const __SIZEOF_PTHREAD_RWLOCK_T: usize = 32; + pub const __SIZEOF_PTHREAD_MUTEX_T: usize = 24; + ++pub const RLIMIT_NLIMITS: ::c_int = 16; ++pub const TIOCINQ: ::c_int = ::FIONREAD; ++pub const MCL_CURRENT: ::c_int = 0x0001; ++pub const MCL_FUTURE: ::c_int = 0x0002; ++pub const CBAUD: ::tcflag_t = 0o0010017; ++pub const TAB1: ::c_int = 0x00000800; ++pub const TAB2: ::c_int = 0x00001000; ++pub const TAB3: ::c_int = 0x00001800; ++pub const CR1: ::c_int = 0x00000200; ++pub const CR2: ::c_int = 0x00000400; ++pub const CR3: ::c_int = 0x00000600; ++pub const FF1: ::c_int = 0x00008000; ++pub const BS1: ::c_int = 0x00002000; ++pub const VT1: ::c_int = 0x00004000; ++pub const VWERASE: usize = 14; ++pub const VREPRINT: usize = 12; ++pub const VSUSP: usize = 10; ++pub const VSTART: usize = 8; ++pub const VSTOP: usize = 9; ++pub const VDISCARD: usize = 13; ++pub const VTIME: usize = 5; ++pub const IXON: ::tcflag_t = 0x00000400; ++pub const IXOFF: ::tcflag_t = 0x00001000; ++pub const ONLCR: ::tcflag_t = 0x4; ++pub const CSIZE: ::tcflag_t = 0x00000030; ++pub const CS6: ::tcflag_t = 0x00000010; ++pub const CS7: ::tcflag_t = 0x00000020; ++pub const CS8: ::tcflag_t = 0x00000030; ++pub const CSTOPB: ::tcflag_t = 0x00000040; ++pub const CREAD: ::tcflag_t = 0x00000080; ++pub const PARENB: ::tcflag_t = 0x00000100; ++pub const PARODD: ::tcflag_t = 0x00000200; ++pub const HUPCL: ::tcflag_t = 0x00000400; ++pub const CLOCAL: ::tcflag_t = 0x00000800; ++pub const ECHOKE: ::tcflag_t = 0x00000800; ++pub const ECHOE: ::tcflag_t = 0x00000010; ++pub const ECHOK: ::tcflag_t = 0x00000020; ++pub const ECHONL: ::tcflag_t = 0x00000040; ++pub const ECHOPRT: ::tcflag_t = 0x00000400; ++pub const ECHOCTL: ::tcflag_t = 0x00000200; ++pub const ISIG: ::tcflag_t = 0x00000001; ++pub const ICANON: ::tcflag_t = 0x00000002; ++pub const PENDIN: ::tcflag_t = 0x00004000; ++pub const NOFLSH: ::tcflag_t = 0x00000080; ++pub const CIBAUD: ::tcflag_t = 0o02003600000; ++pub const CBAUDEX: ::tcflag_t = 0o010000; ++pub const VSWTC: usize = 7; ++pub const OLCUC: ::tcflag_t = 0o000002; ++pub const NLDLY: ::tcflag_t = 0o000400; ++pub const CRDLY: ::tcflag_t = 0o003000; ++pub const TABDLY: ::tcflag_t = 0o014000; ++pub const BSDLY: ::tcflag_t = 0o020000; ++pub const FFDLY: ::tcflag_t = 0o100000; ++pub const VTDLY: ::tcflag_t = 0o040000; ++pub const XTABS: ::tcflag_t = 0o014000; ++pub const B57600: ::speed_t = 0o010001; ++pub const B115200: ::speed_t = 0o010002; ++pub const B230400: ::speed_t = 0o010003; ++pub const B460800: ::speed_t = 0o010004; ++pub const B500000: ::speed_t = 0o010005; ++pub const B576000: ::speed_t = 0o010006; ++pub const B921600: ::speed_t = 0o010007; ++pub const B1000000: ::speed_t = 0o010010; ++pub const B1152000: ::speed_t = 0o010011; ++pub const B1500000: ::speed_t = 0o010012; ++pub const B2000000: ::speed_t = 0o010013; ++pub const B2500000: ::speed_t = 0o010014; ++pub const B3000000: ::speed_t = 0o010015; ++pub const B3500000: ::speed_t = 0o010016; ++pub const B4000000: ::speed_t = 0o010017; ++extern { ++ pub fn ioctl(fd: ::c_int, request: ::c_int, ...) -> ::c_int; ++} ++ + cfg_if! { + if #[cfg(any(target_arch = "x86"))] { + mod x86; +diff --git a/src/vendor/libc/src/unix/notbsd/linux/musl/b64/mod.rs b/src/vendor/libc/src/unix/notbsd/linux/musl/b64/mod.rs +index 70baf8277a9..5c2e815fd60 100644 +--- a/src/vendor/libc/src/unix/notbsd/linux/musl/b64/mod.rs ++++ b/src/vendor/libc/src/unix/notbsd/linux/musl/b64/mod.rs +@@ -136,9 +136,6 @@ pub const __SIZEOF_PTHREAD_MUTEX_T: usize = 40; + + pub const O_ASYNC: ::c_int = 0x2000; + +-pub const FIOCLEX: ::c_int = 0x5451; +-pub const FIONBIO: ::c_int = 0x5421; +- + pub const RLIMIT_RSS: ::c_int = 5; + pub const RLIMIT_NOFILE: ::c_int = 7; + pub const RLIMIT_AS: ::c_int = 9; +@@ -172,7 +169,6 @@ pub const SOCK_SEQPACKET: ::c_int = 5; + + pub const SOL_SOCKET: ::c_int = 1; + +-pub const EDEADLK: ::c_int = 35; + pub const ENAMETOOLONG: ::c_int = 36; + pub const ENOLCK: ::c_int = 37; + pub const ENOSYS: ::c_int = 38; +@@ -194,7 +190,6 @@ pub const EXFULL: ::c_int = 54; + pub const ENOANO: ::c_int = 55; + pub const EBADRQC: ::c_int = 56; + pub const EBADSLT: ::c_int = 57; +-pub const EDEADLOCK: ::c_int = EDEADLK; + pub const EMULTIHOP: ::c_int = 72; + pub const EBADMSG: ::c_int = 74; + pub const EOVERFLOW: ::c_int = 75; +@@ -272,12 +267,6 @@ pub const SO_PRIORITY: ::c_int = 12; + pub const SO_LINGER: ::c_int = 13; + pub const SO_BSDCOMPAT: ::c_int = 14; + pub const SO_REUSEPORT: ::c_int = 15; +-pub const SO_PASSCRED: ::c_int = 16; +-pub const SO_PEERCRED: ::c_int = 17; +-pub const SO_RCVLOWAT: ::c_int = 18; +-pub const SO_SNDLOWAT: ::c_int = 19; +-pub const SO_RCVTIMEO: ::c_int = 20; +-pub const SO_SNDTIMEO: ::c_int = 21; + pub const SO_ACCEPTCONN: ::c_int = 30; + pub const SO_SNDBUFFORCE: ::c_int = 32; + pub const SO_RCVBUFFORCE: ::c_int = 33; +@@ -312,8 +301,6 @@ pub const SIG_SETMASK: ::c_int = 2; + pub const SIG_BLOCK: ::c_int = 0x000000; + pub const SIG_UNBLOCK: ::c_int = 0x01; + +-pub const EXTPROC: ::tcflag_t = 0x00010000; +- + pub const MAP_HUGETLB: ::c_int = 0x040000; + + pub const F_GETLK: ::c_int = 5; +@@ -323,59 +310,10 @@ pub const F_SETLKW: ::c_int = 7; + pub const F_SETOWN: ::c_int = 8; + + pub const VEOF: usize = 4; +-pub const VEOL: usize = 11; +-pub const VEOL2: usize = 16; +-pub const VMIN: usize = 6; +-pub const IEXTEN: ::tcflag_t = 0x00008000; +-pub const TOSTOP: ::tcflag_t = 0x00000100; +-pub const FLUSHO: ::tcflag_t = 0x00001000; +- +-pub const TCGETS: ::c_int = 0x5401; +-pub const TCSETS: ::c_int = 0x5402; +-pub const TCSETSW: ::c_int = 0x5403; +-pub const TCSETSF: ::c_int = 0x5404; +-pub const TCGETA: ::c_int = 0x5405; +-pub const TCSETA: ::c_int = 0x5406; +-pub const TCSETAW: ::c_int = 0x5407; +-pub const TCSETAF: ::c_int = 0x5408; +-pub const TCSBRK: ::c_int = 0x5409; +-pub const TCXONC: ::c_int = 0x540A; +-pub const TCFLSH: ::c_int = 0x540B; +-pub const TIOCGSOFTCAR: ::c_int = 0x5419; +-pub const TIOCSSOFTCAR: ::c_int = 0x541A; +-pub const TIOCLINUX: ::c_int = 0x541C; +-pub const TIOCGSERIAL: ::c_int = 0x541E; +-pub const TIOCEXCL: ::c_int = 0x540C; +-pub const TIOCNXCL: ::c_int = 0x540D; +-pub const TIOCSCTTY: ::c_int = 0x540E; +-pub const TIOCGPGRP: ::c_int = 0x540F; +-pub const TIOCSPGRP: ::c_int = 0x5410; +-pub const TIOCOUTQ: ::c_int = 0x5411; +-pub const TIOCSTI: ::c_int = 0x5412; +-pub const TIOCGWINSZ: ::c_int = 0x5413; +-pub const TIOCSWINSZ: ::c_int = 0x5414; +-pub const TIOCMGET: ::c_int = 0x5415; +-pub const TIOCMBIS: ::c_int = 0x5416; +-pub const TIOCMBIC: ::c_int = 0x5417; +-pub const TIOCMSET: ::c_int = 0x5418; +-pub const FIONREAD: ::c_int = 0x541B; +-pub const TIOCCONS: ::c_int = 0x541D; + + pub const POLLWRNORM: ::c_short = 0x100; + pub const POLLWRBAND: ::c_short = 0x200; + +-pub const TIOCM_LE: ::c_int = 0x001; +-pub const TIOCM_DTR: ::c_int = 0x002; +-pub const TIOCM_RTS: ::c_int = 0x004; +-pub const TIOCM_ST: ::c_int = 0x008; +-pub const TIOCM_SR: ::c_int = 0x010; +-pub const TIOCM_CTS: ::c_int = 0x020; +-pub const TIOCM_CAR: ::c_int = 0x040; +-pub const TIOCM_RNG: ::c_int = 0x080; +-pub const TIOCM_DSR: ::c_int = 0x100; +-pub const TIOCM_CD: ::c_int = TIOCM_CAR; +-pub const TIOCM_RI: ::c_int = TIOCM_RNG; +- + cfg_if! { + if #[cfg(target_arch = "aarch64")] { + mod aarch64; +diff --git a/src/vendor/libc/src/unix/notbsd/linux/musl/b64/powerpc64.rs b/src/vendor/libc/src/unix/notbsd/linux/musl/b64/powerpc64.rs +index 621f9f4ce79..2ac39bf0cd5 100644 +--- a/src/vendor/libc/src/unix/notbsd/linux/musl/b64/powerpc64.rs ++++ b/src/vendor/libc/src/unix/notbsd/linux/musl/b64/powerpc64.rs +@@ -60,22 +60,17 @@ s! { + } + } + +-pub const SYS_pivot_root: ::c_long = 203; +-pub const SYS_gettid: ::c_long = 207; +-pub const SYS_perf_event_open: ::c_long = 319; +-pub const SYS_memfd_create: ::c_long = 360; +- + pub const MAP_32BIT: ::c_int = 0x0040; +-pub const O_DIRECT: ::c_int = 0x4000; +-pub const O_DIRECTORY: ::c_int = 0x10000; +-pub const O_LARGEFILE: ::c_int = 0; +-pub const O_NOFOLLOW: ::c_int = 0x20000; ++pub const O_DIRECT: ::c_int = 0x20000; ++pub const O_DIRECTORY: ::c_int = 0x4000; ++pub const O_LARGEFILE: ::c_int = 0x10000; ++pub const O_NOFOLLOW: ::c_int = 0x8000; + +-pub const SIGSTKSZ: ::size_t = 8192; +-pub const MINSIGSTKSZ: ::size_t = 2048; ++pub const SIGSTKSZ: ::size_t = 10240; ++pub const MINSIGSTKSZ: ::size_t = 4096; + + #[doc(hidden)] +-pub const AF_MAX: ::c_int = 42; ++pub const AF_MAX: ::c_int = 43; + #[doc(hidden)] + pub const PF_MAX: ::c_int = AF_MAX; + +@@ -439,3 +434,139 @@ pub const SYS_copy_file_range: ::c_long = 379; + pub const SYS_preadv2: ::c_long = 380; + pub const SYS_pwritev2: ::c_long = 381; + pub const SYS_kexec_file_load: ::c_long = 382; ++ ++pub const FIOCLEX: ::c_ulong = 0x20006601; ++pub const FIONBIO: ::c_ulong = 0x8004667e; ++pub const EDEADLK: ::c_int = 58; ++pub const EDEADLOCK: ::c_int = EDEADLK; ++pub const SO_PASSCRED: ::c_int = 20; ++pub const SO_PEERCRED: ::c_int = 21; ++pub const SO_RCVLOWAT: ::c_int = 16; ++pub const SO_SNDLOWAT: ::c_int = 17; ++pub const SO_RCVTIMEO: ::c_int = 18; ++pub const SO_SNDTIMEO: ::c_int = 19; ++pub const EXTPROC: ::tcflag_t = 0x10000000; ++pub const VEOL: usize = 6; ++pub const VEOL2: usize = 8; ++pub const VMIN: usize = 5; ++pub const IEXTEN: ::tcflag_t = 0x00000400; ++pub const TOSTOP: ::tcflag_t = 0x00400000; ++pub const FLUSHO: ::tcflag_t = 0x00800000; ++pub const TCGETS: ::c_ulong = 0x403c7413; ++pub const TCSETS: ::c_ulong = 0x803c7414; ++pub const TCSETSW: ::c_ulong = 0x803c7415; ++pub const TCSETSF: ::c_ulong = 0x803c7416; ++pub const TCGETA: ::c_ulong = 0x40147417; ++pub const TCSETA: ::c_ulong = 0x80147418; ++pub const TCSETAW: ::c_ulong = 0x80147419; ++pub const TCSETAF: ::c_ulong = 0x8014741c; ++pub const TCSBRK: ::c_ulong = 0x2000741d; ++pub const TCXONC: ::c_ulong = 0x2000741e; ++pub const TCFLSH: ::c_ulong = 0x2000741f; ++pub const TIOCGSOFTCAR: ::c_ulong = 0x5419; ++pub const TIOCSSOFTCAR: ::c_ulong = 0x541A; ++pub const TIOCLINUX: ::c_ulong = 0x541C; ++pub const TIOCGSERIAL: ::c_ulong = 0x541E; ++pub const TIOCEXCL: ::c_ulong = 0x540C; ++pub const TIOCNXCL: ::c_ulong = 0x540D; ++pub const TIOCSCTTY: ::c_ulong = 0x540E; ++pub const TIOCGPGRP: ::c_ulong = 0x40047477; ++pub const TIOCSPGRP: ::c_ulong = 0x80047476; ++pub const TIOCOUTQ: ::c_ulong = 0x40047473; ++pub const TIOCGWINSZ: ::c_ulong = 0x40087468; ++pub const TIOCSWINSZ: ::c_ulong = 0x80087467; ++pub const TIOCMGET: ::c_ulong = 0x5415; ++pub const TIOCMBIS: ::c_ulong = 0x5416; ++pub const TIOCMBIC: ::c_ulong = 0x5417; ++pub const TIOCMSET: ::c_ulong = 0x5418; ++pub const FIONREAD: ::c_ulong = 0x4004667f; ++pub const TIOCCONS: ::c_ulong = 0x541D; ++pub const TIOCM_LE: ::c_ulong = 0x001; ++pub const TIOCM_DTR: ::c_ulong = 0x002; ++pub const TIOCM_RTS: ::c_ulong = 0x004; ++pub const TIOCM_ST: ::c_ulong = 0x008; ++pub const TIOCM_SR: ::c_ulong = 0x010; ++pub const TIOCM_CTS: ::c_ulong = 0x020; ++pub const TIOCM_CAR: ::c_ulong = 0x040; ++pub const TIOCM_RNG: ::c_ulong = 0x080; ++pub const TIOCM_DSR: ::c_ulong = 0x100; ++pub const TIOCM_CD: ::c_ulong = TIOCM_CAR; ++pub const TIOCM_RI: ::c_ulong = TIOCM_RNG; ++ ++pub const RLIMIT_NLIMITS: ::c_int = 15; ++pub const TIOCINQ: ::c_ulong = ::FIONREAD; ++pub const MCL_CURRENT: ::c_int = 0x2000; ++pub const MCL_FUTURE: ::c_int = 0x4000; ++pub const CBAUD: ::tcflag_t = 0xff; ++pub const TAB1: ::c_int = 0x400; ++pub const TAB2: ::c_int = 0x800; ++pub const TAB3: ::c_int = 0xc00; ++pub const CR1: ::c_int = 0x1000; ++pub const CR2: ::c_int = 0x2000; ++pub const CR3: ::c_int = 0x3000; ++pub const FF1: ::c_int = 0x4000; ++pub const BS1: ::c_int = 0x8000; ++pub const VT1: ::c_int = 0x10000; ++pub const VWERASE: usize = 10; ++pub const VREPRINT: usize = 11; ++pub const VSUSP: usize = 12; ++pub const VSTART: usize = 13; ++pub const VSTOP: usize = 14; ++pub const VDISCARD: usize = 16; ++pub const VTIME: usize = 7; ++pub const IXON: ::tcflag_t = 0x00000200; ++pub const IXOFF: ::tcflag_t = 0x00000400; ++pub const ONLCR: ::tcflag_t = 0x2; ++pub const CSIZE: ::tcflag_t = 0x00000300; ++ ++pub const CS6: ::tcflag_t = 0x00000100; ++pub const CS7: ::tcflag_t = 0x00000200; ++pub const CS8: ::tcflag_t = 0x00000300; ++pub const CSTOPB: ::tcflag_t = 0x00000400; ++pub const CREAD: ::tcflag_t = 0x00000800; ++pub const PARENB: ::tcflag_t = 0x00001000; ++pub const PARODD: ::tcflag_t = 0x00002000; ++pub const HUPCL: ::tcflag_t = 0x00004000; ++pub const CLOCAL: ::tcflag_t = 0x00008000; ++pub const ECHOKE: ::tcflag_t = 0x00000001; ++pub const ECHOE: ::tcflag_t = 0x00000002; ++pub const ECHOK: ::tcflag_t = 0x00000004; ++pub const ECHONL: ::tcflag_t = 0x00000010; ++pub const ECHOPRT: ::tcflag_t = 0x00000020; ++pub const ECHOCTL: ::tcflag_t = 0x00000040; ++pub const ISIG: ::tcflag_t = 0x00000080; ++pub const ICANON: ::tcflag_t = 0x00000100; ++pub const PENDIN: ::tcflag_t = 0x20000000; ++pub const NOFLSH: ::tcflag_t = 0x80000000; ++ ++pub const CIBAUD: ::tcflag_t = 0o77600000; ++pub const CBAUDEX: ::tcflag_t = 0o0000020; ++pub const VSWTC: usize = 9; ++pub const OLCUC: ::tcflag_t = 0o000004; ++pub const NLDLY: ::tcflag_t = 0o0001400; ++pub const CRDLY: ::tcflag_t = 0o0030000; ++pub const TABDLY: ::tcflag_t = 0o0006000; ++pub const BSDLY: ::tcflag_t = 0o0100000; ++pub const FFDLY: ::tcflag_t = 0o0040000; ++pub const VTDLY: ::tcflag_t = 0o0200000; ++pub const XTABS: ::tcflag_t = 0o00006000; ++ ++pub const B57600: ::speed_t = 0o00020; ++pub const B115200: ::speed_t = 0o00021; ++pub const B230400: ::speed_t = 0o00022; ++pub const B460800: ::speed_t = 0o00023; ++pub const B500000: ::speed_t = 0o00024; ++pub const B576000: ::speed_t = 0o00025; ++pub const B921600: ::speed_t = 0o00026; ++pub const B1000000: ::speed_t = 0o00027; ++pub const B1152000: ::speed_t = 0o00030; ++pub const B1500000: ::speed_t = 0o00031; ++pub const B2000000: ::speed_t = 0o00032; ++pub const B2500000: ::speed_t = 0o00033; ++pub const B3000000: ::speed_t = 0o00034; ++pub const B3500000: ::speed_t = 0o00035; ++pub const B4000000: ::speed_t = 0o00036; ++ ++extern { ++ pub fn ioctl(fd: ::c_int, request: ::c_ulong, ...) -> ::c_int; ++} +diff --git a/src/vendor/libc/src/unix/notbsd/linux/musl/b64/x86_64.rs b/src/vendor/libc/src/unix/notbsd/linux/musl/b64/x86_64.rs +index 78d38e49e8f..0e0fcec4d2e 100644 +--- a/src/vendor/libc/src/unix/notbsd/linux/musl/b64/x86_64.rs ++++ b/src/vendor/libc/src/unix/notbsd/linux/musl/b64/x86_64.rs +@@ -449,3 +449,139 @@ pub const MINSIGSTKSZ: ::size_t = 2048; + pub const AF_MAX: ::c_int = 42; + #[doc(hidden)] + pub const PF_MAX: ::c_int = AF_MAX; ++ ++pub const RLIMIT_NLIMITS: ::c_int = 16; ++pub const TIOCINQ: ::c_int = ::FIONREAD; ++pub const MCL_CURRENT: ::c_int = 0x0001; ++pub const MCL_FUTURE: ::c_int = 0x0002; ++pub const CBAUD: ::tcflag_t = 0o0010017; ++pub const TAB1: ::c_int = 0x00000800; ++pub const TAB2: ::c_int = 0x00001000; ++pub const TAB3: ::c_int = 0x00001800; ++pub const CR1: ::c_int = 0x00000200; ++pub const CR2: ::c_int = 0x00000400; ++pub const CR3: ::c_int = 0x00000600; ++pub const FF1: ::c_int = 0x00008000; ++pub const BS1: ::c_int = 0x00002000; ++pub const VT1: ::c_int = 0x00004000; ++pub const VWERASE: usize = 14; ++pub const VREPRINT: usize = 12; ++pub const VSUSP: usize = 10; ++pub const VSTART: usize = 8; ++pub const VSTOP: usize = 9; ++pub const VDISCARD: usize = 13; ++pub const VTIME: usize = 5; ++pub const IXON: ::tcflag_t = 0x00000400; ++pub const IXOFF: ::tcflag_t = 0x00001000; ++pub const ONLCR: ::tcflag_t = 0x4; ++pub const CSIZE: ::tcflag_t = 0x00000030; ++pub const CS6: ::tcflag_t = 0x00000010; ++pub const CS7: ::tcflag_t = 0x00000020; ++pub const CS8: ::tcflag_t = 0x00000030; ++pub const CSTOPB: ::tcflag_t = 0x00000040; ++pub const CREAD: ::tcflag_t = 0x00000080; ++pub const PARENB: ::tcflag_t = 0x00000100; ++pub const PARODD: ::tcflag_t = 0x00000200; ++pub const HUPCL: ::tcflag_t = 0x00000400; ++pub const CLOCAL: ::tcflag_t = 0x00000800; ++pub const ECHOKE: ::tcflag_t = 0x00000800; ++pub const ECHOE: ::tcflag_t = 0x00000010; ++pub const ECHOK: ::tcflag_t = 0x00000020; ++pub const ECHONL: ::tcflag_t = 0x00000040; ++pub const ECHOPRT: ::tcflag_t = 0x00000400; ++pub const ECHOCTL: ::tcflag_t = 0x00000200; ++pub const ISIG: ::tcflag_t = 0x00000001; ++pub const ICANON: ::tcflag_t = 0x00000002; ++pub const PENDIN: ::tcflag_t = 0x00004000; ++pub const NOFLSH: ::tcflag_t = 0x00000080; ++pub const CIBAUD: ::tcflag_t = 0o02003600000; ++pub const CBAUDEX: ::tcflag_t = 0o010000; ++pub const VSWTC: usize = 7; ++pub const OLCUC: ::tcflag_t = 0o000002; ++pub const NLDLY: ::tcflag_t = 0o000400; ++pub const CRDLY: ::tcflag_t = 0o003000; ++pub const TABDLY: ::tcflag_t = 0o014000; ++pub const BSDLY: ::tcflag_t = 0o020000; ++pub const FFDLY: ::tcflag_t = 0o100000; ++pub const VTDLY: ::tcflag_t = 0o040000; ++pub const XTABS: ::tcflag_t = 0o014000; ++pub const B57600: ::speed_t = 0o010001; ++pub const B115200: ::speed_t = 0o010002; ++pub const B230400: ::speed_t = 0o010003; ++pub const B460800: ::speed_t = 0o010004; ++pub const B500000: ::speed_t = 0o010005; ++pub const B576000: ::speed_t = 0o010006; ++pub const B921600: ::speed_t = 0o010007; ++pub const B1000000: ::speed_t = 0o010010; ++pub const B1152000: ::speed_t = 0o010011; ++pub const B1500000: ::speed_t = 0o010012; ++pub const B2000000: ::speed_t = 0o010013; ++pub const B2500000: ::speed_t = 0o010014; ++pub const B3000000: ::speed_t = 0o010015; ++pub const B3500000: ::speed_t = 0o010016; ++pub const B4000000: ::speed_t = 0o010017; ++ ++pub const FIOCLEX: ::c_int = 0x5451; ++pub const FIONBIO: ::c_int = 0x5421; ++pub const EDEADLK: ::c_int = 35; ++pub const EDEADLOCK: ::c_int = EDEADLK; ++pub const SO_PASSCRED: ::c_int = 16; ++pub const SO_PEERCRED: ::c_int = 17; ++pub const SO_RCVLOWAT: ::c_int = 18; ++pub const SO_SNDLOWAT: ::c_int = 19; ++pub const SO_RCVTIMEO: ::c_int = 20; ++pub const SO_SNDTIMEO: ::c_int = 21; ++pub const EXTPROC: ::tcflag_t = 0x00010000; ++pub const VEOL: usize = 11; ++pub const VEOL2: usize = 16; ++pub const VMIN: usize = 6; ++pub const IEXTEN: ::tcflag_t = 0x00008000; ++pub const TOSTOP: ::tcflag_t = 0x00000100; ++pub const FLUSHO: ::tcflag_t = 0x00001000; ++pub const TCGETS: ::c_int = 0x5401; ++pub const TCSETS: ::c_int = 0x5402; ++pub const TCSETSW: ::c_int = 0x5403; ++pub const TCSETSF: ::c_int = 0x5404; ++pub const TCGETA: ::c_int = 0x5405; ++pub const TCSETA: ::c_int = 0x5406; ++pub const TCSETAW: ::c_int = 0x5407; ++pub const TCSETAF: ::c_int = 0x5408; ++pub const TCSBRK: ::c_int = 0x5409; ++pub const TCXONC: ::c_int = 0x540A; ++pub const TCFLSH: ::c_int = 0x540B; ++pub const TIOCGSOFTCAR: ::c_int = 0x5419; ++pub const TIOCSSOFTCAR: ::c_int = 0x541A; ++pub const TIOCLINUX: ::c_int = 0x541C; ++pub const TIOCGSERIAL: ::c_int = 0x541E; ++pub const TIOCEXCL: ::c_int = 0x540C; ++pub const TIOCNXCL: ::c_int = 0x540D; ++pub const TIOCSCTTY: ::c_int = 0x540E; ++pub const TIOCGPGRP: ::c_int = 0x540F; ++pub const TIOCSPGRP: ::c_int = 0x5410; ++pub const TIOCOUTQ: ::c_int = 0x5411; ++pub const TIOCSTI: ::c_int = 0x5412; ++pub const TIOCGWINSZ: ::c_int = 0x5413; ++pub const TIOCSWINSZ: ::c_int = 0x5414; ++pub const TIOCMGET: ::c_int = 0x5415; ++pub const TIOCMBIS: ::c_int = 0x5416; ++pub const TIOCMBIC: ::c_int = 0x5417; ++pub const TIOCMSET: ::c_int = 0x5418; ++pub const FIONREAD: ::c_int = 0x541B; ++pub const TIOCCONS: ::c_int = 0x541D; ++ ++pub const TIOCM_LE: ::c_int = 0x001; ++pub const TIOCM_DTR: ::c_int = 0x002; ++pub const TIOCM_RTS: ::c_int = 0x004; ++pub const TIOCM_ST: ::c_int = 0x008; ++pub const TIOCM_SR: ::c_int = 0x010; ++pub const TIOCM_CTS: ::c_int = 0x020; ++pub const TIOCM_CAR: ::c_int = 0x040; ++pub const TIOCM_RNG: ::c_int = 0x080; ++pub const TIOCM_DSR: ::c_int = 0x100; ++pub const TIOCM_CD: ::c_int = TIOCM_CAR; ++pub const TIOCM_RI: ::c_int = TIOCM_RNG; ++ ++extern { ++ pub fn ioctl(fd: ::c_int, request: ::c_int, ...) -> ::c_int; ++} ++ +diff --git a/src/vendor/libc/src/unix/notbsd/linux/musl/mod.rs b/src/vendor/libc/src/unix/notbsd/linux/musl/mod.rs +index 9a63d1f7330..0d92a4b9d14 100644 +--- a/src/vendor/libc/src/unix/notbsd/linux/musl/mod.rs ++++ b/src/vendor/libc/src/unix/notbsd/linux/musl/mod.rs +@@ -147,7 +147,6 @@ pub const POSIX_MADV_DONTNEED: ::c_int = 4; + + pub const RLIM_INFINITY: ::rlim_t = !0; + pub const RLIMIT_RTTIME: ::c_int = 15; +-pub const RLIMIT_NLIMITS: ::c_int = 16; + + pub const MAP_ANONYMOUS: ::c_int = MAP_ANON; + +@@ -213,8 +212,6 @@ pub const TCSANOW: ::c_int = 0; + pub const TCSADRAIN: ::c_int = 1; + pub const TCSAFLUSH: ::c_int = 2; + +-pub const TIOCINQ: ::c_int = ::FIONREAD; +- + pub const RTLD_GLOBAL: ::c_int = 0x100; + pub const RTLD_NOLOAD: ::c_int = 0x4; + +@@ -223,61 +220,6 @@ pub const RTLD_NOLOAD: ::c_int = 0x4; + pub const CLOCK_SGI_CYCLE: ::clockid_t = 10; + pub const CLOCK_TAI: ::clockid_t = 11; + +-pub const MCL_CURRENT: ::c_int = 0x0001; +-pub const MCL_FUTURE: ::c_int = 0x0002; +- +-pub const CBAUD: ::tcflag_t = 0o0010017; +-pub const TAB1: ::c_int = 0x00000800; +-pub const TAB2: ::c_int = 0x00001000; +-pub const TAB3: ::c_int = 0x00001800; +-pub const CR1: ::c_int = 0x00000200; +-pub const CR2: ::c_int = 0x00000400; +-pub const CR3: ::c_int = 0x00000600; +-pub const FF1: ::c_int = 0x00008000; +-pub const BS1: ::c_int = 0x00002000; +-pub const VT1: ::c_int = 0x00004000; +-pub const VWERASE: usize = 14; +-pub const VREPRINT: usize = 12; +-pub const VSUSP: usize = 10; +-pub const VSTART: usize = 8; +-pub const VSTOP: usize = 9; +-pub const VDISCARD: usize = 13; +-pub const VTIME: usize = 5; +-pub const IXON: ::tcflag_t = 0x00000400; +-pub const IXOFF: ::tcflag_t = 0x00001000; +-pub const ONLCR: ::tcflag_t = 0x4; +-pub const CSIZE: ::tcflag_t = 0x00000030; +-pub const CS6: ::tcflag_t = 0x00000010; +-pub const CS7: ::tcflag_t = 0x00000020; +-pub const CS8: ::tcflag_t = 0x00000030; +-pub const CSTOPB: ::tcflag_t = 0x00000040; +-pub const CREAD: ::tcflag_t = 0x00000080; +-pub const PARENB: ::tcflag_t = 0x00000100; +-pub const PARODD: ::tcflag_t = 0x00000200; +-pub const HUPCL: ::tcflag_t = 0x00000400; +-pub const CLOCAL: ::tcflag_t = 0x00000800; +-pub const ECHOKE: ::tcflag_t = 0x00000800; +-pub const ECHOE: ::tcflag_t = 0x00000010; +-pub const ECHOK: ::tcflag_t = 0x00000020; +-pub const ECHONL: ::tcflag_t = 0x00000040; +-pub const ECHOPRT: ::tcflag_t = 0x00000400; +-pub const ECHOCTL: ::tcflag_t = 0x00000200; +-pub const ISIG: ::tcflag_t = 0x00000001; +-pub const ICANON: ::tcflag_t = 0x00000002; +-pub const PENDIN: ::tcflag_t = 0x00004000; +-pub const NOFLSH: ::tcflag_t = 0x00000080; +-pub const CIBAUD: ::tcflag_t = 0o02003600000; +-pub const CBAUDEX: ::tcflag_t = 0o010000; +-pub const VSWTC: usize = 7; +-pub const OLCUC: ::tcflag_t = 0o000002; +-pub const NLDLY: ::tcflag_t = 0o000400; +-pub const CRDLY: ::tcflag_t = 0o003000; +-pub const TABDLY: ::tcflag_t = 0o014000; +-pub const BSDLY: ::tcflag_t = 0o020000; +-pub const FFDLY: ::tcflag_t = 0o100000; +-pub const VTDLY: ::tcflag_t = 0o040000; +-pub const XTABS: ::tcflag_t = 0o014000; +- + pub const B0: ::speed_t = 0o000000; + pub const B50: ::speed_t = 0o000001; + pub const B75: ::speed_t = 0o000002; +@@ -296,21 +238,6 @@ pub const B19200: ::speed_t = 0o000016; + pub const B38400: ::speed_t = 0o000017; + pub const EXTA: ::speed_t = B19200; + pub const EXTB: ::speed_t = B38400; +-pub const B57600: ::speed_t = 0o010001; +-pub const B115200: ::speed_t = 0o010002; +-pub const B230400: ::speed_t = 0o010003; +-pub const B460800: ::speed_t = 0o010004; +-pub const B500000: ::speed_t = 0o010005; +-pub const B576000: ::speed_t = 0o010006; +-pub const B921600: ::speed_t = 0o010007; +-pub const B1000000: ::speed_t = 0o010010; +-pub const B1152000: ::speed_t = 0o010011; +-pub const B1500000: ::speed_t = 0o010012; +-pub const B2000000: ::speed_t = 0o010013; +-pub const B2500000: ::speed_t = 0o010014; +-pub const B3000000: ::speed_t = 0o010015; +-pub const B3500000: ::speed_t = 0o010016; +-pub const B4000000: ::speed_t = 0o010017; + + pub const SO_BINDTODEVICE: ::c_int = 25; + pub const SO_TIMESTAMP: ::c_int = 29; +@@ -320,7 +247,6 @@ pub const SO_PEEK_OFF: ::c_int = 42; + pub const SO_BUSY_POLL: ::c_int = 46; + + extern { +- pub fn ioctl(fd: ::c_int, request: ::c_int, ...) -> ::c_int; + pub fn ptrace(request: ::c_int, ...) -> ::c_long; + pub fn getpriority(which: ::c_int, who: ::id_t) -> ::c_int; + pub fn setpriority(which: ::c_int, who: ::id_t, prio: ::c_int) -> ::c_int; diff --git a/user/rust/0033-libc-90c01fa6b0f4.patch b/user/rust/0033-libc-90c01fa6b0f4.patch new file mode 100644 index 000000000..5e73c780e --- /dev/null +++ b/user/rust/0033-libc-90c01fa6b0f4.patch @@ -0,0 +1,162 @@ +From 90c01fa6b0f45c63dc19aa75cd39b38d2de5e98b Mon Sep 17 00:00:00 2001 +From: est31 <MTest31@outlook.com> +Date: Sun, 1 Jul 2018 09:25:11 +0200 +Subject: [PATCH] Re-add aarch64 stuff removed by previous commit + +Previous commit + +dcff154781e4b3c6ef3a6a4024c73631f52f48cb +"libc: changes to ppc64le musl branch to support building of rust on Alpine" + +has removed stuff from mod.rs and added it to some submodules, but +missed the aarch64 submodule. + +This copies the stuff that that commit added to the x86_64.rs submodule +and puts it into aarch64.rs. +--- + src/unix/notbsd/linux/musl/b64/aarch64.rs | 135 ++++++++++++++++++++++ + 1 file changed, 135 insertions(+) + +diff --git a/src/vendor/libc/src/unix/notbsd/linux/musl/b64/aarch64.rs b/src/vendor/libc/src/unix/notbsd/linux/musl/b64/aarch64.rs +index da0827a7750..98c53dc4f2b 100644 +--- a/src/vendor/libc/src/unix/notbsd/linux/musl/b64/aarch64.rs ++++ b/src/vendor/libc/src/unix/notbsd/linux/musl/b64/aarch64.rs +@@ -339,3 +339,138 @@ pub const SYS_pwritev2: ::c_long = 287; + pub const SYS_pkey_mprotect: ::c_long = 288; + pub const SYS_pkey_alloc: ::c_long = 289; + pub const SYS_pkey_free: ::c_long = 290; ++ ++pub const RLIMIT_NLIMITS: ::c_int = 16; ++pub const TIOCINQ: ::c_int = ::FIONREAD; ++pub const MCL_CURRENT: ::c_int = 0x0001; ++pub const MCL_FUTURE: ::c_int = 0x0002; ++pub const CBAUD: ::tcflag_t = 0o0010017; ++pub const TAB1: ::c_int = 0x00000800; ++pub const TAB2: ::c_int = 0x00001000; ++pub const TAB3: ::c_int = 0x00001800; ++pub const CR1: ::c_int = 0x00000200; ++pub const CR2: ::c_int = 0x00000400; ++pub const CR3: ::c_int = 0x00000600; ++pub const FF1: ::c_int = 0x00008000; ++pub const BS1: ::c_int = 0x00002000; ++pub const VT1: ::c_int = 0x00004000; ++pub const VWERASE: usize = 14; ++pub const VREPRINT: usize = 12; ++pub const VSUSP: usize = 10; ++pub const VSTART: usize = 8; ++pub const VSTOP: usize = 9; ++pub const VDISCARD: usize = 13; ++pub const VTIME: usize = 5; ++pub const IXON: ::tcflag_t = 0x00000400; ++pub const IXOFF: ::tcflag_t = 0x00001000; ++pub const ONLCR: ::tcflag_t = 0x4; ++pub const CSIZE: ::tcflag_t = 0x00000030; ++pub const CS6: ::tcflag_t = 0x00000010; ++pub const CS7: ::tcflag_t = 0x00000020; ++pub const CS8: ::tcflag_t = 0x00000030; ++pub const CSTOPB: ::tcflag_t = 0x00000040; ++pub const CREAD: ::tcflag_t = 0x00000080; ++pub const PARENB: ::tcflag_t = 0x00000100; ++pub const PARODD: ::tcflag_t = 0x00000200; ++pub const HUPCL: ::tcflag_t = 0x00000400; ++pub const CLOCAL: ::tcflag_t = 0x00000800; ++pub const ECHOKE: ::tcflag_t = 0x00000800; ++pub const ECHOE: ::tcflag_t = 0x00000010; ++pub const ECHOK: ::tcflag_t = 0x00000020; ++pub const ECHONL: ::tcflag_t = 0x00000040; ++pub const ECHOPRT: ::tcflag_t = 0x00000400; ++pub const ECHOCTL: ::tcflag_t = 0x00000200; ++pub const ISIG: ::tcflag_t = 0x00000001; ++pub const ICANON: ::tcflag_t = 0x00000002; ++pub const PENDIN: ::tcflag_t = 0x00004000; ++pub const NOFLSH: ::tcflag_t = 0x00000080; ++pub const CIBAUD: ::tcflag_t = 0o02003600000; ++pub const CBAUDEX: ::tcflag_t = 0o010000; ++pub const VSWTC: usize = 7; ++pub const OLCUC: ::tcflag_t = 0o000002; ++pub const NLDLY: ::tcflag_t = 0o000400; ++pub const CRDLY: ::tcflag_t = 0o003000; ++pub const TABDLY: ::tcflag_t = 0o014000; ++pub const BSDLY: ::tcflag_t = 0o020000; ++pub const FFDLY: ::tcflag_t = 0o100000; ++pub const VTDLY: ::tcflag_t = 0o040000; ++pub const XTABS: ::tcflag_t = 0o014000; ++pub const B57600: ::speed_t = 0o010001; ++pub const B115200: ::speed_t = 0o010002; ++pub const B230400: ::speed_t = 0o010003; ++pub const B460800: ::speed_t = 0o010004; ++pub const B500000: ::speed_t = 0o010005; ++pub const B576000: ::speed_t = 0o010006; ++pub const B921600: ::speed_t = 0o010007; ++pub const B1000000: ::speed_t = 0o010010; ++pub const B1152000: ::speed_t = 0o010011; ++pub const B1500000: ::speed_t = 0o010012; ++pub const B2000000: ::speed_t = 0o010013; ++pub const B2500000: ::speed_t = 0o010014; ++pub const B3000000: ::speed_t = 0o010015; ++pub const B3500000: ::speed_t = 0o010016; ++pub const B4000000: ::speed_t = 0o010017; ++ ++pub const FIOCLEX: ::c_int = 0x5451; ++pub const FIONBIO: ::c_int = 0x5421; ++pub const EDEADLK: ::c_int = 35; ++pub const EDEADLOCK: ::c_int = EDEADLK; ++pub const SO_PASSCRED: ::c_int = 16; ++pub const SO_PEERCRED: ::c_int = 17; ++pub const SO_RCVLOWAT: ::c_int = 18; ++pub const SO_SNDLOWAT: ::c_int = 19; ++pub const SO_RCVTIMEO: ::c_int = 20; ++pub const SO_SNDTIMEO: ::c_int = 21; ++pub const EXTPROC: ::tcflag_t = 0x00010000; ++pub const VEOL: usize = 11; ++pub const VEOL2: usize = 16; ++pub const VMIN: usize = 6; ++pub const IEXTEN: ::tcflag_t = 0x00008000; ++pub const TOSTOP: ::tcflag_t = 0x00000100; ++pub const FLUSHO: ::tcflag_t = 0x00001000; ++pub const TCGETS: ::c_int = 0x5401; ++pub const TCSETS: ::c_int = 0x5402; ++pub const TCSETSW: ::c_int = 0x5403; ++pub const TCSETSF: ::c_int = 0x5404; ++pub const TCGETA: ::c_int = 0x5405; ++pub const TCSETA: ::c_int = 0x5406; ++pub const TCSETAW: ::c_int = 0x5407; ++pub const TCSETAF: ::c_int = 0x5408; ++pub const TCSBRK: ::c_int = 0x5409; ++pub const TCXONC: ::c_int = 0x540A; ++pub const TCFLSH: ::c_int = 0x540B; ++pub const TIOCGSOFTCAR: ::c_int = 0x5419; ++pub const TIOCSSOFTCAR: ::c_int = 0x541A; ++pub const TIOCLINUX: ::c_int = 0x541C; ++pub const TIOCGSERIAL: ::c_int = 0x541E; ++pub const TIOCEXCL: ::c_int = 0x540C; ++pub const TIOCNXCL: ::c_int = 0x540D; ++pub const TIOCSCTTY: ::c_int = 0x540E; ++pub const TIOCGPGRP: ::c_int = 0x540F; ++pub const TIOCSPGRP: ::c_int = 0x5410; ++pub const TIOCOUTQ: ::c_int = 0x5411; ++pub const TIOCSTI: ::c_int = 0x5412; ++pub const TIOCGWINSZ: ::c_int = 0x5413; ++pub const TIOCSWINSZ: ::c_int = 0x5414; ++pub const TIOCMGET: ::c_int = 0x5415; ++pub const TIOCMBIS: ::c_int = 0x5416; ++pub const TIOCMBIC: ::c_int = 0x5417; ++pub const TIOCMSET: ::c_int = 0x5418; ++pub const FIONREAD: ::c_int = 0x541B; ++pub const TIOCCONS: ::c_int = 0x541D; ++ ++pub const TIOCM_LE: ::c_int = 0x001; ++pub const TIOCM_DTR: ::c_int = 0x002; ++pub const TIOCM_RTS: ::c_int = 0x004; ++pub const TIOCM_ST: ::c_int = 0x008; ++pub const TIOCM_SR: ::c_int = 0x010; ++pub const TIOCM_CTS: ::c_int = 0x020; ++pub const TIOCM_CAR: ::c_int = 0x040; ++pub const TIOCM_RNG: ::c_int = 0x080; ++pub const TIOCM_DSR: ::c_int = 0x100; ++pub const TIOCM_CD: ::c_int = TIOCM_CAR; ++pub const TIOCM_RI: ::c_int = TIOCM_RNG; ++ ++extern { ++ pub fn ioctl(fd: ::c_int, request: ::c_int, ...) -> ::c_int; ++} diff --git a/user/rust/0034-libc-0163a7ce20b5.patch b/user/rust/0034-libc-0163a7ce20b5.patch new file mode 100644 index 000000000..3a6e6da3b --- /dev/null +++ b/user/rust/0034-libc-0163a7ce20b5.patch @@ -0,0 +1,1343 @@ +From 0163a7ce20b5f4c8d8f725811e48e1f268b0253e Mon Sep 17 00:00:00 2001 +From: Marek Benc <dusxmt@gmx.com> +Date: Thu, 5 Jul 2018 15:51:38 +0200 +Subject: [PATCH] Add linux musl powerpc (32-bit) support + +--- + src/unix/notbsd/linux/musl/b32/arm.rs | 85 +++ + src/unix/notbsd/linux/musl/b32/mips.rs | 85 +++ + src/unix/notbsd/linux/musl/b32/mod.rs | 88 +-- + src/unix/notbsd/linux/musl/b32/powerpc.rs | 866 ++++++++++++++++++++++ + src/unix/notbsd/linux/musl/b32/x86.rs | 85 +++ + src/unix/notbsd/linux/musl/mod.rs | 3 +- + 6 files changed, 1127 insertions(+), 85 deletions(-) + create mode 100644 src/unix/notbsd/linux/musl/b32/powerpc.rs + +diff --git a/src/vendor/libc/src/unix/notbsd/linux/musl/b32/arm.rs b/src/vendor/libc/src/unix/notbsd/linux/musl/b32/arm.rs +index 22bf16c1fda..20fa33a3f77 100644 +--- a/src/vendor/libc/src/unix/notbsd/linux/musl/b32/arm.rs ++++ b/src/vendor/libc/src/unix/notbsd/linux/musl/b32/arm.rs +@@ -52,6 +52,18 @@ s! { + pub ss_size: ::size_t + } + ++ pub struct ipc_perm { ++ pub __ipc_perm_key: ::key_t, ++ pub uid: ::uid_t, ++ pub gid: ::gid_t, ++ pub cuid: ::uid_t, ++ pub cgid: ::gid_t, ++ pub mode: ::mode_t, ++ pub __seq: ::c_int, ++ __unused1: ::c_long, ++ __unused2: ::c_long ++ } ++ + pub struct shmid_ds { + pub shm_perm: ::ipc_perm, + pub shm_segsz: ::size_t, +@@ -151,6 +163,9 @@ s! { + } + } + ++pub const SIGSTKSZ: ::size_t = 8192; ++pub const MINSIGSTKSZ: ::size_t = 2048; ++ + pub const O_DIRECT: ::c_int = 0x10000; + pub const O_DIRECTORY: ::c_int = 0x4000; + pub const O_NOFOLLOW: ::c_int = 0x8000; +@@ -165,6 +180,76 @@ pub const RLIMIT_NOFILE: ::c_int = 7; + pub const RLIMIT_AS: ::c_int = 9; + pub const RLIMIT_NPROC: ::c_int = 6; + pub const RLIMIT_MEMLOCK: ::c_int = 8; ++pub const RLIMIT_NLIMITS: ::c_int = 16; ++ ++pub const MCL_CURRENT: ::c_int = 0x0001; ++pub const MCL_FUTURE: ::c_int = 0x0002; ++pub const CBAUD: ::tcflag_t = 0o0010017; ++pub const TAB1: ::c_int = 0x00000800; ++pub const TAB2: ::c_int = 0x00001000; ++pub const TAB3: ::c_int = 0x00001800; ++pub const CR1: ::c_int = 0x00000200; ++pub const CR2: ::c_int = 0x00000400; ++pub const CR3: ::c_int = 0x00000600; ++pub const FF1: ::c_int = 0x00008000; ++pub const BS1: ::c_int = 0x00002000; ++pub const VT1: ::c_int = 0x00004000; ++pub const VWERASE: usize = 14; ++pub const VREPRINT: usize = 12; ++pub const VSUSP: usize = 10; ++pub const VSTART: usize = 8; ++pub const VSTOP: usize = 9; ++pub const VDISCARD: usize = 13; ++pub const VTIME: usize = 5; ++pub const IXON: ::tcflag_t = 0x00000400; ++pub const IXOFF: ::tcflag_t = 0x00001000; ++pub const ONLCR: ::tcflag_t = 0x4; ++pub const CSIZE: ::tcflag_t = 0x00000030; ++pub const CS6: ::tcflag_t = 0x00000010; ++pub const CS7: ::tcflag_t = 0x00000020; ++pub const CS8: ::tcflag_t = 0x00000030; ++pub const CSTOPB: ::tcflag_t = 0x00000040; ++pub const CREAD: ::tcflag_t = 0x00000080; ++pub const PARENB: ::tcflag_t = 0x00000100; ++pub const PARODD: ::tcflag_t = 0x00000200; ++pub const HUPCL: ::tcflag_t = 0x00000400; ++pub const CLOCAL: ::tcflag_t = 0x00000800; ++pub const ECHOKE: ::tcflag_t = 0x00000800; ++pub const ECHOE: ::tcflag_t = 0x00000010; ++pub const ECHOK: ::tcflag_t = 0x00000020; ++pub const ECHONL: ::tcflag_t = 0x00000040; ++pub const ECHOPRT: ::tcflag_t = 0x00000400; ++pub const ECHOCTL: ::tcflag_t = 0x00000200; ++pub const ISIG: ::tcflag_t = 0x00000001; ++pub const ICANON: ::tcflag_t = 0x00000002; ++pub const PENDIN: ::tcflag_t = 0x00004000; ++pub const NOFLSH: ::tcflag_t = 0x00000080; ++pub const CIBAUD: ::tcflag_t = 0o02003600000; ++pub const CBAUDEX: ::tcflag_t = 0o010000; ++pub const VSWTC: usize = 7; ++pub const OLCUC: ::tcflag_t = 0o000002; ++pub const NLDLY: ::tcflag_t = 0o000400; ++pub const CRDLY: ::tcflag_t = 0o003000; ++pub const TABDLY: ::tcflag_t = 0o014000; ++pub const BSDLY: ::tcflag_t = 0o020000; ++pub const FFDLY: ::tcflag_t = 0o100000; ++pub const VTDLY: ::tcflag_t = 0o040000; ++pub const XTABS: ::tcflag_t = 0o014000; ++pub const B57600: ::speed_t = 0o010001; ++pub const B115200: ::speed_t = 0o010002; ++pub const B230400: ::speed_t = 0o010003; ++pub const B460800: ::speed_t = 0o010004; ++pub const B500000: ::speed_t = 0o010005; ++pub const B576000: ::speed_t = 0o010006; ++pub const B921600: ::speed_t = 0o010007; ++pub const B1000000: ::speed_t = 0o010010; ++pub const B1152000: ::speed_t = 0o010011; ++pub const B1500000: ::speed_t = 0o010012; ++pub const B2000000: ::speed_t = 0o010013; ++pub const B2500000: ::speed_t = 0o010014; ++pub const B3000000: ::speed_t = 0o010015; ++pub const B3500000: ::speed_t = 0o010016; ++pub const B4000000: ::speed_t = 0o010017; + + pub const O_APPEND: ::c_int = 1024; + pub const O_CREAT: ::c_int = 64; +diff --git a/src/vendor/libc/src/unix/notbsd/linux/musl/b32/mips.rs b/src/vendor/libc/src/unix/notbsd/linux/musl/b32/mips.rs +index 89231a0c751..bfde73c563d 100644 +--- a/src/vendor/libc/src/unix/notbsd/linux/musl/b32/mips.rs ++++ b/src/vendor/libc/src/unix/notbsd/linux/musl/b32/mips.rs +@@ -54,6 +54,18 @@ s! { + pub ss_flags: ::c_int, + } + ++ pub struct ipc_perm { ++ pub __ipc_perm_key: ::key_t, ++ pub uid: ::uid_t, ++ pub gid: ::gid_t, ++ pub cuid: ::uid_t, ++ pub cgid: ::gid_t, ++ pub mode: ::mode_t, ++ pub __seq: ::c_int, ++ __unused1: ::c_long, ++ __unused2: ::c_long ++ } ++ + pub struct shmid_ds { + pub shm_perm: ::ipc_perm, + pub shm_segsz: ::size_t, +@@ -162,6 +174,9 @@ s! { + } + } + ++pub const SIGSTKSZ: ::size_t = 8192; ++pub const MINSIGSTKSZ: ::size_t = 2048; ++ + pub const O_DIRECT: ::c_int = 0o100000; + pub const O_DIRECTORY: ::c_int = 0o200000; + pub const O_NOFOLLOW: ::c_int = 0o400000; +@@ -176,6 +191,76 @@ pub const RLIMIT_NOFILE: ::c_int = 5; + pub const RLIMIT_AS: ::c_int = 6; + pub const RLIMIT_NPROC: ::c_int = 8; + pub const RLIMIT_MEMLOCK: ::c_int = 9; ++pub const RLIMIT_NLIMITS: ::c_int = 16; ++ ++pub const MCL_CURRENT: ::c_int = 0x0001; ++pub const MCL_FUTURE: ::c_int = 0x0002; ++pub const CBAUD: ::tcflag_t = 0o0010017; ++pub const TAB1: ::c_int = 0x00000800; ++pub const TAB2: ::c_int = 0x00001000; ++pub const TAB3: ::c_int = 0x00001800; ++pub const CR1: ::c_int = 0x00000200; ++pub const CR2: ::c_int = 0x00000400; ++pub const CR3: ::c_int = 0x00000600; ++pub const FF1: ::c_int = 0x00008000; ++pub const BS1: ::c_int = 0x00002000; ++pub const VT1: ::c_int = 0x00004000; ++pub const VWERASE: usize = 14; ++pub const VREPRINT: usize = 12; ++pub const VSUSP: usize = 10; ++pub const VSTART: usize = 8; ++pub const VSTOP: usize = 9; ++pub const VDISCARD: usize = 13; ++pub const VTIME: usize = 5; ++pub const IXON: ::tcflag_t = 0x00000400; ++pub const IXOFF: ::tcflag_t = 0x00001000; ++pub const ONLCR: ::tcflag_t = 0x4; ++pub const CSIZE: ::tcflag_t = 0x00000030; ++pub const CS6: ::tcflag_t = 0x00000010; ++pub const CS7: ::tcflag_t = 0x00000020; ++pub const CS8: ::tcflag_t = 0x00000030; ++pub const CSTOPB: ::tcflag_t = 0x00000040; ++pub const CREAD: ::tcflag_t = 0x00000080; ++pub const PARENB: ::tcflag_t = 0x00000100; ++pub const PARODD: ::tcflag_t = 0x00000200; ++pub const HUPCL: ::tcflag_t = 0x00000400; ++pub const CLOCAL: ::tcflag_t = 0x00000800; ++pub const ECHOKE: ::tcflag_t = 0x00000800; ++pub const ECHOE: ::tcflag_t = 0x00000010; ++pub const ECHOK: ::tcflag_t = 0x00000020; ++pub const ECHONL: ::tcflag_t = 0x00000040; ++pub const ECHOPRT: ::tcflag_t = 0x00000400; ++pub const ECHOCTL: ::tcflag_t = 0x00000200; ++pub const ISIG: ::tcflag_t = 0x00000001; ++pub const ICANON: ::tcflag_t = 0x00000002; ++pub const PENDIN: ::tcflag_t = 0x00004000; ++pub const NOFLSH: ::tcflag_t = 0x00000080; ++pub const CIBAUD: ::tcflag_t = 0o02003600000; ++pub const CBAUDEX: ::tcflag_t = 0o010000; ++pub const VSWTC: usize = 7; ++pub const OLCUC: ::tcflag_t = 0o000002; ++pub const NLDLY: ::tcflag_t = 0o000400; ++pub const CRDLY: ::tcflag_t = 0o003000; ++pub const TABDLY: ::tcflag_t = 0o014000; ++pub const BSDLY: ::tcflag_t = 0o020000; ++pub const FFDLY: ::tcflag_t = 0o100000; ++pub const VTDLY: ::tcflag_t = 0o040000; ++pub const XTABS: ::tcflag_t = 0o014000; ++pub const B57600: ::speed_t = 0o010001; ++pub const B115200: ::speed_t = 0o010002; ++pub const B230400: ::speed_t = 0o010003; ++pub const B460800: ::speed_t = 0o010004; ++pub const B500000: ::speed_t = 0o010005; ++pub const B576000: ::speed_t = 0o010006; ++pub const B921600: ::speed_t = 0o010007; ++pub const B1000000: ::speed_t = 0o010010; ++pub const B1152000: ::speed_t = 0o010011; ++pub const B1500000: ::speed_t = 0o010012; ++pub const B2000000: ::speed_t = 0o010013; ++pub const B2500000: ::speed_t = 0o010014; ++pub const B3000000: ::speed_t = 0o010015; ++pub const B3500000: ::speed_t = 0o010016; ++pub const B4000000: ::speed_t = 0o010017; + + pub const O_APPEND: ::c_int = 0o010; + pub const O_CREAT: ::c_int = 0o400; +diff --git a/src/vendor/libc/src/unix/notbsd/linux/musl/b32/mod.rs b/src/vendor/libc/src/unix/notbsd/linux/musl/b32/mod.rs +index b4a0f761636..4128a8e4da6 100644 +--- a/src/vendor/libc/src/unix/notbsd/linux/musl/b32/mod.rs ++++ b/src/vendor/libc/src/unix/notbsd/linux/musl/b32/mod.rs +@@ -32,96 +32,13 @@ s! { + pub struct sem_t { + __val: [::c_int; 4], + } +- +- pub struct ipc_perm { +- pub __ipc_perm_key: ::key_t, +- pub uid: ::uid_t, +- pub gid: ::gid_t, +- pub cuid: ::uid_t, +- pub cgid: ::gid_t, +- pub mode: ::mode_t, +- pub __seq: ::c_int, +- __unused1: ::c_long, +- __unused2: ::c_long +- } + } + +-pub const SIGSTKSZ: ::size_t = 8192; +-pub const MINSIGSTKSZ: ::size_t = 2048; +- + pub const __SIZEOF_PTHREAD_RWLOCK_T: usize = 32; + pub const __SIZEOF_PTHREAD_MUTEX_T: usize = 24; + +-pub const RLIMIT_NLIMITS: ::c_int = 16; + pub const TIOCINQ: ::c_int = ::FIONREAD; +-pub const MCL_CURRENT: ::c_int = 0x0001; +-pub const MCL_FUTURE: ::c_int = 0x0002; +-pub const CBAUD: ::tcflag_t = 0o0010017; +-pub const TAB1: ::c_int = 0x00000800; +-pub const TAB2: ::c_int = 0x00001000; +-pub const TAB3: ::c_int = 0x00001800; +-pub const CR1: ::c_int = 0x00000200; +-pub const CR2: ::c_int = 0x00000400; +-pub const CR3: ::c_int = 0x00000600; +-pub const FF1: ::c_int = 0x00008000; +-pub const BS1: ::c_int = 0x00002000; +-pub const VT1: ::c_int = 0x00004000; +-pub const VWERASE: usize = 14; +-pub const VREPRINT: usize = 12; +-pub const VSUSP: usize = 10; +-pub const VSTART: usize = 8; +-pub const VSTOP: usize = 9; +-pub const VDISCARD: usize = 13; +-pub const VTIME: usize = 5; +-pub const IXON: ::tcflag_t = 0x00000400; +-pub const IXOFF: ::tcflag_t = 0x00001000; +-pub const ONLCR: ::tcflag_t = 0x4; +-pub const CSIZE: ::tcflag_t = 0x00000030; +-pub const CS6: ::tcflag_t = 0x00000010; +-pub const CS7: ::tcflag_t = 0x00000020; +-pub const CS8: ::tcflag_t = 0x00000030; +-pub const CSTOPB: ::tcflag_t = 0x00000040; +-pub const CREAD: ::tcflag_t = 0x00000080; +-pub const PARENB: ::tcflag_t = 0x00000100; +-pub const PARODD: ::tcflag_t = 0x00000200; +-pub const HUPCL: ::tcflag_t = 0x00000400; +-pub const CLOCAL: ::tcflag_t = 0x00000800; +-pub const ECHOKE: ::tcflag_t = 0x00000800; +-pub const ECHOE: ::tcflag_t = 0x00000010; +-pub const ECHOK: ::tcflag_t = 0x00000020; +-pub const ECHONL: ::tcflag_t = 0x00000040; +-pub const ECHOPRT: ::tcflag_t = 0x00000400; +-pub const ECHOCTL: ::tcflag_t = 0x00000200; +-pub const ISIG: ::tcflag_t = 0x00000001; +-pub const ICANON: ::tcflag_t = 0x00000002; +-pub const PENDIN: ::tcflag_t = 0x00004000; +-pub const NOFLSH: ::tcflag_t = 0x00000080; +-pub const CIBAUD: ::tcflag_t = 0o02003600000; +-pub const CBAUDEX: ::tcflag_t = 0o010000; +-pub const VSWTC: usize = 7; +-pub const OLCUC: ::tcflag_t = 0o000002; +-pub const NLDLY: ::tcflag_t = 0o000400; +-pub const CRDLY: ::tcflag_t = 0o003000; +-pub const TABDLY: ::tcflag_t = 0o014000; +-pub const BSDLY: ::tcflag_t = 0o020000; +-pub const FFDLY: ::tcflag_t = 0o100000; +-pub const VTDLY: ::tcflag_t = 0o040000; +-pub const XTABS: ::tcflag_t = 0o014000; +-pub const B57600: ::speed_t = 0o010001; +-pub const B115200: ::speed_t = 0o010002; +-pub const B230400: ::speed_t = 0o010003; +-pub const B460800: ::speed_t = 0o010004; +-pub const B500000: ::speed_t = 0o010005; +-pub const B576000: ::speed_t = 0o010006; +-pub const B921600: ::speed_t = 0o010007; +-pub const B1000000: ::speed_t = 0o010010; +-pub const B1152000: ::speed_t = 0o010011; +-pub const B1500000: ::speed_t = 0o010012; +-pub const B2000000: ::speed_t = 0o010013; +-pub const B2500000: ::speed_t = 0o010014; +-pub const B3000000: ::speed_t = 0o010015; +-pub const B3500000: ::speed_t = 0o010016; +-pub const B4000000: ::speed_t = 0o010017; ++ + extern { + pub fn ioctl(fd: ::c_int, request: ::c_int, ...) -> ::c_int; + } +@@ -136,6 +53,9 @@ cfg_if! { + } else if #[cfg(any(target_arch = "arm"))] { + mod arm; + pub use self::arm::*; ++ } else if #[cfg(any(target_arch = "powerpc"))] { ++ mod powerpc; ++ pub use self::powerpc::*; + } else { + // Unknown target_arch + } +diff --git a/src/vendor/libc/src/unix/notbsd/linux/musl/b32/powerpc.rs b/src/vendor/libc/src/unix/notbsd/linux/musl/b32/powerpc.rs +new file mode 100644 +index 00000000000..50b6b57ef11 +--- /dev/null ++++ b/src/vendor/libc/src/unix/notbsd/linux/musl/b32/powerpc.rs +@@ -0,0 +1,866 @@ ++pub type c_char = u8; ++pub type wchar_t = i32; ++ ++s! { ++ pub struct stat { ++ pub st_dev: ::dev_t, ++ pub st_ino: ::ino_t, ++ pub st_mode: ::mode_t, ++ pub st_nlink: ::nlink_t, ++ pub st_uid: ::uid_t, ++ pub st_gid: ::gid_t, ++ pub st_rdev: ::dev_t, ++ __st_rdev_padding: ::c_short, ++ pub st_size: ::off_t, ++ pub st_blksize: ::blksize_t, ++ pub st_blocks: ::blkcnt_t, ++ pub st_atime: ::time_t, ++ pub st_atime_nsec: ::c_long, ++ pub st_mtime: ::time_t, ++ pub st_mtime_nsec: ::c_long, ++ pub st_ctime: ::time_t, ++ pub st_ctime_nsec: ::c_long, ++ __unused: [::c_long; 2], ++ } ++ ++ pub struct stat64 { ++ pub st_dev: ::dev_t, ++ pub st_ino: ::ino_t, ++ pub st_mode: ::mode_t, ++ pub st_nlink: ::nlink_t, ++ pub st_uid: ::uid_t, ++ pub st_gid: ::gid_t, ++ pub st_rdev: ::dev_t, ++ __st_rdev_padding: ::c_short, ++ pub st_size: ::off_t, ++ pub st_blksize: ::blksize_t, ++ pub st_blocks: ::blkcnt_t, ++ pub st_atime: ::time_t, ++ pub st_atime_nsec: ::c_long, ++ pub st_mtime: ::time_t, ++ pub st_mtime_nsec: ::c_long, ++ pub st_ctime: ::time_t, ++ pub st_ctime_nsec: ::c_long, ++ __unused: [::c_long; 2], ++ } ++ ++ pub struct stack_t { ++ pub ss_sp: *mut ::c_void, ++ pub ss_flags: ::c_int, ++ pub ss_size: ::size_t ++ } ++ ++ pub struct ipc_perm { ++ pub __ipc_perm_key: ::key_t, ++ pub uid: ::uid_t, ++ pub gid: ::gid_t, ++ pub cuid: ::uid_t, ++ pub cgid: ::gid_t, ++ pub mode: ::mode_t, ++ pub __seq: ::c_int, ++ __pad1: ::c_int, ++ __pad2: ::c_longlong, ++ __pad3: ::c_longlong ++ } ++ ++ pub struct shmid_ds { ++ pub shm_perm: ::ipc_perm, ++ __unused1: ::c_int, ++ pub shm_atime: ::time_t, ++ __unused2: ::c_int, ++ pub shm_dtime: ::time_t, ++ __unused3: ::c_int, ++ pub shm_ctime: ::time_t, ++ __unused4: ::c_int, ++ pub shm_segsz: ::size_t, ++ pub shm_cpid: ::pid_t, ++ pub shm_lpid: ::pid_t, ++ pub shm_nattch: ::c_ulong, ++ __pad1: ::c_ulong, ++ __pad2: ::c_ulong, ++ } ++ ++ pub struct msqid_ds { ++ pub msg_perm: ::ipc_perm, ++ __unused1: ::c_int, ++ pub msg_stime: ::time_t, ++ __unused2: ::c_int, ++ pub msg_rtime: ::time_t, ++ __unused3: ::c_int, ++ pub msg_ctime: ::time_t, ++ __msg_cbytes: ::c_ulong, ++ pub msg_qnum: ::msgqnum_t, ++ pub msg_qbytes: ::msglen_t, ++ pub msg_lspid: ::pid_t, ++ pub msg_lrpid: ::pid_t, ++ __pad1: ::c_ulong, ++ __pad2: ::c_ulong, ++ } ++ ++ pub struct statfs { ++ pub f_type: ::c_ulong, ++ pub f_bsize: ::c_ulong, ++ pub f_blocks: ::fsblkcnt_t, ++ pub f_bfree: ::fsblkcnt_t, ++ pub f_bavail: ::fsblkcnt_t, ++ pub f_files: ::fsfilcnt_t, ++ pub f_ffree: ::fsfilcnt_t, ++ pub f_fsid: ::fsid_t, ++ pub f_namelen: ::c_ulong, ++ pub f_frsize: ::c_ulong, ++ pub f_flags: ::c_ulong, ++ pub f_spare: [::c_ulong; 4], ++ } ++ ++ pub struct siginfo_t { ++ pub si_signo: ::c_int, ++ pub si_errno: ::c_int, ++ pub si_code: ::c_int, ++ pub _pad: [::c_int; 29], ++ _align: [usize; 0], ++ } ++ ++ pub struct statfs64 { ++ pub f_type: ::c_ulong, ++ pub f_bsize: ::c_ulong, ++ pub f_blocks: ::fsblkcnt_t, ++ pub f_bfree: ::fsblkcnt_t, ++ pub f_bavail: ::fsblkcnt_t, ++ pub f_files: ::fsfilcnt_t, ++ pub f_ffree: ::fsfilcnt_t, ++ pub f_fsid: ::fsid_t, ++ pub f_namelen: ::c_ulong, ++ pub f_frsize: ::c_ulong, ++ pub f_flags: ::c_ulong, ++ pub f_spare: [::c_ulong; 4], ++ } ++ ++ pub struct statvfs64 { ++ pub f_bsize: ::c_ulong, ++ pub f_frsize: ::c_ulong, ++ pub f_blocks: u64, ++ pub f_bfree: u64, ++ pub f_bavail: u64, ++ pub f_files: u64, ++ pub f_ffree: u64, ++ pub f_favail: u64, ++ #[cfg(target_endian = "little")] ++ pub f_fsid: ::c_ulong, ++ __f_unused: ::c_int, ++ #[cfg(target_endian = "big")] ++ pub f_fsid: ::c_ulong, ++ pub f_flag: ::c_ulong, ++ pub f_namemax: ::c_ulong, ++ __f_spare: [::c_int; 6], ++ } ++ ++ pub struct termios2 { ++ pub c_iflag: ::tcflag_t, ++ pub c_oflag: ::tcflag_t, ++ pub c_cflag: ::tcflag_t, ++ pub c_lflag: ::tcflag_t, ++ pub c_cc: [::cc_t; 19], ++ pub c_line: ::cc_t, ++ pub c_ispeed: ::speed_t, ++ pub c_ospeed: ::speed_t, ++ } ++} ++ ++pub const SIGSTKSZ: ::size_t = 10240; ++pub const MINSIGSTKSZ: ::size_t = 4096; ++ ++pub const O_DIRECT: ::c_int = 0x20000; ++pub const O_DIRECTORY: ::c_int = 0x4000; ++pub const O_NOFOLLOW: ::c_int = 0x8000; ++pub const O_ASYNC: ::c_int = 0x2000; ++pub const O_LARGEFILE: ::c_int = 0x10000; ++ ++pub const FIOCLEX: ::c_int = 0x20006601; ++pub const FIONBIO: ::c_int = 0x8004667E; ++ ++pub const RLIMIT_RSS: ::c_int = 5; ++pub const RLIMIT_NOFILE: ::c_int = 7; ++pub const RLIMIT_AS: ::c_int = 9; ++pub const RLIMIT_NPROC: ::c_int = 6; ++pub const RLIMIT_MEMLOCK: ::c_int = 8; ++pub const RLIMIT_NLIMITS: ::c_int = 15; ++ ++pub const MCL_CURRENT: ::c_int = 0x2000; ++pub const MCL_FUTURE: ::c_int = 0x4000; ++pub const CBAUD: ::tcflag_t = 0o0000377; ++pub const TAB1: ::c_int = 0x00000400; ++pub const TAB2: ::c_int = 0x00000800; ++pub const TAB3: ::c_int = 0x00000C00; ++pub const CR1: ::c_int = 0x00001000; ++pub const CR2: ::c_int = 0x00002000; ++pub const CR3: ::c_int = 0x00003000; ++pub const FF1: ::c_int = 0x00004000; ++pub const BS1: ::c_int = 0x00008000; ++pub const VT1: ::c_int = 0x00010000; ++pub const VWERASE: usize = 10; ++pub const VREPRINT: usize = 11; ++pub const VSUSP: usize = 12; ++pub const VSTART: usize = 13; ++pub const VSTOP: usize = 14; ++pub const VDISCARD: usize = 16; ++pub const VTIME: usize = 7; ++pub const IXON: ::tcflag_t = 0x00000200; ++pub const IXOFF: ::tcflag_t = 0x00000400; ++pub const ONLCR: ::tcflag_t = 0x00000002; ++pub const CSIZE: ::tcflag_t = 0x00000300; ++pub const CS6: ::tcflag_t = 0x00000100; ++pub const CS7: ::tcflag_t = 0x00000200; ++pub const CS8: ::tcflag_t = 0x00000300; ++pub const CSTOPB: ::tcflag_t = 0x00000400; ++pub const CREAD: ::tcflag_t = 0x00000800; ++pub const PARENB: ::tcflag_t = 0x00001000; ++pub const PARODD: ::tcflag_t = 0x00002000; ++pub const HUPCL: ::tcflag_t = 0x00004000; ++pub const CLOCAL: ::tcflag_t = 0x00008000; ++pub const ECHOKE: ::tcflag_t = 0x00000001; ++pub const ECHOE: ::tcflag_t = 0x00000002; ++pub const ECHOK: ::tcflag_t = 0x00000004; ++pub const ECHONL: ::tcflag_t = 0x00000010; ++pub const ECHOPRT: ::tcflag_t = 0x00000020; ++pub const ECHOCTL: ::tcflag_t = 0x00000040; ++pub const ISIG: ::tcflag_t = 0x00000080; ++pub const ICANON: ::tcflag_t = 0x00000100; ++pub const PENDIN: ::tcflag_t = 0x20000000; ++pub const NOFLSH: ::tcflag_t = 0x80000000; ++pub const CIBAUD: ::tcflag_t = 0o00077600000; ++pub const CBAUDEX: ::tcflag_t = 0o000020; ++pub const VSWTC: usize = 9; ++pub const OLCUC: ::tcflag_t = 0o000004; ++pub const NLDLY: ::tcflag_t = 0o001400; ++pub const CRDLY: ::tcflag_t = 0o030000; ++pub const TABDLY: ::tcflag_t = 0o006000; ++pub const BSDLY: ::tcflag_t = 0o100000; ++pub const FFDLY: ::tcflag_t = 0o040000; ++pub const VTDLY: ::tcflag_t = 0o200000; ++pub const XTABS: ::tcflag_t = 0o006000; ++pub const B57600: ::speed_t = 0o000020; ++pub const B115200: ::speed_t = 0o000021; ++pub const B230400: ::speed_t = 0o000022; ++pub const B460800: ::speed_t = 0o000023; ++pub const B500000: ::speed_t = 0o000024; ++pub const B576000: ::speed_t = 0o000025; ++pub const B921600: ::speed_t = 0o000026; ++pub const B1000000: ::speed_t = 0o000027; ++pub const B1152000: ::speed_t = 0o000030; ++pub const B1500000: ::speed_t = 0o000031; ++pub const B2000000: ::speed_t = 0o000032; ++pub const B2500000: ::speed_t = 0o000033; ++pub const B3000000: ::speed_t = 0o000034; ++pub const B3500000: ::speed_t = 0o000035; ++pub const B4000000: ::speed_t = 0o000036; ++ ++pub const O_APPEND: ::c_int = 1024; ++pub const O_CREAT: ::c_int = 64; ++pub const O_EXCL: ::c_int = 128; ++pub const O_NOCTTY: ::c_int = 256; ++pub const O_NONBLOCK: ::c_int = 2048; ++pub const O_SYNC: ::c_int = 1052672; ++pub const O_RSYNC: ::c_int = 1052672; ++pub const O_DSYNC: ::c_int = 4096; ++ ++pub const SOCK_NONBLOCK: ::c_int = 2048; ++ ++pub const MAP_ANON: ::c_int = 0x0020; ++pub const MAP_GROWSDOWN: ::c_int = 0x0100; ++pub const MAP_DENYWRITE: ::c_int = 0x0800; ++pub const MAP_EXECUTABLE: ::c_int = 0x01000; ++pub const MAP_LOCKED: ::c_int = 0x00080; ++pub const MAP_NORESERVE: ::c_int = 0x00040; ++pub const MAP_POPULATE: ::c_int = 0x08000; ++pub const MAP_NONBLOCK: ::c_int = 0x010000; ++pub const MAP_STACK: ::c_int = 0x020000; ++ ++pub const SOCK_STREAM: ::c_int = 1; ++pub const SOCK_DGRAM: ::c_int = 2; ++pub const SOCK_SEQPACKET: ::c_int = 5; ++ ++pub const SOL_SOCKET: ::c_int = 1; ++ ++pub const EDEADLK: ::c_int = 35; ++pub const ENAMETOOLONG: ::c_int = 36; ++pub const ENOLCK: ::c_int = 37; ++pub const ENOSYS: ::c_int = 38; ++pub const ENOTEMPTY: ::c_int = 39; ++pub const ELOOP: ::c_int = 40; ++pub const ENOMSG: ::c_int = 42; ++pub const EIDRM: ::c_int = 43; ++pub const ECHRNG: ::c_int = 44; ++pub const EL2NSYNC: ::c_int = 45; ++pub const EL3HLT: ::c_int = 46; ++pub const EL3RST: ::c_int = 47; ++pub const ELNRNG: ::c_int = 48; ++pub const EUNATCH: ::c_int = 49; ++pub const ENOCSI: ::c_int = 50; ++pub const EL2HLT: ::c_int = 51; ++pub const EBADE: ::c_int = 52; ++pub const EBADR: ::c_int = 53; ++pub const EXFULL: ::c_int = 54; ++pub const ENOANO: ::c_int = 55; ++pub const EBADRQC: ::c_int = 56; ++pub const EBADSLT: ::c_int = 57; ++pub const EDEADLOCK: ::c_int = 58; ++pub const EMULTIHOP: ::c_int = 72; ++pub const EBADMSG: ::c_int = 74; ++pub const EOVERFLOW: ::c_int = 75; ++pub const ENOTUNIQ: ::c_int = 76; ++pub const EBADFD: ::c_int = 77; ++pub const EREMCHG: ::c_int = 78; ++pub const ELIBACC: ::c_int = 79; ++pub const ELIBBAD: ::c_int = 80; ++pub const ELIBSCN: ::c_int = 81; ++pub const ELIBMAX: ::c_int = 82; ++pub const ELIBEXEC: ::c_int = 83; ++pub const EILSEQ: ::c_int = 84; ++pub const ERESTART: ::c_int = 85; ++pub const ESTRPIPE: ::c_int = 86; ++pub const EUSERS: ::c_int = 87; ++pub const ENOTSOCK: ::c_int = 88; ++pub const EDESTADDRREQ: ::c_int = 89; ++pub const EMSGSIZE: ::c_int = 90; ++pub const EPROTOTYPE: ::c_int = 91; ++pub const ENOPROTOOPT: ::c_int = 92; ++pub const EPROTONOSUPPORT: ::c_int = 93; ++pub const ESOCKTNOSUPPORT: ::c_int = 94; ++pub const EOPNOTSUPP: ::c_int = 95; ++pub const ENOTSUP: ::c_int = EOPNOTSUPP; ++pub const EPFNOSUPPORT: ::c_int = 96; ++pub const EAFNOSUPPORT: ::c_int = 97; ++pub const EADDRINUSE: ::c_int = 98; ++pub const EADDRNOTAVAIL: ::c_int = 99; ++pub const ENETDOWN: ::c_int = 100; ++pub const ENETUNREACH: ::c_int = 101; ++pub const ENETRESET: ::c_int = 102; ++pub const ECONNABORTED: ::c_int = 103; ++pub const ECONNRESET: ::c_int = 104; ++pub const ENOBUFS: ::c_int = 105; ++pub const EISCONN: ::c_int = 106; ++pub const ENOTCONN: ::c_int = 107; ++pub const ESHUTDOWN: ::c_int = 108; ++pub const ETOOMANYREFS: ::c_int = 109; ++pub const ETIMEDOUT: ::c_int = 110; ++pub const ECONNREFUSED: ::c_int = 111; ++pub const EHOSTDOWN: ::c_int = 112; ++pub const EHOSTUNREACH: ::c_int = 113; ++pub const EALREADY: ::c_int = 114; ++pub const EINPROGRESS: ::c_int = 115; ++pub const ESTALE: ::c_int = 116; ++pub const EUCLEAN: ::c_int = 117; ++pub const ENOTNAM: ::c_int = 118; ++pub const ENAVAIL: ::c_int = 119; ++pub const EISNAM: ::c_int = 120; ++pub const EREMOTEIO: ::c_int = 121; ++pub const EDQUOT: ::c_int = 122; ++pub const ENOMEDIUM: ::c_int = 123; ++pub const EMEDIUMTYPE: ::c_int = 124; ++pub const ECANCELED: ::c_int = 125; ++pub const ENOKEY: ::c_int = 126; ++pub const EKEYEXPIRED: ::c_int = 127; ++pub const EKEYREVOKED: ::c_int = 128; ++pub const EKEYREJECTED: ::c_int = 129; ++pub const EOWNERDEAD: ::c_int = 130; ++pub const ENOTRECOVERABLE: ::c_int = 131; ++pub const ERFKILL: ::c_int = 132; ++pub const EHWPOISON: ::c_int = 133; ++ ++pub const SO_REUSEADDR: ::c_int = 2; ++pub const SO_TYPE: ::c_int = 3; ++pub const SO_ERROR: ::c_int = 4; ++pub const SO_DONTROUTE: ::c_int = 5; ++pub const SO_BROADCAST: ::c_int = 6; ++pub const SO_SNDBUF: ::c_int = 7; ++pub const SO_RCVBUF: ::c_int = 8; ++pub const SO_KEEPALIVE: ::c_int = 9; ++pub const SO_OOBINLINE: ::c_int = 10; ++pub const SO_NO_CHECK: ::c_int = 11; ++pub const SO_PRIORITY: ::c_int = 12; ++pub const SO_LINGER: ::c_int = 13; ++pub const SO_BSDCOMPAT: ::c_int = 14; ++pub const SO_REUSEPORT: ::c_int = 15; ++pub const SO_RCVLOWAT: ::c_int = 16; ++pub const SO_SNDLOWAT: ::c_int = 17; ++pub const SO_RCVTIMEO: ::c_int = 18; ++pub const SO_SNDTIMEO: ::c_int = 19; ++pub const SO_PASSCRED: ::c_int = 20; ++pub const SO_PEERCRED: ::c_int = 21; ++pub const SO_ACCEPTCONN: ::c_int = 30; ++pub const SO_SNDBUFFORCE: ::c_int = 32; ++pub const SO_RCVBUFFORCE: ::c_int = 33; ++pub const SO_PROTOCOL: ::c_int = 38; ++pub const SO_DOMAIN: ::c_int = 39; ++ ++pub const SA_ONSTACK: ::c_int = 0x08000000; ++pub const SA_SIGINFO: ::c_int = 0x00000004; ++pub const SA_NOCLDWAIT: ::c_int = 0x00000002; ++ ++pub const SIGCHLD: ::c_int = 17; ++pub const SIGBUS: ::c_int = 7; ++pub const SIGTTIN: ::c_int = 21; ++pub const SIGTTOU: ::c_int = 22; ++pub const SIGXCPU: ::c_int = 24; ++pub const SIGXFSZ: ::c_int = 25; ++pub const SIGVTALRM: ::c_int = 26; ++pub const SIGPROF: ::c_int = 27; ++pub const SIGWINCH: ::c_int = 28; ++pub const SIGUSR1: ::c_int = 10; ++pub const SIGUSR2: ::c_int = 12; ++pub const SIGCONT: ::c_int = 18; ++pub const SIGSTOP: ::c_int = 19; ++pub const SIGTSTP: ::c_int = 20; ++pub const SIGURG: ::c_int = 23; ++pub const SIGIO: ::c_int = 29; ++pub const SIGSYS: ::c_int = 31; ++pub const SIGSTKFLT: ::c_int = 16; ++pub const SIGPOLL: ::c_int = 29; ++pub const SIGPWR: ::c_int = 30; ++pub const SIG_SETMASK: ::c_int = 2; ++pub const SIG_BLOCK: ::c_int = 0x000000; ++pub const SIG_UNBLOCK: ::c_int = 0x01; ++ ++pub const EXTPROC: ::tcflag_t = 0x10000000; ++ ++pub const MAP_HUGETLB: ::c_int = 0x040000; ++ ++pub const F_GETLK: ::c_int = 12; ++pub const F_GETOWN: ::c_int = 9; ++pub const F_SETLK: ::c_int = 13; ++pub const F_SETLKW: ::c_int = 14; ++pub const F_SETOWN: ::c_int = 8; ++ ++pub const VEOF: usize = 4; ++pub const VEOL: usize = 6; ++pub const VEOL2: usize = 8; ++pub const VMIN: usize = 5; ++pub const IEXTEN: ::tcflag_t = 0x00000400; ++pub const TOSTOP: ::tcflag_t = 0x00400000; ++pub const FLUSHO: ::tcflag_t = 0x00800000; ++ ++pub const TCGETS: ::c_int = 0x402C7413; ++pub const TCSETS: ::c_int = 0x802C7414; ++pub const TCSETSW: ::c_int = 0x802C7415; ++pub const TCSETSF: ::c_int = 0x802C7416; ++pub const TCGETA: ::c_int = 0x40147417; ++pub const TCSETA: ::c_int = 0x80147418; ++pub const TCSETAW: ::c_int = 0x80147419; ++pub const TCSETAF: ::c_int = 0x8014741C; ++pub const TCSBRK: ::c_int = 0x2000741D; ++pub const TCXONC: ::c_int = 0x2000741E; ++pub const TCFLSH: ::c_int = 0x2000741F; ++pub const TIOCGSOFTCAR: ::c_int = 0x5419; ++pub const TIOCSSOFTCAR: ::c_int = 0x541A; ++pub const TIOCLINUX: ::c_int = 0x541C; ++pub const TIOCGSERIAL: ::c_int = 0x541E; ++pub const TIOCEXCL: ::c_int = 0x540C; ++pub const TIOCNXCL: ::c_int = 0x540D; ++pub const TIOCSCTTY: ::c_int = 0x540E; ++pub const TIOCGPGRP: ::c_int = 0x40047477; ++pub const TIOCSPGRP: ::c_int = 0x80047476; ++pub const TIOCOUTQ: ::c_int = 0x40047473; ++pub const TIOCSTI: ::c_int = 0x5412; ++pub const TIOCGWINSZ: ::c_int = 0x40087468; ++pub const TIOCSWINSZ: ::c_int = 0x80087467; ++pub const TIOCMGET: ::c_int = 0x5415; ++pub const TIOCMBIS: ::c_int = 0x5416; ++pub const TIOCMBIC: ::c_int = 0x5417; ++pub const TIOCMSET: ::c_int = 0x5418; ++pub const FIONREAD: ::c_int = 0x4004667F; ++pub const TIOCCONS: ::c_int = 0x541D; ++ ++pub const POLLWRNORM: ::c_short = 0x100; ++pub const POLLWRBAND: ::c_short = 0x200; ++ ++pub const TIOCM_LE: ::c_int = 0x001; ++pub const TIOCM_DTR: ::c_int = 0x002; ++pub const TIOCM_RTS: ::c_int = 0x004; ++pub const TIOCM_ST: ::c_int = 0x008; ++pub const TIOCM_SR: ::c_int = 0x010; ++pub const TIOCM_CTS: ::c_int = 0x020; ++pub const TIOCM_CAR: ::c_int = 0x040; ++pub const TIOCM_RNG: ::c_int = 0x080; ++pub const TIOCM_DSR: ::c_int = 0x100; ++pub const TIOCM_CD: ::c_int = TIOCM_CAR; ++pub const TIOCM_RI: ::c_int = TIOCM_RNG; ++ ++// Syscall table ++pub const SYS_restart_syscall: ::c_long = 0; ++pub const SYS_exit: ::c_long = 1; ++pub const SYS_fork: ::c_long = 2; ++pub const SYS_read: ::c_long = 3; ++pub const SYS_write: ::c_long = 4; ++pub const SYS_open: ::c_long = 5; ++pub const SYS_close: ::c_long = 6; ++pub const SYS_waitpid: ::c_long = 7; ++pub const SYS_creat: ::c_long = 8; ++pub const SYS_link: ::c_long = 9; ++pub const SYS_unlink: ::c_long = 10; ++pub const SYS_execve: ::c_long = 11; ++pub const SYS_chdir: ::c_long = 12; ++pub const SYS_time: ::c_long = 13; ++pub const SYS_mknod: ::c_long = 14; ++pub const SYS_chmod: ::c_long = 15; ++pub const SYS_lchown: ::c_long = 16; ++pub const SYS_break: ::c_long = 17; ++pub const SYS_oldstat: ::c_long = 18; ++pub const SYS_lseek: ::c_long = 19; ++pub const SYS_getpid: ::c_long = 20; ++pub const SYS_mount: ::c_long = 21; ++pub const SYS_umount: ::c_long = 22; ++pub const SYS_setuid: ::c_long = 23; ++pub const SYS_getuid: ::c_long = 24; ++pub const SYS_stime: ::c_long = 25; ++pub const SYS_ptrace: ::c_long = 26; ++pub const SYS_alarm: ::c_long = 27; ++pub const SYS_oldfstat: ::c_long = 28; ++pub const SYS_pause: ::c_long = 29; ++pub const SYS_utime: ::c_long = 30; ++pub const SYS_stty: ::c_long = 31; ++pub const SYS_gtty: ::c_long = 32; ++pub const SYS_access: ::c_long = 33; ++pub const SYS_nice: ::c_long = 34; ++pub const SYS_ftime: ::c_long = 35; ++pub const SYS_sync: ::c_long = 36; ++pub const SYS_kill: ::c_long = 37; ++pub const SYS_rename: ::c_long = 38; ++pub const SYS_mkdir: ::c_long = 39; ++pub const SYS_rmdir: ::c_long = 40; ++pub const SYS_dup: ::c_long = 41; ++pub const SYS_pipe: ::c_long = 42; ++pub const SYS_times: ::c_long = 43; ++pub const SYS_prof: ::c_long = 44; ++pub const SYS_brk: ::c_long = 45; ++pub const SYS_setgid: ::c_long = 46; ++pub const SYS_getgid: ::c_long = 47; ++pub const SYS_signal: ::c_long = 48; ++pub const SYS_geteuid: ::c_long = 49; ++pub const SYS_getegid: ::c_long = 50; ++pub const SYS_acct: ::c_long = 51; ++pub const SYS_umount2: ::c_long = 52; ++pub const SYS_lock: ::c_long = 53; ++pub const SYS_ioctl: ::c_long = 54; ++pub const SYS_fcntl: ::c_long = 55; ++pub const SYS_mpx: ::c_long = 56; ++pub const SYS_setpgid: ::c_long = 57; ++pub const SYS_ulimit: ::c_long = 58; ++pub const SYS_oldolduname: ::c_long = 59; ++pub const SYS_umask: ::c_long = 60; ++pub const SYS_chroot: ::c_long = 61; ++pub const SYS_ustat: ::c_long = 62; ++pub const SYS_dup2: ::c_long = 63; ++pub const SYS_getppid: ::c_long = 64; ++pub const SYS_getpgrp: ::c_long = 65; ++pub const SYS_setsid: ::c_long = 66; ++pub const SYS_sigaction: ::c_long = 67; ++pub const SYS_sgetmask: ::c_long = 68; ++pub const SYS_ssetmask: ::c_long = 69; ++pub const SYS_setreuid: ::c_long = 70; ++pub const SYS_setregid: ::c_long = 71; ++pub const SYS_sigsuspend: ::c_long = 72; ++pub const SYS_sigpending: ::c_long = 73; ++pub const SYS_sethostname: ::c_long = 74; ++pub const SYS_setrlimit: ::c_long = 75; ++pub const SYS_getrlimit: ::c_long = 76; ++pub const SYS_getrusage: ::c_long = 77; ++pub const SYS_gettimeofday: ::c_long = 78; ++pub const SYS_settimeofday: ::c_long = 79; ++pub const SYS_getgroups: ::c_long = 80; ++pub const SYS_setgroups: ::c_long = 81; ++pub const SYS_select: ::c_long = 82; ++pub const SYS_symlink: ::c_long = 83; ++pub const SYS_oldlstat: ::c_long = 84; ++pub const SYS_readlink: ::c_long = 85; ++pub const SYS_uselib: ::c_long = 86; ++pub const SYS_swapon: ::c_long = 87; ++pub const SYS_reboot: ::c_long = 88; ++pub const SYS_readdir: ::c_long = 89; ++pub const SYS_mmap: ::c_long = 90; ++pub const SYS_munmap: ::c_long = 91; ++pub const SYS_truncate: ::c_long = 92; ++pub const SYS_ftruncate: ::c_long = 93; ++pub const SYS_fchmod: ::c_long = 94; ++pub const SYS_fchown: ::c_long = 95; ++pub const SYS_getpriority: ::c_long = 96; ++pub const SYS_setpriority: ::c_long = 97; ++pub const SYS_profil: ::c_long = 98; ++pub const SYS_statfs: ::c_long = 99; ++pub const SYS_fstatfs: ::c_long = 100; ++pub const SYS_ioperm: ::c_long = 101; ++pub const SYS_socketcall: ::c_long = 102; ++pub const SYS_syslog: ::c_long = 103; ++pub const SYS_setitimer: ::c_long = 104; ++pub const SYS_getitimer: ::c_long = 105; ++pub const SYS_stat: ::c_long = 106; ++pub const SYS_lstat: ::c_long = 107; ++pub const SYS_fstat: ::c_long = 108; ++pub const SYS_olduname: ::c_long = 109; ++pub const SYS_iopl: ::c_long = 110; ++pub const SYS_vhangup: ::c_long = 111; ++pub const SYS_idle: ::c_long = 112; ++pub const SYS_vm86: ::c_long = 113; ++pub const SYS_wait4: ::c_long = 114; ++pub const SYS_swapoff: ::c_long = 115; ++pub const SYS_sysinfo: ::c_long = 116; ++pub const SYS_ipc: ::c_long = 117; ++pub const SYS_fsync: ::c_long = 118; ++pub const SYS_sigreturn: ::c_long = 119; ++pub const SYS_clone: ::c_long = 120; ++pub const SYS_setdomainname: ::c_long = 121; ++pub const SYS_uname: ::c_long = 122; ++pub const SYS_modify_ldt: ::c_long = 123; ++pub const SYS_adjtimex: ::c_long = 124; ++pub const SYS_mprotect: ::c_long = 125; ++pub const SYS_sigprocmask: ::c_long = 126; ++pub const SYS_create_module: ::c_long = 127; ++pub const SYS_init_module: ::c_long = 128; ++pub const SYS_delete_module: ::c_long = 129; ++pub const SYS_get_kernel_syms: ::c_long = 130; ++pub const SYS_quotactl: ::c_long = 131; ++pub const SYS_getpgid: ::c_long = 132; ++pub const SYS_fchdir: ::c_long = 133; ++pub const SYS_bdflush: ::c_long = 134; ++pub const SYS_sysfs: ::c_long = 135; ++pub const SYS_personality: ::c_long = 136; ++pub const SYS_afs_syscall: ::c_long = 137; ++pub const SYS_setfsuid: ::c_long = 138; ++pub const SYS_setfsgid: ::c_long = 139; ++pub const SYS__llseek: ::c_long = 140; ++pub const SYS_getdents: ::c_long = 141; ++pub const SYS__newselect: ::c_long = 142; ++pub const SYS_flock: ::c_long = 143; ++pub const SYS_msync: ::c_long = 144; ++pub const SYS_readv: ::c_long = 145; ++pub const SYS_writev: ::c_long = 146; ++pub const SYS_getsid: ::c_long = 147; ++pub const SYS_fdatasync: ::c_long = 148; ++pub const SYS__sysctl: ::c_long = 149; ++pub const SYS_mlock: ::c_long = 150; ++pub const SYS_munlock: ::c_long = 151; ++pub const SYS_mlockall: ::c_long = 152; ++pub const SYS_munlockall: ::c_long = 153; ++pub const SYS_sched_setparam: ::c_long = 154; ++pub const SYS_sched_getparam: ::c_long = 155; ++pub const SYS_sched_setscheduler: ::c_long = 156; ++pub const SYS_sched_getscheduler: ::c_long = 157; ++pub const SYS_sched_yield: ::c_long = 158; ++pub const SYS_sched_get_priority_max: ::c_long = 159; ++pub const SYS_sched_get_priority_min: ::c_long = 160; ++pub const SYS_sched_rr_get_interval: ::c_long = 161; ++pub const SYS_nanosleep: ::c_long = 162; ++pub const SYS_mremap: ::c_long = 163; ++pub const SYS_setresuid: ::c_long = 164; ++pub const SYS_getresuid: ::c_long = 165; ++pub const SYS_query_module: ::c_long = 166; ++pub const SYS_poll: ::c_long = 167; ++pub const SYS_nfsservctl: ::c_long = 168; ++pub const SYS_setresgid: ::c_long = 169; ++pub const SYS_getresgid: ::c_long = 170; ++pub const SYS_prctl: ::c_long = 171; ++pub const SYS_rt_sigreturn: ::c_long = 172; ++pub const SYS_rt_sigaction: ::c_long = 173; ++pub const SYS_rt_sigprocmask: ::c_long = 174; ++pub const SYS_rt_sigpending: ::c_long = 175; ++pub const SYS_rt_sigtimedwait: ::c_long = 176; ++pub const SYS_rt_sigqueueinfo: ::c_long = 177; ++pub const SYS_rt_sigsuspend: ::c_long = 178; ++pub const SYS_pread64: ::c_long = 179; ++pub const SYS_pwrite64: ::c_long = 180; ++pub const SYS_chown: ::c_long = 181; ++pub const SYS_getcwd: ::c_long = 182; ++pub const SYS_capget: ::c_long = 183; ++pub const SYS_capset: ::c_long = 184; ++pub const SYS_sigaltstack: ::c_long = 185; ++pub const SYS_sendfile: ::c_long = 186; ++pub const SYS_getpmsg: ::c_long = 187; ++pub const SYS_putpmsg: ::c_long = 188; ++pub const SYS_vfork: ::c_long = 189; ++pub const SYS_ugetrlimit: ::c_long = 190; ++pub const SYS_readahead: ::c_long = 191; ++pub const SYS_mmap2: ::c_long = 192; ++pub const SYS_truncate64: ::c_long = 193; ++pub const SYS_ftruncate64: ::c_long = 194; ++pub const SYS_stat64: ::c_long = 195; ++pub const SYS_lstat64: ::c_long = 196; ++pub const SYS_fstat64: ::c_long = 197; ++pub const SYS_pciconfig_read: ::c_long = 198; ++pub const SYS_pciconfig_write: ::c_long = 199; ++pub const SYS_pciconfig_iobase: ::c_long = 200; ++pub const SYS_multiplexer: ::c_long = 201; ++pub const SYS_getdents64: ::c_long = 202; ++pub const SYS_pivot_root: ::c_long = 203; ++pub const SYS_fcntl64: ::c_long = 204; ++pub const SYS_madvise: ::c_long = 205; ++pub const SYS_mincore: ::c_long = 206; ++pub const SYS_gettid: ::c_long = 207; ++pub const SYS_tkill: ::c_long = 208; ++pub const SYS_setxattr: ::c_long = 209; ++pub const SYS_lsetxattr: ::c_long = 210; ++pub const SYS_fsetxattr: ::c_long = 211; ++pub const SYS_getxattr: ::c_long = 212; ++pub const SYS_lgetxattr: ::c_long = 213; ++pub const SYS_fgetxattr: ::c_long = 214; ++pub const SYS_listxattr: ::c_long = 215; ++pub const SYS_llistxattr: ::c_long = 216; ++pub const SYS_flistxattr: ::c_long = 217; ++pub const SYS_removexattr: ::c_long = 218; ++pub const SYS_lremovexattr: ::c_long = 219; ++pub const SYS_fremovexattr: ::c_long = 220; ++pub const SYS_futex: ::c_long = 221; ++pub const SYS_sched_setaffinity: ::c_long = 222; ++pub const SYS_sched_getaffinity: ::c_long = 223; ++pub const SYS_tuxcall: ::c_long = 225; ++pub const SYS_sendfile64: ::c_long = 226; ++pub const SYS_io_setup: ::c_long = 227; ++pub const SYS_io_destroy: ::c_long = 228; ++pub const SYS_io_getevents: ::c_long = 229; ++pub const SYS_io_submit: ::c_long = 230; ++pub const SYS_io_cancel: ::c_long = 231; ++pub const SYS_set_tid_address: ::c_long = 232; ++pub const SYS_fadvise64: ::c_long = 233; ++pub const SYS_exit_group: ::c_long = 234; ++pub const SYS_lookup_dcookie: ::c_long = 235; ++pub const SYS_epoll_create: ::c_long = 236; ++pub const SYS_epoll_ctl: ::c_long = 237; ++pub const SYS_epoll_wait: ::c_long = 238; ++pub const SYS_remap_file_pages: ::c_long = 239; ++pub const SYS_timer_create: ::c_long = 240; ++pub const SYS_timer_settime: ::c_long = 241; ++pub const SYS_timer_gettime: ::c_long = 242; ++pub const SYS_timer_getoverrun: ::c_long = 243; ++pub const SYS_timer_delete: ::c_long = 244; ++pub const SYS_clock_settime: ::c_long = 245; ++pub const SYS_clock_gettime: ::c_long = 246; ++pub const SYS_clock_getres: ::c_long = 247; ++pub const SYS_clock_nanosleep: ::c_long = 248; ++pub const SYS_swapcontext: ::c_long = 249; ++pub const SYS_tgkill: ::c_long = 250; ++pub const SYS_utimes: ::c_long = 251; ++pub const SYS_statfs64: ::c_long = 252; ++pub const SYS_fstatfs64: ::c_long = 253; ++pub const SYS_fadvise64_64: ::c_long = 254; ++pub const SYS_rtas: ::c_long = 255; ++pub const SYS_sys_debug_setcontext: ::c_long = 256; ++pub const SYS_migrate_pages: ::c_long = 258; ++pub const SYS_mbind: ::c_long = 259; ++pub const SYS_get_mempolicy: ::c_long = 260; ++pub const SYS_set_mempolicy: ::c_long = 261; ++pub const SYS_mq_open: ::c_long = 262; ++pub const SYS_mq_unlink: ::c_long = 263; ++pub const SYS_mq_timedsend: ::c_long = 264; ++pub const SYS_mq_timedreceive: ::c_long = 265; ++pub const SYS_mq_notify: ::c_long = 266; ++pub const SYS_mq_getsetattr: ::c_long = 267; ++pub const SYS_kexec_load: ::c_long = 268; ++pub const SYS_add_key: ::c_long = 269; ++pub const SYS_request_key: ::c_long = 270; ++pub const SYS_keyctl: ::c_long = 271; ++pub const SYS_waitid: ::c_long = 272; ++pub const SYS_ioprio_set: ::c_long = 273; ++pub const SYS_ioprio_get: ::c_long = 274; ++pub const SYS_inotify_init: ::c_long = 275; ++pub const SYS_inotify_add_watch: ::c_long = 276; ++pub const SYS_inotify_rm_watch: ::c_long = 277; ++pub const SYS_spu_run: ::c_long = 278; ++pub const SYS_spu_create: ::c_long = 279; ++pub const SYS_pselect6: ::c_long = 280; ++pub const SYS_ppoll: ::c_long = 281; ++pub const SYS_unshare: ::c_long = 282; ++pub const SYS_splice: ::c_long = 283; ++pub const SYS_tee: ::c_long = 284; ++pub const SYS_vmsplice: ::c_long = 285; ++pub const SYS_openat: ::c_long = 286; ++pub const SYS_mkdirat: ::c_long = 287; ++pub const SYS_mknodat: ::c_long = 288; ++pub const SYS_fchownat: ::c_long = 289; ++pub const SYS_futimesat: ::c_long = 290; ++pub const SYS_fstatat64: ::c_long = 291; ++pub const SYS_unlinkat: ::c_long = 292; ++pub const SYS_renameat: ::c_long = 293; ++pub const SYS_linkat: ::c_long = 294; ++pub const SYS_symlinkat: ::c_long = 295; ++pub const SYS_readlinkat: ::c_long = 296; ++pub const SYS_fchmodat: ::c_long = 297; ++pub const SYS_faccessat: ::c_long = 298; ++pub const SYS_get_robust_list: ::c_long = 299; ++pub const SYS_set_robust_list: ::c_long = 300; ++pub const SYS_move_pages: ::c_long = 301; ++pub const SYS_getcpu: ::c_long = 302; ++pub const SYS_epoll_pwait: ::c_long = 303; ++pub const SYS_utimensat: ::c_long = 304; ++pub const SYS_signalfd: ::c_long = 305; ++pub const SYS_timerfd_create: ::c_long = 306; ++pub const SYS_eventfd: ::c_long = 307; ++pub const SYS_sync_file_range2: ::c_long = 308; ++pub const SYS_fallocate: ::c_long = 309; ++pub const SYS_subpage_prot: ::c_long = 310; ++pub const SYS_timerfd_settime: ::c_long = 311; ++pub const SYS_timerfd_gettime: ::c_long = 312; ++pub const SYS_signalfd4: ::c_long = 313; ++pub const SYS_eventfd2: ::c_long = 314; ++pub const SYS_epoll_create1: ::c_long = 315; ++pub const SYS_dup3: ::c_long = 316; ++pub const SYS_pipe2: ::c_long = 317; ++pub const SYS_inotify_init1: ::c_long = 318; ++pub const SYS_perf_event_open: ::c_long = 319; ++pub const SYS_preadv: ::c_long = 320; ++pub const SYS_pwritev: ::c_long = 321; ++pub const SYS_rt_tgsigqueueinfo: ::c_long = 322; ++pub const SYS_fanotify_init: ::c_long = 323; ++pub const SYS_fanotify_mark: ::c_long = 324; ++pub const SYS_prlimit64: ::c_long = 325; ++pub const SYS_socket: ::c_long = 326; ++pub const SYS_bind: ::c_long = 327; ++pub const SYS_connect: ::c_long = 328; ++pub const SYS_listen: ::c_long = 329; ++pub const SYS_accept: ::c_long = 330; ++pub const SYS_getsockname: ::c_long = 331; ++pub const SYS_getpeername: ::c_long = 332; ++pub const SYS_socketpair: ::c_long = 333; ++pub const SYS_send: ::c_long = 334; ++pub const SYS_sendto: ::c_long = 335; ++pub const SYS_recv: ::c_long = 336; ++pub const SYS_recvfrom: ::c_long = 337; ++pub const SYS_shutdown: ::c_long = 338; ++pub const SYS_setsockopt: ::c_long = 339; ++pub const SYS_getsockopt: ::c_long = 340; ++pub const SYS_sendmsg: ::c_long = 341; ++pub const SYS_recvmsg: ::c_long = 342; ++pub const SYS_recvmmsg: ::c_long = 343; ++pub const SYS_accept4: ::c_long = 344; ++pub const SYS_name_to_handle_at: ::c_long = 345; ++pub const SYS_open_by_handle_at: ::c_long = 346; ++pub const SYS_clock_adjtime: ::c_long = 347; ++pub const SYS_syncfs: ::c_long = 348; ++pub const SYS_sendmmsg: ::c_long = 349; ++pub const SYS_setns: ::c_long = 350; ++pub const SYS_process_vm_readv: ::c_long = 351; ++pub const SYS_process_vm_writev: ::c_long = 352; ++pub const SYS_finit_module: ::c_long = 353; ++pub const SYS_kcmp: ::c_long = 354; ++pub const SYS_sched_setattr: ::c_long = 355; ++pub const SYS_sched_getattr: ::c_long = 356; ++pub const SYS_renameat2: ::c_long = 357; ++pub const SYS_seccomp: ::c_long = 358; ++pub const SYS_getrandom: ::c_long = 359; ++pub const SYS_memfd_create: ::c_long = 360; ++pub const SYS_bpf: ::c_long = 361; ++pub const SYS_execveat: ::c_long = 362; ++pub const SYS_switch_endian: ::c_long = 363; ++pub const SYS_userfaultfd: ::c_long = 364; ++pub const SYS_membarrier: ::c_long = 365; ++pub const SYS_mlock2: ::c_long = 378; ++pub const SYS_copy_file_range: ::c_long = 379; ++pub const SYS_preadv2: ::c_long = 380; ++pub const SYS_pwritev2: ::c_long = 381; ++pub const SYS_kexec_file_load: ::c_long = 382; ++pub const SYS_statx: ::c_long = 383; ++pub const SYS_pkey_alloc: ::c_long = 384; ++pub const SYS_pkey_free: ::c_long = 385; ++pub const SYS_pkey_mprotect: ::c_long = 386; ++ ++#[doc(hidden)] ++pub const AF_MAX: ::c_int = 43; ++#[doc(hidden)] ++pub const PF_MAX: ::c_int = AF_MAX; +diff --git a/src/vendor/libc/src/unix/notbsd/linux/musl/b32/x86.rs b/src/vendor/libc/src/unix/notbsd/linux/musl/b32/x86.rs +index fa570248c72..9f704c7fac9 100644 +--- a/src/vendor/libc/src/unix/notbsd/linux/musl/b32/x86.rs ++++ b/src/vendor/libc/src/unix/notbsd/linux/musl/b32/x86.rs +@@ -52,6 +52,18 @@ s! { + pub ss_size: ::size_t + } + ++ pub struct ipc_perm { ++ pub __ipc_perm_key: ::key_t, ++ pub uid: ::uid_t, ++ pub gid: ::gid_t, ++ pub cuid: ::uid_t, ++ pub cgid: ::gid_t, ++ pub mode: ::mode_t, ++ pub __seq: ::c_int, ++ __unused1: ::c_long, ++ __unused2: ::c_long ++ } ++ + pub struct shmid_ds { + pub shm_perm: ::ipc_perm, + pub shm_segsz: ::size_t, +@@ -164,6 +176,9 @@ s! { + } + } + ++pub const SIGSTKSZ: ::size_t = 8192; ++pub const MINSIGSTKSZ: ::size_t = 2048; ++ + pub const O_DIRECT: ::c_int = 0x4000; + pub const O_DIRECTORY: ::c_int = 0x10000; + pub const O_NOFOLLOW: ::c_int = 0x20000; +@@ -178,6 +193,76 @@ pub const RLIMIT_NOFILE: ::c_int = 7; + pub const RLIMIT_AS: ::c_int = 9; + pub const RLIMIT_NPROC: ::c_int = 6; + pub const RLIMIT_MEMLOCK: ::c_int = 8; ++pub const RLIMIT_NLIMITS: ::c_int = 16; ++ ++pub const MCL_CURRENT: ::c_int = 0x0001; ++pub const MCL_FUTURE: ::c_int = 0x0002; ++pub const CBAUD: ::tcflag_t = 0o0010017; ++pub const TAB1: ::c_int = 0x00000800; ++pub const TAB2: ::c_int = 0x00001000; ++pub const TAB3: ::c_int = 0x00001800; ++pub const CR1: ::c_int = 0x00000200; ++pub const CR2: ::c_int = 0x00000400; ++pub const CR3: ::c_int = 0x00000600; ++pub const FF1: ::c_int = 0x00008000; ++pub const BS1: ::c_int = 0x00002000; ++pub const VT1: ::c_int = 0x00004000; ++pub const VWERASE: usize = 14; ++pub const VREPRINT: usize = 12; ++pub const VSUSP: usize = 10; ++pub const VSTART: usize = 8; ++pub const VSTOP: usize = 9; ++pub const VDISCARD: usize = 13; ++pub const VTIME: usize = 5; ++pub const IXON: ::tcflag_t = 0x00000400; ++pub const IXOFF: ::tcflag_t = 0x00001000; ++pub const ONLCR: ::tcflag_t = 0x4; ++pub const CSIZE: ::tcflag_t = 0x00000030; ++pub const CS6: ::tcflag_t = 0x00000010; ++pub const CS7: ::tcflag_t = 0x00000020; ++pub const CS8: ::tcflag_t = 0x00000030; ++pub const CSTOPB: ::tcflag_t = 0x00000040; ++pub const CREAD: ::tcflag_t = 0x00000080; ++pub const PARENB: ::tcflag_t = 0x00000100; ++pub const PARODD: ::tcflag_t = 0x00000200; ++pub const HUPCL: ::tcflag_t = 0x00000400; ++pub const CLOCAL: ::tcflag_t = 0x00000800; ++pub const ECHOKE: ::tcflag_t = 0x00000800; ++pub const ECHOE: ::tcflag_t = 0x00000010; ++pub const ECHOK: ::tcflag_t = 0x00000020; ++pub const ECHONL: ::tcflag_t = 0x00000040; ++pub const ECHOPRT: ::tcflag_t = 0x00000400; ++pub const ECHOCTL: ::tcflag_t = 0x00000200; ++pub const ISIG: ::tcflag_t = 0x00000001; ++pub const ICANON: ::tcflag_t = 0x00000002; ++pub const PENDIN: ::tcflag_t = 0x00004000; ++pub const NOFLSH: ::tcflag_t = 0x00000080; ++pub const CIBAUD: ::tcflag_t = 0o02003600000; ++pub const CBAUDEX: ::tcflag_t = 0o010000; ++pub const VSWTC: usize = 7; ++pub const OLCUC: ::tcflag_t = 0o000002; ++pub const NLDLY: ::tcflag_t = 0o000400; ++pub const CRDLY: ::tcflag_t = 0o003000; ++pub const TABDLY: ::tcflag_t = 0o014000; ++pub const BSDLY: ::tcflag_t = 0o020000; ++pub const FFDLY: ::tcflag_t = 0o100000; ++pub const VTDLY: ::tcflag_t = 0o040000; ++pub const XTABS: ::tcflag_t = 0o014000; ++pub const B57600: ::speed_t = 0o010001; ++pub const B115200: ::speed_t = 0o010002; ++pub const B230400: ::speed_t = 0o010003; ++pub const B460800: ::speed_t = 0o010004; ++pub const B500000: ::speed_t = 0o010005; ++pub const B576000: ::speed_t = 0o010006; ++pub const B921600: ::speed_t = 0o010007; ++pub const B1000000: ::speed_t = 0o010010; ++pub const B1152000: ::speed_t = 0o010011; ++pub const B1500000: ::speed_t = 0o010012; ++pub const B2000000: ::speed_t = 0o010013; ++pub const B2500000: ::speed_t = 0o010014; ++pub const B3000000: ::speed_t = 0o010015; ++pub const B3500000: ::speed_t = 0o010016; ++pub const B4000000: ::speed_t = 0o010017; + + pub const O_APPEND: ::c_int = 1024; + pub const O_CREAT: ::c_int = 64; +diff --git a/src/vendor/libc/src/unix/notbsd/linux/musl/mod.rs b/src/vendor/libc/src/unix/notbsd/linux/musl/mod.rs +index 0d92a4b9d14..10d61ebebef 100644 +--- a/src/vendor/libc/src/unix/notbsd/linux/musl/mod.rs ++++ b/src/vendor/libc/src/unix/notbsd/linux/musl/mod.rs +@@ -260,7 +260,8 @@ cfg_if! { + pub use self::b64::*; + } else if #[cfg(any(target_arch = "x86", + target_arch = "mips", +- target_arch = "arm"))] { ++ target_arch = "arm", ++ target_arch = "powerpc"))] { + mod b32; + pub use self::b32::*; + } else { } diff --git a/user/rust/0035-libc-checksums.patch b/user/rust/0035-libc-checksums.patch new file mode 100644 index 000000000..a8ec2c150 --- /dev/null +++ b/user/rust/0035-libc-checksums.patch @@ -0,0 +1,9 @@ +diff --git a/src/vendor/libc/.cargo-checksum.json b/src/vendor/libc/.cargo-checksum.json +index 5b315f61..c28c8c5c 100644 +--- a/src/vendor/libc/.cargo-checksum.json ++++ b/src/vendor/libc/.cargo-checksum.json +@@ -1 +1 @@ +-{"files":{".cargo-ok":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",".gitignore":"7150ee9391a955b2ef7e0762fc61c0c1aab167620ca36d88d78062d93b8334ba",".travis.yml":"9750910d5fdc61263fb3eae7f5f78e2920923f250150f8500c0c22a830790acd","Cargo.toml":"4629bf1256274045a39aedc78a7f6b48b5bf7fdf177cd69c4eb65909586ab0cf","Cargo.toml.orig":"423b6276994f73cf7fc57dafad118ff8b0e207eb55ebe57a0ee1a149bf36f544","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"6485b8ed310d3f0340bf1ad1f47645069ce4069dcc6bb46c7d5c6faf41de1fdb","README.md":"fdf0f0c197e2999fce42457fb089f192a42d2fb1f743c9c8fcda1a44cb40e1fa","appveyor.yml":"216f7ac4561aa5810dc84ce5a9950897a8c0496e0615d0211d62348b1c8dc720","ci/README.md":"2e3d7ad13f8c3202e57d2af73aeeebde306221dce7c0907e462e25767a692d6b","ci/android-install-ndk.sh":"725db9025c5905849916bf7c910f98ff0e753484397c2a1f836d48a576d10890","ci/android-install-sdk.sh":"5c3fbe402ac611239ac7715a61f247d1c55fa012f33a5be0b0127dfc196965cf","ci/android-sysimage.sh":"901415631752827454c827e8c51906ba4260612e4021eda98eb7fff771c7d0e8","ci/docker/aarch64-linux-android/Dockerfile":"e17945fba1786dfe766006f50e79baf3f4151ca0c0c14ae96f91483bf345afd7","ci/docker/aarch64-unknown-linux-gnu/Dockerfile":"5f430271941e1eecdf9d1a5fb701dd5622e2c4b9da03140fd829bf216e55529d","ci/docker/aarch64-unknown-linux-musl/Dockerfile":"3e1cbf0fa728571b9be9769e5a6281c964fa5b26d586265117ccee017ca4022c","ci/docker/arm-linux-androideabi/Dockerfile":"4e0bdc13254f99bd0db195f91331c634050426e3e4a0fcc63ef25ab795fe2d46","ci/docker/arm-unknown-linux-gnueabihf/Dockerfile":"dbb025b53b27e406893184290836a50133ecae8295711d5e05b4e41fac9bd262","ci/docker/arm-unknown-linux-musleabihf/Dockerfile":"7cb6e0f8fb91c97f142a9c827687bbbc1a5e7643a3081160025d0365593a596c","ci/docker/asmjs-unknown-emscripten/Dockerfile":"0d9aea5119c2cd136cc2c0a578105d91210e45901ac49b17c5e45f458b1c7551","ci/docker/i686-linux-android/Dockerfile":"4e8377ec0bd9ad2df23bf2c5373200a12750dc9f28c4f10bc83a0150fe1623ee","ci/docker/i686-unknown-linux-gnu/Dockerfile":"f22ac412525ef15b33ab8ccd8193d97346faf421c17f6ddeffc25b651aba83b7","ci/docker/i686-unknown-linux-musl/Dockerfile":"4ac86fe9e159d454616396a9f3f07ce0f5d99cc4b49898b8d2486e6bdbfed9e9","ci/docker/mips-unknown-linux-gnu/Dockerfile":"6d2a9daa299003497c1d441d07b69f730ad75ee49f34520f959b5158e60072e0","ci/docker/mips-unknown-linux-musl/Dockerfile":"4773b2656a7dd6a3b106fcb737428436652edf3d1f48181de3f62c16bf5bd49d","ci/docker/mips64-unknown-linux-gnuabi64/Dockerfile":"7c4d26232f1c1553a6612d9b0b3faac9887e139eaffa025f70d34113dcee812f","ci/docker/mips64el-unknown-linux-gnuabi64/Dockerfile":"edb4144c07ade1a8bd65272ec1d3672ad794e9e6b7d01197896e159a70175b58","ci/docker/mipsel-unknown-linux-musl/Dockerfile":"0ca9c12b5618c6d2df04ff820d56fb28e05b43e45eaa506480126b03c5072d48","ci/docker/powerpc-unknown-linux-gnu/Dockerfile":"4b247dcc399395815ec9153c1247cc03d764896c484eddcb196d0bf8650d6311","ci/docker/powerpc64-unknown-linux-gnu/Dockerfile":"e949717a8ba5e123940729ff47ce1c45989c8b8247c576f1488f698b534e0283","ci/docker/powerpc64le-unknown-linux-gnu/Dockerfile":"018591017f499414a9f79477e1c39baa6a47f71fce6812fb1868fb0fcdfb8cea","ci/docker/s390x-unknown-linux-gnu/Dockerfile":"9860f478c5b2dc3bcf76d2cda7f71922a2a2ef54898cc2ed6ea9b9eff094a5c0","ci/docker/sparc64-unknown-linux-gnu/Dockerfile":"2312491343665d2ab36fd669f14766facbf3c7e9820ffb8f0d623830b676f8f0","ci/docker/wasm32-unknown-emscripten/Dockerfile":"bd072d6ae91a9160693e402dd77462d3c9dd0716711e719a62af330ae479eb4e","ci/docker/wasm32-unknown-emscripten/node-wrapper.sh":"0eef37c3c4fb16dbc083148b7e7af45f2ae60bd9a1b3a77e1d43da79efbd30c6","ci/docker/x86_64-linux-android/Dockerfile":"aeeaa540189ca712369c564c9a14cbace63217dadcfaf879a2cb40fbdeb08199","ci/docker/x86_64-rumprun-netbsd/Dockerfile":"e8f9287b267c6058eec42d1bca0007cb9a78a1d244dd8e11088368cb61fb17d6","ci/docker/x86_64-rumprun-netbsd/runtest.rs":"53302e9ed39293c1ec68ab56287593907d4aaf5bac9c1c2857b29f754a71d62b","ci/docker/x86_64-unknown-freebsd/Dockerfile":"ab1f14c65c29f3721c7c091bdec2e865fb1abf45fdcdc867201d087966e396c4","ci/docker/x86_64-unknown-linux-gnu/Dockerfile":"ab3fa45765802b8155996796fcad9fb82096360ac587e38e6faa3ec345268796","ci/docker/x86_64-unknown-linux-gnux32/Dockerfile":"f22ac412525ef15b33ab8ccd8193d97346faf421c17f6ddeffc25b651aba83b7","ci/docker/x86_64-unknown-linux-musl/Dockerfile":"e145784741473150473b1bef7cc3c2cf0c6339d4fc480113ac41b4247a9b38ec","ci/dox.sh":"d77171a9da467bb01fc702a28fc3b5099f82a485a627f3d5593a9830c3e1a77c","ci/emscripten-entry.sh":"c97bbec520b57af9b1ae264ca991560e99c3852c99b00a2f673c614d1ba17498","ci/emscripten.sh":"6f66c7b5c3d34a41afc59ceb0a8c3b0880cd6fd9a6344b874ae80bac0639ccb2","ci/ios/deploy_and_run_on_ios_simulator.rs":"3175066fd7f82390f6226d881e1a1dda9767ea2705656870e0d7774e2731800e","ci/landing-page-footer.html":"b70b3112c2147f5c967e7481061ef38bc2d79a28dd55a16fb916d9c9426da2c4","ci/landing-page-head.html":"ad69663fac7924f27d0209bc519d55838e86edfc4133713a6fd08caadac1b142","ci/linux-s390x.sh":"d6b732d7795b4ba131326aff893bca6228a7d2eb0e9402f135705413dbbe0dce","ci/linux-sparc64.sh":"c92966838b1ab7ad3b7a344833ee726aba6b647cf5952e56f0ad1ba420b13325","ci/run-docker.sh":"be83bc5a8b5ef913a7c9941ffca24734716028650c9a876123c4c160672c18de","ci/run-qemu.sh":"bb859421170871ef23a8940c5e150efec0c01b95e32d2ce2d37b79a45d9d346c","ci/run.sh":"25f8fd0a88d5673bb872dbb7aef8d44ebbf6c863e10352cd79de557ce3e2e252","ci/runtest-android.rs":"a07ddbdd276aedda7876c7e676774178a60d9aeab95df01275a4ee95f59e3044","ci/style.rs":"940c06a676cff1dfc1555b887e46867c6aacc473956cd6aaafaed71824facdb2","ci/test-runner-linux":"cb3713d9e4fa1d9a7c039dfd077af0939921c1f2bf969c9e680ee66e87dc30a4","src/cloudabi/aarch64.rs":"b8550bf1fd7344972aa4db29441486f39f31482d0327534981dbb75959c29114","src/cloudabi/arm.rs":"c197e2781c2839808bd6fcef219a29705b27b992d3ef920e9cf6ac96e2022bbf","src/cloudabi/mod.rs":"1c2dc787a1b3438970ccd04153c93538719b1a27445707913b90b6f0cdcdde77","src/cloudabi/x86.rs":"33eb97f272d2201f3838ae74d444583c7de8f67856852ca375293b20bbd05636","src/cloudabi/x86_64.rs":"400d85d4fe39e26cf2e6ece9ee31c75fe9e88c4bcf4d836ca9f765c05c9c5be3","src/dox.rs":"8f6037887281b828d8541ce8a549dacaed5d29c05fd9cf78b169838476b82741","src/fuchsia/aarch64.rs":"8366ac6f51e494aad9266ccab2b3a95c5ed7aa3a9f77ea672413283440919743","src/fuchsia/mod.rs":"56ee2333b856db94cc1f1f4350885ad2a4ed0e1b4e8792615aa0b257e2941192","src/fuchsia/powerpc64.rs":"390e8db54271a1d5f512d54a21b328091a792378bf9b42b49b6c1a72388da4ec","src/fuchsia/x86_64.rs":"b4a3eff94dcf1ffe41e6500468ca2cff0e97ddbcc75fe079b6ac7adb1e493f56","src/lib.rs":"e434d3def305ea28108b59841396ef8949333db9223aa11886ee05cd1c0ce8b0","src/macros.rs":"2e7048e266efdef4298254b7186a27736182c94adb0648aed0c8d735f66a5139","src/redox/mod.rs":"029a9af78211d86fe3108100c33f58d6e73ab09c826b641a9732325dc700d8e8","src/redox/net.rs":"0946ab864a2eeb20a365dc541c060f7a238c75356bb57de39956a486607f7ce1","src/unix/bsd/apple/b32.rs":"41699d2802327b0a4d4aa50cd20b1e366b442176cbedab27ca888ac0446c9156","src/unix/bsd/apple/b64.rs":"4fe7bf5de252dcd712dee0a7a8acfaa7c737c862eaa3ff669255d3f2076c5fa6","src/unix/bsd/apple/mod.rs":"3a423665ca29d73a4a29503f5f58277b7d19cb8df175c5f11666983880ef276f","src/unix/bsd/freebsdlike/dragonfly/mod.rs":"1950bf56a7ecbfc8994e4b54dc94e752d91dccd8f0e2d1e4c2d3ad2fa8cb5e23","src/unix/bsd/freebsdlike/freebsd/aarch64.rs":"97132e2097411034271b8c927ecc94a208a361564680972a6c82998bd30a9826","src/unix/bsd/freebsdlike/freebsd/mod.rs":"e762bacf0b96295ae241717210323c7442d199d9863159ee73462954fc855e1d","src/unix/bsd/freebsdlike/freebsd/x86.rs":"54311d3ebf2bb091ab22361e377e6ef9224aec2ecfe459fbfcedde4932db9c58","src/unix/bsd/freebsdlike/freebsd/x86_64.rs":"97132e2097411034271b8c927ecc94a208a361564680972a6c82998bd30a9826","src/unix/bsd/freebsdlike/mod.rs":"d6096edda549bb2af16d083ee86561f5eb6bfa728d3cfac1938f0f84592bde5d","src/unix/bsd/mod.rs":"a1030452eed4ec52a39e9f39040e8fae4309143c7af145efadd9b425caa39672","src/unix/bsd/netbsdlike/mod.rs":"a685c1d23cb17758c3249b9c4ab45a50474e79270891235176b5f796f365380c","src/unix/bsd/netbsdlike/netbsd/mod.rs":"46a28912a4741e500f392131cc71273621de0234c4c28e29d8bf51c015ca7840","src/unix/bsd/netbsdlike/netbsd/other/b32/mod.rs":"bd251a102bed65d5cb3459275f6ec3310fe5803ff4c9651212115548f86256d0","src/unix/bsd/netbsdlike/netbsd/other/b64/mod.rs":"927eeccaf3269d299db4c2a55f8010807bf43dfa894aea6a783215f5d3560baa","src/unix/bsd/netbsdlike/netbsd/other/mod.rs":"4d9f7091af8e166943ac6f42ce85558909e5b6e61325039bff7adfbcf4b90212","src/unix/bsd/netbsdlike/openbsdlike/bitrig/mod.rs":"92459d80b8e5b570c0efe35a1d244d38f23072cd28b6581dfcb313dc9bfc3d51","src/unix/bsd/netbsdlike/openbsdlike/bitrig/x86.rs":"bd251a102bed65d5cb3459275f6ec3310fe5803ff4c9651212115548f86256d0","src/unix/bsd/netbsdlike/openbsdlike/bitrig/x86_64.rs":"927eeccaf3269d299db4c2a55f8010807bf43dfa894aea6a783215f5d3560baa","src/unix/bsd/netbsdlike/openbsdlike/mod.rs":"cec53623e2269aea4437554a405452e7d3b09648b7cf6872d257d36ba979e2ec","src/unix/bsd/netbsdlike/openbsdlike/openbsd/aarch64.rs":"820092e397c7ec259cd2de8f2444083a8e57071c02d73d678701dfa7807726e9","src/unix/bsd/netbsdlike/openbsdlike/openbsd/mod.rs":"44035aad2907dffb6b18687ac7ddc76b5268af92b4e4f4c87759a00cae4de900","src/unix/bsd/netbsdlike/openbsdlike/openbsd/x86.rs":"44b7ea81cf363777b29935da175e702cbf45ed78f7498ae57faf44aa32335085","src/unix/bsd/netbsdlike/openbsdlike/openbsd/x86_64.rs":"7c959cdb3415f68a0f948117b9aa87a17463e57ab97cc3235f2567454b706653","src/unix/haiku/b32.rs":"69ae47fc52c6880e85416b4744500d5655c9ec6131cb737f3b649fceaadce15a","src/unix/haiku/b64.rs":"73e64db09275a8da8d50a13cce2cfa2b136036ddf3a930d2939f337fc995900b","src/unix/haiku/mod.rs":"ddd834c5c4e5ec7771d0f0071517c2d00095d5595f87a52245380ac762f7f011","src/unix/mod.rs":"47d253eef3bc46dacb0df2951b2136e41c4e758ffd34473b144f6108a90749f9","src/unix/newlib/aarch64/mod.rs":"c408a990f22fb4292a824f38367e9b517e6e6f8623328397ee631cc88b3d1f7d","src/unix/newlib/arm/mod.rs":"2b6dba2e697ab9b4f4bc4dd5f28057249e9b596d1cb395a9322ec87605c4a5c4","src/unix/newlib/mod.rs":"7422845a44de13a2faf15d105670525ed090c6e200c9723178ed735810bbd689","src/unix/notbsd/android/b32/arm.rs":"3625a32c7e58cfe683a53486fbe3d42d4e28f00bea31e19cb46ed2bb0b6a140b","src/unix/notbsd/android/b32/mod.rs":"2fbe398c1fb5251dda6213741a193e50aae4622807cb255d1dd2e82b536f0c65","src/unix/notbsd/android/b32/x86.rs":"ae2b7f1d6278caddc007749bb1d09ca33f7593478a0fd7fe98b457dae86c7814","src/unix/notbsd/android/b64/aarch64.rs":"63d65629d79371814910f691672ef593d20244ee09be26f1ebe07ee6212d0163","src/unix/notbsd/android/b64/mod.rs":"90d4f6b063fd4de42fd302cbc9d9902fd99ac1d71dc48cb8bc6ad7b4c902e481","src/unix/notbsd/android/b64/x86_64.rs":"5547aef8dcbaa5a932559f34606fd8d89f6c9c15173d2b1412c12d39b3c1045f","src/unix/notbsd/android/mod.rs":"c83157cf4a74c653b877c4d42b565d4a7d31e46e32015f19fc91447df2489a58","src/unix/notbsd/emscripten.rs":"5beb9bc98b6b317e85f2935db2aad9ef9cb2ab2e881917064fa7adf944568dae","src/unix/notbsd/linux/mips/mips32.rs":"df3268b082962844c94733c58782ecd9386ffe1f5ed8e05a703a6fa1e80b8f7f","src/unix/notbsd/linux/mips/mips64.rs":"88ad72fa125b9a2c0bd98ef03a7f5ceff78a39b0628d0d0f997ac9b6b82fe16b","src/unix/notbsd/linux/mips/mod.rs":"32c3e7cf430575544bbe4a670cbbf2b4dbe1f28b4895feb6f43fa33d6da25e1d","src/unix/notbsd/linux/mod.rs":"d37bd8bd956b7ab3484b2ad3ee7c1848574bbd37027c76ac06f4d7ca2906cf01","src/unix/notbsd/linux/musl/b32/arm.rs":"d2998b13648696304bb34f0793715d821178baf8e88a45b532764a20b5294232","src/unix/notbsd/linux/musl/b32/mips.rs":"340be794362a4532d709ef23542b10762f710f7bfd0c4fafa5166a3fb9a15b4f","src/unix/notbsd/linux/musl/b32/mod.rs":"3cc7979546258a47df6b0fcd7ad64571826623671857633a7acafe87e05e56a1","src/unix/notbsd/linux/musl/b32/x86.rs":"df114102dcf35bc32f891d4a9e09ce02fbe4c096a196c6b98b10ff87b29dbe4d","src/unix/notbsd/linux/musl/b64/aarch64.rs":"12c590fde2a1450c08934234c4f5bcd94ee7b58ca21f8e93bc930148c15fb0b0","src/unix/notbsd/linux/musl/b64/mod.rs":"b1991ef46a00d2db7ce3e36f6596685c1d508786c4dd4e62cbbf65ac3c256cc0","src/unix/notbsd/linux/musl/b64/powerpc64.rs":"790dca3cc6c0a4166992d2c1665e1b1e320fbad5c0b1ba3c454321a6b2d7a103","src/unix/notbsd/linux/musl/b64/x86_64.rs":"bf8fc10a09bf700084db0381c484ddec3add79aa1726954cb14d21802ff7d199","src/unix/notbsd/linux/musl/mod.rs":"a9323bffa1a8ed40a67a3b2cbb1dec6ebb0d565d8308e43e8623101ac739cd60","src/unix/notbsd/linux/other/b32/arm.rs":"d9892f7350b2978335f734f1cd2d7fed60f0f2e66aa05bee3f69549c031f8b14","src/unix/notbsd/linux/other/b32/mod.rs":"7d77f1dd8327b1249769496351cf287d0fff3852f87bde2f58afc67e6dc54a4f","src/unix/notbsd/linux/other/b32/powerpc.rs":"253fcd2f9978525285be1903cc08f3fec2dc3b12d1660a33e2995b4f6b810d1c","src/unix/notbsd/linux/other/b32/x86.rs":"49376e3ed0f3ff95c230ac20751911fe3c608dfe15c7c118b069fd7a954d8db9","src/unix/notbsd/linux/other/b64/aarch64.rs":"ed6ea00e3281ad2f4bab82821f20a2ff5b48401a65618bd6a544bc24ea4e3e39","src/unix/notbsd/linux/other/b64/mod.rs":"63e1a3fdf5f4d1b9820934ab344c91aed5e458e7e05908535d2e942d51a08bf8","src/unix/notbsd/linux/other/b64/not_x32.rs":"9b5e2321c0114c2740dcb86d9f1f3584c07ded921a157164ae8bb0712d397818","src/unix/notbsd/linux/other/b64/powerpc64.rs":"ca25b5f94a9147a984fcb70cf48a261b30df14e2e8194ac174363b6280e82a29","src/unix/notbsd/linux/other/b64/sparc64.rs":"a84580fe226654e33f8ddd0f1f7f2069c29334fc826a74f81f7892b87cfb9083","src/unix/notbsd/linux/other/b64/x32.rs":"ae7698b217106a6c00465f9d10df24d45ad9b7dfc280b24168f53f42198b7b92","src/unix/notbsd/linux/other/b64/x86_64.rs":"afba464e903d350325a1ca3d9d5af1659efc0ede83a43dbac4dbd60c522e2ad1","src/unix/notbsd/linux/other/mod.rs":"7065a7e83834f38ee2f4e03f28824eb94111c13f10e7a8b76ee7025686a84e7f","src/unix/notbsd/linux/s390x.rs":"259c5533ba7f0b10bb23d01dc0e53301afd236a7bb4339dcef9472c579503729","src/unix/notbsd/mod.rs":"eff4c19451d4d4579d5c483a941a7b259b7b73c3ab13c31fc54a7961e8292b9a","src/unix/solaris/mod.rs":"9c6af198a2f80da827054784faf70bc404673d9568fb45664b4f73c46245fdbd","src/unix/uclibc/mips/mips32.rs":"4dcb19abae37f02f08660bdad500c3230436322b581eba37287c73a742d6fcdc","src/unix/uclibc/mips/mips64.rs":"e67eec1636a998b047d89a4cda1c99cb6bc3071db017762675179a68201c4438","src/unix/uclibc/mips/mod.rs":"3f86061d05a8da7d923310550b7d40c6223f0c907d77edc86b7a78da1d647f76","src/unix/uclibc/mod.rs":"3605127517734b5f5f20be1d37e52184a77ecc6fb6099b88aa744e0aca1b802a","src/unix/uclibc/x86_64/l4re.rs":"68fd3a833fd1f7caf784a084224f384bdbdfb8b5a14ef94c4f5155409afb3439","src/unix/uclibc/x86_64/mod.rs":"69ec3ca821a483cc076e84a794bbecb3e5536af1c1d5b807eaf1db9af11f771d","src/unix/uclibc/x86_64/other.rs":"f03b47842896f2f3ae6f8ebdcbcf0276454f880349d9cf00e3d304f8136893c5","src/windows.rs":"e41357d610608bad81abf285306ad8b127b6f02d5132f63c4942861980b47d59"},"package":"b685088df2b950fccadf07a7187c8ef846a959c142338a48f9dc0b94517eb5f1"} +\ No newline at end of file ++{"files":{".cargo-ok":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",".gitignore":"7150ee9391a955b2ef7e0762fc61c0c1aab167620ca36d88d78062d93b8334ba",".travis.yml":"9750910d5fdc61263fb3eae7f5f78e2920923f250150f8500c0c22a830790acd","Cargo.toml":"4629bf1256274045a39aedc78a7f6b48b5bf7fdf177cd69c4eb65909586ab0cf","Cargo.toml.orig":"423b6276994f73cf7fc57dafad118ff8b0e207eb55ebe57a0ee1a149bf36f544","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"6485b8ed310d3f0340bf1ad1f47645069ce4069dcc6bb46c7d5c6faf41de1fdb","README.md":"fdf0f0c197e2999fce42457fb089f192a42d2fb1f743c9c8fcda1a44cb40e1fa","appveyor.yml":"216f7ac4561aa5810dc84ce5a9950897a8c0496e0615d0211d62348b1c8dc720","ci/README.md":"2e3d7ad13f8c3202e57d2af73aeeebde306221dce7c0907e462e25767a692d6b","ci/android-install-ndk.sh":"725db9025c5905849916bf7c910f98ff0e753484397c2a1f836d48a576d10890","ci/android-install-sdk.sh":"5c3fbe402ac611239ac7715a61f247d1c55fa012f33a5be0b0127dfc196965cf","ci/android-sysimage.sh":"901415631752827454c827e8c51906ba4260612e4021eda98eb7fff771c7d0e8","ci/docker/aarch64-linux-android/Dockerfile":"e17945fba1786dfe766006f50e79baf3f4151ca0c0c14ae96f91483bf345afd7","ci/docker/aarch64-unknown-linux-gnu/Dockerfile":"5f430271941e1eecdf9d1a5fb701dd5622e2c4b9da03140fd829bf216e55529d","ci/docker/aarch64-unknown-linux-musl/Dockerfile":"3e1cbf0fa728571b9be9769e5a6281c964fa5b26d586265117ccee017ca4022c","ci/docker/arm-linux-androideabi/Dockerfile":"4e0bdc13254f99bd0db195f91331c634050426e3e4a0fcc63ef25ab795fe2d46","ci/docker/arm-unknown-linux-gnueabihf/Dockerfile":"dbb025b53b27e406893184290836a50133ecae8295711d5e05b4e41fac9bd262","ci/docker/arm-unknown-linux-musleabihf/Dockerfile":"7cb6e0f8fb91c97f142a9c827687bbbc1a5e7643a3081160025d0365593a596c","ci/docker/asmjs-unknown-emscripten/Dockerfile":"0d9aea5119c2cd136cc2c0a578105d91210e45901ac49b17c5e45f458b1c7551","ci/docker/i686-linux-android/Dockerfile":"4e8377ec0bd9ad2df23bf2c5373200a12750dc9f28c4f10bc83a0150fe1623ee","ci/docker/i686-unknown-linux-gnu/Dockerfile":"f22ac412525ef15b33ab8ccd8193d97346faf421c17f6ddeffc25b651aba83b7","ci/docker/i686-unknown-linux-musl/Dockerfile":"4ac86fe9e159d454616396a9f3f07ce0f5d99cc4b49898b8d2486e6bdbfed9e9","ci/docker/mips-unknown-linux-gnu/Dockerfile":"6d2a9daa299003497c1d441d07b69f730ad75ee49f34520f959b5158e60072e0","ci/docker/mips-unknown-linux-musl/Dockerfile":"4773b2656a7dd6a3b106fcb737428436652edf3d1f48181de3f62c16bf5bd49d","ci/docker/mips64-unknown-linux-gnuabi64/Dockerfile":"7c4d26232f1c1553a6612d9b0b3faac9887e139eaffa025f70d34113dcee812f","ci/docker/mips64el-unknown-linux-gnuabi64/Dockerfile":"edb4144c07ade1a8bd65272ec1d3672ad794e9e6b7d01197896e159a70175b58","ci/docker/mipsel-unknown-linux-musl/Dockerfile":"0ca9c12b5618c6d2df04ff820d56fb28e05b43e45eaa506480126b03c5072d48","ci/docker/powerpc-unknown-linux-gnu/Dockerfile":"4b247dcc399395815ec9153c1247cc03d764896c484eddcb196d0bf8650d6311","ci/docker/powerpc64-unknown-linux-gnu/Dockerfile":"e949717a8ba5e123940729ff47ce1c45989c8b8247c576f1488f698b534e0283","ci/docker/powerpc64le-unknown-linux-gnu/Dockerfile":"018591017f499414a9f79477e1c39baa6a47f71fce6812fb1868fb0fcdfb8cea","ci/docker/s390x-unknown-linux-gnu/Dockerfile":"9860f478c5b2dc3bcf76d2cda7f71922a2a2ef54898cc2ed6ea9b9eff094a5c0","ci/docker/sparc64-unknown-linux-gnu/Dockerfile":"2312491343665d2ab36fd669f14766facbf3c7e9820ffb8f0d623830b676f8f0","ci/docker/wasm32-unknown-emscripten/Dockerfile":"bd072d6ae91a9160693e402dd77462d3c9dd0716711e719a62af330ae479eb4e","ci/docker/wasm32-unknown-emscripten/node-wrapper.sh":"0eef37c3c4fb16dbc083148b7e7af45f2ae60bd9a1b3a77e1d43da79efbd30c6","ci/docker/x86_64-linux-android/Dockerfile":"aeeaa540189ca712369c564c9a14cbace63217dadcfaf879a2cb40fbdeb08199","ci/docker/x86_64-rumprun-netbsd/Dockerfile":"e8f9287b267c6058eec42d1bca0007cb9a78a1d244dd8e11088368cb61fb17d6","ci/docker/x86_64-rumprun-netbsd/runtest.rs":"53302e9ed39293c1ec68ab56287593907d4aaf5bac9c1c2857b29f754a71d62b","ci/docker/x86_64-unknown-freebsd/Dockerfile":"ab1f14c65c29f3721c7c091bdec2e865fb1abf45fdcdc867201d087966e396c4","ci/docker/x86_64-unknown-linux-gnu/Dockerfile":"ab3fa45765802b8155996796fcad9fb82096360ac587e38e6faa3ec345268796","ci/docker/x86_64-unknown-linux-gnux32/Dockerfile":"f22ac412525ef15b33ab8ccd8193d97346faf421c17f6ddeffc25b651aba83b7","ci/docker/x86_64-unknown-linux-musl/Dockerfile":"e145784741473150473b1bef7cc3c2cf0c6339d4fc480113ac41b4247a9b38ec","ci/dox.sh":"d77171a9da467bb01fc702a28fc3b5099f82a485a627f3d5593a9830c3e1a77c","ci/emscripten-entry.sh":"c97bbec520b57af9b1ae264ca991560e99c3852c99b00a2f673c614d1ba17498","ci/emscripten.sh":"6f66c7b5c3d34a41afc59ceb0a8c3b0880cd6fd9a6344b874ae80bac0639ccb2","ci/ios/deploy_and_run_on_ios_simulator.rs":"3175066fd7f82390f6226d881e1a1dda9767ea2705656870e0d7774e2731800e","ci/landing-page-footer.html":"b70b3112c2147f5c967e7481061ef38bc2d79a28dd55a16fb916d9c9426da2c4","ci/landing-page-head.html":"ad69663fac7924f27d0209bc519d55838e86edfc4133713a6fd08caadac1b142","ci/linux-s390x.sh":"d6b732d7795b4ba131326aff893bca6228a7d2eb0e9402f135705413dbbe0dce","ci/linux-sparc64.sh":"c92966838b1ab7ad3b7a344833ee726aba6b647cf5952e56f0ad1ba420b13325","ci/run-docker.sh":"be83bc5a8b5ef913a7c9941ffca24734716028650c9a876123c4c160672c18de","ci/run-qemu.sh":"bb859421170871ef23a8940c5e150efec0c01b95e32d2ce2d37b79a45d9d346c","ci/run.sh":"25f8fd0a88d5673bb872dbb7aef8d44ebbf6c863e10352cd79de557ce3e2e252","ci/runtest-android.rs":"a07ddbdd276aedda7876c7e676774178a60d9aeab95df01275a4ee95f59e3044","ci/style.rs":"940c06a676cff1dfc1555b887e46867c6aacc473956cd6aaafaed71824facdb2","ci/test-runner-linux":"cb3713d9e4fa1d9a7c039dfd077af0939921c1f2bf969c9e680ee66e87dc30a4","src/cloudabi/aarch64.rs":"b8550bf1fd7344972aa4db29441486f39f31482d0327534981dbb75959c29114","src/cloudabi/arm.rs":"c197e2781c2839808bd6fcef219a29705b27b992d3ef920e9cf6ac96e2022bbf","src/cloudabi/mod.rs":"1c2dc787a1b3438970ccd04153c93538719b1a27445707913b90b6f0cdcdde77","src/cloudabi/x86.rs":"33eb97f272d2201f3838ae74d444583c7de8f67856852ca375293b20bbd05636","src/cloudabi/x86_64.rs":"400d85d4fe39e26cf2e6ece9ee31c75fe9e88c4bcf4d836ca9f765c05c9c5be3","src/dox.rs":"8f6037887281b828d8541ce8a549dacaed5d29c05fd9cf78b169838476b82741","src/fuchsia/aarch64.rs":"8366ac6f51e494aad9266ccab2b3a95c5ed7aa3a9f77ea672413283440919743","src/fuchsia/mod.rs":"56ee2333b856db94cc1f1f4350885ad2a4ed0e1b4e8792615aa0b257e2941192","src/fuchsia/powerpc64.rs":"390e8db54271a1d5f512d54a21b328091a792378bf9b42b49b6c1a72388da4ec","src/fuchsia/x86_64.rs":"b4a3eff94dcf1ffe41e6500468ca2cff0e97ddbcc75fe079b6ac7adb1e493f56","src/lib.rs":"e434d3def305ea28108b59841396ef8949333db9223aa11886ee05cd1c0ce8b0","src/macros.rs":"2e7048e266efdef4298254b7186a27736182c94adb0648aed0c8d735f66a5139","src/redox/mod.rs":"029a9af78211d86fe3108100c33f58d6e73ab09c826b641a9732325dc700d8e8","src/redox/net.rs":"0946ab864a2eeb20a365dc541c060f7a238c75356bb57de39956a486607f7ce1","src/unix/bsd/apple/b32.rs":"41699d2802327b0a4d4aa50cd20b1e366b442176cbedab27ca888ac0446c9156","src/unix/bsd/apple/b64.rs":"4fe7bf5de252dcd712dee0a7a8acfaa7c737c862eaa3ff669255d3f2076c5fa6","src/unix/bsd/apple/mod.rs":"3a423665ca29d73a4a29503f5f58277b7d19cb8df175c5f11666983880ef276f","src/unix/bsd/freebsdlike/dragonfly/mod.rs":"1950bf56a7ecbfc8994e4b54dc94e752d91dccd8f0e2d1e4c2d3ad2fa8cb5e23","src/unix/bsd/freebsdlike/freebsd/aarch64.rs":"97132e2097411034271b8c927ecc94a208a361564680972a6c82998bd30a9826","src/unix/bsd/freebsdlike/freebsd/mod.rs":"e762bacf0b96295ae241717210323c7442d199d9863159ee73462954fc855e1d","src/unix/bsd/freebsdlike/freebsd/x86.rs":"54311d3ebf2bb091ab22361e377e6ef9224aec2ecfe459fbfcedde4932db9c58","src/unix/bsd/freebsdlike/freebsd/x86_64.rs":"97132e2097411034271b8c927ecc94a208a361564680972a6c82998bd30a9826","src/unix/bsd/freebsdlike/mod.rs":"d6096edda549bb2af16d083ee86561f5eb6bfa728d3cfac1938f0f84592bde5d","src/unix/bsd/mod.rs":"a1030452eed4ec52a39e9f39040e8fae4309143c7af145efadd9b425caa39672","src/unix/bsd/netbsdlike/mod.rs":"a685c1d23cb17758c3249b9c4ab45a50474e79270891235176b5f796f365380c","src/unix/bsd/netbsdlike/netbsd/mod.rs":"46a28912a4741e500f392131cc71273621de0234c4c28e29d8bf51c015ca7840","src/unix/bsd/netbsdlike/netbsd/other/b32/mod.rs":"bd251a102bed65d5cb3459275f6ec3310fe5803ff4c9651212115548f86256d0","src/unix/bsd/netbsdlike/netbsd/other/b64/mod.rs":"927eeccaf3269d299db4c2a55f8010807bf43dfa894aea6a783215f5d3560baa","src/unix/bsd/netbsdlike/netbsd/other/mod.rs":"4d9f7091af8e166943ac6f42ce85558909e5b6e61325039bff7adfbcf4b90212","src/unix/bsd/netbsdlike/openbsdlike/bitrig/mod.rs":"92459d80b8e5b570c0efe35a1d244d38f23072cd28b6581dfcb313dc9bfc3d51","src/unix/bsd/netbsdlike/openbsdlike/bitrig/x86.rs":"bd251a102bed65d5cb3459275f6ec3310fe5803ff4c9651212115548f86256d0","src/unix/bsd/netbsdlike/openbsdlike/bitrig/x86_64.rs":"927eeccaf3269d299db4c2a55f8010807bf43dfa894aea6a783215f5d3560baa","src/unix/bsd/netbsdlike/openbsdlike/mod.rs":"cec53623e2269aea4437554a405452e7d3b09648b7cf6872d257d36ba979e2ec","src/unix/bsd/netbsdlike/openbsdlike/openbsd/aarch64.rs":"820092e397c7ec259cd2de8f2444083a8e57071c02d73d678701dfa7807726e9","src/unix/bsd/netbsdlike/openbsdlike/openbsd/mod.rs":"44035aad2907dffb6b18687ac7ddc76b5268af92b4e4f4c87759a00cae4de900","src/unix/bsd/netbsdlike/openbsdlike/openbsd/x86.rs":"44b7ea81cf363777b29935da175e702cbf45ed78f7498ae57faf44aa32335085","src/unix/bsd/netbsdlike/openbsdlike/openbsd/x86_64.rs":"7c959cdb3415f68a0f948117b9aa87a17463e57ab97cc3235f2567454b706653","src/unix/haiku/b32.rs":"69ae47fc52c6880e85416b4744500d5655c9ec6131cb737f3b649fceaadce15a","src/unix/haiku/b64.rs":"73e64db09275a8da8d50a13cce2cfa2b136036ddf3a930d2939f337fc995900b","src/unix/haiku/mod.rs":"ddd834c5c4e5ec7771d0f0071517c2d00095d5595f87a52245380ac762f7f011","src/unix/mod.rs":"47d253eef3bc46dacb0df2951b2136e41c4e758ffd34473b144f6108a90749f9","src/unix/newlib/aarch64/mod.rs":"c408a990f22fb4292a824f38367e9b517e6e6f8623328397ee631cc88b3d1f7d","src/unix/newlib/arm/mod.rs":"2b6dba2e697ab9b4f4bc4dd5f28057249e9b596d1cb395a9322ec87605c4a5c4","src/unix/newlib/mod.rs":"7422845a44de13a2faf15d105670525ed090c6e200c9723178ed735810bbd689","src/unix/notbsd/android/b32/arm.rs":"3625a32c7e58cfe683a53486fbe3d42d4e28f00bea31e19cb46ed2bb0b6a140b","src/unix/notbsd/android/b32/mod.rs":"2fbe398c1fb5251dda6213741a193e50aae4622807cb255d1dd2e82b536f0c65","src/unix/notbsd/android/b32/x86.rs":"ae2b7f1d6278caddc007749bb1d09ca33f7593478a0fd7fe98b457dae86c7814","src/unix/notbsd/android/b64/aarch64.rs":"63d65629d79371814910f691672ef593d20244ee09be26f1ebe07ee6212d0163","src/unix/notbsd/android/b64/mod.rs":"90d4f6b063fd4de42fd302cbc9d9902fd99ac1d71dc48cb8bc6ad7b4c902e481","src/unix/notbsd/android/b64/x86_64.rs":"5547aef8dcbaa5a932559f34606fd8d89f6c9c15173d2b1412c12d39b3c1045f","src/unix/notbsd/android/mod.rs":"c83157cf4a74c653b877c4d42b565d4a7d31e46e32015f19fc91447df2489a58","src/unix/notbsd/emscripten.rs":"5beb9bc98b6b317e85f2935db2aad9ef9cb2ab2e881917064fa7adf944568dae","src/unix/notbsd/linux/mips/mips32.rs":"df3268b082962844c94733c58782ecd9386ffe1f5ed8e05a703a6fa1e80b8f7f","src/unix/notbsd/linux/mips/mips64.rs":"88ad72fa125b9a2c0bd98ef03a7f5ceff78a39b0628d0d0f997ac9b6b82fe16b","src/unix/notbsd/linux/mips/mod.rs":"32c3e7cf430575544bbe4a670cbbf2b4dbe1f28b4895feb6f43fa33d6da25e1d","src/unix/notbsd/linux/mod.rs":"d37bd8bd956b7ab3484b2ad3ee7c1848574bbd37027c76ac06f4d7ca2906cf01","src/unix/notbsd/linux/musl/b32/arm.rs":"9d9bff31ab0925a1f62a20945d36a83b94ce3ab78dd202cd468bb31556b21725","src/unix/notbsd/linux/musl/b32/mips.rs":"cb38c463aebfc235f31880db158dd47c6e21f182a092d3f3087d92994b7711da","src/unix/notbsd/linux/musl/b32/mod.rs":"540928f168f145c136f9dd729ffa12b9d1838d9fe664fc642365d17d7fae648f","src/unix/notbsd/linux/musl/b32/x86.rs":"c02dd333012cf65cb8873fa211eff5e63d466be55451a347510e3d4f50ed515e","src/unix/notbsd/linux/musl/b64/aarch64.rs":"4d79d86d11fbb8cb7a74084e410a1140e3c89dfc1842cdfb213f3a0ca93046df","src/unix/notbsd/linux/musl/b64/mod.rs":"caac00326693b372d6805e4dda239475e7fef36368881f372c006264844fda0d","src/unix/notbsd/linux/musl/b64/powerpc64.rs":"24514e41be4b5f5e0ffbe8a25a99dae8989489b607db59e8bfa345f8e65c9963","src/unix/notbsd/linux/musl/b64/x86_64.rs":"25340999290a63d564ec149532c905f59c312ec369f8806d6b15df66fa1b8857","src/unix/notbsd/linux/musl/mod.rs":"17c70acf9c6eabeb73916c2abb7d7e8b0310214090faae4a8dc2fd183a9b45ba","src/unix/notbsd/linux/other/b32/arm.rs":"d9892f7350b2978335f734f1cd2d7fed60f0f2e66aa05bee3f69549c031f8b14","src/unix/notbsd/linux/other/b32/mod.rs":"7d77f1dd8327b1249769496351cf287d0fff3852f87bde2f58afc67e6dc54a4f","src/unix/notbsd/linux/other/b32/powerpc.rs":"253fcd2f9978525285be1903cc08f3fec2dc3b12d1660a33e2995b4f6b810d1c","src/unix/notbsd/linux/other/b32/x86.rs":"49376e3ed0f3ff95c230ac20751911fe3c608dfe15c7c118b069fd7a954d8db9","src/unix/notbsd/linux/other/b64/aarch64.rs":"ed6ea00e3281ad2f4bab82821f20a2ff5b48401a65618bd6a544bc24ea4e3e39","src/unix/notbsd/linux/other/b64/mod.rs":"63e1a3fdf5f4d1b9820934ab344c91aed5e458e7e05908535d2e942d51a08bf8","src/unix/notbsd/linux/other/b64/not_x32.rs":"9b5e2321c0114c2740dcb86d9f1f3584c07ded921a157164ae8bb0712d397818","src/unix/notbsd/linux/other/b64/powerpc64.rs":"ca25b5f94a9147a984fcb70cf48a261b30df14e2e8194ac174363b6280e82a29","src/unix/notbsd/linux/other/b64/sparc64.rs":"a84580fe226654e33f8ddd0f1f7f2069c29334fc826a74f81f7892b87cfb9083","src/unix/notbsd/linux/other/b64/x32.rs":"ae7698b217106a6c00465f9d10df24d45ad9b7dfc280b24168f53f42198b7b92","src/unix/notbsd/linux/other/b64/x86_64.rs":"afba464e903d350325a1ca3d9d5af1659efc0ede83a43dbac4dbd60c522e2ad1","src/unix/notbsd/linux/other/mod.rs":"7065a7e83834f38ee2f4e03f28824eb94111c13f10e7a8b76ee7025686a84e7f","src/unix/notbsd/linux/s390x.rs":"259c5533ba7f0b10bb23d01dc0e53301afd236a7bb4339dcef9472c579503729","src/unix/notbsd/mod.rs":"eff4c19451d4d4579d5c483a941a7b259b7b73c3ab13c31fc54a7961e8292b9a","src/unix/solaris/mod.rs":"9c6af198a2f80da827054784faf70bc404673d9568fb45664b4f73c46245fdbd","src/unix/uclibc/mips/mips32.rs":"4dcb19abae37f02f08660bdad500c3230436322b581eba37287c73a742d6fcdc","src/unix/uclibc/mips/mips64.rs":"e67eec1636a998b047d89a4cda1c99cb6bc3071db017762675179a68201c4438","src/unix/uclibc/mips/mod.rs":"3f86061d05a8da7d923310550b7d40c6223f0c907d77edc86b7a78da1d647f76","src/unix/uclibc/mod.rs":"3605127517734b5f5f20be1d37e52184a77ecc6fb6099b88aa744e0aca1b802a","src/unix/uclibc/x86_64/l4re.rs":"68fd3a833fd1f7caf784a084224f384bdbdfb8b5a14ef94c4f5155409afb3439","src/unix/uclibc/x86_64/mod.rs":"69ec3ca821a483cc076e84a794bbecb3e5536af1c1d5b807eaf1db9af11f771d","src/unix/uclibc/x86_64/other.rs":"f03b47842896f2f3ae6f8ebdcbcf0276454f880349d9cf00e3d304f8136893c5","src/windows.rs":"e41357d610608bad81abf285306ad8b127b6f02d5132f63c4942861980b47d59"},"package":"b685088df2b950fccadf07a7187c8ef846a959c142338a48f9dc0b94517eb5f1"} +\ No newline at end of file diff --git a/user/rust/0035-rand-5b9e5c39d857.patch b/user/rust/0035-rand-5b9e5c39d857.patch new file mode 100644 index 000000000..6f9d072f8 --- /dev/null +++ b/user/rust/0035-rand-5b9e5c39d857.patch @@ -0,0 +1,25 @@ +From 5b9e5c39d857312fb308493ac8d0b89f73607941 Mon Sep 17 00:00:00 2001 +From: Lion Yang <lion@aosc.io> +Date: Wed, 15 Aug 2018 16:10:37 +0800 +Subject: [PATCH] os.rs: fix wrong syscall number for PowerPC + +__NR_getrandom is 359 on PowerPC, added from torvalds/linux@7d59deb50aa v3.17-rc5. +The bug was introduced from 05f23d275 3 years ago, affecting from 0.1.1 to before 0.5.0-pre.0. +It has already been fixed on the 0.5 branch at 00713a61c so this is a backport. +--- + src/os.rs | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/vendor/rand-0.4.2/src/os.rs b/src/vendor/rand-0.4.2/src/os.rs +index 633594ec7d..10022fbcd6 100644 +--- a/src/vendor/rand-0.4.2/src/os.rs ++++ b/src/vendor/rand-0.4.2/src/os.rs +@@ -102,7 +102,7 @@ mod imp { + #[cfg(target_arch = "aarch64")] + const NR_GETRANDOM: libc::c_long = 278; + #[cfg(target_arch = "powerpc")] +- const NR_GETRANDOM: libc::c_long = 384; ++ const NR_GETRANDOM: libc::c_long = 359; + + unsafe { + syscall(NR_GETRANDOM, buf.as_mut_ptr(), buf.len(), 0) diff --git a/user/rust/0036-rand-checksums.patch b/user/rust/0036-rand-checksums.patch new file mode 100644 index 000000000..a998157ce --- /dev/null +++ b/user/rust/0036-rand-checksums.patch @@ -0,0 +1,9 @@ +diff --git a/src/vendor/rand-0.4.2/.cargo-checksum.json.orig b/src/vendor/rand-0.4.2/.cargo-checksum.json +index 67115b1a..77781e37 100644 +--- a/src/vendor/rand-0.4.2/.cargo-checksum.json.orig ++++ b/src/vendor/rand-0.4.2/.cargo-checksum.json +@@ -1 +1 @@ +-{"files":{".cargo-ok":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",".gitignore":"f9b1ca6ae27d1c18215265024629a8960c31379f206d9ed20f64e0b2dcf79805",".travis.yml":"12868a81c3590d8f2c08d53ca51e6b4b9be39d854f81bd4a57f82466cbe8d79a","CHANGELOG.md":"03974fa236c7ac7a29931ef548d05ba1d8e00b1202961310f6d837aca9bc377a","Cargo.toml":"09b6978ce09c8df87e5fe605d1ff5ea920747da588523df8f2f5d1ca3292db80","Cargo.toml.orig":"02e9cb4d497d9ffbcb3cc0a227a9c7497e905a7d889a175b048aa03f8600cb16","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"6485b8ed310d3f0340bf1ad1f47645069ce4069dcc6bb46c7d5c6faf41de1fdb","README.md":"f15d6584b8f417cc743ebcad6b69776874a6ac30807d0ce0ed28f3779be1f151","appveyor.yml":"8796156caf7041ef2a43f7a313df21ea639de3f2563b6181bba1096b1c489f1b","benches/bench.rs":"35c4ab609f2a5f5aab6c52c257415258dc0780621b492b5a82bb12d048cab6db","benches/distributions/exponential.rs":"99cb59c013a0b6bb390d34c5649b341fc3b88ea7df0caf2470bdda8798f9fe3d","benches/distributions/gamma.rs":"3533f311e4b55d743c5b01a7eb6529c94fd97726ef6702a6372f914f5f33666b","benches/distributions/mod.rs":"0028f1cb96f61152ed5b49a4fe91227d809ef6d19035592c36032a538af7f95e","benches/distributions/normal.rs":"4e10c18cb583ccb96301ea953c8e0aa9ee3b6662060271d1b8d19ca23364dc6b","benches/generators.rs":"aaa2f1dbfb399df8323d8a5796b92add6210cd5f0f1d916895ffdd81d60f812b","benches/misc.rs":"bd2f7c5a16f0fcb59022d5aeef66ed3c94e89ebf6c06667851dd23d0b1595504","src/distributions/exponential.rs":"103c8412c8a581b71835f1c00e40f6370e7702adf9d499243933a793d132d4e7","src/distributions/gamma.rs":"7a3f85c8daad4e56e334586ddb9fc9d83df3b0699738ed681a6c41e4ed455be9","src/distributions/mod.rs":"7943c4f83721bac816f831cca3b1574b6136932f7b4927aa6101130080ba62c5","src/distributions/normal.rs":"1562b43f80e4d5f83a8deb5af18de5a18dfeeeeda11fefc577da26672b14c949","src/distributions/range.rs":"a72a538d3ec4ed23f8d632aa55fd4793c464f24a5872d04ce8095ddd5db92115","src/distributions/ziggurat_tables.rs":"4eacf94fc352c91c455a6623de6a721e53842e1690f13a5662b6a79c7fbb73de","src/jitter.rs":"befd4b84bf753c107370b5b9498ad49611c220bdae2e4be9ee4398e9fa497042","src/lib.rs":"c86b28064c2c5abd02694e8bf97c84513b21fefe04e4305f9a78d5e864ef3e3f","src/os.rs":"38c2f26c2784c61ae9a17a7a9c59fcf449dada826a66f66b7f46b0992ef001de","src/prng/chacha.rs":"558007276f9c22933d39e5b8e853f4dd9533e823ed66df8dc1f23ad6925b1d51","src/prng/isaac.rs":"a8a2ee8b38d312663308e3bdf03376e342fd91330655f39144e5bba7392b2a8e","src/prng/isaac64.rs":"f28f7596ccab910db265b42671116abb9d2039fa8a421cbc75312bd0e7715d3a","src/prng/mod.rs":"c1a73450f49e819a20942a5b591f84a08ebb5ac33aa0f65b18ac1dc9a19a3084","src/prng/xorshift.rs":"606c308747293652c868b46dc3cad847d0c3717629c04ba75681c887c7634114","src/rand_impls.rs":"e1f27077fc13d5855bb66235f8ccfb216e116337eb38424d9c30c090e112215c","src/read.rs":"bd0eb508a6b659dc578d546fc2f231484aed80c73cfe8c475e0d65c8d699a769","src/reseeding.rs":"a97b86387b87ea1adc5262ddea480fe735c9c2a86762abaace29119022ac9f6e","src/seq.rs":"76dd58af0f580aed2721c393a5c036322186dc7cb3b4abed33436620c7c49288","utils/ziggurat_tables.py":"a9fc0a2fdae9b5c798c238788f94b720c156e13fd96f2356c409aa533191eb94"},"package":"eba5f8cb59cc50ed56be8880a5c7b496bfd9bd26394e176bc67884094145c2c5"} +\ No newline at end of file ++{"files":{".cargo-ok":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",".gitignore":"f9b1ca6ae27d1c18215265024629a8960c31379f206d9ed20f64e0b2dcf79805",".travis.yml":"12868a81c3590d8f2c08d53ca51e6b4b9be39d854f81bd4a57f82466cbe8d79a","CHANGELOG.md":"03974fa236c7ac7a29931ef548d05ba1d8e00b1202961310f6d837aca9bc377a","Cargo.toml":"09b6978ce09c8df87e5fe605d1ff5ea920747da588523df8f2f5d1ca3292db80","Cargo.toml.orig":"02e9cb4d497d9ffbcb3cc0a227a9c7497e905a7d889a175b048aa03f8600cb16","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"6485b8ed310d3f0340bf1ad1f47645069ce4069dcc6bb46c7d5c6faf41de1fdb","README.md":"f15d6584b8f417cc743ebcad6b69776874a6ac30807d0ce0ed28f3779be1f151","appveyor.yml":"8796156caf7041ef2a43f7a313df21ea639de3f2563b6181bba1096b1c489f1b","benches/bench.rs":"35c4ab609f2a5f5aab6c52c257415258dc0780621b492b5a82bb12d048cab6db","benches/distributions/exponential.rs":"99cb59c013a0b6bb390d34c5649b341fc3b88ea7df0caf2470bdda8798f9fe3d","benches/distributions/gamma.rs":"3533f311e4b55d743c5b01a7eb6529c94fd97726ef6702a6372f914f5f33666b","benches/distributions/mod.rs":"0028f1cb96f61152ed5b49a4fe91227d809ef6d19035592c36032a538af7f95e","benches/distributions/normal.rs":"4e10c18cb583ccb96301ea953c8e0aa9ee3b6662060271d1b8d19ca23364dc6b","benches/generators.rs":"aaa2f1dbfb399df8323d8a5796b92add6210cd5f0f1d916895ffdd81d60f812b","benches/misc.rs":"bd2f7c5a16f0fcb59022d5aeef66ed3c94e89ebf6c06667851dd23d0b1595504","src/distributions/exponential.rs":"103c8412c8a581b71835f1c00e40f6370e7702adf9d499243933a793d132d4e7","src/distributions/gamma.rs":"7a3f85c8daad4e56e334586ddb9fc9d83df3b0699738ed681a6c41e4ed455be9","src/distributions/mod.rs":"7943c4f83721bac816f831cca3b1574b6136932f7b4927aa6101130080ba62c5","src/distributions/normal.rs":"1562b43f80e4d5f83a8deb5af18de5a18dfeeeeda11fefc577da26672b14c949","src/distributions/range.rs":"a72a538d3ec4ed23f8d632aa55fd4793c464f24a5872d04ce8095ddd5db92115","src/distributions/ziggurat_tables.rs":"4eacf94fc352c91c455a6623de6a721e53842e1690f13a5662b6a79c7fbb73de","src/jitter.rs":"befd4b84bf753c107370b5b9498ad49611c220bdae2e4be9ee4398e9fa497042","src/lib.rs":"c86b28064c2c5abd02694e8bf97c84513b21fefe04e4305f9a78d5e864ef3e3f","src/os.rs":"4860f165f68b7c978b0488c75d264cd9aaf54e7e4484036736ee5c4f5b6bd78d","src/prng/chacha.rs":"558007276f9c22933d39e5b8e853f4dd9533e823ed66df8dc1f23ad6925b1d51","src/prng/isaac.rs":"a8a2ee8b38d312663308e3bdf03376e342fd91330655f39144e5bba7392b2a8e","src/prng/isaac64.rs":"f28f7596ccab910db265b42671116abb9d2039fa8a421cbc75312bd0e7715d3a","src/prng/mod.rs":"c1a73450f49e819a20942a5b591f84a08ebb5ac33aa0f65b18ac1dc9a19a3084","src/prng/xorshift.rs":"606c308747293652c868b46dc3cad847d0c3717629c04ba75681c887c7634114","src/rand_impls.rs":"e1f27077fc13d5855bb66235f8ccfb216e116337eb38424d9c30c090e112215c","src/read.rs":"bd0eb508a6b659dc578d546fc2f231484aed80c73cfe8c475e0d65c8d699a769","src/reseeding.rs":"a97b86387b87ea1adc5262ddea480fe735c9c2a86762abaace29119022ac9f6e","src/seq.rs":"76dd58af0f580aed2721c393a5c036322186dc7cb3b4abed33436620c7c49288","utils/ziggurat_tables.py":"a9fc0a2fdae9b5c798c238788f94b720c156e13fd96f2356c409aa533191eb94"},"package":"eba5f8cb59cc50ed56be8880a5c7b496bfd9bd26394e176bc67884094145c2c5"} +\ No newline at end of file diff --git a/user/rust/0040-rls-atomics.patch b/user/rust/0040-rls-atomics.patch new file mode 100644 index 000000000..61811ef4d --- /dev/null +++ b/user/rust/0040-rls-atomics.patch @@ -0,0 +1,63 @@ +diff --git a/src/tools/rls/src/cmd.rs b/src/tools/rls/src/cmd.rs +index 545a129..8285f99 100644 +--- a/src/tools/rls/src/cmd.rs ++++ b/src/tools/rls/src/cmd.rs +@@ -16,7 +16,7 @@ use crate::actions::requests; + use rls_analysis::{AnalysisHost, Target}; + use crate::config::Config; + use crate::server::{self, LsService, Notification, Request, RequestId}; +-use std::sync::atomic::{AtomicU64, Ordering}; ++use std::sync::atomic::{AtomicU32, Ordering}; + use rls_vfs::Vfs; + + use languageserver_types::{ +@@ -415,8 +415,8 @@ fn url(file_name: &str) -> Url { + } + + fn next_id() -> RequestId { +- static ID: AtomicU64 = AtomicU64::new(1); +- RequestId::Num(ID.fetch_add(1, Ordering::SeqCst)) ++ static ID: AtomicU32 = AtomicU32::new(1); ++ RequestId::Num(ID.fetch_add(1, Ordering::SeqCst).into()) + } + + // Custom reader and output for the RLS server. +diff --git a/src/tools/rls/src/server/io.rs b/src/tools/rls/src/server/io.rs +index 5d5060e..55ab545 100644 +--- a/src/tools/rls/src/server/io.rs ++++ b/src/tools/rls/src/server/io.rs +@@ -17,7 +17,7 @@ use crate::lsp_data::{LSPNotification, LSPRequest}; + + use std::fmt; + use std::io::{self, BufRead, Write}; +-use std::sync::atomic::{AtomicU64, Ordering}; ++use std::sync::atomic::{AtomicU32, Ordering}; + use std::sync::Arc; + + use jsonrpc_core::{self as jsonrpc, response, version, Id}; +@@ -190,14 +190,14 @@ pub trait Output: Sync + Send + Clone + 'static { + /// An output that sends notifications and responses on `stdout`. + #[derive(Clone)] + pub(super) struct StdioOutput { +- next_id: Arc<AtomicU64>, ++ next_id: Arc<AtomicU32>, + } + + impl StdioOutput { + /// Construct a new `stdout` output. + crate fn new() -> StdioOutput { + StdioOutput { +- next_id: Arc::new(AtomicU64::new(1)), ++ next_id: Arc::new(AtomicU32::new(1).into()), + } + } + } +@@ -215,7 +215,7 @@ impl Output for StdioOutput { + } + + fn provide_id(&self) -> RequestId { +- RequestId::Num(self.next_id.fetch_add(1, Ordering::SeqCst)) ++ RequestId::Num(self.next_id.fetch_add(1, Ordering::SeqCst).into()) + } + } + diff --git a/user/rust/APKBUILD b/user/rust/APKBUILD new file mode 100644 index 000000000..1a1d55468 --- /dev/null +++ b/user/rust/APKBUILD @@ -0,0 +1,351 @@ +# Contributor: Jakub Jirutka <jakub@jirutka.cz> +# Contributor: Shiz <hi@shiz.me> +# Contributor: Jeizsm <jeizsm@gmail.com> +# Maintainer: Samuel Holland <samuel@sholland.org> +pkgname=rust +pkgver=1.29.1 +_bootcargover=0.30.0 +_bootver=1.29.1 +_llvmver=6 +pkgrel=0 +pkgdesc="The Rust Programming Language" +url="https://www.rust-lang.org" +arch="all" +license="(Apache-2.0 OR MIT) AND (NCSA OR MIT) AND BSD-2-Clause AND BSD-3-Clause" +depends="$pkgname-stdlib=$pkgver-r$pkgrel gcc musl-dev" +makedepends=" + curl-dev + libgit2-dev + libssh2-dev + llvm$_llvmver-dev + llvm$_llvmver-test-utils + openssl-dev + python3 + zlib-dev + " +subpackages=" + $pkgname-dbg + $pkgname-stdlib + $pkgname-analysis + $pkgname-doc + $pkgname-gdb::noarch + $pkgname-lldb::noarch + $pkgname-src::noarch + cargo + cargo-clippy:_cargo_clippy + cargo-fmt:_cargo_fmt + cargo-doc:_cargo_doc:noarch + cargo-bash-completion:_cargo_bashcomp:noarch + cargo-zsh-completion:_cargo_zshcomp:noarch + rls + rustfmt + " +source="https://static.rust-lang.org/dist/rustc-$pkgver-src.tar.xz + https://distfiles.adelielinux.org/source/rust/cargo-$_bootcargover-$CBUILD.tar.xz + https://distfiles.adelielinux.org/source/rust/rust-std-$_bootver-$CBUILD.tar.xz + https://distfiles.adelielinux.org/source/rust/rustc-$_bootver-$CBUILD.tar.xz + 0001-Require-static-native-libraries-when-linking-static-.patch + 0002-Don-t-pass-CFLAGS-to-the-C-compiler.patch + 0003-Fix-LLVM-build.patch + 0004-test-sysroot-crates-are-unstable-Fix-test-when-rpath.patch + 0005-Remove-nostdlib-and-musl_root-from-musl-targets.patch + 0006-Prefer-libgcc_eh-over-libunwind-for-musl.patch + 0007-runtest-Fix-proc-macro-tests-on-musl-hosts.patch + 0008-Allow-rustdoc-to-work-when-cross-compiling-on-musl.patch + 0009-Add-missing-OpenSSL-configurations-for-musl-targets.patch + 0010-test-linkage-visibility-dlsym-only-sees-exported-sym.patch + 0011-test-invalid_const_promotion-Accept-SIGTRAP-as-a-val.patch + 0015-flock-Fix-F_SETLK-F_SETLKW-on-32-bit-O_LARGEFILE.patch + 0016-Add-powerpc-unknown-linux-musl-target.patch + 0017-Use-the-ELFv2-ABI-on-powerpc64-musl.patch + 0018-Fix-powerpc64-ELFv2-big-endian-struct-passing-ABI.patch + 0019-Add-powerpc64-unknown-linux-musl-target.patch + 0020-run-pass-const-endianness-negate-before-to_le.patch + 0021-Fix-double_check-tests-on-big-endian-targets.patch + 0022-x.py-Use-python3-instead-of-python.patch + 0023-test-target-feature-gate-Only-run-on-relevant-target.patch + 0024-test-use-extern-for-plugins-Don-t-assume-multilib.patch + 0025-Ignore-broken-and-non-applicable-tests.patch + 0026-Link-stage-2-tools-dynamically-to-libstd.patch + 0027-Move-debugger-scripts-to-usr-share-rust.patch + 0028-Add-foxkit-target-specs.patch + 0029-Work-around-libbacktrace-built-with-fstack-protector.patch + 0030-liblibc-linkage.patch + 0031-liblibc-0163a7ce20b5.patch + 0032-libc-dcff154781e4.patch + 0033-libc-90c01fa6b0f4.patch + 0034-libc-0163a7ce20b5.patch + 0035-libc-checksums.patch + 0035-rand-5b9e5c39d857.patch + 0036-rand-checksums.patch + 0040-rls-atomics.patch + " +builddir="$srcdir/rustc-$pkgver-src" +_rlibdir="/usr/lib/rustlib/$CTARGET/lib" + +prepare() { + cd "$builddir" + + default_prepare + + $srcdir/cargo-$_bootcargover-$CBUILD/install.sh \ + --destdir=$srcdir/prebuilt \ + --prefix=/ \ + --disable-ldconfig + $srcdir/rust-std-$_bootver-$CBUILD/install.sh \ + --destdir=$srcdir/prebuilt \ + --prefix=/ \ + --disable-ldconfig + $srcdir/rustc-$_bootver-$CBUILD/install.sh \ + --destdir=$srcdir/prebuilt \ + --prefix=/ \ + --disable-ldconfig +} + +build() { + cd "$builddir" + + cat > config.toml <<- EOF + [build] + build = "$CBUILD" + host = [ "$CHOST" ] + target = [ "$CTARGET" ] + cargo = "$srcdir/prebuilt/bin/cargo" + rustc = "$srcdir/prebuilt/bin/rustc" + submodules = false + python = "python3" + locked-deps = true + vendor = true + extended = true + tools = [ "analysis", "cargo", "clippy", "rls", "rustfmt", "src" ] + [install] + prefix = "/usr" + [rust] + codegen-units = 1 + debuginfo = true + debuginfo-lines = true + debuginfo-only-std = false + debuginfo-tools = true + use-jemalloc = false + backtrace = true + channel = "stable" + rpath = false + [target.$CTARGET] + cc = "$CTARGET-gcc" + cxx = "$CTARGET-g++" + linker = "$CTARGET-gcc" + llvm-config = "/usr/lib/llvm$_llvmver/bin/llvm-config" + crt-static = false + EOF + + LIBGIT2_SYS_USE_PKG_CONFIG=1 \ + LLVM_LINK_SHARED=1 \ + RUST_BACKTRACE=1 \ + ./x.py build -j ${JOBS:-2} +} + +check() { + cd "$builddir" + + ./x.py test -j ${JOBS:-2} --no-doc --no-fail-fast \ + src/test/codegen \ + src/test/codegen-units \ + src/test/compile-fail \ + src/test/compile-fail-fulldeps \ + src/test/incremental \ + src/test/incremental-fulldeps \ + src/test/mir-opt \ + src/test/parse-fail \ + src/test/pretty \ + src/test/run-fail \ + src/test/run-fail/pretty \ + src/test/run-fail-fulldeps \ + src/test/run-fail-fulldeps/pretty \ + src/test/run-make \ + src/test/run-make-fulldeps \ + src/test/run-pass \ + src/test/run-pass/pretty \ + src/test/run-pass-fulldeps \ + src/test/run-pass-fulldeps/pretty \ + src/test/ui \ + src/test/ui-fulldeps +} + +package() { + cd "$builddir" + + DESTDIR="$pkgdir" ./x.py install + + rm "$pkgdir"/usr/lib/*.so \ + "$pkgdir"/usr/lib/rustlib/components \ + "$pkgdir"/usr/lib/rustlib/install.log \ + "$pkgdir"/usr/lib/rustlib/manifest-* \ + "$pkgdir"/usr/lib/rustlib/rust-installer-version \ + "$pkgdir"/usr/lib/rustlib/uninstall.sh \ + "$pkgdir"/usr/share/doc/rust/*.old +} + +stdlib() { + pkgdesc="Standard library for Rust" + depends="musl-utils" + + _mv "$pkgdir"$_rlibdir/*.so "$subpkgdir"$_rlibdir + + mkdir -p "$subpkgdir"/etc/ld.so.conf.d + echo "$_rlibdir" > "$subpkgdir"/etc/ld.so.conf.d/$pkgname.conf +} + +analysis() { + pkgdesc="Compiler analysis data for the Rust standard library" + depends="$pkgname=$pkgver-r$pkgrel $pkgname-stdlib=$pkgver-r$pkgrel" + + _mv "$pkgdir"${_rlibdir%/*}/analysis "$subpkgdir"${_rlibdir%/*} +} + +gdb() { + pkgdesc="GDB pretty printers for Rust" + license="Apache-2.0 OR MIT" + depends="$pkgname gdb" + install_if="$pkgname=$pkgver-r$pkgrel gdb" + + _mv "$pkgdir"/usr/bin/rust-gdb "$subpkgdir"/usr/bin + _mv "$pkgdir"/usr/share/rust/gdb_*.py "$subpkgdir"/usr/share/rust || true +} + +lldb() { + pkgdesc="LLDB pretty printers for Rust" + license="Apache-2.0 OR MIT" + depends="$pkgname lldb py3-lldb" + install_if="$pkgname=$pkgver-r$pkgrel lldb" + + _mv "$pkgdir"/usr/bin/rust-lldb "$subpkgdir"/usr/bin + _mv "$pkgdir"/usr/share/rust/lldb_*.py "$subpkgdir"/usr/share/rust || true +} + +src() { + pkgdesc="$pkgdesc (source code)" + depends="" + + _mv "$pkgdir"/usr/lib/rustlib/src/rust "$subpkgdir"/usr/src + rmdir -p "$pkgdir"/usr/lib/rustlib/src 2>/dev/null || true + + mkdir -p "$subpkgdir"/usr/lib/rustlib/src + ln -s ../../../src/rust "$subpkgdir"/usr/lib/rustlib/src/rust +} + +cargo() { + pkgdesc="The Rust package manager" + depends="$pkgname-stdlib=$pkgver-r$pkgrel $pkgname" + + _mv "$pkgdir"/usr/bin/cargo "$subpkgdir"/usr/bin +} + +_cargo_clippy() { + pkgdesc="A collection of Rust lints (cargo plugin)" + depends="$pkgname-stdlib=$pkgver-r$pkgrel cargo" + + _mv "$pkgdir"/usr/bin/cargo-clippy \ + "$pkgdir"/usr/bin/clippy-driver \ + "$subpkgdir"/usr/bin +} + +_cargo_fmt() { + pkgdesc="Format Rust code (cargo plugin)" + depends="$pkgname-stdlib=$pkgver-r$pkgrel cargo rustfmt" + install_if="cargo=$pkgver-r$pkgrel rustfmt=$pkgver-r$pkgrel" + + _mv "$pkgdir"/usr/bin/cargo-fmt "$subpkgdir"/usr/bin +} + +_cargo_bashcomp() { + pkgdesc="Bash completion for cargo" + license="Apache-2.0 OR MIT" + depends="" + install_if="cargo=$pkgver-r$pkgrel bash-completion" + + _mv "$pkgdir"/etc/bash_completion.d/cargo \ + "$subpkgdir"/usr/share/bash-completion/completions + rmdir -p "$pkgdir"/etc/bash_completion.d 2>/dev/null || true +} + +_cargo_zshcomp() { + pkgdesc="ZSH completion for cargo" + license="Apache-2.0 OR MIT" + depends="" + install_if="cargo=$pkgver-r$pkgrel zsh" + + _mv "$pkgdir"/usr/share/zsh/site-functions/_cargo \ + "$subpkgdir"/usr/share/zsh/site-functions/_cargo + rmdir -p "$pkgdir"/usr/share/zsh/site-functions 2>/dev/null || true +} + +_cargo_doc() { + pkgdesc="The Rust package manager (documentation)" + license="Apache-2.0 OR MIT" + depends="" + install_if="cargo=$pkgver-r$pkgrel docs" + + # XXX: This is hackish! + _mv "$pkgdir"/../$pkgname-doc/usr/share/man/man1/cargo* \ + "$subpkgdir"/usr/share/man/man1 +} + +rls() { + pkgdesc="The Rust language server" + license="Apache-2.0 OR MIT" + depends="$pkgname-stdlib=$pkgver-r$pkgrel" + + _mv "$pkgdir"/usr/bin/rls "$subpkgdir"/usr/bin +} + +rustfmt() { + pkgdesc="Format Rust code" + depends="$pkgname-stdlib=$pkgver-r$pkgrel" + + _mv "$pkgdir"/usr/bin/rustfmt "$subpkgdir"/usr/bin +} + +_mv() { + local dest; for dest; do true; done # get last argument + mkdir -p "$dest" + mv "$@" +} +sha512sums="1ded651b4c460e11e5e44c26de88a80fb13c2000097de2ee1e5af89638e12a7e8f43dd756689d4cc4fad45c52d4d43a3c70dd6a3ae550735b9dad5f8defea6a7 rustc-1.29.1-src.tar.xz +bd1fd3694947fc192419dab1e1e314fb5a9d7266715b5765dd1766507a234b6ad93bd097f531d560adc8b9f71534f53c440e6986e63b322319fcd0c24325d979 cargo-0.30.0-powerpc64-foxkit-linux-musl.tar.xz +d6ce24de73131702b623e8a146435526457b6d766fe6192df7471f1942119a6396b85121ce2250da3c3ec21b44aaff316e5c0387796654129d074d29d60a25b2 rust-std-1.29.1-powerpc64-foxkit-linux-musl.tar.xz +b649fc30dee7510f656c53f3a5737a66d59726e24be7085134504f0202a899e549274df417c814487e5fbd8bbb69470411c9ed770dbc37af15a99a63f913a508 rustc-1.29.1-powerpc64-foxkit-linux-musl.tar.xz +a242a6cdc95ecfa402e1457bc9e3b98305b8a5bcb5f54904807382cc98720e2a8fd16cee311edba84eb64129c591a58ed1f70798269832ccf19f1af79efe8b70 0001-Require-static-native-libraries-when-linking-static-.patch +2b2dc29d31351e21e10808a0223b8b43d3804f0fbef6a97d6016958bb982850d0a63b73f1133ca4e70ad5c5901a3357c279e40a5c60379eb8ac070a9fb78a203 0002-Don-t-pass-CFLAGS-to-the-C-compiler.patch +6f291642e2ce0cbe57e5354d4eff2745b651b3308771fd122edcb75ff7b809a34ee98c5ab2b64699b60e6be1007a383b29e0f991a9539f85a4c6c19e239c7654 0003-Fix-LLVM-build.patch +4f1a716e22126d65f4b32be6210293a32e54c3b4c8655097962e2d0d44c1b976cb923fc99dbf8d6487541518e9c8ed73d3d2efb6da3b881513d8243808de7adf 0004-test-sysroot-crates-are-unstable-Fix-test-when-rpath.patch +7ff0c4cfc040f47b9dcf28d64bbcdf45d674bbd3a05e7d3646474044e0713d80d878d8cc39dd5029cd6f7c2c6d53c08ea445eacf147ccf14de1d729bf6a83734 0005-Remove-nostdlib-and-musl_root-from-musl-targets.patch +f1b9d68d4685db660b6c09cfa5ce0f818a3146e458973b942ac7991cfdd849976da7bc4e7245b9aa0ace498b51c9dbe9def3f2ffc277f52d2883f8b8fd0c47ef 0006-Prefer-libgcc_eh-over-libunwind-for-musl.patch +14cd3ff8d3e1d41014008ec8da958b72383c5fab6066d4dd21f4c02043fbea9ef159a1a76b718ec54c135fe971c7269d88b9703692706d23ed409022b0e57221 0007-runtest-Fix-proc-macro-tests-on-musl-hosts.patch +e7de9eec874e08d3aaaa1389ed827ccb201659f792d4b64bf430a1b972b1d1f793fb14131d60df92d84af35da01eee4d59f6b8f631acfef95284688cde45fe04 0008-Allow-rustdoc-to-work-when-cross-compiling-on-musl.patch +8c2cbe4c0a99c38e4c7f05b30d396acfbe0511c06b433a468c35477cda73e77a4a0d61f809465d29e92bf3960dc25d5d860d28c79be42ac25f336aea40a24881 0009-Add-missing-OpenSSL-configurations-for-musl-targets.patch +38085c8f79a3fda0f31cc733044c50fdfb1bff82da4f4cb40f280bf0924c53cfb1fab31a8345e40ae2960f1c1b495570d8219c9c9958db4da184f7120e07a4ad 0010-test-linkage-visibility-dlsym-only-sees-exported-sym.patch +93faeccf86b7920d48aba11e3345459e828a47a2b709ac65bc1ed71ef928ae18539040390f394c58fadbe0f44459248018c3cf0b0ac64aedd0f27a5ae866d69e 0011-test-invalid_const_promotion-Accept-SIGTRAP-as-a-val.patch +c2208400ee5a9f0f7b7897effe536f5937e05c0c4214f5974194ef8c41fc3013ca5224594add1b9fb83f50c9372bd659b7a34442fc3462d43fe8fe6dbdceb1ad 0015-flock-Fix-F_SETLK-F_SETLKW-on-32-bit-O_LARGEFILE.patch +157b6e658ad39d01a7bcee16de5a7b4cb0c8a95a55ace9ca24ac499dee343db7de5d7455443f868cd02f612ef9f6787001ee8e53d8b046304d451507e25ca7ce 0016-Add-powerpc-unknown-linux-musl-target.patch +2f353c5e29e00f9e8f28b6c9010b204138a6913565674afd40ab79f2b434ed8af8296d2fe92459c103eb6262579466c44be2280e5ec46e129855fcb06f314e32 0017-Use-the-ELFv2-ABI-on-powerpc64-musl.patch +c63ce49e7041991e78921d4b6f36e037fbcf478eb30a8590fbb0349bc55ead4639ebf95f8d90d7d572244dbf14f74471c192cc2c7dd020fb8f274e885f130c29 0018-Fix-powerpc64-ELFv2-big-endian-struct-passing-ABI.patch +96d6473a9a1aed1df0911da4583ff8377ecf9cea920aaeafdbf4f4db652027e2937e1108eb21aafc044c0b45a6cd1f152393c5fa527cdabd4ce4e70f69fe15c6 0019-Add-powerpc64-unknown-linux-musl-target.patch +133f2b57e351dd6a75ac3abe3d980c3e1e40af4cdfe7fc4a05ed3e45029ae69ab979db7edb2b890742c107120f436404fc720e20df52fd9d5ff14d22a7d82aa4 0020-run-pass-const-endianness-negate-before-to_le.patch +652420d7bdc9be4e6136577e375e9b43f7c4086b3f0c1b4739c7eb6303c7826df84f40da7811618f296edcf712357e4b046e477b748605d066ab6d8015c6a619 0021-Fix-double_check-tests-on-big-endian-targets.patch +7eb0c8eb095ca0201b26444b275005a89921731e87fb7a82d3d46215f14acc8b987134288955fc90f9d419ebe0cb26e09589906aa954bcbe229e25b737c64c7d 0022-x.py-Use-python3-instead-of-python.patch +231d37dcd04787300a38122f1482b616970e070a4a87349aeaf5ec9f7d15563feeaa88be9cfc0863640b22596f5c2e2acfe7f9b22e43e6f1ee90f3b4730e746b 0023-test-target-feature-gate-Only-run-on-relevant-target.patch +b6c34f9982d6f5b59acc716391a63f922accf69bdcf2631ab57ce3279a62e1874bceb7d0707fdd5290a17ec88e948d803c567476f904f96b7e5d7a240a4ee53c 0024-test-use-extern-for-plugins-Don-t-assume-multilib.patch +cf8d642afcfd27fbc8c982a27d7d09f6097f1d0bfb67251d3a51323bd86743f584ebbd1cb4a8e872bd7711610929aa4bd514a107956fb89dd14f6dc50e9bdd26 0025-Ignore-broken-and-non-applicable-tests.patch +9b9f4625d0a56417fa72d58982e55449b8fb5ed103799327a9017976ddd8ec431e81f592d3f843927068bd0e68e8e5a589650f18fb37bd275100f17bb65a1560 0026-Link-stage-2-tools-dynamically-to-libstd.patch +35fc80eb99d818f8d4c67a5dc72c1acc56a26b529b5a24cad7aa0d5ea4e872384c4eb07084caa3436140cdf377ed0bbcb920e40473a65f2ff90e3ddc1e20e390 0027-Move-debugger-scripts-to-usr-share-rust.patch +ab300269ab18f3d8e82586d0ff1a8f2713027aa675844450cd1dc30f9fd8daf268caa4e61744c927044dd7d62638b9153e123ed6eb242f0ccab892306e1991a8 0028-Add-foxkit-target-specs.patch +542a3aa430eea4142428293e7a9f4077210a319bb7bd91a4f051222277862bc4a8eba1c013ec6d7dddbc848e1b903cc8c4082d1aad623ec85674de14ba95a2ca 0029-Work-around-libbacktrace-built-with-fstack-protector.patch +f94abe390798b968bccfba1c908ab5895220ed0d167314b790a9c28b10cac81fb2e3b08760b4e8551ad5a5d02cd052d3d0d647ad8f8634e97f4d3b0470a21c42 0030-liblibc-linkage.patch +9b761388e3e7d4ac7ced81bf2572439724f4ce3190b49429b92249f4b858cc9bbb79d72e25365825cbd25cb9b3352c627dcc88cc643e5abeb917cf14755cab0b 0031-liblibc-0163a7ce20b5.patch +48a2ea6beb5f333d646fcc7aa15405d24f52f48e82b8f9cd09737dbfef16df0679246b30a28871595d13414b44c316122e0c969e1ae555b7ab18b692057c0d67 0032-libc-dcff154781e4.patch +fcfdd6b2702b8b23d8fd339ceb23b75a6e9814a388f00d226c8101be46a0f29835c77b75ab665e36972fde14364d762816ea2dcf3c1d90dd1e574fb8f6c33c80 0033-libc-90c01fa6b0f4.patch +7773b0c20aee126f90960c29b575f0c3c949d877e6b0e682c34ba8cdf6055a57697d6d6c287eafdf5976125830d5898128c73ac7dc8b4c40347577afcdb086d5 0034-libc-0163a7ce20b5.patch +6c5d68874bb82de214ff0488bd0ff7c1215c48575618d4d37d307004d462b4010df0d4909dd73da7f024c9ea00f5e2680a733235b6b85abdbd352cf1e13a6681 0035-libc-checksums.patch +94ee746f50ba3d88e409cd6b840a0995fa40d38e6a3c4a7e9fa32430242c492f35f6fb95ee22e0da6dba84f39dc83f0196a0921c5ec2bc602ea220b017c78be2 0035-rand-5b9e5c39d857.patch +5e409a7e45afd2104e1bbbcedb0cc2a04b2c3838d820bb3dc6e879a3d4619f0cce562d2bf2b0c55b780375bf26f0d4d4d6b0acdac199e1c39b2d94543d35e017 0036-rand-checksums.patch +9182408b7a87fc2f01dc12a36440e43a721f7693da00310806f6306e711c04b34d43b6ab348ae523656937f61389adb6a5a2b8ff46dec5424ad20c29652d4edf 0040-rls-atomics.patch" diff --git a/user/schismtracker/APKBUILD b/user/schismtracker/APKBUILD index 9b0d5452d..837f86389 100644 --- a/user/schismtracker/APKBUILD +++ b/user/schismtracker/APKBUILD @@ -1,7 +1,7 @@ # Contributor: Horst Burkhardt <horst@adelielinux.org> # Maintainer: Horst Burkhardt <horst@adelielinux.org> pkgname=schismtracker -pkgver=20180209 +pkgver=20180810 pkgrel=0 pkgdesc="A highly portable Impulse Tracker clone" url="http://schismtracker.org/" @@ -28,4 +28,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="0bc5b43dd491db8b63d4a0c980a25b48c1e91a113633a034ea3281d664c52b13bcae7a0b8e12d6862b39078b544e0c91721f8a73e3f0536f3b748f548c701140 schismtracker-20180209.tar.gz" +sha512sums="d131cec7e4749941f0e5806bff14e0782a01f14f8a68605270d09ff40af1d20fffd4c7caf2926c5a63d3e0c0bb1ed24ce4a5e4cccc280ac045a22cfb8544c498 schismtracker-20180810.tar.gz" diff --git a/user/screen/APKBUILD b/user/screen/APKBUILD new file mode 100644 index 000000000..e717f570d --- /dev/null +++ b/user/screen/APKBUILD @@ -0,0 +1,43 @@ +# Contributor: Michael Mason <ms13sp@gmail.com> +# Contributor: Natanael Copa <ncopa@alpinelinux.org> +# Maintainer: Dan Theisen <djt@hxx.in> +pkgname=screen +pkgver=4.6.2 +pkgrel=0 +pkgdesc="A window manager that multiplexes a physical terminal" +url="http://ftp.gnu.org/gnu/screen/" +arch="all" +license="GPL-3.0+" +options="!check" # No test suite. +makedepends="ncurses-dev utmps-dev" +subpackages="$pkgname-doc" +source="http://ftp.gnu.org/gnu/$pkgname/$pkgname-$pkgver.tar.gz + utmpx.patch" + +build() { + cd "$builddir" + LIBS="-lutmps -lskarnet" ./configure \ + --build=$CBUILD \ + --host=$CHOST \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --infodir=/usr/share/info \ + --enable-colors256 + make +} + +package() { + cd "$builddir" + make -j1 DESTDIR="$pkgdir" install + + # remove suid root + find "$pkgdir" -type f -perm -u+s -print0 \ + | xargs -0 chmod -s + + install -Dm644 etc/etcscreenrc "$pkgdir"/etc/screenrc + install -Dm644 etc/screenrc "$pkgdir"/etc/skel/.screenrc +} + +sha512sums="224bd16ad5ae501d1b8bb7d2ba9cc19e6a0743de5a5b320109c2f6bf3b1ca564cc7094ed9211be13733d9d769cde77d13fe236341d448cad0518038ab1e85c99 screen-4.6.2.tar.gz +82aca3e16c8cd7a3029d3b589ff2dd3471708d6287979ebb5cfdaedbd1f3012c0cd660b131e0cbe142b99786e49ef8b24c63159523d870e95ccf71ec94b82634 utmpx.patch" diff --git a/user/screen/utmpx.patch b/user/screen/utmpx.patch new file mode 100644 index 000000000..c8c6f444b --- /dev/null +++ b/user/screen/utmpx.patch @@ -0,0 +1,21 @@ +--- screen-4.6.2/os.h.old 2018-09-27 23:11:11.655480028 -0700 ++++ screen-4.6.2/os.h 2018-09-27 23:11:34.745808665 -0700 +@@ -250,17 +250,13 @@ + #endif + + #if defined(UTMPOK) || defined(BUGGYGETLOGIN) +-# if defined(SVR4) && !defined(DGUX) && !defined(__hpux) && !defined(linux) ++# if defined(linux) + # include <utmpx.h> + # define UTMPFILE UTMPX_FILE + # define utmp utmpx +-# define getutent getutxent + # define getutid getutxid + # define getutline getutxline + # define pututline pututxline +-# define setutent setutxent +-# define endutent endutxent +-# define ut_time ut_xtime + # else /* SVR4 */ + # include <utmp.h> + # endif /* SVR4 */ diff --git a/user/sdl2_image/APKBUILD b/user/sdl2_image/APKBUILD index 20395fd56..6028f227e 100644 --- a/user/sdl2_image/APKBUILD +++ b/user/sdl2_image/APKBUILD @@ -1,7 +1,7 @@ # Contributor: Francesco Colista <fcolista@alpinelinux.org> # Maintainer: pkgname=sdl2_image -pkgver=2.0.2 +pkgver=2.0.3 pkgrel=0 _pkgname=SDL2_image pkgdesc="Library to load images of various formats as SDL surfaces" @@ -39,4 +39,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="468f1a5aaee0b6920adb80df21aaaa41bfc5c642b4a00ac60244a90c5e9f27b092b73bcdd2c5520aa1de2759e8b174686b186a51f2d07e7e188ce2cd10519724 SDL2_image-2.0.2.tar.gz" +sha512sums="869cf3485cc850a91dc1d7f0023f0497bc7bbfd63e721365358b19d19d4da850e52667731d0e5ec80f4a11d7687aa6cfbdd5ceaec956af0e7f5567e87535977a SDL2_image-2.0.3.tar.gz" diff --git a/user/sdl_mixer/APKBUILD b/user/sdl_mixer/APKBUILD new file mode 100644 index 000000000..2cdb8238e --- /dev/null +++ b/user/sdl_mixer/APKBUILD @@ -0,0 +1,44 @@ +# Contributor: Carlo Landmeter +# Maintainer: +pkgname=sdl_mixer +pkgver=1.2.12 +pkgrel=2 +pkgdesc="A simple multi-channel audio mixer" +url="https://www.libsdl.org/projects/SDL_mixer/release-1.2.html" +arch="all" +options="!check" # No test suite. +license="Zlib" +depends="" +makedepends="flac-dev fluidsynth-dev libvorbis-dev linux-headers sdl-dev" +subpackages="$pkgname-dev" +source="https://www.libsdl.org/projects/SDL_mixer/release/SDL_mixer-${pkgver}.tar.gz" +builddir="$srcdir"/SDL_mixer-$pkgver + +prepare() { + cd "$builddir" + update_config_sub + sed -e "/CONFIG_FILE_ETC/s/\/etc\/timidity.cfg/\/etc\/timidity++\/timidity.cfg/" \ + -e "/DEFAULT_PATH/s/\/etc\/timidity/\/etc\/timidity++/" \ + -e "/DEFAULT_PATH2/s/\/usr\/local\/lib\/timidity/\/usr\/lib\/timidity/" \ + -i timidity/config.h +} + +build() { + cd "$builddir" + ./configure \ + --build=$CBUILD \ + --host=$CHOST \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --infodir=/usr/share/info \ + --enable-music-mod + make +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install +} + +sha512sums="230f6c5a73f4bea364f8aa3d75f76694305571dea45f357def742b2b50849b2d896af71e08689981207edc99a9836088bee2d0bd98d92c7f4ca52b12b3d8cf96 SDL_mixer-1.2.12.tar.gz" diff --git a/user/sdl_net/APKBUILD b/user/sdl_net/APKBUILD new file mode 100644 index 000000000..6172ddc1e --- /dev/null +++ b/user/sdl_net/APKBUILD @@ -0,0 +1,46 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: A. Wilcox <awilfox@adelielinux.org> +pkgname=sdl_net +_pkgname=SDL_net +pkgver=1.2.8 +pkgrel=0 +pkgdesc="Cross-platform networking library" +url="https://www.libsdl.org/projects/SDL_net/release-1.2.html" +arch="all" +license="zlib" +depends="" +makedepends="sdl-dev" +subpackages="$pkgname-dev" +source="https://www.libsdl.org/projects/$_pkgname/release/$_pkgname-$pkgver.tar.gz" +builddir="$srcdir"/$_pkgname-$pkgver + +prepare() { + cd "$builddir" + default_prepare + update_config_sub +} + +build() { + cd "$builddir" + ./configure \ + --build=$CBUILD \ + --host=$CHOST \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --localstatedir=/var \ + --disable-static + make +} + +check() { + cd "$builddir" + make check +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install +} + +sha512sums="2766ca55343127c619958ab3a3ae3052a27a676839f10a158f7dfc071b8db38c2f1fc853e8add32b9fef94ab07eaa986f46a68e264e8087b57c990af30ea9a0b SDL_net-1.2.8.tar.gz" diff --git a/user/sdl_ttf/APKBUILD b/user/sdl_ttf/APKBUILD new file mode 100644 index 000000000..96321243a --- /dev/null +++ b/user/sdl_ttf/APKBUILD @@ -0,0 +1,45 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: A. Wilcox <awilfox@adelielinux.org> +pkgname=sdl_ttf +_pkgname=SDL_ttf +pkgver=2.0.11 +pkgrel=0 +pkgdesc="TrueType font library for SDL applications" +url="https://www.libsdl.org/projects/SDL_ttf/release-1.2.html" +arch="all" +license="zlib" +depends="" +makedepends="freetype-dev libice-dev sdl-dev" +subpackages="$pkgname-dev" +source="https://www.libsdl.org/projects/$_pkgname/release/$_pkgname-$pkgver.tar.gz" +builddir="$srcdir"/$_pkgname-$pkgver + +prepare() { + cd "$builddir" + default_prepare + update_config_sub +} + +build() { + cd "$builddir" + ./configure \ + --build=$CBUILD \ + --host=$CHOST \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --localstatedir=/var + make +} + +check() { + cd "$builddir" + make check +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install +} + +sha512sums="64e04d1cd77e525e0f2413ad928841e5d3d09d551c030fc577b50777116580e430cb272b2aeb6191dfcc464669cf2f7a5a50d10e7c75637a3b1e8c8fca7fc78b SDL_ttf-2.0.11.tar.gz" diff --git a/user/shunit2/APKBUILD b/user/shunit2/APKBUILD new file mode 100644 index 000000000..baa658cf8 --- /dev/null +++ b/user/shunit2/APKBUILD @@ -0,0 +1,33 @@ +# Contributor: Max Rees <maxcrees@me.com> +# Maintainer: Max Rees <maxcrees@me.com> +pkgname=shunit2 +pkgver=2.1.7 +pkgrel=0 +pkgdesc="xUnit-based unit test framework for Bourne shell scripts" +url="https://github.com/kward/shunit2" +arch="noarch" +license="Apache-2.0" +depends="/bin/sh" +makedepends="" +checkdepends="cmd:which bash dash zsh" +subpackages="$pkgname-doc" +source="$pkgname-$pkgver.tar.gz::https://github.com/kward/shunit2/archive/v$pkgver.tar.gz + dash-negative-lineno.patch" + +build() { + cd "$builddir" +} + +check() { + cd "$builddir" + ./test_runner +} + +package() { + cd "$builddir" + install -Dm755 "$pkgname" "$pkgdir/usr/bin/$pkgname" + install -Dm644 "doc/$pkgname.txt" "$pkgdir/usr/share/doc/$pkgname/$pkgname.rst" +} + +sha512sums="35453cf2c469eb1bab2fff0624b8037a09d405c377fec0938875a6339749d5934fe246eec5691a121290ae9e4ee5cbf7768b740c5f0010a5345c4e111c50fbbd shunit2-2.1.7.tar.gz +af2d3c65e9f3c86796b12832c403a869767b70da819f3cf6f69f0e2cf8445e85ec63db20c4b39430e35b7c2105e439abf6bbbd3fc3d880d23ee11d54339c61fd dash-negative-lineno.patch" diff --git a/user/shunit2/dash-negative-lineno.patch b/user/shunit2/dash-negative-lineno.patch new file mode 100644 index 000000000..2508be856 --- /dev/null +++ b/user/shunit2/dash-negative-lineno.patch @@ -0,0 +1,197 @@ +dash reports a negative $LINENO when using shunit2's macros - this isn't +shunit2's fault, so allow for it in the test cases + +--- shunit2-2.1.7/shunit2_macros_test.sh ++++ shunit2-2.1.7/shunit2_macros_test.sh +@@ -27,13 +27,13 @@ + [ -z "${LINENO:-}" ] && startSkipping + + ( ${_ASSERT_EQUALS_} 'x' 'y' >"${stdoutF}" 2>"${stderrF}" ) +- grep '^ASSERT:\[[0-9]*\] *' "${stdoutF}" >/dev/null ++ grep '^ASSERT:\[[0-9-]*\] *' "${stdoutF}" >/dev/null + rtrn=$? + assertTrue '_ASSERT_EQUALS_ failure' ${rtrn} + [ "${rtrn}" -ne "${SHUNIT_TRUE}" ] && cat "${stderrF}" >&2 + + ( ${_ASSERT_EQUALS_} '"some msg"' 'x' 'y' >"${stdoutF}" 2>"${stderrF}" ) +- grep '^ASSERT:\[[0-9]*\] *' "${stdoutF}" >/dev/null ++ grep '^ASSERT:\[[0-9-]*\] *' "${stdoutF}" >/dev/null + rtrn=$? + assertTrue '_ASSERT_EQUALS_ w/ msg failure' ${rtrn} + [ "${rtrn}" -ne "${SHUNIT_TRUE}" ] && cat "${stderrF}" >&2 +@@ -44,13 +44,13 @@ + [ -z "${LINENO:-}" ] && startSkipping + + ( ${_ASSERT_NOT_EQUALS_} 'x' 'x' >"${stdoutF}" 2>"${stderrF}" ) +- grep '^ASSERT:\[[0-9]*\] *' "${stdoutF}" >/dev/null ++ grep '^ASSERT:\[[0-9-]*\] *' "${stdoutF}" >/dev/null + rtrn=$? + assertTrue '_ASSERT_NOT_EQUALS_ failure' ${rtrn} + [ "${rtrn}" -ne "${SHUNIT_TRUE}" ] && cat "${stderrF}" >&2 + + ( ${_ASSERT_NOT_EQUALS_} '"some msg"' 'x' 'x' >"${stdoutF}" 2>"${stderrF}" ) +- grep '^ASSERT:\[[0-9]*\] *' "${stdoutF}" >/dev/null ++ grep '^ASSERT:\[[0-9-]*\] *' "${stdoutF}" >/dev/null + rtrn=$? + assertTrue '_ASSERT_NOT_EQUALS_ w/ msg failure' ${rtrn} + [ "${rtrn}" -ne "${SHUNIT_TRUE}" ] && cat "${stderrF}" >&2 +@@ -61,13 +61,13 @@ + [ -z "${LINENO:-}" ] && startSkipping + + ( ${_ASSERT_SAME_} 'x' 'y' >"${stdoutF}" 2>"${stderrF}" ) +- grep '^ASSERT:\[[0-9]*\] *' "${stdoutF}" >/dev/null ++ grep '^ASSERT:\[[0-9-]*\] *' "${stdoutF}" >/dev/null + rtrn=$? + assertTrue '_ASSERT_SAME_ failure' ${rtrn} + [ "${rtrn}" -ne "${SHUNIT_TRUE}" ] && cat "${stderrF}" >&2 + + ( ${_ASSERT_SAME_} '"some msg"' 'x' 'y' >"${stdoutF}" 2>"${stderrF}" ) +- grep '^ASSERT:\[[0-9]*\] *' "${stdoutF}" >/dev/null ++ grep '^ASSERT:\[[0-9-]*\] *' "${stdoutF}" >/dev/null + rtrn=$? + assertTrue '_ASSERT_SAME_ w/ msg failure' ${rtrn} + [ "${rtrn}" -ne "${SHUNIT_TRUE}" ] && cat "${stderrF}" >&2 +@@ -78,13 +78,13 @@ + [ -z "${LINENO:-}" ] && startSkipping + + ( ${_ASSERT_NOT_SAME_} 'x' 'x' >"${stdoutF}" 2>"${stderrF}" ) +- grep '^ASSERT:\[[0-9]*\] *' "${stdoutF}" >/dev/null ++ grep '^ASSERT:\[[0-9-]*\] *' "${stdoutF}" >/dev/null + rtrn=$? + assertTrue '_ASSERT_NOT_SAME_ failure' ${rtrn} + [ "${rtrn}" -ne "${SHUNIT_TRUE}" ] && cat "${stderrF}" >&2 + + ( ${_ASSERT_NOT_SAME_} '"some msg"' 'x' 'x' >"${stdoutF}" 2>"${stderrF}" ) +- grep '^ASSERT:\[[0-9]*\] *' "${stdoutF}" >/dev/null ++ grep '^ASSERT:\[[0-9-]*\] *' "${stdoutF}" >/dev/null + rtrn=$? + assertTrue '_ASSERT_NOT_SAME_ w/ msg failure' ${rtrn} + [ "${rtrn}" -ne "${SHUNIT_TRUE}" ] && cat "${stderrF}" >&2 +@@ -95,13 +95,13 @@ + [ -z "${LINENO:-}" ] && startSkipping + + ( ${_ASSERT_NULL_} 'x' >"${stdoutF}" 2>"${stderrF}" ) +- grep '^ASSERT:\[[0-9]*\] *' "${stdoutF}" >/dev/null ++ grep '^ASSERT:\[[0-9-]*\] *' "${stdoutF}" >/dev/null + rtrn=$? + assertTrue '_ASSERT_NULL_ failure' ${rtrn} + [ "${rtrn}" -ne "${SHUNIT_TRUE}" ] && cat "${stderrF}" >&2 + + ( ${_ASSERT_NULL_} '"some msg"' 'x' >"${stdoutF}" 2>"${stderrF}" ) +- grep '^ASSERT:\[[0-9]*\] *' "${stdoutF}" >/dev/null ++ grep '^ASSERT:\[[0-9-]*\] *' "${stdoutF}" >/dev/null + rtrn=$? + assertTrue '_ASSERT_NULL_ w/ msg failure' ${rtrn} + [ "${rtrn}" -ne "${SHUNIT_TRUE}" ] && cat "${stderrF}" >&2 +@@ -113,13 +113,13 @@ + [ -z "${LINENO:-}" ] && startSkipping + + ( ${_ASSERT_NOT_NULL_} '' >"${stdoutF}" 2>"${stderrF}" ) +- grep '^ASSERT:\[[0-9]*\] *' "${stdoutF}" >/dev/null ++ grep '^ASSERT:\[[0-9-]*\] *' "${stdoutF}" >/dev/null + rtrn=$? + assertTrue '_ASSERT_NOT_NULL_ failure' ${rtrn} + [ "${rtrn}" -ne "${SHUNIT_TRUE}" ] && cat "${stderrF}" >&2 + + ( ${_ASSERT_NOT_NULL_} '"some msg"' '""' >"${stdoutF}" 2>"${stderrF}" ) +- grep '^ASSERT:\[[0-9]*\] *' "${stdoutF}" >/dev/null ++ grep '^ASSERT:\[[0-9-]*\] *' "${stdoutF}" >/dev/null + rtrn=$? + assertTrue '_ASSERT_NOT_NULL_ w/ msg failure' ${rtrn} + [ "${rtrn}" -ne "${SHUNIT_TRUE}" ] && cat "${stdoutF}" "${stderrF}" >&2 +@@ -130,13 +130,13 @@ + [ -z "${LINENO:-}" ] && startSkipping + + ( ${_ASSERT_TRUE_} "${SHUNIT_FALSE}" >"${stdoutF}" 2>"${stderrF}" ) +- grep '^ASSERT:\[[0-9]*\] *' "${stdoutF}" >/dev/null ++ grep '^ASSERT:\[[0-9-]*\] *' "${stdoutF}" >/dev/null + rtrn=$? + assertTrue '_ASSERT_TRUE_ failure' ${rtrn} + [ "${rtrn}" -ne "${SHUNIT_TRUE}" ] && cat "${stderrF}" >&2 + + ( ${_ASSERT_TRUE_} '"some msg"' "${SHUNIT_FALSE}" >"${stdoutF}" 2>"${stderrF}" ) +- grep '^ASSERT:\[[0-9]*\] *' "${stdoutF}" >/dev/null ++ grep '^ASSERT:\[[0-9-]*\] *' "${stdoutF}" >/dev/null + rtrn=$? + assertTrue '_ASSERT_TRUE_ w/ msg failure' ${rtrn} + [ "${rtrn}" -ne "${SHUNIT_TRUE}" ] && cat "${stderrF}" >&2 +@@ -147,13 +147,13 @@ + [ -z "${LINENO:-}" ] && startSkipping + + ( ${_ASSERT_FALSE_} "${SHUNIT_TRUE}" >"${stdoutF}" 2>"${stderrF}" ) +- grep '^ASSERT:\[[0-9]*\] *' "${stdoutF}" >/dev/null ++ grep '^ASSERT:\[[0-9-]*\] *' "${stdoutF}" >/dev/null + rtrn=$? + assertTrue '_ASSERT_FALSE_ failure' ${rtrn} + [ "${rtrn}" -ne "${SHUNIT_TRUE}" ] && cat "${stderrF}" >&2 + + ( ${_ASSERT_FALSE_} '"some msg"' "${SHUNIT_TRUE}" >"${stdoutF}" 2>"${stderrF}" ) +- grep '^ASSERT:\[[0-9]*\] *' "${stdoutF}" >/dev/null ++ grep '^ASSERT:\[[0-9-]*\] *' "${stdoutF}" >/dev/null + rtrn=$? + assertTrue '_ASSERT_FALSE_ w/ msg failure' ${rtrn} + [ "${rtrn}" -ne "${SHUNIT_TRUE}" ] && cat "${stderrF}" >&2 +@@ -164,13 +164,13 @@ + [ -z "${LINENO:-}" ] && startSkipping + + ( ${_FAIL_} >"${stdoutF}" 2>"${stderrF}" ) +- grep '^ASSERT:\[[0-9]*\] *' "${stdoutF}" >/dev/null ++ grep '^ASSERT:\[[0-9-]*\] *' "${stdoutF}" >/dev/null + rtrn=$? + assertTrue '_FAIL_ failure' ${rtrn} + [ "${rtrn}" -ne "${SHUNIT_TRUE}" ] && cat "${stderrF}" >&2 + + ( ${_FAIL_} '"some msg"' >"${stdoutF}" 2>"${stderrF}" ) +- grep '^ASSERT:\[[0-9]*\] *' "${stdoutF}" >/dev/null ++ grep '^ASSERT:\[[0-9-]*\] *' "${stdoutF}" >/dev/null + rtrn=$? + assertTrue '_FAIL_ w/ msg failure' ${rtrn} + [ "${rtrn}" -ne "${SHUNIT_TRUE}" ] && cat "${stderrF}" >&2 +@@ -182,13 +182,13 @@ + [ -z "${LINENO:-}" ] && startSkipping + + ( ${_FAIL_NOT_EQUALS_} 'x' 'y' >"${stdoutF}" 2>"${stderrF}" ) +- grep '^ASSERT:\[[0-9]*\] *' "${stdoutF}" >/dev/null ++ grep '^ASSERT:\[[0-9-]*\] *' "${stdoutF}" >/dev/null + rtrn=$? + assertTrue '_FAIL_NOT_EQUALS_ failure' ${rtrn} + [ "${rtrn}" -ne "${SHUNIT_TRUE}" ] && cat "${stderrF}" >&2 + + ( ${_FAIL_NOT_EQUALS_} '"some msg"' 'x' 'y' >"${stdoutF}" 2>"${stderrF}" ) +- grep '^ASSERT:\[[0-9]*\] *' "${stdoutF}" >/dev/null ++ grep '^ASSERT:\[[0-9-]*\] *' "${stdoutF}" >/dev/null + rtrn=$? + assertTrue '_FAIL_NOT_EQUALS_ w/ msg failure' ${rtrn} + [ "${rtrn}" -ne "${SHUNIT_TRUE}" ] && cat "${stderrF}" >&2 +@@ -199,13 +199,13 @@ + [ -z "${LINENO:-}" ] && startSkipping + + ( ${_FAIL_SAME_} 'x' 'x' >"${stdoutF}" 2>"${stderrF}" ) +- grep '^ASSERT:\[[0-9]*\] *' "${stdoutF}" >/dev/null ++ grep '^ASSERT:\[[0-9-]*\] *' "${stdoutF}" >/dev/null + rtrn=$? + assertTrue '_FAIL_SAME_ failure' ${rtrn} + [ "${rtrn}" -ne "${SHUNIT_TRUE}" ] && cat "${stderrF}" >&2 + + ( ${_FAIL_SAME_} '"some msg"' 'x' 'x' >"${stdoutF}" 2>"${stderrF}" ) +- grep '^ASSERT:\[[0-9]*\] *' "${stdoutF}" >/dev/null ++ grep '^ASSERT:\[[0-9-]*\] *' "${stdoutF}" >/dev/null + rtrn=$? + assertTrue '_FAIL_SAME_ w/ msg failure' ${rtrn} + [ "${rtrn}" -ne "${SHUNIT_TRUE}" ] && cat "${stderrF}" >&2 +@@ -216,13 +216,13 @@ + [ -z "${LINENO:-}" ] && startSkipping + + ( ${_FAIL_NOT_SAME_} 'x' 'y' >"${stdoutF}" 2>"${stderrF}" ) +- grep '^ASSERT:\[[0-9]*\] *' "${stdoutF}" >/dev/null ++ grep '^ASSERT:\[[0-9-]*\] *' "${stdoutF}" >/dev/null + rtrn=$? + assertTrue '_FAIL_NOT_SAME_ failure' ${rtrn} + [ "${rtrn}" -ne "${SHUNIT_TRUE}" ] && cat "${stderrF}" >&2 + + ( ${_FAIL_NOT_SAME_} '"some msg"' 'x' 'y' >"${stdoutF}" 2>"${stderrF}" ) +- grep '^ASSERT:\[[0-9]*\] *' "${stdoutF}" >/dev/null ++ grep '^ASSERT:\[[0-9-]*\] *' "${stdoutF}" >/dev/null + rtrn=$? + assertTrue '_FAIL_NOT_SAME_ w/ msg failure' ${rtrn} + [ "${rtrn}" -ne "${SHUNIT_TRUE}" ] && cat "${stderrF}" >&2 diff --git a/user/solid/APKBUILD b/user/solid/APKBUILD index d29ac7ad0..568ccdcee 100644 --- a/user/solid/APKBUILD +++ b/user/solid/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=solid -pkgver=5.50.0 +pkgver=5.51.0 pkgrel=0 pkgdesc="Platform-independent hardware discovery and access" url="https://www.kde.org/" @@ -41,4 +41,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="f51c7bcaed7b2390f1b290791d7e9dc4a86ce8a925a2955c072be66274257c81c7872f76105fa8a03b35c184a8598551aa2bfa74017de487fc5a3521ea49d6a1 solid-5.50.0.tar.xz" +sha512sums="4a57a96f9080734781f4bddc33aa3ebc312fdf784e61cd143f76e0a222cec26bcb62322f68422d770ca8494b64344f0870fa63d66fec17bc3a209511c168d226 solid-5.51.0.tar.xz" diff --git a/user/sonnet/APKBUILD b/user/sonnet/APKBUILD index 740351e1d..2f6b2b679 100644 --- a/user/sonnet/APKBUILD +++ b/user/sonnet/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=sonnet -pkgver=5.50.0 +pkgver=5.51.0 pkgrel=0 pkgdesc="Framework for implementing portable spell check functionality" url="https://www.kde.org/" @@ -50,4 +50,4 @@ aspell() { "$subpkgdir"/usr/lib/qt5/plugins/kf5/sonnet/sonnet_aspell.so } -sha512sums="ac0f5a0f729150d305410a4b91e3db7f1ede4148116821364611984eabfe4533fcd0a0ae4fd25f515a1b44b8983156224ef0da9fc4513be04b5b411a4dc62174 sonnet-5.50.0.tar.xz" +sha512sums="6854d066ceee7826d058b8b9136cae52428e140237881c1ae80685304b456de8ac410896a9f1f136501cf39f09351f3c4354fe3f5b51bd7bbb6bfef822d2b859 sonnet-5.51.0.tar.xz" diff --git a/user/spectacle/APKBUILD b/user/spectacle/APKBUILD index aae2e4984..9da4292b0 100644 --- a/user/spectacle/APKBUILD +++ b/user/spectacle/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=spectacle -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="Application for capturing desktop screenshots" url="https://www.kde.org/applications/graphics/spectacle/" @@ -42,4 +42,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="659cf0f49793437903caea703ab54cc9f6077645dea7a6823830cf803d7fe35a5dfbc66265fecbeacaf1e4b80762b6e54b7f07a6f52a2a0fddfa88aa752d53c6 spectacle-18.08.1.tar.xz" +sha512sums="a50e1a8c92f280ad89a023d2fc841a4bf4c7bec7e27cfdc935e6d425380e9f91665ccfafe036f141ce1791400937d22fdb021f4e5ae61c9ef49f7b25e1dc1cbe spectacle-18.08.2.tar.xz" diff --git a/user/spice/APKBUILD b/user/spice/APKBUILD index 2492cede3..4ca90937f 100644 --- a/user/spice/APKBUILD +++ b/user/spice/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=spice -pkgver=0.14.0 +pkgver=0.14.1 pkgrel=0 pkgdesc="Solution for seamless access to virtual machines" url="https://www.spice-space.org/" @@ -12,7 +12,11 @@ makedepends="$depends_dev openssl-dev zlib-dev libjpeg-turbo-dev cyrus-sasl-dev opus-dev lz4-dev gstreamer-dev gst-plugins-base-dev glib-dev orc-dev python3 spice-protocol pixman-dev gstreamer-tools" subpackages="$pkgname-dev" -source="https://www.spice-space.org/download/releases/spice-$pkgver.tar.bz2" +source="https://www.spice-space.org/download/releases/spice-server/spice-$pkgver.tar.bz2" + +# secfixes: +# 0.14.1-r0: +# - CVE-2018-10873 build() { cd "$builddir" @@ -37,4 +41,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="84532146aa628ca6ca459a82afb89d6391892e063668fd4a68023c92cee7ca868b6c82e31dd9886819b76ea745ebdae0d0030e1f608d8f58f51c00f0b09bae1f spice-0.14.0.tar.bz2" +sha512sums="2c0b4fbcb68c76bc0404a807f28c9645a30c6b88e81d2bc574d63b036778a299cebc0ae12aa72f2e1496f66cbf414325125948d440541a40e1b9e53b8956542d spice-0.14.1.tar.bz2" diff --git a/user/sshfs/APKBUILD b/user/sshfs/APKBUILD new file mode 100644 index 000000000..32fcfbd7c --- /dev/null +++ b/user/sshfs/APKBUILD @@ -0,0 +1,45 @@ +# Contributor: Natanael Copa <ncopa@alpinelinux.org> +# Maintainer: Max Rees <maxcrees@me.com> +pkgname=sshfs +pkgver=3.5.0 +pkgrel=0 +pkgdesc="FUSE client based on the SSH File Transfer Protocol" +url="https://github.com/libfuse/sshfs" +arch="all" +options="!check" # Requires fuse kernel module to be loaded and local ssh server +license="GPL-2.0-only AND GPL-2.0+ AND LGPL-2.1-only" +depends="openssh-client" +makedepends="fuse3-dev glib-dev meson coreutils py3-docutils" +#checkdepends="py3-pytest cmd:which" +subpackages="$pkgname-doc" +source="https://github.com/libfuse/$pkgname/releases/download/$pkgname-$pkgver/$pkgname-$pkgver.tar.xz" + +build() { + cd "$builddir" + # NOTE: --prefix=/ is intentional. If --prefix=/usr, mount(8) will not be + # able to find mount.fuse.sshfs or mount.sshfs - it only looks in /sbin, not + # /usr/sbin. The omission of the absolute slash in --mandir=usr/share/man is + # also intentional - otherwise ninja tries to install the manpage to + # "/sr/share/man/man1" (???) + + meson \ + --prefix=/ \ + --sysconfdir=/etc \ + --mandir=usr/share/man \ + --localstatedir=/var \ + --buildtype=release \ + . output + ninja -C output +} + +check() { + cd "$builddir"/output + python3 -m pytest test/ +} + +package() { + cd "$builddir" + DESTDIR="$pkgdir" ninja -C output install +} + +sha512sums="6ba7be4bcad401d99fb864f105a6c8fc8b7c832d5b25f18cba27eee422fe65ee7bda8982466d624792a1fb21528c0cb078a59db48e93da4880a36aad7b506b0c sshfs-3.5.0.tar.xz" diff --git a/user/step/APKBUILD b/user/step/APKBUILD index 4b7b0e5f8..45a15a6ad 100644 --- a/user/step/APKBUILD +++ b/user/step/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=step -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="Interactive physics simulation" url="https://www.kde.org/applications/education/step/" @@ -10,7 +10,7 @@ license="GPL-2.0-only" depends="" makedepends="cmake extra-cmake-modules qt5-qtbase-dev qt5-qtdeclarative-dev kdoctools-dev qt5-qtsvg-dev kcrash-dev khtml-dev kconfig-dev eigen-dev - kdelibs4support-dev knewstuff-dev kplotting-dev" + kdelibs4support-dev knewstuff-dev kplotting-dev gsl-dev" subpackages="$pkgname-doc $pkgname-lang" source="https://download.kde.org/stable/applications/$pkgver/src/step-$pkgver.tar.xz" @@ -41,4 +41,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="7d35e51ccdb388fd56e3c03e2db7404146f0d8fe4294c8c6e21e376d5d09c36c79814a471164e606c664f47c42fa8bb08d4bb759be8a23d3298e976c2fa6c2ed step-18.08.1.tar.xz" +sha512sums="55041ada66bd504151f6355c71c3c29e414b9cb285bea8406626ffa69ea246f41f81961b9cce31e5bf09400bd98e9cfe31f84aff392462979fb4c398968a2edd step-18.08.2.tar.xz" diff --git a/user/stow/APKBUILD b/user/stow/APKBUILD new file mode 100644 index 000000000..dcb81dc09 --- /dev/null +++ b/user/stow/APKBUILD @@ -0,0 +1,37 @@ +# Contributor: Stefan Wagner <stw@bit-strickerei.de> +# Maintainer: Max Rees <maxcrees@me.com> +pkgname=stow +pkgver=2.2.2 +pkgrel=0 +pkgdesc="Manage installation of multiple softwares in the same directory tree" +url="https://www.gnu.org/software/stow/" +arch="noarch" +license="GPL-2.0-only" +depends="perl" +makedepends="perl-test-output" +checkdepends="perl-io-stringy" +subpackages="$pkgname-doc" +source="https://ftp.gnu.org/pub/gnu/$pkgname/$pkgname-$pkgver.tar.gz" + +build() { + cd "$builddir" + ./configure \ + --prefix=/usr \ + --mandir=/usr/share/man \ + --infodir=/usr/share/info \ + --with-pmdir=/usr/lib/perl5/vendor_perl +} + +check() { + cd "$builddir" + make check +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + rm "$pkgdir"/usr/share/doc/stow/manual.pdf + rm "$pkgdir"/usr/share/doc/stow/version.texi +} + +sha512sums="8a3e5da6b5cb4c1ee1b512bae5a9859f83659d5de05f7a9af1dd09df2a32f6b8c6d43b79736db91232c43621d542041d4ef92eb088925796adad0676f200a9b5 stow-2.2.2.tar.gz" diff --git a/user/strongswan/0205-ike-Adhere-to-IKE_SA-limit-when-checking-out-by-conf.patch b/user/strongswan/0205-ike-Adhere-to-IKE_SA-limit-when-checking-out-by-conf.patch new file mode 100644 index 000000000..cc14dab02 --- /dev/null +++ b/user/strongswan/0205-ike-Adhere-to-IKE_SA-limit-when-checking-out-by-conf.patch @@ -0,0 +1,104 @@ +From 5a5b26a7dce4c112f62882cfe16dc37659d766e8 Mon Sep 17 00:00:00 2001 +From: Tobias Brunner <tobias@strongswan.org> +Date: Fri, 17 Jul 2015 11:53:58 +0200 +Subject: [PATCH 1/5] ike: Adhere to IKE_SA limit when checking out by config + +This prevents new SAs from getting created if we hit the global IKE_SA +limit (we still allow checkout_new(), which is used for rekeying). +--- + src/libcharon/sa/ike_sa_manager.c | 71 ++++++++++++++++++++------------------- + 1 file changed, 37 insertions(+), 34 deletions(-) + +diff --git a/src/libcharon/sa/ike_sa_manager.c b/src/libcharon/sa/ike_sa_manager.c +index ce44207..37d49da 100644 +--- a/src/libcharon/sa/ike_sa_manager.c ++++ b/src/libcharon/sa/ike_sa_manager.c +@@ -1419,48 +1419,51 @@ METHOD(ike_sa_manager_t, checkout_by_config, ike_sa_t*, + + DBG2(DBG_MGR, "checkout IKE_SA by config"); + +- if (!this->reuse_ikesa && peer_cfg->get_ike_version(peer_cfg) != IKEV1) +- { /* IKE_SA reuse disabled by config (not possible for IKEv1) */ +- ike_sa = checkout_new(this, peer_cfg->get_ike_version(peer_cfg), TRUE); +- charon->bus->set_sa(charon->bus, ike_sa); +- goto out; +- } +- +- enumerator = create_table_enumerator(this); +- while (enumerator->enumerate(enumerator, &entry, &segment)) ++ if (this->reuse_ikesa || peer_cfg->get_ike_version(peer_cfg) == IKEV1) + { +- if (!wait_for_entry(this, entry, segment)) ++ enumerator = create_table_enumerator(this); ++ while (enumerator->enumerate(enumerator, &entry, &segment)) + { +- continue; +- } +- if (entry->ike_sa->get_state(entry->ike_sa) == IKE_DELETING || +- entry->ike_sa->get_state(entry->ike_sa) == IKE_REKEYED) +- { /* skip IKE_SAs which are not usable, wake other waiting threads */ +- entry->condvar->signal(entry->condvar); +- continue; +- } +- +- current_peer = entry->ike_sa->get_peer_cfg(entry->ike_sa); +- if (current_peer && current_peer->equals(current_peer, peer_cfg)) +- { +- current_ike = current_peer->get_ike_cfg(current_peer); +- if (current_ike->equals(current_ike, peer_cfg->get_ike_cfg(peer_cfg))) ++ if (!wait_for_entry(this, entry, segment)) + { +- entry->checked_out = thread_current(); +- ike_sa = entry->ike_sa; +- DBG2(DBG_MGR, "found existing IKE_SA %u with a '%s' config", +- ike_sa->get_unique_id(ike_sa), +- current_peer->get_name(current_peer)); +- break; ++ continue; + } ++ if (entry->ike_sa->get_state(entry->ike_sa) == IKE_DELETING || ++ entry->ike_sa->get_state(entry->ike_sa) == IKE_REKEYED) ++ { /* skip IKE_SAs which are not usable, wake other waiting threads */ ++ entry->condvar->signal(entry->condvar); ++ continue; ++ } ++ current_peer = entry->ike_sa->get_peer_cfg(entry->ike_sa); ++ if (current_peer && current_peer->equals(current_peer, peer_cfg)) ++ { ++ current_ike = current_peer->get_ike_cfg(current_peer); ++ if (current_ike->equals(current_ike, ++ peer_cfg->get_ike_cfg(peer_cfg))) ++ { ++ entry->checked_out = thread_current(); ++ ike_sa = entry->ike_sa; ++ DBG2(DBG_MGR, "found existing IKE_SA %u with a '%s' config", ++ ike_sa->get_unique_id(ike_sa), ++ current_peer->get_name(current_peer)); ++ break; ++ } ++ } ++ /* other threads might be waiting for this entry */ ++ entry->condvar->signal(entry->condvar); + } +- /* other threads might be waiting for this entry */ +- entry->condvar->signal(entry->condvar); ++ enumerator->destroy(enumerator); + } +- enumerator->destroy(enumerator); + + if (!ike_sa) +- { /* no IKE_SA using such a config, hand out a new */ ++ { /* no IKE_SA using such a config, or reuse disabled, hand out a new */ ++ if (this->ikesa_limit && ++ this->public.get_count(&this->public) >= this->ikesa_limit) ++ { ++ DBG1(DBG_MGR, "IKE_SA creation failed, hitting IKE_SA limit (%u)", ++ this->ikesa_limit); ++ return NULL; ++ } + ike_sa = checkout_new(this, peer_cfg->get_ike_version(peer_cfg), TRUE); + } + charon->bus->set_sa(charon->bus, ike_sa); +-- +2.5.0 + diff --git a/user/strongswan/1001-charon-add-optional-source-and-remote-overrides-for-.patch b/user/strongswan/1001-charon-add-optional-source-and-remote-overrides-for-.patch new file mode 100644 index 000000000..d9aea3c4d --- /dev/null +++ b/user/strongswan/1001-charon-add-optional-source-and-remote-overrides-for-.patch @@ -0,0 +1,597 @@ +From 460e0f52d88433071b27603e47995517514ef8b9 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Timo=20Ter=C3=A4s?= <timo.teras@iki.fi> +Date: Mon, 21 Sep 2015 13:41:58 +0300 +Subject: [PATCH] charon: add optional source and remote overrides for initiate +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +This introduces support for specifying optional IKE SA specific +source and remote address for child sa initiation. This allows +to initiate wildcard connection for known address via vici. + +In addition this allows impler implementation of trap-any patches +and is a prerequisite for dmvpn support. + +Signed-off-by: Timo Teräs <timo.teras@iki.fi> +--- + src/charon-cmd/cmd/cmd_connection.c | 2 +- + src/charon-nm/nm/nm_service.c | 2 +- + src/libcharon/control/controller.c | 43 +++++++++++++++- + src/libcharon/control/controller.h | 3 ++ + src/libcharon/plugins/stroke/stroke_control.c | 5 +- + src/libcharon/plugins/vici/vici_config.c | 2 +- + src/libcharon/plugins/vici/vici_control.c | 63 ++++++++++++++++++++---- + src/libcharon/processing/jobs/start_action_job.c | 2 +- + src/libcharon/sa/ike_sa_manager.c | 51 ++++++++++++++++++- + src/libcharon/sa/ike_sa_manager.h | 8 ++- + src/libcharon/sa/trap_manager.c | 45 +++++++---------- + src/swanctl/commands/initiate.c | 40 ++++++++++++++- + 12 files changed, 218 insertions(+), 48 deletions(-) + +diff --git a/src/charon-cmd/cmd/cmd_connection.c b/src/charon-cmd/cmd/cmd_connection.c +index 71df92f7e..13b31de8a 100644 +--- a/src/charon-cmd/cmd/cmd_connection.c ++++ b/src/charon-cmd/cmd/cmd_connection.c +@@ -436,7 +436,7 @@ static job_requeue_t initiate(private_cmd_connection_t *this) + child_cfg = create_child_cfg(this, peer_cfg); + + if (charon->controller->initiate(charon->controller, peer_cfg, child_cfg, +- controller_cb_empty, NULL, 0, FALSE) != SUCCESS) ++ NULL, NULL, controller_cb_empty, NULL, 0, FALSE) != SUCCESS) + { + terminate(pid); + } +diff --git a/src/charon-nm/nm/nm_service.c b/src/charon-nm/nm/nm_service.c +index 571c0edba..e7922cf4d 100644 +--- a/src/charon-nm/nm/nm_service.c ++++ b/src/charon-nm/nm/nm_service.c +@@ 6220,7 +622,7 @@ static gboolean connect_(NMVPNPlugin *plugin, NMConnection *connection, + * Prepare IKE_SA + */ + ike_sa = charon->ike_sa_manager->checkout_by_config(charon->ike_sa_manager, +- peer_cfg); ++ peer_cfg, NULL, NULL); + if (!ike_sa) + { + peer_cfg->destroy(peer_cfg); +diff --git a/src/libcharon/control/controller.c b/src/libcharon/control/controller.c +index 8e7816b39..7d7b3bcbc 100644 +--- a/src/libcharon/control/controller.c ++++ b/src/libcharon/control/controller.c +@@ -15,6 +15,28 @@ + * for more details. + */ + ++/* ++ * Copyright (C) 2014 Timo Teräs <timo.teras@iki.fi> ++ * ++ * 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 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 "controller.h" + + #include <sys/types.h> +@@ -103,6 +125,16 @@ struct interface_listener_t { + ike_sa_t *ike_sa; + + /** ++ * Our host hint. ++ */ ++ host_t *my_host; ++ ++ /** ++ * Other host hint. ++ */ ++ host_t *other_host; ++ ++ /** + * unique ID, used for various methods + */ + uint32_t id; +@@ -409,9 +441,14 @@ METHOD(job_t, initiate_execute, job_requeue_t, + ike_sa_t *ike_sa; + interface_listener_t *listener = &job->listener; + peer_cfg_t *peer_cfg = listener->peer_cfg; ++ host_t *my_host = listener->my_host; ++ host_t *other_host = listener->other_host; + + ike_sa = charon->ike_sa_manager->checkout_by_config(charon->ike_sa_manager, +- peer_cfg); ++ peer_cfg, my_host, other_host); ++ DESTROY_IF(my_host); ++ DESTROY_IF(other_host); ++ + if (!ike_sa) + { + listener->child_cfg->destroy(listener->child_cfg); +@@ -420,6 +457,7 @@ METHOD(job_t, initiate_execute, job_requeue_t, + listener_done(listener); + return JOB_REQUEUE_NONE; + } ++ + listener->lock->lock(listener->lock); + listener->ike_sa = ike_sa; + listener->lock->unlock(listener->lock); +@@ -492,6 +530,7 @@ METHOD(job_t, initiate_execute, job_requeue_t, + + METHOD(controller_t, initiate, status_t, + private_controller_t *this, peer_cfg_t *peer_cfg, child_cfg_t *child_cfg, ++ host_t *my_host, host_t *other_host, + controller_cb_t callback, void *param, u_int timeout, bool limits) + { + interface_job_t *job; +@@ -514,6 +553,8 @@ METHOD(controller_t, initiate, status_t, + .status = FAILED, + .child_cfg = child_cfg, + .peer_cfg = peer_cfg, ++ .my_host = my_host ? my_host->clone(my_host) : NULL, ++ .other_host = other_host ? other_host->clone(other_host) : NULL, + .lock = spinlock_create(), + .limits = limits, + }, +diff --git a/src/libcharon/control/controller.h b/src/libcharon/control/controller.h +index 9524f53b9..7c51ba4ca 100644 +--- a/src/libcharon/control/controller.h ++++ b/src/libcharon/control/controller.h +@@ -79,6 +79,8 @@ struct controller_t { + * + * @param peer_cfg peer_cfg to use for IKE_SA setup + * @param child_cfg child_cfg to set up CHILD_SA from ++ * @param my_host optional address hint for source ++ * @param other_host optional address hint for destination + * @param cb logging callback + * @param param parameter to include in each call of cb + * @param timeout timeout in ms to wait for callbacks, 0 to disable +@@ -92,6 +94,7 @@ struct controller_t { + */ + status_t (*initiate)(controller_t *this, + peer_cfg_t *peer_cfg, child_cfg_t *child_cfg, ++ host_t *my_host, host_t *other_host, + controller_cb_t callback, void *param, u_int timeout, + bool limits); + +diff --git a/src/libcharon/plugins/stroke/stroke_control.c b/src/libcharon/plugins/stroke/stroke_control.c +index ee8306772..0736a6427 100644 +--- a/src/libcharon/plugins/stroke/stroke_control.c ++++ b/src/libcharon/plugins/stroke/stroke_control.c +@@ -108,7 +108,7 @@ static void charon_initiate(private_stroke_control_t *this, peer_cfg_t *peer_cfg + if (msg->output_verbosity < 0) + { + charon->controller->initiate(charon->controller, peer_cfg, child_cfg, +- NULL, NULL, 0, FALSE); ++ NULL, NULL, NULL, NULL, 0, FALSE); + } + else + { +@@ -116,7 +116,8 @@ static void charon_initiate(private_stroke_control_t *this, peer_cfg_t *peer_cfg + status_t status; + + status = charon->controller->initiate(charon->controller, +- peer_cfg, child_cfg, (controller_cb_t)stroke_log, ++ peer_cfg, child_cfg, NULL, NULL, ++ (controller_cb_t)stroke_log, + &info, this->timeout, FALSE); + switch (status) + { +diff --git a/src/libcharon/plugins/vici/vici_config.c b/src/libcharon/plugins/vici/vici_config.c +index 12497ec5e..ba954e5cb 100644 +--- a/src/libcharon/plugins/vici/vici_config.c ++++ b/src/libcharon/plugins/vici/vici_config.c +@@ -1978,7 +1978,7 @@ static void run_start_action(private_vici_config_t *this, peer_cfg_t *peer_cfg, + DBG1(DBG_CFG, "initiating '%s'", child_cfg->get_name(child_cfg)); + charon->controller->initiate(charon->controller, + peer_cfg->get_ref(peer_cfg), child_cfg->get_ref(child_cfg), +- NULL, NULL, 0, FALSE); ++ NULL, NULL, NULL, NULL, 0, FALSE); + break; + case ACTION_ROUTE: + DBG1(DBG_CFG, "installing '%s'", child_cfg->get_name(child_cfg)); +diff --git a/src/libcharon/plugins/vici/vici_control.c b/src/libcharon/plugins/vici/vici_control.c +index afee649f7..94bb2eecb 100644 +--- a/src/libcharon/plugins/vici/vici_control.c ++++ b/src/libcharon/plugins/vici/vici_control.c +@@ -16,6 +16,28 @@ + * for more details. + */ + ++/* ++ * Copyright (C) 2014 Timo Teräs <timo.teras@iki.fi> ++ * ++ * 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 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 "vici_control.h" + #include "vici_builder.h" + +@@ -169,9 +191,11 @@ static child_cfg_t* find_child_cfg(char *name, char *pname, peer_cfg_t **out) + CALLBACK(initiate, vici_message_t*, + private_vici_control_t *this, char *name, u_int id, vici_message_t *request) + { ++ vici_message_t* msg; + child_cfg_t *child_cfg = NULL; + peer_cfg_t *peer_cfg; +- char *child, *ike; ++ host_t *my_host = NULL, *other_host = NULL; ++ char *child, *ike, *my_host_str, *other_host_str; + int timeout; + bool limits; + controller_cb_t log_cb = NULL; +@@ -185,6 +209,8 @@ CALLBACK(initiate, vici_message_t*, + timeout = request->get_int(request, 0, "timeout"); + limits = request->get_bool(request, FALSE, "init-limits"); + log.level = request->get_int(request, 1, "loglevel"); ++ my_host_str = request->get_str(request, NULL, "my-host"); ++ other_host_str = request->get_str(request, NULL, "other-host"); + + if (!child) + { +@@ -195,28 +221,47 @@ CALLBACK(initiate, vici_message_t*, + log_cb = (controller_cb_t)log_vici; + } + +- DBG1(DBG_CFG, "vici initiate '%s'", child); ++ if (my_host_str) ++ { ++ my_host = host_create_from_string(my_host_str, 0); ++ } ++ if (other_host_str) ++ { ++ other_host = host_create_from_string(other_host_str, 0); ++ } ++ ++ DBG1(DBG_CFG, "vici initiate '%s', me %H, other %H, limits %d", child, my_host, other_host, limits); + + child_cfg = find_child_cfg(child, ike, &peer_cfg); + if (!child_cfg) + { +- return send_reply(this, "CHILD_SA config '%s' not found", child); ++ msg = send_reply(this, "CHILD_SA config '%s' not found", child); ++ goto ret; + } +- switch (charon->controller->initiate(charon->controller, peer_cfg, +- child_cfg, log_cb, &log, timeout, limits)) ++ switch (charon->controller->initiate(charon->controller, ++ peer_cfg, child_cfg, my_host, other_host, ++ log_cb, &log, timeout, limits)) + { + case SUCCESS: +- return send_reply(this, NULL); ++ msg = send_reply(this, NULL); ++ break; + case OUT_OF_RES: +- return send_reply(this, "CHILD_SA '%s' not established after %dms", ++ msg = send_reply(this, "CHILD_SA '%s' not established after %dms", + child, timeout); ++ break; + case INVALID_STATE: +- return send_reply(this, "establishing CHILD_SA '%s' not possible " ++ msg = send_reply(this, "establishing CHILD_SA '%s' not possible " + "at the moment due to limits", child); ++ break; + case FAILED: + default: +- return send_reply(this, "establishing CHILD_SA '%s' failed", child); ++ msg = send_reply(this, "establishing CHILD_SA '%s' failed", child); ++ break; + } ++ret: ++ if (my_host) my_host->destroy(my_host); ++ if (other_host) other_host->destroy(other_host); ++ return msg; + } + + CALLBACK(terminate, vici_message_t*, +diff --git a/src/libcharon/processing/jobs/start_action_job.c b/src/libcharon/processing/jobs/start_action_job.c +index 654ec6abe..3d5a48cb8 100644 +--- a/src/libcharon/processing/jobs/start_action_job.c ++++ b/src/libcharon/processing/jobs/start_action_job.c +@@ -61,7 +61,7 @@ METHOD(job_t, execute, job_requeue_t, + charon->controller->initiate(charon->controller, + peer_cfg->get_ref(peer_cfg), + child_cfg->get_ref(child_cfg), +- NULL, NULL, 0, FALSE); ++ NULL, NULL, NULL, NULL, 0, FALSE); + break; + case ACTION_ROUTE: + DBG1(DBG_JOB, "start action: route '%s'", name); +diff --git a/src/libcharon/sa/ike_sa_manager.c b/src/libcharon/sa/ike_sa_manager.c +index 3ee233c1f..def2a6f1b 100644 +--- a/src/libcharon/sa/ike_sa_manager.c ++++ b/src/libcharon/sa/ike_sa_manager.c +@@ -17,6 +17,28 @@ + * for more details. + */ + ++/* ++ * Copyright (C) 2014 Timo Teräs <timo.teras@iki.fi> ++ * ++ * 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 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 <string.h> + #include <inttypes.h> + +@@ -1408,7 +1430,8 @@ out: + } + + METHOD(ike_sa_manager_t, checkout_by_config, ike_sa_t*, +- private_ike_sa_manager_t *this, peer_cfg_t *peer_cfg) ++ private_ike_sa_manager_t *this, peer_cfg_t *peer_cfg, ++ host_t *my_host, host_t *other_host) + { + enumerator_t *enumerator; + entry_t *entry; +@@ -1417,7 +1440,17 @@ METHOD(ike_sa_manager_t, checkout_by_config, ike_sa_t*, + ike_cfg_t *current_ike; + u_int segment; + +- DBG2(DBG_MGR, "checkout IKE_SA by config"); ++ if (my_host && my_host->get_port(my_host) == 0) ++ { ++ my_host->set_port(my_host, IKEV2_UDP_PORT); ++ } ++ if (other_host && other_host->get_port(other_host) == 0) ++ { ++ other_host->set_port(other_host, IKEV2_UDP_PORT); ++ } ++ ++ DBG2(DBG_MGR, "checkout IKE_SA by config '%s', me %H, other %H", ++ peer_cfg->get_name(peer_cfg), my_host, other_host); + + if (this->reuse_ikesa || peer_cfg->get_ike_version(peer_cfg) == IKEV1) + { +@@ -1434,6 +1457,16 @@ METHOD(ike_sa_manager_t, checkout_by_config, ike_sa_t*, + entry->condvar->signal(entry->condvar); + continue; + } ++ ++ if (my_host && !my_host->ip_equals(my_host, entry->ike_sa->get_my_host(entry->ike_sa))) ++ { ++ continue; ++ } ++ if (other_host && !other_host->ip_equals(other_host, entry->ike_sa->get_other_host(entry->ike_sa))) ++ { ++ continue; ++ } ++ + current_peer = entry->ike_sa->get_peer_cfg(entry->ike_sa); + if (current_peer && current_peer->equals(current_peer, peer_cfg)) + { +@@ -1465,6 +1508,10 @@ METHOD(ike_sa_manager_t, checkout_by_config, ike_sa_t*, + return NULL; + } + ike_sa = checkout_new(this, peer_cfg->get_ike_version(peer_cfg), TRUE); ++ if (my_host || other_host) ++ { ++ ike_sa->update_hosts(ike_sa, my_host, other_host, TRUE); ++ } + } + charon->bus->set_sa(charon->bus, ike_sa); + +diff --git a/src/libcharon/sa/ike_sa_manager.h b/src/libcharon/sa/ike_sa_manager.h +index 4298c54e2..47d6e6a37 100644 +--- a/src/libcharon/sa/ike_sa_manager.h ++++ b/src/libcharon/sa/ike_sa_manager.h +@@ -93,7 +93,8 @@ struct ike_sa_manager_t { + ike_sa_t* (*checkout_by_message) (ike_sa_manager_t* this, message_t *message); + + /** +- * Checkout an IKE_SA for initiation by a peer_config. ++ * Checkout an IKE_SA for initiation by a peer_config and optional ++ * source and remote host addresses. + * + * To initiate, a CHILD_SA may be established within an existing IKE_SA. + * This call checks for an existing IKE_SA by comparing the configuration. +@@ -103,10 +104,13 @@ struct ike_sa_manager_t { + * the found IKE_SA is in the DELETING state. + * + * @param peer_cfg configuration used to find an existing IKE_SA ++ * @param my_host source host address for wildcard peer_cfg ++ * @param other_host remote host address for wildcard peer_cfg + * @return checked out/created IKE_SA + */ + ike_sa_t* (*checkout_by_config) (ike_sa_manager_t* this, +- peer_cfg_t *peer_cfg); ++ peer_cfg_t *peer_cfg, ++ host_t *my_host, host_t *other_host); + + /** + * Check for duplicates of the given IKE_SA. +diff --git a/src/libcharon/sa/trap_manager.c b/src/libcharon/sa/trap_manager.c +index 40a0682f2..ea79d95ae 100644 +--- a/src/libcharon/sa/trap_manager.c ++++ b/src/libcharon/sa/trap_manager.c +@@ -421,7 +421,7 @@ METHOD(trap_manager_t, acquire, void, + peer_cfg_t *peer; + child_cfg_t *child; + ike_sa_t *ike_sa; +- host_t *host; ++ host_t *host, *my_host = NULL, *other_host = NULL; + bool wildcard, ignore = FALSE; + + this->lock->read_lock(this->lock); +@@ -497,36 +497,27 @@ METHOD(trap_manager_t, acquire, void, + this->lock->unlock(this->lock); + + if (wildcard) +- { /* the peer config would match IKE_SAs with other peers */ +- ike_sa = charon->ike_sa_manager->checkout_new(charon->ike_sa_manager, +- peer->get_ike_version(peer), TRUE); +- if (ike_sa) +- { +- ike_cfg_t *ike_cfg; +- uint16_t port; +- uint8_t mask; +- +- ike_sa->set_peer_cfg(ike_sa, peer); +- ike_cfg = ike_sa->get_ike_cfg(ike_sa); ++ { ++ ike_cfg_t *ike_cfg; ++ uint16_t port; ++ uint8_t mask; + +- port = ike_cfg->get_other_port(ike_cfg); +- dst->to_subnet(dst, &host, &mask); +- host->set_port(host, port); +- ike_sa->set_other_host(ike_sa, host); ++ ike_cfg = peer->get_ike_cfg(peer); + +- port = ike_cfg->get_my_port(ike_cfg); +- src->to_subnet(src, &host, &mask); +- host->set_port(host, port); +- ike_sa->set_my_host(ike_sa, host); ++ port = ike_cfg->get_other_port(ike_cfg); ++ dst->to_subnet(dst, &other_host, &mask); ++ other_host->set_port(other_host, port); + +- charon->bus->set_sa(charon->bus, ike_sa); +- } +- } +- else +- { +- ike_sa = charon->ike_sa_manager->checkout_by_config( +- charon->ike_sa_manager, peer); ++ port = ike_cfg->get_my_port(ike_cfg); ++ src->to_subnet(src, &my_host, &mask); ++ my_host->set_port(my_host, port); + } ++ ike_sa = charon->ike_sa_manager->checkout_by_config( ++ charon->ike_sa_manager, peer, ++ my_host, other_host); ++ DESTROY_IF(my_host); ++ DESTROY_IF(other_host); ++ + if (ike_sa) + { + if (ike_sa->get_peer_cfg(ike_sa) == NULL) +diff --git a/src/swanctl/commands/initiate.c b/src/swanctl/commands/initiate.c +index 8e452a6f6..b27bb8194 100644 +--- a/src/swanctl/commands/initiate.c ++++ b/src/swanctl/commands/initiate.c +@@ -13,6 +13,28 @@ + * for more details. + */ + ++/* ++ * Copyright (C) 2014 Timo Teräs <timo.teras@iki.fi> ++ * ++ * 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 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 "command.h" + + #include <errno.h> +@@ -37,7 +59,7 @@ static int initiate(vici_conn_t *conn) + vici_req_t *req; + vici_res_t *res; + command_format_options_t format = COMMAND_FORMAT_NONE; +- char *arg, *child = NULL, *ike = NULL; ++ char *arg, *child = NULL, *ike = NULL, *my_host = NULL, *other_host = NULL; + int ret = 0, timeout = 0, level = 1; + + while (TRUE) +@@ -64,6 +86,12 @@ static int initiate(vici_conn_t *conn) + case 'l': + level = atoi(arg); + continue; ++ case 'S': ++ my_host = arg; ++ continue; ++ case 'R': ++ other_host = arg; ++ continue; + case EOF: + break; + default: +@@ -87,6 +115,14 @@ static int initiate(vici_conn_t *conn) + { + vici_add_key_valuef(req, "ike", "%s", ike); + } ++ if (my_host) ++ { ++ vici_add_key_valuef(req, "my-host", "%s", my_host); ++ } ++ if (other_host) ++ { ++ vici_add_key_valuef(req, "other-host", "%s", other_host); ++ } + if (timeout) + { + vici_add_key_valuef(req, "timeout", "%d", timeout * 1000); +@@ -133,6 +169,8 @@ static void __attribute__ ((constructor))reg() + {"help", 'h', 0, "show usage information"}, + {"child", 'c', 1, "initate a CHILD_SA configuration"}, + {"ike", 'i', 1, "name of the connection to which the child belongs"}, ++ {"source", 'S', 1, "override source address"}, ++ {"remote", 'R', 1, "override remote address"}, + {"timeout", 't', 1, "timeout in seconds before detaching"}, + {"raw", 'r', 0, "dump raw response message"}, + {"pretty", 'P', 0, "dump raw response message in pretty print"}, +-- +2.12.1 + diff --git a/user/strongswan/1002-vici-send-certificates-for-ike-sa-events.patch b/user/strongswan/1002-vici-send-certificates-for-ike-sa-events.patch new file mode 100644 index 000000000..94814e13d --- /dev/null +++ b/user/strongswan/1002-vici-send-certificates-for-ike-sa-events.patch @@ -0,0 +1,131 @@ +From 61556ac61b9d7c564dfe13d5cf549a53f889ae36 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Timo=20Ter=C3=A4s?= <timo.teras@iki.fi> +Date: Mon, 21 Sep 2015 13:42:05 +0300 +Subject: [PATCH] vici: send certificates for ike-sa events +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Signed-off-by: Timo Teräs <timo.teras@iki.fi> +--- + src/libcharon/plugins/vici/vici_query.c | 48 ++++++++++++++++++++++++++++----- + 1 file changed, 41 insertions(+), 7 deletions(-) + +diff --git a/src/libcharon/plugins/vici/vici_query.c b/src/libcharon/plugins/vici/vici_query.c +index c0f4e2de9..309a11c03 100644 +--- a/src/libcharon/plugins/vici/vici_query.c ++++ b/src/libcharon/plugins/vici/vici_query.c +@@ -337,7 +337,7 @@ static void list_vips(private_vici_query_t *this, vici_builder_t *b, + * List details of an IKE_SA + */ + static void list_ike(private_vici_query_t *this, vici_builder_t *b, +- ike_sa_t *ike_sa, time_t now) ++ ike_sa_t *ike_sa, time_t now, bool add_certs) + { + time_t t; + ike_sa_id_t *id; +@@ -345,6 +345,8 @@ static void list_ike(private_vici_query_t *this, vici_builder_t *b, + proposal_t *proposal; + uint16_t alg, ks; + host_t *host; ++ auth_cfg_t *auth_cfg; ++ enumerator_t *enumerator; + + b->add_kv(b, "uniqueid", "%u", ike_sa->get_unique_id(ike_sa)); + b->add_kv(b, "version", "%u", ike_sa->get_version(ike_sa)); +@@ -354,11 +356,43 @@ static void list_ike(private_vici_query_t *this, vici_builder_t *b, + b->add_kv(b, "local-host", "%H", host); + b->add_kv(b, "local-port", "%d", host->get_port(host)); + b->add_kv(b, "local-id", "%Y", ike_sa->get_my_id(ike_sa)); ++ if (add_certs) ++ { ++ enumerator = ike_sa->create_auth_cfg_enumerator(ike_sa, TRUE); ++ if (enumerator->enumerate(enumerator, &auth_cfg)) ++ { ++ certificate_t *cert = auth_cfg->get(auth_cfg, AUTH_RULE_SUBJECT_CERT); ++ chunk_t encoding; ++ ++ if (cert && cert->get_encoding(cert, CERT_ASN1_DER, &encoding)) ++ { ++ b->add(b, VICI_KEY_VALUE, "local-cert-data", encoding); ++ free(encoding.ptr); ++ } ++ } ++ enumerator->destroy(enumerator); ++ } + + host = ike_sa->get_other_host(ike_sa); + b->add_kv(b, "remote-host", "%H", host); + b->add_kv(b, "remote-port", "%d", host->get_port(host)); + b->add_kv(b, "remote-id", "%Y", ike_sa->get_other_id(ike_sa)); ++ if (add_certs) ++ { ++ enumerator = ike_sa->create_auth_cfg_enumerator(ike_sa, FALSE); ++ if (enumerator->enumerate(enumerator, &auth_cfg)) ++ { ++ certificate_t *cert = auth_cfg->get(auth_cfg, AUTH_RULE_SUBJECT_CERT); ++ chunk_t encoding; ++ ++ if (cert && cert->get_encoding(cert, CERT_ASN1_DER, &encoding)) ++ { ++ b->add(b, VICI_KEY_VALUE, "remote-cert-data", encoding); ++ free(encoding.ptr); ++ } ++ } ++ enumerator->destroy(enumerator); ++ } + + eap = ike_sa->get_other_eap_id(ike_sa); + +@@ -476,7 +510,7 @@ CALLBACK(list_sas, vici_message_t*, + b = vici_builder_create(); + b->begin_section(b, ike_sa->get_name(ike_sa)); + +- list_ike(this, b, ike_sa, now); ++ list_ike(this, b, ike_sa, now, TRUE); + + b->begin_section(b, "child-sas"); + csas = ike_sa->create_child_sa_enumerator(ike_sa); +@@ -1624,7 +1658,7 @@ METHOD(listener_t, ike_updown, bool, + } + + b->begin_section(b, ike_sa->get_name(ike_sa)); +- list_ike(this, b, ike_sa, now); ++ list_ike(this, b, ike_sa, now, up); + b->end_section(b); + + this->dispatcher->raise_event(this->dispatcher, +@@ -1649,10 +1683,10 @@ METHOD(listener_t, ike_rekey, bool, + b = vici_builder_create(); + b->begin_section(b, old->get_name(old)); + b->begin_section(b, "old"); +- list_ike(this, b, old, now); ++ list_ike(this, b, old, now, TRUE); + b->end_section(b); + b->begin_section(b, "new"); +- list_ike(this, b, new, now); ++ list_ike(this, b, new, now, TRUE); + b->end_section(b); + b->end_section(b); + +@@ -1682,7 +1716,7 @@ METHOD(listener_t, child_updown, bool, + } + + b->begin_section(b, ike_sa->get_name(ike_sa)); +- list_ike(this, b, ike_sa, now); ++ list_ike(this, b, ike_sa, now, up); + b->begin_section(b, "child-sas"); + + b->begin_section(b, child_sa->get_name(child_sa)); +@@ -1714,7 +1748,7 @@ METHOD(listener_t, child_rekey, bool, + b = vici_builder_create(); + + b->begin_section(b, ike_sa->get_name(ike_sa)); +- list_ike(this, b, ike_sa, now); ++ list_ike(this, b, ike_sa, now, TRUE); + b->begin_section(b, "child-sas"); + + b->begin_section(b, old->get_name(old)); +-- +2.12.1 + diff --git a/user/strongswan/1003-vici-add-support-for-individual-sa-state-changes.patch b/user/strongswan/1003-vici-add-support-for-individual-sa-state-changes.patch new file mode 100644 index 000000000..06dc121e8 --- /dev/null +++ b/user/strongswan/1003-vici-add-support-for-individual-sa-state-changes.patch @@ -0,0 +1,159 @@ +From 0e4f1118e68736bb96ae23f4c6cb85f2ebbc998d Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Timo=20Ter=C3=A4s?= <timo.teras@iki.fi> +Date: Mon, 21 Sep 2015 13:42:11 +0300 +Subject: [PATCH] vici: add support for individual sa state changes +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Useful for monitoring and tracking full SA. + +Signed-off-by: Timo Teräs <timo.teras@iki.fi> +--- + src/libcharon/plugins/vici/vici_query.c | 105 ++++++++++++++++++++++++++++++++ + 1 file changed, 105 insertions(+) + +diff --git a/src/libcharon/plugins/vici/vici_query.c b/src/libcharon/plugins/vici/vici_query.c +index 309a11c03..83a5daaa7 100644 +--- a/src/libcharon/plugins/vici/vici_query.c ++++ b/src/libcharon/plugins/vici/vici_query.c +@@ -1624,8 +1624,16 @@ static void manage_commands(private_vici_query_t *this, bool reg) + this->dispatcher->manage_event(this->dispatcher, "list-cert", reg); + this->dispatcher->manage_event(this->dispatcher, "ike-updown", reg); + this->dispatcher->manage_event(this->dispatcher, "ike-rekey", reg); ++ this->dispatcher->manage_event(this->dispatcher, "ike-state-established", reg); ++ this->dispatcher->manage_event(this->dispatcher, "ike-state-destroying", reg); + this->dispatcher->manage_event(this->dispatcher, "child-updown", reg); + this->dispatcher->manage_event(this->dispatcher, "child-rekey", reg); ++ this->dispatcher->manage_event(this->dispatcher, "child-state-installing", reg); ++ this->dispatcher->manage_event(this->dispatcher, "child-state-installed", reg); ++ this->dispatcher->manage_event(this->dispatcher, "child-state-updating", reg); ++ this->dispatcher->manage_event(this->dispatcher, "child-state-rekeying", reg); ++ this->dispatcher->manage_event(this->dispatcher, "child-state-rekeyed", reg); ++ this->dispatcher->manage_event(this->dispatcher, "child-state-destroying", reg); + manage_command(this, "list-sas", list_sas, reg); + manage_command(this, "list-policies", list_policies, reg); + manage_command(this, "list-conns", list_conns, reg); +@@ -1696,6 +1704,45 @@ METHOD(listener_t, ike_rekey, bool, + return TRUE; + } + ++METHOD(listener_t, ike_state_change, bool, ++ private_vici_query_t *this, ike_sa_t *ike_sa, ike_sa_state_t state) ++{ ++ char *event; ++ vici_builder_t *b; ++ time_t now; ++ ++ switch (state) ++ { ++ case IKE_ESTABLISHED: ++ event = "ike-state-established"; ++ break; ++ case IKE_DESTROYING: ++ event = "ike-state-destroying"; ++ break; ++ default: ++ return TRUE; ++ } ++ ++ if (!this->dispatcher->has_event_listeners(this->dispatcher, event)) ++ { ++ return TRUE; ++ } ++ ++ now = time_monotonic(NULL); ++ ++ b = vici_builder_create(); ++ b->begin_section(b, ike_sa->get_name(ike_sa)); ++ list_ike(this, b, ike_sa, now, state != IKE_DESTROYING); ++ b->begin_section(b, "child-sas"); ++ b->end_section(b); ++ b->end_section(b); ++ ++ this->dispatcher->raise_event(this->dispatcher, ++ event, 0, b->finalize(b)); ++ ++ return TRUE; ++} ++ + METHOD(listener_t, child_updown, bool, + private_vici_query_t *this, ike_sa_t *ike_sa, child_sa_t *child_sa, bool up) + { +@@ -1771,6 +1818,62 @@ METHOD(listener_t, child_rekey, bool, + return TRUE; + } + ++METHOD(listener_t, child_state_change, bool, ++ private_vici_query_t *this, ike_sa_t *ike_sa, child_sa_t *child_sa, child_sa_state_t state) ++{ ++ char *event; ++ vici_builder_t *b; ++ time_t now; ++ ++ switch (state) ++ { ++ case CHILD_INSTALLING: ++ event = "child-state-installing"; ++ break; ++ case CHILD_INSTALLED: ++ event = "child-state-installed"; ++ break; ++ case CHILD_UPDATING: ++ event = "child-state-updating"; ++ break; ++ case CHILD_REKEYING: ++ event = "child-state-rekeying"; ++ break; ++ case CHILD_REKEYED: ++ event = "child-state-rekeyed"; ++ break; ++ case CHILD_DESTROYING: ++ event = "child-state-destroying"; ++ break; ++ default: ++ return TRUE; ++ } ++ ++ if (!this->dispatcher->has_event_listeners(this->dispatcher, event)) ++ { ++ return TRUE; ++ } ++ ++ now = time_monotonic(NULL); ++ ++ b = vici_builder_create(); ++ b->begin_section(b, ike_sa->get_name(ike_sa)); ++ list_ike(this, b, ike_sa, now, state != CHILD_DESTROYING); ++ b->begin_section(b, "child-sas"); ++ ++ b->begin_section(b, child_sa->get_name(child_sa)); ++ list_child(this, b, child_sa, now); ++ b->end_section(b); ++ ++ b->end_section(b); ++ b->end_section(b); ++ ++ this->dispatcher->raise_event(this->dispatcher, ++ event, 0, b->finalize(b)); ++ ++ return TRUE; ++} ++ + METHOD(vici_query_t, destroy, void, + private_vici_query_t *this) + { +@@ -1790,8 +1893,10 @@ vici_query_t *vici_query_create(vici_dispatcher_t *dispatcher) + .listener = { + .ike_updown = _ike_updown, + .ike_rekey = _ike_rekey, ++ .ike_state_change = _ike_state_change, + .child_updown = _child_updown, + .child_rekey = _child_rekey, ++ .child_state_change = _child_state_change, + }, + .destroy = _destroy, + }, +-- +2.12.1 + diff --git a/user/strongswan/APKBUILD b/user/strongswan/APKBUILD new file mode 100644 index 000000000..29390b652 --- /dev/null +++ b/user/strongswan/APKBUILD @@ -0,0 +1,108 @@ +# Contributor: Jesse Young <jlyo@jlyo.org> +# Contributor: Natanael Copa <ncopa@alpinelinux.org> +# Maintainer: Lee Starnes <lee@canned-death.us> +pkgname=strongswan +pkgver=5.7.1 +_pkgver=${pkgver//_rc/rc} +pkgrel=0 +pkgdesc="IPsec-based VPN solution focused on security and ease of use, supporting IKEv1/IKEv2 and MOBIKE" +url="https://www.strongswan.org/" +arch="all" +pkgusers="ipsec" +pkggroups="ipsec" +license="GPL-2.0 AND RSA-MD5 AND RSA-PKCS11 AND DES" +depends="iproute2" +depends_dev="" +makedepends="$depends_dev linux-headers python3 sqlite-dev openssl-dev curl-dev + gmp-dev libcap-dev" +install="$pkgname.pre-install" +subpackages="$pkgname-doc $pkgname-dbg $pkgname-openrc" +source="https://download.strongswan.org/$pkgname-$_pkgver.tar.bz2 + 0205-ike-Adhere-to-IKE_SA-limit-when-checking-out-by-conf.patch + 1001-charon-add-optional-source-and-remote-overrides-for-.patch + 1002-vici-send-certificates-for-ike-sa-events.patch + 1003-vici-add-support-for-individual-sa-state-changes.patch + + strongswan.initd + charon.initd + " +builddir="$srcdir/$pkgname-$_pkgver" + +# secfixes: +# 5.7.1-r0: +# - CVE-2018-17540 + +build() { + cd "$builddir" + + # notes about configuration: + # - try to keep options in ./configure --help order + # - apk depends on openssl, so we use that + # - openssl provides ciphers, randomness, etc + # -> disable all redundant in-tree copies + + ./configure --prefix=/usr \ + --sysconfdir=/etc \ + --libexecdir=/usr/lib \ + --with-ipsecdir=/usr/lib/strongswan \ + --with-capabilities=libcap \ + --with-user=ipsec \ + --with-group=ipsec \ + --enable-curl \ + --disable-ldap \ + --disable-aes \ + --disable-des \ + --disable-rc2 \ + --disable-md5 \ + --disable-sha1 \ + --disable-sha2 \ + --enable-gmp \ + --disable-hmac \ + --disable-mysql \ + --enable-sqlite \ + --enable-eap-sim \ + --enable-eap-sim-file \ + --enable-eap-aka \ + --enable-eap-aka-3gpp2 \ + --enable-eap-simaka-pseudonym \ + --enable-eap-simaka-reauth \ + --enable-eap-identity \ + --enable-eap-md5 \ + --enable-eap-tls \ + --disable-eap-gtc \ + --enable-eap-mschapv2 \ + --enable-eap-radius \ + --enable-xauth-eap \ + --enable-farp \ + --enable-vici \ + --enable-attr-sql \ + --enable-dhcp \ + --enable-openssl \ + --enable-unity \ + --enable-ha \ + --enable-cmd \ + --enable-swanctl \ + --enable-shared \ + --disable-static + make +} + +check() { + cd "$builddir" + env TESTS_SUITES_EXCLUDE=printf make check +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + install -m755 -D "$srcdir/$pkgname.initd" "$pkgdir/etc/init.d/$pkgname" + install -m755 -D "$srcdir/charon.initd" "$pkgdir/etc/init.d/charon" +} + +sha512sums="43102814434bee7c27a5956be59099cc4ffb9bb5b0d6382ce4c6a80d1d82ed6639f698f5f5544b9ca563554a344638c953525b0e2d39bc6b71b19055c80e07fc strongswan-5.7.1.tar.bz2 +193d845e2751c23d98cdf84134c7803f2e412197669c6d6c1c9974041608d154b85594ed3d9ffb923ca22a4d5926c7f2373787ddc7da47b52019e284a1d13211 0205-ike-Adhere-to-IKE_SA-limit-when-checking-out-by-conf.patch +21db8f153f535ef13cc7c9c011f9b90b8c794e0072bd93fda6a0a56dc00d32d04e186b1a72a87a85613b7e511eed5cb96623abf0721c67dd5c96446db969a185 1001-charon-add-optional-source-and-remote-overrides-for-.patch +f7d98fb99b4855e8bfbb7369292c170536b1987e717feeda71f64ab71b35538e7d462609a773c6a6ed08c8e6ee7a186df12e1ea7d64b9dac0b17d4c7af17dab3 1002-vici-send-certificates-for-ike-sa-events.patch +a4235cd07e17ad3441dc391ded11ee9f4debdffa1e8218809731e73a545ca6fcdc0bb87239d41b1102b0b6719a4d31d43758972d2193ebe298b275285de2ce54 1003-vici-add-support-for-individual-sa-state-changes.patch +8b61e3ffbb39b837733e602ec329e626dc519bf7308d3d4192b497d18f38176789d23ef5afec51f8463ee1ddaf4d74546b965c03184132e217cbc27017e886c9 strongswan.initd +1c44c801f66305c0331f76e580c0d60f1b7d5cd3cc371be55826b06c3899f542664628a912a7fb48626e34d864f72ca5dcd34b2f0d507c4f19c510d0047054c1 charon.initd" diff --git a/user/strongswan/charon.initd b/user/strongswan/charon.initd new file mode 100644 index 000000000..6f79679c0 --- /dev/null +++ b/user/strongswan/charon.initd @@ -0,0 +1,30 @@ +#!/sbin/openrc-run + +description="strongSwan charon IKE daemon" +command="/usr/lib/strongswan/charon" +pidfile="/var/run/charon.pid" +start_stop_daemon_args="--background" +extra_started_commands="reload fullstatus" + +depend() { + need net + after firewall + provide ipsec +} + +start_post() { + ebegin "Loading ${name:-$RC_SVCNAME} configuration" + sleep 0.2 + swanctl --load-all &>/dev/null + eend $? +} + +reload() { + swanctl --reload-settings + swanctl --load-all +} + +fullstatus() { + swanctl --list-conns + swanctl --list-sas +} diff --git a/user/strongswan/strongswan.initd b/user/strongswan/strongswan.initd new file mode 100644 index 000000000..78fecb0ee --- /dev/null +++ b/user/strongswan/strongswan.initd @@ -0,0 +1,35 @@ +#!/sbin/openrc-run + +extra_started_commands="fullstatus" + +depend() { + need net + after firewall + provide ipsec +} + +start() { + ebegin "Starting StrongSwan" + ipsec start + eend $? +} + +stop () { + ebegin "Stopping StrongSwan" + ipsec stop + eend $? +} + +restart() { + ebegin "Restarting StrongSwan" + svc_stop + sleep 2 + svc_start + eend $? +} + +fullstatus() { + ebegin "StrongSwan Status (verbose):" + ipsec statusall + eend $? +} diff --git a/user/strongswan/strongswan.pre-install b/user/strongswan/strongswan.pre-install new file mode 100644 index 000000000..da43ede66 --- /dev/null +++ b/user/strongswan/strongswan.pre-install @@ -0,0 +1,6 @@ +#!/bin/sh + +addgroup -S ipsec 2>/dev/null +adduser -S -D -H -h /var/empty -s /sbin/nologin -G ipsec -g ipsec ipsec 2>/dev/null + +exit 0 diff --git a/user/syntax-highlighting/APKBUILD b/user/syntax-highlighting/APKBUILD index 3c96bddb1..0d2324455 100644 --- a/user/syntax-highlighting/APKBUILD +++ b/user/syntax-highlighting/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=syntax-highlighting -pkgver=5.50.0 +pkgver=5.51.0 pkgrel=0 pkgdesc="Framework for rendering programming code with formatting" url="https://www.kde.org/" @@ -42,4 +42,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="9f452946747a6f524b299547b608b0903ef359ea736182684f3ea2d7709659604bb4a9c8a474ab88123e9d066a35d81a6a67748e05e4bb9e66d20838113ff874 syntax-highlighting-5.50.0.tar.xz" +sha512sums="929aa7d3e8f323c1618db17d7803bebd7f61a6b024ac6205f570db2ee3d567b4e1c1ae38b7fec0c0d9ba81c4f52c90c9e2660cfee209350e59e9bb301fbb3fba syntax-highlighting-5.51.0.tar.xz" diff --git a/user/tcpdump/APKBUILD b/user/tcpdump/APKBUILD new file mode 100644 index 000000000..c5f4203e7 --- /dev/null +++ b/user/tcpdump/APKBUILD @@ -0,0 +1,38 @@ +# Contributor: Natanael Copa <ncopa@alpinelinux.org> +# Maintainer: Dan Theisen <djt@hxx.in> +pkgname=tcpdump +pkgver=4.9.2 +pkgrel=0 +pkgdesc="A tool for network monitoring and data acquisition" +url="http://www.tcpdump.org" +arch="all" +license="BSD-3-Clause" +depends="" +makedepends="libpcap-dev openssl-dev perl" +subpackages="$pkgname-doc" +source="http://www.tcpdump.org/release/$pkgname-$pkgver.tar.gz" + +build () { + cd "$builddir" + ./configure \ + --build=$CBUILD \ + --host=$CHOST \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --localstatedir=/var + make +} + +check() { + cd "$builddir" + make check +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + rm -f "$pkgdir"/usr/sbin/tcpdump.4* +} + +sha512sums="e1bc19a5867d6e3628f3941bdf3ec831bf13784f1233ca1bccc46aac1702f47ee9357d7ff0ca62cddf211b3c8884488c21144cabddd92c861e32398cd8f7c44b tcpdump-4.9.2.tar.gz" diff --git a/user/tcsh/001-sysmalloc.patch b/user/tcsh/001-sysmalloc.patch new file mode 100644 index 000000000..b22c01898 --- /dev/null +++ b/user/tcsh/001-sysmalloc.patch @@ -0,0 +1,15 @@ +--- a/config_f.h ++++ b/config_f.h +@@ -139,11 +139,8 @@ + * This can be much slower and no memory statistics will be + * provided. + */ +-#if defined(__MACHTEN__) || defined(PURIFY) || defined(MALLOC_TRACE) || defined(_OSD_POSIX) || defined(__MVS__) || defined (__CYGWIN__) || defined(__GLIBC__) || defined(__OpenBSD__) || defined(__APPLE__) || defined (__ANDROID__) ++ + # define SYSMALLOC +-#else +-# undef SYSMALLOC +-#endif + + /* + * USE_ACCESS Use access(2) rather than stat(2) when POSIX is defined. diff --git a/user/tcsh/002-test_123-posix_fix.patch b/user/tcsh/002-test_123-posix_fix.patch new file mode 100644 index 000000000..6ed59de38 --- /dev/null +++ b/user/tcsh/002-test_123-posix_fix.patch @@ -0,0 +1,34 @@ +Author: Dan Theisen <djt@hxx.in> +Date: Wed Jun 06 03:30:25 2018 -0800 + +The following lines have a subtle change around [:blank:], changing it +to [[:blank:]] instead. This is required because POSIX treats characters +inside of brackets as a group of characters to match against. In this case, +[[:space:]] means [] group of characters, and [:space:] is the group, as per: +IEEE Std 1003.1-2017 (Revision of IEEE Std 1003.1-2008), Chapter 9 +http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap09.html + +--- tcsh-6.20.00/tests/lexical.at.old 2018-06-06 02:20:16.787145186 -0700 ++++ tcsh-6.20.00/tests/lexical.at 2018-06-06 02:21:09.537890842 -0700 +@@ -567,10 +567,10 @@ + ]]) + AT_DATA([uniformity_test.csh], + [[ +-set SERVICE_NAME_LOG = `cat batchsystem.properties | grep '^jdbc_url' | sed -ne 's/^[^=]*=[^@]*@[:blank:]*\([^$]*\)$/\1/p' | perl -pe 's/\s//g' | perl -pe 's/\)/\\\)/g' | perl -pe 's/\(/\\\(/g'` ++set SERVICE_NAME_LOG = `cat batchsystem.properties | grep '^jdbc_url' | sed -ne 's/^[^=]*=[^@]*@[[:blank:]]*\([^$]*\)$/\1/p' | perl -pe 's/\s//g' | perl -pe 's/\)/\\\)/g' | perl -pe 's/\(/\\\(/g'` + echo -n "$SERVICE_NAME_LOG" > ./output1 + +-cat batchsystem.properties | grep '^jdbc_url' | sed -ne 's/^[^=]*=[^@]*@[:blank:]*\([^$]*\)$/\1/p' | perl -pe 's/\s//g' | perl -pe 's/\)/\\\)/g' | perl -pe 's/\(/\\\(/g' > ./output2 ++cat batchsystem.properties | grep '^jdbc_url' | sed -ne 's/^[^=]*=[^@]*@[[:blank:]]*\([^$]*\)$/\1/p' | perl -pe 's/\s//g' | perl -pe 's/\)/\\\)/g' | perl -pe 's/\(/\\\(/g' > ./output2 + + diff -uprN ./output1 ./output2 >& /dev/null + +@@ -587,7 +587,7 @@ + echo "(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP\)(HOST=db\)(PORT=1521\)\)(CONNECT_DATA=(SERVER=DEDICATED\)(SERVICE_NAME=bns03\)\)\)" > ./expected_result + + set string = "jdbc_url=jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=db)(PORT=1521))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=bns03)))" +-set SERVICE_NAME_LOG = `echo "$string" | grep '^jdbc_url' | sed -ne 's/^[^=]*=[^@]*@[:blank:]*\([^$]*\)$/\1/p' | perl -pe 's/\)/\\\)/g'` ++set SERVICE_NAME_LOG = `echo "$string" | grep '^jdbc_url' | sed -ne 's/^[^=]*=[^@]*@[[:blank:]]*\([^$]*\)$/\1/p' | perl -pe 's/\)/\\\)/g'` + + echo "$SERVICE_NAME_LOG" > ./actual_result + diff --git a/user/tcsh/APKBUILD b/user/tcsh/APKBUILD new file mode 100644 index 000000000..2fdfac0b2 --- /dev/null +++ b/user/tcsh/APKBUILD @@ -0,0 +1,47 @@ +# Contributor: Dan Theisen <djt@hxx.in> +# Maintainer: Dan Theisen <djt@hxx.in> +pkgname=tcsh +pkgver=6.20.00 +pkgrel=2 +pkgdesc="extended C-shell" +url="http://www.tcsh.org" +arch="all" +license="BSD-3-Clause" +depends="" +checkdepends="diffutils autoconf" +makedepends="ncurses-dev ncurses-terminfo utmps-dev gettext-tiny-dev" +install="$pkgname.post-install $pkgname.post-upgrade $pkgname.pre-deinstall" +subpackages="$pkgname-doc" +options="!checkroot" +source="$pkgname-$pkgver.tar.gz::http://http.debian.net/debian/pool/main/t/tcsh/${pkgname}_${pkgver}.orig.tar.gz + 001-sysmalloc.patch + 002-test_123-posix_fix.patch" + +build() { + cd "$builddir" + LIBS="-lutmps -lskarnet -ltinfo" ./configure \ + --build=$CBUILD \ + --host=$CHOST \ + --prefix=/usr \ + --bindir=/bin \ + --mandir=/usr/share/man \ + --infodir=/usr/share/info \ + --enable-nls \ + --enable-nls-catalogs \ + --disable-rpath + make +} + +check() { + cd "$builddir" + make check +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install +} + +sha512sums="c5635393c22341e62fb9a0b953ddf8871a876ab09deb08c98237f93afa9257b4a3381d1db65eefe769e22ef845db29ab7bc78773f1f609d73c8205689a6683e9 tcsh-6.20.00.tar.gz +40149d8eb2fc0fe5184f3c24c7a1b728e881cc0048ccd37a986c3b2d2094499ec1c37ae2bae4c209fb8a847aa943e83e81f79e3d2f55c59990bc00d9d07f5a94 001-sysmalloc.patch +b4c1afe04554d117b1402608bcdb243148c0c7b2442bdc10dde3ed6601db5e7c5a2341373f9bdc31fda8860e47a6e152cdcc4e3a8b273742037eebc624df282c 002-test_123-posix_fix.patch" diff --git a/user/tcsh/tcsh.post-install b/user/tcsh/tcsh.post-install new file mode 100644 index 000000000..7342c5e72 --- /dev/null +++ b/user/tcsh/tcsh.post-install @@ -0,0 +1,3 @@ +#!/bin/sh +add-shell '/bin/tcsh' +exit 0 diff --git a/user/tcsh/tcsh.post-upgrade b/user/tcsh/tcsh.post-upgrade new file mode 120000 index 000000000..180542a18 --- /dev/null +++ b/user/tcsh/tcsh.post-upgrade @@ -0,0 +1 @@ +tcsh.post-install
\ No newline at end of file diff --git a/user/tcsh/tcsh.pre-deinstall b/user/tcsh/tcsh.pre-deinstall new file mode 100644 index 000000000..9e2e34c1c --- /dev/null +++ b/user/tcsh/tcsh.pre-deinstall @@ -0,0 +1,3 @@ +#!/bin/sh +remove-shell '/bin/tcsh' +exit 0 diff --git a/user/terminus-font/APKBUILD b/user/terminus-font/APKBUILD new file mode 100644 index 000000000..0020705e8 --- /dev/null +++ b/user/terminus-font/APKBUILD @@ -0,0 +1,35 @@ +# Contributor: Max Rees <maxcrees@me.com> +# Maintainer: Max Rees <maxcrees@me.com> +pkgname=terminus-font +pkgver=4.46 +pkgrel=0 +pkgdesc="Monospace bitmap font (for X11 and console)" +url="http://terminus-font.sourceforge.net/" # No HTTPS +arch="noarch" +options="!check" # Fonts have no test suite +license="OFL-1.1" +depends="" +makedepends="bdftopcf python3" +source="https://downloads.sourceforge.net/project/$pkgname/$pkgname-$pkgver/$pkgname-$pkgver.tar.gz" + +build() { + cd "$builddir" + ./configure \ + --prefix=/usr \ + --psfdir=/usr/share/consolefonts \ + --x11dir=/usr/share/fonts/misc + make +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + + install -Dm644 75-yes-terminus.conf \ + "$pkgdir/etc/fonts/conf.avail/75-yes-terminus.conf" + install -d "$pkgdir/etc/fonts/conf.d" + cd "$pkgdir/etc/fonts/conf.d" + ln -s /etc/fonts/conf.avail/75-yes-terminus.conf . +} + +sha512sums="ae221920ecff54b9575a25d30a429feee6e19ef1e9669896c34f86f80d5495c3654f5423ff1df76e86bc999d1f37c306048b44d8ca55144f0f299926d3d33b58 terminus-font-4.46.tar.gz" diff --git a/user/the_silver_searcher/APKBUILD b/user/the_silver_searcher/APKBUILD new file mode 100644 index 000000000..c9f324a69 --- /dev/null +++ b/user/the_silver_searcher/APKBUILD @@ -0,0 +1,40 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: A. Wilcox <awilfox@adelielinux.org> +pkgname=the_silver_searcher +pkgver=2.2.0 +pkgrel=0 +pkgdesc="Tool for very fast searching of text in documents and code" +url="https://geoff.greer.fm/ag/" +arch="all" +options="!check" # Tests are not shipped in the release tarball... +license="Apache-2.0" +depends="" +makedepends="pcre-dev xz-dev zlib-dev" +checkdepends="cram" +subpackages="$pkgname-doc" +source="https://geoff.greer.fm/ag/releases/the_silver_searcher-$pkgver.tar.gz" +builddir="$srcdir/the_silver_searcher-$pkgver" + +build() { + cd "$builddir" + ./configure \ + --build=$CBUILD \ + --host=$CHOST \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --localstatedir=/var + make +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install +} + +sha512sums="89d4e4f7f34c0d57aa880e7c3466f0373b961744a89ad30541e89e2d614322ab46c8044ec458406a117f74b0fea14cd3063fa4e0624a96526aa23eaccd6f1141 the_silver_searcher-2.2.0.tar.gz" diff --git a/user/threadweaver/APKBUILD b/user/threadweaver/APKBUILD index 2fa1e5e8d..70c07719a 100644 --- a/user/threadweaver/APKBUILD +++ b/user/threadweaver/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=threadweaver -pkgver=5.50.0 +pkgver=5.51.0 pkgrel=0 pkgdesc="High-level threading framework" url="https://www.kde.org/" @@ -41,4 +41,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="a452aea4ca141c4964129412b42f8fe6457ca156edbd99770453564960714abeec395d78ab2686f01fa602822938fd50cb706920c25ec909d4446bfd14602175 threadweaver-5.50.0.tar.xz" +sha512sums="b93ab96ea0033df07aa41fdff8289c75e908dddb5caaa60a288827e8b8a7d3035b3fc9beca63b25a4d785f0cc2622cb6aa83ba9423d5716f0138b8b49531076a threadweaver-5.51.0.tar.xz" diff --git a/user/thunar-volman/APKBUILD b/user/thunar-volman/APKBUILD new file mode 100644 index 000000000..7475e17a0 --- /dev/null +++ b/user/thunar-volman/APKBUILD @@ -0,0 +1,37 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=thunar-volman +pkgver=0.9.0 +pkgrel=0 +pkgdesc="Volume manager for Thunar" +url="https://xfce.org" +arch="all" +license="GPL-2.0+" +makedepends="intltool libxfce4ui-dev thunar-dev exo-dev libgudev-dev libnotify-dev" +subpackages="$pkgname-lang" +langdir="/usr/lib/locale" +source="http://archive.xfce.org/src/xfce/thunar-volman/0.9/thunar-volman-$pkgver.tar.bz2" +sha512sums="d753e2aeded921e5652e6ace164845997dc3cdfbfd92561e2af822bffdf910a06850658a9f662198e4f7c485a3dc1226f97b573d28fb66e5ba490aa08f56a8f5 thunar-volman-0.9.0.tar.bz2" + +build() { + cd "$builddir" + ./configure \ + --build=$CBUILD \ + --host=$CHOST \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --localstatedir=/var + make +} + +check() { + cd "$builddir" + make check +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install +} + diff --git a/user/thunar/APKBUILD b/user/thunar/APKBUILD new file mode 100644 index 000000000..b11ee1106 --- /dev/null +++ b/user/thunar/APKBUILD @@ -0,0 +1,40 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=thunar +pkgver=1.8.2 +pkgrel=0 +pkgdesc="File manager for the XFCE desktop environment" +url="https://xfce.org" +arch="all" +license="LGPL-2.0+ AND GPL-2.0+" +makedepends="intltool gtk+3.0-dev exo-dev libxfce4ui-dev vala-dev + gobject-introspection-dev libsm-dev libgudev-dev libnotify-dev + libexif-dev" +subpackages="$pkgname-dev $pkgname-doc $pkgname-lang" +langdir="/usr/lib/locale" +source="http://archive.xfce.org/src/xfce/thunar/1.8/Thunar-$pkgver.tar.bz2" +builddir="$srcdir/Thunar-$pkgver" + +build() { + cd "$builddir" + ./configure \ + --build=$CBUILD \ + --host=$CHOST \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --localstatedir=/var + make +} + +check() { + cd "$builddir" + make check +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install +} + +sha512sums="c770fae8b6e5e0e42148ed2b9777afba5159783e5fc716eba1e0499b5390684f386eb575f1a608814bc118bbf05ede34c6737e28c06470c4d01717b579308ec9 Thunar-1.8.2.tar.bz2" diff --git a/user/tint2/APKBUILD b/user/tint2/APKBUILD index b8ec7a53b..90d37e258 100644 --- a/user/tint2/APKBUILD +++ b/user/tint2/APKBUILD @@ -3,7 +3,7 @@ # Contributor: Francesco Colista <fcolista@alpinelinux.org> # Maintainer: Max Rees <maxcrees@me.com> pkgname=tint2 -pkgver=16.6 +pkgver=16.6.1 pkgrel=0 pkgdesc="Simple, unintrusive panel/taskbar" url="https://gitlab.com/o9000/tint2" @@ -40,4 +40,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="70ba1b338c19d2b61804b6cedda659f1dfe90cbeb2c02e2e37a8b35770f2ef826b373c050449bddc1995628e6b413ea18a0f939766c4f22b8147bf39af3e81cd tint2-16.6.tar.bz2" +sha512sums="25eb3d96f68da1d09711c2f3741e964c880ba911efe3b90b7ebdec4e4734eb7b76d8a84a34431c6a55e785bbbd7ebc8ef447beef2bb57e70f728d28b78b3a81d tint2-16.6.1.tar.bz2" diff --git a/user/tlp/APKBUILD b/user/tlp/APKBUILD new file mode 100644 index 000000000..dd34fe5cc --- /dev/null +++ b/user/tlp/APKBUILD @@ -0,0 +1,52 @@ +# Contributor: Ivan Tham <pickfire@riseup.net> +# Maintainer: Max Rees <maxcrees@me.com> +pkgname=tlp +_pkgname=TLP +pkgver=1.1 +pkgrel=0 +pkgdesc="Linux Advanced Power Management" +url="http://linrunner.de/en/tlp/tlp.html" +arch="noarch" +options="!check" # No test suite. +license="GPL-2.0+ AND GPL-3.0+" +depends="/bin/sh perl" +makedepends="" +subpackages="$pkgname-doc $pkgname-rdw $pkgname-bash-completion:bashcomp + $pkgname-openrc" +source="$pkgname-$pkgver.tar.gz::https://github.com/linrunner/$_pkgname/archive/$pkgver.tar.gz + $pkgname.initd" +builddir="$srcdir/$_pkgname-$pkgver" + +build() { + cd "$builddir" + make +} + +package() { + cd "$builddir" + + make DESTDIR="$pkgdir" install-tlp install-man + install -Dm755 "$srcdir"/tlp.initd "$pkgdir"/etc/init.d/"$pkgname" + # We don't ship systemd + find "$pkgdir"/usr/share/man/man8 -name '*.service*' -delete +} + +rdw() { + pkgdesc="Linux Advanced Power Management - Radio Device Wizard" + depends="tlp" + + cd "$builddir" + make DESTDIR="$subpkgdir" install-rdw +} + +bashcomp() { + pkgdesc="Bash completions for $pkgname" + depends="" + install_if="$pkgname=$pkgver-r$pkgrel bash-completion" + + mkdir -p "$subpkgdir"/usr/share + mv "$pkgdir"/usr/share/bash-completion "$subpkgdir"/usr/share +} + +sha512sums="3400f2b6c249fd2e1bbbc61f23e3450ff90fabb8dd74f2903ce1f0d07e7ce3d1e61b07295736138d4697235dbee9157d3f32a8d296a649c93f73e03e3555af1e tlp-1.1.tar.gz +e6de216b2540413812711b3304cdc29c8729d527080cfd747ba382db50166dd21c6c27ff467f9f2a967e92007c7a311b00e88262952c34a22f417578c66cf4e7 tlp.initd" diff --git a/user/tlp/tlp.initd b/user/tlp/tlp.initd new file mode 100755 index 000000000..05b4c3b97 --- /dev/null +++ b/user/tlp/tlp.initd @@ -0,0 +1,15 @@ +#!/sbin/openrc-run + +description="Initialize tlp" +extra_started_commands="force_reload" + +depend() { + need localmount +} + +status() { tlp-stat -s; } +# TODO: keep the following in one line +start() { tlp init start; } +stop() { tlp init stop; } +restart() { tlp init restart; } +force_reload() { tlp init force-reload; } diff --git a/user/tumbler/APKBUILD b/user/tumbler/APKBUILD new file mode 100644 index 000000000..e1cf61892 --- /dev/null +++ b/user/tumbler/APKBUILD @@ -0,0 +1,40 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=tumbler +pkgver=0.2.3 +pkgrel=0 +pkgdesc="Thumbnail generation service for the XFCE desktop environment" +url="https://xfce.org" +arch="all" +license="GPL-2.0+ LGPL-2.0+" +depends="dbus" +makedepends="intltool dbus-glib-dev gdk-pixbuf-dev curl-dev freetype-dev + libjpeg-turbo-dev libgsf-dev poppler-dev ffmpegthumbnailer-dev + libopenraw-dev" +subpackages="$pkgname-dev $pkgname-doc $pkgname-lang" +langdir="/usr/lib/locale" +source="http://archive.xfce.org/src/xfce/tumbler/0.2/tumbler-$pkgver.tar.bz2" + +build() { + cd "$builddir" + ./configure \ + --build=$CBUILD \ + --host=$CHOST \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --localstatedir=/var + make +} + +check() { + cd "$builddir" + make check +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install +} + +sha512sums="aefe284c3baa1d8eaf79c9bdb3cfc044ee6a1f36be34efd67541e6310aa275b5235b29f68483b7b7b5a8df699a8b3db8dc75569ec2b90253756fd6285a2e3816 tumbler-0.2.3.tar.bz2" diff --git a/user/udisks2/APKBUILD b/user/udisks2/APKBUILD index 8c5337b9c..66af86bad 100644 --- a/user/udisks2/APKBUILD +++ b/user/udisks2/APKBUILD @@ -1,7 +1,7 @@ # Contributor: Natanael Copa <ncopa@alpinelinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=udisks2 -pkgver=2.8.0 +pkgver=2.8.1 pkgrel=0 pkgdesc="A Disk Manager" url="https://www.freedesktop.org/wiki/Software/udisks" @@ -50,5 +50,5 @@ libs() { "$subpkgdir"/usr/lib/ } -sha512sums="3814c4c02fbadc58d9e3a6615f015d385648211f12075ce46eb0016605f102fa0c8eeca152f2e03491522b484c43039901bf8f1be2f469ac35b1b6259e7e0ceb udisks-2.8.0.tar.bz2 +sha512sums="a3c7d26cd1bbd9cce59b25d118076c34482a698d7dca9e0468b6f9c928f40c8dbdd0b1cb61cf288ae77151643dc4a3eacf31e22af2c7b35a2828e49ee335e70b udisks-2.8.1.tar.bz2 269ba55cc755e2a484670258bc530790691b66c9fce9479a2a17d78cff5d52dd1be89290979efd44a0ba82be665f52a356a57f2cbb67951d91fe09d4e24c2a6a O_CLOEXEC.patch" diff --git a/user/umbrello/APKBUILD b/user/umbrello/APKBUILD index 4207012ae..432d310d4 100644 --- a/user/umbrello/APKBUILD +++ b/user/umbrello/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=umbrello -pkgver=18.08.1 +pkgver=18.08.2 pkgrel=0 pkgdesc="Software modelling tool and code generator" url="https://umbrello.kde.org/" @@ -42,4 +42,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="614ad45d95bc7f07eec668b5f2a54e6748be31b4bb0fe60fd86fe35df3df73a7ce6e12b867118674dd6961ed167249824344e2fb2155e8a58b1e07074dec8679 umbrello-18.08.1.tar.xz" +sha512sums="55941afe05b72085aefac3604ac9a9023f46149e5aad0784fa14942907c21009fb20919750a969abb8c398bcb2f99f3e23e3b91eed06f0cb5a8897563aaa52b8 umbrello-18.08.2.tar.xz" diff --git a/user/unifont/APKBUILD b/user/unifont/APKBUILD index a3da61bf0..b4d8ff484 100644 --- a/user/unifont/APKBUILD +++ b/user/unifont/APKBUILD @@ -1,7 +1,7 @@ # Contributor: Breno Leitao <breno.leitao@gmail.com> # Maintainer: pkgname=unifont -pkgver=11.0.01 +pkgver=11.0.02 pkgrel=0 pkgdesc="GNU font package with all Unicode 11 characters" url="http://unifoundry.com/unifont.html" @@ -24,4 +24,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="b6668dfc0eb95a0ca313bd8a3e330c06b928d536d1c00f837398ab210beb0a8f251e85cdca8787116eb92e7990c2157c81b7353be2112396a468ea252a93de1d unifont-11.0.01.tar.gz" +sha512sums="d0dc8ce079feb282f53c444df5819751a7c97788feed480dc5c5b8a239c8cc13ef258876ffe2830994e404c0a6f524481a405b273c7341703ceef5854c12a68d unifont-11.0.02.tar.gz" diff --git a/user/unixodbc/APKBUILD b/user/unixodbc/APKBUILD index c29986afc..e631d0f45 100644 --- a/user/unixodbc/APKBUILD +++ b/user/unixodbc/APKBUILD @@ -1,7 +1,7 @@ # Contributor: Carlo Landmeter <clandmeter@gmail.com> # Maintainer: pkgname=unixodbc -pkgver=2.3.6 +pkgver=2.3.7 pkgrel=0 pkgdesc="Library for accessing ODBC data sources" url="http://www.unixodbc.org/" @@ -32,4 +32,4 @@ package() { make -j1 DESTDIR="$pkgdir" install } -sha512sums="6518a4169946e847dd710d54724a44d268b98954d30064eadadb703edbbeafac05bd1f42a6845c2fdcdab7ae8987800acd1a5f6b4b96de5f3c8c3e4bc370fe30 unixODBC-2.3.6.tar.gz" +sha512sums="a87afeaaa0476f4ae6345c7021b3af52718944e599abb595c864d9126744a21341889802512a1de3ebaf86ac89e7f8b1bbd7f8f5285e8f4bccf928bd1585ff70 unixODBC-2.3.7.tar.gz" diff --git a/user/unrar/APKBUILD b/user/unrar/APKBUILD index 187000474..f50447699 100644 --- a/user/unrar/APKBUILD +++ b/user/unrar/APKBUILD @@ -2,7 +2,7 @@ # Contributor: Carlo Landmeter <clandmeter@gmail.com> # Maintainer: Dan Theisen <djt@hxx.in> pkgname=unrar -pkgver=5.6.4 +pkgver=5.6.8 pkgrel=0 pkgdesc="The RAR uncompression program" url="https://www.rarlab.com" @@ -29,5 +29,5 @@ package() { "$pkgdir/usr/share/licenses/$pkgname/license.txt" } -sha512sums="0ff55a82f8593c59c9773ffa7dec00386b762c504a08497bc1a50de5502c52e1c1d1043cb8ba353291aa61a3ebc9f5f0a21d313d89639f400e5fc45f01d62cca unrarsrc-5.6.4.tar.gz +sha512sums="5410308d7f462824bc10087cdc4515c58aaad776cc09eb6491864a338ae00ff35e3b54d1e7250c0a9576554ea382383155be718a0b95d7af00f27d5df04f4f56 unrarsrc-5.6.8.tar.gz 7da30d8454a67999e7052ed2c0ee8d29627b1d47bfdf36e8cf1e24f3c36ee58b17f7e7a6505a4b38e0ca3162067368a1bf554829fd824f7c17a3a2a5b35ca29c makefile.patch" diff --git a/user/upower/APKBUILD b/user/upower/APKBUILD index b31a4a8e4..2458cd906 100644 --- a/user/upower/APKBUILD +++ b/user/upower/APKBUILD @@ -1,7 +1,7 @@ # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=upower -pkgver=0.99.7 -pkgrel=1 +pkgver=0.99.8 +pkgrel=0 pkgdesc="Power Management Services" url="https://upower.freedesktop.org" arch="all" @@ -11,7 +11,7 @@ depends="" subpackages="$pkgname-dev $pkgname-doc $pkgname-lang" makedepends="dbus-glib-dev docbook-xsl gobject-introspection-dev gtk+-dev intltool libgudev-dev libusb-dev libxslt linux-headers polkit-dev" -source="https://upower.freedesktop.org/releases/upower-$pkgver.tar.xz" +source="https://gitlab.freedesktop.org/upower/upower/uploads/9125ab7ee96fdc4ecc68cfefb50c1cab/upower-$pkgver.tar.xz" build() { cd "$builddir" @@ -37,4 +37,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="a1ad200e715284eae815580bba3faad480f7f13401f6ff1a2e7446172796a2413990ce2b553de713ddc530849b2dff1f0ddc12fbd2fd9b55510bbb644d2340a4 upower-0.99.7.tar.xz" +sha512sums="dfd2960cae382195dfc7a703a02af298d9de55bc626cde2a1f97e7983842191ba9d99eb2044190214e792539e7d6c9d8e00b5aed17e5e86b04544e9ab90278b1 upower-0.99.8.tar.xz" diff --git a/user/usbredir/APKBUILD b/user/usbredir/APKBUILD index a53f4ef04..ef23e2697 100644 --- a/user/usbredir/APKBUILD +++ b/user/usbredir/APKBUILD @@ -1,7 +1,7 @@ # Maintainer: pkgname=usbredir -pkgver=0.7.1 -pkgrel=1 +pkgver=0.8.0 +pkgrel=0 pkgdesc="Protocol for using USB devices over a network" url="https://www.spice-space.org/usbredir.html" arch="all" @@ -41,4 +41,4 @@ server() { mv "$pkgdir"/usr/sbin "$subpkgdir"/usr/ } -sha512sums="f8d26d59d5a530aa413fabe2402fbbd9662760453c2b4e83d34f2e5287c188114ea870f15ae1bc910297649986315be965f0d23d0a2b7b0cec2f207fc65d7598 usbredir-0.7.1.tar.bz2" +sha512sums="976274adf08f8691b0961f5238021e988a4347873d0c67576038f44cbdaf25c2bb325d8cede0a507933b719f9715b1508ccd1d8f52fccd36f13a7640553dc108 usbredir-0.8.0.tar.bz2" diff --git a/user/vala/APKBUILD b/user/vala/APKBUILD new file mode 100644 index 000000000..8ffc5a7df --- /dev/null +++ b/user/vala/APKBUILD @@ -0,0 +1,36 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=vala +pkgver=0.42.2 +pkgrel=0 +pkgdesc="Compiler for the Vala programming language" +url="https://wiki.gnome.org/Projects/Vala" +arch="all" +license="LGPL-2.1+" +makedepends="glib-dev flex bison graphviz-dev" +subpackages="$pkgname-dev $pkgname-doc" +source="https://download.gnome.org/sources/vala/0.42/vala-$pkgver.tar.xz" + +build() { + cd "$builddir" + ./configure \ + --build=$CBUILD \ + --host=$CHOST \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --localstatedir=/var + make +} + +check() { + cd "$builddir" + make tests +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install +} + +sha512sums="36dfe2b3508e77fa8bac4b6c43e83841310e9e0d3986e4e0696255adc3c500f56d5f997c19999425e47a00fd760188c9c1f0565c0122a1c74632ad47ac1d08ff vala-0.42.2.tar.xz" diff --git a/user/valgrind/0001-Ensure-ELFv2-is-supported-on-PPC64.patch b/user/valgrind/0001-Ensure-ELFv2-is-supported-on-PPC64.patch new file mode 100644 index 000000000..5272406ec --- /dev/null +++ b/user/valgrind/0001-Ensure-ELFv2-is-supported-on-PPC64.patch @@ -0,0 +1,817 @@ +From a5224eb31a4c8a680587e74cc402e5ed92ead216 Mon Sep 17 00:00:00 2001 +From: "A. Wilcox" <AWilcox@Wilcox-Tech.com> +Date: Thu, 27 Sep 2018 15:42:40 -0500 +Subject: [PATCH] Ensure ELFv2 is supported on PPC64 + +--- + coregrind/m_dispatch/dispatch-ppc64be-linux.S | 107 ++++++++++++++++-- + coregrind/m_initimg/initimg-linux.c | 5 +- + coregrind/m_libcsetjmp.c | 7 +- + coregrind/m_machine.c | 3 +- + coregrind/m_main.c | 19 ++-- + coregrind/m_sigframe/sigframe-ppc64-linux.c | 3 +- + coregrind/m_signals.c | 11 +- + coregrind/m_stacktrace.c | 12 +- + coregrind/m_syscall.c | 9 +- + coregrind/m_syswrap/syscall-ppc64be-linux.S | 19 +++- + coregrind/m_syswrap/syswrap-ppc64-linux.c | 9 +- + coregrind/m_trampoline.S | 4 +- + coregrind/m_translate.c | 23 ++-- + coregrind/m_ume/elf.c | 8 +- + coregrind/pub_core_machine.h | 12 +- + coregrind/vg_preloaded.c | 3 +- + include/valgrind.h | 16 ++- + memcheck/mc_leakcheck.c | 2 +- + memcheck/mc_machine.c | 3 +- + 19 files changed, 206 insertions(+), 69 deletions(-) + +diff --git a/coregrind/m_dispatch/dispatch-ppc64be-linux.S b/coregrind/m_dispatch/dispatch-ppc64be-linux.S +index 91bd3b236..eb8026c7c 100644 +--- a/coregrind/m_dispatch/dispatch-ppc64be-linux.S ++++ b/coregrind/m_dispatch/dispatch-ppc64be-linux.S +@@ -75,14 +75,26 @@ void VG_(disp_run_translations)( UWord* two_words, + .section ".text" + .align 2 + .globl VG_(disp_run_translations) ++#if _CALL_ELF == 2 ++.type VG_(disp_run_translations),@function ++VG_(disp_run_translations): ++.type .VG_(disp_run_translations),@function ++#else + .section ".opd","aw" + .align 3 + VG_(disp_run_translations): + .quad .VG_(disp_run_translations),.TOC.@tocbase,0 + .previous + .type .VG_(disp_run_translations),@function ++#endif + .globl .VG_(disp_run_translations) + .VG_(disp_run_translations): ++#if _CALL_ELF == 2 ++0: addis 2, 12,.TOC.-0b@ha ++ addi 2,2,.TOC.-0b@l ++ .localentry VG_(disp_run_translations), .-VG_(disp_run_translations) ++#endif ++ + /* r3 holds two_words */ + /* r4 holds guest_state */ + /* r5 holds host_addr */ +@@ -231,6 +243,11 @@ VG_(disp_run_translations): + + /* Set up the guest state ptr */ + mr 31,4 /* r31 (generated code gsp) = r4 */ ++#if _CALL_ELF == 2 ++/* for the LE ABI need to setup r2 and r12 */ ++0: addis 2, 12,.TOC.-0b@ha ++ addi 2,2,.TOC.-0b@l ++#endif + + /* and jump into the code cache. Chained translations in + the code cache run, until for whatever reason, they can't +@@ -385,7 +402,9 @@ VG_(disp_run_translations): + mtlr 0 + addi 1,1,624 /* stack_size */ + blr +- ++#if _CALL_ELF == 2 ++ .size VG_(disp_run_translations),.-VG_(disp_run_translations) ++#endif + + /*----------------------------------------------------*/ + /*--- Continuation points ---*/ +@@ -395,15 +414,25 @@ VG_(disp_run_translations): + .section ".text" + .align 2 + .globl VG_(disp_cp_chain_me_to_slowEP) +- .section ".opd","aw" ++#if _CALL_ELF == 2 ++ .type VG_(disp_cp_chain_me_to_slowEP),@function ++ VG_(disp_cp_chain_me_to_slowEP): ++#else ++ .section ".opd","aw" + .align 3 + VG_(disp_cp_chain_me_to_slowEP): + .quad .VG_(disp_cp_chain_me_to_slowEP),.TOC.@tocbase,0 + .previous ++#endif + .type .VG_(disp_cp_chain_me_to_slowEP),@function + .globl .VG_(disp_cp_chain_me_to_slowEP) + .VG_(disp_cp_chain_me_to_slowEP): +- /* We got called. The return address indicates ++#if _CALL_ELF == 2 ++0: addis 2, 12,.TOC.-0b@ha ++ addi 2,2,.TOC.-0b@l ++ .localentry VG_(disp_cp_chain_me_to_slowEP), .-VG_(disp_cp_chain_me_to_slowEP) ++#endif ++ /* We got called. The return address indicates + where the patching needs to happen. Collect + the return address and, exit back to C land, + handing the caller the pair (Chain_me_S, RA) */ +@@ -415,20 +444,33 @@ VG_(disp_cp_chain_me_to_slowEP): + */ + subi 7,7,20+4+4 + b .postamble ++#if _CALL_ELF == 2 ++ .size VG_(disp_cp_chain_me_to_slowEP),.-VG_(disp_cp_chain_me_to_slowEP) ++#endif + + /* ------ Chain me to fast entry point ------ */ + .section ".text" + .align 2 + .globl VG_(disp_cp_chain_me_to_fastEP) +- .section ".opd","aw" ++#if _CALL_ELF == 2 ++ .type VG_(disp_cp_chain_me_to_fastEP),@function ++VG_(disp_cp_chain_me_to_fastEP): ++#else ++ .section ".opd","aw" + .align 3 + VG_(disp_cp_chain_me_to_fastEP): + .quad .VG_(disp_cp_chain_me_to_fastEP),.TOC.@tocbase,0 + .previous ++#endif + .type .VG_(disp_cp_chain_me_to_fastEP),@function + .globl .VG_(disp_cp_chain_me_to_fastEP) + .VG_(disp_cp_chain_me_to_fastEP): +- /* We got called. The return address indicates ++#if _CALL_ELF == 2 ++0: addis 2, 12,.TOC.-0b@ha ++ addi 2,2,.TOC.-0b@l ++ .localentry VG_(disp_cp_chain_me_to_fastEP), .-VG_(disp_cp_chain_me_to_fastEP) ++#endif ++ /* We got called. The return address indicates + where the patching needs to happen. Collect + the return address and, exit back to C land, + handing the caller the pair (Chain_me_S, RA) */ +@@ -440,20 +482,33 @@ VG_(disp_cp_chain_me_to_fastEP): + */ + subi 7,7,20+4+4 + b .postamble ++#if _CALL_ELF == 2 ++ .size VG_(disp_cp_chain_me_to_fastEP),.-VG_(disp_cp_chain_me_to_fastEP) ++#endif + + /* ------ Indirect but boring jump ------ */ + .section ".text" + .align 2 + .globl VG_(disp_cp_xindir) +- .section ".opd","aw" ++#if _CALL_ELF == 2 ++ .type VG_(disp_cp_xindir),@function ++VG_(disp_cp_xindir): ++#else ++ .section ".opd","aw" + .align 3 + VG_(disp_cp_xindir): + .quad .VG_(disp_cp_xindir),.TOC.@tocbase,0 + .previous ++#endif + .type .VG_(disp_cp_xindir),@function + .globl .VG_(disp_cp_xindir) + .VG_(disp_cp_xindir): +- /* Where are we going? */ ++#if _CALL_ELF == 2 ++0: addis 2, 12,.TOC.-0b@ha ++ addi 2,2,.TOC.-0b@l ++ .localentry VG_(disp_cp_xindir), .-VG_(disp_cp_xindir) ++#endif ++ /* Where are we going? */ + ld 3,OFFSET_ppc64_CIA(31) + + /* stats only */ +@@ -479,6 +534,9 @@ VG_(disp_cp_xindir): + /* Found a match. Jump to .host. */ + mtctr 7 + bctr ++#if _CALL_ELF == 2 ++ .size VG_(disp_cp_xindir),.-VG_(disp_cp_xindir) ++#endif + + .fast_lookup_failed: + /* stats only */ +@@ -496,39 +554,64 @@ VG_(disp_cp_xindir): + .section ".text" + .align 2 + .globl VG_(disp_cp_xassisted) +- .section ".opd","aw" ++#if _CALL_ELF == 2 ++ .type VG_(disp_cp_xassisted),@function ++VG_(disp_cp_xassisted): ++#else ++ .section ".opd","aw" + .align 3 + VG_(disp_cp_xassisted): + .quad .VG_(disp_cp_xassisted),.TOC.@tocbase,0 + .previous +- .type .VG_(disp_cp_xassisted),@function ++#endif ++#if _CALL_ELF == 2 ++0: addis 2, 12,.TOC.-0b@ha ++ addi 2,2,.TOC.-0b@l ++ .localentry VG_(disp_cp_xassisted), .-VG_(disp_cp_xassisted) ++#endif ++ .type .VG_(disp_cp_xassisted),@function + .globl .VG_(disp_cp_xassisted) + .VG_(disp_cp_xassisted): + /* r31 contains the TRC */ + mr 6,31 + li 7,0 + b .postamble ++#if _CALL_ELF == 2 ++ .size VG_(disp_cp_xassisted),.-VG_(disp_cp_xassisted) ++#endif + + /* ------ Event check failed ------ */ + .section ".text" + .align 2 + .globl VG_(disp_cp_evcheck_fail) +- .section ".opd","aw" ++#if _CALL_ELF == 2 ++ .type VG_(disp_cp_evcheck_fail),@function ++VG_(disp_cp_evcheck_fail): ++#else ++ .section ".opd","aw" + .align 3 + VG_(disp_cp_evcheck_fail): + .quad .VG_(disp_cp_evcheck_fail),.TOC.@tocbase,0 + .previous ++#endif ++#if _CALL_ELF == 2 ++0: addis 2, 12,.TOC.-0b@ha ++ addi 2,2,.TOC.-0b@l ++ .localentry VG_(disp_cp_evcheck_fail), .-VG_(disp_cp_evcheck_fail) ++#endif + .type .VG_(disp_cp_evcheck_fail),@function + .globl .VG_(disp_cp_evcheck_fail) + .VG_(disp_cp_evcheck_fail): + li 6,VG_TRC_INNER_COUNTERZERO + li 7,0 + b .postamble ++#if _CALL_ELF == 2 ++ .size VG_(disp_cp_evcheck_fail),.-VG_(disp_cp_evcheck_fail) ++#endif + +- + .size .VG_(disp_run_translations), .-.VG_(disp_run_translations) + +-#endif // defined(VGP_ppc64be_linux) ++#endif // defined(VGP_ppc64be_linux) || defined(VGP_ppc64le_linux) + + /* Let the linker know we don't need an executable stack */ + MARK_STACK_NO_EXEC +diff --git a/coregrind/m_initimg/initimg-linux.c b/coregrind/m_initimg/initimg-linux.c +index 61cc458bc..19df79705 100644 +--- a/coregrind/m_initimg/initimg-linux.c ++++ b/coregrind/m_initimg/initimg-linux.c +@@ -1117,7 +1117,8 @@ void VG_(ii_finalise_image)( IIFinaliseImageInfo iifii ) + arch->vex.guest_GPR1 = iifii.initial_client_SP; + arch->vex.guest_GPR2 = iifii.initial_client_TOC; + arch->vex.guest_CIA = iifii.initial_client_IP; +-#if defined(VGP_ppc64le_linux) ++#if (defined(VGP_ppc64be_linux) || defined(VGP_ppc64le_linux)) \ ++ && !defined(VG_PLAT_USES_PPCTOC) + arch->vex.guest_GPR12 = iifii.initial_client_IP; + #endif + +diff --git a/coregrind/m_libcsetjmp.c b/coregrind/m_libcsetjmp.c +index c73180640..ed96f4739 100644 +--- a/coregrind/m_libcsetjmp.c ++++ b/coregrind/m_libcsetjmp.c +@@ -35,6 +35,7 @@ + + #include "pub_core_basics.h" + #include "pub_core_libcsetjmp.h" /* self */ ++#include "pub_core_machine.h" /* VG_PLAT_USES_PPCTOC */ + + /* See include/pub_tool_libcsetjmp.h for background and rationale. */ + +@@ -151,7 +152,8 @@ __asm__( + + /* ------------ ppc64-linux ------------ */ + +-#if defined(VGP_ppc64be_linux) ++#if (defined(VGP_ppc64be_linux) || defined(VGP_ppc64le_linux)) \ ++ && defined(VG_PLAT_USES_PPCTOC) + + __asm__( + ".section \".toc\",\"aw\"" "\n" +@@ -270,7 +272,8 @@ __asm__( + ".previous" "\n" + ); + +-#elif defined(VGP_ppc64le_linux) ++#elif (defined(VGP_ppc64be_linux) || defined(VGP_ppc64le_linux)) \ ++ && !defined(VG_PLAT_USES_PPCTOC) + __asm__( + ".section \".toc\",\"aw\"" "\n" + +diff --git a/coregrind/m_machine.c b/coregrind/m_machine.c +index 31b0e1b6b..eb3e6a4e1 100644 +--- a/coregrind/m_machine.c ++++ b/coregrind/m_machine.c +@@ -2035,7 +2035,8 @@ void* VG_(fnptr_to_fnentry)( void* f ) + || defined(VGP_ppc32_linux) || defined(VGP_ppc64le_linux) \ + || defined(VGP_s390x_linux) || defined(VGP_mips32_linux) \ + || defined(VGP_mips64_linux) || defined(VGP_arm64_linux) \ +- || defined(VGP_x86_solaris) || defined(VGP_amd64_solaris) ++ || defined(VGP_x86_solaris) || defined(VGP_amd64_solaris) \ ++ || (defined(VGP_ppc64be_linux) && !defined(VG_PLAT_USES_PPCTOC)) + return f; + # elif defined(VGP_ppc64be_linux) + /* ppc64-linux uses the AIX scheme, in which f is a pointer to a +diff --git a/coregrind/m_main.c b/coregrind/m_main.c +index bf4a71284..102235dca 100644 +--- a/coregrind/m_main.c ++++ b/coregrind/m_main.c +@@ -2274,7 +2274,7 @@ static void final_tidyup(ThreadId tid) + return; /* won't do it */ + } + +-# if defined(VGP_ppc64be_linux) ++# if defined(VGP_ppc64be_linux) && defined(VG_PLAT_USES_PPCTOC) + Addr r2 = VG_(get_tocptr)(freeres_wrapper); + if (r2 == 0) { + VG_(message)(Vg_UserMsg, +@@ -2306,9 +2306,11 @@ static void final_tidyup(ThreadId tid) + directly. However, we need to set R2 (the toc pointer) + appropriately. */ + VG_(set_IP)(tid, freeres_wrapper); +-# if defined(VGP_ppc64be_linux) ++# if (defined(VGP_ppc64be_linux) || defined(VGP_ppc64le_linux)) \ ++ && defined(VG_PLAT_USES_PPCTOC) + VG_(threads)[tid].arch.vex.guest_GPR2 = r2; +-# elif defined(VGP_ppc64le_linux) ++# elif (defined(VGP_ppc64be_linux) || defined(VGP_ppc64le_linux)) \ ++ && !defined(VG_PLAT_USES_PPCTOC) + /* setting GPR2 but not really needed, GPR12 is needed */ + VG_(threads)[tid].arch.vex.guest_GPR2 = freeres_wrapper; + VG_(threads)[tid].arch.vex.guest_GPR12 = freeres_wrapper; +@@ -2610,9 +2612,10 @@ asm("\n" + "\ttrap\n" + ".previous\n" + ); +-#elif defined(VGP_ppc64be_linux) ++#elif (defined(VGP_ppc64be_linux) || defined(VGP_ppc64le_linux)) \ ++ && defined(VG_PLAT_USES_PPCTOC) + asm("\n" +- /* PPC64 ELF ABI says '_start' points to a function descriptor. ++ /* PPC64 ELFv1 ABI says '_start' points to a function descriptor. + So we must have one, and that is what goes into the .opd section. */ + "\t.align 2\n" + "\t.global _start\n" +@@ -2656,9 +2659,9 @@ asm("\n" + "\tnop\n" + "\ttrap\n" + ); +-#elif defined(VGP_ppc64le_linux) +-/* Little Endian uses ELF version 2 but in the future may also +- * support other ELF versions. ++#elif (defined(VGP_ppc64be_linux) || defined(VGP_ppc64le_linux)) \ ++ && !defined(VG_PLAT_USES_PPCTOC) ++/* ELF version 2 does not use function descriptors. + */ + asm("\n" + "\t.align 2\n" +diff --git a/coregrind/m_sigframe/sigframe-ppc64-linux.c b/coregrind/m_sigframe/sigframe-ppc64-linux.c +index b16606c22..cc657838f 100644 +--- a/coregrind/m_sigframe/sigframe-ppc64-linux.c ++++ b/coregrind/m_sigframe/sigframe-ppc64-linux.c +@@ -263,7 +263,8 @@ void VG_(sigframe_create)( ThreadId tid, + + /* Handler is in fact a standard ppc64-linux function descriptor, + so extract the function entry point and also the toc ptr to use. */ +-#if defined(VGP_ppc64be_linux) ++#if (defined(VGP_ppc64be_linux) || defined(VGP_ppc64le_linux)) \ ++ && defined(VG_PLAT_USES_PPCTOC) + SET_SIGNAL_GPR(tid, 2, (Addr) ((ULong*)handler)[1]); + tst->arch.vex.guest_CIA = (Addr) ((ULong*)handler)[0]; + #else +diff --git a/coregrind/m_signals.c b/coregrind/m_signals.c +index e572f17cc..52d939057 100644 +--- a/coregrind/m_signals.c ++++ b/coregrind/m_signals.c +@@ -889,7 +889,9 @@ extern void my_sigreturn(void); + " sc\n" \ + ".previous\n" + +-#elif defined(VGP_ppc64be_linux) ++#elif (defined(VGP_ppc64be_linux) || defined(VGP_ppc64le_linux)) \ ++ && defined(VG_PLAT_USES_PPCTOC) ++/* ELF version 1. Used in some legacy environments on LE, and most BE. */ + # define _MY_SIGRETURN(name) \ + ".align 2\n" \ + ".globl my_sigreturn\n" \ +@@ -904,9 +906,10 @@ extern void my_sigreturn(void); + " li 0, " #name "\n" \ + " sc\n" + +-#elif defined(VGP_ppc64le_linux) +-/* Little Endian supports ELF version 2. In the future, it may +- * support other versions. ++#elif (defined(VGP_ppc64be_linux) || defined(VGP_ppc64le_linux)) \ ++ && !defined(VG_PLAT_USES_PPCTOC) ++/* ELF version 2. In the future, PPC64 may support other versions. Used by ++ * most LE environments and any BE environment running musl libc. + */ + # define _MY_SIGRETURN(name) \ + ".align 2\n" \ +diff --git a/coregrind/m_stacktrace.c b/coregrind/m_stacktrace.c +index 24f1409dd..9be4c6da9 100644 +--- a/coregrind/m_stacktrace.c ++++ b/coregrind/m_stacktrace.c +@@ -726,7 +726,8 @@ UInt VG_(get_StackTrace_wrk) ( ThreadId tid_if_known, + Addr fp_max_orig ) + { + Bool lr_is_first_RA = False; +-# if defined(VG_PLAT_USES_PPCTOC) || defined(VGP_ppc64le_linux) ++# if defined(VG_PLAT_USES_PPCTOC) || defined(VGP_ppc64be_linux) \ ++ || defined(VGP_ppc64le_linux) + Word redir_stack_size = 0; + Word redirs_used = 0; + # endif +@@ -787,7 +788,8 @@ UInt VG_(get_StackTrace_wrk) ( ThreadId tid_if_known, + redirs_used = 0; + # endif + +-# if defined(VG_PLAT_USES_PPCTOC) || defined (VGP_ppc64le_linux) ++# if defined(VG_PLAT_USES_PPCTOC) || defined(VGP_ppc64be_linux) \ ++ || defined(VGP_ppc64le_linux) + /* Deal with bogus LR values caused by function + interception/wrapping on ppc-TOC platforms; see comment on + similar code a few lines further down. */ +@@ -839,7 +841,8 @@ UInt VG_(get_StackTrace_wrk) ( ThreadId tid_if_known, + /* On ppc64-linux (ppc64-elf, really), the lr save + slot is 2 words back from sp, whereas on ppc32-elf(?) it's + only one word back. */ +-# if defined(VG_PLAT_USES_PPCTOC) || defined(VGP_ppc64le_linux) ++# if defined(VG_PLAT_USES_PPCTOC) || defined(VGP_ppc64be_linux) \ ++ || defined(VGP_ppc64le_linux) + const Int lr_offset = 2; + # else + const Int lr_offset = 1; +@@ -858,7 +861,8 @@ UInt VG_(get_StackTrace_wrk) ( ThreadId tid_if_known, + else + ip = (((UWord*)fp)[lr_offset]); + +-# if defined(VG_PLAT_USES_PPCTOC) || defined(VGP_ppc64le_linux) ++# if defined(VG_PLAT_USES_PPCTOC) || defined(VGP_ppc64be_linux) \ ++ || defined(VGP_ppc64le_linux) + /* Nasty hack to do with function replacement/wrapping on + ppc64-linux. If LR points to our magic return stub, + then we are in a wrapped or intercepted function, in +diff --git a/coregrind/m_syscall.c b/coregrind/m_syscall.c +index 5948cecf5..c1cdfab27 100644 +--- a/coregrind/m_syscall.c ++++ b/coregrind/m_syscall.c +@@ -470,7 +470,8 @@ asm( + ".previous\n" + ); + +-#elif defined(VGP_ppc64be_linux) ++#elif (defined(VGP_ppc64be_linux) || defined(VGP_ppc64le_linux)) \ ++ && defined(VG_PLAT_USES_PPCTOC) + /* Due to the need to return 65 bits of result, this is completely + different from the ppc32 case. The single arg register points to a + 7-word block containing the syscall # and the 6 args. The syscall +@@ -506,15 +507,15 @@ asm( + " blr\n" + ); + +-#elif defined(VGP_ppc64le_linux) ++#elif (defined(VGP_ppc64be_linux) || defined(VGP_ppc64le_linux)) \ ++ && !defined(VG_PLAT_USES_PPCTOC) + /* Due to the need to return 65 bits of result, this is completely + different from the ppc32 case. The single arg register points to a + 7-word block containing the syscall # and the 6 args. The syscall + result proper is put in [0] of the block, and %cr0.so is in the + bottom bit of [1]. */ + extern void do_syscall_WRK ( ULong* argblock ); +-/* Little Endian supports ELF version 2. In the future, it may support +- * other versions as well. ++/* ELF version 2. In the future, PPC64 may support other versions as well. + */ + asm( + ".align 2\n" +diff --git a/coregrind/m_syswrap/syscall-ppc64be-linux.S b/coregrind/m_syswrap/syscall-ppc64be-linux.S +index 16e9cedc0..db0d8b4aa 100644 +--- a/coregrind/m_syswrap/syscall-ppc64be-linux.S ++++ b/coregrind/m_syswrap/syscall-ppc64be-linux.S +@@ -76,11 +76,24 @@ + + .align 2 + .globl ML_(do_syscall_for_client_WRK) ++#if _CALL_ELF == 2 ++.type .ML_(do_syscall_for_client_WRK),@function ++ML_(do_syscall_for_client_WRK): ++0: addis 2,12,.TOC.-0b@ha ++ addi 2,2,.TOC.-0b@l ++ .localentry ML_(do_syscall_for_client_WRK), .-ML_(do_syscall_for_client_WRK) ++#else + .section ".opd","aw" + .align 3 +-ML_(do_syscall_for_client_WRK): ++ML_(do_syscall_for_client_WRK): + .quad .ML_(do_syscall_for_client_WRK),.TOC.@tocbase,0 + .previous ++#endif ++#if _CALL_ELF == 2 ++0: addis 2,12,.TOC.-0b@ha ++ addi 2,2,.TOC.-0b@l ++ .localentry ML_(do_syscall_for_client_WRK), .-ML_(do_syscall_for_client_WRK) ++#endif + .type .ML_(do_syscall_for_client_WRK),@function + .globl .ML_(do_syscall_for_client_WRK) + .ML_(do_syscall_for_client_WRK): +@@ -145,7 +158,9 @@ ML_(do_syscall_for_client_WRK): + /* failure: return 0x8000 | error code */ + 7: ori 3,3,0x8000 /* FAILURE -- ensure return value is nonzero */ + b 5b +- ++#if _CALL_ELF == 2 ++ .size .ML_(do_syscall_for_client_WRK),.-.ML_(do_syscall_for_client_WRK) ++#endif + .section .rodata + /* export the ranges so that + VG_(fixup_guest_state_after_syscall_interrupted) can do the +diff --git a/coregrind/m_syswrap/syswrap-ppc64-linux.c b/coregrind/m_syswrap/syswrap-ppc64-linux.c +index 6549dd1b3..4ecbe38a6 100644 +--- a/coregrind/m_syswrap/syswrap-ppc64-linux.c ++++ b/coregrind/m_syswrap/syswrap-ppc64-linux.c +@@ -41,6 +41,7 @@ + #include "pub_core_libcprint.h" + #include "pub_core_libcproc.h" + #include "pub_core_libcsignal.h" ++#include "pub_core_machine.h" + #include "pub_core_options.h" + #include "pub_core_scheduler.h" + #include "pub_core_sigframe.h" // For VG_(sigframe_destroy)() +@@ -76,7 +77,8 @@ void ML_(call_on_new_stack_0_1) ( Addr stack, + address, the second word is the TOC ptr (r2), and the third word is + the static chain value. */ + asm( +-#if defined(VGP_ppc64be_linux) ++#if (defined(VGP_ppc64be_linux) || defined(VGP_ppc64le_linux)) \ ++ && defined(VG_PLAT_USES_PPCTOC) + " .align 2\n" + " .globl vgModuleLocal_call_on_new_stack_0_1\n" + " .section \".opd\",\"aw\"\n" +@@ -126,7 +128,7 @@ asm( + " bctr\n\t" // jump to dst + " trap\n" // should never get here + #else +-// ppc64le_linux ++// ppc64 ELFv2 Linux + " .align 2\n" + " .globl vgModuleLocal_call_on_new_stack_0_1\n" + "vgModuleLocal_call_on_new_stack_0_1:\n" +@@ -211,7 +213,8 @@ asm( + + // See priv_syswrap-linux.h for arg profile. + asm( +-#if defined(VGP_ppc64be_linux) ++#if (defined(VGP_ppc64be_linux) || defined(VGP_ppc64le_linux)) \ ++ && defined(VG_PLAT_USES_PPCTOC) + " .align 2\n" + " .globl do_syscall_clone_ppc64_linux\n" + " .section \".opd\",\"aw\"\n" +diff --git a/coregrind/m_trampoline.S b/coregrind/m_trampoline.S +index 0488b54bd..d00916aef 100644 +--- a/coregrind/m_trampoline.S ++++ b/coregrind/m_trampoline.S +@@ -469,11 +469,11 @@ VG_(ppctoc_magic_redirect_return_stub): + .align 2 + .globl VG_(ppc64_linux_REDIR_FOR_strlen) + #if !defined VGP_ppc64be_linux || _CALL_ELF == 2 +- /* Little Endian uses ELF version 2 */ ++ /* ELF version 2 */ + .type VG_(ppc64_linux_REDIR_FOR_strlen),@function + VG_(ppc64_linux_REDIR_FOR_strlen): + #else +- /* Big Endian uses ELF version 1 */ ++ /* ELF version 1 */ + .section ".opd","aw" + .align 3 + VG_(ppc64_linux_REDIR_FOR_strlen): +diff --git a/coregrind/m_translate.c b/coregrind/m_translate.c +index 3602a4663..bdd1d50ee 100644 +--- a/coregrind/m_translate.c ++++ b/coregrind/m_translate.c +@@ -1006,7 +1006,8 @@ static IRExpr* mkU32 ( UInt n ) { + return IRExpr_Const(IRConst_U32(n)); + } + +-#if defined(VG_PLAT_USES_PPCTOC) || defined(VGP_ppc64le_linux) ++#if defined(VG_PLAT_USES_PPCTOC) || defined(VGP_ppc64be_linux) \ ++ || defined(VGP_ppc64le_linux) + static IRExpr* mkU8 ( UChar n ) { + return IRExpr_Const(IRConst_U8(n)); + } +@@ -1234,7 +1234,8 @@ static void gen_push_and_set_LR_R2 ( IRSB* bb, Addr new_R2_value ) + } + #endif + +-#if defined(VG_PLAT_USES_PPCTOC) || defined(VGP_ppc64le_linux) ++#if defined(VG_PLAT_USES_PPCTOC) || defined(VGP_ppc64be_linux) \ ++ || defined(VGP_ppc64le_linux) + + static void gen_pop_R2_LR_then_bLR ( IRSB* bb ) + { +@@ -1263,7 +1264,8 @@ static void gen_pop_R2_LR_then_bLR ( IRSB* bb ) + } + #endif + +-#if defined(VG_PLAT_USES_PPCTOC) || defined(VGP_ppc64le_linux) ++#if defined(VG_PLAT_USES_PPCTOC) || defined(VGP_ppc64be_linux) \ ++ || defined(VGP_ppc64le_linux) + + static + Bool mk_preamble__ppctoc_magic_return_stub ( void* closureV, IRSB* bb ) +@@ -1285,7 +1287,7 @@ Bool mk_preamble__ppctoc_magic_return_stub ( void* closureV, IRSB* bb ) + } + #endif + +-#if defined(VGP_ppc64le_linux) ++#if defined(VGP_ppc64be_linux) || defined(VGP_ppc64le_linux) + /* Generate code to push LR and R2 onto this thread's redir stack. + Need to save R2 in case we redirect to a global entry point. The + value of R2 is not preserved when entering the global entry point. +@@ -1366,9 +1368,7 @@ Bool mk_preamble__set_NRADDR_to_zero ( void* closureV, IRSB* bb ) + gen_push_and_set_LR_R2 ( bb, VG_(get_tocptr)( VG_(current_DiEpoch)(), + closure->readdr ) ); + } +-# endif +- +-#if defined(VGP_ppc64le_linux) ++#elif defined(VGP_ppc64be_linux) || defined(VGP_ppc64le_linux) + VgCallbackClosure* closure = (VgCallbackClosure*)closureV; + Int offB_GPR12 = offsetof(VexGuestArchState, guest_GPR12); + addStmtToIRSB(bb, IRStmt_Put(offB_GPR12, mkU64(closure->readdr))); +@@ -1424,7 +1424,6 @@ Bool mk_preamble__set_NRADDR_to_nraddr ( void* closureV, IRSB* bb ) + ); + gen_push_and_set_LR_R2 ( bb, VG_(get_tocptr)( closure->readdr ) ); +-# endif +-#if defined(VGP_ppc64le_linux) ++#elif defined(VGP_ppc64be_linux) || defined(VGP_ppc64le_linux) + /* This saves the r2 before leaving the function. We need to move + * guest_NRADDR_GPR2 back to R2 on return. + */ +@@ -1648,7 +1647,8 @@ Bool VG_(translate) ( ThreadId tid, + preamble_fn = mk_preamble__set_NRADDR_to_nraddr; + + /* LE we setup the LR */ +-# if defined(VG_PLAT_USES_PPCTOC) || defined(VGP_ppc64le_linux) ++# if defined(VG_PLAT_USES_PPCTOC) || defined(VGP_ppc64be_linux) \ ++ || defined(VGP_ppc64le_linux) + if (nraddr == (Addr)&VG_(ppctoc_magic_redirect_return_stub)) { + /* If entering the special return stub, this means a wrapped or + redirected function is returning. Make this translation one +@@ -1692,13 +1692,14 @@ Bool VG_(translate) ( ThreadId tid, + vex_abiinfo.guest_ppc_zap_RZ_at_bl = NULL; + # endif + +-# if defined(VGP_ppc64be_linux) ++# if defined(VGP_ppc64be_linux) && defined(VG_PLAT_USES_PPCTOC) + vex_abiinfo.guest_ppc_zap_RZ_at_blr = True; + vex_abiinfo.guest_ppc_zap_RZ_at_bl = const_True; + vex_abiinfo.host_ppc_calls_use_fndescrs = True; + # endif + +-# if defined(VGP_ppc64le_linux) ++# if (defined(VGP_ppc64be_linux) && !defined(VG_PLAT_USES_PPCTOC)) \ ++ || defined(VGP_ppc64le_linux) + vex_abiinfo.guest_ppc_zap_RZ_at_blr = True; + vex_abiinfo.guest_ppc_zap_RZ_at_bl = const_True; + vex_abiinfo.host_ppc_calls_use_fndescrs = False; +diff --git a/coregrind/m_ume/elf.c b/coregrind/m_ume/elf.c +index 21eb52bcb..f1e6b4728 100644 +--- a/coregrind/m_ume/elf.c ++++ b/coregrind/m_ume/elf.c +@@ -847,8 +847,8 @@ Int VG_(load_ELF)(Int fd, const HChar* name, /*MOD*/ExeInfo* info) + info->exe_base = minaddr + ebase; + info->exe_end = maxaddr + ebase; + +-#if defined(VGP_ppc64be_linux) +- /* On PPC64BE, ELF ver 1, a func ptr is represented by a TOC entry ptr. ++#if defined(VGP_ppc64be_linux) && defined(VG_PLAT_USES_PPCTOC) ++ /* On PPC64, ELF ver 1, a func ptr is represented by a TOC entry ptr. + This TOC entry contains three words; the first word is the function + address, the second word is the TOC ptr (r2), and the third word + is the static chain value. */ +@@ -856,8 +856,8 @@ Int VG_(load_ELF)(Int fd, const HChar* name, /*MOD*/ExeInfo* info) + info->init_toc = ((ULong*)entry)[1]; + info->init_ip += info->interp_offset; + info->init_toc += info->interp_offset; +-#elif defined(VGP_ppc64le_linux) +- /* On PPC64LE, ELF ver 2. API doesn't use a func ptr */ ++#elif defined(VGP_ppc64be_linux) || defined(VGP_ppc64le_linux) ++ /* On PPC64, ELF ver 2. API doesn't use a func ptr */ + info->init_ip = (Addr)entry; + info->init_toc = 0; /* meaningless on this platform */ + #else +diff --git a/coregrind/pub_core_machine.h b/coregrind/pub_core_machine.h +index d6af843df..400148d57 100644 +--- a/coregrind/pub_core_machine.h ++++ b/coregrind/pub_core_machine.h +@@ -60,12 +60,20 @@ + # define VG_ELF_DATA2XXX ELFDATA2MSB + # define VG_ELF_MACHINE EM_PPC64 + # define VG_ELF_CLASS ELFCLASS64 +-# define VG_PLAT_USES_PPCTOC 1 ++# if !defined(_CALL_ELF) || _CALL_ELF == 1 ++# define VG_PLAT_USES_PPCTOC 1 ++# else ++# undef VG_PLAT_USES_PPCTOC ++# endif + #elif defined(VGP_ppc64le_linux) + # define VG_ELF_DATA2XXX ELFDATA2LSB + # define VG_ELF_MACHINE EM_PPC64 + # define VG_ELF_CLASS ELFCLASS64 +-# undef VG_PLAT_USES_PPCTOC ++# if defined(_CALL_ELF) && _CALL_ELF == 1 ++# define VG_PLAT_USES_PPCTOC 1 ++# else // assume ELFv2 by default if no ABI is specified ++# undef VG_PLAT_USES_PPCTOC ++# endif + #elif defined(VGP_arm_linux) + # define VG_ELF_DATA2XXX ELFDATA2LSB + # define VG_ELF_MACHINE EM_ARM +diff --git a/coregrind/vg_preloaded.c b/coregrind/vg_preloaded.c +index ad033432a..f300fbe80 100644 +--- a/coregrind/vg_preloaded.c ++++ b/coregrind/vg_preloaded.c +@@ -45,6 +45,7 @@ + #include "pub_core_basics.h" + #include "pub_core_clreq.h" + #include "pub_core_debuginfo.h" // Needed for pub_core_redir.h ++#include "pub_core_machine.h" // For VG_PLAT_USES_PPCTOC + #include "pub_core_redir.h" // For VG_NOTIFY_ON_LOAD + + #if defined(VGO_linux) || defined(VGO_solaris) +@@ -103,7 +104,7 @@ void * VG_NOTIFY_ON_LOAD(ifunc_wrapper) (void) + VALGRIND_GET_ORIG_FN(fn); + CALL_FN_W_v(result, fn); + +-#if defined(VGP_ppc64be_linux) ++#if defined(VGP_ppc64be_linux) && defined(VG_PLAT_USES_PPCTOC) + /* ppc64be uses function descriptors, so get the actual function entry + address for the client request, but return the function descriptor + from this function. +diff --git a/include/valgrind.h b/include/valgrind.h +index 577c8f05e..99e058ccf 100644 +--- a/include/valgrind.h ++++ b/include/valgrind.h +@@ -143,12 +143,20 @@ + # define PLAT_amd64_linux 1 + #elif defined(__linux__) && defined(__powerpc__) && !defined(__powerpc64__) + # define PLAT_ppc32_linux 1 +-#elif defined(__linux__) && defined(__powerpc__) && defined(__powerpc64__) && _CALL_ELF != 2 +-/* Big Endian uses ELF version 1 */ ++#elif defined(__linux__) && defined(__powerpc__) && defined(__powerpc64__) && defined(__BIG_ENDIAN__) + # define PLAT_ppc64be_linux 1 +-#elif defined(__linux__) && defined(__powerpc__) && defined(__powerpc64__) && _CALL_ELF == 2 +-/* Little Endian uses ELF version 2 */ ++# if _CALL_ELF == 2 ++# define PLAT_ppc64_linux_abi2 ++# else ++# define PLAT_ppc64_linux_abi1 ++# endif ++#elif defined(__linux__) && defined(__powerpc__) && defined(__powerpc64__) && !defined(__BIG_ENDIAN__) + # define PLAT_ppc64le_linux 1 ++# if _CALL_ELF == 2 ++# define PLAT_ppc64_linux_abi2 ++# else ++# define PLAT_ppc64_linux_abi1 ++# endif + #elif defined(__linux__) && defined(__arm__) && !defined(__aarch64__) + # define PLAT_arm_linux 1 + #elif defined(__linux__) && defined(__aarch64__) && !defined(__arm__) +diff --git a/memcheck/mc_leakcheck.c b/memcheck/mc_leakcheck.c +index 782244481..c239f5b10 100644 +--- a/memcheck/mc_leakcheck.c ++++ b/memcheck/mc_leakcheck.c +@@ -653,7 +653,7 @@ static Bool aligned_ptr_above_page0_is_vtable_addr(Addr ptr) + if (pot_fn == 0) + continue; // NULL fn pointer. Seems it can happen in vtable. + seg = VG_(am_find_nsegment) (pot_fn); +-#if defined(VGA_ppc64be) ++#if defined(VGA_ppc64be) && (!defined(_CALL_ELF) || _CALL_ELF == 1) + // ppc64BE uses a thunk table (function descriptors), so we have one + // more level of indirection to follow. + if (seg == NULL +diff --git a/memcheck/mc_machine.c b/memcheck/mc_machine.c +index 5ed101fca..70c64b361 100644 +--- a/memcheck/mc_machine.c ++++ b/memcheck/mc_machine.c +@@ -132,7 +132,8 @@ static Int get_otrack_shadow_offset_wrk ( Int offset, Int szB ) + return GOF(GPRn); + by testing ox instead of o, and setting ox back 4 bytes when sz == 4. + */ +-#if defined(VGA_ppc64le) ++#if (defined(VGA_ppc64be) && (defined(_CALL_ELF) && _CALL_ELF == 2)) \ ++ || defined(VGA_ppc64le) + Int ox = o; + #else + Int ox = sz == 8 ? o : (o - 4); +-- +2.18.0 + diff --git a/user/valgrind/APKBUILD b/user/valgrind/APKBUILD index 58ed29fa1..d79ba75c4 100644 --- a/user/valgrind/APKBUILD +++ b/user/valgrind/APKBUILD @@ -1,12 +1,12 @@ # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=valgrind pkgver=3.13.0 -pkgrel=1 +pkgrel=4 pkgdesc="A tool to help find memory-management problems in programs" url="http://valgrind.org/" arch="all" license="GPL-2.0+" -makedepends="autoconf automake libtool bash perl" +makedepends="autoconf automake libtool bash perl cmd:which" # from README_PACKAGERS: # Don't strip the debug info off lib/valgrind/$platform/vgpreload*.so # in the installation tree. Either Valgrind won't work at all, or it @@ -17,9 +17,9 @@ subpackages="$pkgname-dev $pkgname-doc" source="ftp://sourceware.org/pub/$pkgname/$pkgname-$pkgver.tar.bz2 uclibc.patch arm.patch - coregrind-elfv2.patch" -# musl-fixes.patch -builddir="$srcdir"/$pkgname-$pkgver + 0001-Ensure-ELFv2-is-supported-on-PPC64.patch + suppressions.patch + " prepare() { default_prepare @@ -67,4 +67,5 @@ package() { sha512sums="34e1013cd3815d30a459b86220e871bb0a6209cc9e87af968f347083693779f022e986f211bdf1a5184ad7370cde12ff2cfca8099967ff94732970bd04a97009 valgrind-3.13.0.tar.bz2 d59a10db9037e120df2ee94a103402ca95a79abee9d8be63e4e1bca29c82dca775cc402a79b854ec11a2160a4d2da202c237369418e221d1925267ea2613fd5d uclibc.patch 9ee297d1b2b86891584443ad0caadc4977e1447979611ccf1cc55dbee61911b0b063bc4ad936d86c451cedae410cb3219b5a088b2ad0aa17df182d564fe36cfe arm.patch -0f54b7b207870f495a0cf010b3091e2c0626bbf93b8a5ba7956b690981d4186de61f3e3b1fdc3aec2dfcacb69e712900f32c883a09dd4733c1e4569506272520 coregrind-elfv2.patch" +71afb12748f69f0976a299c65572818b70cbce5d04f230a49a50f114351d8083c59a9e197cefbcb9145806797ff4d1d54488f50342b680c9a2b76e4a7f7cf305 0001-Ensure-ELFv2-is-supported-on-PPC64.patch +d011b2769d35ca3206967e6dac9f3fb24a6496e5bbfdc73342382245c89375b09d6948b10ba3cf8aa0050c79c0dd13b75764aec0ec5c6ac479fa930941067747 suppressions.patch" diff --git a/user/valgrind/coregrind-elfv2.patch b/user/valgrind/coregrind-elfv2.patch deleted file mode 100644 index 7e4a2d636..000000000 --- a/user/valgrind/coregrind-elfv2.patch +++ /dev/null @@ -1,443 +0,0 @@ -The LE and BE code here is the same, except the BE has the old-style -function descriptor. So, we use the LE code on ELFv2 to fix build errors. - ---- valgrind-3.13.0/coregrind/m_libcsetjmp.c 2017-05-31 10:14:45.000000000 -0500 -+++ valgrind-3.13.0/coregrind/m_libcsetjmp.c 2018-05-25 20:07:37.007835735 -0500 -@@ -149,7 +149,7 @@ - - /* ------------ ppc64-linux ------------ */ - --#if defined(VGP_ppc64be_linux) -+#if defined(VGP_ppc64be_linux) && (!defined(_CALL_ELF) || _CALL_ELF == 1) - - __asm__( - ".section \".toc\",\"aw\"" "\n" -@@ -268,7 +268,8 @@ - ".previous" "\n" - ); - --#elif defined(VGP_ppc64le_linux) -+#elif (defined(VGP_ppc64le_linux)) || \ -+ (defined(VGP_ppc64be_linux) && defined(_CALL_ELF) && _CALL_ELF == 2) - __asm__( - ".section \".toc\",\"aw\"" "\n" - ---- valgrind-3.13.0/coregrind/m_main.c.old 2017-05-31 10:14:52.000000000 -0500 -+++ valgrind-3.13.0/coregrind/m_main.c 2018-05-30 19:01:00.534083618 -0500 -@@ -2585,7 +2585,7 @@ - "\ttrap\n" - ".previous\n" - ); --#elif defined(VGP_ppc64be_linux) -+#elif defined(VGP_ppc64be_linux) && (!defined(_CALL_ELF) || _CALL_ELF == 1) - asm("\n" - /* PPC64 ELF ABI says '_start' points to a function descriptor. - So we must have one, and that is what goes into the .opd section. */ -@@ -2631,9 +2631,9 @@ - "\tnop\n" - "\ttrap\n" - ); --#elif defined(VGP_ppc64le_linux) --/* Little Endian uses ELF version 2 but in the future may also -- * support other ELF versions. -+#elif defined(VGP_ppc64le_linux) || \ -+ (defined(VGP_ppc64be_linux) && defined(_CALL_ELF) && _CALL_ELF == 2) -+/* PowerPC 64 ELF version 2 does not use function descriptors. - */ - asm("\n" - "\t.align 2\n" ---- valgrind-3.13.0/coregrind/m_syscall.c.old 2017-05-31 10:14:29.000000000 -0500 -+++ valgrind-3.13.0/coregrind/m_syscall.c 2018-05-30 19:02:00.984023769 -0500 -@@ -470,7 +470,7 @@ - ".previous\n" - ); - --#elif defined(VGP_ppc64be_linux) -+#elif defined(VGP_ppc64be_linux) && (!defined(_CALL_ELF) || _CALL_ELF == 1) - /* Due to the need to return 65 bits of result, this is completely - different from the ppc32 case. The single arg register points to a - 7-word block containing the syscall # and the 6 args. The syscall -@@ -506,7 +506,8 @@ - " blr\n" - ); - --#elif defined(VGP_ppc64le_linux) -+#elif defined(VGP_ppc64le_linux) || \ -+ (defined(VGP_ppc64be_linux) && defined(_CALL_ELF) && _CALL_ELF == 2) - /* Due to the need to return 65 bits of result, this is completely - different from the ppc32 case. The single arg register points to a - 7-word block containing the syscall # and the 6 args. The syscall ---- valgrind-3.13.0/coregrind/m_signals.c.old 2017-05-31 10:14:52.000000000 -0500 -+++ valgrind-3.13.0/coregrind/m_signals.c 2018-05-30 22:12:46.082692356 -0500 -@@ -889,7 +889,7 @@ - " sc\n" \ - ".previous\n" - --#elif defined(VGP_ppc64be_linux) -+#elif defined(VGP_ppc64be_linux) && (!defined(_CALL_ELF) || _CALL_ELF == 1) - # define _MY_SIGRETURN(name) \ - ".align 2\n" \ - ".globl my_sigreturn\n" \ -@@ -904,7 +904,8 @@ - " li 0, " #name "\n" \ - " sc\n" - --#elif defined(VGP_ppc64le_linux) -+#elif defined(VGP_ppc64le_linux) || \ -+ (defined(VGP_ppc64be_linux) && defined(_CALL_ELF) && _CALL_ELF == 2) - /* Little Endian supports ELF version 2. In the future, it may - * support other versions. - */ ---- valgrind-3.13.0/coregrind/m_syswrap/syswrap-ppc64-linux.c.old 2017-05-31 10:14:39.000000000 -0500 -+++ valgrind-3.13.0/coregrind/m_syswrap/syswrap-ppc64-linux.c 2018-05-30 22:15:42.112518074 -0500 -@@ -71,12 +71,12 @@ - // r4 = retaddr - // r5 = function descriptor - // r6 = arg1 --/* On PPC64, a func ptr is represented by a TOC entry ptr. -+/* On ELFv1, a func ptr is represented by a TOC entry ptr. - This TOC entry contains three words; the first word is the function - address, the second word is the TOC ptr (r2), and the third word is - the static chain value. */ - asm( --#if defined(VGP_ppc64be_linux) -+#if defined(VGP_ppc64be_linux) && (!defined(_CALL_ELF) || _CALL_ELF == 1) - " .align 2\n" - " .globl vgModuleLocal_call_on_new_stack_0_1\n" - " .section \".opd\",\"aw\"\n" -@@ -126,7 +126,7 @@ - " bctr\n\t" // jump to dst - " trap\n" // should never get here - #else --// ppc64le_linux -+// ppc64le_linux, or ELFv2 ABI on BE - " .align 2\n" - " .globl vgModuleLocal_call_on_new_stack_0_1\n" - "vgModuleLocal_call_on_new_stack_0_1:\n" -@@ -211,7 +211,7 @@ - - // See priv_syswrap-linux.h for arg profile. - asm( --#if defined(VGP_ppc64be_linux) -+#if defined(VGP_ppc64be_linux) && (!defined(_CALL_ELF) || _CALL_ELF == 1) - " .align 2\n" - " .globl do_syscall_clone_ppc64_linux\n" - " .section \".opd\",\"aw\"\n" ---- valgrind-3.13.0/coregrind/m_syswrap/syscall-ppc64be-linux.S.old 2017-05-31 10:14:39.000000000 -0500 -+++ valgrind-3.13.0/coregrind/m_syswrap/syscall-ppc64be-linux.S 2018-05-30 22:18:31.742350130 -0500 -@@ -29,7 +29,7 @@ - - #include "pub_core_basics_asm.h" - --#if defined(VGP_ppc64be_linux) -+#if defined(VGP_ppc64be_linux) || defined(VGP_ppc64le_linux) - - #include "pub_core_vkiscnums_asm.h" - #include "libvex_guest_offsets.h" -@@ -76,12 +76,25 @@ - - .align 2 - .globl ML_(do_syscall_for_client_WRK) -+#if _CALL_ELF == 2 -+.type .ML_(do_syscall_for_client_WRK),@function -+ML_(do_syscall_for_client_WRK): -+0: addis 2,12,.TOC.-0b@ha -+ addi 2,2,.TOC.-0b@l -+ .localentry ML_(do_syscall_for_client_WRK), .-ML_(do_syscall_for_client_WRK) -+#else - .section ".opd","aw" - .align 3 --ML_(do_syscall_for_client_WRK): -+ML_(do_syscall_for_client_WRK): - .quad .ML_(do_syscall_for_client_WRK),.TOC.@tocbase,0 - .previous --.type .ML_(do_syscall_for_client_WRK),@function -+#endif -+#if _CALL_ELF == 2 -+0: addis 2,12,.TOC.-0b@ha -+ addi 2,2,.TOC.-0b@l -+ .localentry ML_(do_syscall_for_client_WRK), .-ML_(do_syscall_for_client_WRK) -+#endif -+.type .ML_(do_syscall_for_client_WRK),@function - .globl .ML_(do_syscall_for_client_WRK) - .ML_(do_syscall_for_client_WRK): - /* make a stack frame */ -@@ -145,7 +158,11 @@ - /* failure: return 0x8000 | error code */ - 7: ori 3,3,0x8000 /* FAILURE -- ensure return value is nonzero */ - b 5b -- -+#if _CALL_ELF == 2 -+ .size .ML_(do_syscall_for_client_WRK),.-.ML_(do_syscall_for_client_WRK) -+#else -+ .size .ML_(do_syscall_for_client_WRK),.-.ML_(do_syscall_for_client_WRK) -+#endif - .section .rodata - /* export the ranges so that - VG_(fixup_guest_state_after_syscall_interrupted) can do the -@@ -162,7 +179,7 @@ - ML_(blksys_committed): .quad 4b - ML_(blksys_finished): .quad 5b - --#endif // defined(VGP_ppc64be_linux) -+#endif // defined(VGP_ppc64le_linux) - - /* Let the linker know we don't need an executable stack */ - MARK_STACK_NO_EXEC ---- valgrind-3.13.0/coregrind/m_dispatch/dispatch-ppc64be-linux.S.old 2017-05-31 10:14:33.000000000 -0500 -+++ valgrind-3.13.0/coregrind/m_dispatch/dispatch-ppc64be-linux.S 2018-05-30 22:39:37.951096498 -0500 -@@ -30,12 +30,21 @@ - - #include "pub_core_basics_asm.h" - --#if defined(VGP_ppc64be_linux) -+#if defined(VGP_ppc64be_linux) || defined(VGP_ppc64le_linux) - - #include "pub_core_dispatch_asm.h" - #include "pub_core_transtab_asm.h" - #include "libvex_guest_offsets.h" /* for OFFSET_ppc64_CIA */ - -+/* NOTE: PPC64 supports Big Endian and Little Endian. It also supports the -+ ELF version 1 and ELF version 2 APIs. -+ -+ Currently LE uses ELF version 2 and BE uses ELF version 1. However, -+ BE and LE may support the other ELF version in the future. So, the -+ _CALL_ELF is used in the assembly function to enable code for a -+ specific ELF version independently of the endianness of the machine. -+ The test "#if _CALL_ELF == 2" checks if ELF version 2 is being used. -+*/ - - /* References to globals via the TOC */ - -@@ -75,14 +84,26 @@ - .section ".text" - .align 2 - .globl VG_(disp_run_translations) -+#if _CALL_ELF == 2 -+.type VG_(disp_run_translations),@function -+VG_(disp_run_translations): -+.type .VG_(disp_run_translations),@function -+#else - .section ".opd","aw" - .align 3 - VG_(disp_run_translations): - .quad .VG_(disp_run_translations),.TOC.@tocbase,0 - .previous - .type .VG_(disp_run_translations),@function -+#endif - .globl .VG_(disp_run_translations) - .VG_(disp_run_translations): -+#if _CALL_ELF == 2 -+0: addis 2, 12,.TOC.-0b@ha -+ addi 2,2,.TOC.-0b@l -+ .localentry VG_(disp_run_translations), .-VG_(disp_run_translations) -+#endif -+ - /* r3 holds two_words */ - /* r4 holds guest_state */ - /* r5 holds host_addr */ -@@ -229,8 +250,13 @@ - /* make a stack frame for the code we are calling */ - stdu 1,-48(1) - -- /* Set up the guest state ptr */ -+ /* Set up the guest state ptr */ - mr 31,4 /* r31 (generated code gsp) = r4 */ -+#if _CALL_ELF == 2 -+/* for the LE ABI need to setup r2 and r12 */ -+0: addis 2, 12,.TOC.-0b@ha -+ addi 2,2,.TOC.-0b@l -+#endif - - /* and jump into the code cache. Chained translations in - the code cache run, until for whatever reason, they can't -@@ -385,6 +411,9 @@ - mtlr 0 - addi 1,1,624 /* stack_size */ - blr -+#if _CALL_ELF == 2 -+ .size VG_(disp_run_translations),.-VG_(disp_run_translations) -+#endif - - - /*----------------------------------------------------*/ -@@ -395,15 +424,25 @@ - .section ".text" - .align 2 - .globl VG_(disp_cp_chain_me_to_slowEP) -- .section ".opd","aw" -+#if _CALL_ELF == 2 -+ .type VG_(disp_cp_chain_me_to_slowEP),@function -+ VG_(disp_cp_chain_me_to_slowEP): -+#else -+ .section ".opd","aw" - .align 3 - VG_(disp_cp_chain_me_to_slowEP): - .quad .VG_(disp_cp_chain_me_to_slowEP),.TOC.@tocbase,0 - .previous -+#endif - .type .VG_(disp_cp_chain_me_to_slowEP),@function - .globl .VG_(disp_cp_chain_me_to_slowEP) - .VG_(disp_cp_chain_me_to_slowEP): -- /* We got called. The return address indicates -+#if _CALL_ELF == 2 -+0: addis 2, 12,.TOC.-0b@ha -+ addi 2,2,.TOC.-0b@l -+ .localentry VG_(disp_cp_chain_me_to_slowEP), .-VG_(disp_cp_chain_me_to_slowEP) -+#endif -+ /* We got called. The return address indicates - where the patching needs to happen. Collect - the return address and, exit back to C land, - handing the caller the pair (Chain_me_S, RA) */ -@@ -415,20 +454,33 @@ - */ - subi 7,7,20+4+4 - b .postamble -+#if _CALL_ELF == 2 -+ .size VG_(disp_cp_chain_me_to_slowEP),.-VG_(disp_cp_chain_me_to_slowEP) -+#endif - - /* ------ Chain me to fast entry point ------ */ - .section ".text" - .align 2 - .globl VG_(disp_cp_chain_me_to_fastEP) -- .section ".opd","aw" -+#if _CALL_ELF == 2 -+ .type VG_(disp_cp_chain_me_to_fastEP),@function -+VG_(disp_cp_chain_me_to_fastEP): -+#else -+ .section ".opd","aw" - .align 3 - VG_(disp_cp_chain_me_to_fastEP): - .quad .VG_(disp_cp_chain_me_to_fastEP),.TOC.@tocbase,0 - .previous -+#endif - .type .VG_(disp_cp_chain_me_to_fastEP),@function - .globl .VG_(disp_cp_chain_me_to_fastEP) - .VG_(disp_cp_chain_me_to_fastEP): -- /* We got called. The return address indicates -+#if _CALL_ELF == 2 -+0: addis 2, 12,.TOC.-0b@ha -+ addi 2,2,.TOC.-0b@l -+ .localentry VG_(disp_cp_chain_me_to_fastEP), .-VG_(disp_cp_chain_me_to_fastEP) -+#endif -+ /* We got called. The return address indicates - where the patching needs to happen. Collect - the return address and, exit back to C land, - handing the caller the pair (Chain_me_S, RA) */ -@@ -440,20 +492,33 @@ - */ - subi 7,7,20+4+4 - b .postamble -+#if _CALL_ELF == 2 -+ .size VG_(disp_cp_chain_me_to_fastEP),.-VG_(disp_cp_chain_me_to_fastEP) -+#endif - - /* ------ Indirect but boring jump ------ */ - .section ".text" - .align 2 - .globl VG_(disp_cp_xindir) -- .section ".opd","aw" -+#if _CALL_ELF == 2 -+ .type VG_(disp_cp_xindir),@function -+VG_(disp_cp_xindir): -+#else -+ .section ".opd","aw" - .align 3 - VG_(disp_cp_xindir): - .quad .VG_(disp_cp_xindir),.TOC.@tocbase,0 - .previous -+#endif - .type .VG_(disp_cp_xindir),@function - .globl .VG_(disp_cp_xindir) - .VG_(disp_cp_xindir): -- /* Where are we going? */ -+#if _CALL_ELF == 2 -+0: addis 2, 12,.TOC.-0b@ha -+ addi 2,2,.TOC.-0b@l -+ .localentry VG_(disp_cp_xindir), .-VG_(disp_cp_xindir) -+#endif -+ /* Where are we going? */ - ld 3,OFFSET_ppc64_CIA(31) - - /* stats only */ -@@ -479,6 +544,9 @@ - /* Found a match. Jump to .host. */ - mtctr 7 - bctr -+#if _CALL_ELF == 2 -+ .size VG_(disp_cp_xindir),.-VG_(disp_cp_xindir) -+#endif - - .fast_lookup_failed: - /* stats only */ -@@ -496,39 +564,64 @@ - .section ".text" - .align 2 - .globl VG_(disp_cp_xassisted) -- .section ".opd","aw" -+#if _CALL_ELF == 2 -+ .type VG_(disp_cp_xassisted),@function -+VG_(disp_cp_xassisted): -+#else -+ .section ".opd","aw" - .align 3 - VG_(disp_cp_xassisted): - .quad .VG_(disp_cp_xassisted),.TOC.@tocbase,0 - .previous -- .type .VG_(disp_cp_xassisted),@function -+#endif -+#if _CALL_ELF == 2 -+0: addis 2, 12,.TOC.-0b@ha -+ addi 2,2,.TOC.-0b@l -+ .localentry VG_(disp_cp_xassisted), .-VG_(disp_cp_xassisted) -+#endif -+ .type .VG_(disp_cp_xassisted),@function - .globl .VG_(disp_cp_xassisted) - .VG_(disp_cp_xassisted): - /* r31 contains the TRC */ - mr 6,31 - li 7,0 - b .postamble -+#if _CALL_ELF == 2 -+ .size VG_(disp_cp_xassisted),.-VG_(disp_cp_xassisted) -+#endif - - /* ------ Event check failed ------ */ - .section ".text" - .align 2 - .globl VG_(disp_cp_evcheck_fail) -- .section ".opd","aw" -+#if _CALL_ELF == 2 -+ .type VG_(disp_cp_evcheck_fail),@function -+VG_(disp_cp_evcheck_fail): -+#else -+ .section ".opd","aw" - .align 3 - VG_(disp_cp_evcheck_fail): - .quad .VG_(disp_cp_evcheck_fail),.TOC.@tocbase,0 - .previous -+#endif -+#if _CALL_ELF == 2 -+0: addis 2, 12,.TOC.-0b@ha -+ addi 2,2,.TOC.-0b@l -+ .localentry VG_(disp_cp_evcheck_fail), .-VG_(disp_cp_evcheck_fail) -+#endif - .type .VG_(disp_cp_evcheck_fail),@function - .globl .VG_(disp_cp_evcheck_fail) - .VG_(disp_cp_evcheck_fail): - li 6,VG_TRC_INNER_COUNTERZERO - li 7,0 - b .postamble -+#if _CALL_ELF == 2 -+ .size VG_(disp_cp_evcheck_fail),.-VG_(disp_cp_evcheck_fail) -+#endif - -- - .size .VG_(disp_run_translations), .-.VG_(disp_run_translations) - --#endif // defined(VGP_ppc64be_linux) -+#endif // defined(VGP_ppc64be_linux) || defined(VGP_ppc64le_linux) - - /* Let the linker know we don't need an executable stack */ - MARK_STACK_NO_EXEC diff --git a/user/valgrind/suppressions.patch b/user/valgrind/suppressions.patch new file mode 100644 index 000000000..a91b93fdf --- /dev/null +++ b/user/valgrind/suppressions.patch @@ -0,0 +1,24 @@ +--- valgrind-3.13.0/configure.ac.old 2017-06-15 13:37:01.000000000 +0000 ++++ valgrind-3.13.0/configure.ac 2018-10-02 21:46:48.710000000 +0000 +@@ -1034,7 +1034,7 @@ + musl) + AC_MSG_RESULT(Musl) + AC_DEFINE([MUSL_LIBC], 1, [Define to 1 if you're using Musl libc]) +- # no DEFAULT_SUPP file yet for musl libc. ++ DEFAULT_SUPP="musl.supp ${DEFAULT_SUPP}" + ;; + 2.0|2.1|*) + AC_MSG_RESULT([unsupported version ${GLIBC_VERSION}]) +--- /dev/null 2018-07-03 06:46:12.010000000 +0000 ++++ valgrind-3.13.0/musl.supp 2018-10-02 21:44:57.240000000 +0000 +@@ -0,0 +1,10 @@ ++# musl does not free `dso` structs allocated during linking on exit. ++{ ++ musl:dynlinker ++ Memcheck:Leak ++ match-leak-kinds: reachable ++ fun:calloc ++ ... ++ fun:__dls3 ++ obj:/lib/ld-musl-* ++} diff --git a/user/vlc/APKBUILD b/user/vlc/APKBUILD index dea31e948..7db6632a1 100644 --- a/user/vlc/APKBUILD +++ b/user/vlc/APKBUILD @@ -3,7 +3,7 @@ # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=vlc pkgver=3.0.4 -pkgrel=0 +pkgrel=1 pkgdesc="Multi-platform MPEG, VCD/DVD, and DivX player" triggers="vlc-libs.trigger=/usr/lib/vlc/plugins" pkgusers="vlc" diff --git a/user/volume_key/APKBUILD b/user/volume_key/APKBUILD index 85ed4d482..db26d40e2 100644 --- a/user/volume_key/APKBUILD +++ b/user/volume_key/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=volume_key -pkgver=0.3.11 +pkgver=0.3.12 pkgrel=0 pkgdesc="Storage volume encryption key management library" url="https://pagure.io/volume_key" @@ -43,4 +43,4 @@ py() { mv "$pkgdir"/usr/lib/python3.6 "$subpkgdir"/usr/lib/ } -sha512sums="b9da00578b31c96231ebde55fd91c9aafbd663e541c560460fb6c3305e1a0e1fb3115a95682dc4713027d084e14ffa39d638653384a18d69f5dc892fc4855a97 volume_key-0.3.11.tar.xz" +sha512sums="d056154c9b9d23e4eb661946dd59ed97e116903a3afcff9d9e29258408082f33dcbb69958724143f6bf191a3da488a03b6c02af287790990ed6459e29d66553c volume_key-0.3.12.tar.xz" diff --git a/user/vte/APKBUILD b/user/vte/APKBUILD new file mode 100644 index 000000000..d25e349b1 --- /dev/null +++ b/user/vte/APKBUILD @@ -0,0 +1,39 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=vte +pkgver=0.54.1 +pkgrel=0 +pkgdesc="Virtual terminal emulator library for Gnome" +url="https://www.gnome.org" +arch="all" +license="LGPL-2.1+ AND GPL-3.0+ AND LGPL-3.0+ AND MIT AND LGPL-2.0+" +makedepends="intltool gtk+3.0-dev gnutls-dev zlib-dev pcre2-dev + gobject-introspection-dev vala vala-dev libxml2-utils" +subpackages="$pkgname-dev $pkgname-doc $pkgname-lang" +source="https://download.gnome.org/sources/vte/0.54/vte-$pkgver.tar.xz + exitcode.patch" + +build() { + cd "$builddir" + ./configure \ + --build=$CBUILD \ + --host=$CHOST \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --localstatedir=/var + make +} + +check() { + cd "$builddir" + make check +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install +} + +sha512sums="5cb866e75c35e1b5728d17b0433641ceb4837495d59185a04fde9dd8c9849ab905a6b2718a50b27cc70323c7a6c5db31a808816576c30d7f18ece889a329fb61 vte-0.54.1.tar.xz +4987254439a136f66a7b7be1300f5efbf85db74bdb64fdd8d0c9a555173a172b4fd519174f932e73d58a2618ef37273e82fe681bb129891f2792a414025f6c61 exitcode.patch" diff --git a/user/vte/exitcode.patch b/user/vte/exitcode.patch new file mode 100644 index 000000000..52de63858 --- /dev/null +++ b/user/vte/exitcode.patch @@ -0,0 +1,12 @@ +--- vte-0.54.0/src/widget.cc.old 2018-09-02 13:20:15.000000000 +0000 ++++ vte-0.54.0/src/widget.cc 2018-09-08 21:20:16.000000000 +0000 +@@ -21,6 +21,9 @@ + #include "widget.hh" + + #include <sys/wait.h> // for W_EXITCODE ++#ifndef W_EXITCODE ++# define W_EXITCODE(ret, sig) ((unsigned int)(ret) << 8 | sig) ++#endif + + #include <new> + #include <string> diff --git a/user/which/APKBUILD b/user/which/APKBUILD new file mode 100644 index 000000000..cea55c32a --- /dev/null +++ b/user/which/APKBUILD @@ -0,0 +1,34 @@ +# Contributor: Stuart Cardall <developer@it-offshore.co.uk> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=which +pkgver=2.21 +pkgrel=2 +pkgdesc="A utility to show the full path of commands" +url="http://savannah.gnu.org/projects/which" +arch="all" +license="GPL-2.0+ AND LGPL-2.0+ AND GPL-3.0+" +makedepends="" +subpackages="$pkgname-doc" +source="http://ftp.gnu.org/gnu/$pkgname/$pkgname-$pkgver.tar.gz" +provider_priority=1 + +build() { + cd "$builddir" + ./configure \ + --build=$CBUILD \ + --host=$CHOST \ + --prefix=/usr + make +} + +check() { + cd "$builddir" + make check +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install +} + +sha512sums="d2f04a5c5291f2d7d1226982da7cf999d36cfe24d3f7bda145508efcfb359511251d3c68b860c0ddcedd66b15a0587b648a35ab6d1f173707565305c506dfc61 which-2.21.tar.gz" diff --git a/user/wireless-tools/APKBUILD b/user/wireless-tools/APKBUILD index b4cf49688..0d5cfcf02 100644 --- a/user/wireless-tools/APKBUILD +++ b/user/wireless-tools/APKBUILD @@ -9,15 +9,14 @@ _pkgver=${pkgver/_/.} _pkgmaj=${pkgver%_pre[0-9]*} pkgrel=0 pkgdesc="Open Source wireless tools" -url="http://www.hpl.hp.com/personal/Jean_Tourrilhes/Linux/Tools.html" +url="https://hewlettpackard.github.io/wireless-tools/Tools.html" arch="all" +options="!check" # these applications have no testsuite license="GPL-2.0-or-later" depends="" makedepends="linux-headers" -install="" -options="!check" # these applications have no testsuite subpackages="$pkgname-dev $pkgname-doc" -source="http://www.hpl.hp.com/personal/Jean_Tourrilhes/Linux/wireless_tools.${_pkgver}.tar.gz" +source="https://hewlettpackard.github.io/wireless-tools/wireless_tools.${_pkgver}.tar.gz" builddir="$srcdir"/"$_pkgname"."$_pkgmaj" diff --git a/user/wpa_supplicant/APKBUILD b/user/wpa_supplicant/APKBUILD index 095e0320c..0b070dee7 100644 --- a/user/wpa_supplicant/APKBUILD +++ b/user/wpa_supplicant/APKBUILD @@ -2,14 +2,15 @@ # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=wpa_supplicant pkgver=2.6 -pkgrel=8 +pkgrel=9 pkgdesc="Utility providing key negotiation for WPA wireless networks" url="https://w1.fi/wpa_supplicant/" arch="all" license="BSD-3-Clause AND Public-Domain AND (GPL-2.0+ OR BSD-3-Clause)" -subpackages="$pkgname-doc $pkgname-openrc" +subpackages="$pkgname-doc $pkgname-openrc wpa_gui" depends="dbus" -makedepends="linux-headers openssl-dev dbus-dev libnl3-dev pcsc-lite-dev" +makedepends="linux-headers openssl-dev dbus-dev libnl3-dev pcsc-lite-dev + qt5-qtbase-dev" source="http://w1.fi/releases/$pkgname-$pkgver.tar.gz rebased-v2.6-0001-hostapd-Avoid-key-reinstallation-in-FT-handshake.patch rebased-v2.6-0002-Prevent-reinstallation-of-an-already-in-use-group-ke.patch @@ -50,6 +51,10 @@ prepare() { build() { cd "$builddir"/wpa_supplicant make LIBDIR=/lib BINDIR=/sbin + + # wpa_gui + qmake -o wpa_gui-qt4/Makefile wpa_gui-qt4/wpa_gui.pro + make -C wpa_gui-qt4 } check() { @@ -87,6 +92,14 @@ package() { "$pkgdir"/etc/conf.d/wpa_supplicant } +wpa_gui() { + pkgdesc="Graphical User Interface for wpa_supplicant" + depends="$pkgname" + + cd "$builddir"/wpa_supplicant + install -Dm755 wpa_gui-qt4/wpa_gui "$subpkgdir"/usr/bin/wpa_gui +} + sha512sums="46442cddb6ca043b8b08d143908f149954c238e0f3a57a0df73ca4fab9c1acd91b078f3f26375a1d99cd1d65625986328018c735d8705882c8f91e389cad28a6 wpa_supplicant-2.6.tar.gz f855fa792425f175ccc800eb49df42067b1c1f4b52ba2d24160af4dfbb74dcf8e81661b7e6c8d92fa408938b8a559fc74557d1677913e4a751bfd43706c14bb6 rebased-v2.6-0001-hostapd-Avoid-key-reinstallation-in-FT-handshake.patch b4e413aa815572ea0002d33d24b69cd499aebb5efebed8fcaade8b29324bb5853a5db64e8b1dfdf24478e02c66196238b81a6ec777a7a28610435dce4d2c344e rebased-v2.6-0002-Prevent-reinstallation-of-an-already-in-use-group-ke.patch diff --git a/user/x265/APKBUILD b/user/x265/APKBUILD index cf8090f45..b992a0e6a 100644 --- a/user/x265/APKBUILD +++ b/user/x265/APKBUILD @@ -1,7 +1,7 @@ # Contributor: Carlo Landmeter <clandmeter@gmail.com> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=x265 -pkgver=2.8 +pkgver=2.9 pkgrel=0 pkgdesc="Open Source H265/HEVC video encoder" url="http://x265.org" @@ -11,7 +11,7 @@ license="GPL-2.0-only" makedepends="cmake yasm" # 2.6+ will use nasm instead of yasm subpackages="$pkgname-dev" source="$pkgname-$pkgver.tar.gz::https://bitbucket.org/multicoreware/$pkgname/downloads/${pkgname}_${pkgver}.tar.gz - work-on-any-non-x86.patch + build-on-any-non-x86.patch x265-unbreak-my-arm.patch" builddir="$srcdir/${pkgname}_$pkgver" @@ -48,6 +48,6 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="c2a8eaec64aa022badcbcd2a96304a9abd9d08489300b6a9c4c9d76066f3d9848e6948238c84ae16ea91bff0b2fac528a67ee29950d94dcd0ea7c0e9e7baa714 x265-2.8.tar.gz -cbd0372fe5d83047314be71da89694ccd28dab6f183ae55bafed4a1bf81861d47877c77838ab6dc72e54f268390f8ae4076be17ece1cf721147c2c4bbf3c2900 work-on-any-non-x86.patch +sha512sums="270818c7fd84947fde371e32bef225c1880cfb0bcd95378d95b51f50577a134d7cd585fcdfa43b103a24d76c5ad826b09509a07eb9e208e8f2b56f2f77365cf3 x265-2.9.tar.gz +453acad171d572fdff283cc8b4cdf3707839ae9f13de610416e1298375b218c77dc9870c7367385f7fefaa3d3e66d8c5db76966e66004fa8dde7c40648b0af45 build-on-any-non-x86.patch ac3ecc613fe4da11672de8f397b5541fe2af29b7dd91a48859bfe8824934a5966c41ca30de242564c46f1a0cdd2a0da9331d9f547fc21120066fb3c45347c4c4 x265-unbreak-my-arm.patch" diff --git a/user/x265/build-on-any-non-x86.patch b/user/x265/build-on-any-non-x86.patch new file mode 100644 index 000000000..f92395629 --- /dev/null +++ b/user/x265/build-on-any-non-x86.patch @@ -0,0 +1,24 @@ +--- x265_2.9/source/common/cpu.cpp.orig 2018-10-05 12:14:40.000000000 +0000 ++++ x265_2.9/source/common/cpu.cpp 2018-10-19 02:24:48.780000000 +0000 +@@ -59,6 +59,10 @@ + + namespace X265_NS { + static bool enable512 = false; ++bool detect512() ++{ ++ return(enable512); ++} + const cpu_name_t cpu_names[] = + { + #if X265_ARCH_X86 +@@ -123,10 +127,6 @@ + #pragma warning(disable: 4309) // truncation of constant value + #endif + +-bool detect512() +-{ +- return(enable512); +-} + uint32_t cpu_detect(bool benableavx512 ) + { + diff --git a/user/x265/work-on-any-non-x86.patch b/user/x265/work-on-any-non-x86.patch deleted file mode 100644 index cdfbed72f..000000000 --- a/user/x265/work-on-any-non-x86.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- x265_2.8/source/common/param.cpp.old 2018-05-21 08:33:10.000000000 +0000 -+++ x265_2.8/source/common/param.cpp 2018-07-18 06:18:41.120000000 +0000 -@@ -633,7 +633,7 @@ - if (bValueWasNull) - p->cpuid = atobool(value); - else -- p->cpuid = parseCpuName(value, bError); -+ p->cpuid = parseCpuName(value, bError, false); - #endif - } - OPT("fps") diff --git a/user/xapian-core/APKBUILD b/user/xapian-core/APKBUILD index eac1f412f..ac38e0afc 100644 --- a/user/xapian-core/APKBUILD +++ b/user/xapian-core/APKBUILD @@ -1,7 +1,7 @@ # Contributor: Francesco Colista <fcolista@alpinelinux.org> # Maintainer: pkgname=xapian-core -pkgver=1.4.6 +pkgver=1.4.7 pkgrel=0 pkgdesc="Open source search engine library" url="https://xapian.org/" @@ -54,5 +54,5 @@ libxapian() { mv "$pkgdir"/usr/lib/$subpkgname* "$subpkgdir"/usr/lib } -sha512sums="f08168eba26a24ea00c2219d2cdfac1d904b51162fdd98d437564786375245e00010986a7d6e9c8c7548ae19aab80434b5cb0051252f902b40db2976b1008fe2 xapian-core-1.4.6.tar.xz +sha512sums="9e77a78bd63036966ebb9bbed91e36fef17b37c9465c8d4b7dc8041f0e24b040e6520de645babfeeade952771d145176a204328718cfa8bc2291bb6fdbe840d2 xapian-core-1.4.7.tar.xz 639c0ecd75be0627d334628b5adf581a7da92c4f86dfb86a92669368ff8a874d4bf4e344b8f3b1276d22d126d2bc44c8ab727e39e1c29c0358fe7bbc8aa8050d timeval-t.patch" diff --git a/user/xautolock/APKBUILD b/user/xautolock/APKBUILD new file mode 100644 index 000000000..71fd17994 --- /dev/null +++ b/user/xautolock/APKBUILD @@ -0,0 +1,30 @@ +# Contributor: Johannes Matheis <jomat+alpinebuild@jmt.gr> +# Maintainer: Dan Theisen <djt@hxx.in> +pkgname=xautolock +pkgver=2.2 +pkgrel=4 +pkgdesc="An automatic X screen-locker/screen-saver" +url="http://ibiblio.org/pub/Linux/X11/screensavers/" +arch="all" # this might not build on aarch64? removed from alpine commit +license="GPL-2.0" +options="!check" # This package has no testsuite +depends="" +makedepends="$depends_dev imake xorg-server-dev libxscrnsaver-dev xorg-cf-files" +subpackages="$pkgname-doc" +source="https://www.ibiblio.org/pub/linux/X11/screensavers/xautolock-$pkgver.tgz + processwait.patch" + +build() { + cd "$builddir" + xmkmf + make +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + make MANPATH=/usr/share/man DESTDIR="$pkgdir" install.man +} + +sha512sums="5f9dcc25cda706610e77a74235c4b421ca3a833d154b1a269057f0774579e1c6ec36fe0e5be5fadd6942ce8c1640a760f891397586b162e6024b524635153d04 xautolock-2.2.tgz +3242d01e394f8b84946d7d7fca9a87f2e17783352e180e43470737d3a2e4a7eb15f1a514dcd98118b6491895ab56d3cef29d4abb32b5a341c73efaa2a7ff323a processwait.patch" diff --git a/user/xautolock/processwait.patch b/user/xautolock/processwait.patch new file mode 100644 index 000000000..cb49f8d88 --- /dev/null +++ b/user/xautolock/processwait.patch @@ -0,0 +1,33 @@ +--- xautolock/src/engine.c.orig 2014-08-28 12:50:56.086307943 +0000 ++++ xautolock/src/engine.c 2014-08-28 12:50:59.496333650 +0000 +@@ -209,24 +209,24 @@ evaluateTriggers (Display* d) + { + #else /* VMS */ + if (lockerPid) + { +-#if !defined (UTEKV) && !defined (SYSV) && !defined (SVR4) ++#if (!defined (UTEKV) && !defined (SYSV) && !defined (SVR4)) && defined (__GLIBC__) + union wait status; /* childs process status */ +-#else /* !UTEKV && !SYSV && !SVR4 */ ++#else /* (!UTEKV && !SYSV && !SVR4) && __GLIBC__ */ + int status = 0; /* childs process status */ +-#endif /* !UTEKV && !SYSV && !SVR4 */ ++#endif /* (!UTEKV && !SYSV && !SVR4) && __GLIBC__ */ + + if (unlockNow && !disabled) + { + (void) kill (lockerPid, SIGTERM); + } + +-#if !defined (UTEKV) && !defined (SYSV) && !defined (SVR4) ++#if (!defined (UTEKV) && !defined (SYSV) && !defined (SVR4)) && defined (__GLIBC__) + if (wait3 (&status, WNOHANG, 0)) +-#else /* !UTEKV && !SYSV && !SVR4 */ ++#else /* (!UTEKV && !SYSV && !SVR4) && __GLIBC__ */ + if (waitpid (-1, &status, WNOHANG)) +-#endif /* !UTEKV && !SYSV && !SVR4 */ ++#endif /* (!UTEKV && !SYSV && !SVR4) && __GLIBC__ */ + { + /* + * If the locker exited normally, we disable any pending kill + * trigger. Otherwise, we assume that it either has crashed or diff --git a/user/xcb-util-xrm/APKBUILD b/user/xcb-util-xrm/APKBUILD new file mode 100644 index 000000000..d368f1544 --- /dev/null +++ b/user/xcb-util-xrm/APKBUILD @@ -0,0 +1,37 @@ +# Contributor: William Pitcock <nenolod@dereferenced.org> +# Contributor: Jakub Skrzypnik <j.skrzypnik@openmailbox.org> +# Maintainer: Dan Theisen <djt@hxx.in> +pkgname=xcb-util-xrm +pkgver=1.3 +pkgrel=0 +pkgdesc="Utility functions for the X resource manager" +url="https://github.com/Airblader/xcb-util-xrm" +arch="all" +license="MIT" +makedepends="m4 bsd-compat-headers libx11-dev libxcb-dev util-macros xcb-util-dev" +source="https://github.com/Airblader/$pkgname/releases/download/v$pkgver/$pkgname-$pkgver.tar.gz" +subpackages="$pkgname-dev" + +build() { + cd "$builddir" + ./configure \ + --build=$CBUILD \ + --host=$CHOST \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --localstatedir=/var + make +} + +check() { + cd "$builddir" + make check +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install +} + +sha512sums="d8a427ed6d1f1568ce58db9b89284e4fafcc7b7929c31bccf70e5ccd91f3f6cb9c87ff25c4e64d95b0c6215cfecde6c0ee2b3a18759817aea3169ba87602c5de xcb-util-xrm-1.3.tar.gz" diff --git a/user/xdotool/APKBUILD b/user/xdotool/APKBUILD new file mode 100644 index 000000000..3aae63783 --- /dev/null +++ b/user/xdotool/APKBUILD @@ -0,0 +1,34 @@ +# Contributor: Stuart Cardall <developer@it-offshore.co.uk> +# Contributor: Stefan Wagner <stw@bit-strickerei.de> +# Maintainer: Max Rees <maxcrees@me.com> +pkgname=xdotool +pkgver=3.20160805.1 +pkgrel=0 +pkgdesc="Tool to simulate keyboard/mouse input" +url="https://www.semicomplete.com/projects/xdotool/" +arch="all" +options="!check" # Requires running X11 server +license="BSD-3-Clause" +depends="" +depends_dev="libx11-dev libxtst-dev libxinerama-dev libxkbcommon-dev" +makedepends="$depends_dev perl" +#checkdepends="xvfb ruby-minitest cmd:which lsof xdpyinfo xterm xwininfo" +subpackages="$pkgname-dev $pkgname-doc" +source="https://github.com/jordansissel/xdotool/releases/download/v$pkgver/xdotool-$pkgver.tar.gz" + +build() { + cd "$builddir" + make WITHOUT_RPATH_FIX=1 +} + +check() { + cd "$builddir" + make test +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" PREFIX="/usr" INSTALLMAN="/usr/share/man" install +} + +sha512sums="e27b1029ee954ea17643ed489a00a1856e5687b03772c0f10a8e50cde3c3c957b57a3ba9890005474a744a228ef4827a83770d6890479c37a1f98f4fd7b1ff6c xdotool-3.20160805.1.tar.gz" diff --git a/user/xf86-input-libinput/APKBUILD b/user/xf86-input-libinput/APKBUILD index 246e3afd1..ad5c691bc 100644 --- a/user/xf86-input-libinput/APKBUILD +++ b/user/xf86-input-libinput/APKBUILD @@ -1,7 +1,7 @@ # Contributor: Sören Tempel <soeren+alpine@soeren-tempel.net> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=xf86-input-libinput -pkgver=0.28.0 +pkgver=0.28.1 pkgrel=0 pkgdesc="X.Org input driver - libinput universal driver" url="https://www.X.Org/" @@ -36,4 +36,4 @@ package() { install -Dm644 COPYING "$pkgdir"/usr/share/licenses/$pkgname/COPYING } -sha512sums="4276b6aea87ddc83fa1f5e8d8949e34ad117186a6b5b599549231cb90424cd0fa69f3a4701ce529739c676665bb5c936eb447817c9420511d23bc048f6be92a4 xf86-input-libinput-0.28.0.tar.bz2" +sha512sums="2b8cabfbc3490edbe928771ed9d62a0d4a423bc1373fc6cf9d3a6b5937e17ddc48ebb1b70f1191e507024e4b8220c137495cbba825292b51e50709daa7d31623 xf86-input-libinput-0.28.1.tar.bz2" diff --git a/user/xf86-video-ati/APKBUILD b/user/xf86-video-ati/APKBUILD index e5fd1de9a..647ae8776 100644 --- a/user/xf86-video-ati/APKBUILD +++ b/user/xf86-video-ati/APKBUILD @@ -1,7 +1,7 @@ # Maintainer: Natanael Copa <ncopa@alpinelinux.org> pkgname=xf86-video-ati -pkgver=18.0.1 -pkgrel=1 +pkgver=18.1.0 +pkgrel=0 pkgdesc="ATI video driver for X11" url="https://www.X.Org/" arch="all" @@ -31,4 +31,4 @@ package() { install -Dm644 COPYING "$pkgdir"/usr/share/licenses/$pkgname/COPYING } -sha512sums="b468a78503a596bbf71a1b91b231ce1fa32908f619ff2dfe249352d046696a3641f2a9ff065e32545fff77100134b4b237591215e78ef885b6509d6b16112d14 xf86-video-ati-18.0.1.tar.bz2" +sha512sums="7a58c9a6cb4876bd2ff37d837372b4e360e81fec7de6a6c7a48d70a5338d62745f734f5d4207f30aa368ff2d9ef44f5f1ef36afd73802a618998c16fe395ed53 xf86-video-ati-18.1.0.tar.bz2" diff --git a/user/xf86-video-intel/APKBUILD b/user/xf86-video-intel/APKBUILD new file mode 100644 index 000000000..6c9f0d745 --- /dev/null +++ b/user/xf86-video-intel/APKBUILD @@ -0,0 +1,47 @@ +# Contributor: Natanael Copa <ncopa@alpinelinux.org> +# Maintainer: Max Rees <maxcrees@me.com> +pkgname=xf86-video-intel +verbase=2.99.917 +pkgver=${verbase}_git20180803 +pkgrel=0 +pkgdesc="Legacy X.Org driver for Intel graphics cards" +url="https://xorg.freedesktop.org" +arch="x86 x86_64" +options="!check" # No test suite. +license="MIT" +subpackages="$pkgname-doc" +depends="mesa-dri-intel" +makedepends="xorg-server-dev libxi-dev libdrm-dev mesa-dev libxvmc-dev + xcb-util-dev eudev-dev util-macros autoconf automake libtool xorgproto + " +source="https://dev.sick.bike/$pkgname-$pkgver.tar.gz" +giturl="https://gitlab.freedesktop.org/xorg/driver/xf86-video-intel.git" +reporev="3d395062ce73f85e8340218df01c2ebf4bc25023" + +prepare() { + cd "$builddir" + default_prepare + autoreconf -vif +} + +build() { + cd "$builddir" + export LDFLAGS="$LDFLAGS -Wl,-z,lazy" + ./configure \ + --build=$CBUILD \ + --host=$CHOST \ + --prefix=/usr \ + --enable-xvmc \ + --disable-selective-werror \ + --with-default-dri=3 + make +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + install -Dm644 COPYING "$pkgdir"/usr/share/licenses/$pkgname/COPYING + rm "$pkgdir"/usr/libexec/xf86-video-intel-backlight-helper +} + +sha512sums="a96e627ed1b3fb6b66f02caaafb0f94967df9a2409158aacc9d8958538ef47bd84176ce71a4785f21944beb764450b1560c6dc59eef435f75959e27704be41f1 xf86-video-intel-2.99.917_git20180803.tar.gz" diff --git a/user/xf86-video-nouveau/APKBUILD b/user/xf86-video-nouveau/APKBUILD new file mode 100644 index 000000000..700e82d37 --- /dev/null +++ b/user/xf86-video-nouveau/APKBUILD @@ -0,0 +1,41 @@ +# Contributor: Sören Tempel <soeren+alpine@soeren-tempel.net> +# Maintainer: A. Wilcox <awilfox@adelielinux.org> +pkgname=xf86-video-nouveau +pkgver=1.0.15 +pkgrel=2 +pkgdesc="Open-source X.org drivers for nVidia video cards" +url="https://nouveau.freedesktop.org/" +arch="all" +license="MIT" +depends="mesa-dri-nouveau" +makedepends="eudev-dev libdrm-dev util-macros xorgproto-dev xorg-server-dev" +subpackages="$pkgname-doc" +source="https://www.X.Org/archive/individual/driver/$pkgname-$pkgver.tar.bz2 + dont-strcmp-null.patch + " + +build() { + cd "$builddir" + export LDFLAGS="$LDFLAGS -Wl,-z,lazy" + ./configure \ + --build=$CBUILD \ + --host=$CHOST \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --localstatedir=/var + make +} + +check() { + cd "$builddir" + make check +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install +} + +sha512sums="69a8f8e7920d893f17d14fd9f05e35de246d980a243f3b3b00c05deae7f6bd97e0f51e6ddfa322b4d0815233fe5f656d4e55f54461249f3f24c3bc025a682285 xf86-video-nouveau-1.0.15.tar.bz2 +4cd8b3b9996989a8c9302a5ba77aa9f794fde7559d9f131d5bb4b3174d68be85140834719384c22686b63c89242bdf09696c0c1a98b632f7e3a4f46522f49c3b dont-strcmp-null.patch" diff --git a/user/xf86-video-nouveau/dont-strcmp-null.patch b/user/xf86-video-nouveau/dont-strcmp-null.patch new file mode 100644 index 000000000..23c4fd216 --- /dev/null +++ b/user/xf86-video-nouveau/dont-strcmp-null.patch @@ -0,0 +1,33 @@ +From 69aecdd305defdd014bc92b82acc6000988511cf Mon Sep 17 00:00:00 2001 +From: Adam Jackson <ajax@redhat.com> +Date: Tue, 13 Jun 2017 09:23:42 -0400 +Subject: modesetting: Validate the atom for enum properties + +The client could have said anything here, and if what they said doesn't +actually name an atom NameForAtom() will return NULL, and strcmp() will +be unhappy about that. + +[copied from xserver d4995a3936ae283b9080fdaa0905daa669ebacfc] + +Signed-off-by: Adam Jackson <ajax@redhat.com> +--- + src/drmmode_display.c | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/src/drmmode_display.c b/src/drmmode_display.c +index 2b71c9c..04a0b57 100644 +--- a/src/drmmode_display.c ++++ b/src/drmmode_display.c +@@ -1081,7 +1081,8 @@ drmmode_output_set_property(xf86OutputPtr output, Atom property, + if (value->type != XA_ATOM || value->format != 32 || value->size != 1) + return FALSE; + memcpy(&atom, value->data, 4); +- name = NameForAtom(atom); ++ if (!(name = NameForAtom(atom))) ++ return FALSE; + + /* search for matching name string, then set its value down */ + for (j = 0; j < p->mode_prop->count_enums; j++) { +-- +cgit v1.1 + diff --git a/user/xfburn/APKBUILD b/user/xfburn/APKBUILD new file mode 100644 index 000000000..e9e904448 --- /dev/null +++ b/user/xfburn/APKBUILD @@ -0,0 +1,38 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=xfburn +pkgver=0.5.5 +pkgrel=0 +pkgdesc="CD burning utility for the XFCE desktop environment" +url="https://xfce.org" +arch="all" +license="GPL-2.0+" +makedepends="intltool libburn-dev libisofs-dev gtk+3.0-dev gtk+2.0-dev + libxfce4ui-dev exo-dev libgudev-dev gstreamer-dev gst-plugins-base-dev" +subpackages="$pkgname-doc $pkgname-lang" +langdir="/usr/lib/locale" +source="http://archive.xfce.org/src/apps/xfburn/0.5/xfburn-$pkgver.tar.bz2" + +build() { + cd "$builddir" + ./configure \ + --build=$CBUILD \ + --host=$CHOST \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --localstatedir=/var + make +} + +check() { + cd "$builddir" + make check +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install +} + +sha512sums="37574aa7dcec65c26a8fd5019c3776196763fa1ebb0f531002f5bcb72a6eb0ec19ed994dd14726988766d890ef257c39c26e64ca3f5944386c03d9b54c26a90a xfburn-0.5.5.tar.bz2" diff --git a/user/xfce-desktop/APKBUILD b/user/xfce-desktop/APKBUILD new file mode 100644 index 000000000..7044a7dd7 --- /dev/null +++ b/user/xfce-desktop/APKBUILD @@ -0,0 +1,28 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=xfce-desktop +pkgver=4.13 +pkgrel=0 +arch="noarch" +pkgdesc="Complete XFCE desktop environment" +url="https://xfce.org" +license="NCSA" +options="!check" # meta package, no tests needed. +depends="xfburn xfce4-power-manager xfce4-settings xfce4-volumed-pulse + xfdesktop xfce4-appfinder xfce4-panel xfce4-screenshooter + xfce4-taskmanager xfconf xfce4-dict xfce4-panel-profiles + xfce4-session xfdashboard xfmpc xfwm4 xfce4-terminal + xfce4-notifyd" +source="org.adelie-linux.about-xfce.desktop" +builddir="$srcdir/$pkgname-$pkgver" + +build() { + cd "$srcdir" +} + +package() { + cd "$srcdir" + install -D -m644 "$srcdir"/org.adelie-linux.about-xfce.desktop \ + "$pkgdir"/usr/share/applications/org.adelie-linux.about-xfce.desktop +} +sha512sums="362793e478e3fb0c6d7dca1f52f582a641ff4582ad0c0d6d1cbe28f1255fc6cd7918ea6b24a5d905a59275f67c44703bf8c78580642c4e0147b539842a6f372f org.adelie-linux.about-xfce.desktop" diff --git a/user/xfce-desktop/org.adelie-linux.about-xfce.desktop b/user/xfce-desktop/org.adelie-linux.about-xfce.desktop new file mode 100644 index 000000000..c848c37eb --- /dev/null +++ b/user/xfce-desktop/org.adelie-linux.about-xfce.desktop @@ -0,0 +1,8 @@ +[Desktop Entry] +Type=Application +Version=1.0 +Name=About XFCE +Comment=Learn about the XFCE desktop +Icon=dialog-information +Categories=XFCE +Exec=xdg-open https://xfce.org diff --git a/user/xfce4-appfinder/APKBUILD b/user/xfce4-appfinder/APKBUILD new file mode 100644 index 000000000..7edd9dcfa --- /dev/null +++ b/user/xfce4-appfinder/APKBUILD @@ -0,0 +1,37 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=xfce4-appfinder +pkgver=4.13.1 +pkgrel=0 +pkgdesc="An application finder for the XFCE desktop environment" +url="https://xfce.org" +arch="all" +license="GPL-2.0+" +makedepends="intltool gtk+3.0-dev libxfce4util-dev libxfce4ui-dev garcon-dev" +subpackages="$pkgname-lang" +langdir="/usr/lib/locale" +source="http://archive.xfce.org/src/xfce/xfce4-appfinder/4.13/xfce4-appfinder-$pkgver.tar.bz2" + +build() { + cd "$builddir" + ./configure \ + --build=$CBUILD \ + --host=$CHOST \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --localstatedir=/var + make +} + +check() { + cd "$builddir" + make check +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install +} + +sha512sums="1be1508bea87e9ff7763dc6a8dd0a45b3e1ef39400486b9926de190e146c4c3fd96d08508d32c53a99ff92e98c4cc504e074f651273aac917a79e5df71022116 xfce4-appfinder-4.13.1.tar.bz2" diff --git a/user/xfce4-dict/APKBUILD b/user/xfce4-dict/APKBUILD new file mode 100644 index 000000000..cee0a0c01 --- /dev/null +++ b/user/xfce4-dict/APKBUILD @@ -0,0 +1,36 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=xfce4-dict +pkgver=0.8.1 +pkgrel=0 +pkgdesc="Dictionary application for the XFCE desktop environment" +url="https://xfce.org" +arch="all" +license="GPL-2.0+" +makedepends="intltool glib-dev gtk+3.0-dev libxfce4ui-dev xfce4-panel-dev" +subpackages="$pkgname-doc" +source="http://archive.xfce.org/src/apps/xfce4-dict/0.8/xfce4-dict-$pkgver.tar.bz2" +sha512sums="6cadc479afe5bede536915f8094f4c3ae80139cd11f4b594ee17d28373e5ee3f60a918193b0eefb2e247dfd8780d632e8b508538fd101b4064e36260fc30c67e xfce4-dict-0.8.1.tar.bz2" + +build() { + cd "$builddir" + ./configure \ + --build=$CBUILD \ + --host=$CHOST \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --localstatedir=/var + make +} + +check() { + cd "$builddir" + make check +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install +} + diff --git a/user/xfce4-notifyd/APKBUILD b/user/xfce4-notifyd/APKBUILD new file mode 100644 index 000000000..25d72569b --- /dev/null +++ b/user/xfce4-notifyd/APKBUILD @@ -0,0 +1,38 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=xfce4-notifyd +pkgver=0.4.2 +pkgrel=0 +pkgdesc="Notification service for the XFCE desktop environment" +url="https://xfce.org" +arch="all" +license="GPL-2.0-only AND GPL-2.0+" +makedepends="intltool libice-dev gtk+3.0-dev libxfce4util-dev libxfce4ui-dev + xfce4-panel-dev libnotify-dev dbus-glib-dev" +subpackages="$pkgname-dev $pkgname-doc $pkgname-lang" +langdir="/usr/lib/locale" +source="http://archive.xfce.org/src/apps/xfce4-notifyd/0.4/xfce4-notifyd-$pkgver.tar.bz2" +sha512sums="1cabf478928cbcc13e9f03b2540470c5568bc665b196a8617a0e3b52ce4fe3bd9fdb5e199c4e52afe51c4edab8ba949c4551f65ce77c5fae7fddccd0086fb601 xfce4-notifyd-0.4.2.tar.bz2" + +build() { + cd "$builddir" + LIBS="-lX11" ./configure \ + --build=$CBUILD \ + --host=$CHOST \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --localstatedir=/var + make +} + +check() { + cd "$builddir" + make check +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install +} + diff --git a/user/xfce4-panel-profiles/APKBUILD b/user/xfce4-panel-profiles/APKBUILD new file mode 100644 index 000000000..f30ebb39a --- /dev/null +++ b/user/xfce4-panel-profiles/APKBUILD @@ -0,0 +1,33 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=xfce4-panel-profiles +pkgver=1.0.8 +pkgrel=0 +pkgdesc="Application for managing XFCE panel layouts" +url="https://xfce.org" +arch="noarch" +options="!check" # no tests +license="GPL-3.0+" +depends="python3" +makedepends="intltool cmd:which" +subpackages="$pkgname-doc $pkgname-lang" +source="http://archive.xfce.org/src/apps/xfce4-panel-profiles/1.0/xfce4-panel-profiles-$pkgver.tar.bz2" +sha512sums="2d7980a79250414cc4611ccf573c2a3ee5eb510cf3ef6c32035ba23197eee1fded2e158cb50714dd935070916b07b3f33db02570f3d46a598144b4a2d3979ff4 xfce4-panel-profiles-1.0.8.tar.bz2" + +build() { + cd "$builddir" + ./configure \ + --prefix=/usr + make +} + +check() { + cd "$builddir" + make check +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install +} + diff --git a/user/xfce4-panel/APKBUILD b/user/xfce4-panel/APKBUILD new file mode 100644 index 000000000..b58725e9d --- /dev/null +++ b/user/xfce4-panel/APKBUILD @@ -0,0 +1,38 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=xfce4-panel +pkgver=4.13.3 +pkgrel=0 +pkgdesc="Panel for the XFCE desktop environment" +url="https://xfce.org" +arch="all" +license="LGPL-2.1+ AND GPL-2.0+" +makedepends="intltool gtk+3.0-dev libice-dev libxfce4util-dev garcon-dev exo-dev + libwnck-dev" +subpackages="$pkgname-dev $pkgname-doc $pkgname-lang" +langdir="/usr/lib/locale" +source="http://archive.xfce.org/src/xfce/xfce4-panel/4.13/xfce4-panel-$pkgver.tar.bz2" +sha512sums="99921ffc295b0e00689df50946ea326496c6fca68d6dfc6a563c0fb9e18bef1e537659963e3a0e6ee83756417565ac3531bc43e0e909dbb369068e4905bde045 xfce4-panel-4.13.3.tar.bz2" + +build() { + cd "$builddir" + ./configure \ + --build=$CBUILD \ + --host=$CHOST \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --localstatedir=/var + make +} + +check() { + cd "$builddir" + make check +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install +} + diff --git a/user/xfce4-power-manager/APKBUILD b/user/xfce4-power-manager/APKBUILD new file mode 100644 index 000000000..dc6232180 --- /dev/null +++ b/user/xfce4-power-manager/APKBUILD @@ -0,0 +1,38 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=xfce4-power-manager +pkgver=1.6.1 +pkgrel=0 +pkgdesc="Power management support for the XFCE desktop environment" +url="https://xfce.org" +arch="all" +license="GPL-2.0+" +makedepends="intltool gtk+3.0-dev libxfce4ui-dev libice-dev libnotify-dev + upower-dev xfce4-panel-dev" +subpackages="$pkgname-doc $pkgname-lang" +langdir="/usr/lib/locale" +source="http://archive.xfce.org/src/xfce/xfce4-power-manager/1.6/xfce4-power-manager-$pkgver.tar.bz2" +sha512sums="b81ce1b35892a6cd0b1d4fb590ccc25b906cde6f782de2fffbe78ea89e00df15e51ea1f47576c173b7512cd617f5142868fca8cf81519b6fe165a5ecc67a5478 xfce4-power-manager-1.6.1.tar.bz2" + +build() { + cd "$builddir" + ./configure \ + --build=$CBUILD \ + --host=$CHOST \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --localstatedir=/var + make +} + +check() { + cd "$builddir" + make check +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install +} + diff --git a/user/xfce4-screenshooter/APKBUILD b/user/xfce4-screenshooter/APKBUILD new file mode 100644 index 000000000..47e3f889b --- /dev/null +++ b/user/xfce4-screenshooter/APKBUILD @@ -0,0 +1,36 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=xfce4-screenshooter +pkgver=1.9.3 +pkgrel=0 +pkgdesc="Screenshot tool for the XFCE desktop environment" +url="https://xfce.org" +arch="all" +license="GPL-2.0+" +makedepends="intltool libxfce4ui-dev xfce4-panel-dev libsoup-dev exo-dev" +subpackages="$pkgname-doc" +source="http://archive.xfce.org/src/apps/xfce4-screenshooter/1.9/xfce4-screenshooter-$pkgver.tar.bz2" +sha512sums="ba59fdca3900143a50b3b858986b1152d4574d302d2e041a5287933427a67f64542ca691c130030937344433ea893a1f082086f9c02a9edccaeedbdc0a2a50a2 xfce4-screenshooter-1.9.3.tar.bz2" + +build() { + cd "$builddir" + ./configure \ + --build=$CBUILD \ + --host=$CHOST \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --localstatedir=/var + make +} + +check() { + cd "$builddir" + make check +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install +} + diff --git a/user/xfce4-session/APKBUILD b/user/xfce4-session/APKBUILD new file mode 100644 index 000000000..05c391a80 --- /dev/null +++ b/user/xfce4-session/APKBUILD @@ -0,0 +1,38 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=xfce4-session +pkgver=4.13.1 +pkgrel=0 +pkgdesc="Session management for the XFCE desktop environment" +url="https://xfce.org" +arch="all" +license="GPL-2.0+ AND LGPL-2.0+" +makedepends="intltool gtk+3.0-dev libice-dev libsm-dev libxfce4util-dev + libxfce4ui-dev libwnck-dev iceauth dbus-glib-dev" +subpackages="$pkgname-dev $pkgname-doc $pkgname-lang" +langdir="/usr/lib/locale" +source="http://archive.xfce.org/src/xfce/xfce4-session/4.13/xfce4-session-$pkgver.tar.bz2" +sha512sums="5845e3591919e23ca176199e81075a097ef9d65cbcf23b34d84afc649a307bfa8c6492e3a01855cacff9328da809725213ec1fa9d76024c0a0c25cce3c51da1b xfce4-session-4.13.1.tar.bz2" + +build() { + cd "$builddir" + ./configure \ + --build=$CBUILD \ + --host=$CHOST \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --localstatedir=/var + make +} + +check() { + cd "$builddir" + make check +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install +} + diff --git a/user/xfce4-settings/APKBUILD b/user/xfce4-settings/APKBUILD new file mode 100644 index 000000000..4b894e6ee --- /dev/null +++ b/user/xfce4-settings/APKBUILD @@ -0,0 +1,40 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=xfce4-settings +pkgver=4.13.5 +pkgrel=0 +pkgdesc="GUI settings application for the XFCE desktop environment" +url="https://xfce.org" +arch="all" +license="GPL-2.0+ AND MIT AND LGPL-2.0+" +makedepends="intltool exo-dev garcon-dev libnotify-dev upower-dev + libxklavier-dev xf86-input-libinput-dev" +subpackages="$pkgname-lang" +langdir="/usr/lib/locale" +source="http://archive.xfce.org/src/xfce/xfce4-settings/4.13/xfce4-settings-$pkgver.tar.bz2" + +build() { + cd "$builddir" + ./configure \ + --build=$CBUILD \ + --host=$CHOST \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --localstatedir=/var \ + --enable-pluggable-dialogs \ + --enable-sound-settings + make +} + +check() { + cd "$builddir" + make check +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install +} + +sha512sums="5e7b13b25767091ab0b1a5683359f33e4a86151dd9321681fc4d896fcd9cc569effaebfbab70bc734e07041e9fbb1c3015f9a177146de8a128c4a539462dba5e xfce4-settings-4.13.5.tar.bz2" diff --git a/user/xfce4-taskmanager/APKBUILD b/user/xfce4-taskmanager/APKBUILD new file mode 100644 index 000000000..172a3bb47 --- /dev/null +++ b/user/xfce4-taskmanager/APKBUILD @@ -0,0 +1,36 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=xfce4-taskmanager +pkgver=1.2.1 +pkgrel=0 +pkgdesc="Process manager for the XFCE desktop environment" +url="https://xfce.org" +arch="all" +license="GPL-2.0+" +makedepends="intltool gtk+3.0-dev gtk+2.0-dev libxmu-dev libwnck-dev" +source="http://archive.xfce.org/src/apps/xfce4-taskmanager/1.2/xfce4-taskmanager-$pkgver.tar.bz2" +sha512sums="72a1ea75403ef5b96d461f0e4846374f7aa3eebbdd09a1a25c49278e4909904ed6305fe6a06f3a2fc370e191421726b96924e35427253428e968665155808d4e xfce4-taskmanager-1.2.1.tar.bz2" + +build() { + cd "$builddir" + ./configure \ + --build=$CBUILD \ + --host=$CHOST \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --localstatedir=/var \ + --enable-gtk3 + make +} + +check() { + cd "$builddir" + make check +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install +} + diff --git a/user/xfce4-terminal/APKBUILD b/user/xfce4-terminal/APKBUILD new file mode 100644 index 000000000..eca6f23c5 --- /dev/null +++ b/user/xfce4-terminal/APKBUILD @@ -0,0 +1,37 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=xfce4-terminal +pkgver=0.8.7.4 +pkgrel=0 +pkgdesc="Terminal for the XFCE desktop environment" +url="https://xfce.org" +arch="all" +license="GPL-2.0+" +makedepends="intltool gtk+3.0-dev vte-dev libxfce4ui-dev" +subpackages="$pkgname-doc $pkgname-lang" +langdir="/usr/lib/locale" +source="http://archive.xfce.org/src/apps/xfce4-terminal/0.8/xfce4-terminal-$pkgver.tar.bz2" + +build() { + cd "$builddir" + ./configure \ + --build=$CBUILD \ + --host=$CHOST \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --localstatedir=/var + make +} + +check() { + cd "$builddir" + make check +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install +} + +sha512sums="de56c08d5be47583484acf9aa5b3c0a0f14b1ac2790e0f6b59db61f80d71f871ff87e94f9353a0cc187cf1d9dff643e40ce15ed60a24d550843d898eee3d62dd xfce4-terminal-0.8.7.4.tar.bz2" diff --git a/user/xfce4-volumed-pulse/APKBUILD b/user/xfce4-volumed-pulse/APKBUILD new file mode 100644 index 000000000..4550ee2f6 --- /dev/null +++ b/user/xfce4-volumed-pulse/APKBUILD @@ -0,0 +1,35 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=xfce4-volumed-pulse +pkgver=0.2.3 +pkgrel=0 +pkgdesc="Pulseaudio volume manager for the XFCE desktop environment" +url="https://xfce.org" +arch="all" +license="GPL-3.0+" +makedepends="gtk+3.0-dev libxfce4ui-dev pulseaudio-dev keybinder-3.0-dev libnotify-dev" +source="http://archive.xfce.org/src/apps/xfce4-volumed-pulse/0.2/xfce4-volumed-pulse-$pkgver.tar.bz2" + +build() { + cd "$builddir" + ./configure \ + --build=$CBUILD \ + --host=$CHOST \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --localstatedir=/var + make +} + +check() { + cd "$builddir" + make check +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install +} + +sha512sums="da190cea2b3993717f35e1ded058613df99f8fa223a90d379d95dff0bc9d44f4fba15bd23ff1b54f11218d20518092d14a2f2b808d4984673d3bb77616c2f3e3 xfce4-volumed-pulse-0.2.3.tar.bz2" diff --git a/user/xfconf/APKBUILD b/user/xfconf/APKBUILD new file mode 100644 index 000000000..d6d99b110 --- /dev/null +++ b/user/xfconf/APKBUILD @@ -0,0 +1,47 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=xfconf +pkgver=4.13.5 +pkgrel=0 +pkgdesc="Configuration framework for the XFCE desktop environment" +url="https://xfce.org" +arch="all" +options="!check" # tests require X11 +license="LGPL-2.1+ AND GPL-2.0+" +depends="dbus" +makedepends="intltool gtk+3.0-dev libxfce4util-dev" +subpackages="$pkgname-dev $pkgname-doc $pkgname-lang" +langdir="/usr/lib/locale" +source="http://archive.xfce.org/src/xfce/xfconf/4.13/xfconf-$pkgver.tar.bz2" +sha512sums="34e6b99be0b288707f8632c5fe4f2e66e01ec3950f4d194a7007afb4bc1cfe8bea44f8f80873de2364680481921332c9860b23bca4ced94ecb95c9199df5315b xfconf-4.13.5.tar.bz2" +builddir="$srcdir/xfconf-$pkgver" + +build() { + cd "$builddir" + ./configure \ + --build=$CBUILD \ + --host=$CHOST \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --localstatedir=/var + make +} + +check() { + cd "$builddir" + make check +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install +} + +perl() { + depends="perl perl-glib" + pkgdesc="Perl bindings for xfconf" + mkdir -p "$subpkgdir"/usr/lib + mv "$pkgdir"/usr/lib/perl5 "$subpkgdir"/usr/lib +} + diff --git a/user/xfdashboard/APKBUILD b/user/xfdashboard/APKBUILD new file mode 100644 index 000000000..b192385d0 --- /dev/null +++ b/user/xfdashboard/APKBUILD @@ -0,0 +1,38 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=xfdashboard +pkgver=0.7.5 +pkgrel=0 +pkgdesc="Gnome dashboard clone for the XFCE desktop environment" +url="https://xfce.org" +arch="all" +license="GPL-2.0+" +makedepends="intltool gtk+3.0-dev libwnck-dev libice-dev garcon-dev + libxfce4ui-dev clutter-dev" +subpackages="$pkgname-dev $pkgname-lang" +langdir="/usr/lib/locale" +source="http://archive.xfce.org/src/apps/xfdashboard/0.7/xfdashboard-$pkgver.tar.bz2" + +build() { + cd "$builddir" + ./configure \ + --build=$CBUILD \ + --host=$CHOST \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --localstatedir=/var + make +} + +check() { + cd "$builddir" + make check +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install +} + +sha512sums="5d32aa3a49e02d85ca92bee6aa37a3b743e50ca5d992128decea5846e8c9008a9f5bdb98cc0ee3e980761a6538a4867ff28410e066ef22f0aa2c2bd4c5ce1523 xfdashboard-0.7.5.tar.bz2" diff --git a/user/xfdesktop/APKBUILD b/user/xfdesktop/APKBUILD new file mode 100644 index 000000000..b061e50ff --- /dev/null +++ b/user/xfdesktop/APKBUILD @@ -0,0 +1,38 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=xfdesktop +pkgver=4.13.2 +pkgrel=0 +pkgdesc="Desktop manager for the XFCE desktop environment" +url="https://xfce.org" +arch="all" +license="GPL-2.0+" +makedepends="intltool gtk+3.0-dev libxfce4util-dev libxfce4ui-dev libwnck-dev + exo-dev garcon-dev libnotify-dev thunar-dev" +subpackages="$pkgname-doc $pkgname-lang" +langdir="/usr/lib/locale" +source="http://archive.xfce.org/src/xfce/xfdesktop/4.13/xfdesktop-$pkgver.tar.bz2" +sha512sums="0002ed639f8554144d8c921ca5bd9d1c2ed634baa11c98f95685c8a636ae6bdc87f8df19aa138fe4eda591facba964451a10aef6ba303be1fad66013bb06ae13 xfdesktop-4.13.2.tar.bz2" + +build() { + cd "$builddir" + ./configure \ + --build=$CBUILD \ + --host=$CHOST \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --localstatedir=/var + make +} + +check() { + cd "$builddir" + make check +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install +} + diff --git a/user/xfmpc/APKBUILD b/user/xfmpc/APKBUILD new file mode 100644 index 000000000..0b13bd5a2 --- /dev/null +++ b/user/xfmpc/APKBUILD @@ -0,0 +1,37 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=xfmpc +pkgver=0.2.3 +pkgrel=0 +pkgdesc="Graphical music player daemon client for the XFCE desktop environment" +url="https://xfce.org" +arch="all" +license="GPL-2.0+ AND LGPL-2.0+" +makedepends="intltool gtk+2.0-dev libxfce4ui-dev libmpd-dev" +subpackages="$pkgname-doc $pkgname-lang" +langdir="/usr/lib/locale" +source="http://archive.xfce.org/src/apps/xfmpc/0.2/xfmpc-$pkgver.tar.bz2" + +build() { + cd "$builddir" + ./configure \ + --build=$CBUILD \ + --host=$CHOST \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --localstatedir=/var + make +} + +check() { + cd "$builddir" + make check +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install +} + +sha512sums="3f592fdd559817051f7720bafc07fc66b39f682cc20286c12d54c4bd607e85bb0a722c567264a29224971b4ac14db51b0b44b233a16cccd9d17579a50549a3be xfmpc-0.2.3.tar.bz2" diff --git a/user/xfwm4/APKBUILD b/user/xfwm4/APKBUILD new file mode 100644 index 000000000..14451017a --- /dev/null +++ b/user/xfwm4/APKBUILD @@ -0,0 +1,38 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=xfwm4 +pkgver=4.13.1 +pkgrel=0 +pkgdesc="Window manager for the XFCE desktop environment" +url="https://xfce.org" +arch="all" +license="GPL-2.0+" +makedepends="intltool gtk+3.0-dev libxfce4util-dev libxfce4ui-dev libwnck-dev + gobject-introspection-dev vala-dev" +subpackages="$pkgname-lang" +langdir="/usr/lib/locale" +source="http://archive.xfce.org/src/xfce/xfwm4/4.13/xfwm4-$pkgver.tar.bz2" +sha512sums="2ac5acdefff3a89b8525719b345dfeb2dc71104b4da341afe99d7c57c049753c4cdb81a512d1f344e5fb463c7143673e83316b63888777bdcf254c4a07ca8320 xfwm4-4.13.1.tar.bz2" + +build() { + cd "$builddir" + ./configure \ + --build=$CBUILD \ + --host=$CHOST \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --localstatedir=/var + make +} + +check() { + cd "$builddir" + make check +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install +} + diff --git a/user/xinput/APKBUILD b/user/xinput/APKBUILD new file mode 100644 index 000000000..2cb5822fe --- /dev/null +++ b/user/xinput/APKBUILD @@ -0,0 +1,33 @@ +# Contributor: Johannes Matheis <jomat+alpinebuild@jmt.gr> +# Maintainer: Dan Theisen <djt@hxx.in> +pkgname=xinput +pkgver=1.6.2 +pkgrel=0 +pkgdesc="Utility to configure and test XInput devices" +url="http://xorg.freedesktop.org/" +arch="all" +options="!check" # No test suite. +license="X11" +makedepends="util-macros libx11-dev libxext-dev libxi-dev libxrandr-dev + libxinerama-dev" +subpackages="$pkgname-doc" +source="http://www.x.org/archive/individual/app/$pkgname-$pkgver.tar.bz2" + +build() { + cd "$builddir" + ./configure \ + --build=$CBUILD \ + --host=$CHOST \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --localstatedir=/var + make +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install +} + +sha512sums="dbef3a87dd47bb8c593f1305bea7978697a12434a4992584e4124d745bb366812366b44fc205159137a3db6f7b8338effd1b90641a194497b19159b9fd91939e xinput-1.6.2.tar.bz2" diff --git a/user/xkeyboard-config/APKBUILD b/user/xkeyboard-config/APKBUILD index 28bd5ede7..c884ad87b 100644 --- a/user/xkeyboard-config/APKBUILD +++ b/user/xkeyboard-config/APKBUILD @@ -1,6 +1,6 @@ # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=xkeyboard-config -pkgver=2.24 +pkgver=2.25 pkgrel=0 pkgdesc="Keyboard configuration files for X11" url="https://www.freedesktop.org/wiki/Software/XKeyboardConfig" @@ -37,4 +37,4 @@ package() { install -Dm644 COPYING "$pkgdir"/usr/share/licenses/$pkgname/COPYING } -sha512sums="96b65d18a85443a9bf93d65a4423da6e2b3d44882dae6a03bf46768a92017e9762cf3721361ba399c2873d53782944d0292eb673484f1cd8a8bdbf643e7a1dc0 xkeyboard-config-2.24.tar.bz2" +sha512sums="2d9d6bdd885edc8e03e5a2c136c3b29b4ea795122709fa210bf151c4e7416a44fa2928bb29137ee8c6691d8646c1f645748576dea3f940ce84c8d4d0f91e09eb xkeyboard-config-2.25.tar.bz2" diff --git a/user/xmoto/APKBUILD b/user/xmoto/APKBUILD new file mode 100644 index 000000000..7efa7a9c6 --- /dev/null +++ b/user/xmoto/APKBUILD @@ -0,0 +1,58 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: A. Wilcox <awilfox@adelielinux.org> +pkgname=xmoto +pkgver=0.5.11 +pkgrel=0 +pkgdesc="Challenging 2D motocross platform game" +url="https://xmoto.tuxfamily.org/" +arch="all" +license="GPL-2.0+" +depends="" +makedepends="bzip2-dev curl-dev glu-dev libjpeg-turbo-dev libpng-dev + libxdg-basedir-dev libxml2-dev lua5.3-dev mesa-dev ode-dev sdl-dev + sdl_mixer-dev sdl_net-dev sdl_ttf-dev sqlite-dev zlib-dev" +subpackages="$pkgname-doc $pkgname-lang" +source="http://download.tuxfamily.org/xmoto/xmoto/0.5.11/xmoto-$pkgver-src.tar.gz + stupid-lua.patch + utf8.patch + " + +prepare() { + cd "$builddir" + default_prepare + update_config_sub + rm -r src/ode +} + +build() { + cd "$builddir" + ./bootstrap + CPPFLAGS="$CPPFLAGS -D_GLIBCXX_USE_CXX11_ABI=0" \ + LDFLAGS="$LDFLAGS $(pkg-config --libs lua)" \ + ./configure \ + --build=$CBUILD \ + --host=$CHOST \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --localstatedir=/var + make +} + +check() { + cd "$builddir" + make check +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + install -D -m644 "$builddir"/extra/xmoto.desktop \ + "$pkgdir"/usr/share/applications/xmoto.desktop + install -D -m644 "$builddir"/extra/xmoto.xpm \ + "$pkgdir"/usr/share/icons/hicolor/48x48/apps/xmoto.xpm +} + +sha512sums="7046745e8f7a045fa2ce1deb3fd75b73b233dc1092f5ecd6dd4e42938f70269a93a3a623a39a1f0520c90643a42dc1ce93c43ad07bf225ff6c50741cc02511f6 xmoto-0.5.11-src.tar.gz +34dc4d83df72d0323d2995b35faacd6c097f1f381805a724c6a8a1edbf59c894e3db68057ef68b65f659d73e9d0976263bc5229b0502281d7c748519de86c55b stupid-lua.patch +a43cafba12864bc2efd978fcef69ac5256b625dd581f02a93bafae7c4edaad9ebcadbd597fe31db77c85747400405c9fb6b55e494b9d6ded893e5d48f37e57ec utf8.patch" diff --git a/user/xmoto/stupid-lua.patch b/user/xmoto/stupid-lua.patch new file mode 100644 index 000000000..d99a1ed4a --- /dev/null +++ b/user/xmoto/stupid-lua.patch @@ -0,0 +1,41 @@ +--- xmoto-0.5.11/configure.in.old 2014-03-29 10:35:24.000000000 +0000 ++++ xmoto-0.5.11/configure.in 2018-09-29 03:51:05.210000000 +0000 +@@ -174,6 +174,7 @@ + AC_CHECK_HEADER(lua50/lua.h, AC_DEFINE(HAVE_LUA50_LUA_H) [USE_LUA_VERSION="5.0"]) + AC_CHECK_HEADER(lua51/lua.h, AC_DEFINE(HAVE_LUA51_LUA_H) [USE_LUA_VERSION="5.1"]) + AC_CHECK_HEADER(lua5.1/lua.h, AC_DEFINE(HAVE_LUA5_1_LUA_H)[USE_LUA_VERSION="5.1"]) ++AC_CHECK_HEADER(lua5.3/lua.h, AC_DEFINE(HAVE_LUA5_3_LUA_H)[USE_LUA_VERSION="5.3"]) + AC_DEFINE(LUA_COMPAT_MODULE, 1) + + AC_LANG_PUSH([C++]) +--- xmoto-0.5.11/src/include/xm_lua.h.old 2011-10-11 20:18:17.000000000 +0000 ++++ xmoto-0.5.11/src/include/xm_lua.h 2018-09-29 03:51:49.230000000 +0000 +@@ -4,7 +4,11 @@ + #include "lauxlib.h" + #include "lualib.h" + #else +- #if defined(HAVE_LUA5_1_LUA_H) ++ #if defined(HAVE_LUA5_3_LUA_H) ++ #include <lua5.3/lua.h> ++ #include <lua5.3/lauxlib.h> ++ #include <lua5.3/lualib.h> ++ #elif defined(HAVE_LUA5_1_LUA_H) + #include <lua5.1/lua.h> + #include <lua5.1/lauxlib.h> + #include <lua5.1/lualib.h> +--- xmoto-0.5.11/src/LuaLibBase.cpp.old 2014-03-29 09:46:24.000000000 +0000 ++++ xmoto-0.5.11/src/LuaLibBase.cpp 2018-09-30 23:34:51.800000000 +0000 +@@ -42,7 +42,13 @@ + luaL_requiref(m_pL, LUA_TABLIBNAME, luaopen_table, 1); + #endif + ++#if LUA_VERSION_NUM < 503 + luaL_openlib(m_pL, i_libname.c_str(), i_reg, 0); ++#else ++ lua_newtable(m_pL); ++ luaL_setfuncs(m_pL, i_reg, 0); ++ lua_setglobal(m_pL, i_libname.c_str()); ++#endif + } + + LuaLibBase::~LuaLibBase() { diff --git a/user/xmoto/utf8.patch b/user/xmoto/utf8.patch new file mode 100644 index 000000000..535bb515e --- /dev/null +++ b/user/xmoto/utf8.patch @@ -0,0 +1,13 @@ +--- xmoto-0.5.11/src/helpers/utf8.h.old 2011-10-11 20:18:14.000000000 +0000 ++++ xmoto-0.5.11/src/helpers/utf8.h 2018-09-30 23:29:10.310000000 +0000 +@@ -18,8 +18,8 @@ + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + =============================================================================*/ + +-#ifndef __UTF8_H__ +-#define __UTF8_H__ ++#ifndef __HELPER_UTF8_H__ ++#define __HELPER_UTF8_H__ + + #include <vector> + #include <string> diff --git a/user/xorg-cf-files/APKBUILD b/user/xorg-cf-files/APKBUILD new file mode 100644 index 000000000..5a438d2bf --- /dev/null +++ b/user/xorg-cf-files/APKBUILD @@ -0,0 +1,38 @@ +# Contributor: Johannes Matheis <jomat+alpinebuild@jmt.gr> +# Maintainer: Dan Theisen <djt@hxx.in> +pkgname=xorg-cf-files +pkgver=1.0.6 +pkgrel=0 +pkgdesc="Data files for the imake utility" +url="http://xorg.freedesktop.org/" +arch="noarch" +license="X11" +options="!check" # This package has no testsuite +depends="" +makedepends="" +subpackages="$pkgname-doc" +source="http://xorg.freedesktop.org/releases/individual/util/${pkgname}-${pkgver}.tar.bz2" + +build() { + cd "$builddir" + ./configure \ + --build=$CBUILD \ + --host=$CHOST \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --infodir=/usr/share/info \ + --localstatedir=/var + make +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install + install -m755 -d "${pkgdir}/usr/share/licenses/${pkgname}" + install -m644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/" +} + +md5sums="28649f34fa23143f1945aa2750e1472a xorg-cf-files-1.0.6.tar.bz2" +sha256sums="4dcf5a9dbe3c6ecb9d2dd05e629b3d373eae9ba12d13942df87107fdc1b3934d xorg-cf-files-1.0.6.tar.bz2" +sha512sums="1749a5fbcda2c15c300028abce79a3304cfb10f215bf98cf30558144eb64f9fa06a69203159f44405224ed567ac5bc0ff1222e3656367f69acc99f44871424fa xorg-cf-files-1.0.6.tar.bz2" diff --git a/user/xorg-server/APKBUILD b/user/xorg-server/APKBUILD index 78a942af4..80d9692a0 100644 --- a/user/xorg-server/APKBUILD +++ b/user/xorg-server/APKBUILD @@ -1,7 +1,7 @@ # Contributor: Łukasz Jendrysik <scadu@yandex.com> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=xorg-server -pkgver=1.20.1 +pkgver=1.20.2 pkgrel=0 pkgdesc="X.Org X11 server" url="https://www.X.Org/" @@ -143,6 +143,6 @@ xwayland() { mv "$pkgdir"/usr/bin/Xwayland "$subpkgdir"/usr/bin/ } -sha512sums="ef2b93a61683c8ca8d1f14b771e70db65ba119a73db8a46e7cdbf2ac2243e3f4b2732068eb5aa5d7b76f460db995a3c04390870198a5210ec30df4360ad9f94b xorg-server-1.20.1.tar.bz2 +sha512sums="1c87d78b14529dd4b438ef038118c8540d1d17bdd58bf08ec5408a2ddbe8d0dda48033a9a9477cfc2c4c304dd1078fa40968a03c4d0cd3398359dd0fadb8e7c7 xorg-server-1.20.2.tar.bz2 30a78f4278edd535c45ee3f80933427cb029a13abaa4b041f816515fdd8f64f00b9c6aef50d4eba2aaf0d4f333e730399864fd97fa18891273601c77a6637200 autoconfig-sis.patch b799e757a22a61ac283adbd7a8df1ad4eccce0bb6cac38a0c962ba8438bba3cf6637a65bb64859e7b32399fca672283a49960207e186c271ba574580de360d09 fix-musl-arm.patch" diff --git a/user/xorriso/APKBUILD b/user/xorriso/APKBUILD index 7e79453c6..ebaff2e24 100644 --- a/user/xorriso/APKBUILD +++ b/user/xorriso/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=xorriso -pkgver=1.4.9 +pkgver=1.5.0 pkgrel=0 pkgdesc="ISO 9660 Rock Ridge filesystem manipulator" url="https://www.gnu.org/software/xorriso/" @@ -34,4 +34,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="ca22e40f56e7ab61a6f4ac4a8d4189f68cce427a10d63e3b26af88b64bbd1c76ec6e3fa21818b7c2b6de5ce482caccc8b9de0fc16d8bfd7c9681fccfc8c8dd83 xorriso-1.4.9.tar.gz" +sha512sums="39d74cff30532fba8ac3851245802323babbd2877129ab5bb14d0cab830ee3f2f678f41d922f3c12cb2c642f66f22006bc4ca457e6c1f766f3d1dbce37d29d31 xorriso-1.5.0.tar.gz" diff --git a/user/xterm/APKBUILD b/user/xterm/APKBUILD index 57656637c..7e35c3d49 100644 --- a/user/xterm/APKBUILD +++ b/user/xterm/APKBUILD @@ -1,7 +1,7 @@ # Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> # Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> pkgname=xterm -pkgver=335 +pkgver=337 pkgrel=0 pkgdesc="An X-based terminal emulator" url="https://invisible-island.net/xterm/" @@ -31,4 +31,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="386c3f4c9b3ee7750c4f03316fc94dfc6601d82b0fbac5714031e9e3c6f1acf5c949689fcc58deb8569516977eb88173356d3c890a263b7a1d0f383190a43362 xterm-335.tgz" +sha512sums="fad31aa971a42cf38d3e3db2edc615b408d92226c305654b9276592c6dee075f31c7f082a3f549284f1685a31d5d9dedbda99c2c308a90bd741958f862806609 xterm-337.tgz" diff --git a/user/xwininfo/APKBUILD b/user/xwininfo/APKBUILD new file mode 100644 index 000000000..c9afec639 --- /dev/null +++ b/user/xwininfo/APKBUILD @@ -0,0 +1,34 @@ +# Contributor: Natanael Copa <ncopa@alpinelinux.org> +# Maintainer: Max Rees <maxcrees@me.com> +pkgname=xwininfo +pkgver=1.1.4 +pkgrel=0 +pkgdesc="Window information utility for X" +url="https://cgit.freedesktop.org/xorg/app/xwininfo" +arch="all" +options="!check" # No test suite. +license="MIT AND X11" +depends="" +makedepends="libx11-dev libxext-dev util-macros" +subpackages="$pkgname-doc" +source="https://www.x.org/releases/individual/app/xwininfo-$pkgver.tar.bz2" + +build() { + cd "$builddir" + ./configure \ + --build=$CBUILD \ + --host=$CHOST \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --localstatedir=/var \ + --infodir=/usr/share/info + make +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install +} + +sha512sums="d3ab103a0a311e08d1eabc4346750c21eb7d2fbcdc27cab0989a2624b9cd488911614fcf9832603353450114b1231a8f8262cab16e090a0d458d83ec7b6b959b xwininfo-1.1.4.tar.bz2" |