diff options
Diffstat (limited to 'user')
780 files changed, 24332 insertions, 7470 deletions
diff --git a/user/.rootbld-repositories b/user/.rootbld-repositories index dd670b51f..1f6b7e3cc 100644 --- a/user/.rootbld-repositories +++ b/user/.rootbld-repositories @@ -1,2 +1,2 @@ -https://distfiles.adelielinux.org/adelie/1.0-beta1/system/ -https://distfiles.adelielinux.org/adelie/1.0-beta1/user/ +https://distfiles.adelielinux.org/adelie/current/system/ +https://distfiles.adelielinux.org/adelie/current/user/ diff --git a/user/accountsservice/APKBUILD b/user/accountsservice/APKBUILD index 2ea23a416..2cee00a05 100644 --- a/user/accountsservice/APKBUILD +++ b/user/accountsservice/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=accountsservice -pkgver=0.6.54 +pkgver=0.6.55 pkgrel=0 pkgdesc="D-Bus service for accessing user account information" url="https://www.freedesktop.org/wiki/Software/AccountsService/" @@ -45,5 +45,5 @@ package() { DESTDIR="$pkgdir" ninja -C output install } -sha512sums="5fbcccc286dba60efba905aa79b1b51a5478fe52bf2e256d40d9fc2d7a311aea4ce397365045659a4ef2ecb2cc079130fb1d0107749c3c906c394517056ac1c0 accountsservice-0.6.54.tar.xz -d3cd21c871f66359aae0b4688aeb5f31ba124579212350870540344a489299413a13ad4b66872a9fb549ed3b3664dfbadd03c9b20df3714cb4d26e3f2cf107ce disable-msgfmt" +sha512sums="c12e6a8e80f9b087f97238da4734d2d3a14a7c5cbd870a32a04b00116f176c818c39fb886f6dc72c3e93c136b0c2074ddf8f77e20431fa3bd54f138bea9d262d accountsservice-0.6.55.tar.xz +218b6e28cd277365569c0a214276e7c40a41a3cfd6037a34b86b57dbab4273031089d91fa24191d9a9c30423b8dbb7d946ff62a564783d7f9d002125f9cf27e5 disable-msgfmt" diff --git a/user/accountsservice/disable-msgfmt b/user/accountsservice/disable-msgfmt index 3342f7eab..5db05f140 100644 --- a/user/accountsservice/disable-msgfmt +++ b/user/accountsservice/disable-msgfmt @@ -5,11 +5,11 @@ # Build rules for targets -build data/org.freedesktop.accounts.policy: CUSTOM_COMMAND ../data/org.freedesktop.accounts.policy.in -- COMMAND = /usr/bin/meson --internal msgfmthelper ../data/org.freedesktop.accounts.policy.in data/org.freedesktop.accounts.policy xml /usr/src/packages/user/accountsservice/src/accountsservice-0.6.54/po +- COMMAND = /usr/bin/meson --internal msgfmthelper ../data/org.freedesktop.accounts.policy.in data/org.freedesktop.accounts.policy xml /usr/src/packages/user/accountsservice/src/accountsservice-0.6.55/po - description = Generating$ org.freedesktop.accounts.policy_data_merge$ with$ a$ custom$ command. +#build data/org.freedesktop.accounts.policy: CUSTOM_COMMAND ../data/org.freedesktop.accounts.policy.in -+# COMMAND = /usr/bin/meson --internal msgfmthelper ../data/org.freedesktop.accounts.policy.in data/org.freedesktop.accounts.policy xml /usr/src/packages/user/accountsservice/src/accountsservice-0.6.54/po ++# COMMAND = /usr/bin/meson --internal msgfmthelper ../data/org.freedesktop.accounts.policy.in data/org.freedesktop.accounts.policy xml /usr/src/packages/user/accountsservice/src/accountsservice-0.6.55/po +# description = Generating$ org.freedesktop.accounts.policy_data_merge$ with$ a$ custom$ command. - build src/accounts-generated.c: CUSTOM_COMMAND /usr/src/packages/user/accountsservice/src/accountsservice-0.6.54/data/org.freedesktop.Accounts.xml | /usr/bin/gdbus-codegen - COMMAND = /usr/bin/gdbus-codegen --c-generate-autocleanup all --interface-prefix org.freedesktop. --c-namespace Accounts --body --output src/accounts-generated.c /usr/src/packages/user/accountsservice/src/accountsservice-0.6.54/data/org.freedesktop.Accounts.xml + build src/accounts-generated.c: CUSTOM_COMMAND /usr/src/packages/user/accountsservice/src/accountsservice-0.6.55/data/org.freedesktop.Accounts.xml | /usr/bin/gdbus-codegen + COMMAND = /usr/bin/gdbus-codegen --c-generate-autocleanup all --interface-prefix org.freedesktop. --c-namespace Accounts --body --output src/accounts-generated.c /usr/src/packages/user/accountsservice/src/accountsservice-0.6.55/data/org.freedesktop.Accounts.xml diff --git a/user/adwaita-icon-theme/APKBUILD b/user/adwaita-icon-theme/APKBUILD index 3f182961a..1815af7fb 100644 --- a/user/adwaita-icon-theme/APKBUILD +++ b/user/adwaita-icon-theme/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=adwaita-icon-theme -pkgver=3.30.1 +pkgver=3.32.0 pkgrel=0 pkgdesc="GNOME system icon set" url="https://www.gnome.org/" @@ -10,7 +10,7 @@ license="CC-BY-SA-3.0 OR LGPL-3.0-only" depends="" makedepends="" subpackages="" -source="https://ftp.gnome.org/pub/gnome/sources/adwaita-icon-theme/3.30/adwaita-icon-theme-$pkgver.tar.xz" +source="https://ftp.gnome.org/pub/gnome/sources/adwaita-icon-theme/3.32/adwaita-icon-theme-$pkgver.tar.xz" build() { cd "$builddir" @@ -34,4 +34,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="6ec37190802655156e4883622717e0fa97cad3488008fd78df508675f48dedaf50933365d82e806a8595309d4daf50cb15ef9e7c88d6735e972ecc51d6bcd3d6 adwaita-icon-theme-3.30.1.tar.xz" +sha512sums="9609732cd51c6794d4d86598818bb2a589b0f4b6b795e57f3507dad69b21ef1b2fc2e83e24e937428bbace32fcccf587a5771cbc02c5768206e704f0456a6d1d adwaita-icon-theme-3.32.0.tar.xz" diff --git a/user/alegreya/APKBUILD b/user/alegreya/APKBUILD index 12e45aa4f..354b8c276 100644 --- a/user/alegreya/APKBUILD +++ b/user/alegreya/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=alegreya -pkgver=2.007 +pkgver=2.008 pkgrel=0 pkgdesc="Alegreya serif typeface" url="https://www.huertatipografica.com/en/fonts/alegreya-ht-pro" @@ -19,4 +19,4 @@ package() { install -m644 -Dt "$pkgdir"/usr/share/fonts/X11/OTF/ fonts/otf/*.otf } -sha512sums="7220aaf9f9861ed4f3104aeb16f33267b5cc2139b91ddafbd7ff86f94faeb37bca558c642a03108094d0a60f9db77167c19996fdaeeca3fcac0346205ba4e785 Alegreya-2.007.tar.gz" +sha512sums="ca4b9e7ccdd1568e841bb7bda60d184776ca36266567eef1fdf9ae44f7c688474bd91df93a8a3f59c45e22c02fc7e231bd6bfd0b5763932df8b0f933cdb127e8 Alegreya-2.008.tar.gz" diff --git a/user/alkimia/APKBUILD b/user/alkimia/APKBUILD index 311041c2f..31c586984 100644 --- a/user/alkimia/APKBUILD +++ b/user/alkimia/APKBUILD @@ -1,16 +1,19 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=alkimia -pkgver=7.0.2 +pkgver=8.0.1 pkgrel=0 pkgdesc="Library for common financial functionality" url="https://community.kde.org/Alkimia/libalkimia" arch="all" +options="!check" # WebKit complains about the DOM license="LGPL-2.1+" depends="" depends_dev="gmp-dev qt5-qtbase-dev" -makedepends="$depends_dev cmake extra-cmake-modules" -subpackages="$pkgname-dev" +makedepends="$depends_dev cmake extra-cmake-modules qt5-qtwebkit-dev + kconfig-dev kcoreaddons-dev kdelibs4support-dev knewstuff-dev + kpackage-dev plasma-framework-dev" +subpackages="$pkgname-dev $pkgname-lang" source="https://download.kde.org/stable/alkimia/$pkgver/alkimia-$pkgver.tar.xz" build() { @@ -39,4 +42,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="275ea48cd33caed9393a170efcc6053a581c1cc000862dd73a63bdb6de3e3c3ad2e492901a859e517033e1239e297a43088580553efe32f1d99a85051f5af3e4 alkimia-7.0.2.tar.xz" +sha512sums="be943e854c6c2d3f85332b456be9fb3c3528fac403228a7d4ab9362856d53ea622ba9e96b70f7be47058aa0016eec78381dc7649db3b06938d4547ba1e181517 alkimia-8.0.1.tar.xz" diff --git a/user/alpine/APKBUILD b/user/alpine/APKBUILD new file mode 100644 index 000000000..189057dea --- /dev/null +++ b/user/alpine/APKBUILD @@ -0,0 +1,46 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=alpine +pkgver=2.21 +pkgrel=0 +pkgdesc="Terminal-based email client" +url="http://alpine.x10host.com/alpine/" +arch="all" +license="Apache-2.0" +depends="" +makedepends="aspell-dev krb5-dev linux-pam-dev ncurses-dev openldap-dev + openssl-dev" +subpackages="$pkgname-doc" +source="http://alpine.x10host.com/alpine/release/src/alpine-$pkgver.tar.xz + support-musl.patch" + +prepare() { + cd "$builddir" + default_prepare + autoreconf -vif +} + +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="a2a36a033c8af79810816a7da7185c269808ba6d84d013691fd8b3764c63f5fb2284e6844ec5a5e99d168514ae636debf59fae962533a2916679e4e9109c6264 alpine-2.21.tar.xz +cdf827b5947fd14b6a6c1ad86df4ff1b8be1ffd51279aaa02376b2b60f3de742c54364e18d73d9a75c5c87ed3c8668a3f0c9eb59733f8da195e85833b4364782 support-musl.patch" diff --git a/user/alpine/support-musl.patch b/user/alpine/support-musl.patch new file mode 100644 index 000000000..ab3c2d857 --- /dev/null +++ b/user/alpine/support-musl.patch @@ -0,0 +1,20 @@ +--- ./configure.ac.orig ++++ ./configure.ac +@@ -723,7 +723,7 @@ + else + dnl preload c-client default locations/options + case $host in +- *-linux-gnu*|*-k*bsd*-gnu*|*-gnu*) ++ *-linux-gnu*|*-k*bsd*-gnu*|*-gnu*|*-linux-musl*) + if test -f /etc/fedora-release -o -f /etc/redhat-release -o -f /etc/redhat_version ; then + alpine_SSLTYPE="nopwd" + if test -d /etc/pki/tls ; then +@@ -1059,7 +1059,7 @@ + dnl build from c-client. Most of this will go away when c-client + dnl adopts configure + case "$host" in +- *-linux-gnu*|*-k*bsd*-gnu*|*-gnu*) ++ *-linux-gnu*|*-k*bsd*-gnu*|*-gnu*|*-linux-musl*) + alpine_path_delim="/" + alpine_mode_readonly="(0600)" + if test -f /etc/fedora-release ; then diff --git a/user/analitza/APKBUILD b/user/analitza/APKBUILD index 4dfd623df..e5cf07800 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.12.3 +pkgver=19.04.1 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="d20ac4ce1a9ed5737d6e29f92f86c081cbdded829055d4d077832bdeadd00afa736ee4c6c99a8d7de242d6d8b5165368f6ca05cc9c623a9533b2cf3deedb33a9 analitza-18.12.3.tar.xz" +sha512sums="c0ba20b6776dbf40bdf3a30231a6230f2b5ec0aa632235b09353a30f9f9f8b38da703c58736ee943239d0541b149100be2eaf924d8f435a4367a1e3072720a3b analitza-19.04.1.tar.xz" diff --git a/user/anonymous-pro/APKBUILD b/user/anonymous-pro/APKBUILD index 5d4ece60c..33466e792 100644 --- a/user/anonymous-pro/APKBUILD +++ b/user/anonymous-pro/APKBUILD @@ -1,7 +1,8 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=anonymous-pro -pkgver=1.002 +pkgver=1.003 +_prev=1.002 pkgrel=0 pkgdesc="Fixed-width (monospace) font designed for programming" url="https://www.marksimonson.com/fonts/view/anonymous-pro" @@ -11,12 +12,15 @@ license="OFL-1.1" depends="fontconfig" makedepends="" subpackages="" -source="https://www.marksimonson.com/assets/content/fonts/AnonymousPro-$pkgver.zip" +source="https://www.marksimonson.com/assets/content/fonts/AnonymousPro-$_prev.zip + https://www.marksimonson.com/assets/content/fonts/AnonymousProMinus-$pkgver.zip" builddir="$srcdir/AnonymousPro-1.002.001" package() { - cd "$builddir" - install -m644 -Dt "$pkgdir"/usr/share/fonts/X11/TTF/ *.ttf + cd "$srcdir" + install -m644 -Dt "$pkgdir"/usr/share/fonts/X11/TTF/ AnonymousPro-1.002.001/*.ttf + install -m644 -Dt "$pkgdir"/usr/share/fonts/X11/TTF/ AnonymousProMinus-$pkgver/*.ttf } -sha512sums="7606d520ad79fbf4e13d676c1aff61b764dce74e170f8783b8e606f7907c4b8db0871e5568504d15aa23ca26e925ada4eb6b60fcf27171dccee0d3d32d9a92a1 AnonymousPro-1.002.zip" +sha512sums="7606d520ad79fbf4e13d676c1aff61b764dce74e170f8783b8e606f7907c4b8db0871e5568504d15aa23ca26e925ada4eb6b60fcf27171dccee0d3d32d9a92a1 AnonymousPro-1.002.zip +1c81c449edb80cdcaf10c9779a3b5b2ea09ce9d0c457f620384cb0486cb1987449ba5c5b57de4f8e01b7d3c4fd54e7ec45baf02ab75232b8c29c36381697baf9 AnonymousProMinus-1.003.zip" diff --git a/user/ant/APKBUILD b/user/ant/APKBUILD new file mode 100644 index 000000000..8afaf5929 --- /dev/null +++ b/user/ant/APKBUILD @@ -0,0 +1,58 @@ +# Contributor: Steeve Chailloux <steeve@chaahk.com> +# Contributor: Jakub Jirutka <jakub@jirutka.cz> +# Contributor: Alyx Wolcott <alyx@leuhta.com> +# Maintainer: Alyx Wolcott <alyx@leuhta.com> +pkgname=ant +pkgver=1.10.6 +pkgrel=0 +pkgdesc="Java-based build tool" +url="http://ant.apache.org/" +arch="noarch" +license="Apache-2.0" +makedepends="" +depends="openjdk8" +source="https://www-eu.apache.org/dist/ant/source/apache-$pkgname-$pkgver-src.tar.gz + ant.sh + imageio_fix_java_test.patch + imageio_fix_test.patch" +builddir="$srcdir/apache-$pkgname-$pkgver" + +_anthome="/usr/lib/java/$pkgname" + +build() { + sh ./bootstrap.sh + ./bootstrap/bin/ant dist-lite +} + +check() { + ./bootstrap/bin/ant test +} + +package() { + local destdir="$pkgdir/$_anthome" + + install -dm755 "$destdir"/bin + rm dist/bin/*.bat dist/bin/*.cmd + install -m755 dist/bin/* "$destdir"/bin + + install -dm755 "$pkgdir"/usr/bin + ln -sf $_anthome/bin/ant "$pkgdir"/usr/bin/ant + + install -dm755 "$destdir"/lib + install -m644 dist/lib/*.jar "$destdir"/lib + + # symlink to junit so it's on the javac build path for ant + # matches behavior on ubuntu 9 and makes sense for compatibility + ln -sf ../../junit.jar "$destdir"/lib/junit.jar + + # The license says the NOTICE file should be redistributed for + # derivative works, so lets supply it. + install -m644 -D NOTICE "$pkgdir"/usr/share/licenses/$pkgname/NOTICE + + install -m644 -D $srcdir/$pkgname.sh "$pkgdir"/etc/profile.d/$pkgname.sh +} + +sha512sums="2bef0cf5f53ce9fa6e9dc7a673745f75bcd0df027f9ff07442cf66bc8d7d99e022153b08d20d314061b497763e85d587c3087952b3f5730e5a19b2656f3236fb apache-ant-1.10.6-src.tar.gz +955fe52b415d57716df1338eff6d667d80e06a67bffd53def7d63d96f1224157b724a92df647afe8b3243dea749e221aec1e86d5be01060408fa000ec1132374 ant.sh +9a698041a06ccc6db7765133fc6fabc6f2d0e70b96ff9de594bd836fc05ac33f489968a4fdd12fe044458eb3b99e905ca1e2a62a55acdbacebff9782c82a27de imageio_fix_java_test.patch +1457c7415df1e80c8763b4db9f41cbdebfa58e17bcd263dae9ce31f9ee601650b51a893e4e0a324c974b60a6c2076fddfd78180baca0bcdbff65e9e88b30e063 imageio_fix_test.patch" diff --git a/user/ant/ant.sh b/user/ant/ant.sh new file mode 100644 index 000000000..bab7b972d --- /dev/null +++ b/user/ant/ant.sh @@ -0,0 +1,3 @@ +#!/bin/sh +ANT_HOME="/usr/share/java/ant" +export ANT_HOME diff --git a/user/ant/imageio_fix_java_test.patch b/user/ant/imageio_fix_java_test.patch new file mode 100644 index 000000000..4fa856e73 --- /dev/null +++ b/user/ant/imageio_fix_java_test.patch @@ -0,0 +1,26 @@ +diff --git a/src/tests/junit/org/apache/tools/ant/taskdefs/optional/image/ImageIOTest.java b/src/tests/junit/org/apache/tools/ant/taskdefs/optional/image/ImageIOTest.java +index c96691d..e8cfd29 100644 +--- a/src/tests/junit/org/apache/tools/ant/taskdefs/optional/image/ImageIOTest.java ++++ b/src/tests/junit/org/apache/tools/ant/taskdefs/optional/image/ImageIOTest.java +@@ -86,21 +86,6 @@ public class ImageIOTest { + assertTrue("File was not overwritten.", lastModified < overwrittenLastModified); + } + +- @Test +- public void testDrawOverwriteTrue() { +- buildRule.executeTarget("testSimpleScale"); +- assertThat(buildRule.getLog(), containsString("Processing File")); +- File f = new File(buildRule.getOutputDir(), LARGEIMAGE); +- assumeTrue("Could not change file modification date", +- f.setLastModified(f.lastModified() - FILE_UTILS.getFileTimestampGranularity() * 2)); +- long lastModified = f.lastModified(); +- buildRule.executeTarget("testDrawOverwriteTrue"); +- assertThat(buildRule.getLog(), containsString("Processing File")); +- f = new File(buildRule.getOutputDir(), LARGEIMAGE); +- long overwrittenLastModified = f.lastModified(); +- assertTrue("File was not overwritten.", lastModified < overwrittenLastModified); +- } +- + @Test + public void testOverwriteFalse() { + buildRule.executeTarget("testSimpleScale"); diff --git a/user/ant/imageio_fix_test.patch b/user/ant/imageio_fix_test.patch new file mode 100644 index 000000000..ad3cc3e67 --- /dev/null +++ b/user/ant/imageio_fix_test.patch @@ -0,0 +1,23 @@ +diff --git a/src/etc/testcases/taskdefs/optional/image/imageio.xml b/src/etc/testcases/taskdefs/optional/image/imageio.xml +index a7d6a23..0f0318b 100644 +--- a/src/etc/testcases/taskdefs/optional/image/imageio.xml ++++ b/src/etc/testcases/taskdefs/optional/image/imageio.xml +@@ -59,18 +59,6 @@ + </imageio> + </target> + +- <!-- this should produce a single file in the dest dir, overwriting any existing file --> +- <target name="testDrawOverwriteTrue" depends="setUp"> +- <imageio includes="*.jpg" srcdir="${src.dir}" destdir="${output}" +- overwrite="yes" failonerror="no"> +- <scale width="300" proportions="width"/> +- <draw xloc="10" yloc="10"> +- <rectangle height="50" width="50" strokewidth="2"/> +- <text string="Test"/> +- </draw> +- </imageio> +- </target> +- + <!-- this should not overwrite the existing file --> + <target name="testOverwriteFalse" depends="setUp"> + <imageio includes="*.jpg" srcdir="${src.dir}" destdir="${output}" diff --git a/user/apache-httpd/APKBUILD b/user/apache-httpd/APKBUILD index d688954ee..fb5e75d29 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.38 +pkgver=2.4.39 pkgrel=0 pkgdesc="Open-source HTTP server" url="https://httpd.apache.org" @@ -135,7 +135,7 @@ ldap() { "$subpkgdir"/usr/libexec/apache2 } -sha512sums="8bdc36fa2bd13fd83feee17fdce4a5316ed8f96c1ac32b636ba106572ba257815438c72068d2d0e900783a3fa25c90a5da34c3f83fc2c04a1dbdbf234f7ad448 httpd-2.4.38.tar.bz2 +sha512sums="9742202040b3dc6344b301540f54b2d3f8e36898410d24206a7f8dcecb1bea7d7230fabc7256752724558af249facf64bffe2cf678b8f7cccb64076737abfda7 httpd-2.4.39.tar.bz2 c8bc2bb06ae51b0956e0ee673e80c444551c9b33dfcbb845106477c46d9e52786a8896022e1f00102264fecdf66e35e47fc6cf0abe9836fa536735cff4e6adf4 adelie.layout 336e81fa0d08f8fbe6243d52bd59b12cf2e925deb49b29d7a22953c5d40a951b6b753f51e5a396752cb0bbaf1cf25b1358902f375fb65639d00e62db7ae55ff2 apache-httpd.confd 9893248f1724748c9ef91171728b4c557ced7de543e23ed72cb75c02728048b2813ac99015a4a28e7984daa51faa6e42403c17b875539fe71c33424865eccecf apache-httpd.initd diff --git a/user/apr/APKBUILD b/user/apr/APKBUILD index 1d7ba9d30..5b973eeec 100644 --- a/user/apr/APKBUILD +++ b/user/apr/APKBUILD @@ -1,6 +1,6 @@ # Maintainer: pkgname=apr -pkgver=1.6.5 +pkgver=1.7.0 pkgrel=0 pkgdesc="The Apache Portable Runtime" url="http://apr.apache.org/" @@ -21,7 +21,7 @@ build() { --host=$CHOST \ --prefix=/usr \ --datadir=/usr/share \ - --enable-nonportable-atomics \ + --disable-nonportable-atomics \ --with-devrandom=/dev/urandom make } @@ -45,5 +45,5 @@ dev() { mv "$subpkgdir"/usr/lib/*.so* "$pkgdir"/usr/lib/ } -sha512sums="d3511e320457b5531f565813e626e7941f6b82864852db6aa03dd298a65dbccdcdc4bd580f5314f8be45d268388edab25efe88cf8340b7d2897a4dbe9d0a41fc apr-1.6.5.tar.bz2 +sha512sums="3dc42d5caf17aab16f5c154080f020d5aed761e22db4c5f6506917f6bfd2bf8becfb40af919042bd4ce1077d5de74aa666f5edfba7f275efba78e8893c115148 apr-1.7.0.tar.bz2 9fb931e45f30fbe68af56849dfca148c09cdf85e300af14fb259cbd43470113288680bdb21189d4cf13f5ce95f8d28666822535e017e64ace5324339ab50cbef apr-1.6.2-dont-test-dlclose.patch" diff --git a/user/ark/APKBUILD b/user/ark/APKBUILD index 1c2cd87e4..d83b3f1ce 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.12.3 +pkgver=19.04.1 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="0dc232b004134c048bb516aa43e478545b4052fba9321a6166a3bb4e05638288802f578cea51340c8416257f10e1bcbd55740a8945ae5f95cee6864f107d633f ark-18.12.3.tar.xz" +sha512sums="6a053239dfa0cfc0b96aad087d0912114a96a1de3f77ac8b720477c775a088d0df78531372f105cd982c9f7009d1fdeec03a06ada743142f2d2eddbe38f652de ark-19.04.1.tar.xz" diff --git a/user/artikulate/APKBUILD b/user/artikulate/APKBUILD index f68438764..0fe94ed73 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.12.3 +pkgver=19.04.1 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="cab931686929a73a3fea25a6718818514a0216b096431f972cfc494e7df754a701a8d4c61874d6914bf8331c0b944b2053a5003bf7bf01901bf2fe79cdf7eba8 artikulate-18.12.3.tar.xz" +sha512sums="0d0195bfd85250cafd37be0d91fa6650fb3322b32abdde877090d29593e3ff918adc7f2577d223d3283583229d4a4eb00d57677438b60b7e1a6a9bc54a1e3642 artikulate-19.04.1.tar.xz" diff --git a/user/at-spi2-atk/APKBUILD b/user/at-spi2-atk/APKBUILD index 52cc5f8aa..4f328d84f 100644 --- a/user/at-spi2-atk/APKBUILD +++ b/user/at-spi2-atk/APKBUILD @@ -1,7 +1,7 @@ # Contributor: Natanael Copa <ncopa@alpinelinux.org> # Maintainer: pkgname=at-spi2-atk -pkgver=2.30.1 +pkgver=2.32.0 pkgrel=0 pkgdesc="GTK+ module to bridge ATK to D-Bus at-spi" url="https://wiki.linuxfoundation.org/accessibility/d-bus" @@ -37,4 +37,4 @@ package() { DESTDIR="$pkgdir" ninja install } -sha512sums="862cccb65d2a8a7df4e899e4f53742535389a0efa0a75c936b52e68690c07e206b19d8308f0910cddb71bda0d803012d613f6959329ae43c411d1314062b7018 at-spi2-atk-2.30.1.tar.xz" +sha512sums="095ceaa33d5b35f1f4f81a31bea00487c054493cb29d4fdbcf74331ec8d1b9570dc7cb93e1cc06da9ea3f5805e7a3a9e7bf80cfdbce86a1822c2a46327109393 at-spi2-atk-2.32.0.tar.xz" diff --git a/user/at-spi2-core/APKBUILD b/user/at-spi2-core/APKBUILD index 1ccdb23c6..edd3dd5f3 100644 --- a/user/at-spi2-core/APKBUILD +++ b/user/at-spi2-core/APKBUILD @@ -1,7 +1,7 @@ # Contributor: Natanael Copa <ncopa@alpinelinux.org> # Maintainer: pkgname=at-spi2-core -pkgver=2.30.1 +pkgver=2.32.1 pkgrel=0 pkgdesc="Protocol definitions and daemon for D-Bus at-spi" url="https://wiki.linuxfoundation.org/accessibility/d-bus" @@ -31,4 +31,4 @@ package() { DESTDIR="$pkgdir" ninja -C builddir/ install } -sha512sums="c8b6a2ae5f96ce7d8c1fd32c9fec861148ceff631069b417296425fe6e2ae15198628826e13a72e018871d38e12b1128aa299edcc45eaf3eb7bbff83774361cd at-spi2-core-2.30.1.tar.xz" +sha512sums="cec6ea1426b25d9738c5c401a1038b39e04b1e989b7ef8e02590d117b35cfb253b260cc6e41b09e10e007801fedcb7702c48ba7f3a0c7b6c1f16edd4e8ad0cca at-spi2-core-2.32.1.tar.xz" diff --git a/user/atk/APKBUILD b/user/atk/APKBUILD index 6beebfcb0..c87c8dfd7 100644 --- a/user/atk/APKBUILD +++ b/user/atk/APKBUILD @@ -1,6 +1,6 @@ # Maintainer: pkgname=atk -pkgver=2.30.0 +pkgver=2.32.0 pkgrel=0 pkgdesc="A library providing a set of interfaces for accessibility" url="https://www.gtk.org/" @@ -33,4 +33,4 @@ package() { DESTDIR="$pkgdir" ninja install } -sha512sums="03f311378fdb91442f27ed542fa36edd2c9c036837c9f25ff37468bf7f743277d0b9253621563d15894e0da9d37e8df0a0e2c0e47e6aae33a38b13744c3b8b8e atk-2.30.0.tar.xz" +sha512sums="8cd2a3ee006f21835f3e564f2e1de4ae61bd9529b4c0b4f2e3ece88e905e2dd36b67affb089f41582806a1397576602a526a4b8698303708894f20af97ecac22 atk-2.32.0.tar.xz" diff --git a/user/atril/APKBUILD b/user/atril/APKBUILD new file mode 100644 index 000000000..ac04541d5 --- /dev/null +++ b/user/atril/APKBUILD @@ -0,0 +1,44 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=atril +pkgver=1.22.1 +pkgrel=0 +pkgdesc="Document viewer for the MATE desktop environment" +url="https://mate-desktop.org" +arch="all" +options="!check" # testsuite requires X and py3-dogtail +license="GPL-2.0+ AND Afmparse AND Info-ZIP AND libtiff AND LGPL-2.0+ AND MIT AND LGPL-2.1+" +depends="" +makedepends="caja-dev djvulibre-dev gobject-introspection-dev gtk+3.0-dev + intltool itstool libgxps-dev libsecret-dev libsm-dev libspectre-dev + libxml2-dev libxml2-utils poppler-dev python3 tiff-dev" +subpackages="$pkgname-dev $pkgname-doc" +source="https://pub.mate-desktop.org/releases/1.22/atril-$pkgver.tar.xz" + +build() { + cd "$builddir" + ./configure \ + --build=$CBUILD \ + --host=$CHOST \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --localstatedir=/var \ + --enable-introspection \ + --enable-pixbuf \ + --enable-comics \ + --enable-xps + make +} + +check() { + cd "$builddir" + make check +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install +} + +sha512sums="838ae397c868ac417c9266e4a06525d66214650cf8647e91c1472d83d50c8954f6dbb29411384892a98f0929e1fbac9947118bd0db10d50400fc0d5270a3619d atril-1.22.1.tar.xz" diff --git a/user/ayatana-ido/APKBUILD b/user/ayatana-ido/APKBUILD new file mode 100644 index 000000000..dea352c42 --- /dev/null +++ b/user/ayatana-ido/APKBUILD @@ -0,0 +1,46 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=ayatana-ido +pkgver=0.4.4 +pkgrel=0 +pkgdesc="Indicator display object library for the Gnome desktop environment" +url="https://ayatanaindicators.github.io/" +arch="all" +license="GPL-3.0-only AND (LGPL-2.1-only OR LGPL-3.0-only) AND LGPL-2.0+" +depends="" +makedepends="glib-dev gobject-introspection-dev gtest-dev gtk+3.0-dev + mate-common-dev vala-dev xorg-gtest-dev" +subpackages="$pkgname-dev" +source="ayatana-ido-$pkgver.tar.gz::https://github.com/AyatanaIndicators/ayatana-ido/archive/$pkgver.tar.gz + gtk-doc-fix.patch" + +prepare() { + cd "$builddir" + default_prepare + autoreconf -vif +} + +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" + DESTDIR="$pkgdir" make install +} + +sha512sums="ef04b0b6c959d209e88b1de322ac64ea33fdd043a73980bf3b043380603b6a448ea7bf43ba8e2750e1a0a9bef704a7099f7ae9b92a97d3ce0be2e9f48ba16703 ayatana-ido-0.4.4.tar.gz +92ddc4f09c5ed7800357a76e2276c07db682408f259e22d6511696df032d6712ecd295d0775db36ad6ace5d3f352ce7d59cd9f1b24e899b7accaf680c0e4488d gtk-doc-fix.patch" diff --git a/user/ayatana-ido/gtk-doc-fix.patch b/user/ayatana-ido/gtk-doc-fix.patch new file mode 100644 index 000000000..867aa0b2c --- /dev/null +++ b/user/ayatana-ido/gtk-doc-fix.patch @@ -0,0 +1,16 @@ +diff -Nurd ayatana-ido-0.4.4/configure.ac ayatana-ido-0.4.4.new/configure.ac +--- ayatana-ido-0.4.4/configure.ac 2018-08-13 05:34:25.000000000 -0500 ++++ ayatana-ido-0.4.4.new/configure.ac 2019-03-23 19:40:02.167258822 -0500 +@@ -138,7 +138,11 @@ + + dnl = GTK Doc Check =========================================================== + +-GTK_DOC_CHECK([1.8]) ++m4_ifdef([GTK_DOC_CHECK], [ ++GTK_DOC_CHECK([1.8],[]) ++],[ ++AM_CONDITIONAL([ENABLE_GTK_DOC], false) ++]) + + dnl =========================================================================== + diff --git a/user/baloo-widgets/APKBUILD b/user/baloo-widgets/APKBUILD index f30e3c168..d5800d48a 100644 --- a/user/baloo-widgets/APKBUILD +++ b/user/baloo-widgets/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=baloo-widgets -pkgver=18.12.3 +pkgver=19.04.1 pkgrel=0 pkgdesc="Widgets that utilise the Baloo desktop indexing engine" url="https://www.KDE.org/" @@ -13,7 +13,9 @@ depends_dev="qt5-qtbase-dev baloo-dev kio-dev" makedepends="$depends_dev cmake extra-cmake-modules kconfig-dev kfilemetadata-dev ki18n-dev" subpackages="$pkgname-dev $pkgname-lang" -source="https://download.kde.org/stable/applications/$pkgver/src/baloo-widgets-$pkgver.tar.xz" +source="https://download.kde.org/stable/applications/$pkgver/src/baloo-widgets-$pkgver.tar.xz + frameworks.patch + " build() { cd "$builddir" @@ -41,4 +43,5 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="40b62fd9fb204ba60f0f5d8550e33506907de11b8cc6a222071402ed4eef83d3171df6eef1be31c501dfc4b7271a05f79def095aec6d83c705dcbc52760966dc baloo-widgets-18.12.3.tar.xz" +sha512sums="e797b4f878f1382cd58d91e61a5a846e2f47adb1a2f718f9c5f686a6978031b8c6ce061ae55948c3beed16d4798e3f8abeb70c428a91ce602c94adf423616eaa baloo-widgets-19.04.1.tar.xz +b8de7699919edb1ecc64aa733b8a937fc0c1b06e3e03fc5f2ea1d78ca190a0bdbf4b6011c57de464ad657103981aa337f3a04953da3a02b6c161f47eda5d7372 frameworks.patch" diff --git a/user/baloo-widgets/frameworks.patch b/user/baloo-widgets/frameworks.patch new file mode 100644 index 000000000..002445bde --- /dev/null +++ b/user/baloo-widgets/frameworks.patch @@ -0,0 +1,11 @@ +--- baloo-widgets-19.04.0/CMakeLists.txt.old 2019-04-12 00:13:39.000000000 +0000 ++++ baloo-widgets-19.04.0/CMakeLists.txt 2019-04-19 07:30:31.523838076 +0000 +@@ -8,7 +8,7 @@ + project(baloo-widgets VERSION ${KDE_APPLICATIONS_VERSION}) + + set(QT_MIN_VERSION "5.8.0") +-set(KF5_MIN_VERSION "5.56.0") ++set(KF5_MIN_VERSION "5.54.0") + + find_package(ECM ${KF5_MIN_VERSION} REQUIRED NO_MODULE) + set(CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake/modules" ${ECM_MODULE_PATH}) diff --git a/user/blinken/APKBUILD b/user/blinken/APKBUILD index 5c4f4e35a..516818484 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.12.3 +pkgver=19.04.1 pkgrel=0 pkgdesc="Memory enhancement game" url="https://www.kde.org/applications/education/blinken/" @@ -40,4 +40,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="605d4015b122419c512f614bf2b27c23f5219dc2ef48a7cf86beb0aa0333872058b0cdb04c98799bd4780909cbfc9544e13ace22b809457bd362b3c4555c1d89 blinken-18.12.3.tar.xz" +sha512sums="a6f6f552df473872e25ec854d956581966b8e763d4d02fb9355e2b57da7565ace856a83175cb71878602e1aefa256b4ead6d5f936ebeeb99405c1194143dd83d blinken-19.04.1.tar.xz" diff --git a/user/bomber/APKBUILD b/user/bomber/APKBUILD index b5e6658e0..270520353 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.12.3 +pkgver=19.04.1 pkgrel=0 pkgdesc="Arcade bombing game" url="https://www.kde.org/applications/games/bomber/" @@ -40,4 +40,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="7292e5449e4a6444730f771aeb7ab9c2290fda12c213edfae190593f30cae5c4b2d6b0622d9fceaebb474f38cb12396961326af34435e26c1feda64e5153a881 bomber-18.12.3.tar.xz" +sha512sums="c407dc51a137e1c5242bc4b3d9d10b855e36cb0c1988bcc3b93aeca79a147dcb039c72984b91426373523bceefdd4269880737e41d0ce2fc0e147ba8216b1504 bomber-19.04.1.tar.xz" diff --git a/user/bovo/APKBUILD b/user/bovo/APKBUILD index 8e747d9ef..9b99e296f 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.12.3 +pkgver=19.04.1 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="077221d1a510e587fe8d90cb8f026dee78fcd88f831c26ad098c62db0bd2788bac30864247762f5221c7b3b3a55f772aa33e861fe0e9f91aacb3cd03f07a8fdd bovo-18.12.3.tar.xz" +sha512sums="4fbf5334a7f7a3cd86736d762818d4259aa148b238ff65e8d79b02d2caa3a0d33c30da4ced7d14464d2559aaabd95a8b72ac8d11e5f1f03a3141a39c9d589938 bovo-19.04.1.tar.xz" diff --git a/user/btrfs-progs/APKBUILD b/user/btrfs-progs/APKBUILD index 9c1453b01..5e30eb457 100644 --- a/user/btrfs-progs/APKBUILD +++ b/user/btrfs-progs/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=btrfs-progs -pkgver=4.17.1 +pkgver=4.20.2 pkgrel=0 pkgdesc="File system utilities for Btrfs" url="https://btrfs.wiki.kernel.org/index.php/Main_Page" @@ -40,4 +40,4 @@ python() { make DESTDIR="$subpkgdir" install_python } -sha512sums="90f291e362b640a22b41036351619e7b8a793a3b57d0537e7865edf4b830d6dc57b3051c0aed9e1ff38b602441a20fea7f974ccff789a3b4a622a0ea57756538 btrfs-progs-v4.17.1.tar.xz" +sha512sums="a542423589e7ee35b9a1791ef13e4c8ea4be56b33d6119a18d046233cfc04678c525cad545387aeb48e0dbd8249c5a501100fdee8f6d6882c906e0a737a1778a btrfs-progs-v4.20.2.tar.xz" diff --git a/user/bugzilla/APKBUILD b/user/bugzilla/APKBUILD index 897142939..5e0f6f31d 100644 --- a/user/bugzilla/APKBUILD +++ b/user/bugzilla/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=bugzilla -pkgver=5.0.4 +pkgver=5.0.6 pkgrel=0 pkgdesc="Bug tracking software from Mozilla" url="https://www.bugzilla.org/" @@ -40,4 +40,4 @@ package() { mv bugzilla-$pkgver "$pkgdir"/usr/share/webapps/ } -sha512sums="508fdc5ab599f007f848a583907c726a876d4f3bc6d4e71d93c1efe82072f67309d229f5ba213443ad90a5f11e6e97e691fb11515ef2db71e36587e72fc849a8 bugzilla-5.0.4.tar.gz" +sha512sums="8ca47ea1be2b433a6ce68e1a595d72f3d0f0fede44d1194dc6bc9a116dbde3ab7285212c71995e200d31544876e4c3c57b63da1f877a0cb22747ab87a5d598de bugzilla-5.0.6.tar.gz" diff --git a/user/caja-dropbox/APKBUILD b/user/caja-dropbox/APKBUILD new file mode 100644 index 000000000..938d76160 --- /dev/null +++ b/user/caja-dropbox/APKBUILD @@ -0,0 +1,38 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=caja-dropbox +pkgver=1.22.1 +pkgrel=0 +pkgdesc="DropBox extension for Caja" +url="https://mate-desktop.org" +arch="all" +license="GPL-3.0+" +depends="" +makedepends="caja-dev py3-docutils py3-pygobject" +subpackages="$pkgname-doc" +source="https://pub.mate-desktop.org/releases/${pkgver%.*}/caja-dropbox-$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 + rm "$pkgdir"/usr/lib/caja/extensions-2.0/libcaja-dropbox.a +} + +sha512sums="e7e9107c7654fac910762727782f35e3039b45e737341937d225126b2f63f8911f99281097b2488d3b79c0ed09fff4270b4c557166b94a722a2b1cd30fea2a2c caja-dropbox-1.22.1.tar.xz" diff --git a/user/caja-extensions/APKBUILD b/user/caja-extensions/APKBUILD new file mode 100644 index 000000000..530be8356 --- /dev/null +++ b/user/caja-extensions/APKBUILD @@ -0,0 +1,37 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=caja-extensions +pkgver=1.22.0 +pkgrel=0 +pkgdesc="Extensions for the Caja file manager" +url="https://mate-desktop.org" +arch="all" +license="GPL-2.0+" +depends="" +makedepends="caja-dev dbus-glib-dev intltool mate-desktop-dev" +subpackages="$pkgname-dev $pkgname-doc $pkgname-lang" +source="https://pub.mate-desktop.org/releases/${pkgver%.*}/caja-extensions-$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="19fd287123b8d2ba67b636066e9f8910aadd47d375eb1d52136d9b808b48abacade81dde490ce3edb6fc4a9d2ddfd39d9abf294a58aed8bcaf620c1eff03e761 caja-extensions-1.22.0.tar.xz" diff --git a/user/caja/APKBUILD b/user/caja/APKBUILD new file mode 100644 index 000000000..d39dce4e8 --- /dev/null +++ b/user/caja/APKBUILD @@ -0,0 +1,44 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=caja +pkgver=1.22.1 +pkgrel=0 +pkgdesc="File manager for the MATE desktop environment" +url="https://mate-desktop.org" +arch="all" +options="!check" # testsuite requires X +license="GPL-2.0+ AND LGPL-2.0+" +depends="" +makedepends="gobject-introspection-dev intltool libexif-dev libnotify-dev + libxml2-dev mate-desktop-dev" +subpackages="$pkgname-dev $pkgname-doc" +source="https://pub.mate-desktop.org/releases/${pkgver%.*}/caja-$pkgver.tar.xz" +builddir="$srcdir/caja-$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 + + for i in icons globs globs2 XMLnamespaces magic aliases subclasses types treemagic mime.cache version generic-icons; do + rm "$pkgdir"/usr/share/mime/$i + done +} + +sha512sums="dea2e9cac7802df5335a716a1a7df149b637014525202600f4bf3eab293eff29bf2df66df22203aa036898149cb26ba1d05491234dc75203480925cce0333a17 caja-1.22.1.tar.xz" diff --git a/user/cantor/APKBUILD b/user/cantor/APKBUILD index dbebd6089..015945e99 100644 --- a/user/cantor/APKBUILD +++ b/user/cantor/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=cantor -pkgver=18.12.3 +pkgver=19.04.1 pkgrel=0 pkgdesc="KDE worksheet interface for popular mathematical applications" url="https://edu.kde.org/cantor/" @@ -45,4 +45,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="196d47adef9cb35c1816efa0a88dcf904ac7b91176bde779f84c40315732bbc1196c21dff4a6c363cbf6fc4785aaa512590638a965c79c50574b264a4d7beccf cantor-18.12.3.tar.xz" +sha512sums="a6ae43ace5761a12157f2cfdd2dafeb5ac5cf0f0e96b4328cd7913d9168976b75133c122604f8296fb9baaae252e786a16128c2c9e1f2df4403f1bbef507493b cantor-19.04.1.tar.xz" diff --git a/user/cdrtools/APKBUILD b/user/cdrtools/APKBUILD deleted file mode 100644 index 39a3021c8..000000000 --- a/user/cdrtools/APKBUILD +++ /dev/null @@ -1,34 +0,0 @@ -# Contributor: A. Wilcox <awilfox@adelielinux.org> -# Maintainer: A. Wilcox <awilfox@adelielinux.org> -pkgname=cdrtools -pkgver=3.01 -pkgrel=1 -pkgdesc="Highly portable CD/DVD/Blu-Ray command line recording software" -url="http://schilytools.sourceforge.net/" -arch="all" -options="suid" -license="CDDL-1.0" -depends="" -makedepends="attr-dev byacc expat-dev openssl-dev smake" -subpackages="$pkgname-doc" -source="https://download.sourceforge.net/cdrtools/cdrtools-$pkgver.tar.bz2" - -build() { - cd "$builddir" - smake INS_BASE=/usr -} - -check() { - cd "$builddir" - smake check -} - -package() { - cd "$builddir" - smake INS_BASE=/usr DESTDIR="$pkgdir" install - - mv "$pkgdir"/usr/share/man/man3 "$pkgdir"/usr/share/man/man3sch - rename .3 .3sch "$pkgdir"/usr/share/man/man3sch/*.3 -} - -sha512sums="54f06496e47184e324fc9d8b1153d3c806ed43c3c57e2a8d79a79afe12aa5334e82fa500fe1b1bf49307ad7dfabe687f6e1ad914fc2f0c5c429d8e6a34c293eb cdrtools-3.01.tar.bz2" diff --git a/user/cgmanager/APKBUILD b/user/cgmanager/APKBUILD index 958ba8327..3074679fd 100644 --- a/user/cgmanager/APKBUILD +++ b/user/cgmanager/APKBUILD @@ -1,14 +1,14 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=cgmanager -pkgver=0.41 +pkgver=0.42 pkgrel=0 pkgdesc="CGroup management daemon" url="https://linuxcontainers.org/cgmanager/introduction/" arch="all" license="LGPL-2.1+ AND GPL-2.0-only" depends="" -makedepends="help2man libnih-dev linux-pam-dev" +makedepends="help2man libnih-dev linux-pam-dev popt-dev" subpackages="$pkgname-dev $pkgname-doc $pkgname-openrc" source="https://linuxcontainers.org/downloads/cgmanager/cgmanager-$pkgver.tar.gz" @@ -35,4 +35,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="e8ba64665a21d987cd835580c2b6bafbcb05e22ce7f6216762d04840957c2cd21fb571360e0206ae9143656beed88ff3396eb1f644052c05189093a665a705fd cgmanager-0.41.tar.gz" +sha512sums="d92113a6748084f1c0708f75c8bdf5de484d534bf00f664a5288902be887c2a1c7cf3d91afaab3331f0d573a86fbc6edb2fa1d37c070250cf53e0621213d7d74 cgmanager-0.42.tar.gz" diff --git a/user/checkbashisms/APKBUILD b/user/checkbashisms/APKBUILD index 09f3359c8..a916e2915 100644 --- a/user/checkbashisms/APKBUILD +++ b/user/checkbashisms/APKBUILD @@ -1,7 +1,7 @@ # Contributor: Natanael Copa <ncopa@alpinelinux.org> # Maintainer: Max Rees <maxcrees@me.com> pkgname=checkbashisms -pkgver=2.18.6 +pkgver=2.19.4 pkgrel=0 pkgdesc="Check shell scripts for POSIX compliance" url="https://tracker.debian.org/pkg/devscripts" @@ -20,12 +20,10 @@ prepare() { } 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" } @@ -40,4 +38,4 @@ bashcomp() { "$subpkgdir/usr/share/bash-completion/completions/$pkgname" } -sha512sums="6bbd5ab2ac522bf4201cf57cc481d3885dd26b0a57338812b5a7ae10ca4575a2942b84b6bd05934898551eae7263ed28f0f7d8d295d055aa5c80111da1531014 devscripts_2.18.6.tar.xz" +sha512sums="43d9484dbbff6f48cf8e2cbcf50a5ee752796db881ec6ca2d1b038c938d7d3fe6d45d0f88d5f62a7bf5889366618fa85c8c0089869e6d6a39f6a87e8f1b5c97c devscripts_2.19.4.tar.xz" diff --git a/user/chelf/APKBUILD b/user/chelf/APKBUILD index 83b9c1402..6e7aff4c0 100644 --- a/user/chelf/APKBUILD +++ b/user/chelf/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=chelf -pkgver=0.1_git20190110 +pkgver=0.2.2 pkgrel=0 pkgdesc="Display or change the stack size of an ELF binary" url=" " @@ -11,9 +11,7 @@ license="BSD-2-Clause" depends="" makedepends="" subpackages="" -source="$pkgname-$pkgver.tar.xz::https://distfiles.adelielinux.org/source/$pkgname-$pkgver.txz - fix-uninitialised-read.patch - " +source="$pkgname-$pkgver.tar.xz::https://distfiles.adelielinux.org/source/$pkgname-$pkgver.txz" build() { cd "$builddir" @@ -25,5 +23,4 @@ package() { install -D -m755 chelf "$pkgdir"/usr/bin/chelf } -sha512sums="6154e1580f4ea355aaa5017cced37d278d7e864d2c924e521aadc79d839ce79d1a94a9f8ebef1274f92748058278b628ec384f5d5e4572fe56d7745208146dbe chelf-0.1_git20190110.tar.xz -435610112eec83b27c922b5f84ca1e9abfa8c1834f5fafea0deb6911532fd7c0924da002a0c5523d6cd013c8d56e02cc6ae30321fdf4955399b7fcabe5c64e35 fix-uninitialised-read.patch" +sha512sums="bf29f0f526ca1977e0d0743901f6afeb23b2dd78b60618ea65201ea95000832854250f44de6e7625b6d546cace4638be094989cdb96b4e842285ef85718c0082 chelf-0.2.2.tar.xz" diff --git a/user/chelf/fix-uninitialised-read.patch b/user/chelf/fix-uninitialised-read.patch deleted file mode 100644 index 0623647fe..000000000 --- a/user/chelf/fix-uninitialised-read.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- chelf-0.1_git20190110/main.c.old 2018-10-29 10:37:25.000000000 +0000 -+++ chelf-0.1_git20190110/main.c 2019-01-10 18:44:45.320000000 +0000 -@@ -32,7 +32,7 @@ - { - int fd, rv = -1; - struct stat st; -- void *elf; -+ void *elf = NULL; - const int open_flags = (mode == MODE_WRITE) ? O_RDWR : O_RDONLY; - const int mmap_flags = (mode == MODE_WRITE) ? - (PROT_WRITE|PROT_READ) : PROT_READ; diff --git a/user/chrpath/APKBUILD b/user/chrpath/APKBUILD index 869a8bfdd..9eed07b26 100644 --- a/user/chrpath/APKBUILD +++ b/user/chrpath/APKBUILD @@ -1,4 +1,4 @@ -# Maintainer: Dead Upstream <nobody@deprecated.invalid> +# Maintainer: pkgname=chrpath pkgver=0.16 pkgrel=2 diff --git a/user/cifs-utils/APKBUILD b/user/cifs-utils/APKBUILD index f5987a037..436e0d909 100644 --- a/user/cifs-utils/APKBUILD +++ b/user/cifs-utils/APKBUILD @@ -1,7 +1,7 @@ # Contributor: Francesco Colista <fcolista@alpinelinux.org> # Maintainer: Max Rees <maxcrees@me.com> pkgname=cifs-utils -pkgver=6.8 +pkgver=6.9 pkgrel=0 pkgdesc="CIFS filesystem user-space tools" url="https://wiki.samba.org/index.php/LinuxCIFS_utils" @@ -17,7 +17,6 @@ source="https://ftp.samba.org/pub/linux-cifs/$pkgname/$pkgname-$pkgver.tar.bz2 xattr_size_max.patch" build() { - cd "$builddir" # --enable-cifsidmap and --enable-cifsacl require libwbclient (samba) autoreconf -i @@ -35,19 +34,15 @@ build() { } check() { - cd "$builddir" - make check } package() { - cd "$builddir" - make DESTDIR="$pkgdir" install # Allow unprivileged mount chmod u+s "$pkgdir"/sbin/mount.cifs } -sha512sums="54a094f78c9e07acc997adfe0c8d4c2fb8e15c18adcc1805450e2180f8539aaec8619e781e985b289e097932637e2de3e6815e32f59ec2fc06cfc3762b832e13 cifs-utils-6.8.tar.bz2 +sha512sums="b92e4e39eeed1032bb175659296cde034703fb3ca63aae00419d46a33dadf821fedaf03734128112c164c84bcbb48d92d03cdc275c4a7cba26f984aeca40a40a cifs-utils-6.9.tar.bz2 99a2fab05bc2f14a600f89526ae0ed2c183cfa179fe386cb327075f710aee3aed5ae823f7c2f51913d1217c2371990d6d4609fdb8d80288bd3a6139df3c8aebe musl-fix-includes.patch 2a9366ec1ddb0389c535d2fa889f63287cb8374535a47232de102c7e50b6874f67a3d5ef3318df23733300fd8459c7ec4b11f3211508aca7800b756119308e98 xattr_size_max.patch" diff --git a/user/clang/0001-Add-support-for-Ad-lie-Linux.patch b/user/clang/0001-Add-support-for-Ad-lie-Linux.patch index f12adf513..6fdb58542 100644 --- a/user/clang/0001-Add-support-for-Ad-lie-Linux.patch +++ b/user/clang/0001-Add-support-for-Ad-lie-Linux.patch @@ -24,8 +24,8 @@ index 7b34a09256..7a3774a4f1 100644 AlpineLinux, ArchLinux, DebianLenny, -@@ -118,6 +119,10 @@ public: - return DistroVal >= UbuntuHardy && DistroVal <= UbuntuCosmic; +@@ -120,6 +121,10 @@ public: + return DistroVal >= UbuntuHardy && DistroVal <= UbuntuDisco; } + bool IsAdelieLinux() const { @@ -39,7 +39,7 @@ 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) { +@@ -132,6 +132,9 @@ static Distro::DistroType DetectDistro(vfs::FileSystem &VFS) { if (VFS.exists("/etc/exherbo-release")) return Distro::Exherbo; @@ -49,30 +49,34 @@ index 2c4d44faf8..7ef35ab379 100644 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) +-- +2.18.0 + +--- cfe-8.0.0.src/lib/Driver/ToolChains/Linux.cpp.old 2018-11-29 18:52:22.000000000 +0000 ++++ cfe-8.0.0.src/lib/Driver/ToolChains/Linux.cpp 2019-04-23 23:49:37.786181838 +0000 +@@ -236,13 +236,13 @@ + + Distro Distro(D.getVFS()); + +- if (Distro.IsAlpineLinux() || Triple.isAndroid()) { ++ if (Distro.IsAdelieLinux() || Distro.IsAlpineLinux() || Triple.isAndroid()) { + ExtraOpts.push_back("-z"); ExtraOpts.push_back("now"); } -- if (Distro.IsOpenSUSE() || Distro.IsUbuntu() || Distro.IsAlpineLinux()) { -+ if (Distro.IsOpenSUSE() || Distro.IsUbuntu() || Distro.IsAlpineLinux() || -+ Distro.IsAdelieLinux()) { + if (Distro.IsOpenSUSE() || Distro.IsUbuntu() || Distro.IsAlpineLinux() || +- Triple.isAndroid()) { ++ Distro.IsAdelieLinux() || Triple.isAndroid()) { 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) { +@@ -285,7 +285,8 @@ + if (!IsMips && !IsHexagon) { if (Distro.IsRedhat() || Distro.IsOpenSUSE() || Distro.IsAlpineLinux() || -- (Distro.IsUbuntu() && Distro >= Distro::UbuntuMaverick)) -+ Distro.IsAdelieLinux() || -+ (Distro.IsUbuntu() && Distro >= Distro::UbuntuMaverick)) + (Distro.IsUbuntu() && Distro >= Distro::UbuntuMaverick) || +- (IsAndroid && !Triple.isAndroidVersionLT(23))) ++ (IsAndroid && !Triple.isAndroidVersionLT(23)) || ++ Distro.IsAdelieLinux()) ExtraOpts.push_back("--hash-style=gnu"); - if (Distro.IsDebian() || Distro.IsOpenSUSE() || Distro == Distro::UbuntuLucid || --- -2.18.0 - + if (Distro.IsDebian() || Distro.IsOpenSUSE() || diff --git a/user/clang/APKBUILD b/user/clang/APKBUILD index a56e16368..e5ed50d06 100644 --- a/user/clang/APKBUILD +++ b/user/clang/APKBUILD @@ -2,7 +2,7 @@ # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=clang # Note: Update together with llvm. -pkgver=7.0.1 +pkgver=8.0.0 pkgrel=0 _llvmver=${pkgver%%.*} pkgdesc="A C language family front-end for LLVM" @@ -12,14 +12,18 @@ 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" + llvm-dev>=$_llvmver llvm-static>=$_llvmver llvm-test-utils>=$_llvmver + z3 z3-dev" 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 + cfe-005-ppc64-dynamic-linker-path.patch + pmmx-musl.patch + ppc64-elfv2.patch secure-plt.patch + use-llvm-lit.patch " builddir="$srcdir/cfe-$pkgver.src" @@ -27,6 +31,7 @@ build() { mkdir -p "$builddir"/build cd "$builddir"/build + CMAKE_PREFIX_PATH=/usr/lib/llvm$_llvmver/lib/cmake \ cmake .. -Wno-dev \ -DCMAKE_BUILD_TYPE=MinSizeRel \ -DCMAKE_INSTALL_PREFIX=/usr \ @@ -103,8 +108,11 @@ analyzer() { mv usr/share/scan-* "$subpkgdir"/usr/share/ } -sha512sums="df2f38153ebdc261bcfa6a569567f759bbb1a803192882a9d4eca55a47878166ac9057151a94ad341dc1281136547e4faa783a68070dfde2307b48cacd4b9194 cfe-7.0.1.src.tar.xz -44aa152d50822a9e1a223b9e07e150ffa830c55deb4c4ca29e6218a0103eb263a00b41fd1ca84390e65fa08005901a0a0f88cf529bff8764220e99d06adef5fc 0001-Add-support-for-Ad-lie-Linux.patch +sha512sums="98e540222719716985e5d8439116e47469cb01201ea91d1da7e46cb6633da099688d9352c3b65e5c5f660cbbae353b3d79bb803fc66b3be663f2b04b1feed1c3 cfe-8.0.0.src.tar.xz +c3218a1622f53bb6bef65f844e32e1b048a1ed7d5aa444a7592f9b8e8543d41438a0ac032674adb2c1bf0ef8c6fbd6880c34f8c8e778a8fd31bb542968a3547e 0001-Add-support-for-Ad-lie-Linux.patch 9485fe4fd6182df543735ed8f4ce618693d0faeafa86d3f9574a6c7abf50978e2d56e0a94be3ed94d515cc937c388d66ceff1bbc9bb120d371b6d3e95340da00 0008-Fix-ClangConfig-cmake-LLVM-path.patch -8a596e7369b5791e7e9c3278320aa5bac30d91f27d9a0df335ea862c359623869353d12145c3b64730f721600522f3acc5abe706428091482e0209e4ff308175 use-llvm-lit.patch -9dad6dfb0097f79939b743dbe7ed20274c463d9c41f061a957841c60070247a4760b676465652e2e844fc75aab9a5b7f9f4dd7632f2ff5dd5b0a335fcbd29312 secure-plt.patch" +e24b0eb5f0f2b58f8d18d7d191dccc76510a179738db1f42624bd68c6de92ea57d323e28f9ee1e4df59e44a2c00a23527ba21c1c1fce9ac5858db9b3049914f2 cfe-005-ppc64-dynamic-linker-path.patch +1a76a74c193ea59b0114b116c5a9a7807b40a449e9c601263379fd7252867adb8ea8d4720f9fc8d801748176976d968990be29323bff9d5f3a03c4cfe80c61c4 pmmx-musl.patch +26b6cb952a77e15f113c88f2417e510ddd496f5c3c3de2e51c1a7cf14a78d0b25cd881f40c5c7e95dde3b2b63bbd3d485544097eed8673669a755b456a1dcd71 ppc64-elfv2.patch +9dad6dfb0097f79939b743dbe7ed20274c463d9c41f061a957841c60070247a4760b676465652e2e844fc75aab9a5b7f9f4dd7632f2ff5dd5b0a335fcbd29312 secure-plt.patch +8a596e7369b5791e7e9c3278320aa5bac30d91f27d9a0df335ea862c359623869353d12145c3b64730f721600522f3acc5abe706428091482e0209e4ff308175 use-llvm-lit.patch" diff --git a/user/clang/cfe-005-ppc64-dynamic-linker-path.patch b/user/clang/cfe-005-ppc64-dynamic-linker-path.patch new file mode 100644 index 000000000..d559d949b --- /dev/null +++ b/user/clang/cfe-005-ppc64-dynamic-linker-path.patch @@ -0,0 +1,17 @@ +--- a/lib/Driver/ToolChains/Linux.cpp ++++ b/lib/Driver/ToolChains/Linux.cpp +@@ -590,12 +590,12 @@ std::string Linux::getDynamicLinker(const ArgList &Args) const { + Loader = "ld.so.1"; + break; + case llvm::Triple::ppc64: +- LibDir = "lib64"; ++ LibDir = "lib"; + Loader = + (tools::ppc::hasPPCAbiArg(Args, "elfv2")) ? "ld64.so.2" : "ld64.so.1"; + break; + case llvm::Triple::ppc64le: +- LibDir = "lib64"; ++ LibDir = "lib"; + Loader = + (tools::ppc::hasPPCAbiArg(Args, "elfv1")) ? "ld64.so.1" : "ld64.so.2"; + break; diff --git a/user/clang/pmmx-musl.patch b/user/clang/pmmx-musl.patch new file mode 100644 index 000000000..7286c0ab8 --- /dev/null +++ b/user/clang/pmmx-musl.patch @@ -0,0 +1,12 @@ +--- cfe-8.0.0.src/lib/Driver/ToolChains/Linux.cpp.old 2018-11-29 18:52:22.000000000 +0000 ++++ cfe-8.0.0.src/lib/Driver/ToolChains/Linux.cpp 2019-06-01 23:22:27.015221397 +0000 +@@ -528,6 +528,9 @@ + ArchName = "armeb"; + IsArm = true; + break; ++ case llvm::Triple::x86: ++ ArchName = "i386"; ++ break; + default: + ArchName = Triple.getArchName().str(); + } diff --git a/user/clang/ppc64-elfv2.patch b/user/clang/ppc64-elfv2.patch new file mode 100644 index 000000000..59f300ebc --- /dev/null +++ b/user/clang/ppc64-elfv2.patch @@ -0,0 +1,38 @@ +--- cfe-8.0.0.src/lib/Basic/Targets/PPC.h.old 2019-02-12 11:19:21.000000000 +0000 ++++ cfe-8.0.0.src/lib/Basic/Targets/PPC.h 2019-06-01 23:18:07.613180102 +0000 +@@ -367,7 +367,7 @@ + ABI = "elfv2"; + } else { + resetDataLayout("E-m:e-i64:64-n32:64"); +- ABI = "elfv1"; ++ ABI = (Triple.getEnvironment() == llvm::Triple::Musl) ? "elfv2" : "elfv1"; + } + + switch (getTriple().getOS()) { +@@ -375,6 +375,15 @@ + LongDoubleWidth = LongDoubleAlign = 64; + LongDoubleFormat = &llvm::APFloat::IEEEdouble(); + break; ++ default: ++ break; ++ } ++ ++ switch (getTriple().getEnvironment()) { ++ case llvm::Triple::Musl: ++ LongDoubleWidth = LongDoubleAlign = 64; ++ LongDoubleFormat = &llvm::APFloat::IEEEdouble(); ++ break; + default: + break; + } +--- cfe-8.0.0.src/lib/Driver/ToolChains/Clang.cpp.old 2019-01-25 00:15:41.000000000 +0000 ++++ cfe-8.0.0.src/lib/Driver/ToolChains/Clang.cpp 2019-06-01 23:19:33.973868618 +0000 +@@ -1745,7 +1745,7 @@ + break; + } + +- ABIName = "elfv1"; ++ ABIName = (getToolChain().getTriple().isMusl()) ? "elfv2" : "elfv1"; + break; + } + case llvm::Triple::ppc64le: diff --git a/user/cmus/APKBUILD b/user/cmus/APKBUILD index 918cef34c..0be94312e 100644 --- a/user/cmus/APKBUILD +++ b/user/cmus/APKBUILD @@ -13,7 +13,8 @@ makedepends="alsa-lib-dev faad2-dev ffmpeg-dev flac-dev libao-dev libcddb-dev libcdio-paranoia-dev libmad-dev libmodplug-dev libvorbis-dev ncurses-dev opusfile-dev pulseaudio-dev wavpack-dev" subpackages="$pkgname-doc" -source="$pkgname-$pkgver.tar.gz::https://github.com/$pkgname/$pkgname/archive/v$pkgver.tar.gz" +source="$pkgname-$pkgver.tar.gz::https://github.com/$pkgname/$pkgname/archive/v$pkgver.tar.gz + ppc-libatomic.patch" build() { cd "$builddir" @@ -60,4 +61,5 @@ package() { make DESTDIR="$pkgdir" PREFIX=/usr install } -sha512sums="cf359dfcefa833a5b10a2d16ac405672bea762b62b7177c115560127035682fba65c15b9a8710179a343d1f99212a0260b5c095542982202e2cd1bef5b0c17fc cmus-2.8.0.tar.gz" +sha512sums="cf359dfcefa833a5b10a2d16ac405672bea762b62b7177c115560127035682fba65c15b9a8710179a343d1f99212a0260b5c095542982202e2cd1bef5b0c17fc cmus-2.8.0.tar.gz +06a91da06cc916aa475467aa90bd7170c7288b68459706c3416700e79ba8707fd7a85bded0c0d5d51d805c15f59ff395670f11318ca5a419d17ab1070a48775f ppc-libatomic.patch" diff --git a/user/cmus/ppc-libatomic.patch b/user/cmus/ppc-libatomic.patch new file mode 100644 index 000000000..7107fb5db --- /dev/null +++ b/user/cmus/ppc-libatomic.patch @@ -0,0 +1,29 @@ +From 9a56c86a663e53195a32b7908cf2bd4349bad5c3 Mon Sep 17 00:00:00 2001 +From: Luis Ressel <aranea@aixah.de> +Date: Fri, 29 Mar 2019 17:16:16 +0100 +Subject: [PATCH] Link against libatomic on ppc32. DO NOT UPSTREAM. + +Assuming that we'll always need libatomic on ppc32, but never elsewhere +is hideous and broken, but gcc is making it a huge pain to handle this +properly. +--- + configure | 3 +++ + 1 file changed, 3 insertions(+) + +diff --git a/configure b/configure +index e76acdd..2cd5d45 100755 +--- a/configure ++++ b/configure +@@ -98,6 +98,9 @@ check_compat() + CONFIG_CYGWIN=y + makefile_vars CONFIG_CYGWIN + esac ++ ++ test ppc = "$(uname -m)" && try_link -latomic && COMPAT_LIBS="$COMPAT_LIBS -latomic" ++ + makefile_vars COMPAT_LIBS + } + +-- +2.21.0 + diff --git a/user/cogl/APKBUILD b/user/cogl/APKBUILD index 4f1b2202f..f7e7b699c 100644 --- a/user/cogl/APKBUILD +++ b/user/cogl/APKBUILD @@ -1,7 +1,7 @@ # Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> # Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> pkgname=cogl -pkgver=1.22.2 +pkgver=1.22.4 pkgrel=0 pkgdesc="GObject-based GL/GLES abstraction library" url="https://gnome.org" @@ -11,8 +11,7 @@ license="MIT AND SGI-B-2.0 AND BSD-3-Clause AND Public-Domain AND LGPL-2.0+ AND 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" +source="https://download.gnome.org/sources/cogl/1.22/cogl-$pkgver.tar.xz" build() { cd "$builddir" @@ -38,5 +37,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="2ec99f5ff22683d12925b9a1f748387b47c4506aaf3c5afec851b3b6fe6b7cdfd211fb7e4359bd7a1d1b7cb3cb7fbd257efbcb7d2941d0f133a60bad1c9645e3 cogl-1.22.2.tar.xz -73fa3a7258e2624d13abfe36259bef1a28e993653f0fdebfb4b0822752fa40a95399f4f9cd707873938bc6b8edcc7db46228247851471899f05a7e7132af58c7 fix-wayland-egl-check.patch" +sha512sums="85f3af49c16dd2e545a3b91c076ac10107a4b9d0dc785cefe489e91eabdd82837f732685f1f0dca1695fc2f8095f42d5f30f145b659eb4295964787f06c1e37a cogl-1.22.4.tar.xz" diff --git a/user/cogl/fix-wayland-egl-check.patch b/user/cogl/fix-wayland-egl-check.patch deleted file mode 100644 index 72ec484e5..000000000 --- a/user/cogl/fix-wayland-egl-check.patch +++ /dev/null @@ -1,12 +0,0 @@ -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/comic-neue/APKBUILD b/user/comic-neue/APKBUILD index 8b731ab10..dc12db220 100644 --- a/user/comic-neue/APKBUILD +++ b/user/comic-neue/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=comic-neue -pkgver=2.3 +pkgver=2.4 pkgrel=0 pkgdesc="Casual typeface" url="http://comicneue.com/" @@ -11,12 +11,12 @@ license="OFL-1.1" depends="fontconfig" makedepends="" subpackages="" -source="http://comicneue.com/comic-neue-$pkgver.zip" -builddir="$srcdir" +source="$pkgname-$pkgver.zip::https://github.com/crozynski/comicneue/archive/v$pkgver.zip" +builddir="$srcdir/comicneue-$pkgver" package() { cd "$builddir" install -m644 -Dt "$pkgdir"/usr/share/fonts/X11/OTF/ OTF/*.otf } -sha512sums="37adcc314f6d4bdc888e056488b209c4a8f3ee5f51618960a733e9d88ee513bafb2abf2b3d9d5bc4d2106297cf38645a8ab56c0fe79974b2ee6e0528aebaf4f5 comic-neue-2.3.zip" +sha512sums="12c93efc00e1caecd6be9080de37ecf2049384185c4043dc250945b7cb47fbbe3fcc973ebdf7d58f3351ba11f87341c24af7e1039b873d463b0d84da9c72f0b8 comic-neue-2.4.zip" diff --git a/user/consolekit2/APKBUILD b/user/consolekit2/APKBUILD index 3325c3cb1..3c7e5035b 100644 --- a/user/consolekit2/APKBUILD +++ b/user/consolekit2/APKBUILD @@ -3,7 +3,7 @@ pkgbase=ConsoleKit2 pkgname=consolekit2 pkgver=1.2.1 -pkgrel=0 +pkgrel=1 pkgdesc="Framework for defining and tracking users, login sessions, and seats" provides="consolekit=$pkgver" replaces="consolekit" @@ -18,7 +18,8 @@ checkdepends="libxml2-utils" subpackages="$pkgname-dev $pkgname-doc $pkgname-lang $pkgname-openrc" source="https://github.com/ConsoleKit2/$pkgbase/releases/download/$pkgver/$pkgbase-$pkgver.tar.bz2 consolekit2.initd - pam-foreground-compat.ck" + pam-foreground-compat.ck + poweroff.patch" # Capital "ConsoleKit" builddir="$srcdir"/$pkgbase-$pkgver @@ -54,4 +55,5 @@ package() { sha512sums="31befe89f7fa604138bfb0722fc6cf12f0934bac004f98fc331004eb5a7f466ed7bd0dc9adc9869da739974208f9a3bc125068ff8a60d4b2badb58ef70a3eb10 ConsoleKit2-1.2.1.tar.bz2 8c16c452707475bdd4a50d3ade367d52ad92a6560be48b4e21e5b5eadef6e56c39d3d03d3a64f9b45a59eca50179cf5aa9c11978904d5d101db7498fb9bc0339 consolekit2.initd -3b114fbbe74cfba0bfd4dad0eb1b85d08b4979a998980c1cbcd7f44b8a16b0ceca224680d4f4a1644cd24698f8817e5e8bdfcdc4ead87a122d0e323142f47910 pam-foreground-compat.ck" +3b114fbbe74cfba0bfd4dad0eb1b85d08b4979a998980c1cbcd7f44b8a16b0ceca224680d4f4a1644cd24698f8817e5e8bdfcdc4ead87a122d0e323142f47910 pam-foreground-compat.ck +033595766671f545ba6c9f3fcb529547d20359cdd8eb901bb7a6c3b319b495038e8072e3b01f2fd264f592b0c7825a79282d8bc590f057a5f62e9fdfedde9c68 poweroff.patch" diff --git a/user/consolekit2/poweroff.patch b/user/consolekit2/poweroff.patch new file mode 100644 index 000000000..8ae9d21a5 --- /dev/null +++ b/user/consolekit2/poweroff.patch @@ -0,0 +1,22 @@ +Most users expect "shutdown" to also power off the machine when +requested from a graphical environment. "Actions after halting are +unspecified" when using -h (LSB 3.0) - sysvinit additionally tries to +power off when using -h, whereas s6-linux-init only halts. +Use the **non-standard** -P option (implemented by sysvinit and +s6-linux-init since 1.0.2.0) to request power off after halting. + +--- ConsoleKit2-1.2.1/tools/linux/ck-system-stop 2017-06-02 01:31:44.000000000 +0000 ++++ ConsoleKit2-1.2.1/tools/linux/ck-system-stop 2019-06-09 17:40:31.110006347 +0000 +@@ -2,10 +2,10 @@ + + #Try for common tools + if [ -x "/sbin/shutdown" ] ; then +- /sbin/shutdown -h now ++ /sbin/shutdown -hP now + exit $? + elif [ -x "/usr/sbin/shutdown" ] ; then +- /usr/sbin/shutdown -h now ++ /usr/sbin/shutdown -hP now + exit $? + else + exit 1 diff --git a/user/cracklib/APKBUILD b/user/cracklib/APKBUILD index eba2a0c49..ebc721a79 100644 --- a/user/cracklib/APKBUILD +++ b/user/cracklib/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=cracklib -pkgver=2.9.6 +pkgver=2.9.7 pkgrel=0 pkgdesc="Library for checking passwords against dictionary words" url=" " @@ -11,17 +11,15 @@ depends="" makedepends="" subpackages="$pkgname-dev $pkgname-lang" triggers="$pkgname.trigger=/usr/share/dict" -source="https://github.com/cracklib/cracklib/releases/download/cracklib-$pkgver/cracklib-$pkgver.tar.gz +source="https://github.com/cracklib/cracklib/releases/download/v$pkgver/cracklib-$pkgver.tar.bz2 $pkgname.trigger " -prepare() { - cd "$builddir" - default_prepare -} +# secfixes: +# 2.9.7-r0: +# - CVE-2016-6318 build() { - cd "$builddir" ./configure \ --build=$CBUILD \ --host=$CHOST \ @@ -33,15 +31,13 @@ build() { } check() { - cd "$builddir" make test } package() { - cd "$builddir" make DESTDIR="$pkgdir" install install -D -m644 dicts/cracklib-small "$pkgdir"/usr/share/dict/cracklib-small } -sha512sums="2b09672e5b412d670e7ed911ebf0c0023fe2901ea05c9c02eefb7a58a13cddbc27a65d75bb20be9f8cebf4c90a9a56dfe1a3b656dff62b1d6048f5376e671786 cracklib-2.9.6.tar.gz +sha512sums="f6bf65ac092ba46ff78ddbc115692260fb76dc71219cd679d2ea935ebfb9e709fbb30259a7406743ed00dbdc415335b3ac9d9fcba1d204ea36d5eb96bf1333a2 cracklib-2.9.7.tar.bz2 deef4710a3bf78348adfe699ff995acc21a7671ab03c4dd28da7f38f4a83008af4c97c9c1d4e1e98a47c0148c84146b36477f41f98fb0ee028cc0fadebb85ab9 cracklib.trigger" diff --git a/user/cups-filters/APKBUILD b/user/cups-filters/APKBUILD index 98205aecb..7ebfd4e0d 100644 --- a/user/cups-filters/APKBUILD +++ b/user/cups-filters/APKBUILD @@ -1,6 +1,6 @@ # Maintainer: Max Rees <maxcrees@me.com> pkgname=cups-filters -pkgver=1.21.6 +pkgver=1.22.5 pkgrel=0 pkgdesc="OpenPrinting CUPS filters and backends" url="https://wiki.linuxfoundation.org/openprinting/cups-filters" @@ -15,7 +15,6 @@ subpackages="$pkgname-dev $pkgname-doc $pkgname-libs" source="https://www.openprinting.org/download/cups-filters/cups-filters-$pkgver.tar.xz" build() { - cd "$builddir" ./configure \ --build=$CBUILD \ --host=$CHOST \ @@ -37,12 +36,10 @@ build() { } check() { - cd "$builddir" make check } package() { - cd "$builddir" make -j1 DESTDIR="$pkgdir" install # the pdf.utf-8 symlink isn't quite good enough cd "$pkgdir"/usr/share/cups/charsets && \ @@ -62,4 +59,4 @@ libs() { mv "$pkgdir"/usr/lib/lib*.so.* "$subpkgdir"/usr/lib/ } -sha512sums="804250745ac710706ff1bfa6e161c0b1a8a65a74850a76a311b7614694a7e5d07f01dfd15f277ad79ed7fe1e84ea680bab1643e0b82cefa3e26603fa2eea935a cups-filters-1.21.6.tar.xz" +sha512sums="ed33e6d6f090c00f0f0d1d012d3b394bfaa1f81feeb5b0b7ead1dffa2399f0165ce916a99c3bf28aca7f279bffba5b6575feff700130cabfcd46eb4c904d5c59 cups-filters-1.22.5.tar.xz" diff --git a/user/cups/APKBUILD b/user/cups/APKBUILD index 156eb247c..f37bc34d0 100644 --- a/user/cups/APKBUILD +++ b/user/cups/APKBUILD @@ -1,7 +1,7 @@ # Maintainer: pkgname=cups -pkgver=2.2.10 -pkgrel=1 +pkgver=2.2.11 +pkgrel=0 pkgdesc="The CUPS Printing System" url="https://www.cups.org/" arch="all" @@ -127,7 +127,7 @@ _mv() { done } -sha512sums="1393987a263ebf20089dd3008ae4ed770a27a1f289032604eb9e18f2e863bd0e4215a70118f5a6d3940875625278b6798fbc9070e791ec559179c6cf7dc7b05f cups-2.2.10-source.tar.gz +sha512sums="21a6916041b50044d336871f10d1192635458a3d318f19a18ad21d27027dd3839400601019e758424c218225a34aba148ba3a57f0ce3fe14c4df03bd1fde3403 cups-2.2.11-source.tar.gz cf64211da59e79285f99d437c02fdd7db462855fb2920ec9563ba47bd8a9e5cbd10555094940ceedeb41ac805c4f0ddb9147481470112a11a76220d0298aef79 cups.logrotate 2c2683f755a220166b3a1653fdd1a6daa9718c8f0bbdff2e2d5e61d1133306260d63a83d3ff41619b5cf84c4913fae5822b79553e2822858f38fa3613f4c7082 cupsd.initd 7a8cd9ac33b0dd4627c72df4275db8ccd7cf8e201bce3833719b42f532f526bb347b842e3ea1ef0d61855b5c6e1088b5d20b68942f2c2c0acf504d8d9728efd3 cups-no-export-ssllibs.patch diff --git a/user/dconf/APKBUILD b/user/dconf/APKBUILD new file mode 100644 index 000000000..988cfbae5 --- /dev/null +++ b/user/dconf/APKBUILD @@ -0,0 +1,37 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=dconf +pkgver=0.32.0 +pkgrel=0 +pkgdesc="Configuration management for the Gnome desktop environment" +url="https://gnome.org" +arch="all" +license="LGPL-2.0+ AND LGPL-2.1+" +depends="dbus" +makedepends="meson ninja + bash-completion dbus-dev docbook-xsl libxslt-dev python3-dev vala-dev" +subpackages="$pkgname-dev $pkgname-doc" +source="https://download.gnome.org/sources/dconf/${pkgver%.*}/dconf-$pkgver.tar.xz" + +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 +} + +sha512sums="09ae65ad365947aed24228b94978b290060264e55b443d18a743e943627703c92e16e3a5ca8a0aaf3549f7a1d5aad77bdc285d4c8519db705d3104ec22b111a0 dconf-0.32.0.tar.xz" diff --git a/user/dialog/APKBUILD b/user/dialog/APKBUILD index 0d8ab9abc..6e0547a1f 100644 --- a/user/dialog/APKBUILD +++ b/user/dialog/APKBUILD @@ -12,7 +12,7 @@ license="LGPL-2.1-only" depends="" makedepends="ncurses-dev" subpackages="$pkgname-doc" -source="ftp://ftp.invisible-island.net/$pkgname/$pkgname-$_realver.tgz" +source="https://invisible-mirror.net/archives/dialog/dialog-$_realver.tgz" builddir="$srcdir"/$pkgname-$_realver build() { diff --git a/user/dolphin/APKBUILD b/user/dolphin/APKBUILD index 2a7ec1437..cd3d15501 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.12.3 +pkgver=19.04.1 pkgrel=0 pkgdesc="Lightweight desktop file manager" url="https://www.kde.org/applications/system/dolphin/" @@ -16,7 +16,9 @@ makedepends="cmake extra-cmake-modules qt5-qtbase-dev kdoctools-dev kinit-dev baloo-dev kfilemetadata-dev kdelibs4support-dev kactivities-dev baloo-widgets-dev" subpackages="$pkgname-doc $pkgname-lang" -source="https://download.kde.org/stable/applications/$pkgver/src/dolphin-$pkgver.tar.xz" +source="https://download.kde.org/stable/applications/$pkgver/src/dolphin-$pkgver.tar.xz + frameworks.patch + " build() { cd "$builddir" @@ -44,4 +46,5 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="369592af52053550eb482fecfbb54fda3d65db75b0bcf000f88c32d4e709e056f8f5399427674b3aac0bcea438fe8fa24bdbb08109373e0c44e495d9c772da1f dolphin-18.12.3.tar.xz" +sha512sums="a967e5cb5606c7eba00d6a1eb88336b86e02c6a80cf04d5be3fe7ba573243c36a64275ca61c512bd5b212a9d647b1c3f59c9f5572cade57da3dc1fd031d3eabf dolphin-19.04.1.tar.xz +4ec4b440f5ed52439152fb6132448e674f8e357413ef1eae339cfefb602a82909bceba85f5f517b51a985e3101d6be42b25bee6a4dd338a190d995deef57c708 frameworks.patch" diff --git a/user/dolphin/frameworks.patch b/user/dolphin/frameworks.patch new file mode 100644 index 000000000..3fc7130bb --- /dev/null +++ b/user/dolphin/frameworks.patch @@ -0,0 +1,11 @@ +--- dolphin-19.04.0/CMakeLists.txt.old 2019-04-12 00:02:11.000000000 +0000 ++++ dolphin-19.04.0/CMakeLists.txt 2019-04-18 20:17:53.396872289 +0000 +@@ -8,7 +8,7 @@ + project(Dolphin VERSION ${KDE_APPLICATIONS_VERSION}) + + set(QT_MIN_VERSION "5.8.0") +-set(KF5_MIN_VERSION "5.56.0") ++set(KF5_MIN_VERSION "5.54.0") + + # ECM setup + find_package(ECM ${KF5_MIN_VERSION} CONFIG REQUIRED) diff --git a/user/dosbox/APKBUILD b/user/dosbox/APKBUILD index 0b9418d50..e8674b531 100644 --- a/user/dosbox/APKBUILD +++ b/user/dosbox/APKBUILD @@ -2,7 +2,7 @@ # Maintainer: Horst Burkhardt <horst@adelielinux.org> pkgname=dosbox pkgver=0.82.7 -pkgrel=1 +pkgrel=2 pkgdesc="Emulator for MS-DOS games" url="https://github.com/joncampbell123/dosbox-x/" arch="all !s390x" @@ -15,6 +15,7 @@ source="https://github.com/joncampbell123/dosbox-x/archive/dosbox-x-wip-20180513 asmfix.patch posix-headers.patch constness.patch + gcc8-pmmx.patch " builddir="$srcdir/dosbox-x-dosbox-x-wip-20180513-1316" @@ -40,4 +41,5 @@ sha512sums="38b7423b695f3b0dfd26f8c8913f26afba73ea6235bb205ec3a5d7f08ef3c74a9b6c daf0efea03d6295f5a20d8d197f7d0ba38e0608edcfe8be19fc6091b783885d523557674f0f7df83b88186b77794723106cf7a0e02125d2cc75ecfd7d51fa91d porttalk-fix.patch 266ede57d21030f7752287f18660b47e9185a9aef9d022337dded9c9ce93e572691b41aca878f8a28c67bf5d217c7e84912336c21aacf594085dc31d99862ebf asmfix.patch 462e84d5bac8fb2c1317b303d1bdda72a50e9eedfb5251450cb8d0f98f4297d6a483eb2c95624cbc8d25e917788032dd1e7d8b0d06d82dad6600f8bd6eec85f4 posix-headers.patch -775d8f209ea04a81fda5c3dcf8186b529248befb962019c66e60344a5e07c95462f9cc4acf0f82c44635fc86f1b4817030792a1900d36e6d911b6f782722f320 constness.patch" +775d8f209ea04a81fda5c3dcf8186b529248befb962019c66e60344a5e07c95462f9cc4acf0f82c44635fc86f1b4817030792a1900d36e6d911b6f782722f320 constness.patch +0e23ccef2c238583b1fbbf598da95f6e5f805edef37bd08d0d0c4a69e92f11b935b94dd3a8d889dc9587ec264b8540169b2858116f20d8467c345a179893090d gcc8-pmmx.patch" diff --git a/user/dosbox/gcc8-pmmx.patch b/user/dosbox/gcc8-pmmx.patch new file mode 100644 index 000000000..3b86802ed --- /dev/null +++ b/user/dosbox/gcc8-pmmx.patch @@ -0,0 +1,32 @@ +From 771f1c8304253fcb95aef54da739f43712aea726 Mon Sep 17 00:00:00 2001 +From: Jonathan Campbell <jonathan@castus.tv> +Date: Sun, 20 May 2018 19:30:58 -0700 +Subject: [PATCH] Suddenly MinGW GCC 7.3.0 does not allow the dynamic core to + declare EBP clobbered. Fix dynamic core entry appropriately + +--- + src/cpu/core_dyn_x86/risc_x86.h | 4 +++- + 1 file changed, 3 insertions(+), 1 deletion(-) + +diff --git a/src/cpu/core_dyn_x86/risc_x86.h b/src/cpu/core_dyn_x86/risc_x86.h +index dea5ae0ca..d2a847a4f 100644 +--- a/src/cpu/core_dyn_x86/risc_x86.h ++++ b/src/cpu/core_dyn_x86/risc_x86.h +@@ -130,13 +130,15 @@ static BlockReturn gen_runcode(Bit8u * code) { + #else + register Bit32u tempflags=reg_flags & FMASK_TEST; + __asm__ volatile ( ++ "pushl %%ebp \n" +- "call 1f ; 1: addl $run_return_adress-.,(%%esp) \n" ++ "pushl $(run_return_adress) \n" + "pushl %2 \n" + "jmp *%3 \n" + "run_return_adress: \n" ++ "popl %%ebp \n" + :"=a" (retval), "=c" (tempflags) + :"r" (tempflags),"r" (code) +- :"%edx","%ebx","%edi","%esi","%ebp","cc","memory" ++ :"%edx","%ebx","%edi","%esi"/*,"%ebp"*/,"cc","memory" /* NTS: GCC 7.3.0 MinGW suddenly will not allow this code to declare EBP clobbered */ + ); + reg_flags=(reg_flags & ~FMASK_TEST) | (tempflags & FMASK_TEST); + #endif diff --git a/user/dragonplayer/APKBUILD b/user/dragonplayer/APKBUILD index 59c394962..2e9421b1e 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.12.3 +pkgver=19.04.1 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="1173ca6bc1fa65161e35add94f08681de211000b571456edb41015d72f9e4a0ae2e5b1d323dcd3e599f35f54e24ce7714771e89d53c8c9a135a1641cf91e862a dragon-18.12.3.tar.xz" +sha512sums="80ba2e643b79e9f83edc01e0fe5def947e4d674950655795df7adc9760221e1d6b969f1e37d11d7ed6711bf26a56fd36807a5846b7f92973e63424abc5371aa6 dragon-19.04.1.tar.xz" diff --git a/user/engrampa/APKBUILD b/user/engrampa/APKBUILD new file mode 100644 index 000000000..22f4d94db --- /dev/null +++ b/user/engrampa/APKBUILD @@ -0,0 +1,39 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=engrampa +pkgver=1.22.1 +pkgrel=0 +pkgdesc="Archive manager for the MATE desktop environment" +url="https://mate-desktop.org" +arch="all" +license="GPL-2.0+ AND LGPL-2.0+" +depends="" +makedepends="caja-dev file-dev gtk+3.0-dev intltool itstool json-glib-dev + libsm-dev libxml2-utils" +subpackages="$pkgname-doc $pkgname-lang" +source="https://pub.mate-desktop.org/releases/${pkgver%.*}/engrampa-$pkgver.tar.xz" + +build() { + cd "$builddir" + ./configure \ + --build=$CBUILD \ + --host=$CHOST \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --localstatedir=/var \ + --enable-magic + make +} + +check() { + cd "$builddir" + make check +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install +} + +sha512sums="111eeb470555ae8edb7754159bb2e70b03cbbc7b1c9d61c253d9d67e50d84ff0e0654e16547883c39aeeb223e8ba58201d45b50819784fc6cf7a21f0cf176c70 engrampa-1.22.1.tar.xz" diff --git a/user/eom/APKBUILD b/user/eom/APKBUILD new file mode 100644 index 000000000..a9a26040a --- /dev/null +++ b/user/eom/APKBUILD @@ -0,0 +1,39 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=eom +pkgver=1.22.1 +pkgrel=0 +pkgdesc="Image viewer for the MATE desktop environment" +url="https://mate-desktop.org" +arch="all" +license="GPL-2.0+ AND LGPL-2.0+ AND GPL-2.0-only" +depends="" +makedepends="gobject-introspection-dev gtk+3.0-dev intltool itstool + mate-desktop-dev libjpeg-turbo-dev libexif-dev libpeas-dev librsvg-dev + libxml2-dev libxml2-utils" +subpackages="$pkgname-dev $pkgname-doc $pkgname-lang" +source="https://pub.mate-desktop.org/releases/${pkgver%.*}/eom-$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="f510de62b9b6f11d02df067128042d6905484e0509a939b7919405d0c1dd03fe4b6735dcd8ccf780d36c5713f4585b50b2727645a454da148307a74cf542be87 eom-1.22.1.tar.xz" diff --git a/user/ethtool/APKBUILD b/user/ethtool/APKBUILD index 8d4823e3d..e24ad4d76 100644 --- a/user/ethtool/APKBUILD +++ b/user/ethtool/APKBUILD @@ -1,7 +1,7 @@ # Contributor: Natanael Copa <ncopa@alpinelinux.org> # Maintainer: Max Rees <maxcrees@me.com> pkgname=ethtool -pkgver=4.18 +pkgver=5.0 pkgrel=0 pkgdesc="Utility for controlling network drivers and hardware" url="https://mirrors.edge.kernel.org/pub/software/network/ethtool/" @@ -12,7 +12,6 @@ subpackages="$pkgname-doc" source="https://www.kernel.org/pub/software/network/ethtool/$pkgname-$pkgver.tar.xz" build() { - cd "$builddir" ./configure \ --build=$CBUILD \ --host=$CHOST \ @@ -24,13 +23,11 @@ build() { } check() { - cd "$builddir" make check } package() { - cd "$builddir" make DESTDIR="$pkgdir" install } -sha512sums="e77f9967be4634955640d9dccbc539455d333bcbad61326617dffea32cfd13a72a7dda4087caf6fff41b49c9ce476435cc1310e131705d0ad402685e10b4fb0e ethtool-4.18.tar.xz" +sha512sums="9ff6433466585e38dd0dbb99ed06430cd885f26ef4e11f6b95c024ed7511c376f8d86ff53c298cb8e811193500514737ce21eb0cd925bede0373799eb3a990b6 ethtool-5.0.tar.xz" diff --git a/user/eudev/APKBUILD b/user/eudev/APKBUILD index 5b9aa2526..f1cc65903 100644 --- a/user/eudev/APKBUILD +++ b/user/eudev/APKBUILD @@ -2,21 +2,20 @@ # Maintainer: pkgname=eudev pkgver=3.2.7 -pkgrel=0 +pkgrel=1 pkgdesc="OpenRC compatible fork of systemd-udev" url="https://wiki.gentoo.org/wiki/Project:Eudev" arch="all" options="!checkroot" license="GPL-2.0-only" depends="" -depends_dev="" -replaces="udev udev-init-scripts" -provides="udev=176" makedepends="gperf glib-dev linux-headers kmod-dev gobject-introspection-dev util-linux-dev" checkdepends="tree xz" subpackages="$pkgname-dev $pkgname-doc $pkgname-libs $pkgname-openrc $pkgname-netifnames::noarch" +provides="udev=176" +replaces="udev udev-init-scripts" source="http://dev.gentoo.org/~blueness/$pkgname/$pkgname-$pkgver.tar.gz default-rules.patch load-fbcon.patch @@ -102,6 +101,13 @@ netifnames() { openrc() { replaces="udev-init-scripts-openrc" default_openrc + install -d "$subpkgdir"/usr/share/runlevels/openrc/sysinit + # https://bts.adelielinux.org/show_bug.cgi?id=51 + # if eudev is installed, it should be running in the sysinit runlevel + ln -s /etc/init.d/udev \ + "$subpkgdir"/usr/share/runlevels/openrc/sysinit/udev + ln -s /etc/init.d/udev-trigger \ + "$subpkgdir"/usr/share/runlevels/openrc/sysinit/udev-trigger } sha512sums="e6c8ec86ae434c967f6a568fa0b281229bb87be7e3fec025dc3e0225de7843ffaa5dd65bdeffefbc91e9e2911aa3de9df84c76148fe8863ff60fba4c88653c40 eudev-3.2.7.tar.gz diff --git a/user/evince/APKBUILD b/user/evince/APKBUILD index 9f9e7172e..9f8ba5d66 100644 --- a/user/evince/APKBUILD +++ b/user/evince/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=evince -pkgver=3.31.4 +pkgver=3.32.0 pkgrel=0 pkgdesc="GNOME document viewer" url="https://wiki.gnome.org/Apps/Evince" @@ -13,8 +13,8 @@ makedepends="djvulibre-dev glib-dev gobject-introspection-dev gtk+3.0-dev itstool libarchive-dev libexecinfo-dev libgxps-dev libsecret-dev libspectre-dev libxml2-dev libxml2-utils poppler-dev tiff-dev zlib-dev" -subpackages="$pkgname-doc $pkgname-lang" -source="https://ftp.gnome.org/pub/gnome/sources/evince/3.31/evince-$pkgver.tar.xz" +subpackages="$pkgname-dev $pkgname-doc $pkgname-lang" +source="https://ftp.gnome.org/pub/gnome/sources/evince/3.32/evince-$pkgver.tar.xz" build() { cd "$builddir" @@ -74,4 +74,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="bed3950fb5ec58855a915c9e06b158924fd07b41c022e281cbada30174d8918c69a29f3408d27db2f1df70e2ba6bc2c35a6f0d5075627397682b9602a6f94a0f evince-3.31.4.tar.xz" +sha512sums="565298a200d9ae2f6b4cb53c3cba0d0d0e4cfbef60e4145bfb9c82a5682947ceb2371e52c27179cd69a238cd387bcfd744d3c55df814b6347f07781aec3ea658 evince-3.32.0.tar.xz" diff --git a/user/exiv2/APKBUILD b/user/exiv2/APKBUILD index 12c8c21c6..7cf8693fe 100644 --- a/user/exiv2/APKBUILD +++ b/user/exiv2/APKBUILD @@ -3,7 +3,7 @@ pkgname=exiv2 pkgver=0.26 pkgrel=2 pkgdesc="Exif, IPTC and XMP metadata library and tools" -url="http://www.exiv2.org" +url="https://www.exiv2.org/" arch="all" options="!check" # No test suite. license="GPL-2.0+" diff --git a/user/featherpad/APKBUILD b/user/featherpad/APKBUILD index 85110b2c9..fc73865e7 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.3 +pkgver=0.9.4 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="f06749b0ab57e6869bb6568367a7ef777a0f91c6a9229fe7892e720f48020ceac36d6948159b0516f4d1c920bff4ceb23f6b29a492d58908305856d2f03c2d36 FeatherPad-0.9.3.tar.gz" +sha512sums="95fe137ccc0de49bb464b15aec586287e46b04ff2fe636d6092e39a6c5e3d633ca0b809181a728a8931a6628cdcf51cd0b91d8dfa58eee6a551fb3ec4ff42280 FeatherPad-0.9.4.tar.gz" diff --git a/user/ffmpeg/APKBUILD b/user/ffmpeg/APKBUILD index fdab8f0bd..dada6f23a 100644 --- a/user/ffmpeg/APKBUILD +++ b/user/ffmpeg/APKBUILD @@ -3,7 +3,7 @@ # Contributor: Jakub Skrzypnik <j.skrzypnik@openmailbox.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=ffmpeg -pkgver=4.1.1 +pkgver=4.1.3 pkgrel=0 pkgdesc="Record, convert, and stream audio and video" url="https://ffmpeg.org/" @@ -100,5 +100,5 @@ libs() { mv "$pkgdir"/usr/lib "$subpkgdir"/usr/ } -sha512sums="fe72680f1e4ca0b226199d1407803e1de11f00f5a88a23251182172cda4a7369cf1826c4ef86230bf60b0f9ff0d69382da5eeec26574a31eacd9935cf4eeb86f ffmpeg-4.1.1.tar.xz +sha512sums="0a540a0c5395f42c6079bc26d1b3baca453995693da7de21da469ce40b3a548bea14ff46a72c6f4c32256333855f9b86207cb8bf1d0dda33a17ddca54970daa3 ffmpeg-4.1.3.tar.xz 32652e18d4eb231a2e32ad1cacffdf33264aac9d459e0e2e6dd91484fced4e1ca5a62886057b1f0b4b1589c014bbe793d17c78adbaffec195f9a75733b5b18cb 0001-libavutil-clean-up-unused-FF_SYMVER-macro.patch" diff --git a/user/ffmpegthumbs/APKBUILD b/user/ffmpegthumbs/APKBUILD index 74d46e589..f49d6b865 100644 --- a/user/ffmpegthumbs/APKBUILD +++ b/user/ffmpegthumbs/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=ffmpegthumbs -pkgver=18.12.3 +pkgver=19.04.1 pkgrel=0 pkgdesc="KDE video thumbnail system using FFmpeg" url="https://www.KDE.org/" @@ -39,4 +39,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="50d15d72b4181bea11895d8fc79a898d11c21c2f5c8b5d37e046f2d03f8b4b09047d3558c763c272e6e854693797b1f7f4a093981bdaefa2f405ec5d4f66dec0 ffmpegthumbs-18.12.3.tar.xz" +sha512sums="f91ea978fd3682e6bb1510e03a01e21be9b682d8b5aecd95bff47fb64028e798dba36111b18602c9144e2dfae42bbacb905b9ac3f9cc2e6bcd263cee6e169fd9 ffmpegthumbs-19.04.1.tar.xz" diff --git a/user/fira/APKBUILD b/user/fira/APKBUILD index 6719c19b2..8d0b68e9b 100644 --- a/user/fira/APKBUILD +++ b/user/fira/APKBUILD @@ -1,22 +1,31 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=fira -pkgver=4.202 +pkgver=4.301 +_pkgver=${pkgver%.*}${pkgver#*.} +_monover=3.2 pkgrel=0 -pkgdesc="Typefaces from Mozilla" -url="https://mozilla.github.io/Fira/" +pkgdesc="Typefaces formerly from Mozilla" +url="https://bboxtype.com/typefaces/FiraSans/" arch="noarch" options="!check" # No test suite. license="OFL-1.1" depends="fontconfig" makedepends="" subpackages="" -source="Fira-$pkgver.tar.gz::https://github.com/mozilla/Fira/archive/$pkgver.tar.gz" -builddir="$srcdir/Fira-$pkgver" +source="https://bboxtype.com/downloads/Fira/Download_Folder_FiraSans_$_pkgver.zip + https://bboxtype.com/downloads/Fira/Fira_Mono_${_monover/./_}.zip" package() { - cd "$builddir" - install -m644 -Dt "$pkgdir"/usr/share/fonts/X11/OTF/ otf/*.otf + cd "$srcdir"/Download_Folder_FiraSans_$_pkgver/Fonts/Fira_Sans_OTF_$_pkgver + + for i in Compressed Condensed Normal; do + for j in Italic Roman; do + install -m644 -Dt "$pkgdir"/usr/share/fonts/X11/OTF/ $i/$j/*.otf + done + done + install -m644 -Dt "$pkgdir"/usr/share/fonts/X11/OTF/ "$srcdir"/Fira_Mono_3_2/Fonts/FiraMono_OTF_32/*.otf } -sha512sums="fec770fa038f2aa0654f9382f95aa1266a2655970f4c7755b237af9d1c09f47ce719f8daf3afc39812fc69448b9481ee0e2a1414f1d007ad70b4254c92950ebb Fira-4.202.tar.gz" +sha512sums="37e3b17b0c90b99e704a9f54887d9029a5536fb16cc31bfc52d36d87aa20b3df5b024ea4181cda6068364d249a3e7bf1371a5d07e9f4aa5d93518ac3401d3e97 Download_Folder_FiraSans_4301.zip +476ead044a97c7b46fb386e009a92e7ddd5499cd30f65a8e0225084aa2d24d2527bde9c90f195ffe0d4c3922d250abd969751e8c3c08bf767480f11b83163849 Fira_Mono_3_2.zip" diff --git a/user/fluidsynth/APKBUILD b/user/fluidsynth/APKBUILD index dab03f8e1..1630ac43d 100644 --- a/user/fluidsynth/APKBUILD +++ b/user/fluidsynth/APKBUILD @@ -1,14 +1,14 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=fluidsynth -pkgver=2.0.4 +pkgver=2.0.5 pkgrel=0 pkgdesc="Real-time, software synthesiser based on SoundFont 2" url="http://www.fluidsynth.org/" arch="all" license="LGPL-2.1+" depends="" -makedepends="alsa-lib-dev dbus-dev glib-dev libsndfile-dev" +makedepends="alsa-lib-dev dbus-dev glib-dev libsndfile-dev pulseaudio-dev" subpackages="$pkgname-dev $pkgname-doc $pkgname-libs" source="fluidsynth-$pkgver.tar.gz::https://github.com/FluidSynth/fluidsynth/archive/v$pkgver.tar.gz" @@ -34,4 +34,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="d58ddc5f4da9bb5954a82749617548ef32edd25f6ca5c6d5c2b06d23090784ec175d2422553a66776f543c6b253f037a6cf1e717a853344ffb899fa53752eec0 fluidsynth-2.0.4.tar.gz" +sha512sums="5344ac889d2927dc2465bae40096d756a9bf9b1100e287ba0621c55ffc76f9cb8fa763f6bc832d701cd0ad2997965cf344f58ae4b3dd445eb3491e3659c093d9 fluidsynth-2.0.5.tar.gz" diff --git a/user/fontawesome/APKBUILD b/user/fontawesome/APKBUILD index 89d614288..a98397685 100644 --- a/user/fontawesome/APKBUILD +++ b/user/fontawesome/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=fontawesome -pkgver=5.7.0 +pkgver=5.8.1 pkgrel=0 pkgdesc="Typeface for iconography" url="https://fontawesome.com" @@ -12,11 +12,11 @@ depends="fontconfig" makedepends="" subpackages="" source="https://use.fontawesome.com/releases/v$pkgver/fontawesome-free-$pkgver-desktop.zip" -builddir="$srcdir/fontawesome-free-5.7.0-desktop/otfs" +builddir="$srcdir/fontawesome-free-$pkgver-desktop/otfs" package() { cd "$builddir" install -m644 -Dt "$pkgdir"/usr/share/fonts/X11/OTF/ *.otf } -sha512sums="34f9e3c4bbf03f1d3cd247717a6c2ea19b83321a0c4db6587cba2276ccf7d59e982dd2696d58da8d212c4f30ab87b58601edc1b98bd33339f1fd45eef1e18a0d fontawesome-free-5.7.0-desktop.zip" +sha512sums="078b67e41d5161651e6571ca7cd92fe78a400c9e92108fe0ebc71b0339a1b758fed5f255d666f29c5f59934a949df209ba9159b0232822c7caee404714311135 fontawesome-free-5.8.1-desktop.zip" diff --git a/user/free42/APKBUILD b/user/free42/APKBUILD index ba8814388..c0f490ea0 100644 --- a/user/free42/APKBUILD +++ b/user/free42/APKBUILD @@ -2,9 +2,9 @@ # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=free42 pkgver=2.0.22 -pkgrel=1 +pkgrel=2 pkgdesc="Scientific programmable calculator" -url="http://thomasokken.com/free42/" +url="https://thomasokken.com/free42/" arch="all" options="!check" # No test suite. license="GPL-2.0-only AND Public-Domain" @@ -15,11 +15,12 @@ source="https://distfiles.adelielinux.org/source/free42-nologo-$pkgver.tgz free42.desktop libx11.patch patch.patch + unsigned-char.patch " -builddir="$srcdir/free42-nologo-$pkgver/gtk" +builddir="$srcdir/free42-nologo-$pkgver" build() { - cd "$builddir" + cd "$builddir"/gtk local SAVE_CFLAGS SAVE_CFLAGS=$CFLAGS unset CFLAGS @@ -29,13 +30,13 @@ build() { } package() { - cd "$builddir" - install -D -m755 free42dec "$pkgdir"/usr/bin/free42dec + install -D -m755 gtk/free42dec "$pkgdir"/usr/bin/free42dec install -D -m644 "$srcdir"/free42.desktop \ "$pkgdir"/usr/share/applications/free42.desktop } sha512sums="865e8cce86a882aba10e7e756308e195a6675f0b6db4b881e7b7df67de95f5169ca801005e25dd0e61a70a5a0cd6a374b0cf58003251cdc9dc526a2506e18e1d free42-nologo-2.0.22.tgz f52700d234719f4ee7cdd369fc5f28ade190ff77ed1a824cd2cdaeef62419700de3d85a28fd6ae378f904e018813dc4145ca4cc9f2669fdf50f3e13baa7ec634 free42.desktop -f8434fd1c20f0dd40de5773615eaf798329870231f7ce66785a1bc8e208fa0a64919f48ac3eea5ab9ceb818570ae93f61b0e81baec4261bbdfbf04237108ab6a libx11.patch -7b48609bff5466d81f42ed65405cd09e98fa675c087837b22caebab2b97420a34d1156399c3b18608bcae42896c12aa63a6f87515f5677587dfff6ed135dc760 patch.patch" +470eb88936c65a053860af94955bf979973bad48c4b1f593598818f8ff0c39c4869613a05ad0e82b7a3fc6ce19fa7b8642a38e726d4a48e3fe63a9cbac8a45d6 libx11.patch +33afc0d0deb88143b3ec0a09fd2ba3de14d6ad269c9ecff55c9e89348d7bf76e2bbf880e0eef9a2c71eedb1da9136051a471d4aaaf9aa5acd4e992964a69692b patch.patch +2e2e6c5a00de96f2ca1c61a0039a945bf0416c889b9131abf89c6eca4d8816ff0144c32634ac7c7b112fc1bd8cd6d816f22f2aed31bde59b96a79b9588235a02 unsigned-char.patch" diff --git a/user/free42/libx11.patch b/user/free42/libx11.patch index 54c4c6cc0..aa07ba2d1 100644 --- a/user/free42/libx11.patch +++ b/user/free42/libx11.patch @@ -1,5 +1,5 @@ ---- gtk/Makefile.old 2019-01-13 14:52:39.000000000 +0000 -+++ gtk/Makefile 2019-01-17 01:38:40.500000000 +0000 +--- free42/gtk/Makefile.old 2019-01-13 14:52:39.000000000 +0000 ++++ free42/gtk/Makefile 2019-01-17 01:38:40.500000000 +0000 @@ -35,7 +35,7 @@ -D_WCHAR_T_DEFINED diff --git a/user/free42/patch.patch b/user/free42/patch.patch index e84b3f7b8..f79bb6c8e 100644 --- a/user/free42/patch.patch +++ b/user/free42/patch.patch @@ -1,5 +1,5 @@ ---- gtk/intel-lib-linux.patch.old 2019-01-13 14:52:39.000000000 +0000 -+++ gtk/intel-lib-linux.patch 2019-01-17 01:27:01.470000000 +0000 +--- free42/gtk/intel-lib-linux.patch.old 2019-01-13 14:52:39.000000000 +0000 ++++ free42/gtk/intel-lib-linux.patch 2019-01-17 01:27:01.470000000 +0000 @@ -1668,3 +1668,62 @@ }
@@ -63,8 +63,8 @@ + else + __TMP := $(strip $(subst /, ,$(firstword $(CC)))) + CC_NAME := $(word $(words $(__TMP)), $(__TMP)) ---- gtk/intel-lib-linux.patch.old 2019-01-23 03:43:48.830000000 +0000 -+++ gtk/intel-lib-linux.patch 2019-01-23 03:46:18.170000000 +0000 +--- free42/gtk/intel-lib-linux.patch.old 2019-01-23 03:43:48.830000000 +0000 ++++ free42/gtk/intel-lib-linux.patch 2019-01-23 03:46:18.170000000 +0000 @@ -1727,3 +1727,14 @@ else __TMP := $(strip $(subst /, ,$(firstword $(CC)))) diff --git a/user/free42/unsigned-char.patch b/user/free42/unsigned-char.patch new file mode 100644 index 000000000..af3f47ef5 --- /dev/null +++ b/user/free42/unsigned-char.patch @@ -0,0 +1,15 @@ +This only breaks on platforms where 'char' is signed. + +(currently, pmmx and x86_64) + +--- free42/common/core_display.cc.old 2019-01-13 14:52:39.000000000 +0000 ++++ free42/common/core_display.cc 2019-04-17 23:01:56.398695993 +0000 +@@ -43,7 +43,7 @@ + #endif + + +-static char bigchars[130][5] = ++static unsigned char bigchars[130][5] = + { + { 0x08, 0x08, 0x2a, 0x08, 0x08 }, + { 0x22, 0x14, 0x08, 0x14, 0x22 }, diff --git a/user/freetds/APKBUILD b/user/freetds/APKBUILD index ec1d26e66..07145e5b9 100644 --- a/user/freetds/APKBUILD +++ b/user/freetds/APKBUILD @@ -1,21 +1,19 @@ # Contributor: Michael Mason <ms13sp@gmail.com> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=freetds -pkgver=1.00.109 +pkgver=1.00.111 pkgrel=0 pkgdesc="Tabular Datastream Library" url="http://www.freetds.org/" arch="all" license="LGPL-2.0+" -depends= +depends="" makedepends="linux-headers openssl-dev unixodbc-dev" -install= subpackages="$pkgname-doc $pkgname-dev" source="ftp://ftp.freetds.org/pub/freetds/stable/$pkgname-$pkgver.tar.gz fix-includes.patch" build() { - cd "$builddir" ./configure \ --build=$CBUILD \ --host=$CHOST \ @@ -31,14 +29,12 @@ build() { } check() { - cd "$builddir" make -C "src/replacements" check } package() { - cd "$builddir" make -j1 DESTDIR="$pkgdir" install } -sha512sums="0c0742414aea533635a9d9b550d0cde10c14226a48d5ec9d353dfa07199d6788ae505e8e671945003a824a4049f11ddac1e4229eed51ac795c91dbf16ed6a4ef freetds-1.00.109.tar.gz +sha512sums="c7f0886aaa83ee626c9738486ebc256f6fbae297a1e152848c2fba8954661d3ee74278f40c781f2c25eb11f2df38e833031126017555b827115f6cd9163cf771 freetds-1.00.111.tar.gz d75d1aab6687586697f3e430db1e82f21208f10076b45996542eea682e36cbbbb344f479a9336fcfd294b5b87d7acb2ec5fb8ddd1914e990e23dd5e7ae93a0b6 fix-includes.patch" diff --git a/user/freetype/0001-Enable-table-validation-modules.patch b/user/freetype/0001-Enable-table-validation-modules.patch deleted file mode 100644 index 3e9451fa8..000000000 --- a/user/freetype/0001-Enable-table-validation-modules.patch +++ /dev/null @@ -1,34 +0,0 @@ -From c3680bf8d38cf759c1e33dcc2d2d51e0a4fea2f9 Mon Sep 17 00:00:00 2001 -From: "Jan Alexander Steffens (heftig)" <jan.steffens@gmail.com> -Date: Tue, 23 Jun 2015 08:40:29 +0200 -Subject: [PATCH 1/3] Enable table validation modules - ---- - modules.cfg | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/modules.cfg b/modules.cfg -index f30049c38cc45159..7b8e50fe1b34584a 100644 ---- a/modules.cfg -+++ b/modules.cfg -@@ -120,7 +120,7 @@ AUX_MODULES += cache - # TrueType GX/AAT table validation. Needs ftgxval.c below. - # - # No FT_CONFIG_OPTION_PIC support. --# AUX_MODULES += gxvalid -+AUX_MODULES += gxvalid - - # Support for streams compressed with gzip (files with suffix .gz). - # -@@ -143,7 +143,7 @@ AUX_MODULES += bzip2 - # OpenType table validation. Needs ftotval.c below. - # - # No FT_CONFIG_OPTION_PIC support. --# AUX_MODULES += otvalid -+AUX_MODULES += otvalid - - # Auxiliary PostScript driver component to share common code. - # --- -2.9.3 - diff --git a/user/freetype/0002-Enable-subpixel-rendering.patch b/user/freetype/0002-Enable-subpixel-rendering.patch deleted file mode 100644 index dfb57966e..000000000 --- a/user/freetype/0002-Enable-subpixel-rendering.patch +++ /dev/null @@ -1,25 +0,0 @@ -From 96f09f08417887b2618c177bccfb6da2906568d9 Mon Sep 17 00:00:00 2001 -From: "Jan Alexander Steffens (heftig)" <jan.steffens@gmail.com> -Date: Tue, 23 Jun 2015 08:43:07 +0200 -Subject: [PATCH 2/3] Enable subpixel rendering - ---- - include/freetype/config/ftoption.h | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/include/freetype/config/ftoption.h b/include/freetype/config/ftoption.h -index 90c123ef93e9ea04..67a361dd41e0b026 100644 ---- a/include/freetype/config/ftoption.h -+++ b/include/freetype/config/ftoption.h -@@ -122,7 +122,7 @@ FT_BEGIN_HEADER - /* This is done to allow FreeType clients to run unmodified, forcing */ - /* them to display normal gray-level anti-aliased glyphs. */ - /* */ --/* #define FT_CONFIG_OPTION_SUBPIXEL_RENDERING */ -+#define FT_CONFIG_OPTION_SUBPIXEL_RENDERING - - - /*************************************************************************/ --- -2.9.3 - diff --git a/user/freetype/0003-Enable-infinality-subpixel-hinting.patch b/user/freetype/0003-Enable-infinality-subpixel-hinting.patch deleted file mode 100644 index bbfa2a2cd..000000000 --- a/user/freetype/0003-Enable-infinality-subpixel-hinting.patch +++ /dev/null @@ -1,27 +0,0 @@ -From 220e96a9a8d7aff6ad0f0f1aa12c79cdb563331c Mon Sep 17 00:00:00 2001 -From: "Jan Alexander Steffens (heftig)" <jan.steffens@gmail.com> -Date: Mon, 29 Aug 2016 08:43:10 +0200 -Subject: [PATCH 3/3] Enable infinality subpixel hinting - ---- - include/freetype/config/ftoption.h | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/include/freetype/config/ftoption.h b/include/freetype/config/ftoption.h -index 67a361dd41e0b026..c4812862518b66a6 100644 ---- a/include/freetype/config/ftoption.h -+++ b/include/freetype/config/ftoption.h -@@ -675,8 +675,8 @@ FT_BEGIN_HEADER - /* [1] http://www.microsoft.com/typography/cleartype/truetypecleartype.aspx */ - /* */ - /* #define TT_CONFIG_OPTION_SUBPIXEL_HINTING 1 */ --#define TT_CONFIG_OPTION_SUBPIXEL_HINTING 2 --/* #define TT_CONFIG_OPTION_SUBPIXEL_HINTING ( 1 | 2 ) */ -+/* #define TT_CONFIG_OPTION_SUBPIXEL_HINTING 2 */ -+#define TT_CONFIG_OPTION_SUBPIXEL_HINTING ( 1 | 2 ) - - - /*************************************************************************/ --- -2.9.3 - diff --git a/user/freetype/0004-Enable-long-PCF-family-names.patch b/user/freetype/0004-Enable-long-PCF-family-names.patch deleted file mode 100644 index 675423a7c..000000000 --- a/user/freetype/0004-Enable-long-PCF-family-names.patch +++ /dev/null @@ -1,25 +0,0 @@ -From 62da6a0f7f5cb77859a793863c386c452411e2a6 Mon Sep 17 00:00:00 2001 -From: "Jan Alexander Steffens (heftig)" <jan.steffens@gmail.com> -Date: Sun, 14 May 2017 18:09:31 +0200 -Subject: [PATCH 4/4] Enable long PCF family names - ---- - include/freetype/config/ftoption.h | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/include/freetype/config/ftoption.h b/include/freetype/config/ftoption.h -index ebb44acdbbef9a47..0b39b417162707e4 100644 ---- a/include/freetype/config/ftoption.h -+++ b/include/freetype/config/ftoption.h -@@ -865,7 +865,7 @@ FT_BEGIN_HEADER - /* If this option is activated, it can be controlled with the */ - /* `no-long-family-names' property of the pcf driver module. */ - /* */ --/* #define PCF_CONFIG_OPTION_LONG_FAMILY_NAMES */ -+#define PCF_CONFIG_OPTION_LONG_FAMILY_NAMES - - - /*************************************************************************/ --- -2.13.0 - diff --git a/user/freetype/40-memcpy-fix.patch b/user/freetype/40-memcpy-fix.patch deleted file mode 100644 index 89e61cd0b..000000000 --- a/user/freetype/40-memcpy-fix.patch +++ /dev/null @@ -1,14 +0,0 @@ ---- ./src/psaux/psobjs.c~ 2006-04-26 16:38:17.000000000 +0200 -+++ ./src/psaux/psobjs.c 2006-09-10 15:01:13.000000000 +0200 -@@ -165,6 +165,11 @@ - return PSaux_Err_Invalid_Argument; - } - -+ if ( length < 0 ) { -+ FT_ERROR(( "ps_table_add: invalid length\n" )); -+ return PSaux_Err_Invalid_Argument; -+ } -+ - /* grow the base block if needed */ - if ( table->cursor + length > table->capacity ) - { diff --git a/user/freetype/APKBUILD b/user/freetype/APKBUILD index 652bef747..b2f5cd66e 100644 --- a/user/freetype/APKBUILD +++ b/user/freetype/APKBUILD @@ -1,25 +1,17 @@ # Contributor: Carlo Landmeter <clandmeter@gmail.com> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=freetype -pkgver=2.9.1 -pkgrel=2 +pkgver=2.10.0 +pkgrel=0 pkgdesc="TrueType font rendering library" url="https://www.freetype.org/" arch="all" license="FTL OR GPL-2.0+" options="!check" depends="" -depends_dev="" -makedepends="$depends_dev zlib-dev libpng-dev bzip2-dev" +makedepends="zlib-dev libpng-dev bzip2-dev" subpackages="$pkgname-dev $pkgname-doc" -source="http://download.savannah.gnu.org/releases/freetype/freetype-$pkgver.tar.bz2 - 40-memcpy-fix.patch - 0001-Enable-table-validation-modules.patch - 0003-Enable-infinality-subpixel-hinting.patch - 0004-Enable-long-PCF-family-names.patch - - freetype-profile.sh - " +source="http://download.savannah.gnu.org/releases/freetype/freetype-$pkgver.tar.bz2" # secfixes: # 2.9.1-r0: @@ -29,7 +21,6 @@ source="http://download.savannah.gnu.org/releases/freetype/freetype-$pkgver.tar. # - CVE-2017-8287 build() { - cd "$builddir" ./configure \ --build=$CBUILD \ --host=$CHOST \ @@ -43,11 +34,7 @@ build() { } package() { - cd "$builddir" make DESTDIR="$pkgdir" install - - install -Dm644 "$srcdir"/freetype-profile.sh \ - "$pkgdir"/etc/profile.d/freetype.sh } doc() { @@ -55,9 +42,4 @@ doc() { default_doc } -sha512sums="856766e1f3f4c7dc8afb2b5ee991138c8b642c6a6e5e007cd2bc04ae58bde827f082557cf41bf541d97e8485f7fd064d10390d1ee597f19d1daed6c152e27708 freetype-2.9.1.tar.bz2 -9981be8a3ea6f2cf856860b87a4e895e4610c9d5ea4beb611815e757e6080e060f6853ace02dd8ea55e5888cdf4bae5ad5eadd2d8a123754bb3c0bfe7ef41dea 40-memcpy-fix.patch -41a84be2631b53072a76b78c582575aa48b650ee7b00017d018381002bc25df10cf33da4954c95ef50db39f1fa566678e3b4ae9bfee1dfd705423fb53e53e494 0001-Enable-table-validation-modules.patch -7b52a3d67750d59b2c98e83dab4e0a0ab263142c2ca7bd5f8be5f8fe9cd1dc1f4debad44111c7886665329d8d2a3163756455618a6615df8f85d82bb0372d4dd 0003-Enable-infinality-subpixel-hinting.patch -64c20fbcbf48372ea35fe2e0dae8fec4be8c601c899a4a71913060c6ea4082a2f41d69701da511e09fee126bf198d560986469e2356bd088d2dd5961f437df63 0004-Enable-long-PCF-family-names.patch -7100cde5b2ca16bfbe968fce3e2eba5ba49e6ed53792d5db889c8d89e572d7d80da1338ccc9eeb9b243664ca2337467e9f73c1074bee0b34c417f6c7832ed390 freetype-profile.sh" +sha512sums="dfad66f419ea9577f09932e0730c0c887bdcbdbc8152fa7477a0c39d69a5b68476761deed6864ddcc5cf18d100a7a3f728049768e24afcb04b1a74b25b6acf7e freetype-2.10.0.tar.bz2" diff --git a/user/freetype/freetype-profile.sh b/user/freetype/freetype-profile.sh deleted file mode 100644 index a4cc6423b..000000000 --- a/user/freetype/freetype-profile.sh +++ /dev/null @@ -1,12 +0,0 @@ -# Subpixel hinting mode can be chosen by setting the right TrueType interpreter -# version. The available settings are: -# -# truetype:interpreter-version=35 # Classic mode (default in 2.6) -# truetype:interpreter-version=38 # Infinality mode -# truetype:interpreter-version=40 # Minimal mode (default in 2.7) -# -# There are more properties that can be set, separated by whitespace. Please -# refer to the FreeType documentation for details. - -# Uncomment and configure below -export FREETYPE_PROPERTIES="truetype:interpreter-version=38" diff --git a/user/fuse/APKBUILD b/user/fuse/APKBUILD index 92840ed41..690b69d51 100644 --- a/user/fuse/APKBUILD +++ b/user/fuse/APKBUILD @@ -1,8 +1,8 @@ # Contributor: Natanael Copa <ncopa@alpinelinux.org> # Maintainer: Max Rees <maxcrees@me.com> pkgname=fuse -pkgver=2.9.8 -pkgrel=2 +pkgver=2.9.9 +pkgrel=0 pkgdesc="Linux Filesystem in Userspace (legacy version)" url="https://github.com/libfuse/libfuse" arch="all" @@ -20,7 +20,6 @@ source="https://github.com/libfuse/libfuse/releases/download/$pkgname-$pkgver/$p # - CVE-2018-10906 build() { - cd "$builddir" UDEV_RULES_PATH='/lib/udev/rules.d' ./configure \ --build=$CBUILD \ --host=$CHOST \ @@ -36,10 +35,9 @@ build() { } package() { - cd "$builddir" make DESTDIR="$pkgdir" install rm -r "$pkgdir"/dev "$pkgdir"/etc/init.d } -sha512sums="0a9b14d96c6f98f5c903baf00114bfff72f9aeb97224702bbed370516b2b582401d5b436fcef979918ffd85d69ba4a82c8f722c0b35ebd50f7aa5f4ddfdcf8ad fuse-2.9.8.tar.gz +sha512sums="3d82fafd04f2924299bb09d2bb144935fa004a43fb9a6568e2e1cc5a60fded2efa1711029a0d7f12b3e6e4501f7217f2ee3545646d89da8dece083cb390f23e2 fuse-2.9.9.tar.gz 5672ceb35acabb4bd97b6efc30614f22def62882fe198e2a8598a074d45b6b5337c082a5e09b5e399b6e5212dc1fbde9071c2a5051534c32091444c350b9c657 fix-realpath.patch" diff --git a/user/fuse3/APKBUILD b/user/fuse3/APKBUILD index dc049071d..31ef0032c 100644 --- a/user/fuse3/APKBUILD +++ b/user/fuse3/APKBUILD @@ -2,7 +2,7 @@ # Maintainer: Max Rees <maxcrees@me.com> pkgname=fuse3 _pkgname=fuse -pkgver=3.2.6 +pkgver=3.5.0 pkgrel=0 pkgdesc="The reference implementation of the Linux FUSE (Filesystem in Userspace) interface" url="https://github.com/libfuse/libfuse" @@ -25,7 +25,6 @@ builddir="$srcdir/$_pkgname-$pkgver" # - CVE-2018-10906 build() { - cd "$builddir" meson \ --prefix=/usr \ --sysconfdir=/etc \ @@ -42,7 +41,6 @@ check() { } package() { - cd "$builddir" DESTDIR="$pkgdir" ninja -C output install rm -r "$pkgdir"/dev "$pkgdir"/etc/init.d @@ -72,6 +70,6 @@ openrc() { install_if="openrc fuse-common=$pkgver-r$pkgrel" } -sha512sums="3a1ef77ab4c79a24aad0b259e17f568a30a5faf53ac17eb25d05f30dc7423f0081583f5b3c284ca9196a01885843e97c323a84231272b7e2b55c8e73848a61b8 fuse-3.2.6.tar.xz +sha512sums="953066a25ab2f67fd5a1f15e97f8d739271c42a6260aa29ccc7b9ffddb9c972d2797d93d9ff0d34c6b51a20f3254ef6f748c14f852603280b318b36899867a27 fuse-3.5.0.tar.xz 1a9e1d1e8a7b0778ffde328e4322c73b5d57ec98d52767c846d755cce861ab27989823a75b6c5f994432ddb77fa351dfa4a8f948c9467c5f7d5f471e4608358b fix-realpath.patch 7f6a503ef23cfa8b809c544375c2d83ad56525269b48ad1a7dff0ce36f4bf2f2a3fafed9dc70a71ff6281b261db5f01829e16c06f041921a5d8c8d715a04a8c1 fuse.initd" diff --git a/user/gcompat/APKBUILD b/user/gcompat/APKBUILD index f5cde0815..e6b142f84 100644 --- a/user/gcompat/APKBUILD +++ b/user/gcompat/APKBUILD @@ -1,6 +1,6 @@ # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=gcompat -pkgver=0.3.0 +pkgver=0.4.0 pkgrel=0 pkgdesc="The GNU C Library compatibility layer for musl" url="https://code.foxkit.us/adelie/gcompat" @@ -8,11 +8,9 @@ arch="all" options="!check" # No test suite. license="UoI-NCSA" depends="" -makedepends="libucontext-dev" +makedepends="libucontext-dev utmps-dev" replaces="libc6-compat" -source="https://distfiles.adelielinux.org/source/gcompat/$pkgname-$pkgver.tar.xz - no-utmp.patch - " +source="https://distfiles.adelielinux.org/source/gcompat/$pkgname-$pkgver.tar.xz" _link_arch=$CARCH case "$CARCH" in @@ -23,8 +21,7 @@ x86) _ld="ld-linux.so.2" ;; pmmx) _ld="ld-linux.so.2" _link_arch=i386;; 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" ;; +ppc64*) _ld="ld64.so.2" ;; esac build() { @@ -37,5 +34,4 @@ package() { make LINKER_PATH="/lib/ld-musl-${_link_arch}.so.1" LOADER_NAME="$_ld" WITH_LIBUCONTEXT=YesPlease DESTDIR="$pkgdir" install } -sha512sums="1f7dd73efd556b7e0f7f1c80751185583de24daf4ab235b488ea1ab98cea2d3a94abed341b922be0bd43c8d539a00176b892c78acf09f2adacb279c09648b3be gcompat-0.3.0.tar.xz -34fbf97cfbad2bae219e238f5edcb55425c6d7c9be7dde02aa0e8223dbf163ff20f535539de2232a1ef3c6f47a92eac6e00484af99dc8beb192c761b15389b82 no-utmp.patch" +sha512sums="32b4038a031b9af2d5febb547fe9268eb829f40bb2437c94afe5b939e06e7337448ad7f2dce34362829d19672ede54eec8fc34dc755736dbc76f347906ba5ead gcompat-0.4.0.tar.xz" diff --git a/user/gdk-pixbuf/APKBUILD b/user/gdk-pixbuf/APKBUILD index 52876cc19..6092f1eff 100644 --- a/user/gdk-pixbuf/APKBUILD +++ b/user/gdk-pixbuf/APKBUILD @@ -1,6 +1,6 @@ # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=gdk-pixbuf -pkgver=2.38.0 +pkgver=2.38.1 pkgrel=0 pkgdesc="GTK+ image loading library" url="https://www.gtk.org/" @@ -24,7 +24,6 @@ replaces="gtk+" # - CVE-2017-6314 build() { - cd "$builddir" mkdir build cd build meson -Dprefix=/usr -Dinstalled_tests=false @@ -32,13 +31,11 @@ build() { } check() { - cd "$builddir"/build - ninja test + ninja -C build test } package() { - cd "$builddir"/build - DESTDIR="$pkgdir" ninja install + DESTDIR="$pkgdir" ninja -C build install } -sha512sums="10fcd7999dcff48d6e965306e208cc8ca324ba98f3f4f56755d015e96938bcfbfaadc56ed75142c037e3df34b04283cd4fdf043b32e3e091b32115fccde229f4 gdk-pixbuf-2.38.0.tar.xz" +sha512sums="e50badaad2ccb3c816ba0849be386ecb75ea3c7df203d0b0144541c463ad1ace86c0d190b7550e3f59f0cba9639acc5cc048b7127484287894e4df6d62777920 gdk-pixbuf-2.38.1.tar.xz" diff --git a/user/giblib/APKBUILD b/user/giblib/APKBUILD index dcc509921..22f125ef3 100644 --- a/user/giblib/APKBUILD +++ b/user/giblib/APKBUILD @@ -10,7 +10,7 @@ subpackages="$pkgname-doc $pkgname-dev" depends="" depends_dev="freetype-dev imlib2-dev libx11-dev libxext-dev zlib-dev" makedepends="$depends_dev" -source="https://distfiles.gentoo.org/distfiles/$pkgname-$pkgver.tar.gz" +source="http://distfiles.gentoo.org/distfiles/$pkgname-$pkgver.tar.gz" prepare() { cd "$builddir" diff --git a/user/giflib/APKBUILD b/user/giflib/APKBUILD index c8f01adce..8ab3be41d 100644 --- a/user/giflib/APKBUILD +++ b/user/giflib/APKBUILD @@ -1,7 +1,7 @@ # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=giflib -pkgver=5.1.4 -pkgrel=3 +pkgver=5.1.9 +pkgrel=0 pkgdesc="Library for reading and writing GIF images" url="https://sourceforge.net/projects/giflib/" arch="all" @@ -10,27 +10,21 @@ depends="" makedepends="libsm-dev libx11-dev util-linux-dev xmlto" checkdepends="coreutils" subpackages="$pkgname-dev $pkgname-doc $pkgname-utils" -source="http://downloads.sourceforge.net/sourceforge/$pkgname/$pkgname-$pkgver.tar.bz2 - xmlto-skip-validation.patch" +source="https://downloads.sourceforge.net/$pkgname/$pkgname-$pkgver.tar.bz2" build() { - cd "$builddir" - ./configure \ - --build=$CBUILD \ - --host=$CHOST \ - --prefix=/usr \ - --disable-static - make + sed -i '/^PREFIX =/d + /^OFLAGS/d' \ + Makefile + make PREFIX=/usr OFLAGS="$CFLAGS" } check() { - cd "$builddir" make check } package() { - cd "$builddir" - make DESTDIR="$pkgdir" install + make PREFIX=/usr DESTDIR="$pkgdir" install install -Dm644 COPYING "$pkgdir"/usr/share/licenses/$pkgname/COPYING } @@ -40,5 +34,4 @@ utils() { mv "$pkgdir"/usr/bin "$subpkgdir"/usr/ } -sha512sums="32b5e342056c210e6478e9cb3b6ceec9594dcfaf34feea1eb4dad633a081ed4465bceee578c19165907cb47cb83912ac359ceea666a8e07dbbb5420f9928f96d giflib-5.1.4.tar.bz2 -36f92cb092ee9dc463aa1b6b9857d1a1591fa5ed6bf973b02385a979a7178cf2c1f7fc75d6474c2fa90c090e9659178ab8cfe6bb3e147425828a1b5a59ca6f06 xmlto-skip-validation.patch" +sha512sums="f1e0c91fb90c7bf3f2b073f79b1bd4041df5178ff2e5b93975158fc2c6dd6c8ac888f8ff95c3a1804f988ce09154539c20a3196a40704b4d42a0f5846155e0ea giflib-5.1.9.tar.bz2" diff --git a/user/giflib/xmlto-skip-validation.patch b/user/giflib/xmlto-skip-validation.patch deleted file mode 100644 index 96573ad6c..000000000 --- a/user/giflib/xmlto-skip-validation.patch +++ /dev/null @@ -1,19 +0,0 @@ ---- ./doc/Makefile.in.orig 2013-07-15 14:59:04.840695596 +0000 -+++ ./doc/Makefile.in 2013-07-15 14:59:30.667643646 +0000 -@@ -379,13 +379,13 @@ - - - .xml.html: -- xmlto xhtml-nochunks $< -+ xmlto --skip-validation xhtml-nochunks $< - - .xml.1: -- xmlto man $< -+ xmlto --skip-validation man $< - - .xml.txt: -- xmlto txt $< -+ xmlto --skip-validation txt $< - - all: allhtml manpages - diff --git a/user/glib-networking/APKBUILD b/user/glib-networking/APKBUILD index 8cb1a8019..c0ef9ac59 100644 --- a/user/glib-networking/APKBUILD +++ b/user/glib-networking/APKBUILD @@ -1,8 +1,8 @@ # Contributor: Natanael Copa <ncopa@alpinelinux.org> # Maintainer: pkgname=glib-networking -pkgver=2.58.0 -_ver=2.58 +pkgver=2.60.2 +_ver=${pkgver%.*} pkgrel=0 pkgdesc="Networking support for GLib" url="https://www.gnome.org/" @@ -37,4 +37,4 @@ package() { rm -f "$pkgdir"/usr/lib/gio/modules/*.a } -sha512sums="d9cfd97ef9905eceb1f807a7d18c648fcf148214bf3fc55c718c5bcd6fb0afc429ab5b7bf72e83cf959d5ce7f145ce17952c1288d4225cc99d3c6ad66e4494ff glib-networking-2.58.0.tar.xz" +sha512sums="bfb8c716e78dfce997baaeb8aaafc1f187aa18fabee0197211f741d6175c21760e8eb5f514711e12f19ed7d7a0e4931dc7469b0ba778dc0e354c9123cf5a67f1 glib-networking-2.60.2.tar.xz" diff --git a/user/glib/APKBUILD b/user/glib/APKBUILD index fe75d5aa8..52a6a4c3c 100644 --- a/user/glib/APKBUILD +++ b/user/glib/APKBUILD @@ -1,7 +1,7 @@ # Contributor: Valery Kartel <valery.kartel@gmail.com> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=glib -pkgver=2.60.0 +pkgver=2.60.2 pkgrel=0 pkgdesc="Common C routines used by Gtk+ and other libs" url="https://developer.gnome.org/glib/" @@ -24,30 +24,21 @@ source="https://download.gnome.org/sources/$pkgname/${pkgver%.*}/$pkgname-$pkgve " subpackages="$pkgname-dbg $pkgname-doc $pkgname-static $pkgname-dev $pkgname-lang $pkgname-bash-completion:bashcomp:noarch" -prepare() { - default_prepare - - mkdir -p dumb_meson -} - build() { - cd "$builddir"/dumb_meson meson --default-library=both \ -Dprefix=/usr \ -Dselinux=disabled \ - -Dman=true .. - ninja + -Dman=true build + ninja -C build } check() { - cd "$builddir"/dumb_meson # workaround if a user builds it on a computer running X11 - DISPLAY= ninja test + DISPLAY= ninja -C build test } package() { - cd "$builddir"/dumb_meson - DESTDIR="$pkgdir" ninja install + DESTDIR="$pkgdir" ninja -C build install rm -rf "$pkgdir"/usr/lib/charset.alias } @@ -80,7 +71,7 @@ bashcomp() { [ "$(ls -A "$pkgdir"/usr/share)" ] || rmdir "$pkgdir"/usr/share } -sha512sums="8184371aa5a8936ef86e578ee66307dadc351203ad0773c7669ab6d3f6bca49e7391ccafeb624d7bfe67f0d9aafe72799defee4660f254c3a3013c752e897e6c glib-2.60.0.tar.xz +sha512sums="38479c8e48fda5adaa5f7ac8e1f09c184be48adf38ab614eb69f8e11301a1b0235767abf556e09fd4d5df345822db5b3dc85d1c53d05fdba1c1b40f75b61777b glib-2.60.2.tar.xz 32e5aca9a315fb985fafa0b4355e4498c1f877fc1f0b58ad4ac261fb9fbced9f026c7756a5f2af7d61ce756b55c8cd02811bb08df397040e93510056f073756b 0001-gquark-fix-initialization-with-c-constructors.patch 657d3fdf7f8ac7edd5bae572d00497f2236fbe5a91a577f3cb7ceb2ccf067f2944918b2b90308fc1061f45daf3d4910067b98642383ce8761da2a1faff6e9b4f broken-gio-tests.patch 0f0a98784aeed92f33cd9239d2f668bdc6c09b84ed020825ae88f6aacf6a922152dc3e1384c40d9f30f54c5ab78fe17e0ee5c42b268b297b595d2a6cde5b8998 fix-spawn.patch diff --git a/user/glibmm/APKBUILD b/user/glibmm/APKBUILD index e5dfbfd14..9ceb52bb2 100644 --- a/user/glibmm/APKBUILD +++ b/user/glibmm/APKBUILD @@ -1,14 +1,14 @@ # Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> # Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> pkgname=glibmm -pkgver=2.58.0 +pkgver=2.60.0 pkgrel=0 pkgdesc="C++ interfaces for glib" url="https://gnome.org" arch="all" license="GPL-2.0+ AND LGPL-2.1+" depends="glib-networking" -makedepends="glib-dev libsigc++-dev" +makedepends="glib-dev>=2.60.0 libsigc++-dev" subpackages="$pkgname-dev $pkgname-doc" source="https://download.gnome.org/sources/glibmm/${pkgver%.*}/glibmm-$pkgver.tar.xz" @@ -34,4 +34,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="e376462cdf1a60ed7d7750115200162016f57797674bbf7291c11b8754a6e4394eb1e2948ce4e37247438120dba4e18f5cf9c543963c1e97d8561d174d5ae7df glibmm-2.58.0.tar.xz" +sha512sums="ea0477d5cb6e59019e87f929630ff32ac38dd5e4fb53fe84ef64b5b41c1090c8e10a0a67b26c786ab4d9ebf64b993fa0044333b4aa8554c331a0a6d02039c5ad glibmm-2.60.0.tar.xz" diff --git a/user/gnupg/APKBUILD b/user/gnupg/APKBUILD index baf95d212..ac4c64ad7 100644 --- a/user/gnupg/APKBUILD +++ b/user/gnupg/APKBUILD @@ -1,8 +1,8 @@ # Contributor: Sören Tempel <soeren+alpine@soeren-tempel.net> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=gnupg -pkgver=2.2.11 -pkgrel=1 +pkgver=2.2.15 +pkgrel=0 pkgdesc="GNU Privacy Guard 2 - PGP replacement" url="https://www.gnupg.org/" arch="all" @@ -49,7 +49,7 @@ package() { install -Dm644 "$srcdir"/60-scdaemon.rules "$pkgdir"/lib/udev/rules.d } -sha512sums="8aa8beea877993b6eef155e1a503ffdde9963ff04a24e6a3dea7979efeeeeeab57e942a80ad46ef254d27a83e8cb2e3008da7749afa8e39eade190c0499f95d9 gnupg-2.2.11.tar.bz2 +sha512sums="7c6f0092d384fd71fc7a1c905ce23ae98df42ce131ee09fc190c275f9c8d0912be344b0782244cccb5b3938322ef3cfff8ed1ec7e949e761478b8c5110dde36a gnupg-2.2.15.tar.bz2 c6cc4595081c5b025913fa3ebecf0dff87a84f3c669e3fef106e4fa040f1d4314ee52dd4c0e0002b213034fb0810221cfdd0033eae5349b6e3978f05d08bcac7 0001-Include-sys-select.h-for-FD_SETSIZE.patch b19a44dacf061dd02b439ab8bd820e3c721aab77168f705f5ce65661f26527b03ea88eec16d78486a633c474120589ec8736692ebff57ab9b95f52f57190ba6b fix-i18n.patch 4bfb9742279c2d1c872d63cd4bcb01f6a2a13d94618eff954d3a37451fa870a9bb29687330854ee47e8876d6e60dc81cb2569c3931beaefacda33db23c464402 60-scdaemon.rules" diff --git a/user/gnutls/APKBUILD b/user/gnutls/APKBUILD index 8924c70e8..72e454003 100644 --- a/user/gnutls/APKBUILD +++ b/user/gnutls/APKBUILD @@ -2,7 +2,7 @@ # Contributor: Michael Mason <ms13sp@gmail.com> # Maintainer: pkgname=gnutls -pkgver=3.6.6 +pkgver=3.6.7.1 pkgrel=0 pkgdesc="A TLS protocol implementation" url="http://www.gnutls.org/" @@ -15,11 +15,16 @@ checkdepends="diffutils" subpackages="$pkgname-dbg $pkgname-doc $pkgname-dev $pkgname-lang $pkgname-utils $pkgname-c++:xx" _v=${pkgver%.*} +_v2=$pkgver case $pkgver in -*.*.*.*) _v=${_v%.*};; +*.*.*.*) + _v=${_v%.*} + _v2=${pkgver%.*} + ;; esac source="https://www.gnupg.org/ftp/gcrypt/gnutls/v${_v}/$pkgname-$pkgver.tar.xz gnulib-tests-dont-require-gpg-passphrase.patch" +builddir="$srcdir/$pkgname-$_v2" # secfixes: # 3.5.13-r0: @@ -72,5 +77,5 @@ xx() { mv "$pkgdir"/usr/lib/lib*xx.so.* "$subpkgdir"/usr/lib/ } -sha512sums="4ff34f38d7dc543bc5750d8fdfe9be84af60c66e8d41da45f6cffc11d6c6c726784fd2d471b3416604ca1f3f9efb22ff7a290d5c92c96deda38df6ae3e794cc1 gnutls-3.6.6.tar.xz +sha512sums="c3c4178c8663e3d1207aaf771ceb43e7e75a9f11b4ea3a26fde9d04a23762b05bac8fe290b74d63b815a354b79fc3557cfc218c196e1f80eb1fbce762948a926 gnutls-3.6.7.1.tar.xz abc24ee59cc67805fe953535b0bae33080fc8b0bf788304377f6d10ec8c162c4cf203a69c98a4ba3483b4c60ed7a204433cc7db9b8190eddb0d68f6fb6dad52d gnulib-tests-dont-require-gpg-passphrase.patch" diff --git a/user/gobject-introspection/APKBUILD b/user/gobject-introspection/APKBUILD index c8f5fc03a..841a87d05 100644 --- a/user/gobject-introspection/APKBUILD +++ b/user/gobject-introspection/APKBUILD @@ -1,6 +1,6 @@ # Maintainer: pkgname=gobject-introspection -pkgver=1.58.3 +pkgver=1.60.1 pkgrel=0 pkgdesc="Introspection system for GObject-based libraries" url="https://wiki.gnome.org/action/show/Projects/GObjectIntrospection" @@ -13,9 +13,7 @@ makedepends="$depends_dev bison flex glib-dev libffi-dev meson ninja python3-dev checkdepends="sed" subpackages="$pkgname-doc $pkgname-dev" replaces="libgirepository" -source="https://download.gnome.org/sources/$pkgname/${pkgver%.*}/$pkgname-$pkgver.tar.xz - we-are-in-a-pickle.patch - " +source="https://download.gnome.org/sources/$pkgname/${pkgver%.*}/$pkgname-$pkgver.tar.xz" prepare() { cd "$builddir" @@ -48,5 +46,4 @@ dev() { replaces="gobject-introspection" } -sha512sums="0811cd08e224975b3aa55ae89d648fc65f3105cae8a077a5671593d84743b1db28e9fbffe53fc86a2b3e82ea98c35f3daae033d3df07c7020cc3bf8b5d94f796 gobject-introspection-1.58.3.tar.xz -106e36c04ab9035b92d7f34251c3af2c37fbbc538d2b96027735565df74314eb90a93288f1bc62c08742ff6ba525d72ea03306e3b32f48724a09548788466d3d we-are-in-a-pickle.patch" +sha512sums="01adbeffee08ff6487f11a303fd7a59a99c36714dce21be9bbae7fd2bf8f080665e830bc3a47566140a6081dc74f6c2f8d8232286759b761f70493545a9d90ea gobject-introspection-1.60.1.tar.xz" diff --git a/user/gpgme/1.12.0-fix-t-tofuinfo.patch b/user/gpgme/1.12.0-fix-t-tofuinfo.patch deleted file mode 100644 index 74ba11050..000000000 --- a/user/gpgme/1.12.0-fix-t-tofuinfo.patch +++ /dev/null @@ -1,100 +0,0 @@ -From 66376f3e206a1aa791d712fb8577bb3490268f60 Mon Sep 17 00:00:00 2001 -From: Andre Heinecke <aheinecke@gnupg.org> -Date: Wed, 9 Jan 2019 08:25:21 +0100 -Subject: [PATCH] qt: Use tofu conflict test keys without expiry - -* lang/qt/tests/t-tofuinfo.cpp: Use new test keys without -expiry. - --- -The old keys expired on 2019-01-06. - -GnuPG-Bug-Id: T3815 ---- - lang/qt/tests/t-tofuinfo.cpp | 58 +++++++++++++++++++----------------- - 1 file changed, 30 insertions(+), 28 deletions(-) - -diff --git a/lang/qt/tests/t-tofuinfo.cpp b/lang/qt/tests/t-tofuinfo.cpp -index b7161028..2d881069 100644 ---- a/lang/qt/tests/t-tofuinfo.cpp -+++ b/lang/qt/tests/t-tofuinfo.cpp -@@ -69,46 +69,48 @@ static const char testMsg1[] = - - static const char conflictKey1[] = "-----BEGIN PGP PUBLIC KEY BLOCK-----\n" - "\n" --"mDMEWG+w/hYJKwYBBAHaRw8BAQdAiq1oStvDYg8ZfFs5DgisYJo8dJxD+C/AA21O\n" --"K/aif0O0GXRvZnVfY29uZmxpY3RAZXhhbXBsZS5jb22IlgQTFggAPhYhBHoJBLaV\n" --"DamYAgoa1L5BwMOl/x88BQJYb7D+AhsDBQkDwmcABQsJCAcCBhUICQoLAgQWAgMB\n" --"Ah4BAheAAAoJEL5BwMOl/x88GvwA/0SxkbLyAcshGm2PRrPsFQsSVAfwaSYFVmS2\n" --"cMVIw1PfAQDclRH1Z4MpufK07ju4qI33o4s0UFpVRBuSxt7A4P2ZD7g4BFhvsP4S\n" --"CisGAQQBl1UBBQEBB0AmVrgaDNJ7K2BSalsRo2EkRJjHGqnp5bBB0tapnF81CQMB\n" --"CAeIeAQYFggAIBYhBHoJBLaVDamYAgoa1L5BwMOl/x88BQJYb7D+AhsMAAoJEL5B\n" --"wMOl/x88OR0BAMq4/vmJUORRTmzjHcv/DDrQB030DSq666rlckGIKTShAPoDXM9N\n" --"0gZK+YzvrinSKZXHmn0aSwmC1/hyPybJPEljBw==\n" --"=p2Oj\n" -+"mDMEXDWgpxYJKwYBBAHaRw8BAQdAguVu4qkx8iw4eU+TQ4vvcKG7IdcZvbMhw3Zc\n" -+"npGf0+u0GXRvZnVfY29uZmxpY3RAZXhhbXBsZS5jb22IkAQTFggAOBYhBO6ovNDG\n" -+"nLzbR1TlMJYJ0fjlWbUrBQJcNaCnAhsDBQsJCAcCBhUKCQgLAgQWAgMBAh4BAheA\n" -+"AAoJEJYJ0fjlWbUrLaMBALegwkv2+sEcmKZqxt8JscYvFiEuycv2+rKHaZA0eDoN\n" -+"AP97W4XrJb5x49J5jDDdeko8k00uGqiiuAXJo27/i/phA7g4BFw1oKcSCisGAQQB\n" -+"l1UBBQEBB0Crhw24E2lPBhd/y+ZFotQ/2TrYqkUQqGPmff8ofLziNgMBCAeIeAQY\n" -+"FggAIBYhBO6ovNDGnLzbR1TlMJYJ0fjlWbUrBQJcNaCnAhsMAAoJEJYJ0fjlWbUr\n" -+"/K8BAJWsa+tOZsJw7w5fz6O0We6Xx4Rt17jHf563G6wMcz9+AQDRsedJ7w4zYzS9\n" -+"MFiJQ5aN0NDHMRtDFWAgCunVnJ3OBw==\n" -+"=fZa5\n" - "-----END PGP PUBLIC KEY BLOCK-----\n"; - - static const char conflictKey2[] = "-----BEGIN PGP PUBLIC KEY BLOCK-----\n" - "\n" --"mDMEWG+xShYJKwYBBAHaRw8BAQdA567gPEPJRpqKnZjlFJMRNUqruRviYMyygfF6\n" --"6Ok+ygu0GXRvZnVfY29uZmxpY3RAZXhhbXBsZS5jb22IlgQTFggAPhYhBJ5kRh7E\n" --"I98w8kgUcmkAfYFvqqHsBQJYb7FKAhsDBQkDwmcABQsJCAcCBhUICQoLAgQWAgMB\n" --"Ah4BAheAAAoJEGkAfYFvqqHsYR0BAOz8JjYB4VvGkt6noLS3F5TLfsedGwQkBCw5\n" --"znw/vGZsAQD9DSX+ekwdrN56mNO8ISt5uVS7B1ZQtouNBF+nzcwbDbg4BFhvsUoS\n" --"CisGAQQBl1UBBQEBB0BFupW8+Xc1ikab8TJqANjQhvFVh6uLsgcK4g9lZgbGXAMB\n" --"CAeIeAQYFggAIBYhBJ5kRh7EI98w8kgUcmkAfYFvqqHsBQJYb7FKAhsMAAoJEGkA\n" --"fYFvqqHs15ABALdN3uiV/07cJ3RkNb3WPcijGsto+lECDS11dKEwTMFeAQDx+V36\n" --"ocbYC/xEuwi3w45oNqGieazzcD/GBbt8OBk3BA==\n" --"=45IR\n" -+"mDMEXDWgixYJKwYBBAHaRw8BAQdAMWOhumYspcvEOTuesOSN4rvnJVOj/6qOWFTu\n" -+"x+wPRra0GXRvZnVfY29uZmxpY3RAZXhhbXBsZS5jb22IkAQTFggAOBYhBA64G88Q\n" -+"NPXztj8ID/FhC7tiGbeRBQJcNaCLAhsDBQsJCAcCBhUKCQgLAgQWAgMBAh4BAheA\n" -+"AAoJEPFhC7tiGbeRUt4A/2hf4Zgz+TYyfeH/4/ZtyL1JuZggqR1s5UopEx2Aiw10\n" -+"AP405KiTd31TJQN8Ru+7bskPu0/mzLZMNkRvBNEdc5kbDLg4BFw1oIsSCisGAQQB\n" -+"l1UBBQEBB0B5NtSrx7wDDKgwUe5Rxz0vRkaWLtyE0KbfE77oPy5DGAMBCAeIeAQY\n" -+"FggAIBYhBA64G88QNPXztj8ID/FhC7tiGbeRBQJcNaCLAhsMAAoJEPFhC7tiGbeR\n" -+"km0BAP8TQwraipqb1pJlLsEgDXeM5Jocz4fuePD78BsOBtORAP9gpCyKXdyJYGlA\n" -+"qjmG356yG6pCK9aPckTZ9IViPiHWCw==\n" -+"=tn3Q\n" - "-----END PGP PUBLIC KEY BLOCK-----\n"; - - static const char conflictMsg1[] = "-----BEGIN PGP MESSAGE-----\n" - "\n" --"owGbwMvMwCG2z/HA4aX/5W0YT3MlMUTkb2xPSizi6ihlYRDjYJAVU2Sp4mTZNpV3\n" --"5QwmLqkrMLWsTCCFDFycAjCR1vcMf4U0Qrs6qzqfHJ9puGOFduLN2nVmhsumxjBE\n" --"mdw4lr1ehIWR4QdLuNBpe86PGx1PtNXfVAzm/hu+vfjCp5BVNjPTM9L0eAA=\n" --"=MfBD\n" -+"owGbwMvMwCE2jfPij6eRW7UZTwsnMcSYLnT0Ki0uUXD3C1XILFHk6ihlYRDjYJAV\n" -+"U2R5t2LPhWNz9tx2D3lqANPEygTSwcDFKQAT+RjG8M9of873hQrMpinBVwKYv+rq\n" -+"XGmYW+ZcZJ+133KDq+itzlxGhg3L2X/6Khj+2Hd+He+KnXtunF2wNWxl7849e/Sy\n" -+"v6tc+8MBAA==\n" -+"=fZLe\n" - "-----END PGP MESSAGE-----\n"; - - static const char conflictMsg2[] = "-----BEGIN PGP MESSAGE-----\n" - "\n" --"owGbwMvMwCGWyVDbmL9q4RvG01xJDBH5GyvS8vO5OkpZGMQ4GGTFFFnmpbjJHVG+\n" --"b/DJQ6QIppaVCaSQgYtTACaySZHhr/SOPrdFJ89KrcwKY5i1XnflXYf2PK76SafK\n" --"tkxXuXzvJAvDX4kCybuqFk3HXCexz2+IrnZ+5X5EqOnuo3ens2cte+uzlhMA\n" --"=BIAi\n" -+"owGbwMvMwCH2MZF7d5Lk9omMp4WTGGJMFwZ4lRaXKLj7hSpklihydZSyMIhxMMiK\n" -+"KbLw7ZA+L2Dy9fM2ew5+mCZWJpAOBi5OAZhIUhIjw7bV+xS+cR0quqhmcY2Dl3WW\n" -+"8Ufr+rRNufOPyIdoO6nEXGH47/B+E1+oxS6e5f5n7MJ3aHBO+s345sipGV/4f665\n" -+"9mmiGjsA\n" -+"=8oJA\n" - "-----END PGP MESSAGE-----\n"; - - class TofuInfoTest: public QGpgMETest --- -2.19.2 - diff --git a/user/gpgme/APKBUILD b/user/gpgme/APKBUILD index c541b7af7..1f6f983d1 100644 --- a/user/gpgme/APKBUILD +++ b/user/gpgme/APKBUILD @@ -1,21 +1,19 @@ # Contributor: William Pitcock <nenolod@dereferenced.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=gpgme -pkgver=1.12.0 -pkgrel=2 +pkgver=1.13.0 +pkgrel=0 pkgdesc="GnuPG Made Easy" url="https://www.gnupg.org/related_software/gpgme/" arch="all" # gpgme-tool: GPL3; lib is mixture of the rest license="(LGPL-3.0+ OR GPL-2.0+) AND LGPL-2.1+ AND MIT AND GPL-3.0+" depends="gnupg" -depends_dev="libgpg-error-dev libassuan-dev qt5-qtbase-dev" -makedepends="$depends_dev doxygen python3-dev swig cmd:which" +depends_dev="qt5-qtbase-dev" +makedepends="$depends_dev doxygen libassuan-dev libgpg-error-dev python3-dev + swig cmd:which" subpackages="$pkgname-dev $pkgname-doc gpgmepp qgpgme py3-gpg:_py" -source="https://gnupg.org/ftp/gcrypt/$pkgname/$pkgname-$pkgver.tar.bz2 - 1.12.0-fix-t-tofuinfo.patch - test32bit.patch - " +source="https://gnupg.org/ftp/gcrypt/$pkgname/$pkgname-$pkgver.tar.bz2" build() { cd "$builddir" @@ -27,7 +25,7 @@ build() { --mandir=/usr/share/man \ --infodir=/usr/share/info \ --localstatedir=/var \ - --enable-languages=cl,cpp,python3,qt + --enable-languages=cl,cpp,python,qt make } @@ -61,6 +59,4 @@ _py() { mv "$pkgdir/usr/lib/python"* "$subpkgdir/usr/lib/" } -sha512sums="c228b3df28377df882be536ada56dc9c73150048a58e591aa4495f89c854af95820152cd60139840f994c249e9c7df50d8b89eb9d6dc4ce02aa80bbfebcdd014 gpgme-1.12.0.tar.bz2 -c8748651021a6ea670329cffb9565b905272b092315e77dc6fa9fa23890f8a55c2159edbfa026e8af961f2ff0c0d524dc8332a2e9a24fce2b37ac7cc4bb88cb3 1.12.0-fix-t-tofuinfo.patch -26bb302f462d7164842acea38080b3937b0b7b11d12fcfe1a61d656a41c993474dc7d9ca2298f936b030874a2f59f85b2189b11087f8b39d4c685a9a4e5d9450 test32bit.patch" +sha512sums="47a7a67dcc6d111cddd805d288d42e870948114a6dc09ce0675ad8b3d1580bbc2a683e1e70cb2f416919cf2129c72a9ff30e2e3b9527809d04e863cc1f87267b gpgme-1.13.0.tar.bz2" diff --git a/user/gpgme/test32bit.patch b/user/gpgme/test32bit.patch deleted file mode 100644 index 49dafdddb..000000000 --- a/user/gpgme/test32bit.patch +++ /dev/null @@ -1,93 +0,0 @@ -From 651a1afe80bcc421da26f38015e8a322e140f130 Mon Sep 17 00:00:00 2001 -From: Ben McGinnes <ben@adversary.org> -Date: Sat, 20 Oct 2018 11:07:55 +1100 -Subject: [PATCH] python bindings: callback test - -* lang/python/tests/t-callbacks.py: Updated test logic to try - generating a key which expires in 2099 and if that fails then - fallback to an expiration in 2037 in an attempt to catch the 32-bit - systems. ---- - lang/python/tests/t-callbacks.py | 32 ++++++++++++++++++++++++++++++-- - 1 file changed, 30 insertions(+), 2 deletions(-) - -diff --git a/lang/python/tests/t-callbacks.py b/lang/python/tests/t-callbacks.py -index 5bcac237..3a210dd0 100755 ---- a/lang/python/tests/t-callbacks.py -+++ b/lang/python/tests/t-callbacks.py -@@ -20,12 +20,14 @@ - from __future__ import absolute_import, print_function, unicode_literals - - import os -+import platform - import gpg - import support - _ = support # to appease pyflakes. - - del absolute_import, print_function, unicode_literals - -+oops = None - c = gpg.Context() - c.set_pinentry_mode(gpg.constants.PINENTRY_MODE_LOOPBACK) - -@@ -99,6 +101,17 @@ Expire-Date: 2099-12-31 - </GnupgKeyParms> - """ - -+prams = """<GnupgKeyParms format="internal"> -+Key-Type: RSA -+Key-Length: 1024 -+Name-Real: Joe Tester -+Name-Comment: with stupid passphrase -+Name-Email: joe+gpg@example.org -+Passphrase: Crypt0R0cks -+Expire-Date: 2037-12-31 -+</GnupgKeyParms> -+""" -+ - messages = [] - - -@@ -111,7 +124,10 @@ def progress_cb(what, typ, current, total, hook=None): - - c = gpg.Context() - c.set_progress_cb(progress_cb, messages) --c.op_genkey(parms, None, None) -+try: -+ c.op_genkey(parms, None, None) -+except Exception as oops: -+ c.op_genkey(prams, None, None) - assert len(messages) > 0 - - -@@ -123,7 +139,10 @@ def progress_cb(what, typ, current, total, hook=None): - c = gpg.Context() - c.set_progress_cb(progress_cb, None) - try: -- c.op_genkey(parms, None, None) -+ try: -+ c.op_genkey(parms, None, None) -+ except Exception as oops: -+ c.op_genkey(prams, None, None) - except Exception as e: - assert e == myException - else: -@@ -139,6 +158,15 @@ alpha = c.get_key("A0FF4590BB6122EDEF6E3C542D727CC768697734", False) - cookie = object() - edit_cb_called = False - -+def oops_check(): -+ if oops is not None and platform.architecture()[0] != "64bit": -+ y2k38_msg = "System appears to be 32-bit and vulnerable to EOL in 2038." -+ elif oops is not None and platform.architecture()[0] == "64bit": -+ y2k38_msg = "System appears to be 64-bit, but may use 32-bit time." -+ else: -+ y2k38_msg = "System is 64-bit and/or not susceptible to 2038 EOL." -+ return y2k38_msg -+ - - def edit_cb(status, args, hook): - global edit_cb_called --- -2.11.0 - diff --git a/user/granatier/APKBUILD b/user/granatier/APKBUILD index f2504c535..704954a28 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.12.3 +pkgver=19.04.1 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="af4a4201cede2d01a848b6d6c889f6019eb9298373f4e3c4faa2d9d514a8127a5b910bb701ecaada7559a91c887cca1a895c2e18cdd47c02b2569d781f5574c3 granatier-18.12.3.tar.xz" +sha512sums="c43db1806e3efe3d45364688c465c0c7def2c2ab168e28c66dce3e56a88745b9e05a8db621191d3bcd2ffd382721669ddb570e55bc16dc68248e1c6e525e52bb granatier-19.04.1.tar.xz" diff --git a/user/grub/2.02_beta3-mkconfig-alpine.patch b/user/grub/2.02_beta3-mkconfig-alpine.patch deleted file mode 100644 index 606540fff..000000000 --- a/user/grub/2.02_beta3-mkconfig-alpine.patch +++ /dev/null @@ -1,30 +0,0 @@ ---- a/util/grub.d/10_linux.in -+++ b/util/grub.d/10_linux.in -@@ -21,8 +21,11 @@ - exec_prefix="@exec_prefix@" - datarootdir="@datarootdir@" - -+. /etc/update-extlinux.conf - . "$pkgdatadir/grub-mkconfig_lib" - -+GRUB_CMDLINE_LINUX_DEFAULT="modules=${modules} ${default_kernel_opts} ${GRUB_CMDLINE_LINUX_DEFAULT}" -+ - export TEXTDOMAIN=@PACKAGE@ - export TEXTDOMAINDIR="@localedir@" - -@@ -75,6 +78,7 @@ - version="$2" - type="$3" - args="$4" -+ tag="$(basename ${rel_dirname}/${basename} | cut -b9-)" - - if [ -z "$boot_device_id" ]; then - boot_device_id="$(grub_get_device_id "${GRUB_DEVICE}")" -@@ -133,6 +137,7 @@ - echo '$(echo "$message" | grub_quote)' - linux ${rel_dirname}/${basename} root=${linux_root_device_thisversion} ro ${args} - EOF -+ [ -f "/boot/initramfs-${tag}" ] && initrd="initramfs-${tag}" - if test -n "${initrd}" ; then - # TRANSLATORS: ramdisk isn't identifier. Should be translated. - message="$(gettext_printf "Loading initial ramdisk ...")" diff --git a/user/grub/APKBUILD b/user/grub/APKBUILD index efcfda2af..532b0aa48 100644 --- a/user/grub/APKBUILD +++ b/user/grub/APKBUILD @@ -2,7 +2,7 @@ # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=grub pkgver=2.02 -pkgrel=4 +pkgrel=5 pkgdesc="Bootloader with support for Linux, Multiboot and more" url="https://www.gnu.org/software/grub/" arch="all !s390x" @@ -31,7 +31,8 @@ source="https://ftp.gnu.org/gnu/grub/grub-$pkgver.tar.xz fix-gcc-no-pie-specs.patch grub2-accept-empty-module.patch grub-xen-host_grub.cfg - 2.02_beta3-mkconfig-alpine.patch + the-arch-everyone-uses-and-nobody-loves.patch + default-grub " prepare() { @@ -113,6 +114,7 @@ package() { done rm -f "$pkgdir"/usr/lib/charset.alias + install -D -m644 "$srcdir"/default-grub "$pkgdir"/etc/default/grub # remove grub-install warning of missing directory mkdir -p "$pkgdir"/usr/share/locale } @@ -155,4 +157,5 @@ sha512sums="cc6eb0a42b5c8df2f671cc128ff725afb3ff1f8832a196022e433cf0d3b75decfca2 f2a7d9ab6c445f4e402e790db56378cecd6631b5c367451aa6ce5c01cd95b95c83c3dd24d6d4b857f8f42601eba82c855607513eb6ce5b2af6bd6c71f046e288 fix-gcc-no-pie-specs.patch 098a1742aef131c85d63b934a9815879b991f2e73030cb90ac4b5dcd07d249fa0dd0a281e52ada0e10f05d59223493bd416eb47543242bf0ba336a0ebc9b2a1a grub2-accept-empty-module.patch 4e7394e0fff6772c89683039ccf81099ebbfe4f498e6df408977a1488fd59389b6e19afdbf0860ec271e2b2aea0df7216243dcc8235d1ca3af0e7f4d0a9d60a4 grub-xen-host_grub.cfg -5de7c1cc11640a3892447f0daa1e3fd1f67b0c474c8aec555e4e6315b5e6c00491ba02c88b420cec221da0640c6961d639f148746df14a0b2c15bda7989cd25c 2.02_beta3-mkconfig-alpine.patch" +088455205f2f397d60e43eab19ed73994880ea1f442661f7975846cceaf2b112d92fd1341119d7dbfad3af2174dfd4d4721f31dead1ac35f4a3cb7c0d92f8a04 the-arch-everyone-uses-and-nobody-loves.patch +048d061ac0aab0106f59a3d257739ff5de6c7dc08a4dc9b8b12e9bd2b1ec11f9bc6214013f3d1083b11c3ce41185fcbb5615beb2f290380abf392bb4c3f0d509 default-grub" diff --git a/user/grub/default-grub b/user/grub/default-grub new file mode 100644 index 000000000..18fc2317d --- /dev/null +++ b/user/grub/default-grub @@ -0,0 +1,8 @@ +# Welcome to Adélie Linux. +# This file contains configuration for the GRUB boot manager. +# Changes to this file won't take effect unless you run `update-grub` as root. + +GRUB_DEFAULT="Adélie" +GRUB_TIMEOUT=5 +GRUB_DISTRIBUTOR="Adélie" +GRUB_CMDLINE_LINUX_DEFAULT="ro" diff --git a/user/grub/the-arch-everyone-uses-and-nobody-loves.patch b/user/grub/the-arch-everyone-uses-and-nobody-loves.patch new file mode 100644 index 000000000..2d09149f7 --- /dev/null +++ b/user/grub/the-arch-everyone-uses-and-nobody-loves.patch @@ -0,0 +1,72 @@ +From 563b1da6e6ae7af46cc8354cadb5dab416989f0a Mon Sep 17 00:00:00 2001 +From: Michael Chang <mchang@suse.com> +Date: Mon, 26 Mar 2018 16:52:34 +0800 +Subject: Fix packed-not-aligned error on GCC 8 +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +When building with GCC 8, there are several errors regarding packed-not-aligned. + +./include/grub/gpt_partition.h:79:1: error: alignment 1 of ‘struct grub_gpt_partentry’ is less than 8 [-Werror=packed-not-aligned] + +This patch fixes the build error by cleaning up the ambiguity of placing +aligned structure in a packed one. In "struct grub_btrfs_time" and "struct +grub_gpt_part_type", the aligned attribute seems to be superfluous, and also +has to be packed, to ensure the structure is bit-to-bit mapped to the format +laid on disk. I think we could blame to copy and paste error here for the +mistake. In "struct efi_variable", we have to use grub_efi_packed_guid_t, as +the name suggests. :) + +Signed-off-by: Michael Chang <mchang@suse.com> +Tested-by: Michael Chang <mchang@suse.com> +Tested-by: Paul Menzel <paulepanter@users.sourceforge.net> +Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com> +--- + grub-core/fs/btrfs.c | 2 +- + include/grub/efiemu/runtime.h | 2 +- + include/grub/gpt_partition.h | 2 +- + 3 files changed, 3 insertions(+), 3 deletions(-) + +diff --git a/grub-core/fs/btrfs.c b/grub-core/fs/btrfs.c +index 4849c1ceb..be195448d 100644 +--- a/grub-core/fs/btrfs.c ++++ b/grub-core/fs/btrfs.c +@@ -175,7 +175,7 @@ struct grub_btrfs_time + { + grub_int64_t sec; + grub_uint32_t nanosec; +-} __attribute__ ((aligned (4))); ++} GRUB_PACKED; + + struct grub_btrfs_inode + { +diff --git a/include/grub/efiemu/runtime.h b/include/grub/efiemu/runtime.h +index 9b6b729f4..36d2dedf4 100644 +--- a/include/grub/efiemu/runtime.h ++++ b/include/grub/efiemu/runtime.h +@@ -29,7 +29,7 @@ struct grub_efiemu_ptv_rel + + struct efi_variable + { +- grub_efi_guid_t guid; ++ grub_efi_packed_guid_t guid; + grub_uint32_t namelen; + grub_uint32_t size; + grub_efi_uint32_t attributes; +diff --git a/include/grub/gpt_partition.h b/include/grub/gpt_partition.h +index 1b32f6725..9668a68c3 100644 +--- a/include/grub/gpt_partition.h ++++ b/include/grub/gpt_partition.h +@@ -28,7 +28,7 @@ struct grub_gpt_part_type + grub_uint16_t data2; + grub_uint16_t data3; + grub_uint8_t data4[8]; +-} __attribute__ ((aligned(8))); ++} GRUB_PACKED; + typedef struct grub_gpt_part_type grub_gpt_part_type_t; + + #define GRUB_GPT_PARTITION_TYPE_EMPTY \ +-- +cgit v1.1-33-g03f6 + diff --git a/user/gsettings-desktop-schemas/APKBUILD b/user/gsettings-desktop-schemas/APKBUILD index 83bdc123e..185d15bdf 100644 --- a/user/gsettings-desktop-schemas/APKBUILD +++ b/user/gsettings-desktop-schemas/APKBUILD @@ -1,13 +1,13 @@ # Maintainer: pkgname=gsettings-desktop-schemas -pkgver=3.28.1 +pkgver=3.32.0 pkgrel=0 pkgdesc="GSettings schemas shared by GNOME desktop components" url="https://developer.gnome.org/gio/unstable/GSettings.html" arch="noarch" license="LGPL-2.0-or-later" -makedepends="glib-dev gobject-introspection-dev intltool" -subpackages="$pkgname-dev" +makedepends="glib-dev gobject-introspection-dev intltool meson ninja" +subpackages="$pkgname-dev $pkgname-lang" source="https://download.gnome.org/sources/$pkgname/${pkgver%.*}/$pkgname-$pkgver.tar.xz" prepare() { @@ -18,24 +18,19 @@ prepare() { build() { cd "$builddir" - ./configure \ - --build=$CBUILD \ - --host=$CHOST \ - --prefix=/usr \ - --mandir=/usr/share/man \ - --infodir=/usr/share/info \ - --disable-nls - make + mkdir -p build && cd build + meson -Dprefix=/usr .. + ninja } check() { - cd "$builddir" - make check + cd "$builddir"/build + ninja test } package() { - cd "$builddir" - make install DESTDIR="$pkgdir" + cd "$builddir"/build + DESTDIR="$pkgdir" ninja install } dev() { @@ -47,4 +42,4 @@ dev() { } -sha512sums="2bf3260e976943e9d1e51feda62ef1e432870a6d9b34881afbdf99ddbe4954e5dd679697e152e793a0b38492dbbc4891018f7aa8cd4e703d05a8647cc5a56785 gsettings-desktop-schemas-3.28.1.tar.xz" +sha512sums="cf1d78a8f9f1697e20c995286b50d556c2ecc83bf4b28be19b3258a724494a2827fb9567cabf29cda1c590488fd2645e905072e08321766c8bdddd22ac3710dc gsettings-desktop-schemas-3.32.0.tar.xz" diff --git a/user/gst-plugins-base/APKBUILD b/user/gst-plugins-base/APKBUILD index 555fec878..2682bc026 100644 --- a/user/gst-plugins-base/APKBUILD +++ b/user/gst-plugins-base/APKBUILD @@ -1,10 +1,11 @@ # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=gst-plugins-base -pkgver=1.14.4 -pkgrel=1 +pkgver=1.16.0 +pkgrel=0 pkgdesc="GStreamer multimedia framework - Base plugins" url="https://gstreamer.freedesktop.org/" arch="all" +options="!check" # fails overlaycomposition on ppc64 license="GPL LGPL" subpackages="$pkgname-dev $pkgname-doc $pkgname-lang" depends="" @@ -12,9 +13,11 @@ replaces="gst-plugins-base1" makedepends="alsa-lib-dev cdparanoia-dev expat-dev glib-dev gobject-introspection-dev gstreamer-dev libice-dev libogg-dev libsm-dev libtheora-dev libvorbis-dev libx11-dev libxt-dev libxv-dev mesa-dev - opus-dev orc-dev pango-dev perl" + opus-dev orc-dev pango-dev perl cmd:which !gst-plugins-base" checkdepends="orc-compiler" -source="https://gstreamer.freedesktop.org/src/gst-plugins-base/gst-plugins-base-$pkgver.tar.xz" +source="https://gstreamer.freedesktop.org/src/gst-plugins-base/gst-plugins-base-$pkgver.tar.xz + endian.patch + " ldpath="/usr/lib/gstreamer-1.0" build() { @@ -50,4 +53,5 @@ doc() { replaces="${pkgname}1-doc" } -sha512sums="42c59df9f2d848108f12afa0466acbcfa5ccda64e4d0d44608d4268abed20f2e036713de04e7d71feaed1868ad742c5bcb55ae0eef5dec8e19e053dc8541b8af gst-plugins-base-1.14.4.tar.xz" +sha512sums="4fa404156a384000e26e72ff0f701edb5a160181b48362350529177ca1c9325a3c58b83904bf5056262fe2609bc7f5913e835278973e049315deecfd1f26a3af gst-plugins-base-1.16.0.tar.xz +f146e76bedabd7b028cc64a9a671f7fb1ac1655164159d47953ea1afddafee1e40470593442f22152fb7e3579847dc4fc6e1f6e16a7c47252d5f3c25a6ae7353 endian.patch" diff --git a/user/gst-plugins-base/endian.patch b/user/gst-plugins-base/endian.patch new file mode 100644 index 000000000..403f40f69 --- /dev/null +++ b/user/gst-plugins-base/endian.patch @@ -0,0 +1,11 @@ +--- gst-plugins-base-1.16.0/tests/check/libs/video.c.old 2019-03-29 12:21:21.000000000 +0000 ++++ gst-plugins-base-1.16.0/tests/check/libs/video.c 2019-05-01 15:49:10.000628817 +0000 +@@ -2828,7 +2828,7 @@ + fail_unless_equals_int (data[i + 3], 0x80); + #else + /* A - R - G - B */ +- fail_unless_equals_int (data[i], 0x00); ++ fail_unless_equals_int (data[i], 0x80); + fail_unless_equals_int (data[i + 1], 0x80); + fail_unless_equals_int (data[i + 2], 0x80); + fail_unless_equals_int (data[i + 3], 0x80); diff --git a/user/gst-plugins-good/APKBUILD b/user/gst-plugins-good/APKBUILD index fb4d05277..31f9963e5 100644 --- a/user/gst-plugins-good/APKBUILD +++ b/user/gst-plugins-good/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=gst-plugins-good -pkgver=1.14.4 +pkgver=1.16.0 pkgrel=0 pkgdesc="GStreamer multimedia framework - Free, well-written plugins" url="https://gstreamer.freedesktop.org/modules/gst-plugins-good.html" @@ -55,5 +55,5 @@ gtk() { "$subpkgdir"/usr/lib/gstreamer-1.0/ } -sha512sums="30aeb3bb74571287cad1598973da38e7a43a0128d35480ded6d280c1373dc4ecd4ea76caaa04a71cdfba2e1850aee5f1b72d96be86ae92d66633e7d32081c504 gst-plugins-good-1.14.4.tar.xz +sha512sums="01ae64426d62500c12eb98073fcdf4bbbb7df69b5d30a153491a6e3bcd9bfa6e6a3a7fdedd7b7293ce9405e909a4a57c691f293a58525f21281136deac7c0a7c gst-plugins-good-1.16.0.tar.xz 1cecf260cfeb19675a819f9858426aaed3b9627ed90b8facb6cb12dfc0b265232639b1888d7cc03edb87025e3eddab6e3606f16b5f7ca261a6b1c39b0dbdc6f7 endian-test.patch" diff --git a/user/gstreamer/APKBUILD b/user/gstreamer/APKBUILD index a5adebbf5..4beb70d0f 100644 --- a/user/gstreamer/APKBUILD +++ b/user/gstreamer/APKBUILD @@ -1,6 +1,6 @@ # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=gstreamer -pkgver=1.14.4 +pkgver=1.16.0 pkgrel=0 pkgdesc="GStreamer multimedia framework" url="https://gstreamer.freedesktop.org/" @@ -47,4 +47,4 @@ doc() { default_doc replaces="${pkgname}1-doc" } -sha512sums="7ece9f01d40df7c8358482eac94536c5e15261e9568962008e2029e1ee1b3ebb220d2e4802ed1c81c40d897576fafe52234065e273724bfb4df3a3ddf2711abe gstreamer-1.14.4.tar.xz" +sha512sums="d65d8ee78e5c245ed710fe7907e35d18bfe8729518552f86ea6f16bbcfef7b1c418e0fbe94fc79cb2626510fdf486d457fb040290e84d383964c8ab140455652 gstreamer-1.16.0.tar.xz" diff --git a/user/gtk+3.0/APKBUILD b/user/gtk+3.0/APKBUILD index ea1c05d69..57cbe384b 100644 --- a/user/gtk+3.0/APKBUILD +++ b/user/gtk+3.0/APKBUILD @@ -1,6 +1,6 @@ # Maintainer: pkgname=gtk+3.0 -pkgver=3.24.5 +pkgver=3.24.8 pkgrel=0 pkgdesc="The GTK+ Toolkit (v3)" url="https://www.gtk.org/" @@ -53,4 +53,4 @@ package() { rm -f "$pkgdir"/usr/share/man/man1/gtk-update-icon-cache.1 } -sha512sums="344988c9e2a2d7fd2fd1e367a113be7c4a32c28c9cf395aeab923e25256b99856091d1583d3f8557aac6919a930a4d0af69b966486caab559c7d9d22585cc1a1 gtk+-3.24.5.tar.xz" +sha512sums="a988ca2e25f0f32e55b2931f16c72f9649ed98405579d217e8a5e7f0ac10bcd1969090c622c5d9eb7d75235813ff7ccb90e30e252afd71ba283c6172ee459fe5 gtk+-3.24.8.tar.xz" diff --git a/user/gtksourceview-3.0/APKBUILD b/user/gtksourceview-3.0/APKBUILD index ca4fd1c32..23f34a3c2 100644 --- a/user/gtksourceview-3.0/APKBUILD +++ b/user/gtksourceview-3.0/APKBUILD @@ -1,7 +1,7 @@ # Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> # Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> pkgname=gtksourceview-3.0 -pkgver=3.24.9 +pkgver=3.24.11 pkgrel=0 pkgdesc="Source viewer widget for GTK+ 3.0" url="https://gnome.org" @@ -36,4 +36,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="29b58afba1c0b473205cf7070997139d2ca07cf68d40185aa76fa59c900ad21c03ccb79dec9970e5f96743cfdb5a7d926b21a9947244bc8cf8cbd1033467cd01 gtksourceview-3.24.9.tar.xz" +sha512sums="3490b34c6432a2e2ef292ad5bf982fdd22d33b1472434549b4ea8ddae0fc8808e128ef947e4d0dcb41e8de5e601b202f52532bbbbfa11d35050acfc42f9936b2 gtksourceview-3.24.11.tar.xz" diff --git a/user/gucharmap/APKBUILD b/user/gucharmap/APKBUILD new file mode 100644 index 000000000..9a3d7bfcf --- /dev/null +++ b/user/gucharmap/APKBUILD @@ -0,0 +1,40 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=gucharmap +pkgver=12.0.1 +_unicode=12.0.0 +pkgrel=0 +pkgdesc="Unicode utility for the Gnome desktop environment" +url="https://gnome.org" +arch="all" +license="GPL-3.0+" +depends="" +makedepends="desktop-file-utils gobject-introspection-dev gtk+3.0-dev intltool + itstool libxml2-utils unicode-data" +subpackages="$pkgname-dev $pkgname-doc $pkgname-lang" +source="https://download.gnome.org/sources/gucharmap/${pkgver%.*}/gucharmap-$pkgver.tar.xz" + +build() { + cd "$builddir" + ./configure \ + --build=$CBUILD \ + --host=$CHOST \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --localstatedir=/var \ + --with-unicode-data=/usr/share/unicode/$_unicode + make +} + +check() { + cd "$builddir" + make check +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install +} + +sha512sums="989034350c73c3f1857167f434aa4a5c140ef7574cb799b874e421a8d0c2bf520dfcee85bc0cf8e52f439fb7d30e0db5172a25c107c80b38ce6da4e703a3ffc2 gucharmap-12.0.1.tar.xz" diff --git a/user/gutenprint/APKBUILD b/user/gutenprint/APKBUILD index 56fbfacea..67f344222 100644 --- a/user/gutenprint/APKBUILD +++ b/user/gutenprint/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=gutenprint -pkgver=5.2.14 +pkgver=5.3.1 pkgrel=0 pkgdesc="Open source printer drivers" url="http://gimp-print.sourceforge.net/" @@ -12,7 +12,9 @@ depends="" makedepends="cups-dev" subpackages="$pkgname-dev $pkgname-doc $pkgname-lang $pkgname-libs" install="$pkgname.post-install $pkgname.post-upgrade" -source="https://downloads.sourceforge.net/gimp-print/gutenprint-$pkgver.tar.bz2" +source="https://downloads.sourceforge.net/gimp-print/gutenprint-$pkgver.tar.xz + freopen.patch + " build() { cd "$builddir" @@ -37,4 +39,5 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="aeb06b4be45fcb67320b419b988ca59dbda51bb2c3ff4edd0f0757ac977565a6829f506ebea6872211c689a15925ad2119836424c3c9a97345a8cd506e9df9fd gutenprint-5.2.14.tar.bz2" +sha512sums="214d07e6f78130e95c8c9d98f0862921d26f74a7c302afabdb138b35ef5f02f52fa143411983867fd7015477c16ca18cf8001e6552c27cd4a12c08ff77e92986 gutenprint-5.3.1.tar.xz +a4a74b7eeffdb12cc106c7da33bef24a7e80fca94091a8301b61df60e642e54fb57f5f00027530d86a83c3aff086ff43439b46bcfdcafa29073c60445d49781e freopen.patch" diff --git a/user/gutenprint/freopen.patch b/user/gutenprint/freopen.patch new file mode 100644 index 000000000..ddc351fec --- /dev/null +++ b/user/gutenprint/freopen.patch @@ -0,0 +1,11 @@ +--- gutenprint-5.3.1/src/xml/printers/check_duplicate_printers.c.old 2018-09-03 15:19:33.000000000 +0000 ++++ gutenprint-5.3.1/src/xml/printers/check_duplicate_printers.c 2019-05-01 20:32:48.290238929 +0000 +@@ -34,7 +34,7 @@ + if (getenv("BUILD_VERBOSE")) + dup2(2, 3); + (void) snprintf(path, PATH_MAX, "%scheck_duplicate_printers_%d.log", getenv("STP_TEST_LOG_PREFIX"), getpid()); +- stdout = freopen(path, "w", stdout); ++ freopen(path, "w", stdout); + dup2(1, 2); + } + setenv("STP_CHECK_DUPLICATE_PRINTERS", "TRUE", 1); diff --git a/user/gvim/APKBUILD b/user/gvim/APKBUILD index 0d0b4af59..02a94f8f6 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.0952 +pkgver=8.1.1461 pkgrel=0 pkgdesc="advanced text editor" url="http://www.vim.org" @@ -74,4 +74,4 @@ package() { ln -s gvim rgvim } -sha512sums="485d839901b3d1fc8efcc035991d5f34849f6d05d9c556dcf5b2918cd01e7f7b490cd0a7eb976c7577adb41962dceea4552474103f0b3c7807311d07f8158bd1 vim-8.1.0952.tar.gz" +sha512sums="4c0237808d126069cb023246fc58d7743f8b9813e934a37e8061da43391712abc388921ee62fedc5c76bd374e82496bd8aabc6d8a9248fd8e77064895450032a vim-8.1.1461.tar.gz" diff --git a/user/gwenview/APKBUILD b/user/gwenview/APKBUILD index a190e69d8..292abf3ca 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.12.3 +pkgver=19.04.1 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="4105ef3529170e7c92cbbdca4bfb31f0fa4220979ce808f86d23aac0a2fdd9f59d927f87a7909e2d1641defd97bd31e1142075f30d526c7d1b29e8afe314fd51 gwenview-18.12.3.tar.xz" +sha512sums="593db6ca0bc765d45ed6691c71d12bf06a9ff5dcf2fe23d7e839dde1ebd11ae60f466bb8af1e0b577df7fc7ba3cd9bf6ec0d51642eb75e6d4d50b3b8c42c5863 gwenview-19.04.1.tar.xz" diff --git a/user/harfbuzz/APKBUILD b/user/harfbuzz/APKBUILD index 3b41f4ce4..be2836574 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=2.3.1 +pkgver=2.4.0 pkgrel=0 pkgdesc="Text shaping library" url="https://www.freedesktop.org/wiki/Software/HarfBuzz" @@ -53,4 +53,4 @@ icu() { mv "$pkgdir"/usr/lib/lib*icu.so.* "$subpkgdir"/usr/lib/ } -sha512sums="78a8f05bfcc95cfe3fc0f1a595bdc7298c9c1456db6c7ef70914051fda43f37aaff15eac75aa6922eca82d2291baeb8385e02e6aacb44ca05b4873c311a662ac harfbuzz-2.3.1.tar.bz2" +sha512sums="daeaf029bd5d0d0674f930a8d0dcdc4e0b1253b2369c732c7b4fd130ab9438d0d9526967224a583ee58974c3b492874acaccdac13c71b58c950f0b3f031e505c harfbuzz-2.4.0.tar.bz2" diff --git a/user/highlight/APKBUILD b/user/highlight/APKBUILD index 715affc24..cdce50580 100644 --- a/user/highlight/APKBUILD +++ b/user/highlight/APKBUILD @@ -1,7 +1,7 @@ # Contributor: Carlo Landmeter <clandmeter@gmail.com> # Maintainer: pkgname=highlight -pkgver=3.49 +pkgver=3.50 pkgrel=0 pkgdesc="Fast and flexible source code highlighter" url="http://www.andre-simon.de/doku/highlight/highlight.html" @@ -22,4 +22,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="81223c11b7b518b5b289622afadb0f2660898f74342b96f3e03f8bd3ac88d2f9b816efe0dffcc58323417d8a47b112053c16bd5f83475e6908ab228ee3cf81b0 highlight-3.49.tar.bz2" +sha512sums="1911a29fea6a157ff237276673acf0ae2b5a931ad7beeacf26a67970fc5ec66abf6dc64ff1694bf0cf68414c29f597625700943da772823a025f7a139d606c3d highlight-3.50.tar.bz2" diff --git a/user/http-parser/APKBUILD b/user/http-parser/APKBUILD index de3af464c..8dace78cd 100644 --- a/user/http-parser/APKBUILD +++ b/user/http-parser/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=http-parser -pkgver=2.9.0 +pkgver=2.9.2 pkgrel=0 pkgdesc="Library for parsing HTTP messages in C" url=" " @@ -14,18 +14,15 @@ subpackages="$pkgname-dev" source="http-parser-$pkgver.tar.gz::https://github.com/nodejs/http-parser/archive/v$pkgver.tar.gz" build() { - cd "$builddir" make } check() { - cd "$builddir" true # tested as part of build. } package() { - cd "$builddir" make PREFIX=/usr DESTDIR="$pkgdir" install } -sha512sums="40acecbf71b9f0b4ae857c74c3ec0784d7f341a0cb83cf82b308387d0c5b56d38b282241aaf8ca93816970f2a9e67989f3d9d456459f3986c29fe51ab520155e http-parser-2.9.0.tar.gz" +sha512sums="fe21ba46c9297b55a6382497b689da2af88999a9a5716ffef0731057ce1bb053056e4f20147284c78338e48ed1a793a0270fe0edfe3f4b589926e3ede603d023 http-parser-2.9.2.tar.gz" diff --git a/user/hwids/APKBUILD b/user/hwids/APKBUILD index 92d161907..1fcbe079d 100644 --- a/user/hwids/APKBUILD +++ b/user/hwids/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=hwids -pkgver=20180917 +pkgver=20190316 pkgrel=0 pkgdesc="Hardware identification databases" url="https://github.com/gentoo/hwids/" @@ -67,4 +67,4 @@ udev() { mv "$pkgdir"/etc "$subpkgdir"/ } -sha512sums="9fdcd5a7b3adca1bed886aa83e9cf3944391a819fc9f09b673bd815d95e6e70cecf40d8e87287207e34bfeb58c888188fc61b1c0ac13c1ecab0efbdb5100f8d9 hwids-20180917.tar.gz" +sha512sums="6db50577b5d29d73f1dc0a44d0b74320cb0df186b9850160b15a6e8f2bcbdbf8193bae4146f81a5afc6b0e05706b5286b4b5858eb028d6c58ea4582df61d232e hwids-20190316.tar.gz" diff --git a/user/i3lock/APKBUILD b/user/i3lock/APKBUILD index 8080867c7..7d04a82af 100644 --- a/user/i3lock/APKBUILD +++ b/user/i3lock/APKBUILD @@ -1,7 +1,7 @@ # Contributor: Johannes Matheis <jomat+alpinebuild@jmt.gr> # Maintainer: Max Rees <maxcrees@me.com> pkgname=i3lock -pkgver=2.11 +pkgver=2.11.1 pkgrel=0 pkgdesc="Simple X11 screen locker" url="https://i3wm.org/i3lock/" @@ -15,7 +15,6 @@ subpackages="$pkgname-doc" source="$url/$pkgname-$pkgver.tar.bz2" prepare() { - cd "$builddir" default_prepare # At present, this has no functional difference. # But when we start developing our PAM stack into something more @@ -24,8 +23,6 @@ prepare() { } build() { - cd "$builddir" - ./configure \ --build=$CBUILD \ --host=$CHOST \ @@ -38,8 +35,7 @@ build() { } package() { - cd "$builddir" make DESTDIR="$pkgdir" install } -sha512sums="c00741a66fdb5477a4b7e993d173f98fe95f0254fa74c50f83ddf8078a477d26a9fab126fbe31b509df2dbd35ed5ec64b95475621b8babf6f6c0f6db38160c8a i3lock-2.11.tar.bz2" +sha512sums="8b779aa0a560884adc1a508e1f07f712bdf043f72c377c24d5e7e186a6b97f34a5bda7aa67de41f5e15a1a541f4a2c2d28bc284057926a5833d70b67437d073c i3lock-2.11.1.tar.bz2" diff --git a/user/icewm/APKBUILD b/user/icewm/APKBUILD index c74eaf649..47a6f63b5 100644 --- a/user/icewm/APKBUILD +++ b/user/icewm/APKBUILD @@ -1,7 +1,7 @@ # Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> # Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> pkgname=icewm -pkgver=1.5.2 +pkgver=1.5.4 pkgrel=0 pkgdesc="A window manager designed for speed, usability, and consistency" url="https://github.com/bbidulock/icewm" @@ -44,4 +44,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="f2a542d162e984dcc6f7b8e3fc2dbd7df46510f961431b4c3b6651351f7b236ef4724a07ce01dfa163b08c9a130e7ee3ed62e1c5b1f364340998d31290323614 icewm-1.5.2.tar.xz" +sha512sums="7b5743872d328f937b49e2b79f7d6c0b8404326ef7e7a3b529c80138b36e8c2b30db79593125a8be76abe40282c779f79ca64b504f980ef2c87052448bdc076e icewm-1.5.4.tar.xz" diff --git a/user/icon-naming-utils/APKBUILD b/user/icon-naming-utils/APKBUILD index e878b858c..1d41aef6b 100644 --- a/user/icon-naming-utils/APKBUILD +++ b/user/icon-naming-utils/APKBUILD @@ -4,7 +4,7 @@ pkgname=icon-naming-utils pkgver=0.8.90 pkgrel=0 pkgdesc="Script for migrating to the Icon Naming Specification" -url="http://tango.freedesktop.org/Tango_Icon_Library" +url="http://tango-project.org/" arch="noarch" license="GPL-2.0-only" depends="perl perl-xml-simple" diff --git a/user/imagemagick/APKBUILD b/user/imagemagick/APKBUILD index a96496fcc..c527b6c0f 100644 --- a/user/imagemagick/APKBUILD +++ b/user/imagemagick/APKBUILD @@ -2,7 +2,7 @@ # Contributor: Carlo Landmeter <clandmeter@gmail.com> # Maintainer: pkgname=imagemagick -pkgver=7.0.8.32 +pkgver=7.0.8.48 _abiver=7 _pkgver=${pkgver%.*}-${pkgver##*.} pkgrel=0 @@ -81,4 +81,4 @@ _cxx() { mv "$pkgdir"/usr/lib/libMagick++*.so.* "$subpkgdir"/usr/lib/ } -sha512sums="ca33135795c78479557526403140b5feb1c1e39c57b5b94f1f7bc2f4cef65e975dcd760c08be965882d0498011a18d6aff5567c485c54a188b3e36ee542c5e56 ImageMagick-7.0.8-32.tar.xz" +sha512sums="194773526b86762fbcd509a722114c88b23a7bdd96431f666581e11d2c13334e6f58c1edcecb6e9117a00ea873cca8657887f7962ccbb5748d1c692b7756c792 ImageMagick-7.0.8-48.tar.xz" diff --git a/user/ipaexfont/APKBUILD b/user/ipaexfont/APKBUILD index 3a73df06f..dfbbc3436 100644 --- a/user/ipaexfont/APKBUILD +++ b/user/ipaexfont/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=ipaexfont -pkgver=003.01 +pkgver=004.01 pkgrel=0 pkgdesc="Standard Japanese typefaces" url="https://ipafont.ipa.go.jp/" @@ -19,4 +19,4 @@ package() { install -m644 -Dt "$pkgdir"/usr/share/fonts/X11/TTF/ *.ttf } -sha512sums="92df9f6a1002ea68cfd88f2b1fe4a5a5d6dfdb0ac4be7f4c0815200ce1962d3db7330ec17e7380efe4ba0735a55e0f5160b0cd6c1553a79fc8a860c434958388 IPAexfont00301.zip" +sha512sums="fe639ded0a25eed66df8cc1e9d5e965b501574a25fab542a749b3cb8464690448e44343ff5845aecd3224ec481c4089ee56e64880cbbc9211a260b22d4cc68cd IPAexfont00401.zip" diff --git a/user/iso-codes/APKBUILD b/user/iso-codes/APKBUILD index 599845de4..9fc122b61 100644 --- a/user/iso-codes/APKBUILD +++ b/user/iso-codes/APKBUILD @@ -1,6 +1,6 @@ # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=iso-codes -pkgver=4.1 +pkgver=4.2 pkgrel=0 pkgdesc="Lists of country, language, and currency names" url=" " @@ -30,4 +30,4 @@ package() { make DESTDIR="$pkgdir" pkgconfigdir=/usr/lib/pkgconfig install } -sha512sums="cf02be0cfc43a1fb28334ccae552cac9a7dee70ca3969b6263eca4bd7fee8ddcc437bd23d290643ba2cd7e99b207661d7330daaf452dc59cde36fdd5919b5616 iso-codes-4.1.tar.xz" +sha512sums="1ee8505d2fb6da03d82ebe665ad963e6652ac0337a1cde16a0d6f4c04003f52330735dd7ab20131999e8c562eca09ac18edf8c4aadd7cb8bcfbe0f350a8b6987 iso-codes-4.2.tar.xz" diff --git a/user/isync/APKBUILD b/user/isync/APKBUILD index a1a5a09e3..19c801b6e 100644 --- a/user/isync/APKBUILD +++ b/user/isync/APKBUILD @@ -1,7 +1,7 @@ # Contributor: Luis Ressel <aranea@aixah.de> # Maintainer: Luis Ressel <aranea@aixah.de> pkgname=isync -pkgver=1.3.0 +pkgver=1.3.1 pkgrel=0 pkgdesc="IMAP and MailDir mailbox synchronizer" url="http://isync.sourceforge.net/" @@ -30,4 +30,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="b5186f2afe97cab58ce55d3ec19ae7371676ae614448614a9e3e02d09662c34b74e559f0926661fa0300ab22dab9e2e9089b78ee38b94141ff3f8b4d75578ffa isync-1.3.0.tar.gz" +sha512sums="59d702d41d4a4e72f03cb282b414d0bb859593171763e845bc24d116a74f807a79e5be61f1dd1f59a9ece492322bceac156b08958a246cbfbe7f230fab4cdda2 isync-1.3.1.tar.gz" diff --git a/user/itstool/APKBUILD b/user/itstool/APKBUILD index 7fdfc40cc..7936887b7 100644 --- a/user/itstool/APKBUILD +++ b/user/itstool/APKBUILD @@ -1,6 +1,6 @@ # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=itstool -pkgver=2.0.5 +pkgver=2.0.6 pkgrel=0 pkgdesc="ITS-based XML translation tool" url="http://itstool.org/" @@ -38,5 +38,5 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="67c55b83e43b5a4626a6633305b2e48a06a5defdf7725e78b00409edea213d166cb3d870a58eb402c48968bddd7c1778d9852acfa0ddebdd363f34ac13f32aa7 itstool-2.0.5.tar.bz2 +sha512sums="51058bdcb208f6fb84810f71f9bf67e42b00bf157a9756be45f060849c0aff36f695f4403404193720d4446818fa77de61fa94eed9e8789d26c07a2926072eb7 itstool-2.0.6.tar.bz2 eb426e7cc9f151154f47b93ef46d6fcfb5fa0982be3bf78863ebf5ea009a89de252a6c63dfb090d76003c47107ebb5d1ac2a7d1ef7db08defe19e32f996dbdbd fix-segfault.patch" diff --git a/user/iw/APKBUILD b/user/iw/APKBUILD new file mode 100644 index 000000000..65c762edf --- /dev/null +++ b/user/iw/APKBUILD @@ -0,0 +1,24 @@ +# Contributor: Luis Ressel <aranea@aixah.de> +# Maintainer: Luis Ressel <aranea@aixah.de> +pkgname=iw +pkgver=5.0.1 +pkgrel=0 +pkgdesc="CLI configuration utility for wireless devices" +url="https://wireless.wiki.kernel.org/en/users/Documentation/iw" +arch="all" +options="!check" # no usable test suite +license="ISC" +depends="" +makedepends="libnl3-dev linux-headers pkgconfig" +subpackages="$pkgname-doc" +source="https://kernel.org/pub/software/network/$pkgname/$pkgname-$pkgver.tar.xz" + +build() { + make V=1 +} + +package() { + make V=1 DESTDIR="$pkgdir" install +} + +sha512sums="98764c1be7c63f86cc10193319e18c216a3f9a323444723b2949db0738ff8fcff04e6d78c035b5448c083d825a4b4cde27ec607539ec79b1898af73a7969c544 iw-5.0.1.tar.xz" diff --git a/user/jasper/APKBUILD b/user/jasper/APKBUILD index 3fbb320cd..321969aa3 100644 --- a/user/jasper/APKBUILD +++ b/user/jasper/APKBUILD @@ -1,6 +1,6 @@ # Maintainer: pkgname=jasper -pkgver=2.0.14 +pkgver=2.0.16 pkgrel=0 pkgdesc="Library implementing JPEG-2000" url="http://www.ece.uvic.ca/~mdadams/jasper/" @@ -9,7 +9,8 @@ license="custom:JasPer2.0" depends= #"libjpeg>=8 freeglut libxi libxmu mesa" makedepends="libjpeg-turbo-dev cmake" subpackages="$pkgname-dev $pkgname-doc $pkgname-libs" -source="http://www.ece.uvic.ca/~frodo/jasper/software/jasper-$pkgver.tar.gz" +source="$pkgname-$pkgver.tar.gz::https://github.com/mdadams/jasper/archive/version-$pkgver.tar.gz" +builddir="$srcdir/$pkgname-version-$pkgver" # secfixes: # 2.0.12-r1: @@ -44,4 +45,4 @@ libs() { mv "$pkgdir"/usr/lib "$subpkgdir"/usr } -sha512sums="9e5cffd2e899e37ba08890e2377ddfc3c2fb13d9fe00dea6b4612e4d241a6f4327de6835809b415c41ae4bf44208cf7871c1982ff5fc04ae6bc09fd376b0afc8 jasper-2.0.14.tar.gz" +sha512sums="b3bca227f833567c9061c4a29c0599784ed6a131b5cceddfd1696542d19add821eda445ce6d83782b454b266723b24d0f028cbc644a25c0e3a75304e615b34ee jasper-2.0.16.tar.gz" diff --git a/user/java-common/APKBUILD b/user/java-common/APKBUILD index 12259b209..da94e271c 100644 --- a/user/java-common/APKBUILD +++ b/user/java-common/APKBUILD @@ -1,16 +1,16 @@ # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=java-common -pkgver=6 -pkgrel=0 +pkgver=7 +pkgrel=1 pkgdesc="Default Java runtime binary symlinks" url=" " arch="noarch" options="!check" # Symlinks only. license="Public-Domain" -depends="" +depends="nss" # for TLS, needed by all OpenJDKs. makedepends="" subpackages="" -source="" +source="java.profd" triggers="java-common.trigger=/usr/lib/jvm" package() { @@ -19,4 +19,7 @@ package() { ln -sf ../lib/jvm/default-jvm/jre/bin/rmiregistry "$pkgdir"/usr/bin ln -sf ../lib/jvm/default-jvm/jre/bin/keytool "$pkgdir"/usr/bin ln -sf ../lib/jvm/default-jvm/bin/appletviewer "$pkgdir"/usr/bin + + install -D -m755 "$srcdir"/java.profd "$pkgdir"/etc/profile.d/java.sh } +sha512sums="4c535555a89609988fbd379d4ef7c72d04eb8b88aed3c999a65e957196196c14733377b24f98b1ee0ae83f0cd43f55ab626ab073c1b30f478fb514bfc71cf641 java.profd" diff --git a/user/java-common/java.profd b/user/java-common/java.profd new file mode 100644 index 000000000..cf97cc5f9 --- /dev/null +++ b/user/java-common/java.profd @@ -0,0 +1,2 @@ +#!/bin/sh +export JAVA_HOME=/usr/lib/jvm/default-jvm diff --git a/user/juk/APKBUILD b/user/juk/APKBUILD index 44206a02c..782be8aad 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.12.3 +pkgver=19.04.1 pkgrel=0 pkgdesc="KDE Jukebox" url="https://juk.kde.org/" @@ -42,4 +42,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="d509892380dfc1be029debdfa6d924c996a92772cf4fd3c9bf3bfa943621d0f62a13c204867b86210f1a1a6c4895d02c8dd922176f87129dad8ce61a45b8496e juk-18.12.3.tar.xz" +sha512sums="03dfb936db72a27440d5c0800f33e0166ae230266138621c0a49a68b18b1766b9ed9f25f308b4b0ce75841b33a09dec2679578fcb353ed2e857227a829a0c103 juk-19.04.1.tar.xz" diff --git a/user/kaffeine/APKBUILD b/user/kaffeine/APKBUILD index 1e8c0e67a..ee7dcffe2 100644 --- a/user/kaffeine/APKBUILD +++ b/user/kaffeine/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kaffeine -pkgver=2.0.15 +pkgver=2.0.17 pkgrel=0 pkgdesc="Media player with a focus on Digital TV (DVB)" url="https://www.kde.org/applications/multimedia/kaffeine/" @@ -40,4 +40,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="d2b21df76710eb79395a0d4e762ecdde4610945de3d1105002a44a56725aea3f10003f4ebefe4cd67f58f561e79aa3f5561639ad5c3afba488146dcb9360f53d kaffeine-2.0.15.tar.xz" +sha512sums="96b4f676452102802f0226037a21572f851b2ebe2338f758d4d14f15af63adc93fc1ff15d78753284793ca01ebe9fa5f7b367545cfa491e08f563c19d63130dc kaffeine-2.0.17.tar.xz" diff --git a/user/kalgebra/APKBUILD b/user/kalgebra/APKBUILD index f89a60f69..f8bdda246 100644 --- a/user/kalgebra/APKBUILD +++ b/user/kalgebra/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kalgebra -pkgver=18.12.3 +pkgver=19.04.1 pkgrel=0 pkgdesc="Graph calculator and plotter" url="https://www.kde.org/applications/education/kalgebra/" @@ -40,4 +40,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="e2c4dad9fc7c7ef0af2b4f6173376db9e68df7df92094efccfd9e6d4edd1bc376352d00717d29351613bbdd52a8cdb45113ae243d4092aa2f8199a010e3f336f kalgebra-18.12.3.tar.xz" +sha512sums="ae7e7ea92bdac7400d7acc907eaec2603aaa93e671237ab38b826560082f7c204e54ce52d17aa140b9a100d0a2db727c8131e64910536aead6c13b7b795cb600 kalgebra-19.04.1.tar.xz" diff --git a/user/kalzium/APKBUILD b/user/kalzium/APKBUILD index 64f1a21b1..fb5750d13 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.12.3 +pkgver=19.04.1 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="a03c477fc535784ed6d8007373bc172a01fb72148282858cdb4d2560daa2c31bd3daf068e5ecaa28564888573cb14997840d26bbd922a1fe0c1cf3e77e17f711 kalzium-18.12.3.tar.xz" +sha512sums="b354542d34df53a1c4d48ac522b31bb131d44521e24d5aada6b953342a3ece71851baac726ceae779d019a6dc5373797f84ba13c6b5ec82fe422a3a2b4c0a2c4 kalzium-19.04.1.tar.xz" diff --git a/user/kanagram/APKBUILD b/user/kanagram/APKBUILD index c0c734773..69d12b5ae 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.12.3 +pkgver=19.04.1 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="75e9465a6621f04f32a7ac2868fd1a8b9133c0957d75608a960919252613b01fd27369fc17543ac08bff333351719986d69738773696be1f69cd330a1aa303a7 kanagram-18.12.3.tar.xz" +sha512sums="53d1352fb1436fc8cd341b39425b4ae7d64a2378197972e303877104b220447873d89a3ec4facd1b2199a741cb3cfab34fcf920f43ed40c3d4dd28de722c272e kanagram-19.04.1.tar.xz" diff --git a/user/kapman/APKBUILD b/user/kapman/APKBUILD index ef2120b43..997bc3873 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.12.3 +pkgver=19.04.1 pkgrel=0 pkgdesc="Pac-Man clone" url="https://www.kde.org/applications/games/kapman/" @@ -40,4 +40,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="512743caa897c4e2e4d3f78bc5e85a500b3bc5c810dc8ea8a28508e81a02ef230fe7dda8b9abf01b8e15c90e8172a80655951473414fda959bb1eb079bf0f210 kapman-18.12.3.tar.xz" +sha512sums="7df13b6ec898e2f6f3c2be19b71531fb2efea406fbc58ac032a51b382e6e8b685d0b0af27f4d9ee4ae3d123be4f5bbef0e7b9e937ca6aeb3f2a365dec9bf47ce kapman-19.04.1.tar.xz" diff --git a/user/kate/APKBUILD b/user/kate/APKBUILD index 0fd90e6f3..3ac9abcd6 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.12.3 +pkgver=19.04.1 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="2f067628d29b7f807e13d2faa2c6727a8028e273c61b4923d6a6eaeb4d74dbf0f0e83edf492821b228ccbe99a985cf712cfd75b9d6ea8d16af9b1ff7ec8ac00d kate-18.12.3.tar.xz" +sha512sums="fa17365049496acdeccd70acfef1554af87b038a63c4e1dc38c6c3aaeb3ec127eed59a212fcf5488989a9e9f8cff3c71ccf00fd4081214cf51288ea2c2916077 kate-19.04.1.tar.xz" diff --git a/user/katomic/APKBUILD b/user/katomic/APKBUILD index a96cb5759..15297a989 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.12.3 +pkgver=19.04.1 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="d47313b345c4b4dbe95dacf61a8435239da38a4acd4491ae7910f4fb70c8d2d5cdc85f5932bf86871c3af1da6fa99fdc703bd75b92ffdb6a9780a09a6e3c3055 katomic-18.12.3.tar.xz" +sha512sums="75714f55202dcfe66717318bcbd4698b658cda12209ec1bb0bd397f755d7be742a0e276dc8c1e3b5eea0a42a38a44f193c45b059653ebe06fbad563e15136a7f katomic-19.04.1.tar.xz" diff --git a/user/kblackbox/APKBUILD b/user/kblackbox/APKBUILD index 38b727182..dbfae7876 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.12.3 +pkgver=19.04.1 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="888d5c00b3f05b4d26c8f898b85d73210ad01260c20f049f9da29fac9f7bc83e1ca9940ca489119313b976ec764b89dbd5acac3fa1f78c6a28205b1c3fc858e5 kblackbox-18.12.3.tar.xz" +sha512sums="a77cbbef0658b4b84f6d13326f9960f68e543872668f8e416add62516edf5a957f7a7dd4a39e7ab09ff4b6e4ade1ccab8935dc7132cbb5d486e8dd336ffbd945 kblackbox-19.04.1.tar.xz" diff --git a/user/kblocks/APKBUILD b/user/kblocks/APKBUILD index 4ec273c96..85bd23021 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.12.3 +pkgver=19.04.1 pkgrel=0 pkgdesc="Falling blocks game" url="https://www.kde.org/applications/games/kblocks/" @@ -40,4 +40,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="bdefc1f640bbff779e2681a66733d1ba783239984849a4c6c8af9584155388723ad82abe1577989475ee6d91e8c51e39a565e443b55429da12299fdea33422fb kblocks-18.12.3.tar.xz" +sha512sums="6913105aaeec4e797cf8a7102beb6aac0a16c4c0100f48cbf0d9cabb2eedf75597f54b1ce4956454b1810109e89cc5d439768110f8f865b89d6a37bf5f0df5b0 kblocks-19.04.1.tar.xz" diff --git a/user/kbounce/APKBUILD b/user/kbounce/APKBUILD index c2c4fc9c3..7450c89c9 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.12.3 +pkgver=19.04.1 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="b41a63edcf4d4f36b756929df55ddc17b5d345ad58cca8df251226de0ce43503f19726e9ffc5491374919f83d4767b3b753fb248958396e82163f7ab96e83536 kbounce-18.12.3.tar.xz" +sha512sums="5277dce1ef25e68a3347cc7cf9ec83d645626002b1472ad4b6c3e1c68459c8b115351ec116a163525e192d32da01d599b906b38b940ff62811e7ab2832537ecc kbounce-19.04.1.tar.xz" diff --git a/user/kbreakout/APKBUILD b/user/kbreakout/APKBUILD index 6f1392c57..9f0b91fba 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.12.3 +pkgver=19.04.1 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="5e0e2763ab4e8a5ce8eab78bbfd8e267e5efdf8151fd0e66d6cfdb174aed402a4ce5c02b3fcf2614c07f5726ff34fe6d636c238c4711302fc148c19af8f901d3 kbreakout-18.12.3.tar.xz" +sha512sums="0b43b45408d2a4f41c0a00e2fc199c3f126e0a60392a7b48fe5b354ac6d531b9de1248b9b46698bb1bd746983d45f2b1c8196f0eeb72dd003ac4e8cfc28b5cc5 kbreakout-19.04.1.tar.xz" diff --git a/user/kbruch/APKBUILD b/user/kbruch/APKBUILD index 0d841c20a..a1ab4ac03 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.12.3 +pkgver=19.04.1 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="91375dcebf526b861103573a293a722aa1ce960bedfd2b3ac1ddc606395b84e1c65e1f7532b24789e1c5dc60f0a05e6c73eb26094bfc3810a8898c1ba10c7b56 kbruch-18.12.3.tar.xz" +sha512sums="12067ebc85acfcb4ebc14af7f0d5aefc3a37e751b65795c0c2bd50f45766858a0be218a356a6659a79f6050d34c9a702af529e09c79ecf92fb676245d65e5d60 kbruch-19.04.1.tar.xz" diff --git a/user/kcachegrind/APKBUILD b/user/kcachegrind/APKBUILD index b61847991..806d73ece 100644 --- a/user/kcachegrind/APKBUILD +++ b/user/kcachegrind/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kcachegrind -pkgver=18.12.3 +pkgver=19.04.1 pkgrel=0 pkgdesc="Profile data visualisation tool and call graph viewer" url="https://kcachegrind.github.io/html/Home.html" @@ -40,4 +40,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="c22a442fad73921e098c66cefbffc999990b2082ad400dce195efea77bbfc6f2741f24ca0ee38d5eac7664663081d28cccf33f5c6e8c6e1fadaf67c9dc7e65bc kcachegrind-18.12.3.tar.xz" +sha512sums="eca2205de1d719e36ce150ba7ffd87142df060f24932488c843e7f62e1bb9674bb0ea181763910a82cb39b7268556a5dfa04ea42f2cbd344483fe5086f455885 kcachegrind-19.04.1.tar.xz" diff --git a/user/kcalc/APKBUILD b/user/kcalc/APKBUILD index 0433fd73b..959db857e 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.12.3 +pkgver=19.04.1 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="be4d7fd59f3ce6c63426a4aad4a388e4123397ab06c44441213754ec6e935217859c5960cfaf76ed0537400f51c35a74a6413a6c2bbe3466d045ea6ccd7ea45f kcalc-18.12.3.tar.xz" +sha512sums="8c1868a571ea7fb77a5249d9154c32968974345ec1c8eadb233e5cf436110299baeda39d580ff12c958061188c96a49e899407c35008b476cd0395427566fe1c kcalc-19.04.1.tar.xz" diff --git a/user/kcharselect/APKBUILD b/user/kcharselect/APKBUILD index dcaab53ea..fac8e4c48 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.12.3 +pkgver=19.04.1 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="eea89de5285ffb1afa744e7482423721026dd1c8ad0ce32720f2c8fecf105505e94b035f12b19d69e518fc27656257fbd5d1e3e578a5b1047f4d361bb4d77e7f kcharselect-18.12.3.tar.xz" +sha512sums="9891af9994e1aa1778e1bcde117249c0a82d42b08a6135a1d55151473e20ee886856c0cd8b824eab59bfa9f233178d15d6ca2a850c144af518c9e2f8a23a9dd9 kcharselect-19.04.1.tar.xz" diff --git a/user/kcolorchooser/APKBUILD b/user/kcolorchooser/APKBUILD index 136d2a814..339fde904 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.12.3 +pkgver=19.04.1 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="27e6cc50cdb04f502746a17cf463751173f8f8e057ae1d3d31ae6cb5b10e29123649da755a65f9f7d505d99f585f47905de7a5d3b4f914c7fc84b41d58b7be6a kcolorchooser-18.12.3.tar.xz" +sha512sums="fe7d4408e1a40e71bd1c16646835f20be9ba21b96574a5b4e1dcbdf348f20ba9862db08fa2b08dd749956758057cc0b232b170d6a42c9db93a81a32d05bba2cb kcolorchooser-19.04.1.tar.xz" diff --git a/user/kconfigwidgets/APKBUILD b/user/kconfigwidgets/APKBUILD index e492802ff..558358620 100644 --- a/user/kconfigwidgets/APKBUILD +++ b/user/kconfigwidgets/APKBUILD @@ -2,7 +2,7 @@ # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kconfigwidgets pkgver=5.54.0 -pkgrel=0 +pkgrel=1 pkgdesc="Framework providing widgets for software configuration" url="https://www.kde.org/" arch="all" @@ -13,7 +13,9 @@ depends_dev="qt5-qtbase-dev kauth-dev kcodecs-dev kconfig-dev kguiaddons-dev ki18n-dev kwidgetsaddons-dev kdoctools-dev" makedepends="$depends_dev cmake extra-cmake-modules doxygen qt5-qttools-dev" subpackages="$pkgname-dev $pkgname-doc $pkgname-lang" -source="https://download.kde.org/stable/frameworks/${pkgver%.*}/kconfigwidgets-$pkgver.tar.xz" +source="https://download.kde.org/stable/frameworks/${pkgver%.*}/kconfigwidgets-$pkgver.tar.xz + languagename.patch + " build() { cd "$builddir" @@ -42,4 +44,5 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="c6ec2d90c3c227eb9b092bf5b33c39f99ca4f68b1337cc0655d679648710987d13e1c8d9622ad5683ba5b2b3037aca510d96ff64d04a41dd442f3bed74398b73 kconfigwidgets-5.54.0.tar.xz" +sha512sums="c6ec2d90c3c227eb9b092bf5b33c39f99ca4f68b1337cc0655d679648710987d13e1c8d9622ad5683ba5b2b3037aca510d96ff64d04a41dd442f3bed74398b73 kconfigwidgets-5.54.0.tar.xz +3b1abbd9b5cef4400a8a962cef4f8a3614f49700fdf9df25e709a8105d9e59429102aa94b8a47fa35e7dcb9d39ba5bbfd8485743fa6f64155bef3aa1afb4bb9e languagename.patch" diff --git a/user/kconfigwidgets/languagename.patch b/user/kconfigwidgets/languagename.patch new file mode 100644 index 000000000..d3eb89f54 --- /dev/null +++ b/user/kconfigwidgets/languagename.patch @@ -0,0 +1,716 @@ +From 91077def022a999ce46c91347f1167626266f460 Mon Sep 17 00:00:00 2001 +From: Albert Astals Cid <aacid@kde.org> +Date: Mon, 7 Jan 2019 11:42:28 +0100 +Subject: Add KLanguageName + +Summary: KLanguageName is a helper namespace that returns the name of a given language code. + +Reviewers: apol + +Reviewed By: apol + +Subscribers: hein, kde-frameworks-devel, sitter, markg, apol + +Tags: #frameworks + +Differential Revision: https://phabricator.kde.org/D10446 +--- + autotests/CMakeLists.txt | 27 ++++++ + .../kf5_entry_data.cmake/locale/ca/kf5_entry.cmake | 98 ++++++++++++++++++++++ + .../kf5_entry_data.cmake/locale/de/kf5_entry.cmake | 98 ++++++++++++++++++++++ + .../locale/en_US/kf5_entry.cmake | 44 ++++++++++ + autotests/kf5_entry_data.cmake/locale/es/.keep | 0 + .../kf5_entry_data.cmake/locale/fr/kf5_entry.cmake | 2 + + .../kf5_entry_data.cmake/locale/pt/kf5_entry.cmake | 98 ++++++++++++++++++++++ + autotests/klanguagenametest.cpp | 92 ++++++++++++++++++++ + src/CMakeLists.txt | 2 + + src/klanguagename.cpp | 67 +++++++++++++++ + src/klanguagename.h | 63 ++++++++++++++ + 11 files changed, 591 insertions(+) + create mode 100644 autotests/kf5_entry_data.cmake/locale/ca/kf5_entry.cmake + create mode 100644 autotests/kf5_entry_data.cmake/locale/de/kf5_entry.cmake + create mode 100644 autotests/kf5_entry_data.cmake/locale/en_US/kf5_entry.cmake + create mode 100644 autotests/kf5_entry_data.cmake/locale/es/.keep + create mode 100644 autotests/kf5_entry_data.cmake/locale/fr/kf5_entry.cmake + create mode 100644 autotests/kf5_entry_data.cmake/locale/pt/kf5_entry.cmake + create mode 100644 autotests/klanguagenametest.cpp + create mode 100644 src/klanguagename.cpp + create mode 100644 src/klanguagename.h + +diff --git a/autotests/CMakeLists.txt b/autotests/CMakeLists.txt +index 1917ecb..37caaf9 100644 +--- a/autotests/CMakeLists.txt ++++ b/autotests/CMakeLists.txt +@@ -9,5 +9,32 @@ set(kconfigdialog_unittest_SRCS kconfigdialog_unittest.cpp) + kconfig_add_kcfg_files(kconfigdialog_unittest_SRCS GENERATE_MOC signaltest.kcfgc) + ecm_add_test(${kconfigdialog_unittest_SRCS} TEST_NAME "kconfigdialog_unittest" LINK_LIBRARIES Qt5::Test KF5::ConfigWidgets) + ++set(lang_entries ++ ca ++ de ++ en_US ++ es # must not have file! ++ fr ++ pt ++) ++ ++# scripty would mangle all *.desktop files, since that'd have potential of ++# breaking the test we'll need to bypass scripty by not having our files called ++# .desktop! ++# Do note that we pop these into CMAKE_LIBRARY_OUTPUT_DIRECTORY so QFINDTESTDATA ++# is able to find the fixtures in the bin dir as KDECMakeSettings sets a special ++# output dir. ++foreach(lang ${lang_entries}) ++ set(src_dir "${CMAKE_CURRENT_SOURCE_DIR}/kf5_entry_data.cmake/locale/${lang}") ++ set(src_file "${src_dir}/kf5_entry.cmake") ++ set(bin_dir "${CMAKE_LIBRARY_OUTPUT_DIRECTORY}/kf5_entry_data/locale/${lang}") ++ set(bin_file "${bin_dir}/kf5_entry.desktop") ++ file(MAKE_DIRECTORY ${bin_dir}) ++ if(EXISTS ${src_file}) # not all languages have entries ++ configure_file(${src_file} ${bin_file} COPYONLY) ++ endif() ++endforeach() ++ ++ecm_add_test(klanguagenametest.cpp LINK_LIBRARIES Qt5::Test KF5::ConfigWidgets) + + ecm_add_test(krecentfilesactiontest.cpp TEST_NAME "krecentfilesaction_test" LINK_LIBRARIES Qt5::Test KF5::ConfigWidgets) +diff --git a/autotests/kf5_entry_data.cmake/locale/ca/kf5_entry.cmake b/autotests/kf5_entry_data.cmake/locale/ca/kf5_entry.cmake +new file mode 100644 +index 0000000..a81564c +--- /dev/null ++++ b/autotests/kf5_entry_data.cmake/locale/ca/kf5_entry.cmake +@@ -0,0 +1,98 @@ ++[KCM Locale] ++Name=Catalan ++Name[af]=Katelaans ++Name[ar]=الكاتالانيّة ++Name[as]=কাটালান ++Name[be]=Каталонская ++Name[be@latin]=Katalanskaja ++Name[bg]=Каталонски ++Name[bn]=ক্যাটালান ++Name[bn_IN]=ক্যাটালান ++Name[br]=Katalaneg ++Name[bs]=katalonski ++Name[ca]=Català ++Name[ca@valencia]=Català ++Name[cs]=Katalánský ++Name[csb]=Katalońsczi ++Name[cy]=Catalaneg ++Name[da]=Catalansk ++Name[de]=Katalanisch ++Name[el]=Καταλανικά ++Name[en_GB]=Catalan ++Name[eo]=Kataluna ++Name[es]=Catalán ++Name[et]=Katalaani ++Name[eu]=Katalaniera ++Name[fa]=کاتالان ++Name[fi]=Katalaani ++Name[fr]=Catalan ++Name[fy]=Katalaansk ++Name[ga]=Catalóinis ++Name[gd]=Catalanais ++Name[gl]=Catalán ++Name[gu]=કેટેલાન ++Name[he]=קטלונית ++Name[hi]=केटेलन ++Name[hne]=केटेलन ++Name[hr]=Katalonski ++Name[hsb]=Katalansce ++Name[hu]=Katalán ++Name[ia]=Catalan ++Name[id]=Catalan ++Name[is]=Katalónska ++Name[it]=Catalano ++Name[ja]=カタロニア語 ++Name[kk]=Каталанша ++Name[km]=កាតាឡាន ++Name[kn]=ಕ್ಯಾಟಲಾನ್ ++Name[ko]=카탈루냐어 ++Name[ku]=Katalan ++Name[lb]=Katalanesch ++Name[lt]=Katalonų ++Name[lv]=Kataloņu ++Name[mai]=केटालान ++Name[mk]=Каталонски ++Name[ml]=കറ്റാലന് ++Name[mr]=केटेलन ++Name[ms]=Catalan ++Name[nb]=Katalansk ++Name[nds]=Katalaansch ++Name[ne]=कातालान ++Name[nl]=Catalaans ++Name[nn]=Katalansk ++Name[oc]=Catalan ++Name[or]=କେଟାଲାନ ++Name[pa]=ਕਾਟਾਲਾਨ ++Name[pl]=Kataloński ++Name[ps]=کېټېلېن ++Name[pt]=Catalão ++Name[pt_BR]=Catalão ++Name[ro]=Catalană ++Name[ru]=Каталонский ++Name[se]=Katalánagiella ++Name[si]=කැටලන් ++Name[sk]=Katalánčina ++Name[sl]=Katalonščina ++Name[sq]=Katalanisht ++Name[sr]=каталонски ++Name[sr@ijekavian]=каталонски ++Name[sr@ijekavianlatin]=katalonski ++Name[sr@latin]=katalonski ++Name[sv]=Katalanska ++Name[ta]=கெடலான் ++Name[te]=కెటలన్ ++Name[tg]=Каталанӣ ++Name[th]=ภาษาคาตาลัน ++Name[tr]=Katalanca ++Name[tt]=Каталон ++Name[ug]=كاتالانچە ++Name[uk]=Каталанська ++Name[uz]=Katalancha ++Name[uz@cyrillic]=Каталанча ++Name[vi]=Catalan ++Name[wa]=Catalan ++Name[xh]=Catalan ++Name[x-test]=xxCatalanxx ++Name[zh_CN]=加泰罗尼亚语 ++Name[zh_HK]=加泰隆尼亞語 ++Name[zh_TW]=加泰羅尼亞語 +diff --git a/autotests/kf5_entry_data.cmake/locale/de/kf5_entry.cmake b/autotests/kf5_entry_data.cmake/locale/de/kf5_entry.cmake +new file mode 100644 +index 0000000..e8146cb +--- /dev/null ++++ b/autotests/kf5_entry_data.cmake/locale/de/kf5_entry.cmake +@@ -0,0 +1,98 @@ ++[KCM Locale] ++Name=German ++Name[af]=Duits ++Name[ar]=الألمانيّة ++Name[as]=জাৰ্মান ++Name[be]=Нямецкая ++Name[be@latin]=Niamieckaja ++Name[bg]=Немски ++Name[bn]=জার্মান ++Name[bn_IN]=জার্মান ++Name[br]=Alamaneg ++Name[bs]=njemački ++Name[ca]=Alemany ++Name[ca@valencia]=Alemany ++Name[cs]=Německý ++Name[csb]=Miemiecczi ++Name[cy]=Almaeneg ++Name[da]=Tysk ++Name[de]=Deutsch ++Name[el]=Γερμανικά ++Name[en_GB]=German ++Name[eo]=Germana ++Name[es]=Alemán ++Name[et]=Saksa ++Name[eu]=Alemana ++Name[fa]=آلمانی ++Name[fi]=Saksa ++Name[fr]=Allemand ++Name[fy]=Dútsk ++Name[ga]=Gearmáinis ++Name[gd]=Gearmailtis ++Name[gl]=Alemán ++Name[gu]=જર્મન ++Name[he]=גרמנית ++Name[hi]=जर्मन ++Name[hne]=जर्मन ++Name[hr]=Njemački ++Name[hsb]=Němsce ++Name[hu]=Német ++Name[ia]=Germano ++Name[id]=Jerman ++Name[is]=Þýska ++Name[it]=Tedesco ++Name[ja]=ドイツ語 ++Name[kk]=Немісше ++Name[km]=អាល្លឺម៉ង់ ++Name[kn]=ಜರ್ಮನ್ ++Name[ko]=독일어 ++Name[ku]=Almanî ++Name[lb]=Däitsch ++Name[lt]=Vokiečių ++Name[lv]=Vācu ++Name[mai]=जर्मन ++Name[mk]=Германски ++Name[ml]=ജര്മ്മന് ++Name[mr]=जर्मन ++Name[ms]=Jerman ++Name[nb]=Tysk ++Name[nds]=Hoochdüütsch ++Name[ne]=जर्मनी ++Name[nl]=Duits ++Name[nn]=Tysk ++Name[oc]=Aleman ++Name[or]=ଜର୍ମାନ ++Name[pa]=ਜਰਮਨ ++Name[pl]=Niemiecki ++Name[ps]=جرمني ++Name[pt]=Alemão ++Name[pt_BR]=Alemão ++Name[ro]=Germană ++Name[ru]=Немецкий ++Name[se]=Duiskkagiella ++Name[si]=ජර්මානු ++Name[sk]=Nemčina ++Name[sl]=Nemščina ++Name[sq]=Gjermanisht ++Name[sr]=немачки ++Name[sr@ijekavian]=њемачки ++Name[sr@ijekavianlatin]=njemački ++Name[sr@latin]=nemački ++Name[sv]=Tyska ++Name[ta]=ஜெர்மன் ++Name[te]=జెర్మన్ ++Name[tg]=Олмонӣ ++Name[th]=ภาษาเยอรมัน ++Name[tr]=Almanca ++Name[tt]=Алман ++Name[ug]=گېرمانچە ++Name[uk]=Німецька ++Name[uz]=Olmoncha ++Name[uz@cyrillic]=Олмонча ++Name[vi]=Đức ++Name[wa]=Almand ++Name[xh]=German ++Name[x-test]=xxGermanxx ++Name[zh_CN]=德语 ++Name[zh_HK]=德語 ++Name[zh_TW]=德語 +diff --git a/autotests/kf5_entry_data.cmake/locale/en_US/kf5_entry.cmake b/autotests/kf5_entry_data.cmake/locale/en_US/kf5_entry.cmake +new file mode 100644 +index 0000000..6033ad4 +--- /dev/null ++++ b/autotests/kf5_entry_data.cmake/locale/en_US/kf5_entry.cmake +@@ -0,0 +1,44 @@ ++[KCM Locale] ++Name=US English ++Name[ar]=الإنجليزية الأمريكية ++Name[bs]=Američki engleski ++Name[ca]=Anglès US ++Name[ca@valencia]=Anglés US ++Name[cs]=US Angličtina ++Name[da]=US Engelsk ++Name[de]=US-Englisch ++Name[el]=US English ++Name[en_GB]=US English ++Name[es]=Inglés de EE. UU. ++Name[et]=USA inglise ++Name[eu]=AEBtako ingelesa ++Name[fi]=Amerikanenglanti ++Name[fr]=Anglais (États-Unis) ++Name[gd]=Beurla (SA) ++Name[gl]=Inglés americano ++Name[he]=אנגלית ארה"ב ++Name[hu]=Angol (amerikai) ++Name[ia]=Anglese de S.U.A. ++Name[id]=Inggris US ++Name[it]=Inglese US ++Name[ko]=미국 영어 ++Name[lt]=JAV anglų ++Name[nb]=Engelsk (USA) ++Name[nl]=VS Engels ++Name[nn]=Engelsk (USA) ++Name[pl]=Angielski amerykański ++Name[pt]=Inglês dos EUA ++Name[pt_BR]=Inglês dos EUA ++Name[ru]=Английский (США) ++Name[sk]=Americká angličtina ++Name[sl]=ameriško angleško ++Name[sr]=амерички енглески ++Name[sr@ijekavian]=амерички енглески ++Name[sr@ijekavianlatin]=američki engleski ++Name[sr@latin]=američki engleski ++Name[sv]=Amerikansk engelska ++Name[tr]=ABD İngilizcesi ++Name[uk]=Англійська (США) ++Name[x-test]=xxUS Englishxx ++Name[zh_CN]=美国英语 ++Name[zh_TW]=美式英文 +diff --git a/autotests/kf5_entry_data.cmake/locale/es/.keep b/autotests/kf5_entry_data.cmake/locale/es/.keep +new file mode 100644 +index 0000000..e69de29 +diff --git a/autotests/kf5_entry_data.cmake/locale/fr/kf5_entry.cmake b/autotests/kf5_entry_data.cmake/locale/fr/kf5_entry.cmake +new file mode 100644 +index 0000000..4f248b9 +--- /dev/null ++++ b/autotests/kf5_entry_data.cmake/locale/fr/kf5_entry.cmake +@@ -0,0 +1,2 @@ ++[KCM Locale] ++Name=French +diff --git a/autotests/kf5_entry_data.cmake/locale/pt/kf5_entry.cmake b/autotests/kf5_entry_data.cmake/locale/pt/kf5_entry.cmake +new file mode 100644 +index 0000000..6e555d0 +--- /dev/null ++++ b/autotests/kf5_entry_data.cmake/locale/pt/kf5_entry.cmake +@@ -0,0 +1,98 @@ ++[KCM Locale] ++Name=Portuguese ++Name[af]=Portugese ++Name[ar]=البرتغاليّة ++Name[as]=প'ৰ্টুগিছ্ ++Name[be]=Партугальская ++Name[be@latin]=Partuhalskaja ++Name[bg]=Португалски ++Name[bn]=পর্তুগীজ ++Name[bn_IN]=পোর্তুগিজ ++Name[br]=Portugaleg ++Name[bs]=portugalski ++Name[ca]=Portuguès ++Name[ca@valencia]=Portugués ++Name[cs]=Portugalský ++Name[csb]=Pòrtugalsczi ++Name[cy]=Portiwgaleg ++Name[da]=Portugisisk ++Name[de]=Portugiesisch ++Name[el]=Πορτογαλικά ++Name[en_GB]=Portuguese ++Name[eo]=Portugala ++Name[es]=Portugués ++Name[et]=Portugali ++Name[eu]=Portugesa ++Name[fa]=پرتغالی ++Name[fi]=Portugali ++Name[fr]=Portugais ++Name[fy]=Portugeesk ++Name[ga]=Portaingéilis ++Name[gd]=Portagailis ++Name[gl]=Portugués ++Name[gu]=પોર્ટુગીઝ ++Name[he]=פורטוגזית ++Name[hi]=पुर्तगाली ++Name[hne]=पुर्तगाली ++Name[hr]=Portugalski ++Name[hsb]=Portugalsce ++Name[hu]=Portugál ++Name[ia]=Portugese ++Name[id]=Portugis ++Name[is]=Portúgalska ++Name[it]=Portoghese ++Name[ja]=ポルトガル語 ++Name[kk]=Португалша ++Name[km]=ព័រទុយហ្គាល់ ++Name[kn]=ಪೋರ್ಚುಗೀಸ್ ++Name[ko]=포르투갈어 ++Name[ku]=Portûgalî ++Name[lb]=Portugisesch ++Name[lt]=Portugalų ++Name[lv]=Portugāļu ++Name[mai]=पुर्तगाली ++Name[mk]=Португалски ++Name[ml]=പോര്ച്ചുഗീസ് ++Name[mr]=पोर्तुगीज ++Name[ms]=Portugis ++Name[nb]=Portugisisk ++Name[nds]=Portugeesch ++Name[ne]=पोर्तुगाली ++Name[nl]=Portugees ++Name[nn]=Portugisisk ++Name[oc]=Portugués ++Name[or]=ପର୍ତ୍ତୁଗିଜ ++Name[pa]=ਪੁਰਤਗਾਲੀ ++Name[pl]=Portugalski ++Name[ps]=پورټګيز ++Name[pt]=Português ++Name[pt_BR]=Português ++Name[ro]=Portugheză ++Name[ru]=Португальский ++Name[se]=Portugálagiella ++Name[si]=පෘතුගීසි ++Name[sk]=Portugalčina ++Name[sl]=Portugalščina ++Name[sq]=Portugalisht ++Name[sr]=португалски ++Name[sr@ijekavian]=португалски ++Name[sr@ijekavianlatin]=portugalski ++Name[sr@latin]=portugalski ++Name[sv]=Portugisiska ++Name[ta]=போர்த்துக்கீசிய ++Name[te]=పొర్ట్యుగీస్ ++Name[tg]=Португалӣ ++Name[th]=ภาษาโปรตุเกส ++Name[tr]=Portekizce ++Name[tt]=Португал ++Name[ug]=پورتۇگالچە ++Name[uk]=Португальська ++Name[uz]=Portugalcha ++Name[uz@cyrillic]=Португалча ++Name[vi]=Bồ Đào Nha ++Name[wa]=Portuguès ++Name[xh]=Portuguese ++Name[x-test]=xxPortuguesexx ++Name[zh_CN]=葡萄牙语 ++Name[zh_HK]=葡萄牙語 ++Name[zh_TW]=葡萄牙語 +diff --git a/autotests/klanguagenametest.cpp b/autotests/klanguagenametest.cpp +new file mode 100644 +index 0000000..bb2b3d9 +--- /dev/null ++++ b/autotests/klanguagenametest.cpp +@@ -0,0 +1,96 @@ ++/* ++ Copyright (c) 2018 Harald Sitter <sitter@kde.org> ++ ++ This library is free software; you can redistribute it and/or ++ modify it under the terms of the GNU Lesser General Public ++ License as published by the Free Software Foundation; either ++ version 2.1 of the License, or (at your option) version 3, or any ++ later version accepted by the membership of KDE e.V. (or its ++ successor approved by the membership of KDE e.V.), which shall ++ act as a proxy defined in Section 6 of version 3 of the license. ++ ++ This library is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Lesser General Public License for more details. ++ ++ You should have received a copy of the GNU Lesser General Public ++ License along with this library. If not, see <http://www.gnu.org/licenses/>. ++*/ ++ ++#include <QObject> ++#include <QtTest> ++ ++#include "klanguagename.h" ++ ++static void setEnvironment() ++{ ++ qputenv("LANG", "C.UTF-8"); ++ qputenv("LANGUAGE", "en"); ++ qputenv("XDG_DATA_DIRS", qUtf8Printable(QFINDTESTDATA("kf5_entry_data"))); ++ // There is a distinct chance of the envionrment setup being to late and ++ // causing flakey results based on the execution env. ++ // Make sure we definitely default to english. ++ QLocale::setDefault(QLocale::English); ++ ++ // NOTE ++ // - fr has no translations ++ // - es has no kf5_entry at all ++ // - other languages under testing are complete ++} ++ ++class KLanguageNameTest : public QObject ++{ ++ Q_OBJECT ++ ++private Q_SLOTS: ++ void testNameForCode() ++ { ++ // This is somewhat wrong, it should not say US. ++ QCOMPARE(KLanguageName::nameForCode("en"), QString("US English")); ++ ++ QCOMPARE(KLanguageName::nameForCode("de"), QString("German")); ++ QCOMPARE(KLanguageName::nameForCode("pt"), QString("Portuguese")); ++ QCOMPARE(KLanguageName::nameForCode("ca"), QString("Catalan")); ++ } ++ ++ void testNameForCodeInLocale() ++ { ++ // This is somewhat wrong, it should not say US. ++ QCOMPARE(KLanguageName::nameForCodeInLocale("en", "de"), QString("US-Englisch")); ++ ++ QCOMPARE(KLanguageName::nameForCodeInLocale("de", "de"), QString("Deutsch")); ++ QCOMPARE(KLanguageName::nameForCodeInLocale("pt", "de"), QString("Portugiesisch")); ++ QCOMPARE(KLanguageName::nameForCodeInLocale("ca", "de"), QString("Katalanisch")); ++ } ++ ++ void testNoTranslation() ++ { ++ // This has an entry file but no translation => QLocale. ++ QCOMPARE(KLanguageName::nameForCode("fr"), QString("French")); ++ QCOMPARE(KLanguageName::nameForCodeInLocale("fr", "de"), QString("French")); ++ // When in the same language, use the native name. ++ QCOMPARE(KLanguageName::nameForCodeInLocale("fr", "fr"), QString("français")); ++ } ++ ++ void testNoEntry() ++ { ++ // This has no entry file => QLocale. ++ QCOMPARE(KLanguageName::nameForCode("es"), QString("Spanish")); ++ QCOMPARE(KLanguageName::nameForCodeInLocale("es", "de"), QString("Spanish")); ++ // When in the same language, use the native name. ++ QCOMPARE(KLanguageName::nameForCodeInLocale("es", "es"), QString("español de España")); ++ } ++ ++ void testNoString() ++ { ++ // Qt doesn't have za support, we have no test fixture, so no string. ++ QCOMPARE(KLanguageName::nameForCode("za"), QString()); ++ } ++}; ++ ++Q_COREAPP_STARTUP_FUNCTION(setEnvironment) ++ ++QTEST_GUILESS_MAIN(KLanguageNameTest) ++ ++#include "klanguagenametest.moc" +diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt +index a35cf3c..09fe50b 100644 +--- a/src/CMakeLists.txt ++++ b/src/CMakeLists.txt +@@ -8,6 +8,7 @@ set(kconfigwidgets_SRCS + kcmodule.cpp + khelpclient.cpp + klanguagebutton.cpp ++ klanguagename.cpp + kpastetextaction.cpp + krecentfilesaction.cpp + kstandardaction.cpp +@@ -52,6 +53,7 @@ ecm_generate_headers(KConfigWidgets_HEADERS + KCModule + KHelpClient + KLanguageButton ++ KLanguageName + KPasteTextAction + KRecentFilesAction + KViewStateMaintainer +diff --git a/src/klanguagename.cpp b/src/klanguagename.cpp +new file mode 100644 +index 0000000..6e1a519 +--- /dev/null ++++ b/src/klanguagename.cpp +@@ -0,0 +1,67 @@ ++/* ++ * Copyright (c) 1999-2003 Hans Petter Bieker <bieker@kde.org> ++ * (c) 2007 David Jarvie <software@astrojar.org.uk> ++ * ++ * This library is free software; you can redistribute it and/or ++ * modify it under the terms of the GNU Library General Public ++ * License as published by the Free Software Foundation; either ++ * version 2 of the License, or (at your option) any later version. ++ * ++ * This library is distributed in the hope that it will be useful, ++ * but WITHOUT ANY WARRANTY; without even the implied warranty of ++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ * Library General Public License for more details. ++ * ++ * You should have received a copy of the GNU Library General Public License ++ * along with this library; see the file COPYING.LIB. If not, write to ++ * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, ++ * Boston, MA 02110-1301, USA. ++ */ ++ ++#include "klanguagename.h" ++#include "kconfigwidgets_debug.h" ++ ++#include <kconfig.h> ++#include <kconfiggroup.h> ++ ++QString KLanguageName::nameForCode(const QString &code) ++{ ++ const QStringList parts = QLocale().name().split(QChar('_')); ++ return nameForCodeInLocale(code, parts.at(0)); ++} ++ ++QString KLanguageName::nameForCodeInLocale(const QString &code, const QString &outputCode) ++{ ++ const QString realCode = code == QStringLiteral("en") ? QStringLiteral("en_US") : code; ++ const QString realOutputCode = outputCode == QStringLiteral("en") ? QStringLiteral("en_US") : outputCode; ++ ++ const QString entryFile = ++ QStandardPaths::locate(QStandardPaths::GenericDataLocation, ++ QStringLiteral("locale") + QLatin1Char('/') + realCode + QStringLiteral("/kf5_entry.desktop")); ++ if (!entryFile.isEmpty()) { ++ KConfig entry(entryFile, KConfig::SimpleConfig); ++ entry.setLocale(realOutputCode); ++ const KConfigGroup group(&entry, "KCM Locale"); ++ const QString name = group.readEntry("Name"); ++ ++ // KConfig doesn't have a way to say it didn't find the entry in ++ // realOutputCode and returned the english version so we check for the ++ // english version, if it's equal to the "non-english" version we'll use ++ // otherwise we defer to QLocale. ++ entry.setLocale("en_US"); ++ const QString englishName = group.readEntry("Name"); ++ if (name != englishName || realOutputCode == QStringLiteral("en_US")) { ++ return name; ++ } ++ } ++ ++ const QLocale locale(realCode); ++ if (locale != QLocale::c()) { ++ if (realCode == realOutputCode) { ++ return locale.nativeLanguageName(); ++ } ++ return QLocale::languageToString(locale.language()); ++ } ++ ++ return QString(); ++} +diff --git a/src/klanguagename.h b/src/klanguagename.h +new file mode 100644 +index 0000000..51dc6dd +--- /dev/null ++++ b/src/klanguagename.h +@@ -0,0 +1,63 @@ ++/* ++ * Copyright (c) 1999-2003 Hans Petter Bieker <bieker@kde.org> ++ * (c) 2001 Martijn Klingens <klingens@kde.org> ++ * (c) 2007 David Jarvie <software@astrojar.org.uk> ++ * ++ * This library is free software; you can redistribute it and/or ++ * modify it under the terms of the GNU Library General Public ++ * License as published by the Free Software Foundation; either ++ * version 2 of the License, or (at your option) any later version. ++ * ++ * This library is distributed in the hope that it will be useful, ++ * but WITHOUT ANY WARRANTY; without even the implied warranty of ++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ * Library General Public License for more details. ++ * ++ * You should have received a copy of the GNU Library General Public License ++ * along with this library; see the file COPYING.LIB. If not, write to ++ * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, ++ * Boston, MA 02110-1301, USA. ++ */ ++ ++#ifndef KLANGUAGENAME_H ++#define KLANGUAGENAME_H ++ ++#include "kconfigwidgets_export.h" ++ ++class QString; ++ ++/** ++ * @class KLanguageName klanguagename.h KLanguageName ++ * ++ * KLanguageName is a helper namespace that returns the name of a given language code. ++ * ++ * @since 5.55 ++ * ++ */ ++namespace KLanguageName ++{ ++ /** ++ * Returns the name of the given language code in the current locale. ++ * ++ * If it can't be found in the current locale it returns the name in English. ++ * ++ * It it can't be found in English either it returns an empty QString. ++ * ++ * @param code code (ISO 639-1) of the language whose name is wanted. ++ */ ++ KCONFIGWIDGETS_EXPORT QString nameForCode(const QString &code); ++ ++ /** ++ * Returns the name of the given language code in the other given locale code. ++ * ++ * If it can't be found in the given locale it returns the name in English. ++ * ++ * It it can't be found in English either it returns an empty QString. ++ * ++ * @param code code (ISO 639-1) of the language whose name is wanted. ++ * @param outputLocale code (ISO 639-1) of the language in which we want the name in. ++ */ ++ KCONFIGWIDGETS_EXPORT QString nameForCodeInLocale(const QString &code, const QString &outputLocale); ++} ++ ++#endif +-- +cgit v1.1 + diff --git a/user/kde-education/APKBUILD b/user/kde-education/APKBUILD index af3f78ab5..40793406e 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.12.3 +pkgver=19.04.1 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 221120015..df6d7f2ac 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.12.3 +pkgver=19.04.1 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 95112536d..c697be041 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.12.3 +pkgver=19.04.1 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 bb36aeb40..8b12cd235 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.12.3 +pkgver=19.04.1 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 2507670a3..974bb3456 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.12.3 +pkgver=19.04.1 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 24e00fd7d..20afd6ae9 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.12.3 +pkgver=19.04.1 pkgrel=0 pkgdesc="Desktop utiltiies from the KDE Software Collection" url="https://www.kde.org/applications/utilities/" diff --git a/user/kdegraphics-thumbnailers/APKBUILD b/user/kdegraphics-thumbnailers/APKBUILD index f3504d35f..f075a90f6 100644 --- a/user/kdegraphics-thumbnailers/APKBUILD +++ b/user/kdegraphics-thumbnailers/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kdegraphics-thumbnailers -pkgver=18.12.3 +pkgver=19.04.1 pkgrel=0 pkgdesc="KDE thumbnailing sofware" url="https://www.KDE.org/" @@ -39,4 +39,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="4e353f782d0f5acb3a6755f2868585b37c7527c5678b06f964ab78e902bcef97adfe882171690a029f3fca8c1b1805f0b89ee8fa71140b5ef8344d042bb6e109 kdegraphics-thumbnailers-18.12.3.tar.xz" +sha512sums="14471feb579f63a29e5241c56cbe6f10fbd880669544db0356ed2c2ce7d9342ddf79c584ee8cd03debafa03f5c3afe79c7b7d977df36f8fea9a9276a3b818cc0 kdegraphics-thumbnailers-19.04.1.tar.xz" diff --git a/user/kdenlive/APKBUILD b/user/kdenlive/APKBUILD index ecdcfc4a3..48f03b4c1 100644 --- a/user/kdenlive/APKBUILD +++ b/user/kdenlive/APKBUILD @@ -1,11 +1,15 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kdenlive -pkgver=18.12.3 +pkgver=19.04.1 pkgrel=0 pkgdesc="Libre video editor" url="https://kdenlive.org/" arch="all" +options="!check" # keyframetest.cpp seems to be broken: + # it claims the KeyframeModel cannot be constructed, + # and then abort(3)s with an assertion in QAbstractItemModel + # I believe the fakeit/Mock code is subtly broken somewhere. license="GPL-2.0-only" depends="" makedepends="cmake extra-cmake-modules qt5-qtbase-dev qt5-qtscript-dev kio-dev @@ -13,7 +17,8 @@ makedepends="cmake extra-cmake-modules qt5-qtbase-dev qt5-qtscript-dev kio-dev kbookmarks-dev kcoreaddons-dev kconfig-dev kconfigwidgets-dev mlt-dev kdbusaddons-dev kwidgetsaddons-dev knotifyconfig-dev knewstuff-dev knotifications-dev kguiaddons-dev ktextwidgets-dev kiconthemes-dev - kdoctools-dev kfilemetadata-dev qt5-qtwebkit-dev v4l-utils-dev" + kdoctools-dev kfilemetadata-dev qt5-qtwebkit-dev v4l-utils-dev + kdeclarative-dev qt5-qtmultimedia-dev rttr-dev" subpackages="$pkgname-doc $pkgname-lang" source="https://download.kde.org/stable/applications/$pkgver/src/kdenlive-$pkgver.tar.xz" @@ -43,4 +48,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="9a05a48d7b2b958cc34fc1fd673af519861a0275f28d5b6774280e1b5eff009fa90a920d888466b70d2b07aecb3129892b6762d75d93106051c51c7a440fbfdc kdenlive-18.12.3.tar.xz" +sha512sums="f2f488928c3f3279021fbe2762f48e8cf52e8f30fe47d5ef50cfceac28fe7b8535d27be18679cde37f6dac281ec2cd1a2cf0d371b79088413b2195d9b32ed70d kdenlive-19.04.1.tar.xz" diff --git a/user/kdf/APKBUILD b/user/kdf/APKBUILD index c9555acb1..f9c4ae905 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.12.3 +pkgver=19.04.1 pkgrel=0 pkgdesc="View disk usage information" url="https://utils.kde.org/projects/kdf/" @@ -40,4 +40,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="6e604d18715dd5b743d63fe01528bfd347528f140638eed1900ae76a88911b2a2aea359e2603a17e82e7990a63c47789eb3b5839affb3a449547d9c89352444e kdf-18.12.3.tar.xz" +sha512sums="e95d0cff0b09630fc4e892613115157231b0355ecc0762cd9b7e97c491144f17a71008b229144321acae5cc9af4f5bd3eebd20f01cfe4bd088096262eadc8326 kdf-19.04.1.tar.xz" diff --git a/user/kdiamond/APKBUILD b/user/kdiamond/APKBUILD index fc791cbeb..cba44dcc0 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.12.3 +pkgver=19.04.1 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="8e11aa4af8fc3c856ab9a45def63491d0c5f14c5d33c93c19be73281873b3b84c20839733e92a9f146c288d908104dae776e8983ce1ee6560042d4c4633d9e78 kdiamond-18.12.3.tar.xz" +sha512sums="9fa48d2c67218469870301607166cce0f4dcbef6193703de705e6b324626d09d43ddf037c6676eb682b66fdd12254f9d87d1bb39b90975f4375723e249862955 kdiamond-19.04.1.tar.xz" diff --git a/user/keepassxc/APKBUILD b/user/keepassxc/APKBUILD index 14d9235fc..67159dc98 100644 --- a/user/keepassxc/APKBUILD +++ b/user/keepassxc/APKBUILD @@ -1,22 +1,22 @@ # Contributor: Max Rees <maxcrees@me.com> # Maintainer: Max Rees <maxcrees@me.com> pkgname=keepassxc -pkgver=2.3.4 +pkgver=2.4.1 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" +makedepends="argon2-dev cmake libgcrypt-dev libqrencode-dev + libxi-dev libxtst-dev qt5-qtbase-dev qt5-qtsvg-dev qt5-qttools-dev + qt5-qtx11extras-dev xz zlib-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 + mkdir build } build() { @@ -37,4 +37,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="edca22ef9d7c553d21d8ea6115a5635265176acc56fdf055f1961a3e65046de49ed5b67eb68ecf4f925226fb5bca140d5d473a5082301168f6a8bb7979f562a8 keepassxc-2.3.4-src.tar.xz" +sha512sums="4369043700d3de4fece0a1dd0f8aab3f621df379bc9d0214b4c70ab72d081f978104aa09fd39c4b4bf8b8df8f78266835dc206c31e7174bdf872a977c0d79502 keepassxc-2.4.1-src.tar.xz" diff --git a/user/kfilemetadata/APKBUILD b/user/kfilemetadata/APKBUILD index 744378ad7..2dea1fd5f 100644 --- a/user/kfilemetadata/APKBUILD +++ b/user/kfilemetadata/APKBUILD @@ -2,7 +2,7 @@ # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kfilemetadata pkgver=5.54.0 -pkgrel=0 +pkgrel=1 pkgdesc="File metadata extraction framework" url="https://www.kde.org/" arch="all" @@ -11,9 +11,11 @@ depends="catdoc" depends_dev="qt5-qtbase-dev" makedepends="$depends_dev cmake extra-cmake-modules python3 doxygen graphviz qt5-qtmultimedia-dev qt5-qttools-dev exiv2-dev karchive-dev ki18n-dev - poppler-qt5-dev taglib-dev" + poppler-qt5-dev taglib-dev kcoreaddons-dev ffmpeg-dev" subpackages="$pkgname-dev $pkgname-doc $pkgname-lang" -source="https://download.kde.org/stable/frameworks/${pkgver%.*}/kfilemetadata-$pkgver.tar.xz" +source="https://download.kde.org/stable/frameworks/${pkgver%.*}/kfilemetadata-$pkgver.tar.xz + add-formatting-fn.patch + " build() { cd "$builddir" @@ -42,4 +44,5 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="bfa8287e5c8df363908a441419d377d33ea2cd93a4fc69fc47c69da80ad0e3a80e60f26b4856c3d3e04128e6ac59b214ee0613e37dda29f2537f502789bd4801 kfilemetadata-5.54.0.tar.xz" +sha512sums="bfa8287e5c8df363908a441419d377d33ea2cd93a4fc69fc47c69da80ad0e3a80e60f26b4856c3d3e04128e6ac59b214ee0613e37dda29f2537f502789bd4801 kfilemetadata-5.54.0.tar.xz +f6d8b9fe9353fdf380d073b8a7dfa4dd8c822a64c1a978dbe8ce13d0f8327d3af5d314be41f9cecc32afb19896711452289b78e09b6fffb010d8c89843ebc4e0 add-formatting-fn.patch" diff --git a/user/kfilemetadata/add-formatting-fn.patch b/user/kfilemetadata/add-formatting-fn.patch new file mode 100644 index 000000000..5c3a1db91 --- /dev/null +++ b/user/kfilemetadata/add-formatting-fn.patch @@ -0,0 +1,479 @@ +From 4bedfd6609c6efe5dc327d305feac8985d4658e3 Mon Sep 17 00:00:00 2001 +From: Alexander Stippich <a.stippich@gmx.net> +Date: Sat, 9 Feb 2019 17:41:46 +0100 +Subject: Add string formatting function to property info + +Summary: +Adds the ability to format the metadata value +for displaying purposes individually for each +property. Currently, users of KFileMetaData +must implement their own custom formatting +functions. +All custom formatting functions from +Baloo-Widgets and Dolphin are copied into +KFileMetaData. This can be extended later. + +This adds a dependency on KCoreAddons to +KFileMetaData. + +FEATURE: 398581 + +Test Plan: tests pass + +Reviewers: broulik, bruns, mgallien, #frameworks + +Reviewed By: bruns + +Subscribers: ngraham, kde-frameworks-devel, #baloo + +Tags: #frameworks, #baloo + +Differential Revision: https://phabricator.kde.org/D17245 +--- + CMakeLists.txt | 5 +++ + autotests/propertyinfotest.cpp | 29 ++++++++++++++ + autotests/propertyinfotest.h | 1 + + src/CMakeLists.txt | 2 + + src/formatstrings.cpp | 86 ++++++++++++++++++++++++++++++++++++++++++ + src/formatstrings_p.h | 50 ++++++++++++++++++++++++ + src/propertyinfo.cpp | 27 +++++++++++++ + src/propertyinfo.h | 7 ++++ + 8 files changed, 207 insertions(+) + create mode 100644 src/formatstrings.cpp + create mode 100644 src/formatstrings_p.h + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index fa481a9..7ef0a40 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -40,6 +40,11 @@ set_package_properties(KF5Archive PROPERTIES DESCRIPTION "KDE Frameworks 5: Arch + URL "https://download.kde.org/stable/frameworks/" TYPE OPTIONAL + PURPOSE "Archive is needed to build ODF and OOXML 2007 extractors") + ++find_package(KF5 ${KF5_DEP_VERSION} COMPONENTS CoreAddons) ++set_package_properties(KF5CoreAddons PROPERTIES DESCRIPTION "KDE Frameworks 5: Core Addons Framework" ++ URL "https://download.kde.org/stable/frameworks/" TYPE REQUIRED ++ PURPOSE "Needed for the formatting of properties for display purposes") ++ + find_package(KF5 ${KF5_DEP_VERSION} REQUIRED COMPONENTS I18n) + + find_package(Poppler 0.12.1 COMPONENTS Qt5) +diff --git a/autotests/propertyinfotest.cpp b/autotests/propertyinfotest.cpp +index ae8b1b8..e203dcd 100644 +--- a/autotests/propertyinfotest.cpp ++++ b/autotests/propertyinfotest.cpp +@@ -45,4 +45,33 @@ void PropertyInfoTest::testNameIdMapping() + } + } + ++void PropertyInfoTest::testFormatAsDisplayString() ++{ ++ auto emptyProperty = PropertyInfo::fromName(QStringLiteral("no valid property name")); ++ QCOMPARE(emptyProperty.formatAsDisplayString(QVariant("empty")), QStringLiteral("empty")); ++ ++ PropertyInfo year(Property::DiscNumber); ++ QCOMPARE(year.formatAsDisplayString(QVariant(2018)), QStringLiteral("2018")); ++ ++ QStringList artistList = {"Artist1", "Artist2"}; ++ PropertyInfo artist(Property::Artist); ++ QCOMPARE(artist.formatAsDisplayString(QVariant(artistList)), QStringLiteral("Artist1, Artist2")); ++ ++ QStringList authorList = {"Author1"}; ++ PropertyInfo author(Property::Author); ++ QCOMPARE(artist.formatAsDisplayString(QVariant(authorList)), QStringLiteral("Author1")); ++ ++ PropertyInfo duration(Property::Duration); ++ QCOMPARE(duration.formatAsDisplayString(QVariant(1800)), QStringLiteral("0:30:00")); ++ ++ PropertyInfo sampleRate(Property::SampleRate); ++ QCOMPARE(sampleRate.formatAsDisplayString(QVariant(44100)), QString(QLocale().toString(44.1) + QStringLiteral(" kHz"))); ++ ++ PropertyInfo bitRate(Property::BitRate); ++ QCOMPARE(bitRate.formatAsDisplayString(QVariant(128000)), QStringLiteral("128 kB/s")); ++ ++ PropertyInfo orientation(Property::ImageOrientation); ++ QCOMPARE(orientation.formatAsDisplayString(QVariant(5)), QStringLiteral("Transposed")); ++} ++ + QTEST_GUILESS_MAIN(PropertyInfoTest) +diff --git a/autotests/propertyinfotest.h b/autotests/propertyinfotest.h +index 677ade1..15e6a10 100644 +--- a/autotests/propertyinfotest.h ++++ b/autotests/propertyinfotest.h +@@ -30,6 +30,7 @@ class PropertyInfoTest : public QObject + Q_OBJECT + private Q_SLOTS: + void testNameIdMapping(); ++ void testFormatAsDisplayString(); + }; + + } +diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt +index 52fa8e5..c3cbe8c 100644 +--- a/src/CMakeLists.txt ++++ b/src/CMakeLists.txt +@@ -13,6 +13,7 @@ set(KF5FileMetaData_SRCS + writerplugin.cpp + writercollection.cpp + externalwriter.cpp ++ formatstrings.cpp + ) + ecm_qt_declare_logging_category(KF5FileMetaData_SRCS HEADER kfilemetadata_debug.h IDENTIFIER KFILEMETADATA_LOG CATEGORY_NAME kf5.kfilemetadata) + +@@ -34,6 +35,7 @@ target_link_libraries(KF5FileMetaData + Qt5::Core + PRIVATE + KF5::I18n ++ KF5::CoreAddons + ) + + if(TAGLIB_FOUND) +diff --git a/src/formatstrings.cpp b/src/formatstrings.cpp +new file mode 100644 +index 0000000..b0bfdf8 +--- /dev/null ++++ b/src/formatstrings.cpp +@@ -0,0 +1,86 @@ ++/* ++ * Copyright (C) 2018 Alexander Stippich <a.stippich@gmx.net> ++ * ++ * This library is free software; you can redistribute it and/or ++ * modify it under the terms of the GNU Lesser General Public ++ * License as published by the Free Software Foundation; either ++ * version 2.1 of the License, or (at your option) any later version. ++ * ++ * This library is distributed in the hope that it will be useful, ++ * but WITHOUT ANY WARRANTY; without even the implied warranty of ++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ * Lesser General Public License for more details. ++ * ++ * You should have received a copy of the GNU Lesser General Public ++ * License along with this library; if not, write to the Free Software ++ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA ++ * ++ */ ++ ++#include "formatstrings_p.h" ++ ++#include <QDateTime> ++#include <KLocalizedString> ++ ++using namespace KFileMetaData; ++ ++QString FormatStrings::toStringFunction(const QVariant& value) ++{ ++ return value.toString(); ++} ++ ++QString FormatStrings::joinStringListFunction(const QVariant& value) ++{ ++ return value.toStringList().join(i18nc("Separation between multiple entries in a list", ", ")); ++} ++ ++QString FormatStrings::formatDate(const QVariant& value) ++{ ++ KFormat form; ++ QDateTime dt; ++ if (value.type() == QVariant::DateTime) { ++ dt = value.toDateTime(); ++ } else { ++ dt = QDateTime::fromString(value.toString(), Qt::ISODate); ++ } ++ if (dt.isValid()) { ++ return form.formatRelativeDateTime(dt, QLocale::LongFormat); ++ } ++ return QString(); ++} ++ ++QString FormatStrings::formatDuration(const QVariant& value) ++{ ++ KFormat form; ++ return form.formatDuration(value.toInt() * 1000); ++} ++ ++QString FormatStrings::formatBitRate(const QVariant& value) ++{ ++ KFormat form; ++ return i18nc("@label bitrate (per second)", "%1/s", form.formatByteSize(value.toInt(), 0, KFormat::MetricBinaryDialect)); ++} ++ ++QString FormatStrings::formatSampleRate(const QVariant& value) ++{ ++ return i18nc("@label samplerate in kilohertz", "%1 kHz", QLocale().toString(value.toDouble() / 1000)); ++} ++ ++QString FormatStrings::formatOrientationValue(const QVariant& value) ++{ ++ QString string; ++ switch (value.toInt()) { ++ case 1: string = i18nc("Description of image orientation", "Unchanged"); break; ++ case 2: string = i18nc("Description of image orientation", "Horizontally flipped"); break; ++ case 3: string = i18nc("Description of image orientation", "180° rotated"); break; ++ case 4: string = i18nc("Description of image orientation", "Vertically flipped"); break; ++ case 5: string = i18nc("Description of image orientation", "Transposed"); break; ++ case 6: string = i18nc("Description of image orientation, counter clock-wise rotated", "90° rotated CCW "); break; ++ case 7: string = i18nc("Description of image orientation", "Transversed"); break; ++ case 8: string = i18nc("Description of image orientation, counter clock-wise rotated", "270° rotated CCW"); break; ++ default: ++ break; ++ } ++ return string; ++} ++ +diff --git a/src/formatstrings_p.h b/src/formatstrings_p.h +new file mode 100644 +index 0000000..125c31e +--- /dev/null ++++ b/src/formatstrings_p.h +@@ -0,0 +1,50 @@ ++/* ++ * Copyright (C) 2018 Alexander Stippich <a.stippich@gmx.net> ++ * ++ * This library is free software; you can redistribute it and/or ++ * modify it under the terms of the GNU Lesser General Public ++ * License as published by the Free Software Foundation; either ++ * version 2.1 of the License, or (at your option) any later version. ++ * ++ * This library is distributed in the hope that it will be useful, ++ * but WITHOUT ANY WARRANTY; without even the implied warranty of ++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ * Lesser General Public License for more details. ++ * ++ * You should have received a copy of the GNU Lesser General Public ++ * License along with this library; if not, write to the Free Software ++ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA ++ * ++ */ ++ ++#ifndef KFILEMETADATA_FORMATSTRINGS_P_H ++#define KFILEMETADATA_FORMATSTRINGS_P_H ++ ++#include <QString> ++#include <QVariant> ++#include <KFormat> ++ ++namespace KFileMetaData { ++ ++class Q_DECL_HIDDEN FormatStrings ++{ ++public: ++ static QString toStringFunction(const QVariant& value); ++ ++ static QString joinStringListFunction(const QVariant& value); ++ ++ static QString formatDate(const QVariant& value); ++ ++ static QString formatDuration(const QVariant& value); ++ ++ static QString formatBitRate(const QVariant& value); ++ ++ static QString formatSampleRate(const QVariant& value); ++ ++ static QString formatOrientationValue(const QVariant& value); ++ ++}; ++ ++} ++ ++#endif +diff --git a/src/propertyinfo.cpp b/src/propertyinfo.cpp +index 5439a58..56fc596 100644 +--- a/src/propertyinfo.cpp ++++ b/src/propertyinfo.cpp +@@ -24,6 +24,8 @@ + + #include <KLocalizedString> + ++#include "formatstrings_p.h" ++ + using namespace KFileMetaData; + + class Q_DECL_HIDDEN PropertyInfo::Private +@@ -34,6 +36,7 @@ public: + QString displayName; + QVariant::Type valueType; + bool shouldBeIndexed; ++ QString (*formatAsString)(const QVariant& value) = nullptr; + }; + + PropertyInfo::PropertyInfo(Property::Property property) +@@ -41,6 +44,7 @@ PropertyInfo::PropertyInfo(Property::Property property) + { + d->prop = property; + d->shouldBeIndexed = true; ++ d->formatAsString = &FormatStrings::toStringFunction; + + switch (property) { + case Property::Album: +@@ -53,12 +57,14 @@ PropertyInfo::PropertyInfo(Property::Property property) + d->name = QStringLiteral("albumArtist"); + d->displayName = i18nc("@label", "Album Artist"); + d->valueType = QVariant::StringList; ++ d->formatAsString = &FormatStrings::joinStringListFunction; + break; + + case Property::Artist: + d->name = QStringLiteral("artist"); + d->displayName = i18nc("@label", "Artist"); + d->valueType = QVariant::StringList; ++ d->formatAsString = &FormatStrings::joinStringListFunction; + break; + + case Property::AspectRatio: +@@ -71,12 +77,14 @@ PropertyInfo::PropertyInfo(Property::Property property) + d->name = QStringLiteral("author"); + d->displayName = i18nc("@label", "Author"); + d->valueType = QVariant::StringList; ++ d->formatAsString = &FormatStrings::joinStringListFunction; + break; + + case Property::BitRate: + d->name = QStringLiteral("bitRate"); + d->displayName = i18nc("@label", "Bitrate"); + d->valueType = QVariant::Int; ++ d->formatAsString = &FormatStrings::formatBitRate; + break; + + case Property::Channels: +@@ -117,12 +125,14 @@ PropertyInfo::PropertyInfo(Property::Property property) + d->name = QStringLiteral("creationDate"); + d->displayName = i18nc("@label", "Creation Date"); + d->valueType = QVariant::String; ++ d->formatAsString = &FormatStrings::formatDate; + break; + + case Property::Duration: + d->name = QStringLiteral("duration"); + d->displayName = i18nc("@label", "Duration"); + d->valueType = QVariant::Int; ++ d->formatAsString = &FormatStrings::formatDuration; + break; + + case Property::Empty: +@@ -147,6 +157,7 @@ PropertyInfo::PropertyInfo(Property::Property property) + d->name = QStringLiteral("genre"); + d->displayName = i18nc("@label music genre", "Genre"); + d->valueType = QVariant::StringList; ++ d->formatAsString = &FormatStrings::joinStringListFunction; + d->shouldBeIndexed = false; + break; + +@@ -160,6 +171,7 @@ PropertyInfo::PropertyInfo(Property::Property property) + d->name = QStringLiteral("imageDateTime"); + d->displayName = i18nc("@label EXIF", "Image Date Time"); + d->valueType = QVariant::DateTime; ++ d->formatAsString = &FormatStrings::formatDate; + break; + + case Property::ImageMake: +@@ -180,12 +192,14 @@ PropertyInfo::PropertyInfo(Property::Property property) + d->name = QStringLiteral("imageOrientation"); + d->displayName = i18nc("@label EXIF", "Image Orientation"); + d->valueType = QVariant::Int; ++ d->formatAsString = &FormatStrings::formatOrientationValue; + break; + + case Property::Keywords: + d->name = QStringLiteral("keywords"); + d->displayName = i18nc("@label", "Keywords"); + d->valueType = QVariant::StringList; ++ d->formatAsString = &FormatStrings::joinStringListFunction; + d->shouldBeIndexed = false; + break; + +@@ -206,6 +220,7 @@ PropertyInfo::PropertyInfo(Property::Property property) + d->name = QStringLiteral("lyricist"); + d->displayName = i18nc("@label", "Lyricist"); + d->valueType = QVariant::StringList; ++ d->formatAsString = &FormatStrings::joinStringListFunction; + d->shouldBeIndexed = false; + break; + +@@ -225,6 +240,7 @@ PropertyInfo::PropertyInfo(Property::Property property) + d->name = QStringLiteral("photoDateTimeOriginal"); + d->displayName = i18nc("@label EXIF", "Photo Original Date Time"); + d->valueType = QVariant::DateTime; ++ d->formatAsString = &FormatStrings::formatDate; + break; + + case Property::PhotoExposureBiasValue: +@@ -345,6 +361,7 @@ PropertyInfo::PropertyInfo(Property::Property property) + d->name = QStringLiteral("sampleRate"); + d->displayName = i18nc("@label", "Sample Rate"); + d->valueType = QVariant::Int; ++ d->formatAsString = &FormatStrings::formatSampleRate; + break; + + case Property::Subject: +@@ -382,6 +399,7 @@ PropertyInfo::PropertyInfo(Property::Property property) + d->name = QStringLiteral("performer"); + d->displayName = i18nc("@label", "Performer"); + d->valueType = QVariant::StringList; ++ d->formatAsString = &FormatStrings::joinStringListFunction; + break; + + case Property::Ensemble: +@@ -394,12 +412,14 @@ PropertyInfo::PropertyInfo(Property::Property property) + d->name = QStringLiteral("arranger"); + d->displayName = i18nc("@label", "Arranger"); + d->valueType = QVariant::StringList; ++ d->formatAsString = &FormatStrings::joinStringListFunction; + break; + + case Property::Conductor: + d->name = QStringLiteral("conductor"); + d->displayName = i18nc("@label", "Conductor"); + d->valueType = QVariant::StringList; ++ d->formatAsString = &FormatStrings::joinStringListFunction; + break; + + case Property::Compilation: +@@ -503,6 +523,7 @@ PropertyInfo::PropertyInfo(Property::Property property) + d->displayName = i18nc("@label translations last update", "Last Update"); + d->valueType = QVariant::String; + d->shouldBeIndexed = false; ++ d->formatAsString = &FormatStrings::formatDate; + break; + + case Property::TranslationTemplateDate: +@@ -510,6 +531,7 @@ PropertyInfo::PropertyInfo(Property::Property property) + d->displayName = i18nc("@label date of template creation8", "Template Creation"); + d->valueType = QVariant::String; + d->shouldBeIndexed = false; ++ d->formatAsString = &FormatStrings::formatDate; + break; + + case Property::OriginUrl: +@@ -600,6 +622,11 @@ bool PropertyInfo::shouldBeIndexed() const + return d->shouldBeIndexed; + } + ++QString PropertyInfo::formatAsDisplayString(const QVariant &value) const ++{ ++ return (d->formatAsString)(value); ++} ++ + PropertyInfo PropertyInfo::fromName(const QString& name) + { + static QHash<QString, Property::Property> propertyHash = { +diff --git a/src/propertyinfo.h b/src/propertyinfo.h +index c1767c4..3c426e8 100644 +--- a/src/propertyinfo.h ++++ b/src/propertyinfo.h +@@ -85,6 +85,13 @@ public: + */ + static PropertyInfo fromName(const QString& name); + ++ /** ++ * Returns the value of the property as a QString with added formatting, ++ * added units if needed, and translated enums. ++ * @since 5.56 ++ */ ++ QString formatAsDisplayString(const QVariant& value) const; ++ + private: + class Private; + Private* d; +-- +cgit v1.1 + diff --git a/user/kfind/APKBUILD b/user/kfind/APKBUILD index 3666f7291..c1e0e971d 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.12.3 +pkgver=19.04.1 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="ecd2b1819800461becaf241b624d7c387fc81dd4069ebb82a044b188e8753a3b1054adfb254ade1fd327186c8ff8bf76d35b0c83caaf51ff7d36a55c98a23f2f kfind-18.12.3.tar.xz" +sha512sums="2705fa4e64e547b5482399b5433ebc619036c3cd77dc86a78365580e89cc2a77334d81674d9790d92df3446724d680cedd03bf1e303525c4a3c51b46dc897496 kfind-19.04.1.tar.xz" diff --git a/user/kfloppy/APKBUILD b/user/kfloppy/APKBUILD index 734332657..3ab0ce591 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.12.3 +pkgver=19.04.1 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="8abe9a4fcdd9e01ea60a8145126fa30ce3d4624904c57575596ea0620499b47edcab6fa5facafc6250312383fca7e9b254e65d5fa12587c9926c71eb54070e3b kfloppy-18.12.3.tar.xz" +sha512sums="74dc83786c4e6190fa80b4d4f87568ed5bbcbcb5731bf13fe2cc91605fabcfaf24cf1061006b7d6efaa2a621332e69071426ad0486c6cc8bfa9543c0c84c2da5 kfloppy-19.04.1.tar.xz" diff --git a/user/kfourinline/APKBUILD b/user/kfourinline/APKBUILD index ceb7e7890..5edac7fff 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.12.3 +pkgver=19.04.1 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="69c75f82432862af0600d26072b58436de1073f97bae385d24f4c806e46f06e9a18a0549084050a4698fbcd7358e4789555f7b52e89875f2fa29db42b3e570ff kfourinline-18.12.3.tar.xz" +sha512sums="83d8893cea2a8eeb9202e04b14dfb0c83c75738346c86c3d01381740b8c59ee4063ebc08b9250cb2c4c486ca9d2bb9a71c29f671dffbb91ac5db21b2fa429329 kfourinline-19.04.1.tar.xz" diff --git a/user/kgeography/APKBUILD b/user/kgeography/APKBUILD index 9ab97cae9..b06b2bb3c 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.12.3 +pkgver=19.04.1 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="34d727d2b28984c0a39be5b9e5320c91279f5020d830703a91073265103f9273375b75b4bdc6c1c5b068f0712b049c35ef0a24f945840f8bc770f27fc5419d44 kgeography-18.12.3.tar.xz" +sha512sums="c20a195bfbc4b1942ae8ee1c4491601000b319dd3380d44f4dac09fb2e4e5e90f465b2cd2fc78fcaaea94f3997be5bfb7d7a8f1490b746a405d9e1db7cc290fe kgeography-19.04.1.tar.xz" diff --git a/user/kget/APKBUILD b/user/kget/APKBUILD index 9ba3eff2a..ac7b2690f 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.12.3 +pkgver=19.04.1 pkgrel=0 pkgdesc="Versatile download manager" url="https://www.kde.org/applications/internet/kget/" @@ -43,4 +43,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="5e3680d3ac5e8e23ac8132133c66a4826035e89ddc74fb2b7cd6a0670f5682e750f839ac91e86fe4a78cd5c45a95b38793532e247b717b5c1a63200ed5405335 kget-18.12.3.tar.xz" +sha512sums="3d68276adc130ee2d67d23ebb99669824f2ed6f2bf415f056a057dadcd1a010c2d74b096fb25894ffdef07bca6051b5c17988c57e0f337d3460d952d96d86071 kget-19.04.1.tar.xz" diff --git a/user/kgoldrunner/APKBUILD b/user/kgoldrunner/APKBUILD index 8eb4d412b..89746638f 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.12.3 +pkgver=19.04.1 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="eb3b0a384557da0a7aa8ee264c00c55f62353d0377e1ef1137ca6bee7d0959dbe51f5fcc5d4946a9e8626020076f06794f1de30d4ac0aaaa0e57d3e3e8a1dc80 kgoldrunner-18.12.3.tar.xz" +sha512sums="fdfdec27c9325811ae459f6de9125a7830c9a4bea7aacda655908cb01dbdd444df84f8ef2f8f2e394b55b356950c3a8a343c51f0340fc112683d39ce6e1fe515 kgoldrunner-19.04.1.tar.xz" diff --git a/user/kgpg/APKBUILD b/user/kgpg/APKBUILD index 2f8a53c0b..92b4e6e37 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.12.3 +pkgver=19.04.1 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="f510dd4e4b717a00c8128767cea99b2725e10d8493cbb8a2a70ee0acbf53424edfb5d95052dff833988b3217b525d721c681a236ba7b7c87259f453a7956e881 kgpg-18.12.3.tar.xz" +sha512sums="ff0d3dcb32d6b81fedfa2ecaef6c9df738ba8b584552649f2b5fe1fe88ad3ab04be173b7dbaa388c5997a53e6665c9622f9c91aec298f71b207538a9f43cb3ff kgpg-19.04.1.tar.xz" diff --git a/user/khangman/APKBUILD b/user/khangman/APKBUILD index 73c9481d1..4c2563e5e 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.12.3 +pkgver=19.04.1 pkgrel=0 pkgdesc="Hangman word game" url="https://www.kde.org/applications/education/khangman/" @@ -41,4 +41,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="fc9008ff7e79e02b185c4180403a1741a62dabbb10b87b01f5b55d4ba04c7681e27a291dc6c8b83cd87066be624539f8e3097cfca755f74727ca5cd64ffb4bd5 khangman-18.12.3.tar.xz" +sha512sums="fd61cc6cd6249c1fb007ffd72d9305d5d4d5f5b4c4fa27b25550f67ee804289724e5edcb8fd6f40db347e1ac0f34c0f90ae9572c3e7d826dfa48228cd57de60e khangman-19.04.1.tar.xz" diff --git a/user/khelpcenter/APKBUILD b/user/khelpcenter/APKBUILD index efeca02f0..6815ae3fa 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.12.3 +pkgver=19.04.1 pkgrel=0 pkgdesc="Graphical documentation viewer" url="https://www.kde.org/applications/system/khelpcenter/" @@ -14,7 +14,9 @@ makedepends="cmake extra-cmake-modules qt5-qtbase-dev karchive-dev kconfig-dev xapian-core-dev libxml2-dev" subpackages="$pkgname-doc $pkgname-lang" install_if="plasma-desktop docs" -source="https://download.kde.org/stable/applications/$pkgver/src/khelpcenter-$pkgver.tar.xz" +source="https://download.kde.org/stable/applications/$pkgver/src/khelpcenter-$pkgver.tar.xz + es-doc-fix.patch + " build() { cd "$builddir" @@ -42,4 +44,5 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="728b335076dbaf63bf8ce8fbc55f5d4efe01663998b30ae40d252903c1090c29d5cfd58e9036242ec9b0206c34d7b397a0739e7ef9962d6dfb0ecaff9ea45df3 khelpcenter-18.12.3.tar.xz" +sha512sums="c42206554beff891c51c8dbe73baf722e1e571e1166916dad36c37573c09a5696c06b711748dd863782c43d507c2f6103d1aea122e5ef33fd59972c0d4e8503b khelpcenter-19.04.1.tar.xz +4d7e286b7130547d7f26e11a0e5a40d20530e08cf657ff24d31cbc7b110628f564e513e5922a5cffc82d0830731ab03b07820884542292b3c03c7519617a20a3 es-doc-fix.patch" diff --git a/user/khelpcenter/es-doc-fix.patch b/user/khelpcenter/es-doc-fix.patch new file mode 100644 index 000000000..c9f7ed11f --- /dev/null +++ b/user/khelpcenter/es-doc-fix.patch @@ -0,0 +1,31 @@ +--- khelpcenter-19.04.1/po/es/docs/khelpcenter/index.docbook.old 2019-05-07 00:10:08.000000000 +0000 ++++ khelpcenter-19.04.1/po/es/docs/khelpcenter/index.docbook 2019-05-13 06:10:14.989405563 +0000 +@@ -136,7 +136,7 @@ + >Instalación</title> + + <para +->&khelpcenter; forma parte de las &applications;. Se puede encontrar en el <ulink url="https://download.kde.org/" ++>&khelpcenter; forma parte de las applications. Se puede encontrar en el <ulink url="https://download.kde.org/" + >sitio de descarga</ulink + > del proyecto &kde; o en el paquete &khelpcenter; de su sistema operativo. </para> + +@@ -347,7 +347,7 @@ + ></term> + <listitem> + <para +->Los «Aspectos básicos» le presentan una introducción de las numerosas características de &plasma-workspaces; y de las &applications; y describe muchas tareas comunes que puede realizar en todas las &applications;. </para> ++>Los «Aspectos básicos» le presentan una introducción de las numerosas características de Plasma Workspaces y de las applications y describe muchas tareas comunes que puede realizar en todas las applications. </para> + </listitem> + </varlistentry> + +--- khelpcenter-19.04.1/po/es/docs/onlinehelp/index.docbook.old 2019-05-07 00:10:08.000000000 +0000 ++++ khelpcenter-19.04.1/po/es/docs/onlinehelp/index.docbook 2019-05-13 06:13:20.309243557 +0000 +@@ -114,7 +114,7 @@ + > </term> + <listitem> + <para +->Esta página contiene la documentación completa para los usuarios de KDE en unos 25 idiomas, tanto para la versión liberada como para la versión de desarrollo de &kde-frameworks;, &plasma-workspaces; y &applications;.</para> ++>Esta página contiene la documentación completa para los usuarios de KDE en unos 25 idiomas, tanto para la versión liberada como para la versión de desarrollo de &kde-frameworks;, &plasma-workspaces; y applications.</para> + </listitem> + </varlistentry> + </variablelist> diff --git a/user/kig/APKBUILD b/user/kig/APKBUILD index eb5400644..47c614a49 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.12.3 +pkgver=19.04.1 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="fa540b7f57b4878dfe44e0d8a6ee5f84ec524ab79867e545c912a715e0e0c2d9b35d12575d751944b5049f12c28ed838460cabef37d73c3f56591f1028bb2479 kig-18.12.3.tar.xz" +sha512sums="13961e15098f4ef285fc00e53b9e48475bb24c5c04ce44447aaba2fffde177d8ef113f76bf23d1bb0e0ecc7fc433891c864492c2449eddc8da4375f3d10719ed kig-19.04.1.tar.xz" diff --git a/user/kigo/APKBUILD b/user/kigo/APKBUILD index 288499c0c..f15271b3c 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.12.3 +pkgver=19.04.1 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="d949b549589185fa0bd24b5d4bc245283e8fd6e823c51b0becb76d15d74c67dc35e8a46e99cfcce4dd69bc2baca20234488e64e4f7bc1e02aa95092e9907b3fa kigo-18.12.3.tar.xz" +sha512sums="a3f6eb361798f5d74ed939e4ca8426d89718bce93290b46d5c7d4d754829f1ff36a9771f610d9c4166613c35847599f8da1c32b30e0988ca4619659e75716d82 kigo-19.04.1.tar.xz" diff --git a/user/killbots/APKBUILD b/user/killbots/APKBUILD index 286dcb45f..8f94ec20c 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.12.3 +pkgver=19.04.1 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="6f9fe391776da188489f42cbc2d0563a36f1a1ec88791cbbf7f4364cc0e5eb3b0eb028ea69a7a7444829e467026c459801c4c02dccbcdb624c2a45e1d56b6e3c killbots-18.12.3.tar.xz" +sha512sums="307c0da4026f6c689959e5e603794401d389a21882656b438197c58c44849a2ba91617e23edc4a8ad76fca0905b0df9bc54649aae22abff50b14b5936184bb21 killbots-19.04.1.tar.xz" diff --git a/user/kio-extras/APKBUILD b/user/kio-extras/APKBUILD index 0cd186244..766c3d8ed 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.12.3 +pkgver=19.04.1 pkgrel=0 pkgdesc="KIO plugins for various data tasks" url="https://www.kde.org/" @@ -13,7 +13,7 @@ depends_dev="qt5-qtbase-dev qt5-qtsvg-dev karchive-dev kconfig-dev kio-dev kconfigwidgets-dev kcoreaddons-dev kdbusaddons-dev kdoctools-dev kiconthemes-dev ki18n-dev solid-dev kbookmarks-dev kguiaddons-dev kdnssd-dev kpty-dev kactivities-dev phonon-dev libtirpc-dev - taglib-dev libmtp-dev gperf khtml-dev" + taglib-dev libmtp-dev gperf khtml-dev syntax-highlighting-dev" makedepends="$depends_dev cmake extra-cmake-modules shared-mime-info" subpackages="$pkgname-dev $pkgname-doc $pkgname-lang" source="https://download.kde.org/stable/applications/$pkgver/src/kio-extras-$pkgver.tar.xz" @@ -44,4 +44,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="a13c349a27b7ffd665b9a3812d70228ab40ac48c50ded7774ed954ce30a6454d1a9c5a27769ddae8f333db0c87943eab18380da413274b69802d9569f6e48d66 kio-extras-18.12.3.tar.xz" +sha512sums="a95247aa3174e6f9d153282c19519e13e9209793010d9b48109206a8d7a4db80086518ccbf0b442fc37715c1b4d10888e4a812082b5de998b4390d62aab472c3 kio-extras-19.04.1.tar.xz" diff --git a/user/kiriki/APKBUILD b/user/kiriki/APKBUILD index af95bc989..fbd93527e 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.12.3 +pkgver=19.04.1 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="8b2257ce1c80d34dedf19747ac49f6c040b6512e0271488a173990fd3ff9858e7c29f86a0dc468a2bc244b3cff1e881da1465ba29682a4288d097f74ab1f6f29 kiriki-18.12.3.tar.xz" +sha512sums="f561539cdc87a28cba80b99ec40734556dadb872fa5862311a41ad6749691bfa5806842dddd71af47ba9f5050c32359a173408c0225d55d6e0f10b96f26d8741 kiriki-19.04.1.tar.xz" diff --git a/user/kiten/APKBUILD b/user/kiten/APKBUILD index 3e8ecabab..7a6973567 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.12.3 +pkgver=19.04.1 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="75effa8a23924cb5369fb63b09e974e2d0600b28d92757170d5ca452f5be3eedf874aa7ef7f3a60a953176ddf29beae0945ca31e0550be85b77c50eee748b4cc kiten-18.12.3.tar.xz" +sha512sums="3ce4f1d40ac7eaaa93364d8a809e7aa117c0d8be2507005e50f0fefdcbc5f57c10769a619508b1f3fbcee9710623fe7576307dff67c8d53ad67d0855e74e6e5e kiten-19.04.1.tar.xz" diff --git a/user/kjumpingcube/APKBUILD b/user/kjumpingcube/APKBUILD index e1dcf4d3a..70c54ee87 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.12.3 +pkgver=19.04.1 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="8606ca6020dcd8f6d49ed6120899c0e705505575d26fd9e9c89b4d5e8306a597e51ef2761c1176859e0c22545b1abe2cf470e1aab4d19170ec2c7657c8019cb2 kjumpingcube-18.12.3.tar.xz" +sha512sums="22168b89cfc2a099365df0ab791e5c39a4cfff09ef3a1a074a480d3e60f25139a76d99d3a684380f637fbe59401a8ff476204a72d221c283cd593d47719dc0f0 kjumpingcube-19.04.1.tar.xz" diff --git a/user/kleopatra/APKBUILD b/user/kleopatra/APKBUILD index 4dcabff8f..60ff7de3e 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.12.3 +pkgver=19.04.1 pkgrel=0 pkgdesc="Certificate manager and cryptography GUI" url="https://www.kde.org/applications/utilities/kleopatra/" @@ -12,7 +12,9 @@ depends="" makedepends="cmake extra-cmake-modules qt5-qtbase-dev libkleo-dev kcmutils-dev libassuan-dev kitemmodels-dev kmime-dev knotifications-dev" subpackages="$pkgname-doc $pkgname-lang" -source="https://download.kde.org/stable/applications/$pkgver/src/kleopatra-$pkgver.tar.xz" +source="https://download.kde.org/stable/applications/$pkgver/src/kleopatra-$pkgver.tar.xz + qt5.9.patch + " build() { cd "$builddir" @@ -40,4 +42,5 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="707fcf4ed9bc2c4d7d45f5911ce1760b49b567865d5f5d315a0af12cb0856e39230c348efbcc449a1e4403f7fb3a0f0ebb654573e0d2bb511d8ff8909f932e6e kleopatra-18.12.3.tar.xz" +sha512sums="8f8c289ede3e13397f4e5ee06d96d1e5a99737c5e30089297fb8294ee73c0934937bc78d24c89681f21ea6e7cf166cb8a8d314e0631d2f2d2188ce247abd28ea kleopatra-19.04.1.tar.xz +52cdace52d00932c8372f3abf03d24ba1d4d5650327aaf41871714d13cd92c9297a98e35901c80ca3495f3014450a7513948ccb83be032c1c8e81042e67431f2 qt5.9.patch" diff --git a/user/kleopatra/qt5.9.patch b/user/kleopatra/qt5.9.patch new file mode 100644 index 000000000..22d54f3b3 --- /dev/null +++ b/user/kleopatra/qt5.9.patch @@ -0,0 +1,76 @@ +From e3a467d6221d15015ccd5166d6dc53335482c5c8 Mon Sep 17 00:00:00 2001 +Date: Mon, 17 Dec 2018 08:12:46 +0100 +Subject: Revert "Remove QT_CHECK" + +--- + src/commands/certifycertificatecommand.cpp | 4 ++++ + src/commands/importcertificatescommand.cpp | 4 ++++ + src/dialogs/certificateselectiondialog.cpp | 4 ++++ + 3 files changed, 12 additions(+) + +diff --git a/src/commands/certifycertificatecommand.cpp b/src/commands/certifycertificatecommand.cpp +index 524b5a6..5577f2f 100644 +--- a/src/commands/certifycertificatecommand.cpp ++++ b/src/commands/certifycertificatecommand.cpp +@@ -215,7 +215,11 @@ void CertifyCertificateCommand::doStart() + cmd->setParentWidget(d->parentWidgetOrView()); + cmd->setProtocol(GpgME::OpenPGP); + loop.connect(cmd, SIGNAL(finished()), SLOT(quit())); ++#if QT_VERSION >= QT_VERSION_CHECK(5, 10, 0) + QMetaObject::invokeMethod(cmd, &Commands::NewCertificateCommand::start, Qt::QueuedConnection); ++#else ++ QMetaObject::invokeMethod(cmd, "start", Qt::QueuedConnection); ++#endif + loop.exec(); + } else { + Q_EMIT(canceled()); +diff --git a/src/commands/importcertificatescommand.cpp b/src/commands/importcertificatescommand.cpp +index 49294b6..89542cc 100644 +--- a/src/commands/importcertificatescommand.cpp ++++ b/src/commands/importcertificatescommand.cpp +@@ -392,7 +392,11 @@ bool ImportCertificatesCommand::Private::showPleaseCertify(const GpgME::Import & + auto cmd = new Commands::CertifyCertificateCommand(key); + cmd->setParentWidget(parentWidgetOrView()); + loop.connect(cmd, SIGNAL(finished()), SLOT(quit())); ++#if QT_VERSION >= QT_VERSION_CHECK(5, 10, 0) + QMetaObject::invokeMethod(cmd, &Commands::CertifyCertificateCommand::start, Qt::QueuedConnection); ++#else ++ QMetaObject::invokeMethod(cmd, "start", Qt::QueuedConnection); ++#endif + loop.exec(); + } + return true; +diff --git a/src/dialogs/certificateselectiondialog.cpp b/src/dialogs/certificateselectiondialog.cpp +index 003872e..020310d 100644 +--- a/src/dialogs/certificateselectiondialog.cpp ++++ b/src/dialogs/certificateselectiondialog.cpp +@@ -384,7 +384,11 @@ void CertificateSelectionDialog::Private::slotDoubleClicked(const QModelIndex &i + QItemSelectionModel *const sm = view->selectionModel(); + Q_ASSERT(sm); + sm->select(idx, QItemSelectionModel::ClearAndSelect | QItemSelectionModel::Rows); ++#if QT_VERSION >= QT_VERSION_CHECK(5, 10, 0) + QMetaObject::invokeMethod(q, [this]() {q->accept();}, Qt::QueuedConnection); ++#else ++ QMetaObject::invokeMethod(q, "accept", Qt::QueuedConnection); ++#endif + } + + void CertificateSelectionDialog::accept() +-- +cgit v1.1 + +--- kleopatra-19.04.0/CMakeLists.txt.old 2019-04-12 00:14:10.000000000 +0000 ++++ kleopatra-19.04.0/CMakeLists.txt 2019-04-19 06:34:58.511578506 +0000 +@@ -11,10 +11,10 @@ + option(DISABLE_KWATCHGNUPG "Don't build the kwatchgnupg tool [default=OFF]" OFF) + + # Standalone build. Find / include everything necessary. +-set(KF5_MIN_VERSION "5.56.0") ++set(KF5_MIN_VERSION "5.54.0") + set(KMIME_VERSION "5.11.1") + set(LIBKLEO_VERSION "5.11.1") +-set(QT_REQUIRED_VERSION "5.10.0") ++set(QT_REQUIRED_VERSION "5.9.0") + set(GPGME_REQUIRED_VERSION "1.8.0") + + find_package(ECM ${KF5_MIN_VERSION} CONFIG REQUIRED) diff --git a/user/klettres/APKBUILD b/user/klettres/APKBUILD index a41eac3a3..a8baf4512 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.12.3 +pkgver=19.04.1 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="878308007ebd889a9924094bdf3e5d24ce6a04405f9311e8b197faa44e93a57730911ee084ee26ba1a5ac2c515b4227e614057410e9d9c0927fca63a805db09a klettres-18.12.3.tar.xz" +sha512sums="0a5f22b11586e171fddca45f6bcea5091882c9fdb0ba60dced530a0227682bbc149b852a04d7e6152b5cf27e00444fed73fb5ebf9f6b20f4e2c651924fcf0852 klettres-19.04.1.tar.xz" diff --git a/user/klickety/APKBUILD b/user/klickety/APKBUILD index 526f95d75..1c3ad8c2b 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.12.3 +pkgver=19.04.1 pkgrel=0 pkgdesc="Fun, simple colour matching game" url="https://www.kde.org/" @@ -40,4 +40,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="7238c2b7ea0e605bbe9675593f95cdf6ac2b427d9d7aa3999fa05ad3f4604968dbfacad016b0770cf82e1dabb1e572cc3e6d16a4b34bb8f1e400371a6fe0a0e5 klickety-18.12.3.tar.xz" +sha512sums="90ed290bfd575260d0bcabe0767458bd93bb5d998244d5c388de4d0402e37e54d68d93b98e7bf987a883113b6e147cc8b42789d4b77a4e1929ddd82f9217ddcc klickety-19.04.1.tar.xz" diff --git a/user/klines/APKBUILD b/user/klines/APKBUILD index 4b9af8538..7934486a9 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.12.3 +pkgver=19.04.1 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="3dacd2ede7f5303ec49b2c226b1e3521176cd37af539a1796939f43faf8e3dbc00f2d5278bf46c0e4e1cd8d4d1fb23b15f90a164cc4c55547bba8255b8506990 klines-18.12.3.tar.xz" +sha512sums="05be2e5349969e833204c8603b92ce97f963c20b241587fda2b897a887408fec0b67cefc7b3a18b4a49adcd6b960ae38b6ae2c6a74c2139da6bfecc8d8008a62 klines-19.04.1.tar.xz" diff --git a/user/kmag/APKBUILD b/user/kmag/APKBUILD index 5f103bd45..60b38f7c9 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.12.3 +pkgver=19.04.1 pkgrel=0 pkgdesc="Screen magnification utility" url="https://www.kde.org/applications/utilities/kmag/" @@ -39,4 +39,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="7339513c36e20e8d7182c916428564bdd43f140430df0f053d0b6891c217608b6cf1f9adc15e0e11f689b2f26d4238b9f66d2b1c64cc2d0b0620f3a34509205e kmag-18.12.3.tar.xz" +sha512sums="85963a1546764c76b10851c3f329475bc6246e04698193109cb99667ca51534c2990cd609432b5b333af87ee0f6812c25c930b526bf6f4b3788fa88f8c48d21e kmag-19.04.1.tar.xz" diff --git a/user/kmahjongg/APKBUILD b/user/kmahjongg/APKBUILD index 0a5f8cf41..82ee75dbd 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.12.3 +pkgver=19.04.1 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="ee096ee9a890ecef53dde06d9a618fd70e0cafd59b0b6199d8bb0f0716733187c5f8a2bf9cbe43d2157ed502a3efdb06698a6fe3e6485199af8d71c9b8eb8252 kmahjongg-18.12.3.tar.xz" +sha512sums="21efa9ab4ea1dd5480eade7bc9712e7c91abe065fc5ba5912f98e642a9e82f6581ce3ce95b0d6cf1dbc6d488adff2113f6188a65288ec5c13043b4616e1349a6 kmahjongg-19.04.1.tar.xz" diff --git a/user/kmime/APKBUILD b/user/kmime/APKBUILD index d28c6b378..529ed5a7e 100644 --- a/user/kmime/APKBUILD +++ b/user/kmime/APKBUILD @@ -1,19 +1,20 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kmime -pkgver=18.12.3 +pkgver=19.04.1 pkgrel=0 pkgdesc="KDE support library for MIME" url="https://www.kde.org/" arch="all" -options="!check" # wtf license="LGPL-2.1+" depends="" depends_dev="qt5-qtbase-dev" makedepends="$depends_dev cmake extra-cmake-modules python3 kcodecs-dev ki18n-dev" subpackages="$pkgname-dev $pkgname-lang" -source="https://download.kde.org/stable/applications/$pkgver/src/kmime-$pkgver.tar.xz" +source="https://download.kde.org/stable/applications/$pkgver/src/kmime-$pkgver.tar.xz + egregious-versions.patch + " build() { cd "$builddir" @@ -34,7 +35,7 @@ build() { check() { cd "$builddir" # https://bugs.kde.org/show_bug.cgi?id=385479 - CTEST_OUTPUT_ON_FAILURE=TRUE ctest -E dateformattertest + CTEST_OUTPUT_ON_FAILURE=TRUE ctest -E '(headertest|messagetest|dateformattertest)' } package() { @@ -42,4 +43,5 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="ed02fa15ef1d437f6c13a8bed4092c62fbbd55595156bd9766a8b980665c18a2a7ab2c841cc7657710480f2e98d275e8d377ccbba32081ef14e2a2aa5db5fb2d kmime-18.12.3.tar.xz" +sha512sums="c70e8f176a879269e16095246a3dea52a2d437a6ab1a68e1785b96bd4c175095b41de8557900000839090a4881d8e51bf431c8aae35fb5008f7c76cec37254a3 kmime-19.04.1.tar.xz +b5f04ab4f7ed60bde1eeb50141c5b51a4f285d7b125d834559419d56039c1d540a8d44f508801ae9ac2c6d91c3841d4e64c3856e2c5bfa33eb64175dc9b5c608 egregious-versions.patch" diff --git a/user/kmime/egregious-versions.patch b/user/kmime/egregious-versions.patch new file mode 100644 index 000000000..af0411338 --- /dev/null +++ b/user/kmime/egregious-versions.patch @@ -0,0 +1,24 @@ +There is absolutely NO REQUIREMENT on these newer versions by KMime. + +This is only done to keep in sync with the rest of KDE PIM. + +--- kmime-19.04.0/CMakeLists.txt.old 2019-04-12 00:14:19.000000000 +0000 ++++ kmime-19.04.0/CMakeLists.txt 2019-04-19 06:18:49.665558623 +0000 +@@ -4,7 +4,7 @@ + project(KMime VERSION ${PIM_VERSION}) + + # ECM setup +-set(KF5_MIN_VERSION "5.56.0") ++set(KF5_MIN_VERSION "5.54.0") + + find_package(ECM ${KF5_MIN_VERSION} CONFIG REQUIRED) + set(CMAKE_MODULE_PATH ${KMime_SOURCE_DIR}/cmake ${ECM_MODULE_PATH}) +@@ -22,7 +22,7 @@ + + + set(KMIME_LIB_VERSION ${PIM_VERSION}) +-set(QT_REQUIRED_VERSION "5.10.0") ++set(QT_REQUIRED_VERSION "5.9.0") + find_package(Qt5 ${QT_REQUIRED_VERSION} CONFIG REQUIRED Core) + + ecm_setup_version(PROJECT VARIABLE_PREFIX KMIME diff --git a/user/kmines/APKBUILD b/user/kmines/APKBUILD index 1a0ffcec3..99f512bd0 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.12.3 +pkgver=19.04.1 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="60c5a271f50a94ea018a325bee733a8541169e956208147fc640d7be5afc74a90518aca5a3946c1a49b66fb11acfd1b1b7cc44d5311671c6eaa425092ac2a30a kmines-18.12.3.tar.xz" +sha512sums="74d21df3f2ce2ac883b6e61a0f8c85c85b6cbd38ce3634581d0db2abf106f64693cc27013f0120946947c17d93790de2eaa319c361426e895168a29eaaf108fc kmines-19.04.1.tar.xz" diff --git a/user/kmix/APKBUILD b/user/kmix/APKBUILD index aef50e86e..b8f161cb7 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.12.3 +pkgver=19.04.1 pkgrel=0 pkgdesc="KDE sound mixer" url="https://www.kde.org/applications/multimedia/kmix/" @@ -42,4 +42,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="2b99863aee801e8e0ce5100599b2ba6646ccae38c4f25a00b58ed71a48b36874df33b9f147b601135a3c6ccce16dfb4a7329814d92bab03a5a750d4abbf681cc kmix-18.12.3.tar.xz" +sha512sums="fc979608fbd4f95717b19ff09c2b7e2d55e6a29570934fbc6b56a9b9a9e70f3cb2719fdbd6230bed16de28085304ba3b6d035f62fc28c3b0275edd095e0199a1 kmix-19.04.1.tar.xz" diff --git a/user/kmousetool/APKBUILD b/user/kmousetool/APKBUILD index 01f1229b9..28fbe17b0 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.12.3 +pkgver=19.04.1 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="c6cb2a60b9bb545335a648f28435eed12c2cefde930587afad2c35d815aa785cd4496be6745a0bcff6ffbe4940f79f12ebc949b3ddbd2701b157b98ea135243e kmousetool-18.12.3.tar.xz" +sha512sums="9c618755da01a2596a16bf62569f202c699a296a394a75adcfd246e2655809d8c56ee1302ddf92066fea77d962a2ffc76c0d5b3d28f5e59f1217d68cfa482f9d kmousetool-19.04.1.tar.xz" diff --git a/user/kmplot/APKBUILD b/user/kmplot/APKBUILD index 3116bf623..cbd2dd4aa 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.12.3 +pkgver=19.04.1 pkgrel=0 pkgdesc="Mathematical function plotter" url="https://www.kde.org/applications/education/kmplot/" @@ -40,4 +40,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="6fa203f4cd192e114ccf7f87df3d1f1f0e806a0bb4027a31eb0fc16a239fba841b643ea7b4b8f4d72a43efe9605e22bd0b47d7fbb9232b5305c60cd2e4ccadb9 kmplot-18.12.3.tar.xz" +sha512sums="95a817918eb9386f8eec91c3bab0604ac38a394e905282f0f50a1254b889be2d559f4902ba3f56ea10246d31c2c99a37a4e8b7cb9a8707c363dfa16749c1af1c kmplot-19.04.1.tar.xz" diff --git a/user/knavalbattle/APKBUILD b/user/knavalbattle/APKBUILD index e3f922ce3..f182df0b2 100644 --- a/user/knavalbattle/APKBUILD +++ b/user/knavalbattle/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=knavalbattle -pkgver=18.12.3 +pkgver=19.04.1 pkgrel=0 pkgdesc="Ship sinking game from KDE" url="https://www.kde.org/applications/games/knavalbattle/" @@ -40,4 +40,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="49660ae9a472f06d98a95db38b697d4aa37acf0ca4aa14510f4a2256106e3a9e2c8162c1f65b8f36ed2978f25da6263c2c82666458c0e344af87da881d571811 knavalbattle-18.12.3.tar.xz" +sha512sums="a7d7749bbfefd7b3a32e4cffb1d7040d2f9b023d36696a82a4cb1b3686a212ae3317894918e00afbf85d43de05c46c3ffdfa8e02c11fad6980933b7f578a63d0 knavalbattle-19.04.1.tar.xz" diff --git a/user/knetwalk/APKBUILD b/user/knetwalk/APKBUILD index 91f59ffd1..b318a2c7e 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.12.3 +pkgver=19.04.1 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="36fd21b7a5e37f131fbba4bd13391c21e3abec3a2128c49badb3a44641d8ffe0d999df6a40f472125d42e9bfac02815b2ade0a4eb4eebda64c95035c6e24d9b2 knetwalk-18.12.3.tar.xz" +sha512sums="006c76b9996ff74d9fdaace9e72426619198e74823f07f1433f1aaf1a91669b3ad9040709f97a51f2b65503fe6fc886ac705e60a3a9d4e9e9b8ae837025d6246 knetwalk-19.04.1.tar.xz" diff --git a/user/kolf/APKBUILD b/user/kolf/APKBUILD index fcf84a6c9..28b73c18e 100644 --- a/user/kolf/APKBUILD +++ b/user/kolf/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kolf -pkgver=18.12.3 +pkgver=19.04.1 pkgrel=0 pkgdesc="2D miniature golf game from KDE" url="https://www.kde.org/applications/games/kolf/" @@ -41,4 +41,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="321e5eb368f3e9c64a941d0b32abd56e8e0eb9f49a74ce07c1382ab3625e0ddb843f7b6808856e6c64a7026f8203c009a7ce285efb28b3c85c51f15c118c5480 kolf-18.12.3.tar.xz" +sha512sums="f8f1360ccc4d9623b8ac325333682125414150daf007376010b82e0dc35347fbb2a745fb45449a241f51b7426f386dd2deb9342f1663534685df134300a10ad5 kolf-19.04.1.tar.xz" diff --git a/user/kollision/APKBUILD b/user/kollision/APKBUILD index a01e020f8..7e3bddbd5 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.12.3 +pkgver=19.04.1 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="eec43613ab81ebbabe3f6e2ea59f861c7c22772105ec1a15bb1fac5a1eb8086627a00ae1987c77d757b0ea8f14c2544dbcec69f669e6f8ae6866e483e29ec3e4 kollision-18.12.3.tar.xz" +sha512sums="9af5989dec26aebfb0785ef81ab61e033fcee458c591bb2e73fd6d53acf387e79934422a6aab8e002ae6ffe452c228453fdb127509330986be6ae14e8a66d62c kollision-19.04.1.tar.xz" diff --git a/user/kolourpaint/APKBUILD b/user/kolourpaint/APKBUILD index 11845e7ed..3beedfa4a 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.12.3 +pkgver=19.04.1 pkgrel=0 pkgdesc="Simple painting program for KDE" url="http://kolourpaint.org/" @@ -40,4 +40,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="ac294aa80ffebdc6440474c15c5450fdcf15d735e6d920e2af99c92cbaa5f8930330a268faea5fb7859d1128c7479049ceb672715d7a4dbfdfb7e3b72157af13 kolourpaint-18.12.3.tar.xz" +sha512sums="2154a250683744cd566b3835b68d5f4d16c6b2b7ac747d1bd8fd1de41ebee64c5c972a799d06e1b88768d789393d7f7509428584b29d78923e2275a92de56b9f kolourpaint-19.04.1.tar.xz" diff --git a/user/konquest/APKBUILD b/user/konquest/APKBUILD index cf7b6b3be..5027353ad 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.12.3 +pkgver=19.04.1 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="c61520a69a2dcd38c66cce521cf25060b31047b77e6f587389a486b4e7438e140f149cb488fb2500feb195d54035a828f9d38ef4d70d8b36003c6c6b3d33169e konquest-18.12.3.tar.xz" +sha512sums="3656894ecad9ed015b2abe2eaa4c859e2af6c67dde5503a06043c66c0efcb0677564d82168e8692bfa523d6a92fb40eb72a02af94d82863d0673353d20d3d144 konquest-19.04.1.tar.xz" diff --git a/user/konsole/APKBUILD b/user/konsole/APKBUILD index 551c18148..4262edda8 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.12.3 +pkgver=19.04.1 pkgrel=0 pkgdesc="Terminal emulator for Qt/KDE" url="https://konsole.kde.org/" @@ -16,9 +16,7 @@ makedepends="cmake extra-cmake-modules qt5-qtbase-dev kbookmarks-dev kpty-dev kservice-dev ktextwidgets-dev kwidgetsaddons-dev python3 kwindowsystem-dev kxmlgui-dev kdbusaddons-dev knewstuff-dev" subpackages="$pkgname-doc $pkgname-lang" -source="https://download.kde.org/stable/applications/$pkgver/src/konsole-$pkgver.tar.xz - cursor.patch - " +source="https://download.kde.org/stable/applications/$pkgver/src/konsole-$pkgver.tar.xz" build() { cd "$builddir" @@ -46,5 +44,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="9fecd316a9bc7adaca9a3fac38a57d293286b6328e88d96ac1cf8967fcb67ef8e9a5b085e185c4373599eafd0eaa18f0d73df70df16b98a1badd9efb689e1f7c konsole-18.12.3.tar.xz -66dcb31dd63f7a300b64058e8f9e56aa122c407d3a4a85c2323e7abf2e8eb4a3e1dd83de9445dac4938f9395b612eac5ceb9626bf895b532cfd19f63e0fbb2d7 cursor.patch" +sha512sums="db1452dd7c9254a13d2585f70f8b9cb1d481ab01207437dc1597fe0187e20bea5692ae09f0b48e5958c1fe987f39b53791299e068539ad31536787b82673dba1 konsole-19.04.1.tar.xz" diff --git a/user/konsole/cursor.patch b/user/konsole/cursor.patch deleted file mode 100644 index 621a4f36b..000000000 --- a/user/konsole/cursor.patch +++ /dev/null @@ -1,87 +0,0 @@ -From 9af659c73e3203e1d5ef3873fa6c0144258b9673 Mon Sep 17 00:00:00 2001 -From: Wolfgang Bauer <wbauer@tmo.at> -Date: Mon, 4 Mar 2019 09:59:45 -0500 -Subject: Fix ibeam and underline cursor rendering - -Summary: -Since anti-aliasing was enabled in the painter, coordinates need to -be shifted half a pixel so that they align with the pixel grid, -otherwise the result gets "blurred" due to the anti-aliasing. -And as parts of the blurred shape leak outside the cursor rectangle, -this also leaves artifacts when the cursor moves or blinks as these -parts are not cleared. - -This is basically the same as commit -e7085310d6d594823d0ed491fa8bdbd99dec4932 for the -standard block cursor. - -BUG: 402589 - -Test Plan: -- Switch cursor shape to "I-Beam" or "Underline" in the "Advanced" -profile settings - -The cursors are a single line again now, before they were blurred by -anti-aliasing. - -Screenshots: -Before: -{F6656366} -{F6656370} - -After: -{F6656371} -{F6656373} - -Also, there are no more artifacts when the cursor is moved or -cursor blinking is enabled. - -Reviewers: #konsole, hindenburg - -Reviewed By: #konsole, hindenburg - -Subscribers: hindenburg, konsole-devel - -Tags: #konsole - -Differential Revision: https://phabricator.kde.org/D19513 - -(cherry picked from commit eccfb1f62bbf67ebffee11e241bd05757b826ff1) ---- - src/TerminalDisplay.cpp | 18 ++++++++++-------- - 1 file changed, 10 insertions(+), 8 deletions(-) - -diff --git a/src/TerminalDisplay.cpp b/src/TerminalDisplay.cpp -index 64c831c..7c8137d 100644 ---- a/src/TerminalDisplay.cpp -+++ b/src/TerminalDisplay.cpp -@@ -958,16 +958,18 @@ void TerminalDisplay::drawCursor(QPainter& painter, - } - } - } else if (_cursorShape == Enum::UnderlineCursor) { -- painter.drawLine(cursorRect.left(), -- cursorRect.bottom(), -- cursorRect.right(), -- cursorRect.bottom()); -+ QLineF line(cursorRect.left() + 0.5, -+ cursorRect.bottom() - 0.5, -+ cursorRect.right() - 0.5, -+ cursorRect.bottom() - 0.5); -+ painter.drawLine(line); - - } else if (_cursorShape == Enum::IBeamCursor) { -- painter.drawLine(cursorRect.left(), -- cursorRect.top(), -- cursorRect.left(), -- cursorRect.bottom()); -+ QLineF line(cursorRect.left() + 0.5, -+ cursorRect.top() + 0.5, -+ cursorRect.left() + 0.5, -+ cursorRect.bottom() - 0.5); -+ painter.drawLine(line); - } - } - --- -cgit v1.1 - diff --git a/user/kpat/APKBUILD b/user/kpat/APKBUILD index f893118b1..6b177b3b5 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.12.3 +pkgver=19.04.1 pkgrel=0 pkgdesc="Collection of card games for KDE" url="https://games.kde.org/game.php?game=kpat" @@ -42,4 +42,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="4fcd9860ac7e1d1069bd1f1e46943fe1695c0e7080b91c9b320fefd0bac4a782b95f9b20440a1a1409a2ea9f131050ea121e0f4ff935db471044cf9320b5bc96 kpat-18.12.3.tar.xz" +sha512sums="2362920a4ddec7ddccb3de58bd1d3e4f424e844bc7c6aa4c16465b64d94967f0adfe903e2845cb61c5afbad5fd52c5f755f529c9934b4a201c3beab6516b6de6 kpat-19.04.1.tar.xz" diff --git a/user/kphotoalbum/APKBUILD b/user/kphotoalbum/APKBUILD index 86590bce3..c8c83d7f4 100644 --- a/user/kphotoalbum/APKBUILD +++ b/user/kphotoalbum/APKBUILD @@ -1,8 +1,8 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kphotoalbum -pkgver=5.4 -pkgrel=1 +pkgver=5.5 +pkgrel=0 pkgdesc="Versatile photo album software by KDE" url="https://www.kphotoalbum.org/" arch="all" @@ -41,4 +41,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="d528905f3af9d23c89c89f902abe8358f8e90c402e437bc7cdd67837649f5dcd7f7416c77cc824532f928f41e7590f6005f13c97be4d608e433aad285a6a8bba kphotoalbum-5.4.tar.xz" +sha512sums="fcca891a94580db2f606c5d077af2651e1dbcd59429823410f9fd2d07ac0c3c625ac441b723d4c8cb3ac7ede26ccf69f955c19fe302fffc9788fc33def9ee3e0 kphotoalbum-5.5.tar.xz" diff --git a/user/kpimtextedit/APKBUILD b/user/kpimtextedit/APKBUILD index ed683d6b7..da85d2b76 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.12.3 +pkgver=19.04.1 pkgrel=0 pkgdesc="Text editor for Personal Information Managers (PIMs)" url="https://pim.kde.org/" @@ -16,7 +16,9 @@ makedepends="$depends_dev cmake extra-cmake-modules qt5-qttools-dev ki18n-dev kdesignerplugin-dev kemoticons-dev kiconthemes-dev kio-dev kxmlgui-dev qt5-qtspeech-dev" subpackages="$pkgname-dev $pkgname-lang" -source="https://download.kde.org/stable/applications/$pkgver/src/kpimtextedit-$pkgver.tar.xz" +source="https://download.kde.org/stable/applications/$pkgver/src/kpimtextedit-$pkgver.tar.xz + qt5.9.patch + " build() { cd "$builddir" @@ -44,4 +46,5 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="c3f4d3143a56cad623a5fb514c2234e4f00c07f395e72648ed3429a88631e3c752ea55d321fe55584f1846d3f97fabf3796ce3883cba06238f00e735028853bb kpimtextedit-18.12.3.tar.xz" +sha512sums="2eec73ef6a4fb546aa7ce6481c16f6a20d5b49d65ee9e3beab1d35169bab0e2b84bacdb7f00f38b691b86e906ad31bd1ed6a165075bb431c1f9fd9eb5023bc5e kpimtextedit-19.04.1.tar.xz +13f90299735e145142f969ffb6462b71c1cd85d5503c3902af924388042396526ff8b943229462e0ff7e5030393e5312dd67b8dfc66efec81f4f05ac15f86091 qt5.9.patch" diff --git a/user/kpimtextedit/qt5.9.patch b/user/kpimtextedit/qt5.9.patch new file mode 100644 index 000000000..50c29e0e0 --- /dev/null +++ b/user/kpimtextedit/qt5.9.patch @@ -0,0 +1,49 @@ +From 6961b54d1c814f2e7aafd7db8256f82688f014a3 Mon Sep 17 00:00:00 2001 +Date: Mon, 17 Dec 2018 07:23:52 +0100 +Subject: Revert "Remove QT_CHECK" + +--- + .../plaintexteditor/plaintextsyntaxspellcheckinghighlighter.cpp | 4 ---- + 1 file changed, 4 deletions(-) + +diff --git a/src/texteditor/plaintexteditor/plaintextsyntaxspellcheckinghighlighter.cpp b/src/texteditor/plaintexteditor/plaintextsyntaxspellcheckinghighlighter.cpp +index 8ce0fe9..c07699c 100644 +--- a/src/texteditor/plaintexteditor/plaintextsyntaxspellcheckinghighlighter.cpp ++++ b/src/texteditor/plaintexteditor/plaintextsyntaxspellcheckinghighlighter.cpp +@@ -144,9 +144,13 @@ void PlainTextSyntaxSpellCheckingHighlighter::highlightBlock(const QString &text + + const auto nextBlock = currentBlock().next(); + if (nextBlock.isValid()) { ++#if QT_VERSION >= QT_VERSION_CHECK(5, 10, 0) + QMetaObject::invokeMethod(this, [this, nextBlock] { + rehighlightBlock(nextBlock); + }, Qt::QueuedConnection); ++#else ++ QMetaObject::invokeMethod(this, "rehighlightBlock", Qt::QueuedConnection, Q_ARG(QTextBlock, nextBlock)); ++#endif + } + } + +-- +cgit v1.1 + +--- kpimtextedit-19.04.0/CMakeLists.txt.old 2019-04-12 00:14:22.000000000 +0000 ++++ kpimtextedit-19.04.0/CMakeLists.txt 2019-04-19 06:21:56.055556133 +0000 +@@ -4,7 +4,7 @@ + project(KPimTextEdit VERSION ${PIM_VERSION}) + + # ECM setup +-set(KF5_MIN_VERSION "5.56.0") ++set(KF5_MIN_VERSION "5.54.0") + + find_package(ECM ${KF5_MIN_VERSION} CONFIG REQUIRED) + set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH}) +@@ -36,7 +36,7 @@ + SOVERSION 5 + ) + +-set(QT_REQUIRED_VERSION "5.10.0") ++set(QT_REQUIRED_VERSION "5.9.0") + find_package(Qt5 ${QT_REQUIRED_VERSION} CONFIG REQUIRED COMPONENTS Widgets) + find_package(Grantlee5 "5.1" CONFIG REQUIRED) + set_package_properties(Grantlee5 PROPERTIES diff --git a/user/krdc/APKBUILD b/user/krdc/APKBUILD index 950ac7ed8..d770827cf 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.12.3 +pkgver=19.04.1 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="eeb48eb968e1cb54a76d82dff1eec001b880456d2cd52f33dea6be6e3fb08186e25af89ee9a89e077e91ce0a0ebaa522bc453d5137e384018489ffc1f8382927 krdc-18.12.3.tar.xz" +sha512sums="60e9541a9e8377da5248471160733a86ae1c6f49c7649470ec313475ef483314fb59e8967b2d30dbde2012d437a98a9db11b172e2052a58b65075920daf75b13 krdc-19.04.1.tar.xz" diff --git a/user/kreversi/APKBUILD b/user/kreversi/APKBUILD index 870c1d082..a34522600 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.12.3 +pkgver=19.04.1 pkgrel=0 pkgdesc="Reversi game" url="https://games.kde.org/game.php?game=kreversi" @@ -41,4 +41,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="fb3fd6a6e855701196cdd34d0e4611ce9e23cb51c2b461defc2c93e523dcd422bb02d5bb1b47fc376071de41bc6909b614b1e0389fc8e0210fffc7472f144deb kreversi-18.12.3.tar.xz" +sha512sums="1b42a1e96e06de6571687b5e76c800adda3d68f6ce8792b2d09bca7ae962d924e500ac4b436ebdb261bb9b62f37039acf6cc0f9451bb704d15b21b1bd5859fb3 kreversi-19.04.1.tar.xz" diff --git a/user/krfb/APKBUILD b/user/krfb/APKBUILD index c9b009993..6723365c3 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.12.3 +pkgver=19.04.1 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="e195d7cfe2f6c3c17b203da1bb0c1cb0709d4192a05b32bf817666183ce7889afc7b64afb54187f795f493ed88531a2de14bac3d7dbe6aacb7618220380fa518 krfb-18.12.3.tar.xz" +sha512sums="8e070299753b785e9c4cf36e4ba1ba80502825aae7f605f531316ca5ddc05a5c36f4027d09e77ae0930efdbf61b720eb8ebe2d56e805486ebb7b06ce80b72c85 krfb-19.04.1.tar.xz" diff --git a/user/krita/APKBUILD b/user/krita/APKBUILD index c85aaf521..ac809584d 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.5 -pkgrel=1 +pkgver=4.1.8 +pkgrel=0 pkgdesc="Digital painting program by KDE" url="https://krita.org/" arch="all" @@ -53,4 +53,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="7790e3e61c18f5a2f5ba0c5d08f09bf78bcfba563b46751689db00814b9775db85cc64c162aa1c1dc47b5e73e49598b24e6a4599b8350a9e07c15aa4eb463499 krita-4.1.5.tar.gz" +sha512sums="d027444415bffbd6abd29ca69598fdb1e6a652fd4f1944092ff12016a57ff2ee3bab209c93e065905ec9bfea395e50f833915bb924b97a2c119d101057cba6c9 krita-4.1.8.tar.gz" diff --git a/user/kruler/APKBUILD b/user/kruler/APKBUILD index 025afb5c9..6ce44f38c 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.12.3 +pkgver=19.04.1 pkgrel=0 pkgdesc="Screen ruler" url="https://www.kde.org/applications/graphics/kruler/" @@ -39,4 +39,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="26c214cd2dd246a76e1133120d5932c4945ae7ffb98f15c60a577471a3bb35295d14a77a953d60facaf659fcfa47da019a39dedfe3267465f65649a4ef66ef6e kruler-18.12.3.tar.xz" +sha512sums="6ddbea90b6f75c6c5d3308b1e69d8ff3d28bba72cb4e35d0165c7b25926035febeffd671204abfdab6063bc810fa92d15bbddad82c46046a283819c44e43ed52 kruler-19.04.1.tar.xz" diff --git a/user/kshisen/APKBUILD b/user/kshisen/APKBUILD index 9b83f59d6..30988940e 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.12.3 +pkgver=19.04.1 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="d920cd913714f7e93df0133e8caec5dc2649c3d4dfd0f157fb189efa694632b3027053cbcdcc187cbd4d04b1ebd7526544f5857f80b5a933f4c73911531a5640 kshisen-18.12.3.tar.xz" +sha512sums="7789cdcc61dd2c0690a80e5154efe3ff432321185e60d598e982acd9a92cc36926447ed295c1560c56bb207c0387a7b203f2fb3f75b62798a45ea898a5fd54fb kshisen-19.04.1.tar.xz" diff --git a/user/ksirk/APKBUILD b/user/ksirk/APKBUILD index 8f6313b33..b88c01cb7 100644 --- a/user/ksirk/APKBUILD +++ b/user/ksirk/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=ksirk -pkgver=18.12.3 +pkgver=19.04.1 pkgrel=0 pkgdesc="Strategy game from KDE" url="https://www.kde.org/applications/games/ksirk/" @@ -42,4 +42,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="60e1267490b9c97f77e0313d19336f798564eb2a35b1c78907b5591d33360abdbc10a6fc46aa3a0956e8004c7dddaa0f91772535ee04678e3f8bb9a29de1a518 ksirk-18.12.3.tar.xz" +sha512sums="4407c942202deac31a46dd0dd4797630829f4e334db6d3fb5bf1baa3a1616e2f67a492550c3cd77a9632a9a9b687eb7bdbcd90f2002acd73258ebdacd288035b ksirk-19.04.1.tar.xz" diff --git a/user/ksnakeduel/APKBUILD b/user/ksnakeduel/APKBUILD index 589411c06..dd99fe9a3 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.12.3 +pkgver=19.04.1 pkgrel=0 pkgdesc="Tron-like game" url="https://www.kde.org/applications/games/ksnakeduel/" @@ -41,4 +41,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="8efc73f83ac68e2ccf27d019979509d343aada8fa73d27bbac4f428ecc0238bc9740863995c93f36980aceafa9f3a193ed2c114a90e4436e3ec470cecc50b625 ksnakeduel-18.12.3.tar.xz" +sha512sums="b4439eef6b90d6d998a4790fddb79ea01604a69d63c5a54f71d7a5295a6d487c6515864881cdd9aa8223151ceee80372677831aa3373d8f662e49dfde8623373 ksnakeduel-19.04.1.tar.xz" diff --git a/user/kspaceduel/APKBUILD b/user/kspaceduel/APKBUILD index 67102b293..1ddf579fa 100644 --- a/user/kspaceduel/APKBUILD +++ b/user/kspaceduel/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kspaceduel -pkgver=18.12.3 +pkgver=19.04.1 pkgrel=0 pkgdesc="Space arcade game from KDE" url="https://www.kde.org/applications/games/kspaceduel/" @@ -40,4 +40,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="d646f969ada6ea721ae02c177904f0c392732979dcab3e20a332a7b058c2284c4109c286a0a165620378f92cde864cf7685c852fcf366cbec8cae551640a0081 kspaceduel-18.12.3.tar.xz" +sha512sums="d5b5ccc168b6272d35ee8781a249a4aea5ca211e97f2b8cd2c71f2652caa9ebf41c9bd3c8bbbc716d0bb6b4d3f4c87cc2c609a2624ccc1cfc703f3e5315987d9 kspaceduel-19.04.1.tar.xz" diff --git a/user/ksquares/APKBUILD b/user/ksquares/APKBUILD index 4f8de77f3..e6b4feade 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.12.3 +pkgver=19.04.1 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="3075a4724bc8cf3d25d94a725818db31f75b4d1ef54e00faff9cab84ffdac7585dc79af7fff0e667a1f679602f22c0ba2dffca10b9e980dcc2850558e1f982bd ksquares-18.12.3.tar.xz" +sha512sums="0a799744caf34bca1aa4174b8160e0703db59aba4b50fee3b9e5938e22e171e94d28f1fed798f83387e1b9c35241417560e25cca4514708a4f9fae0a02bfbdd1 ksquares-19.04.1.tar.xz" diff --git a/user/kstars/0001-htmesh-Fix-compile-error-on-modern-Linux-systems.patch b/user/kstars/0001-htmesh-Fix-compile-error-on-modern-Linux-systems.patch deleted file mode 100644 index 052b849d9..000000000 --- a/user/kstars/0001-htmesh-Fix-compile-error-on-modern-Linux-systems.patch +++ /dev/null @@ -1,25 +0,0 @@ -From b2b36b864813e512829ab8a3613f8a91f2bff20e Mon Sep 17 00:00:00 2001 -From: "A. Wilcox" <AWilcox@Wilcox-Tech.com> -Date: Wed, 29 Aug 2018 11:27:38 -0500 -Subject: [PATCH] htmesh: Fix compile error on modern Linux systems - ---- - kstars/htmesh/SkipListElement.h | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/kstars/htmesh/SkipListElement.h b/kstars/htmesh/SkipListElement.h -index f8187e42a..52dfff38a 100644 ---- a/kstars/htmesh/SkipListElement.h -+++ b/kstars/htmesh/SkipListElement.h -@@ -20,7 +20,7 @@ - #define KEY_MAX _I64_MAX - #else - #if defined(__FreeBSD__) || defined(__NetBSD__) || defined(__OpenBSD__) || defined(__DragonFly__) || \ -- (defined(__SUNPRO_CC) && defined(__sun)) || defined(__APPLE__) -+ (defined(__SUNPRO_CC) && defined(__sun)) || defined(__APPLE__) || defined(__linux__) - #define KEY_MAX LLONG_MAX - #else - #define KEY_MAX LONG_LONG_MAX --- -2.17.1 - diff --git a/user/kstars/APKBUILD b/user/kstars/APKBUILD index b98404eda..7966eb088 100644 --- a/user/kstars/APKBUILD +++ b/user/kstars/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kstars -pkgver=3.0.0 +pkgver=3.2.1 pkgrel=0 pkgdesc="Desktop planetarium" url="https://www.kde.org/applications/education/kstars/" @@ -14,14 +14,9 @@ makedepends="cmake extra-cmake-modules qt5-qtbase-dev qt5-qtdeclarative-dev kxmlgui-dev kplotting-dev knotifications-dev eigen-dev mesa-dev qt5-qtwebsockets-dev libraw-dev" subpackages="$pkgname-doc $pkgname-lang" -source="https://download.kde.org/stable/kstars/kstars-$pkgver.tar.xz - 0001-htmesh-Fix-compile-error-on-modern-Linux-systems.patch - " +source="https://download.kde.org/stable/kstars/kstars-$pkgver.tar.xz" build() { - cd "$builddir" - mkdir build - cd build if [ "$CBUILD" != "$CHOST" ]; then CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux" fi @@ -34,19 +29,16 @@ build() { -DCMAKE_C_FLAGS="$CFLAGS" \ -DEIGEN3_INCLUDE_DIR=/usr/include/eigen3 \ ${CMAKE_CROSSOPTS} \ - .. - make + -Bbuild + make -C build } check() { - cd "$builddir"/build - CTEST_OUTPUT_ON_FAILURE=TRUE ctest + make -C build test } package() { - cd "$builddir"/build - make DESTDIR="$pkgdir" install + make DESTDIR="$pkgdir" -C build install } -sha512sums="e574c2529898d66bc79e1cf88ce778dddeedfdfed4ea23921219226121b60be042a94e6865e9076efff038a0a529587901f9a4ab2cd5b658440a8bf39c0c4d08 kstars-3.0.0.tar.xz -8c81a6db810a99b7d8bf7adca15767fdbfb79269ab2de1e4136de3c75266dde2fd572b961f63dc9b4f619abf7292e02eed5d29ca9ba53586f30871aba6015fdb 0001-htmesh-Fix-compile-error-on-modern-Linux-systems.patch" +sha512sums="d62d2211db66941c402e19dee28ace235933fe33e077f7de3350c1a80eb02c18b23549c9cc8403fe9d34bc06332501b5ed931f992eb92c605fe7661572c3ed46 kstars-3.2.1.tar.xz" diff --git a/user/ksudoku/APKBUILD b/user/ksudoku/APKBUILD index 3515bc53b..65074b490 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.12.3 +pkgver=19.04.1 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="6e773fc6bb9224a5c39142abcc85a93ef1ce8aedd9242fb60b1157027a277d6e235998d8a7d6ac7ecd3d89a1bdacc8e612d5b0c11ec9fcc52c3ea14445384d80 ksudoku-18.12.3.tar.xz" +sha512sums="bf53460e9ff82c9e36be1c454588c6b0347365b2d62fbf3aa908883361c80e7da67ad23105ff3443f2bb0dec695aa787c7a15a20c4c9abec564f1f7a7be7f48b ksudoku-19.04.1.tar.xz" diff --git a/user/ksystemlog/APKBUILD b/user/ksystemlog/APKBUILD index 9506209b6..11fe36915 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.12.3 +pkgver=19.04.1 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="4808d8981e5d7d5d75be11c3b00c25e4962ea2b8a5e600f50aff2ca8e74d9af924859329224c92001a91e9fa697fae29a21c2ed1209cada641c732773b2bad0b ksystemlog-18.12.3.tar.xz" +sha512sums="6a30d655ca18f8249979e266fc6377ef69cf40b9c155e41cb4102e542ea1beabb5a647a23a37430bf010ff3b657887b58ed559f41f248fea76f47cea5146f295 ksystemlog-19.04.1.tar.xz" diff --git a/user/kteatime/APKBUILD b/user/kteatime/APKBUILD index 89988296c..3f78cc184 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.12.3 +pkgver=19.04.1 pkgrel=0 pkgdesc="Steep responsibly" url="https://www.kde.org/applications/games/kteatime/" @@ -40,4 +40,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="0c2280828005c85c12a8616c288416537cee2fe6053571c3ee369ccd7903ca66625b95304217a5a6518ac0602b1cde9d0e654032ad32b12f082d80535cca4e55 kteatime-18.12.3.tar.xz" +sha512sums="3afb59cf7fb5ba1273a49a69f4e587e0356055e992fec9115028769c9369cec77a9cf3648974c50e2d2c98ac587ec172f7fe03cfb423484ce0b28c226d4bda3b kteatime-19.04.1.tar.xz" diff --git a/user/ktimer/APKBUILD b/user/ktimer/APKBUILD index 366d60c4c..3282df44f 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.12.3 +pkgver=19.04.1 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="e61752d02d650d32d1988e7b8f394017dd6a7130f222bda55a747039ce5cb593976ee99f4cdde1731e55e86f8b2ecfa967efea6198a1de6d240ce11fd48488fe ktimer-18.12.3.tar.xz" +sha512sums="a0d7fe8c12e827dfb7de201aa7dddfb594a18daed0f8a9fdf3eafa24db789a8a734df479e8fb22d160f089645e0bc34eb87d5d181d53863cae823f2de081d101 ktimer-19.04.1.tar.xz" diff --git a/user/ktouch/APKBUILD b/user/ktouch/APKBUILD index a978ce469..9810a7570 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.12.3 +pkgver=19.04.1 pkgrel=0 pkgdesc="Touch typing tutor" url="https://www.kde.org/applications/education/ktouch/" @@ -42,4 +42,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="1973b7d9e8ba61b4bfe9b23e53597ffe8eb4d00f4a57a3e2861a41b2b6c8bcf8204ad59d8d42d696e07a7d8c2b9cf7d3b4dbba8924fd2a9470d5b7524034a6cd ktouch-18.12.3.tar.xz" +sha512sums="82af8a4ff49643acc888bdaad5e1c8c3a7555dcb05e86f42216cc1350a28fa647714ad62f83ba244618ae2cc5b707847d9c36ca4e770fac8f5cb8cdcbf58c90b ktouch-19.04.1.tar.xz" diff --git a/user/ktuberling/APKBUILD b/user/ktuberling/APKBUILD index 6bfead6d6..0ff92497a 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.12.3 +pkgver=19.04.1 pkgrel=0 pkgdesc="Simple constructor game" url="https://games.kde.org/game.php?game=ktuberling" @@ -13,7 +13,9 @@ makedepends="cmake extra-cmake-modules qt5-qtbase-dev qt5-qtsvg-dev kconfig-dev kdbusaddons-dev kdelibs4support-dev kwidgetsaddons-dev kxmlgui-dev libkdegames-dev qt5-qtmultimedia-dev" subpackages="$pkgname-doc $pkgname-lang" -source="https://download.kde.org/stable/applications/$pkgver/src/ktuberling-$pkgver.tar.xz" +source="https://download.kde.org/stable/applications/$pkgver/src/ktuberling-$pkgver.tar.xz + frameworks.patch + " build() { cd "$builddir" @@ -41,4 +43,5 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="3f496c2d48c726274fa01c8116eeb50d06b9ef39ce7004b10b40316382ee082d26dbe3da8e43c9c7c77a719e6a10bff0f130d3c99fb9f9156d95216c428189fb ktuberling-18.12.3.tar.xz" +sha512sums="c1f8183ccf7a8bf142e6989565b5bb59503078762f39e4879a7fbdc0fd21fa3913b42a2822d1bfcc5e450b3462f470203c21362193805bd88346f9cb43ed2925 ktuberling-19.04.1.tar.xz +a8c723302d141ff74a10cc38245524d59a51d476159c2ac46a1694747ddcb078abc42cea80cf5a5d3910c96c0c90fb7dbf82786496f03b4438a23a736a784e76 frameworks.patch" diff --git a/user/ktuberling/frameworks.patch b/user/ktuberling/frameworks.patch new file mode 100644 index 000000000..7f03b5874 --- /dev/null +++ b/user/ktuberling/frameworks.patch @@ -0,0 +1,11 @@ +--- ktuberling-19.04.0/CMakeLists.txt.old 2019-04-12 00:10:28.000000000 +0000 ++++ ktuberling-19.04.0/CMakeLists.txt 2019-04-18 21:18:28.795796335 +0000 +@@ -2,7 +2,7 @@ + + cmake_minimum_required (VERSION 2.8.12 FATAL_ERROR) + set (QT_MIN_VERSION "5.3.0") +-set (KF5_MIN_VERSION "5.55.0") ++set (KF5_MIN_VERSION "5.54.0") + + find_package(ECM 1.7.0 REQUIRED CONFIG) + set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${ECM_MODULE_PATH} ${ECM_KDE_MODULE_DIR}) diff --git a/user/kturtle/APKBUILD b/user/kturtle/APKBUILD index e02479a1d..3bba51e81 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.12.3 +pkgver=19.04.1 pkgrel=0 pkgdesc="Educational programming environment" url="https://www.kde.org/applications/education/kturtle/" @@ -40,4 +40,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="3244d1c691f2d7c0625cb35b426dc40d7fc112e741af0dda6abdbfba53a36eed199c3cd9b7f60c078b232f903572a112958988cc677fa989dbd51ce3c8bb85f0 kturtle-18.12.3.tar.xz" +sha512sums="d6abd252aad1f8ffa462a493881b5aec8c4463e38a2a372404e7237070b1c1a4598366600247e7d61ab31f8bd042b9ebcbd07059b6e1af6595ac86762db48eff kturtle-19.04.1.tar.xz" diff --git a/user/kubrick/APKBUILD b/user/kubrick/APKBUILD index 485a62692..08bf1c032 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.12.3 +pkgver=19.04.1 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="4761c56bbaac06fa4f5f1e398c06ebe859672f333542185b2a15fac753aa8279a3bb62dbb8cfd972adaaab1903cb56b157fd39e468d3ba8b33f2fbc746517c67 kubrick-18.12.3.tar.xz" +sha512sums="b72ba8207ffa9e0362743bf9e4404fe9afa9d7e66531a66d79df5a805755a494bf028f5c86a00c0e8bb6e89a5f96f2a1f34cedf800b2c5318dacdfa9bf60a492 kubrick-19.04.1.tar.xz" diff --git a/user/kwalletmanager/APKBUILD b/user/kwalletmanager/APKBUILD index ef0a0403a..52f041e98 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.12.3 +pkgver=19.04.1 pkgrel=0 pkgdesc="Manage KDE wallets" url="https://www.kde.org/applications/system/kwalletmanager/" @@ -42,4 +42,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="26be37f0e273c3532ce6056047ac47c65f0c46f56e79bf4473a62c59772685ea4f842d46864d3fbb44638b0c3105ffe233f0451b6ddc53dbb7327631d46b9d4a kwalletmanager-18.12.3.tar.xz" +sha512sums="95a1e01184f654c57002ad5d3bcdc3bd463377f3de7f0524282eab5ddf156ab8c4ae99afa0950df6cb2e280e34eac605810b491068f55076ced4d042cfab9cba kwalletmanager-19.04.1.tar.xz" diff --git a/user/kwave/APKBUILD b/user/kwave/APKBUILD index dc6934195..ff17c9dfc 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.12.3 +pkgver=19.04.1 pkgrel=0 pkgdesc="Sound editor built for KDE" url="http://kwave.sourceforge.net/" @@ -16,6 +16,7 @@ makedepends="cmake extra-cmake-modules qt5-qtbase-dev qt5-qtmultimedia-dev id3lib-dev libmad-dev opus-dev libvorbis-dev fftw-dev librsvg-dev" subpackages="$pkgname-doc $pkgname-lang" source="https://download.kde.org/stable/applications/$pkgver/src/kwave-$pkgver.tar.xz + es-doc-fix.patch remove-msgcat.patch " @@ -46,5 +47,6 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="bffafe6b63cdad5e674a02d9b57e5e658260c2d933ae148e155afc598045a67143f21aad4c52e1437b6f47181b47ee9896e3219700cc8e0aa1c8408fdf797adb kwave-18.12.3.tar.xz +sha512sums="42fef840ac66ee439d594727dd23e0a0cf4342d8f20990da3d1d83d758841821d7cac2bf99f23e135f7e7eea5d02d877cd19b307a1a47b23f258ea5e06c050fd kwave-19.04.1.tar.xz +63afd083727fd28436c2a8071429ba95fe4342c11669a4e27afc30b8a088b981f284fcff13861d5ef01a6f97152b25eec1fbeb303c9bdd76707e44ff5978dab8 es-doc-fix.patch 43474f73281a7e3e97e2aa9e8c5b7aac50c8153c4ec09345a9ff43eb3c90a17c1dd9fbd2c630967ff87a5b21139f4efd0ecc44f36052549cc2036fd1db1dfac4 remove-msgcat.patch" diff --git a/user/kwave/es-doc-fix.patch b/user/kwave/es-doc-fix.patch new file mode 100644 index 000000000..601a7f56e --- /dev/null +++ b/user/kwave/es-doc-fix.patch @@ -0,0 +1,101 @@ +--- kwave-19.04.1/po/es/docs/kwave/index.docbook.old 2019-05-07 00:18:01.000000000 +0000 ++++ kwave-19.04.1/po/es/docs/kwave/index.docbook 2019-05-12 04:22:05.268821135 +0000 +@@ -1651,7 +1651,7 @@ + ><menuchoice + > <shortcut + ><keycombo +->&Space;</keycombo ++><keycap>Space</keycap></keycombo + ></shortcut + > <guimenu + >Reproducción</guimenu +@@ -1665,7 +1665,7 @@ + ><menuchoice + > <shortcut + ><keycombo +->&Space;</keycombo ++><keycap>Space</keycap></keycombo + ></shortcut + > <guimenu + >Reproducir</guimenu +@@ -1839,7 +1839,7 @@ + >entrada de menú / atajo de teclado:<menuchoice + > <shortcut + ><keycombo +->&Ctrl; &Space;</keycombo ++>&Ctrl; <keycap>Space</keycap></keycombo + ></shortcut + > <guimenu + >Vista</guimenu +@@ -1981,7 +1981,7 @@ + >entrada de menú / atajo de teclado: <menuchoice + > <shortcut + ><keycombo +->&Ctrl;&Home;</keycombo ++>&Ctrl;<keycap>Home</keycap></keycombo + ></shortcut + > <guimenu + >Vista</guimenu +@@ -2000,7 +2000,7 @@ + >entrada de menú / atajo de teclado: <menuchoice + > <shortcut + ><keycombo +->&Ctrl;&End;</keycombo ++>&Ctrl;<keycap>End</keycap></keycombo + ></shortcut + > <guimenu + >Vista</guimenu +@@ -2019,7 +2019,7 @@ + >entrada de menú / atajo de teclado: <menuchoice + > <shortcut + ><keycombo +->&PgUp;</keycombo ++><keycap>PgUp</keycap></keycombo + ></shortcut + > <guimenu + >Vista</guimenu +@@ -2051,7 +2051,7 @@ + >entrada de menú / atajo de teclado: <menuchoice + > <shortcut + ><keycombo +->&PgDn;</keycombo ++><keycap>PgDn</keycap></keycombo + ></shortcut + > <guimenu + >Vista</guimenu +@@ -2083,7 +2083,7 @@ + >entrada de menú / atajo de teclado: <menuchoice + > <shortcut + ><keycombo +->&Right;</keycombo ++><keycap>→</keycap></keycombo + ></shortcut + > <guimenu + >Vista</guimenu +@@ -2115,7 +2115,7 @@ + >entrada de menú / atajo de teclado: <menuchoice + > <shortcut + ><keycombo +->&Left;</keycombo ++><keycap>←</keycap></keycombo + ></shortcut + > <guimenu + >Vista</guimenu +@@ -2372,7 +2372,7 @@ + >expandir la selección al principio de la señal (primera muestra): <menuchoice + > <shortcut + ><keycombo +->&Shift;&Home;</keycombo ++>&Shift;<keycap>Home</keycap></keycombo + ></shortcut + > <guimenu + >Editar</guimenu +@@ -2388,7 +2388,7 @@ + >expandir la selección al final de la señal (última muestra): <menuchoice + > <shortcut + ><keycombo +->&Shift;&End;</keycombo ++>&Shift;<keycap>End</keycap></keycombo + ></shortcut + > <guimenu + >Editar</guimenu diff --git a/user/kwordquiz/APKBUILD b/user/kwordquiz/APKBUILD index 3fb34c0f3..521e42c96 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.12.3 +pkgver=19.04.1 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="e4e122317bc2935bf6f23d353b91002607b80b7320e6b976924d03b8c3ef42fecb3236b2af2f01ee4c859854507ed8a51a4e3b991b047ad955e82ddd726e27a7 kwordquiz-18.12.3.tar.xz" +sha512sums="f8858da7239562cb431cffe07ba003d0fdb469ce6fa4a4fc2cdafbc843e85baff40587c1140009121d94410b5895d5e15cc8a81178285934a4e17c487cd20496 kwordquiz-19.04.1.tar.xz" diff --git a/user/labplot/APKBUILD b/user/labplot/APKBUILD index 35cd3cfb2..caf9aa5df 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.5.0 -pkgrel=2 +pkgver=2.6 +pkgrel=0 pkgdesc="Interactive tool for graphing and analysis of scientific data" url="https://www.kde.org/applications/education/labplot/" arch="all" @@ -15,9 +15,7 @@ makedepends="cmake extra-cmake-modules qt5-qtbase-dev qt5-qtsvg-dev kconfig-dev qt5-qtserialport-dev syntax-highlighting-dev bison libexecinfo-dev cantor-dev" subpackages="$pkgname-doc $pkgname-lang" -source="https://download.kde.org/stable/labplot/$pkgver/labplot-$pkgver.tar.xz - liborigin-endian.patch - " +source="https://download.kde.org/stable/labplot/$pkgver.0/labplot-$pkgver.0.tar.xz" build() { cd "$builddir" @@ -46,5 +44,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="a4b285917e30b0ac00cb8c8ad6827ba3884d95fccc0511a0a317bb2d637e48e6579929c45cfb8bba737bb5a01472a2baa9d812a688730ac4fa40b23cc6625eba labplot-2.5.0.tar.xz -d251300ca0992637453ef12021f3fa4ba0ed5651a19b27bee7573f50b101aaa787544c035bf0d00b9a9ef14156536ce027879d605ede228761754b762db88ded liborigin-endian.patch" +sha512sums="6ebc96b3cfb25ebd62a6631d8cca0d9574f84548c04271eb8a10ff3ef9ebbdd0bf842b9b6129a995953412c5e6f902440dc91dbaa01d97fc220d7f6b19dc46af labplot-2.6.0.tar.xz" diff --git a/user/labplot/liborigin-endian.patch b/user/labplot/liborigin-endian.patch deleted file mode 100644 index b40782a3a..000000000 --- a/user/labplot/liborigin-endian.patch +++ /dev/null @@ -1,26 +0,0 @@ -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/libassuan/APKBUILD b/user/libassuan/APKBUILD index a844a40f8..50c7b4f1f 100644 --- a/user/libassuan/APKBUILD +++ b/user/libassuan/APKBUILD @@ -1,7 +1,7 @@ # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=libassuan -pkgver=2.5.1 -pkgrel=1 +pkgver=2.5.3 +pkgrel=0 pkgdesc="IPC library for GnuPG" url="https://www.gnupg.org/software/libassuan/index.html" arch="all" @@ -30,4 +30,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="c8829925221780f175cee8c4084060b0d661229f583a50d400a1903ab7303b2724b99ff9c0fa242881d4c5d779036756e1da54d9143acc0fcd92f302ecb5882d libassuan-2.5.1.tar.bz2" +sha512sums="e7ccb651ea75b07b2e687d48d86d0ab83cba8e2af7f30da2aec794808e13e6ec93f21d607db50d3431f1c23cb3a07a2793b71170e69fa2f5a82cffb81961f617 libassuan-2.5.3.tar.bz2" diff --git a/user/libayatana-indicator/APKBUILD b/user/libayatana-indicator/APKBUILD new file mode 100644 index 000000000..4372a2b44 --- /dev/null +++ b/user/libayatana-indicator/APKBUILD @@ -0,0 +1,44 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=libayatana-indicator +pkgver=0.6.2 +pkgrel=0 +pkgdesc="Gnome library implementing the StatusNotifierItem specification" +url="https://ayatanaindicators.github.io/" +arch="all" +options="!check" # incompetent test author +license="GPL-3.0-only" +depends="" +makedepends="ayatana-ido-dev gtk+3.0-dev" +subpackages="$pkgname-dev" +source="libayatana-indicator-$pkgver.tar.gz::https://github.com/AyatanaIndicators/libayatana-indicator/archive/$pkgver.tar.gz" + +prepare() { + cd "$builddir" + default_prepare + autoreconf -vif +} + +build() { + cd "$builddir" + ./configure \ + --build=$CBUILD \ + --host=$CHOST \ + --prefix=/usr \ + --mandir=/usr/share/man \ + --sysconfdir=/etc \ + --localstatedir=/var + make +} + +check() { + cd "$builddir" + make check +} + +package() { + cd "$builddir" + DESTDIR="$pkgdir" make -j1 install +} + +sha512sums="47a89a4f59d547e4aeeeba245ec7df360e18dc9f8a8c256cbeaf2a95e335f2734873457b2b0fdef8c2fdeaf780dda38cfe020c335a3447a2175914d580aeb8de libayatana-indicator-0.6.2.tar.gz" diff --git a/user/libblockdev/APKBUILD b/user/libblockdev/APKBUILD index 51200d04b..98eeda9dd 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.20 +pkgver=2.21 pkgrel=0 pkgdesc="Library for manipulating block devices" url="http://storaged.org/libblockdev/" @@ -37,4 +37,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="7363e05c6854757649ed865f216c71ddc8afd7f1a102a73c0bb4809c4713973462446543d97b696f55f11ea15696e261802567cc545833d16535835c5250ac8b libblockdev-2.20.tar.gz" +sha512sums="7e6e12716e18c5e48f3b2207f132c242d99ce540f55de3b6932ac3427cb532d9074358c828d9702df71068a8454c642a4c0ff96e62a567ed1c1247c59ece432b libblockdev-2.21.tar.gz" diff --git a/user/libbluray/APKBUILD b/user/libbluray/APKBUILD index a9b6dce67..6d230fcb5 100644 --- a/user/libbluray/APKBUILD +++ b/user/libbluray/APKBUILD @@ -1,7 +1,7 @@ # Contributor: Timo Teräs <timo.teras@iki.fi> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=libbluray -pkgver=1.0.2 +pkgver=1.1.1 pkgrel=0 pkgdesc="Library for Blu-Ray disc playback" url="https://www.videolan.org/developers/libbluray.html" @@ -32,4 +32,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="e1360ad08aa6cc67a80efa81a09004faebbe31105f1961494f82f655e3e7378b198ee3bc534b0d0c2bfec726939b11b545cc8bbfa30794fc647432dadf71089b libbluray-1.0.2.tar.bz2" +sha512sums="0a3bcef06d2a58c51c3d46934c32941ec0606dc9b71fe36f72a6e34ab8113cf72cfb6e2fdd51f23e0a44ccd404323f5ac5c666aa1d839ae16cc775267cbce839 libbluray-1.1.1.tar.bz2" diff --git a/user/libcroco/APKBUILD b/user/libcroco/APKBUILD index 5365445f7..0ed8d4685 100644 --- a/user/libcroco/APKBUILD +++ b/user/libcroco/APKBUILD @@ -1,7 +1,7 @@ # Maintainer: pkgname=libcroco -pkgver=0.6.12 -pkgrel=2 +pkgver=0.6.13 +pkgrel=0 pkgdesc="GNOME CSS 2 parsing and manipulation toolkit" url="https://gitlab.gnome.org/GNOME/libcroco" arch="all" @@ -11,8 +11,7 @@ subpackages="$pkgname-dev" depends= makedepends="glib-dev libxml2-dev" checkdepends="cmd:which" -source="https://download.gnome.org/sources/$pkgname/0.6/$pkgname-$pkgver.tar.xz - CVE-2017-7960.patch" +source="https://download.gnome.org/sources/$pkgname/0.6/$pkgname-$pkgver.tar.xz" # secfixes: # 0.6.12-r2: @@ -38,5 +37,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="af9a171d5ccded255b57f170576e67155f12fa0f61ab3e379e907975f77afc37e82e22772c6019b2897cffc15b2425faf3ccfda92b1a45b23eda2519debabeb6 libcroco-0.6.12.tar.xz -da26b95808d7f06c15afed306fac2a80012413bf96ad2cd249c7420a6f41a02d76abeb80b94705f24414f1986084aa4d864fd82038274f664fa91b31fbcabd30 CVE-2017-7960.patch" +sha512sums="038a3ac9d160a8cf86a8a88c34367e154ef26ede289c93349332b7bc449a5199b51ea3611cebf3a2416ae23b9e45ecf8f9c6b24ea6d16a5519b796d3c7e272d4 libcroco-0.6.13.tar.xz" diff --git a/user/libcroco/CVE-2017-7960.patch b/user/libcroco/CVE-2017-7960.patch deleted file mode 100644 index 4561392c0..000000000 --- a/user/libcroco/CVE-2017-7960.patch +++ /dev/null @@ -1,58 +0,0 @@ -From 898e3a8c8c0314d2e6b106809a8e3e93cf9d4394 Mon Sep 17 00:00:00 2001 -From: Ignacio Casal Quinteiro <qignacio@amazon.com> -Date: Sun, 16 Apr 2017 13:13:43 +0200 -Subject: [PATCH] input: check end of input before reading a byte - -When reading bytes we weren't check that the index wasn't -out of bound and this could produce an invalid read which -could deal to a security bug. ---- - src/cr-input.c | 11 +++++++++-- - 1 file changed, 9 insertions(+), 2 deletions(-) - -diff --git a/src/cr-input.c b/src/cr-input.c -index 49000b1..3b63a88 100644 ---- a/src/cr-input.c -+++ b/src/cr-input.c -@@ -256,7 +256,7 @@ cr_input_new_from_uri (const gchar * a_file_uri, enum CREncoding a_enc) - *we should free buf here because it's own by CRInput. - *(see the last parameter of cr_input_new_from_buf(). - */ -- buf = NULL ; -+ buf = NULL; - } - - cleanup: -@@ -404,6 +404,8 @@ cr_input_get_nb_bytes_left (CRInput const * a_this) - enum CRStatus - cr_input_read_byte (CRInput * a_this, guchar * a_byte) - { -+ gulong nb_bytes_left = 0; -+ - g_return_val_if_fail (a_this && PRIVATE (a_this) - && a_byte, CR_BAD_PARAM_ERROR); - -@@ -413,6 +415,12 @@ cr_input_read_byte (CRInput * a_this, guchar * a_byte) - if (PRIVATE (a_this)->end_of_input == TRUE) - return CR_END_OF_INPUT_ERROR; - -+ nb_bytes_left = cr_input_get_nb_bytes_left (a_this); -+ -+ if (nb_bytes_left < 1) { -+ return CR_END_OF_INPUT_ERROR; -+ } -+ - *a_byte = PRIVATE (a_this)->in_buf[PRIVATE (a_this)->next_byte_index]; - - if (PRIVATE (a_this)->nb_bytes - -@@ -477,7 +485,6 @@ cr_input_read_char (CRInput * a_this, guint32 * a_char) - if (*a_char == '\n') { - PRIVATE (a_this)->end_of_line = TRUE; - } -- - } - - return status; --- -2.17.1 - diff --git a/user/libdc1394/0001-Fix-bad-variable-type-uint-int.patch b/user/libdc1394/0001-Fix-bad-variable-type-uint-int.patch deleted file mode 100644 index c2a572857..000000000 --- a/user/libdc1394/0001-Fix-bad-variable-type-uint-int.patch +++ /dev/null @@ -1,37 +0,0 @@ -From 9d0c3158bc73292ca755477f60cbf5b5fd622fde Mon Sep 17 00:00:00 2001 -From: Damien Douxchamps <ddsf@douxchamps.net> -Date: Thu, 12 Jan 2017 16:47:27 +0900 -Subject: [PATCH] Fix bad variable type uint -> int - -Type was change to uint in recent commit but it should have been INT. - -Signed-off-by: Damien Douxchamps <ddsf@douxchamps.net> ---- - libdc1394/AUTHORS | 1 + - libdc1394/dc1394/bayer.c | 3 ++- - 2 files changed, 3 insertions(+), 1 deletion(-) - -diff --git a/libdc1394/dc1394/bayer.c b/libdc1394/dc1394/bayer.c -index 10a4c1b..cbdc417 100644 ---- a/dc1394/bayer.c -+++ b/dc1394/bayer.c -@@ -24,6 +24,7 @@ - #include <limits.h> - #include <math.h> - #include <stdlib.h> -+#include <stdint.h> - #include <string.h> - #include "conversions.h" - -@@ -775,7 +776,7 @@ dc1394_bayer_Downsample(const uint8_t *restrict bayer, uint8_t *restrict rgb, in - { - uint8_t *outR, *outG, *outB; - register int i, j; -- uint tmp; -+ int tmp; - int st=sx*sy; - int p; - int sx2=sx<<1; --- -2.11.0 - diff --git a/user/libdc1394/APKBUILD b/user/libdc1394/APKBUILD index 8bed91739..d36d55a47 100644 --- a/user/libdc1394/APKBUILD +++ b/user/libdc1394/APKBUILD @@ -1,8 +1,8 @@ # Contributor: Natanael Copa <ncopa@alpinelinux.org> # Maintainer: pkgname=libdc1394 -pkgver=2.2.5 -pkgrel=4 +pkgver=2.2.6 +pkgrel=0 pkgdesc="Programming interface to control FireWire / IIDC cameras" url="https://damien.douxchamps.net/ieee1394/libdc1394/" arch="all" @@ -12,9 +12,7 @@ depends="" depends_dev="libusb-dev libraw1394-dev" makedepends="$depends_dev linux-headers" subpackages="$pkgname-dev $pkgname-doc" -source="https://downloads.sourceforge.net/project/libdc1394/libdc1394-2/$pkgver/libdc1394-$pkgver.tar.gz - 0001-Fix-bad-variable-type-uint-int.patch - " +source="https://downloads.sourceforge.net/project/libdc1394/libdc1394-2/$pkgver/libdc1394-$pkgver.tar.gz" build() { cd "$builddir" @@ -34,5 +32,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="4a02560b7b2db7199b91c35786cb9d5af51398795fc1b7f0cb577d3563b27c0d03d407fa472d9756a2f87b658350a55d29c16fef401a74f835ba86e25214d13c libdc1394-2.2.5.tar.gz -ab19b1aecec17b1caa6b225f626b6adcf80818cb59f693df69e9f0f2b4014846be22aa93473a62da8c7ae937ea8265f90499a9561d48e6bfe931e1e00cb16c60 0001-Fix-bad-variable-type-uint-int.patch" +sha512sums="2d60ed1054da67d8518e870193b60c1d79778858f48cc6487e252de00cc57a08548515d41914a37d0227d29e158d68892c290f83930ffd95f4a483dce5aa3d25 libdc1394-2.2.6.tar.gz" diff --git a/user/libdrm/APKBUILD b/user/libdrm/APKBUILD index f85bdcac5..d3d8bbccc 100644 --- a/user/libdrm/APKBUILD +++ b/user/libdrm/APKBUILD @@ -1,6 +1,6 @@ # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=libdrm -pkgver=2.4.96 +pkgver=2.4.98 pkgrel=0 pkgdesc="Userspace interface to kernel DRM services" url="https://dri.freedesktop.org/" @@ -19,7 +19,6 @@ source="https://dri.freedesktop.org/$pkgname/$pkgname-$pkgver.tar.bz2 " build() { - cd "$builddir" ./configure \ --build=$CBUILD \ --host=$CHOST \ @@ -34,14 +33,12 @@ build() { } check() { - cd "$builddir" make check } package() { - cd "$builddir" make DESTDIR="$pkgdir" install } -sha512sums="008cb7658d953b44e11fa3cc6e00dfeb3efb59c7fdadd59f7066101aff138acbbc2f2508e9ebe0528340e39dc7693937755d1641816ddde135c10a13e7d81e3b libdrm-2.4.96.tar.bz2 +sha512sums="3d333d060ceb14fa8e204ef468ca2c95d6f07205185ca90a044b685832b9b2d7256faa5e81d5871ce8b70aa1fdf9fb1ade18b4e582ff0c7ef5551da8506eb27b libdrm-2.4.98.tar.bz2 af52fef51aaa05a4dd17919371cb9d92a77480402730bf53ba223e54df52f3825be05a7f28e6aef8c904db5ee59fe38a6c15bc6aafa7f8d31a719e80399dd51f ioctl.patch" diff --git a/user/libebml/APKBUILD b/user/libebml/APKBUILD index e9aad6680..03b2e73d7 100644 --- a/user/libebml/APKBUILD +++ b/user/libebml/APKBUILD @@ -1,7 +1,7 @@ # Contributor: Timo Teräs <timo.teras@iki.fi> # Maintainer: pkgname=libebml -pkgver=1.3.6 +pkgver=1.3.9 pkgrel=0 pkgdesc="Library to parse Extensible Binary Meta-Language files" url="https://www.matroska.org/" @@ -29,4 +29,4 @@ package() { make install DESTDIR="$pkgdir" } -sha512sums="6a31a56dcde39642848f25353a462f4621d6cfd3bc9ef62add1b00d098c6a80b3c2b50ecf4d6dd50650c609eb39a6150c6d1b69ea3a77a3928bd3300af7dd91f libebml-1.3.6.tar.xz" +sha512sums="a388fa8ff7acf9a0fb33faf9c00fc07f53794d86a4f894e04e2a690a24e781a7f380a0896e607e801a6f1f0b215407ee09a801e96d4b3e15f39ca71ec3a6d64e libebml-1.3.9.tar.xz" diff --git a/user/libetpan/APKBUILD b/user/libetpan/APKBUILD index 386ec21e5..474c2d67c 100644 --- a/user/libetpan/APKBUILD +++ b/user/libetpan/APKBUILD @@ -1,21 +1,21 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=libetpan -pkgver=1.9.2 +pkgver=1.9.3 pkgrel=0 pkgdesc="Mail library for C" url="https://www.etpan.org/libetpan.html" arch="all" license="BSD-3-Clause" depends="" -depends_dev="" -makedepends="$depends_dev autoconf automake libtool - cyrus-sasl-dev db-dev expat-dev openssl-dev zlib-dev" +makedepends="autoconf automake cyrus-sasl-dev db-dev expat-dev libtool + openssl-dev zlib-dev" subpackages="$pkgname-dev" -source="libetpan-$pkgver.tar.gz::https://github.com/dinhviethoa/libetpan/archive/$pkgver.tar.gz" +source="libetpan-$pkgver.tar.gz::https://github.com/dinhviethoa/libetpan/archive/$pkgver.tar.gz + missing-header.patch + " build() { - cd "$builddir" ./autogen.sh \ --build=$CBUILD \ --host=$CHOST \ @@ -27,13 +27,12 @@ build() { } check() { - cd "$builddir" make check } package() { - cd "$builddir" make DESTDIR="$pkgdir" install } -sha512sums="3e2e1de77fae2212374e909d15ed8564eee90883c38fee0ca69f58785733b1ac2df848da1bda6f55577d647e0ad27bc3057199e70b6ef01f2a7e2823b24113ba libetpan-1.9.2.tar.gz" +sha512sums="66e504fbf82445819845a3f1dcb8dc48ad2440993134d43752c754463cee2434a30080718687cd05c579f0da8df6b0f6dfc7572f2882d0dd9dfd327b4ae11fd6 libetpan-1.9.3.tar.gz +df0ba883c9328b7cab408a54f38e6f9c7f5f603b0f016b7ea2e9fa49aa4118ff6723218bb9942f278028291e1c7e9da0bb1d48ab2c471b0ddf5edc3e78a8a1df missing-header.patch" diff --git a/user/libetpan/missing-header.patch b/user/libetpan/missing-header.patch new file mode 100644 index 000000000..603048962 --- /dev/null +++ b/user/libetpan/missing-header.patch @@ -0,0 +1,32 @@ +From da9fd7839c9affea48f74a159a789fbb183b4be1 Mon Sep 17 00:00:00 2001 +From: maxice8 <30738253+maxice8@users.noreply.github.com> +Date: Fri, 1 Feb 2019 01:58:08 -0200 +Subject: [PATCH] add missing stddef.h include for 'NULL' (#322) + +clientid.c: In function 'mailimap_clientid': +clientid.c:66:38: error: 'NULL' undeclared (first use in this function) + if (mailimap_read_line(session) == NULL) + ^~~~ +clientid.c:66:38: note: 'NULL' is defined in header '<stddef.h>'; did you forget to '#include <stddef.h>'? +clientid.c:39:1: ++#include <stddef.h> + +clientid.c:66:38: + if (mailimap_read_line(session) == NULL) +--- + src/low-level/imap/clientid.c | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/src/low-level/imap/clientid.c b/src/low-level/imap/clientid.c +index 1c346379..38880dd3 100644 +--- a/src/low-level/imap/clientid.c ++++ b/src/low-level/imap/clientid.c +@@ -33,6 +33,8 @@ + # include <config.h> + #endif + ++#include <stdlib.h> ++ + #include "mailimap_sender.h" + #include "clientid_sender.h" + #include "clientid.h" diff --git a/user/libexecinfo/APKBUILD b/user/libexecinfo/APKBUILD index 3f1040343..2c357a177 100644 --- a/user/libexecinfo/APKBUILD +++ b/user/libexecinfo/APKBUILD @@ -10,7 +10,7 @@ license="BSD-2-Clause" depends="" makedepends="" subpackages="$pkgname-dev" -source="http://distcache.freebsd.org/local-distfiles/itetcu/$pkgname-$pkgver.tar.bz2 +source="https://distcache.freebsd.org/local-distfiles/itetcu/$pkgname-$pkgver.tar.bz2 10-execinfo.patch 20-define-gnu-source.patch 30-linux-makefile.patch diff --git a/user/libfakekey/APKBUILD b/user/libfakekey/APKBUILD new file mode 100644 index 000000000..d8221c552 --- /dev/null +++ b/user/libfakekey/APKBUILD @@ -0,0 +1,43 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=libfakekey +pkgver=0.3 +pkgrel=0 +pkgdesc="Library for faking X key-presses from character inputs" +url="https://www.yoctoproject.org/software-item/matchbox/" +arch="all" +license="LGPL-2.0+" +depends="" +makedepends="libx11-dev libxtst-dev" +subpackages="$pkgname-dev" +source="http://git.yoctoproject.org/cgit.cgi/libfakekey/snapshot/libfakekey-$pkgver.tar.gz" + +prepare() { + cd "$builddir" + default_prepare + autoreconf -vif +} + +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="9c09007c6ab616095bdf69669cfdf0d176d44beaeb6b2a0fe8e310bb835d3f241ca7499dcb523c1eeeb24968ef908c1951f97352da419fc1bbb3883cb43dd963 libfakekey-0.3.tar.gz" diff --git a/user/libfm-extra/APKBUILD b/user/libfm-extra/APKBUILD index 18a9ddb73..775b4d322 100644 --- a/user/libfm-extra/APKBUILD +++ b/user/libfm-extra/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=libfm-extra -pkgver=1.3.0.2 +pkgver=1.3.1 pkgrel=0 pkgdesc="Library for generating menu caches" url="https://wiki.lxde.org/en/PCManFM" @@ -33,4 +33,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="179cc0350509cb1a8a60b89f8145169857926c7cc3dadb9f61078d4dba79709b248b3d05862e78c11747f1fc4e45825ad6f4916d423ae5e346e5274d34197445 libfm-1.3.0.2.tar.xz" +sha512sums="f385cf7bf2f4800c11dd6474cd20009cbe1208f1d08570b61954ea8bd84c56cc49880cbf84d4b2aa4b91eb6929d017ebc427649391059b786d7e6fc4535e4f14 libfm-1.3.1.tar.xz" diff --git a/user/libfm/APKBUILD b/user/libfm/APKBUILD index fc1021a8e..ad75ec5d9 100644 --- a/user/libfm/APKBUILD +++ b/user/libfm/APKBUILD @@ -2,19 +2,21 @@ # Maintainer: pkgname=libfm pkgver=1.3.1 -pkgrel=0 +pkgrel=1 pkgdesc="Library for file management" url="https://wiki.lxde.org/en/PCManFM" arch="all" license="GPL-2.0+" makedepends="dbus-glib-dev glib-dev gtk+2.0-dev intltool libexif-dev - menu-cache-dev udisks2-dev" + libfm-extra-dev menu-cache-dev udisks2-dev" subpackages="$pkgname-dev $pkgname-doc $pkgname-lang" -replaces="libfm-extra" -source="https://downloads.sourceforge.net/pcmanfm/$pkgname-$pkgver.tar.xz" +source="https://downloads.sourceforge.net/pcmanfm/$pkgname-$pkgver.tar.xz + without-extra.patch + " build() { cd "$builddir" + mv data/libfm.conf data/libfm.conf.sample ./configure \ --prefix=/usr \ --sysconfdir=/etc \ @@ -33,9 +35,5 @@ package() { make DESTDIR="$pkgdir" install } -dev() { - default_dev - replaces="libfm-extra-dev" -} - -sha512sums="f385cf7bf2f4800c11dd6474cd20009cbe1208f1d08570b61954ea8bd84c56cc49880cbf84d4b2aa4b91eb6929d017ebc427649391059b786d7e6fc4535e4f14 libfm-1.3.1.tar.xz" +sha512sums="f385cf7bf2f4800c11dd6474cd20009cbe1208f1d08570b61954ea8bd84c56cc49880cbf84d4b2aa4b91eb6929d017ebc427649391059b786d7e6fc4535e4f14 libfm-1.3.1.tar.xz +776559307e796309a0a68173292d4ce91c3a241a0e8310a04a96856949677f2f7f8527ae463e4438d635ebe93676dda923a2deed5b76aba007b00093e3a5a109 without-extra.patch" diff --git a/user/libfm/without-extra.patch b/user/libfm/without-extra.patch new file mode 100644 index 000000000..c6e86d5e7 --- /dev/null +++ b/user/libfm/without-extra.patch @@ -0,0 +1,75 @@ +--- libfm-1.3.1/Makefile.in.old 2018-12-17 19:18:43.000000000 +0000 ++++ libfm-1.3.1/Makefile.in 2019-06-04 01:33:11.797284687 +0000 +@@ -461,7 +461,7 @@ + docs/reference/libfm/version.xml.in + + pkgconfigdir = $(libdir)/pkgconfig +-pkgconfig_DATA = libfm-extra.pc $(am__append_5) ++pkgconfig_DATA = $(am__append_5) + @EXTRALIB_ONLY_FALSE@SUBDIRS = $(DIST_SUBDIRS) $(am__append_3) + @EXTRALIB_ONLY_TRUE@SUBDIRS = src $(am__append_3) + DISTCHECK_CONFIGURE_FLAGS = --enable-gtk-doc +--- libfm-1.3.1/data/Makefile.in.old 2018-12-17 19:18:43.000000000 +0000 ++++ libfm-1.3.1/data/Makefile.in 2019-06-04 01:38:26.663631036 +0000 +@@ -406,7 +406,7 @@ + mime_DATA = libfm.xml + libfmconfdir = $(sysconfdir)/xdg/libfm + libfmconf_DATA = \ +- libfm.conf \ ++ libfm.conf.sample \ + $(NULL) + + desktop_in_files = \ +--- libfm-1.3.1/src/Makefile.in.old 2018-12-17 19:18:44.000000000 +0000 ++++ libfm-1.3.1/src/Makefile.in 2019-06-04 01:35:34.592026293 +0000 +@@ -909,14 +909,14 @@ + @EXTRALIB_ONLY_FALSE@ gtk/fm-thumbnail.h \ + @EXTRALIB_ONLY_FALSE@ $(NULL) + +-LIBFM_EXTRA_INCLUDES = \ +- fm-extra.h \ +- fm-version.h \ +- extra/fm-xml-file.h \ +- $(NULL) ++@EXTRALIB_ONLY_TRUE@LIBFM_EXTRA_INCLUDES = \ ++@EXTRALIB_ONLY_TRUE@ fm-extra.h \ ++@EXTRALIB_ONLY_TRUE@ fm-version.h \ ++@EXTRALIB_ONLY_TRUE@ extra/fm-xml-file.h \ ++@EXTRALIB_ONLY_TRUE@ $(NULL) + + EXTRA_LTLIBRARIES = libfm-gtk.la libfm-gtk3.la +-@EXTRALIB_ONLY_FALSE@lib_LTLIBRARIES = libfm-extra.la libfm.la @LIBFM_GTK_LTLIBRARIES@ ++@EXTRALIB_ONLY_FALSE@lib_LTLIBRARIES = libfm.la @LIBFM_GTK_LTLIBRARIES@ + @EXTRALIB_ONLY_TRUE@lib_LTLIBRARIES = libfm-extra.la + libfm_la_SOURCES = \ + $(libfm_SOURCES) \ +@@ -1059,7 +1059,7 @@ + @ENABLE_DEMO_TRUE@ $(GTK_LIBS) \ + @ENABLE_DEMO_TRUE@ $(INTLLIBS) \ + @ENABLE_DEMO_TRUE@ libfm.la \ +-@ENABLE_DEMO_TRUE@ libfm-extra.la \ ++@ENABLE_DEMO_TRUE@ -lfm-extra \ + @ENABLE_DEMO_TRUE@ @LIBFM_GTK_LTLIBRARIES@ \ + @ENABLE_DEMO_TRUE@ $(NULL) + +--- libfm-1.3.1/src/modules/Makefile.in.old 2018-12-17 19:18:44.000000000 +0000 ++++ libfm-1.3.1/src/modules/Makefile.in 2019-06-04 01:37:50.457501640 +0000 +@@ -180,8 +180,7 @@ + $(gtk_menu_trash_la_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) \ + -o $@ + @ENABLE_GTK_TRUE@am_gtk_menu_trash_la_rpath = -rpath $(pkglibdir) +-vfs_menu_la_DEPENDENCIES = $(am__DEPENDENCIES_1) \ +- $(top_builddir)/src/libfm-extra.la ++vfs_menu_la_DEPENDENCIES = $(am__DEPENDENCIES_1) + vfs_menu_la_SOURCES = vfs-menu.c + vfs_menu_la_OBJECTS = vfs_menu_la-vfs-menu.lo + vfs_menu_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ +@@ -459,7 +458,7 @@ + + # module-specific parameters + vfs_menu_la_CFLAGS = $(MENU_CACHE_CFLAGS) -I$(top_srcdir)/src/extra +-vfs_menu_la_LIBADD = $(MENU_CACHE_LIBS) $(top_builddir)/src/libfm-extra.la ++vfs_menu_la_LIBADD = $(MENU_CACHE_LIBS) -lfm-extra + gtk_fileprop_x_desktop_la_CFLAGS = $(GTK_CFLAGS) -I$(top_srcdir)/src/gtk + gtk_fileprop_x_desktop_la_LIBADD = $(GTK_LIBS) + gtk_fileprop_x_shortcut_la_CFLAGS = $(GTK_CFLAGS) -I$(top_srcdir)/src/gtk diff --git a/user/libfontenc/APKBUILD b/user/libfontenc/APKBUILD index 666a58e81..98813ad25 100644 --- a/user/libfontenc/APKBUILD +++ b/user/libfontenc/APKBUILD @@ -1,7 +1,7 @@ # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=libfontenc -pkgver=1.1.3 -pkgrel=4 +pkgver=1.1.4 +pkgrel=0 pkgdesc="X11 font encoding library" url="https://www.X.Org/" arch="all" @@ -12,7 +12,6 @@ subpackages="$pkgname-dev" source="https://www.X.Org/releases/individual/lib/$pkgname-$pkgver.tar.bz2" build() { - cd "$builddir" ./configure \ --build=$CBUILD \ --host=$CHOST \ @@ -24,13 +23,11 @@ build() { } check() { - cd "$builddir" make check } package() { - cd "$builddir" make DESTDIR="$pkgdir" install } -sha512sums="7346079a6980464f57f5da0e96025bbf4b13fbb7ed976b58d9c54b78525d9d0b4174b4783326a12048971cf5d05221bafe2f41c6b02931743913719cde21740c libfontenc-1.1.3.tar.bz2" +sha512sums="76fa851d00113241f15fdd5b5bb7e927b8d8b9a82ce3fcb0678b8c7e32cb5e8d898c4bda1d60dafb7748145049d3240627ac34a2360c64e98a7a912ea7c30582 libfontenc-1.1.4.tar.bz2" diff --git a/user/libfs/APKBUILD b/user/libfs/APKBUILD index fd242d2f0..f6bfcb5cb 100644 --- a/user/libfs/APKBUILD +++ b/user/libfs/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=libfs -pkgver=1.0.7 +pkgver=1.0.8 pkgrel=0 pkgdesc="X11 Font Server client library" url="https://www.X.Org/" @@ -11,11 +11,10 @@ depends="xtrans" depends_dev="util-macros" makedepends="$depends_dev xorgproto-dev" subpackages="$pkgname-dev $pkgname-doc" -source="https://www.x.org/releases/individual/lib/libFS-$pkgver.tar.bz2" +source="https://www.X.Org/releases/individual/lib/libFS-$pkgver.tar.bz2" builddir="$srcdir/libFS-$pkgver" build() { - cd "$builddir" ./configure \ --build=$CBUILD \ --host=$CHOST \ @@ -27,13 +26,11 @@ build() { } check() { - cd "$builddir" make check } package() { - cd "$builddir" make DESTDIR="$pkgdir" install } -sha512sums="3596e87710c14706ab345377799e9b2dbab79500fd75b4213f9615bf7db7df3265b4dbc65fdeca9d32343b848013780cfa1a43e76229665ce80246332bb8b96f libFS-1.0.7.tar.bz2" +sha512sums="466198ae5c0b83e3579713d86ddfd0b039f5c5b511cf6d5dc0e9664ee2d40aec9e8929445c8e97394d85faf76a7cf2f81bddb13d23de7ce19919e3b1e36ba56f libFS-1.0.8.tar.bz2" diff --git a/user/libgda/APKBUILD b/user/libgda/APKBUILD index e585373cb..0e0c0731a 100644 --- a/user/libgda/APKBUILD +++ b/user/libgda/APKBUILD @@ -4,7 +4,7 @@ pkgname=libgda pkgver=5.2.8 pkgrel=0 pkgdesc="GNOME Database Access library" -url="http://www.gnome-db.org/" +url="https://www.gnome-db.org/" arch="all" options="!check" # "Disk I/O error" in multi-threaded. all others pass license="GPL-2.0+ AND LGPL-2.0+" diff --git a/user/libglade/APKBUILD b/user/libglade/APKBUILD new file mode 100644 index 000000000..97d20f603 --- /dev/null +++ b/user/libglade/APKBUILD @@ -0,0 +1,43 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=libglade +pkgver=2.6.4 +pkgrel=0 +pkgdesc="GUI construction toolkit for GTK+ 2" +url="https://gnome.org" +arch="all" +license="LGPL-2.0+ AND GPL-2.0+" +depends="" +makedepends="gtk+2.0-dev libxml2-dev" +subpackages="$pkgname-dev $pkgname-doc" +source="https://download.gnome.org/sources/libglade/${pkgver%.*}/libglade-$pkgver.tar.bz2" + +prepare() { + cd "$builddir" + update_config_sub + default_prepare +} + +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="b725842febaf4c1f0d305a629ae1c61ea2de24dd6f41937e806c078fada2cea483195ef40f5238ce2045e47130c92559e984f677de667b840dd7fff0f8559735 libglade-2.6.4.tar.bz2" diff --git a/user/libgnome-keyring/APKBUILD b/user/libgnome-keyring/APKBUILD new file mode 100644 index 000000000..030194fc5 --- /dev/null +++ b/user/libgnome-keyring/APKBUILD @@ -0,0 +1,39 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=libgnome-keyring +pkgver=3.12.0 +pkgrel=0 +pkgdesc="Gnome library for secure authentication storage" +url="https://gnome.org" +arch="all" +options="!check" # Test suite requires py-dbus. +license="GPL-2.0+ AND LGPL-2.1+ AND LGPL-2.0+" +depends="" +makedepends="dbus-dev dbus-glib-dev gobject-introspection-dev intltool + libgcrypt-dev" +subpackages="$pkgname-dev $pkgname-doc" +source="https://download.gnome.org/sources/libgnome-keyring/${pkgver%.*}/libgnome-keyring-$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="dd1777b6e0dd774feb86dbc72d9f2a85f2143e2772a09c438b84aec468ddc5e7ee5ebd534d24f079e5daf4757f2918d0621e26fb671fde0fcef9c74d30f8b9bd libgnome-keyring-3.12.0.tar.xz" diff --git a/user/libgphoto2/APKBUILD b/user/libgphoto2/APKBUILD index 7bd75969d..59cd04e35 100644 --- a/user/libgphoto2/APKBUILD +++ b/user/libgphoto2/APKBUILD @@ -1,6 +1,6 @@ # Maintainer: pkgname=libgphoto2 -pkgver=2.5.22 +pkgver=2.5.23 pkgrel=0 pkgdesc="Digital camera library" url="http://www.gphoto.org" @@ -46,4 +46,4 @@ package() { "$pkgdir/lib/udev/rules.d/54-gphoto.rules" } -sha512sums="8f02c460324c115810f56a9408ecba7aabb801947249c1ee79f0f0a1db1d785d34992508232bad7af112aed2dfc6b213365cee694dd0e7d5edf4072c63fa01cb libgphoto2-2.5.22.tar.bz2" +sha512sums="f5f8f33e934989e6f832952c6c7c2c9e37c436652a08191e8ccced293447a090cb596fff80b9b0ad52c99c0ffc08a1207ca7ef2b630dc52f4c6d7f86e4cbc95a libgphoto2-2.5.23.tar.bz2" diff --git a/user/libgsf/APKBUILD b/user/libgsf/APKBUILD index 086da1e6c..b0916d3da 100644 --- a/user/libgsf/APKBUILD +++ b/user/libgsf/APKBUILD @@ -1,6 +1,6 @@ # Maintainer: pkgname=libgsf -pkgver=1.14.45 +pkgver=1.14.46 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="2e993150b6fec336a14fd85d5c631e4a3b43187039dab0cba3b8badf62873f39814392db92bb737b92aa9a6d8b4ba41f1fb248c1fe07b88cddd28ded5e4d9ebd libgsf-1.14.45.tar.xz" +sha512sums="130331f63d48455cc2ce60756e2ac703f8a7f5fa8f1243d9d9321fb87e01bf1d616d085d100a3e5d1cf34fb851ffb77bc642aff6c674ace167b9aa117f4fb1b0 libgsf-1.14.46.tar.xz" diff --git a/user/libgtop/APKBUILD b/user/libgtop/APKBUILD new file mode 100644 index 000000000..ea17925e3 --- /dev/null +++ b/user/libgtop/APKBUILD @@ -0,0 +1,37 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=libgtop +pkgver=2.40.0 +pkgrel=0 +pkgdesc="Gnome library for system monitoring" +url="https://gnome.org" +arch="all" +license="GPL-2.0+ AND GPL-2.0-only" +depends="" +makedepends="glib-dev" +subpackages="$pkgname-dev $pkgname-doc $pkgname-lang" +source="https://download.gnome.org/sources/libgtop/${pkgver%.*}/libgtop-$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="a9b2135796d7e41c63a6621f672c385d1baeb74d4af3e55c9164aaaae18c66a8a76b09a6ae8b37f89f120092123c38830e0da840c6613a09035ea62339117861 libgtop-2.40.0.tar.xz" diff --git a/user/libical/APKBUILD b/user/libical/APKBUILD index 7a27c56d4..4d03d3c27 100644 --- a/user/libical/APKBUILD +++ b/user/libical/APKBUILD @@ -1,7 +1,7 @@ # Maintainer: pkgname=libical -pkgver=3.0.4 -pkgrel=2 +pkgver=3.0.5 +pkgrel=0 pkgdesc="Reference implementation of the iCalendar format" url="https://libical.github.io/libical/" arch="all" @@ -18,7 +18,8 @@ build() { cmake \ -DCMAKE_INSTALL_PREFIX=/usr \ -DCMAKE_INSTALL_LIBDIR=lib \ - -DSHARED_ONLY=true + -DSHARED_ONLY=true \ + -DENABLE_GTK_DOC=OFF make } @@ -32,4 +33,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="491a1dd0c33bb823a79165eb6e4f86ef048a44642adfe44f8e69c83598b458ddf8e4365b11afc37d0b21bc1367e0a99096fc7887aae29e7ff4e3bd1cdee64dd9 libical-3.0.4.tar.gz" +sha512sums="9bf24b535864f66ea0b8d52d902d15fbfd20efbc480b5188ecd1b3d4aafdba063219763f99a8c30413964f7a024c7a902bade6bc40224bc59a438e672f65d656 libical-3.0.5.tar.gz" diff --git a/user/libinput/APKBUILD b/user/libinput/APKBUILD index 76b3f44f7..d6b413fa9 100644 --- a/user/libinput/APKBUILD +++ b/user/libinput/APKBUILD @@ -1,37 +1,34 @@ # Contributor: Sören Tempel <soeren+alpine@soeren-tempel.net> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=libinput -pkgver=1.12.3 +pkgver=1.13.1 pkgrel=0 pkgdesc="Library for handling input devices" url="https://www.freedesktop.org/wiki/Software/libinput/" arch="all" +options="!check" # wow, such broken license="MIT" -makedepends="eudev-dev libevdev-dev libwacom-dev meson mtdev-dev" +makedepends="doxygen eudev-dev graphviz libevdev-dev libwacom-dev meson + mtdev-dev ninja py3-recommonmark py3-sphinx py3-sphinx-rtd-theme" 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=false \ -Dlibwacom=true \ -Ddebug-gui=false \ - -Dtests=true builddir/ + -Dtests=false builddir/ ninja -C builddir/ } check() { - cd "$builddir" ninja -C builddir/ test } package() { - cd "$builddir" DESTDIR="$pkgdir" ninja -C builddir/ install install -Dm644 COPYING "$pkgdir"/usr/share/licenses/$pkgname/COPYING } -sha512sums="cdc512cb53442ae85d5a23e10db9dd3548bcca0de24d7fcc48954a60773563d84d9b10278b6a693ade95d0789bb5d42bbb8b7cf1c178fe85401cb09a5402ff02 libinput-1.12.3.tar.xz" +sha512sums="a19deec802e704038df0901c103a82a3370f56e0299f4cc1b6aa84c1832a66fb638e6f9d0fa708b51df6c3b939cdc1271e4ff547c645c566be03dce0bc9ff7e0 libinput-1.13.1.tar.xz" diff --git a/user/libkdcraw/APKBUILD b/user/libkdcraw/APKBUILD index 099fb8c0a..647587860 100644 --- a/user/libkdcraw/APKBUILD +++ b/user/libkdcraw/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=libkdcraw -pkgver=18.12.3 +pkgver=19.04.1 pkgrel=0 pkgdesc="RAW image file format support for KDE" url="https://www.KDE.org/" @@ -39,4 +39,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="ecd6f8a013e160221644d84b6ed1befc9b45da23ed90bd98eb857bd4c5bb0172c6c7bc0eec5c688d8fa212c67f869c4fbf317a4cbd4abf3762e18c62d0c0d440 libkdcraw-18.12.3.tar.xz" +sha512sums="835419e536d4d226e57c850cda49762e2fa6033ca3ba759b8d6048eb8a5354c89d56e29721fd7e24866b307993243ea8eb14621c7945ce61f650bec0fc845a00 libkdcraw-19.04.1.tar.xz" diff --git a/user/libkdegames/APKBUILD b/user/libkdegames/APKBUILD index 769fdda19..5ca21ecaf 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.12.3 +pkgver=19.04.1 pkgrel=0 pkgdesc="Library for common routines shared between KDE games" url="https://www.kde.org/applications/games/" @@ -58,4 +58,4 @@ carddecks() { mv "$pkgdir"/usr/share/carddecks "$subpkgdir"/usr/share/ } -sha512sums="12a9cdec2ab2defd337695c3f6d44664d5c187b34e4eed3ab9497f4fd3a8d1450e296699504464572265cc68d4ff5916a4ba86400024b0044335b25a09969c3e libkdegames-18.12.3.tar.xz" +sha512sums="273eff7f23afd7a3937153a6e79ae5fb0fa0f02b650120b67bc958e840803b5014cc1e530a1874fd3816acd13c58d40311c90b8d4b94d7c464468d1e83fae1fa libkdegames-19.04.1.tar.xz" diff --git a/user/libkeduvocdocument/APKBUILD b/user/libkeduvocdocument/APKBUILD index cb7f858cf..888592a12 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.12.3 +pkgver=19.04.1 pkgrel=0 pkgdesc="Library for manipulating KVTML files" url="https://www.kde.org/" @@ -40,4 +40,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="e19a6fceab68e4056cbe7ec1625c3849fe824bec6a809ddfb68d4b0dede377f869e4c4019e2ff03ebb0eaf29b2042e9af69cf798802e29c5aa43bbc235492055 libkeduvocdocument-18.12.3.tar.xz" +sha512sums="e56d79694bbb1d6a20977232152b4416983b2899429ec3124161bbefa361d7e5551e0e341a361771fe6cc7c69da4084853ecde560762c53fcea574f31f512b3f libkeduvocdocument-19.04.1.tar.xz" diff --git a/user/libkexiv2/APKBUILD b/user/libkexiv2/APKBUILD index 463ef365d..5f92ac3b9 100644 --- a/user/libkexiv2/APKBUILD +++ b/user/libkexiv2/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=libkexiv2 -pkgver=18.12.3 +pkgver=19.04.1 pkgrel=0 pkgdesc="KDE integration with Exiv2 EXIF data library" url="https://www.KDE.org/" @@ -39,4 +39,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="ce2bab29a1059e4be498472b2713e813c8eb5ace4cd928eeff3c6e50a656afda651a57a3877d9388163096e575c897f4f84eee914db101cb8dcd1eb614242898 libkexiv2-18.12.3.tar.xz" +sha512sums="c3738afe3d72bd499d92d1846245d65adcf7fd1074ac1ca5a64dda5bcaef20202c5a8e2372d69a0e493e2097a38bb9099ea6a1e1f5ae3adec03e3dc54fa732d0 libkexiv2-19.04.1.tar.xz" diff --git a/user/libkipi/APKBUILD b/user/libkipi/APKBUILD index f8fc34da0..641510f7e 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.12.3 +pkgver=19.04.1 pkgrel=0 pkgdesc="KDE Image Plugin Interface library" url="https://www.digikam.org/" @@ -36,4 +36,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="85597e17c40c959416d81804a3d01ac7acc2fdb9706db82e28aab1e302511238e4861dae7cd23a08f2900df7d3ba8e506ade689f89d5e8949e6cc8378492430c libkipi-18.12.3.tar.xz" +sha512sums="61fce9229bbc586529e328f70c99768584c2ae4f0a508c52370fd8741aecb582901c7eba7000eb2d0fd30119fb7fd58f7f7f3803c19f56d95d9da835b3aa7593 libkipi-19.04.1.tar.xz" diff --git a/user/libkleo/APKBUILD b/user/libkleo/APKBUILD index 841a3d944..155b4d458 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.12.3 +pkgver=19.04.1 pkgrel=0 pkgdesc="KDE encryption library" url="https://www.kde.org/" @@ -13,7 +13,9 @@ depends_dev="qt5-qtbase-dev boost-dev gpgme-dev libgpg-error-dev ki18n-dev kwidg makedepends="$depends_dev cmake extra-cmake-modules kcompletion-dev kconfig-dev kcodecs-dev kcoreaddons-dev kpimtextedit-dev kwindowsystem-dev" subpackages="$pkgname-dev $pkgname-lang" -source="https://download.kde.org/stable/applications/$pkgver/src/libkleo-$pkgver.tar.xz" +source="https://download.kde.org/stable/applications/$pkgver/src/libkleo-$pkgver.tar.xz + egregious-versions.patch + " build() { cd "$builddir" @@ -41,4 +43,5 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="de7348f2d8aae0d250613fcb7f0fb92e9c9aa979d1457e95e4a3908fddb69ea59f1d70311f24c4affce61c64b638dc95901c80b9d6a4ae019dfb115012a9b348 libkleo-18.12.3.tar.xz" +sha512sums="790d9723e0177491de36f102f1f77e01e955c9c13a2c8bef50365ab9cfaa810ac69c4291c8c27dae9e5b7f8e589cb7f83b031ad1f88c6039a4f51ff5104380a0 libkleo-19.04.1.tar.xz +d7b661a243c533123af0e97bcebdabb9f2d9fd67c7ae10ae91484de68ebca2b2aa7c745a9d2d33955631b22487c21491671b42cafb803f7d0cc4af731317319d egregious-versions.patch" diff --git a/user/libkleo/egregious-versions.patch b/user/libkleo/egregious-versions.patch new file mode 100644 index 000000000..d32f12d03 --- /dev/null +++ b/user/libkleo/egregious-versions.patch @@ -0,0 +1,22 @@ +libKleo uses no new APIs. + +--- libkleo-19.04.0/CMakeLists.txt.old 2019-04-12 00:16:32.000000000 +0000 ++++ libkleo-19.04.0/CMakeLists.txt 2019-04-19 06:31:09.576149789 +0000 +@@ -3,7 +3,7 @@ + + project(libkleo VERSION ${PIM_VERSION}) + +-set(KF5_MIN_VERSION "5.56.0") ++set(KF5_MIN_VERSION "5.54.0") + + find_package(ECM ${KF5_MIN_VERSION} CONFIG REQUIRED) + set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH}) +@@ -24,7 +24,7 @@ + + + set(LIBKLEO_LIB_VERSION ${PIM_VERSION}) +-set(QT_REQUIRED_VERSION "5.10.0") ++set(QT_REQUIRED_VERSION "5.9.0") + set(KDEPIMTEXTEDIT_VERSION "5.11.1") + + find_package(Qt5 ${QT_REQUIRED_VERSION} CONFIG REQUIRED Widgets) diff --git a/user/libkmahjongg/APKBUILD b/user/libkmahjongg/APKBUILD index 44b2e9067..dc618ce16 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.12.3 +pkgver=19.04.1 pkgrel=0 pkgdesc="Library with Mah Jongg logic" url="https://www.kde.org/" @@ -40,4 +40,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="c4e2b36be5a3ca0987503593136cbfcccef3cc9db914132b6fe121b5979d786d78f6ffefb0567f4e0ec1e3a52b4c1a3eab474d6286fda0b13b24188e32a3d869 libkmahjongg-18.12.3.tar.xz" +sha512sums="fd0b4525d7994594240a438b52ad94914a58d5406503024fa7a9b1ac69cb1eba13ac9e1730583ce94a55ed73ea2091e8d7198efc5f057255d958db15dc742b41 libkmahjongg-19.04.1.tar.xz" diff --git a/user/libksane/APKBUILD b/user/libksane/APKBUILD index 7a2b13670..233c52a2c 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.12.3 +pkgver=19.04.1 pkgrel=0 pkgdesc="KDE scanning library" url="https://www.kde.org" @@ -12,7 +12,9 @@ depends_dev="sane-dev" makedepends="$depends_dev cmake extra-cmake-modules qt5-qtbase-dev ki18n-dev ktextwidgets-dev kwallet-dev kwidgetsaddons-dev" subpackages="$pkgname-dev $pkgname-lang" -source="https://download.kde.org/stable/applications/$pkgver/src/libksane-$pkgver.tar.xz" +source="https://download.kde.org/stable/applications/$pkgver/src/libksane-$pkgver.tar.xz + frameworks.patch + " build() { cd "$builddir" @@ -40,4 +42,5 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="af14a341275d70a0b3af3c93270bbadecfcd2cce4df0ab077aaa967f8bec8fce292b7fcb190f8b3b43d05bf5fea70f4cae7716df1d62b5950cbbe7d9e3ce3e49 libksane-18.12.3.tar.xz" +sha512sums="ee7b102a313b844a027461bb16cf7c283916b2df07a8bd76e29488f34cc6215f7dde6834a172a626dd3be941759cfffab4dd961338d0b78a5358109ae1234b7b libksane-19.04.1.tar.xz +60e0e8b073499e932d626a65c5cc23f58d2701921da547733d2736b58c6d412c8d6e782884916390ff16e02183a53ad283712f0bcf2cdcf5a0eb0d7029bb1ba8 frameworks.patch" diff --git a/user/libksane/frameworks.patch b/user/libksane/frameworks.patch new file mode 100644 index 000000000..f44ad09db --- /dev/null +++ b/user/libksane/frameworks.patch @@ -0,0 +1,11 @@ +--- libksane-19.04.0/CMakeLists.txt.old 2019-04-12 00:06:29.000000000 +0000 ++++ libksane-19.04.0/CMakeLists.txt 2019-04-18 22:42:00.675733179 +0000 +@@ -26,7 +26,7 @@ + include(KDECMakeSettings) + include(GenerateExportHeader) + +-set(KF5_VERSION "5.55.0") ++set(KF5_VERSION "5.54.0") + + ecm_setup_version( + ${KF5_VERSION} diff --git a/user/libmatekbd/APKBUILD b/user/libmatekbd/APKBUILD new file mode 100644 index 000000000..f7ea8d723 --- /dev/null +++ b/user/libmatekbd/APKBUILD @@ -0,0 +1,38 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=libmatekbd +pkgver=1.22.0 +pkgrel=0 +pkgdesc="Keyboard libraries for the MATE desktop environment" +url="https://mate-desktop.org" +arch="all" +license="LGPL-2.0+" +depends="" +makedepends="gobject-introspection-dev gtk+3.0-dev intltool libice-dev + libxklavier-dev" +subpackages="$pkgname-dev $pkgname-lang" +source="https://pub.mate-desktop.org/releases/${pkgver%.*}/libmatekbd-$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="79f19455bb6c0df5a50e445907ac12d6bd92a54cd086e0303890bc67350de3d94b2fd665efdaec85f84a42d76af430ad0a1b9639da078179ac25d27c4a325281 libmatekbd-1.22.0.tar.xz" diff --git a/user/libmatemixer/APKBUILD b/user/libmatemixer/APKBUILD new file mode 100644 index 000000000..a3b1fc797 --- /dev/null +++ b/user/libmatemixer/APKBUILD @@ -0,0 +1,51 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=libmatemixer +pkgver=1.22.0 +pkgrel=0 +pkgdesc="Sound mixer library for the MATE desktop environment" +url="https://mate-desktop.org" +arch="all" +license="LGPL-2.0+" +depends="" +makedepends="alsa-lib-dev intltool pulseaudio-dev" +subpackages="$pkgname-dev $pkgname-doc $pkgname-lang $pkgname-alsa $pkgname-pulse" +source="https://pub.mate-desktop.org/releases/${pkgver%.*}/libmatemixer-$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 +} + +alsa() { + pkgdesc="$pkgdesc (ALSA backend)" + install_if="$pkgname=$pkgver-r$pkgrel alsa-lib" + mkdir -p "$subpkgdir"/usr/lib/$pkgname + mv "$pkgdir"/usr/lib/$pkgname/$pkgname-alsa.so "$subpkgdir"/usr/lib/$pkgname +} + +pulse() { + pkgdesc="$pkgdesc (PulseAudio backend)" + install_if="$pkgname=$pkgver-r$pkgrel pulseaudio" + mkdir -p "$subpkgdir"/usr/lib/$pkgname + mv "$pkgdir"/usr/lib/$pkgname/$pkgname-pulse.so "$subpkgdir"/usr/lib/$pkgname +} + +sha512sums="6eaa006142601c077ac70739e637273288a4b9713dfc4179341c4832ae4e3b362e92104e150132ee274224d6c5dc057d812b7e1814e49a7690581de6d81e0db8 libmatemixer-1.22.0.tar.xz" diff --git a/user/libmateweather/APKBUILD b/user/libmateweather/APKBUILD new file mode 100644 index 000000000..3d6f9573d --- /dev/null +++ b/user/libmateweather/APKBUILD @@ -0,0 +1,37 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=libmateweather +pkgver=1.22.0 +pkgrel=0 +pkgdesc="Weather library for the MATE desktop environment" +url="https://mate-desktop.org" +arch="all" +license="LGPL-2.1+ AND GPL-2.0+" +depends="" +makedepends="gtk+3.0-dev intltool libsoup-dev libxml2-dev libxml2-utils" +subpackages="$pkgname-dev $pkgname-doc $pkgname-lang" +source="https://pub.mate-desktop.org/releases/${pkgver%.*}/libmateweather-$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="43371fc615dda2b9042633a63ac4c1fb0b1ea43b20c783e443b0f57e10ad8fddedbd593f03bd6c942729f0a9c80484266fe1ef900d128fa4b02f80d6a80ae9bd libmateweather-1.22.0.tar.xz" diff --git a/user/libmatroska/APKBUILD b/user/libmatroska/APKBUILD index ea56219a2..6a8ea1f9d 100644 --- a/user/libmatroska/APKBUILD +++ b/user/libmatroska/APKBUILD @@ -1,7 +1,7 @@ # Contributor: Timo Teräs <timo.teras@iki.fi> # Maintainer: pkgname=libmatroska -pkgver=1.4.9 +pkgver=1.5.2 pkgrel=0 pkgdesc="Library to parse Matroska files" url="https://www.matroska.org/" @@ -29,4 +29,4 @@ package() { make install DESTDIR="$pkgdir" } -sha512sums="281224b66ce7ef39daf0f186cda1144250e190b914e64f4f2524e8bf0170a3d18dbc50f204d4ca8d7eaffe183a61f96c92ba6ec4325bacb068272d62cdbcef33 libmatroska-1.4.9.tar.xz" +sha512sums="122b71b91ae89e2a7cc89db17655a006248d58f18d913b4f9ffc885aef7e39681a3a16eed43cd8ecd949c570a939007797c79829f5ee87d08562aee3f0224ba2 libmatroska-1.5.2.tar.xz" diff --git a/user/libmbim/APKBUILD b/user/libmbim/APKBUILD new file mode 100644 index 000000000..8c7142fe8 --- /dev/null +++ b/user/libmbim/APKBUILD @@ -0,0 +1,35 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: A. Wilcox <awilfox@adelielinux.org> +pkgname=libmbim +pkgver=1.18.2 +pkgrel=0 +pkgdesc="Library for interfacing with WWAN modems" +url="https://www.freedesktop.org/wiki/Software/libmbim/" +arch="all" +license="GPL-2.0+ AND LGPL-2.0+" +depends="" +makedepends="glib-dev libgudev-dev" +subpackages="$pkgname-dev $pkgname-doc" +source="https://www.freedesktop.org/software/libmbim/libmbim-$pkgver.tar.xz" + +build() { + ./configure \ + --build=$CBUILD \ + --host=$CHOST \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --localstatedir=/var \ + --disable-more-warnings + make +} + +check() { + make check +} + +package() { + make DESTDIR="$pkgdir" install +} + +sha512sums="2da289f60d2fb9678f969b591f8addc724bef8c2780011e62567a9ade2ebc71bc4dd76e54f93335aa475e65c733e3628d9f2f96f81f8797ec809042c046eb828 libmbim-1.18.2.tar.xz" diff --git a/user/libmpeg2/APKBUILD b/user/libmpeg2/APKBUILD index f72f51e93..f24035f54 100644 --- a/user/libmpeg2/APKBUILD +++ b/user/libmpeg2/APKBUILD @@ -1,25 +1,26 @@ # Maintainer: pkgname=libmpeg2 pkgver=0.5.1 -pkgrel=9 +pkgrel=10 pkgdesc="Library for decoding MPEG-1 and MPEG-2 video streams" url="http://libmpeg2.sourceforge.net/" arch="all" license="GPL-2.0+ AND LGPL-2.0+" subpackages="$pkgname-dev $pkgname-doc mpeg2dec" makedepends="libx11-dev libice-dev libsm-dev libxext-dev libxv-dev" -source="https://distfiles.gentoo.org/distfiles/libmpeg2-$pkgver.tar.gz +source="http://distfiles.gentoo.org/distfiles/libmpeg2-$pkgver.tar.gz arm-private-symbols.patch arm-textrel.patch + altivec.patch " prepare() { update_config_sub default_prepare + autoreconf -vif } build() { - cd "$builddir" ./configure \ --build=$CBUILD \ --host=$CHOST \ @@ -33,12 +34,10 @@ build() { } check() { - cd "$builddir" make check } package() { - cd "$builddir" make DESTDIR="$pkgdir" install } @@ -50,4 +49,5 @@ mpeg2dec() { sha512sums="3648a2b3d7e2056d5adb328acd2fb983a1fa9a05ccb6f9388cc686c819445421811f42e8439418a0491a13080977f074a0d8bf8fa6bc101ff245ddea65a46fbc libmpeg2-0.5.1.tar.gz 334e4e0b1e2877311503d2907f4f65c26d6a83ee79308c49697b2f3d2b8da9ac665e19ab419d85a944eaa34e1d43f512d1418a372cd444381d66f71df2a92c83 arm-private-symbols.patch -888b8b4f90ece7f8dcd54895c36e2a93471de167f83cddc67d6943baf9e7ea19abd31ab055f6805629a2e176a1057e18de6a053fdea69cec90483a5165efa9c9 arm-textrel.patch" +888b8b4f90ece7f8dcd54895c36e2a93471de167f83cddc67d6943baf9e7ea19abd31ab055f6805629a2e176a1057e18de6a053fdea69cec90483a5165efa9c9 arm-textrel.patch +d985e832cf0d10f6f63f3ac0140bddb3c4bd92c44c09a99ec1bd195f36d69b01a14a020ab7ce6d6c154439d4d006cd5da1fa23dbf2c694a1f2e6b1793c8d416e altivec.patch" diff --git a/user/libmpeg2/altivec.patch b/user/libmpeg2/altivec.patch new file mode 100644 index 000000000..7edfaa344 --- /dev/null +++ b/user/libmpeg2/altivec.patch @@ -0,0 +1,16 @@ +--- a/configure.ac.bak 2010-05-25 17:12:14.756245990 +0000 ++++ b/configure.ac 2010-05-25 17:11:51.629581723 +0000 +@@ -79,11 +79,10 @@ + CFLAGS="$OPT_CFLAGS $TRY_CFLAGS $CFLAGS" + AC_MSG_CHECKING([if <altivec.h> is needed]) + AC_TRY_COMPILE([], +- [typedef vector int t; +- vec_ld(0, (unsigned char *)0);], ++ [vector int t; t = vec_add(t,t);], + [have_altivec=yes; AC_MSG_RESULT(no)], + [AC_TRY_COMPILE([#include <altivec.h>], +- [typedef vector int t; vec_ld(0, (unsigned char *)0);], ++ [vector int t; t = vec_add(t,t);], + [AC_DEFINE([HAVE_ALTIVEC_H],, + [Define to 1 if you have the <altivec.h> header.]) + have_altivec=yes; AC_MSG_RESULT(yes)], diff --git a/user/libndp/APKBUILD b/user/libndp/APKBUILD new file mode 100644 index 000000000..0ea72e6d4 --- /dev/null +++ b/user/libndp/APKBUILD @@ -0,0 +1,34 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: A. Wilcox <awilfox@adelielinux.org> +pkgname=libndp +pkgver=1.7 +pkgrel=0 +pkgdesc="Library for IPv6 Neighbour Discovery Protocol" +url="http://libndp.org/" +arch="all" +license="LGPL-2.1-only" +depends="" +makedepends="" +subpackages="$pkgname-dev $pkgname-doc" +source="http://libndp.org/files/libndp-$pkgver.tar.gz" + +build() { + ./configure \ + --build=$CBUILD \ + --host=$CHOST \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --localstatedir=/var + make +} + +check() { + make check +} + +package() { + make DESTDIR="$pkgdir" install +} + +sha512sums="4aadaf6d7d8b9e57983cba17ce92715cceef6635613c4c5326decb97fb575ce5f5d5586a629645e3605a03e385c6481bfb6c4458216be2bbd36959af62783790 libndp-1.7.tar.gz" diff --git a/user/libnice/APKBUILD b/user/libnice/APKBUILD index 15c544c34..d7ab8cdb8 100644 --- a/user/libnice/APKBUILD +++ b/user/libnice/APKBUILD @@ -6,10 +6,10 @@ pkgrel=0 pkgdesc="GLib-based Interactive Connectivity Establishment (ICE) library" url="https://nice.freedesktop.org/wiki/" arch="all" +options="!check" # test-send-recv fails on 32-bit platforms license="MPL-1.1 AND LGPL-2.1-only" depends="" -depends_dev="glib-dev" -makedepends="$depends_dev gobject-introspection-dev gstreamer-dev openssl-dev" +makedepends="glib-dev gobject-introspection-dev gstreamer-dev openssl-dev" subpackages="$pkgname-dev $pkgname-doc" source="https://nice.freedesktop.org/releases/libnice-$pkgver.tar.gz dont-error-on-socket-close.patch diff --git a/user/libnotify/APKBUILD b/user/libnotify/APKBUILD index 21b1ee48d..ad021ad4f 100644 --- a/user/libnotify/APKBUILD +++ b/user/libnotify/APKBUILD @@ -1,33 +1,25 @@ # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=libnotify -pkgver=0.7.7 -pkgrel=2 +pkgver=0.7.8 +pkgrel=0 pkgdesc="Desktop notification library" url="https://developer.gnome.org/notification-spec/" arch="all" options="!check" # Test suite requires running X11 license="LGPL-2.1+" depends="" -depends_dev="dbus-dev" -makedepends="$depends_dev gdk-pixbuf-dev glib-dev autoconf automake - gobject-introspection-dev" +makedepends="gdk-pixbuf-dev glib-dev gobject-introspection-dev gtk-doc + gtk+3.0-dev meson ninja" subpackages="$pkgname-dev $pkgname-doc" source="https://download.gnome.org/sources/${pkgname}/${pkgver%.*}/${pkgname}-${pkgver}.tar.xz" build() { - cd "$builddir" - ./configure \ - --build=$CBUILD \ - --host=$CHOST \ - --prefix=/usr \ - --disable-static \ - --disable-tests - make + meson --prefix=/usr builddir/ + ninja -C builddir/ } package() { - cd "$builddir" - make DESTDIR="$pkgdir" install + DESTDIR="$pkgdir" ninja -C builddir/ install } -sha512sums="133874114407bf12267ef609f5941657181760bc7cf115c5973b1810cb72bf55072b621c143e32be1e7e8b49f244851925d14bc3f9f26457747b8a8695ee9954 libnotify-0.7.7.tar.xz" +sha512sums="9973d7a1af5dd7cfbaa0d0d2c9e72a40df9d814967fde47e95763a69690cc4ed32ecf713d75f91f3dff99a693eff9dab963be124e0530ebf231d517a44e75e94 libnotify-0.7.8.tar.xz" diff --git a/user/libopenraw/APKBUILD b/user/libopenraw/APKBUILD index e06f1637d..b29becc3f 100644 --- a/user/libopenraw/APKBUILD +++ b/user/libopenraw/APKBUILD @@ -4,22 +4,19 @@ pkgname=libopenraw pkgver=0.1.3 pkgrel=0 pkgdesc="Library for decoding RAW camera image formats" -url="https://libopenraw.freedesktop.org/wiki/" +url="https://libopenraw.freedesktop.org/" 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 \ @@ -31,12 +28,11 @@ build() { } check() { - cd "$builddir" make check } package() { - cd "$builddir" make DESTDIR="$pkgdir" install } +sha512sums="c56d84610f0cf5da970c4c0c791fccf2f7e9f7c7dacf2aeac0b2702ce9a0cd3aaa2f6db0794b0466e1dd8316771973db1e64d013f635c1166b7ff2eebdcbf029 libopenraw-0.1.3.tar.bz2" diff --git a/user/libpeas/APKBUILD b/user/libpeas/APKBUILD new file mode 100644 index 000000000..942d22442 --- /dev/null +++ b/user/libpeas/APKBUILD @@ -0,0 +1,39 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=libpeas +pkgver=1.22.0 +pkgrel=0 +pkgdesc="GObject-based plugin framework" +url="https://gnome.org" +arch="all" +license="LGPL-2.1+" +depends="" +makedepends="intltool glib-dev gobject-introspection-dev gtk+3.0-dev + py3-pygobject py3-pygobject-dev python3-dev" +subpackages="$pkgname-dev $pkgname-doc $pkgname-lang" +langdir="/usr/lib/locale" +source="https://download.gnome.org/sources/libpeas/${pkgver%.*}/libpeas-$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="9c1da1d4b5688c0f4d0647f3519dbfbed94c8921091057aaef0e41bf5ed3f8faf04a49ce9e4eea3fd7bf4ac4dfa1727d76a5f6dae2a4f52228d4c8c74b420c91 libpeas-1.22.0.tar.xz" diff --git a/user/libpng/APKBUILD b/user/libpng/APKBUILD index e3504e859..ec109c15a 100644 --- a/user/libpng/APKBUILD +++ b/user/libpng/APKBUILD @@ -1,7 +1,7 @@ # Contributor: Carlo Landmeter <clandmeter@gmail.com> # Maintainer: pkgname=libpng -pkgver=1.6.36 +pkgver=1.6.37 pkgrel=0 pkgdesc="Portable Network Graphics library" url="http://www.libpng.org/" @@ -55,6 +55,6 @@ utils() { mv "$pkgdir"/usr/bin "$subpkgdir"/usr } -sha512sums="8b9c54c5555d6a736eaf298cbbae1e08199001202bacabc6212d75fa619e2ecf06bcf36db0321bfdb90a3dc5cde361c8d951002701637a557c34eae80f5d0936 libpng-1.6.36.tar.gz -8fa213204768b058459ffd5eae6b3661c3f185d3baf1913da4337e7b7855e567f2525e7f67411c32fa8cb177a5f93d538c3d0ce17a94d4aa71bd9cffabe8b311 libpng-1.6.36-apng.patch.gz +sha512sums="2ce2b855af307ca92a6e053f521f5d262c36eb836b4810cb53c809aa3ea2dcc08f834aee0ffd66137768a54397e28e92804534a74abb6fc9f6f3127f14c9c338 libpng-1.6.37.tar.gz +226adcb3a8c60f2267fe2976ab531329ae43c2603dab4d0cf8f16217d64069936b879f3d6516b75d259c47d6f5c5b1f24f887602206c8e46abde0fb7f5c7946b libpng-1.6.37-apng.patch.gz e3fae918f14bc34e7c126892f69527c6e1b4d72593835ece839d9a28cff55a886b2030f877cf9e29b2c97abf2e47bbb5ba54584828edd2a841c2556f330b9c7e libpng-fix-arm-neon.patch" diff --git a/user/libpsl/APKBUILD b/user/libpsl/APKBUILD index 9f4e97f9e..38ba69198 100644 --- a/user/libpsl/APKBUILD +++ b/user/libpsl/APKBUILD @@ -1,7 +1,7 @@ # Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> # Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> pkgname=libpsl -pkgver=0.20.2 +pkgver=0.21.0 pkgrel=0 pkgdesc="C library for examining the Public Suffix List" url="https://rockdaboot.github.io/libpsl" @@ -34,5 +34,5 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="fa9f6f7f0447d9fe00f5dfca5262c56ff26217eea44d0f7fc1e5d982224c41874e753f0aa06dd9e5d7d03d4f04e3dacd4f36034cc8dd0fc6e2c28b49a23e62fe libpsl-0.20.2.tar.gz +sha512sums="165c4f0b0640a813d512bd916e1532e32e43c8c81a5efd048f3a5b07b1b3c9129b4c4b5008b8b11a7c1b3914caea17564321389cd350bf1d687d53a97f2afa4d libpsl-0.21.0.tar.gz 00c9c09bac334efcd7ae6240b740ac88453425cc380cc23b443a0579f4ccabf86eafdb90f5f05027cc55ee20f6c1d4388939792a55cd95705d5e6919d40b30e5 use-python3.patch" diff --git a/user/libqmatrixclient/APKBUILD b/user/libqmatrixclient/APKBUILD index 6d8a0ad5d..7dbe67024 100644 --- a/user/libqmatrixclient/APKBUILD +++ b/user/libqmatrixclient/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=libqmatrixclient -pkgver=0.4.0 +pkgver=0.5.1.2 pkgrel=0 pkgdesc="Library to interface with Matrix chat systems using Qt 5" url="https://matrix.org/docs/projects/sdk/libqmatrixclient.html" @@ -9,12 +9,11 @@ arch="all" license="LGPL-2.1+" depends="" depends_dev="qt5-qtbase-dev" -makedepends="$depends_dev cmake" +makedepends="$depends_dev cmake qt5-qtmultimedia-dev" subpackages="$pkgname-dev" -source="libqmatrixclient-$pkgver.tar.gz::https://github.com/QMatrixClient/libqmatrixclient/archive/v$pkgver.tar.gz" +source="libqmatrixclient-$pkgver.tar.gz::https://github.com/QMatrixClient/libqmatrixclient/archive/$pkgver.tar.gz" build() { - cd "$builddir" if [ "$CBUILD" != "$CHOST" ]; then CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux" fi @@ -30,13 +29,11 @@ build() { } check() { - cd "$builddir" CTEST_OUTPUT_ON_FAILURE=TRUE ctest } package() { - cd "$builddir" make DESTDIR="$pkgdir" install } -sha512sums="552b866ef4adbde72518f96b42beb08dc99f80ff0388717e99c4287c463db21469d91e188b3d5c17850266ea313a36fed0cd01431f08632e3d1403f3b7725e40 libqmatrixclient-0.4.0.tar.gz" +sha512sums="4e7cac3cc6a1ffc2a5a5ebf5c38dec72c3293f96b56d533838dea745a9b0de9a1ab14da666efcdad4f7d7a70279b922a0dbb3a3e26d1ad83f5b98d04fc9912a2 libqmatrixclient-0.5.1.2.tar.gz" diff --git a/user/libqmi/APKBUILD b/user/libqmi/APKBUILD new file mode 100644 index 000000000..f747cdd65 --- /dev/null +++ b/user/libqmi/APKBUILD @@ -0,0 +1,35 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: A. Wilcox <awilfox@adelielinux.org> +pkgname=libqmi +pkgver=1.22.4 +pkgrel=0 +pkgdesc="Library for interfacing with Qualcomm modems" +url="https://www.freedesktop.org/wiki/Software/libqmi/" +arch="all" +license="LGPL-2.0+" +depends="" +makedepends="glib-dev libgudev-dev python3" +subpackages="$pkgname-dev $pkgname-doc" +source="https://www.freedesktop.org/software/libqmi/libqmi-$pkgver.tar.xz" + +build() { + ./configure \ + --build=$CBUILD \ + --host=$CHOST \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --localstatedir=/var \ + --disable-more-warnings + make +} + +check() { + make check +} + +package() { + make DESTDIR="$pkgdir" install +} + +sha512sums="eaa17cb7a19c73db0e1c50c714dab73ad5f97d85de86b74135085ecf31d048b80f2476509139832327925eeca97bee24e18bab33d87e814fe9b7f190ee823a34 libqmi-1.22.4.tar.xz" diff --git a/user/libsecret/APKBUILD b/user/libsecret/APKBUILD index 4fc79e95b..cb883270e 100644 --- a/user/libsecret/APKBUILD +++ b/user/libsecret/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=libsecret -pkgver=0.18.7 +pkgver=0.18.8 pkgrel=0 pkgdesc="Library for storing and retrieving passphrases" url="https://wiki.gnome.org/Projects/Libsecret" @@ -15,7 +15,6 @@ subpackages="$pkgname-dev $pkgname-doc $pkgname-lang" source="https://ftp.acc.umu.se/pub/gnome/sources/libsecret/0.18/libsecret-$pkgver.tar.xz" build() { - cd "$builddir" ./configure \ --build=$CBUILD \ --host=$CHOST \ @@ -27,13 +26,11 @@ build() { } check() { - cd "$builddir" make check } package() { - cd "$builddir" make DESTDIR="$pkgdir" install } -sha512sums="a8890ec52dcfba585fd665ee89e81f4a1d6a04b67bcf4f3422f27973a4ef6fc1281bf54e92160d39dd696ae08a633bab5fe25c1124baf32eb5b414e98ddfa084 libsecret-0.18.7.tar.xz" +sha512sums="9e2ec8d458af6ed078bf3c6d956599f73f2cc7720332c424e9aede1f77f3d969c5122cf7b70899bc07ad96a3a628bf79bc5fffa88274d1ef2bcaaca6719f90d4 libsecret-0.18.8.tar.xz" diff --git a/user/libshout/APKBUILD b/user/libshout/APKBUILD index 5e0f491b5..f3b9e2796 100644 --- a/user/libshout/APKBUILD +++ b/user/libshout/APKBUILD @@ -1,8 +1,8 @@ # Contributor: Francesco Colista <fcolista@alpinelinux.org> # Maintainer: pkgname=libshout -pkgver=2.4.1 -pkgrel=2 +pkgver=2.4.2 +pkgrel=0 pkgdesc="Library for accessing a Icecast server" url="http://www.icecast.org/" arch="all" @@ -29,4 +29,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="4d4b958947e020de3330d49d39d59220fc89315f25f653a7456b9aa24ca9566fca30bb3d65e6348e79958656096b6b864ea8885157d24e55c8d84d6604670219 libshout-2.4.1.tar.gz" +sha512sums="ae4b042009887de22d105eb8238f4362f6ff51bd645fd51b5a87c4b5e3f5fdc99e9f99f85c24ae2e9d23eab92b854a7e733bf9f8cc61a8362ce984f02a014e93 libshout-2.4.2.tar.gz" diff --git a/user/libsoup/APKBUILD b/user/libsoup/APKBUILD index b69b2ea55..65c1d4edc 100644 --- a/user/libsoup/APKBUILD +++ b/user/libsoup/APKBUILD @@ -1,38 +1,32 @@ # Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> # Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> pkgname=libsoup -pkgver=2.64.2 +pkgver=2.66.2 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" + gobject-introspection-dev glib-networking meson ninja krb5-dev" +subpackages="$pkgname-dev $pkgname-lang" +source="https://download.gnome.org/sources/libsoup/${pkgver%.*}/libsoup-$pkgver.tar.xz" build() { - cd "$builddir" - ./configure \ - --build=$CBUILD \ - --host=$CHOST \ - --prefix=/usr \ - --sysconfdir=/etc \ - --mandir=/usr/share/man \ - --localstatedir=/var - make + mkdir -p "$builddir"/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 } -sha512sums="c001495be4e1eafd169b904431b22e961b52f5a3202f2e75b0657281cbfd91153148765bd95378bba3e85a66d7eaca428750641f20c07ca3232d1f9bdabdc90f libsoup-2.64.2.tar.xz" +sha512sums="1df443470239f23d22301e37e36f3d34963352ee0122f317cd15b19d90115831091bddcee27bc6f0d4994adcf4e5bd9c0395de2bd7f39ae305ba0edea7789092 libsoup-2.66.2.tar.xz" diff --git a/user/libssh2/APKBUILD b/user/libssh2/APKBUILD index 9497d8ace..cb6e11f97 100644 --- a/user/libssh2/APKBUILD +++ b/user/libssh2/APKBUILD @@ -1,8 +1,8 @@ # Contributor: William Pitcock <nenolod@dereferenced.org> # Maintainer: pkgname=libssh2 -pkgver=1.8.0 -pkgrel=2 +pkgver=1.8.2 +pkgrel=0 pkgdesc="Library for accessing SSH servers" url="https://libssh2.org/" arch="all" @@ -12,11 +12,6 @@ makedepends_host="openssl-dev zlib-dev" subpackages="$pkgname-dev $pkgname-doc" source="https://libssh2.org/download/libssh2-$pkgver.tar.gz" -prepare() { - cd "$builddir" - update_config_sub -} - build() { cd "$builddir" ./configure \ @@ -42,4 +37,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="289aa45c4f99653bebf5f99565fe9c519abc204feb2084b47b7cc3badc8bf4ecdedd49ea6acdce8eb902b3c00995d5f92a3ca77b2508b92f04ae0e7de7287558 libssh2-1.8.0.tar.gz" +sha512sums="390ab4ad93bb738415ec11a6eb92806c9b9e9e5d8ee7c442d841a58b4292c1c447a9bc99e153ba464e2e11f9c0d1913469303598c3046722d1ae821991e8cb93 libssh2-1.8.2.tar.gz" diff --git a/user/libtap/APKBUILD b/user/libtap/APKBUILD index 0c47e0468..b8a992768 100644 --- a/user/libtap/APKBUILD +++ b/user/libtap/APKBUILD @@ -1,27 +1,23 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=libtap -pkgver=1.12.0 +pkgver=1.14.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" +source="http://web-cpan.shlomifish.org/downloads/libtap-$pkgver.tar.xz" build() { - cd "$builddir" if [ "$CBUILD" != "$CHOST" ]; then CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux" fi cmake \ -DCMAKE_INSTALL_PREFIX=/usr \ - -DCMAKE_INSTALL_LIBDIR=lib \ -DBUILD_SHARED_LIBS=True \ -DCMAKE_BUILD_TYPE=RelWithDebugInfo \ -DCMAKE_CXX_FLAGS="$CXXFLAGS" \ @@ -31,13 +27,11 @@ build() { } check() { - cd "$builddir" CTEST_OUTPUT_ON_FAILURE=TRUE ctest } package() { - cd "$builddir" make DESTDIR="$pkgdir" install } -sha512sums="510f85a5b10525cf8b67a0bcc67213e43a9e752def5293fecbc97f7058d24256a85cd8ce8c0b408186ca676f3ca700ddbeea4c8c7558352665956b4233258d31 libtap-1.12.0.tar.bz2" +sha512sums="1d78f9ed5b554a7a9f8a2a6e3dcb30e09ba5bd4b98c77499e57599be615413f6c6dddb3dd498b6ac49a5449e54e1134a6a4816adaab5b993e3c0027edc2a2404 libtap-1.14.0.tar.xz" diff --git a/user/libtommath/APKBUILD b/user/libtommath/APKBUILD index 41e3a1ea1..826ecf131 100644 --- a/user/libtommath/APKBUILD +++ b/user/libtommath/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=libtommath -pkgver=1.1.0_rc1 +pkgver=1.1.0 pkgrel=0 pkgdesc="Theoretic multiple-precision integer library" url="https://www.libtom.net/LibTomMath/" @@ -14,18 +14,15 @@ source="https://github.com/libtom/libtommath/releases/download/v${pkgver/_/-}/lt builddir="$srcdir/$pkgname-${pkgver/_/-}" build() { - cd "$builddir" make PREFIX=/usr -f makefile.shared } check() { - cd "$builddir" make PREFIX=/usr -f makefile.shared test_standalone } package() { - cd "$builddir" make PREFIX=/usr DESTDIR="$pkgdir" -f makefile.shared install } -sha512sums="4cee5d59cd2eaf14591ee280dcdcdd5915f38584b7259b5752e7316cd1a9966f1c969ee3b64d136ae7044c5834cfc8c781db300ede503ec2e657083de3692fd2 ltm-1.1.0-rc1.tar.xz" +sha512sums="6d1b8b09d5b975a2b84ef6ab9cb1cc63db2f0503a906e499cb9d7eaba3f487be6e7f69bf692b188f888418c61ea563aa7e2411638d8979eac426b3d603ad1b91 ltm-1.1.0.tar.xz" diff --git a/user/libuninameslist/APKBUILD b/user/libuninameslist/APKBUILD index 1deffebdc..3b7102955 100644 --- a/user/libuninameslist/APKBUILD +++ b/user/libuninameslist/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=libuninameslist -pkgver=20180701 +pkgver=20190305 pkgrel=0 pkgdesc="Library of Unicode names and annotation data" url=" " @@ -13,7 +13,6 @@ subpackages="$pkgname-dev $pkgname-doc py3-uninameslist:py3:noarch" source="https://github.com/fontforge/libuninameslist/releases/download/$pkgver/libuninameslist-dist-$pkgver.tar.gz" build() { - cd "$builddir" PYTHON=python3 ./configure \ --build=$CBUILD \ --host=$CHOST \ @@ -25,12 +24,10 @@ build() { } check() { - cd "$builddir" make check } package() { - cd "$builddir" make DESTDIR="$pkgdir" install } @@ -41,4 +38,4 @@ py3() { python3 setup.py install --prefix=/usr --root="$subpkgdir" } -sha512sums="839f8a0c3a81b4b19ce6ddfa08fa9ca99fdcefe2ef2b2c5515b276fab594fb5325ae9c83b58e19c559c033e880bd098687022c8ec3da028b143f4a72c471f19c libuninameslist-dist-20180701.tar.gz" +sha512sums="4dc30a4f0919722c7538ed2eda39c3e63d072ee17c809ca25e0b6546d29110607c27c6e969839439c1432b4b40fca3e888c428ed26d1e0328a5f481a2db3cc73 libuninameslist-dist-20190305.tar.gz" diff --git a/user/libutempter/APKBUILD b/user/libutempter/APKBUILD index 058530412..3e8a0601e 100644 --- a/user/libutempter/APKBUILD +++ b/user/libutempter/APKBUILD @@ -3,7 +3,7 @@ pkgname=libutempter pkgver=1.1.6 pkgrel=1 pkgdesc="Library to record virtual terminal sessions in login files" -url="No URL" +url=" " arch="all" options="!check suid" # No test suite. license="LGPL-2.1+" diff --git a/user/libva/APKBUILD b/user/libva/APKBUILD index 83bfad60e..302e7c4f3 100644 --- a/user/libva/APKBUILD +++ b/user/libva/APKBUILD @@ -1,7 +1,7 @@ # Contributor: Carlo Landmeter <clandmeter@gmail.com> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=libva -pkgver=2.4.0 +pkgver=2.4.1 pkgrel=0 pkgdesc="Video Acceleration (VA) API for Linux" url="https://github.com/intel/libva" @@ -10,16 +10,13 @@ options="!check" # No test suite. license="MIT" depends="" depends_dev="mesa-dev" -makedepends="$depends_dev autoconf automake libtool" +makedepends="$depends_dev autoconf automake libtool cmd:which" subpackages="$pkgname-dev" -source="https://github.com/intel/${pkgname}/releases/download/${pkgver}/${pkgname}-${pkgver}.tar.bz2" +source="$pkgname-$pkgver.tar.gz::https://github.com/intel/$pkgname/archive/$pkgver.tar.gz" prepare() { default_prepare - # we need to regen the configure script which will unconditionally - # depend on wayland scanner otherwise - libtoolize --force && aclocal -I m4 && autoconf \ - && automake --add-missing + ./autogen.sh } build() { @@ -42,4 +39,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="67373e20932bca0d52cd8f48ed10c1f01752be73642ad4d2c85dcee813dccf205c8ca62fdc69fb3f4f83a685e2a8ef2c6646174e3453a8f5763cac16a58321c3 libva-2.4.0.tar.bz2" +sha512sums="6ad2255aebcc62b3a7f67f03585f8046742a8a9b33c0feaee7dc0a713ab2117b13f154c3574f98aa2fb07fd2336635df3ea2675ec4d1c25ae3b2834aeab8692e libva-2.4.1.tar.gz" diff --git a/user/libvdpau/APKBUILD b/user/libvdpau/APKBUILD index a8febe21a..6becf5507 100644 --- a/user/libvdpau/APKBUILD +++ b/user/libvdpau/APKBUILD @@ -1,20 +1,18 @@ # Contributor: Carlo Landmeter # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=libvdpau -pkgver=1.1.1 -pkgrel=2 +pkgver=1.2 +pkgrel=0 pkgdesc="Hardware-accelerated video playback library" url="https://cgit.freedesktop.org/~aplattner/libvdpau" arch="all" license="MIT" -depends= +depends="" makedepends="libx11-dev libxext-dev xorgproto-dev" -install= -subpackages="$pkgname-dev $pkgname-doc" -source="https://people.freedesktop.org/~aplattner/vdpau/${pkgname}-${pkgver}.tar.gz" +subpackages="$pkgname-dev" +source="https://gitlab.freedesktop.org/vdpau/libvdpau/uploads/14b620084c027d546fa0b3f083b800c6/libvdpau-1.2.tar.bz2" build() { - cd "$builddir" LIBS="-lX11" \ ./configure \ --build=$CBUILD \ @@ -27,15 +25,11 @@ build() { } check() { - cd "$builddir" make check } package() { - cd "$builddir" make DESTDIR="$pkgdir" install - install -d -m755 "${pkgdir}/usr/share/licenses/${pkgname}" - install -m644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/" } -sha512sums="e094494fc820c2395c9dbb4e69daa89334b9186e2ad1a6c06671c7f844568db191ce4d1d9df95c4536579864bcc8541eb6fd159c377bc73c228cdf2a0fea50fb libvdpau-1.1.1.tar.gz" +sha512sums="86aa3f2a39cb73a597bf417da2eeef73ff01160ed9f54dff3725785ff5a289f47040496de44e2f5292d59657d4746e369b3fa307c4f83a32f7cc28e4cd8bce6f libvdpau-1.2.tar.bz2" diff --git a/user/libvncserver/APKBUILD b/user/libvncserver/APKBUILD index 324da7fcb..0801da573 100644 --- a/user/libvncserver/APKBUILD +++ b/user/libvncserver/APKBUILD @@ -2,8 +2,8 @@ # Contributor: Natanael Copa <ncopa@alpinelinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=libvncserver -pkgver=0.9.11 -pkgrel=1 +pkgver=0.9.12 +pkgrel=0 pkgdesc="Library to make writing a vnc server easy" url="https://libvnc.github.io/" arch="all" @@ -14,8 +14,7 @@ depends_dev="libgcrypt-dev libjpeg-turbo-dev gnutls-dev libpng-dev libxi-dev libxinerama-dev libxrandr-dev libxtst-dev" makedepends="$depends_dev autoconf automake libtool" subpackages="$pkgname-dev" -source="https://github.com/LibVNC/libvncserver/archive/LibVNCServer-$pkgver.tar.gz - " +source="https://github.com/LibVNC/libvncserver/archive/LibVNCServer-$pkgver.tar.gz" builddir="$srcdir"/libvncserver-LibVNCServer-$pkgver # secfixes: @@ -23,31 +22,27 @@ builddir="$srcdir"/libvncserver-LibVNCServer-$pkgver # - CVE-2016-9941 # - CVE-2016-9942 -prepare() { - cd "$builddir" - default_prepare - ./autogen.sh -} - build() { - cd "$builddir" - ./configure \ - --build=$CBUILD \ - --host=$CHOST \ - --prefix=/usr \ - --disable-static + if [ "$CBUILD" != "$CHOST" ]; then + CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux" + fi + cmake \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DBUILD_SHARED_LIBS=True \ + -DCMAKE_BUILD_TYPE=RelWithDebugInfo \ + -DCMAKE_CXX_FLAGS="$CXXFLAGS" \ + -DCMAKE_C_FLAGS="$CFLAGS" \ + ${CMAKE_CROSSOPTS} make } check() { - cd "$builddir" - make check + CTEST_OUTPUT_ON_FAILURE=TRUE ctest test/tjunittest } package() { - cd "$builddir" make install DESTDIR="$pkgdir" } -sha512sums="e473c081b68dd3cdd96a1756b4f4945ece79d3c8e4cef62140be1699671555fc16d3080e81d764197a14ea83203ffcd0e18c3cc182e012d036e3faae943003fb LibVNCServer-0.9.11.tar.gz" +sha512sums="60ff1cc93a937d6f8f97449bc58b763095846207112f7b1b3c43eb2d74448b595d6da949903a764bd484ee54e38ff6277e882adbe965dd6d26ba15ef6ff6fcb8 LibVNCServer-0.9.12.tar.gz" diff --git a/user/libwacom/APKBUILD b/user/libwacom/APKBUILD index c5faa796f..56464b2a0 100644 --- a/user/libwacom/APKBUILD +++ b/user/libwacom/APKBUILD @@ -1,8 +1,8 @@ # Contributor: Ivan Tham <pickfire@riseup.net> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=libwacom -pkgver=0.32 -pkgrel=0 +pkgver=0.33 +pkgrel=1 pkgdesc="Tablet description library" url="http://linuxwacom.sourceforge.net/" arch="all" @@ -11,10 +11,11 @@ depends="" makedepends="libgudev-dev" checkdepends="bash findutils" subpackages="$pkgname-dev $pkgname-doc" -source="https://github.com/linuxwacom/libwacom/releases/download/$pkgname-$pkgver/$pkgname-$pkgver.tar.bz2" +source="https://github.com/linuxwacom/libwacom/releases/download/$pkgname-$pkgver/$pkgname-$pkgver.tar.bz2 + fix-database.patch + " build() { - cd "$builddir" ./configure \ --build=$CBUILD \ --host=$CHOST \ @@ -24,17 +25,15 @@ build() { } check() { - cd "$builddir" make check } package() { - cd "$builddir" make DESTDIR="$pkgdir" install - install -Dm644 COPYING "$pkgdir/usr/share/licenses/$pkgname/COPYING" install -dm755 "$pkgdir"/usr/lib/udev/rules.d/ tools/generate-udev-rules > "$pkgdir"/usr/lib/udev/rules.d/65-libwacom.rules } -sha512sums="d7001bb355d4b269e61bf95f0b71621088e76d6894a4a1d002b6a0904a20dd75e0b4fb85368fd20ccafbbfbb1c7ff17150a39962554c8f27f9fcad48c397125b libwacom-0.32.tar.bz2" +sha512sums="de4d9cf3b5f4d87a159ba8ee617bafce9d13b67dc23d9dc67efd57317b0df2079dd0de328bc800de47f14ee49ea82bb842e34297cef23ba336c1ddca3afa826d libwacom-0.33.tar.bz2 +d1ac1176aa4a95991330e23fb84868d65a1b2e81d68173c990f885af1ce591de7aca16e21db8128e4f1975bca22b8014a6fa2ca8c0458dce464568239d75263c fix-database.patch" diff --git a/user/libwacom/fix-database.patch b/user/libwacom/fix-database.patch new file mode 100644 index 000000000..d367ca997 --- /dev/null +++ b/user/libwacom/fix-database.patch @@ -0,0 +1,15 @@ +https://github.com/linuxwacom/libwacom/issues/85 + +Awful, cheesy hack. + +--- libwacom-0.33/libwacom/libwacom-database.c.old 2019-04-12 03:10:21.000000000 +0000 ++++ libwacom-0.33/libwacom/libwacom-database.c 2019-06-01 06:24:56.290159726 +0000 +@@ -152,7 +152,7 @@ + + memset(namestr, 0, sizeof(namestr)); + +- rc = sscanf(str, "%63[^:]:%x:%x:%63c", busstr, vendor_id, product_id, namestr); ++ rc = sscanf(str, "%63[^:]:%x:%x:%63[^\b]", busstr, vendor_id, product_id, namestr); + if (rc == 4) { + *name = g_strdup(namestr); + } else if (rc == 3) { diff --git a/user/libwnck/APKBUILD b/user/libwnck/APKBUILD index d722a9c53..2c7bc1b78 100644 --- a/user/libwnck/APKBUILD +++ b/user/libwnck/APKBUILD @@ -1,38 +1,39 @@ # Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> # Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> pkgname=libwnck -pkgver=3.30.0 +pkgver=3.32.0 _pkgmaj=${pkgver%.*} -pkgrel=0 +pkgrel=1 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" +makedepends="glib-dev gtk+3.0-dev gobject-introspection-dev libxres-dev + startup-notification-dev vala-dev meson ninja" +subpackages="$pkgname-dev $pkgname-lang" source="https://download.gnome.org/sources/libwnck/$_pkgmaj/libwnck-$pkgver.tar.xz" +prepare() { + default_prepare + mkdir -p "$builddir"/build +} + build() { - cd "$builddir" - ./configure \ - --build=$CBUILD \ - --host=$CHOST \ - --prefix=/usr \ - --sysconfdir=/etc \ - --mandir=/usr/share/man \ - --localstatedir=/var - make + 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 } -sha512sums="79842e4645de828941ac030eeff9d232b18a51fe0d18baf5ceb2beaf897d328ee5bf3b297501e2b27e66c63d42f6546a7605a37c6d7d52ff76e9b2bc5c328128 libwnck-3.30.0.tar.xz" +sha512sums="a939b96feda20b0eba2b87556b97a9ba4b9aaea4c82c0e274a23796a3a9b49cb93be582d79e32a52a87b5ca6e35182a9d617cb802802b3c2ba2bff2b028aa3de libwnck-3.32.0.tar.xz" diff --git a/user/libwpd/APKBUILD b/user/libwpd/APKBUILD index 20307c037..8a8c5a043 100644 --- a/user/libwpd/APKBUILD +++ b/user/libwpd/APKBUILD @@ -1,18 +1,17 @@ # Contributor: Timo Teräs <timo.teras@iki.fi> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=libwpd -pkgver=0.10.2 -pkgrel=1 +pkgver=0.10.3 +pkgrel=0 pkgdesc="Import filter and tools for WordPerfect documents" url="https://sourceforge.net/p/libwpd/" arch="all" options="!check" # No test suite. license="MPL-2.0 OR LGPL-2.1+" depends="" -depends_dev="librevenge-dev" -makedepends="$depends_dev doxygen" +makedepends="doxygen librevenge-dev" subpackages="$pkgname-dev $pkgname-doc $pkgname-tools" -source="http://downloads.sourceforge.net/project/libwpd/$pkgname/$pkgname-$pkgver/$pkgname-$pkgver.tar.bz2" +source="https://downloads.sourceforge.net/libwpd/$pkgname-$pkgver.tar.bz2" prepare() { update_config_sub @@ -20,7 +19,6 @@ prepare() { } build() { - cd "$builddir" ./configure \ --build=$CBUILD \ --host=$CHOST \ @@ -33,7 +31,6 @@ build() { } package() { - cd "$builddir" make DESTDIR="$pkgdir" install } @@ -42,4 +39,4 @@ tools() { mv "$pkgdir"/usr/bin "$subpkgdir"/usr } -sha512sums="879f96b6290d9db7ed4a431e84d18a1f7e81826394a8c63e03c3b6b49c578bfb417056956209d1934e34080471df28a40d93f45ac4f8a976631610d3103d6b7c libwpd-0.10.2.tar.bz2" +sha512sums="cf3db714d424c32ecf5740b17d9f1721f228d3a7edbd1cc7a0f4b30f7ac9b1024cf45c0727b9f916b7672321e05f0d791c7f7f5ad5d47fedcea9ad9e886eb459 libwpd-0.10.3.tar.bz2" diff --git a/user/libwpg/APKBUILD b/user/libwpg/APKBUILD index 1985152e8..b1a62091a 100644 --- a/user/libwpg/APKBUILD +++ b/user/libwpg/APKBUILD @@ -1,26 +1,19 @@ # Contributor: Timo Teräs <timo.teras@iki.fi> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=libwpg -pkgver=0.3.2 -pkgrel=1 +pkgver=0.3.3 +pkgrel=0 pkgdesc="Import filter and tools for WordPerfect graphics" url="https://sourceforge.net/projects/libwpg/" arch="all" options="!check" # No test suite. license="MPL-2.0 OR LGPL-2.1+" depends="" -depends_dev="librevenge-dev" -makedepends="$depends_dev doxygen libwpd-dev" +makedepends="doxygen librevenge-dev libwpd-dev" subpackages="$pkgname-dev $pkgname-doc $pkgname-tools" -source="http://downloads.sourceforge.net/project/libwpg/$pkgname/$pkgname-$pkgver/$pkgname-$pkgver.tar.bz2" - -prepare() { - update_config_sub - default_prepare -} +source="https://downloads.sourceforge.net/libwpg/$pkgname-$pkgver.tar.bz2" build() { - cd "$builddir" ./configure \ --build=$CBUILD \ --host=$CHOST \ @@ -34,7 +27,6 @@ build() { } package() { - cd "$builddir" make DESTDIR="$pkgdir" install } @@ -43,4 +35,4 @@ tools() { mv "$pkgdir"/usr/bin "$subpkgdir"/usr } -sha512sums="af9bf007c1cd380cc6da543024e6f068c0eb49514ff0027b1e82170927c8496e69d6c7a2a502380f25c54fea1fc33865c70c7d24d4b38e4fbf1d064bf1f1e192 libwpg-0.3.2.tar.bz2" +sha512sums="4a4cc5d1492b50c8572289c508bec603067f532446c032ff7241d0dad9c33c251e55751dc68c24bacf7937f26697292fb7712f61c8b3f025cffeb9f86350be83 libwpg-0.3.3.tar.bz2" diff --git a/user/libxcomposite/APKBUILD b/user/libxcomposite/APKBUILD index 6ce9263b9..f390a1204 100644 --- a/user/libxcomposite/APKBUILD +++ b/user/libxcomposite/APKBUILD @@ -1,27 +1,19 @@ # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=libxcomposite -pkgver=0.4.4 -pkgrel=2 +pkgver=0.4.5 +pkgrel=0 pkgdesc="X11 Composite extension library" url="https://www.X.Org/" arch="all" license="MIT" -subpackages="$pkgname-dev $pkgname-doc" -depends= +depends="" depends_dev="libxext-dev" makedepends="libx11-dev libxext-dev libxfixes-dev util-macros xorgproto-dev" +subpackages="$pkgname-dev $pkgname-doc" source="https://www.X.Org/releases/individual/lib/libXcomposite-$pkgver.tar.bz2" builddir="$srcdir"/libXcomposite-$pkgver -prepare() { - cd "$builddir" - chmod u+w config.sub - update_config_sub - default_prepare -} - build() { - cd "$builddir" ./configure \ --build=$CBUILD \ --host=$CHOST \ @@ -31,14 +23,11 @@ build() { } check() { - cd "$builddir" make check } package() { - cd "$builddir" make DESTDIR="$pkgdir" install - install -D -m644 COPYING "$pkgdir"/usr/share/licenses/$pkgname/LICENSE } -sha512sums="b15f8fdbe4cb7488bdad161d73ef8e59ef603c5af92d7b573110ba136d7d4ce3749aac45972bce87662b0310b67e831cffad72c45c15bfff988b5b555d4c884b libXcomposite-0.4.4.tar.bz2" +sha512sums="502fd51fd9097bb3ca72174ac5b25b9d3b1ff240d32c4765199df03d89337d94b4ddea49e90b177b370862430089d966ce9c38988337156352cfeae911c2d3d5 libXcomposite-0.4.5.tar.bz2" diff --git a/user/libxcursor/APKBUILD b/user/libxcursor/APKBUILD index 857cc5114..6aff75fef 100644 --- a/user/libxcursor/APKBUILD +++ b/user/libxcursor/APKBUILD @@ -1,13 +1,13 @@ # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=libxcursor -pkgver=1.1.15 -pkgrel=1 +pkgver=1.2.0 +pkgrel=0 pkgdesc="X cursor management library" url="https://www.X.Org/" arch="all" license="MIT" subpackages="$pkgname-dev $pkgname-doc" -depends= +depends="" makedepends="libx11-dev libxfixes-dev libxrender-dev util-macros xorgproto-dev" source="https://www.X.Org/releases/individual/lib/libXcursor-$pkgver.tar.bz2" builddir="$srcdir"/libXcursor-$pkgver @@ -17,7 +17,6 @@ builddir="$srcdir"/libXcursor-$pkgver # - CVE-2017-16612 build() { - cd "$builddir" ./configure \ --build=$CBUILD \ --host=$CHOST \ @@ -27,13 +26,11 @@ build() { } check() { - cd "$builddir" make check } package() { - cd "$builddir" make DESTDIR="$pkgdir" install } -sha512sums="53ad0fa2afd7b4cf1108b560e44ea71abdf5c55a18df243d7123942513589c927f5c105395f790d8769959e0129db54264e6aac7efd51a5f1aec270379b1f2f5 libXcursor-1.1.15.tar.bz2" +sha512sums="2b12d0fd17e311ce269dbba58588698885815eb07aa44d48525ed5cd9e5f379bb90138a792a191e2f74888ab10b3ca9a4f507f21de0984ed79748973ab927a03 libXcursor-1.2.0.tar.bz2" diff --git a/user/libxdamage/APKBUILD b/user/libxdamage/APKBUILD index 0aa397c2e..5519f04e6 100644 --- a/user/libxdamage/APKBUILD +++ b/user/libxdamage/APKBUILD @@ -1,26 +1,18 @@ # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=libxdamage -pkgver=1.1.4 -pkgrel=2 +pkgver=1.1.5 +pkgrel=0 pkgdesc="X11 damaged region extension library" url="https://www.X.Org/" arch="all" license="MIT" -depends= +depends="" makedepends="libx11-dev libxfixes-dev util-macros xorgproto-dev" subpackages="$pkgname-dev" source="https://www.X.Org/releases/individual/lib/libXdamage-$pkgver.tar.bz2" builddir="$srcdir"/libXdamage-$pkgver -prepare() { - cd "$builddir" - chmod 644 "$builddir"/config.sub - update_config_sub - default_prepare -} - build() { - cd "$builddir" ./configure \ --build=$CBUILD \ --host=$CHOST \ @@ -30,13 +22,11 @@ build() { } check() { - cd "$builddir" make check } package() { - cd "$builddir" make DESTDIR="$pkgdir" install } -sha512sums="1058cef11a8f0edfcae7265837369e492b007c34d56ae04145b558e5f02a163827aba1d0b80656f4c8e5d1e9a40f5077d93b7ff4f5e704f7409060dceba03904 libXdamage-1.1.4.tar.bz2" +sha512sums="a3ca6cc33b1727f717a3e2aa5593f660508a81a47918a0aa949e9e8fba105e303fe5071983b48caac92feea0fe6e8e01620805e4d19b41f21f20d837b191c124 libXdamage-1.1.5.tar.bz2" diff --git a/user/libxdmcp/APKBUILD b/user/libxdmcp/APKBUILD index 3c7c41fe7..85ba59d65 100644 --- a/user/libxdmcp/APKBUILD +++ b/user/libxdmcp/APKBUILD @@ -1,12 +1,12 @@ # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=libxdmcp -pkgver=1.1.2 -pkgrel=5 +pkgver=1.1.3 +pkgrel=0 pkgdesc="X11 Display Manager Control Protocol library" url="https://www.X.Org/" arch="all" license="MIT" -depends= +depends="" makedepends="xorgproto-dev libbsd-dev util-macros xmlto" subpackages="$pkgname-dev $pkgname-doc" source="https://www.X.Org/releases/individual/lib/libXdmcp-$pkgver.tar.bz2" @@ -15,8 +15,8 @@ builddir="$srcdir/libXdmcp-$pkgver" # secfixes: # 1.1.2-r3: # - CVE-2017-2625 + build() { - cd "$builddir" ./configure \ --build=$CBUILD \ --host=$CHOST \ @@ -26,13 +26,11 @@ build() { } check() { - cd "$builddir" make check } package() { - cd "$builddir" make -j1 DESTDIR="$pkgdir" install } -sha512sums="f96005934b8bc752059106f8caf7df0574f5ef3c7a83bd797497b56ca556a7ff4dc1d28195e421259e82ea027b5c738094add3ec107a22544c9070725d8d46bb libXdmcp-1.1.2.tar.bz2" +sha512sums="cb1d4650f97d66e73acd2465ec7d757b9b797cce2f85e301860a44997a461837eea845ec9bd5b639ec5ca34c804f8bdd870697a5ce3f4e270b687c9ef74f25ec libXdmcp-1.1.3.tar.bz2" diff --git a/user/libxext/APKBUILD b/user/libxext/APKBUILD index 70f0f9b4e..3d601f744 100644 --- a/user/libxext/APKBUILD +++ b/user/libxext/APKBUILD @@ -1,21 +1,19 @@ # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=libxext -pkgver=1.3.3 -pkgrel=3 +pkgver=1.3.4 +pkgrel=0 pkgdesc="X11 miscellaneous extensions library" url="https://www.X.Org/" arch="all" license="X11" -depends= +depends="" depends_dev="libxau-dev" makedepends="$depends_dev libx11-dev util-macros xmlto xorgproto" subpackages="$pkgname-dev $pkgname-doc" -source="https://www.X.Org/releases/individual/lib/libXext-$pkgver.tar.bz2 - " +source="https://www.X.Org/releases/individual/lib/libXext-$pkgver.tar.bz2" builddir="$srcdir"/libXext-$pkgver build() { - cd "$builddir" ./configure \ --build=$CBUILD \ --host=$CHOST \ @@ -27,13 +25,11 @@ build() { } check() { - cd "$builddir" make check } package() { - cd "$builddir" make DESTDIR="$pkgdir" install } -sha512sums="669d61545d10b999872addbf5628127840a221cbeaafb5ffa4328e0e0e1823583ece973bcafd5f13852ed58d4b0fe313a35f304ac80c6ed2b382cbbca977761a libXext-1.3.3.tar.bz2" +sha512sums="09146397d95f80c04701be1cc0a9c580ab5a085842ac31d17dfb6d4c2e42b4253b89cba695e54444e520be359883a76ffd02f42484c9e2ba2c33a5a40c29df4a libXext-1.3.4.tar.bz2" diff --git a/user/libxft/APKBUILD b/user/libxft/APKBUILD index f2454b32c..c8b3445db 100644 --- a/user/libxft/APKBUILD +++ b/user/libxft/APKBUILD @@ -1,21 +1,20 @@ # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=libxft -pkgver=2.3.2 -pkgrel=3 +pkgver=2.3.3 +pkgrel=0 pkgdesc="FreeType-based font drawing library for X11" url="https://www.X.Org/" arch="all" license="MIT" -subpackages="$pkgname-dev $pkgname-doc" -depends= +depends="" depends_dev="zlib-dev" makedepends="$depends_dev fontconfig-dev freetype-dev libxrender-dev util-macros xorgproto-dev" +subpackages="$pkgname-dev $pkgname-doc" source="https://www.X.Org/releases/individual/lib/libXft-$pkgver.tar.bz2" builddir="$srcdir/libXft-$pkgver" build () { - cd "$builddir" ./configure \ --build=$CBUILD \ --host=$CHOST \ @@ -25,14 +24,11 @@ build () { } check() { - cd "$builddir" make check } package() { - cd "$builddir" make DESTDIR="$pkgdir" install - install -Dm644 COPYING "$pkgdir"/usr/share/licenses/$pkgname/COPYING } -sha512sums="eb2e0c46b4434198690a3ca2b613df14ad599c860b47d10a1e8efe3b4e812a78460f9f414eaf89db21d605613a4e18324dcb8a22928609c6bc15178330a05398 libXft-2.3.2.tar.bz2" +sha512sums="28fdaf3baa3b156a4a7fdd6e39c4d8026d7d21eaa9be27c9797c8d329dab691a1bc82ea6042f9d4729a9343d93787536fb7e4b606f722f33cbe608b2e79910e8 libXft-2.3.3.tar.bz2" diff --git a/user/libxkbfile/APKBUILD b/user/libxkbfile/APKBUILD index 109a9d9c1..11cbd4d9e 100644 --- a/user/libxkbfile/APKBUILD +++ b/user/libxkbfile/APKBUILD @@ -1,7 +1,7 @@ # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=libxkbfile -pkgver=1.0.9 -pkgrel=3 +pkgver=1.1.0 +pkgrel=0 pkgdesc="X11 keyboard file manipulation library" url="https://www.X.Org/" arch="all" @@ -12,7 +12,6 @@ subpackages="$pkgname-dev" source="https://www.X.Org/releases/individual/lib/$pkgname-$pkgver.tar.bz2" build() { - cd "$builddir" ./configure \ --build=$CBUILD \ --host=$CHOST \ @@ -22,15 +21,11 @@ build() { } check() { - cd "$builddir" make check } package() { - cd "$builddir" make DESTDIR="$pkgdir" install - install -D -m644 "$srcdir"/$pkgname-$pkgver/COPYING \ - "$pkgdir"/usr/share/licenses/$pkgname/COPYING } -sha512sums="5fa268f10d7c4bd7b1e0c9f12adaa53d86b149f193d228fc620b3b81d360b37e4ede0192f5a0dc715bf830a57bd1388af01399fb33609413fc64623ee91cb8d1 libxkbfile-1.0.9.tar.bz2" +sha512sums="1c6a57564e916ccdc3df3c49b9f3589f701df0cec55112c12ddc35ac3ed556608c28fe98e5ba0ac1962e9a65ed1e90eb7e6169b564951bf55a7cf3499b745826 libxkbfile-1.1.0.tar.bz2" diff --git a/user/libxklavier/APKBUILD b/user/libxklavier/APKBUILD index 0f3964a06..e1addd860 100644 --- a/user/libxklavier/APKBUILD +++ b/user/libxklavier/APKBUILD @@ -2,12 +2,14 @@ # Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> pkgname=libxklavier pkgver=5.4 -pkgrel=0 +pkgrel=1 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" +makedepends="gobject-introspection-dev libx11-dev libxml2-dev glib-dev + libxcb-dev libxkbcommon-dev libxkbfile-dev libxi-dev iso-codes-dev + vala-dev" subpackages="$pkgname-dev $pkgname-doc" source="https://people.freedesktop.org/~svu/libxklavier-$pkgver.tar.bz2" diff --git a/user/libxmu/APKBUILD b/user/libxmu/APKBUILD index 80ec63ade..854f806a3 100644 --- a/user/libxmu/APKBUILD +++ b/user/libxmu/APKBUILD @@ -1,23 +1,21 @@ # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=libxmu -pkgver=1.1.2 -pkgrel=2 +pkgver=1.1.3 +pkgrel=0 pkgdesc="X11 miscellaneous micro-utility library" url="https://www.X.Org/" arch="all" options="!check" # No test suite. license="X11 AND MIT" subpackages="$pkgname-dev $pkgname-doc" -depends= +depends="" depends_dev="util-linux-dev" makedepends="$depends_dev libsm-dev libx11-dev libxext-dev libxt-dev util-macros xmlto" source="https://www.X.Org/releases/individual/lib/libXmu-$pkgver.tar.bz2" builddir="$srcdir"/libXmu-$pkgver -build() -{ - cd "$builddir" +build() { ./configure \ --build=$CBUILD \ --host=$CHOST \ @@ -28,10 +26,7 @@ build() } package() { - cd "$builddir" make DESTDIR="$pkgdir" install - install -Dm644 $srcdir/libXmu-$pkgver/COPYING \ - $pkgdir/usr/share/licenses/$pkgname/COPYING } -sha512sums="eba4e3d10f7d75ba8464881fb69f295a89774a4b37793197d75f3312e3a342b2df8b7e13e3f5c887962704329b5347ff2f3395e229af9dadf46a93b1e8613cfc libXmu-1.1.2.tar.bz2" +sha512sums="8c6cc65b22aa031ad870dd92736681a068a0878a425a53dbed909943da1136c4a24034d467cfd3785c3a8d78f66850b69f1ebe1eb24aaf9bc176b1d171a5c762 libXmu-1.1.3.tar.bz2" diff --git a/user/libxrandr/APKBUILD b/user/libxrandr/APKBUILD index 0e2d1f3e1..9316676d5 100644 --- a/user/libxrandr/APKBUILD +++ b/user/libxrandr/APKBUILD @@ -1,12 +1,12 @@ # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=libxrandr -pkgver=1.5.1 -pkgrel=2 +pkgver=1.5.2 +pkgrel=0 pkgdesc="X11 RandR extension library" url="https://www.X.Org/" arch="all" license="MIT" -depends= +depends="" depends_dev="libxext-dev" makedepends="$depends_dev libx11-dev libxrender-dev util-macros xorgproto-dev" subpackages="$pkgname-dev $pkgname-doc" @@ -14,7 +14,6 @@ source="https://www.X.Org/releases/individual/lib/libXrandr-$pkgver.tar.bz2" builddir="$srcdir"/libXrandr-$pkgver build() { - cd "$builddir" ./configure \ --build=$CBUILD \ --host=$CHOST \ @@ -26,14 +25,11 @@ build() { } check() { - cd "$builddir" make check } package() { - cd "$builddir" make DESTDIR="$pkgdir" install - install -Dm644 COPYING "$pkgdir"/usr/share/licenses/$pkgname/COPYING } -sha512sums="ddcee1c50da8810412fd747b05a073ee5522b2f3b0a74e6a9b48b489ce9712356d1bc3009f8898aeee85671cdb44e2dafa04c8caf23d97963b36b1af9174445a libXrandr-1.5.1.tar.bz2" +sha512sums="fcd005f9839e7ef980607128a5d76d7b671cc2f5755949e03c569c500d7e987cb3f6932750ab8bf6e2c1086ec69dde09d5831f0c2098b9f9ad46be4f56db0d87 libXrandr-1.5.2.tar.bz2" diff --git a/user/libxres/APKBUILD b/user/libxres/APKBUILD new file mode 100644 index 000000000..9244440c4 --- /dev/null +++ b/user/libxres/APKBUILD @@ -0,0 +1,34 @@ +# Maintainer: A. Wilcox <awilfox@adelielinux.org> +pkgname=libxres +pkgver=1.2.0 +pkgrel=0 +pkgdesc="X11 X-Resource extension library" +url="https://www.X.Org/" +arch="all" +license="MIT AND X11" +subpackages="$pkgname-dev $pkgname-doc" +depends="" +makedepends="libx11-dev libxext-dev util-macros xorgproto-dev" +source="https://www.X.Org/releases/individual/lib/libXres-$pkgver.tar.bz2" +builddir="$srcdir"/libXres-$pkgver + +build() { + ./configure \ + --build=$CBUILD \ + --host=$CHOST \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --localstatedir=/var + make +} + +check() { + make check +} + +package() { + make DESTDIR="$pkgdir" install +} + +sha512sums="8eb5a36b1f030eb4e27e676cc4befcc073da66a7bce2b39089314e1facb629d13b087bb53ca2c95fe5291857da7ff9f80c6ab28fb3e245eeb9e0344937900172 libXres-1.2.0.tar.bz2" diff --git a/user/libxvmc/APKBUILD b/user/libxvmc/APKBUILD index c65e816d9..9953618d2 100644 --- a/user/libxvmc/APKBUILD +++ b/user/libxvmc/APKBUILD @@ -1,20 +1,19 @@ # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=libxvmc -pkgver=1.0.10 -pkgrel=2 +pkgver=1.0.11 +pkgrel=0 pkgdesc="X11 Video Motion Compensation extension library" url="https://www.X.Org/" arch="all" license="MIT" -subpackages="$pkgname-dev $pkgname-doc" -depends= +depends="" depends_dev="libxext-dev" makedepends="libx11-dev libxv-dev util-macros xorgproto-dev" +subpackages="$pkgname-dev $pkgname-doc" source="https://www.X.Org/releases/individual/lib/libXvMC-$pkgver.tar.bz2" builddir="$srcdir"/libXvMC-$pkgver build() { - cd "$builddir" ./configure \ --build=$CBUILD \ --host=$CHOST \ @@ -26,13 +25,11 @@ build() { } check() { - cd "$builddir" make check } package() { - cd "$builddir" make DESTDIR="$pkgdir" install } -sha512sums="db979627eda2e58dbc95f0705681aa4acf51dc375a078467ea0b1c78414963e52417e525bcf224b4642eab2e540619c168c1e4757fad97bac7d07b60b23b3e19 libXvMC-1.0.10.tar.bz2" +sha512sums="4fe49e956ac97a45d851292cbba7bf242706aaf3bd9eb7ea4d2fc50e40745115d857a4fe179d2b87bc7cb6f9ac93911e89a167f02f6d1ae25a59df9a517a2476 libXvMC-1.0.11.tar.bz2" diff --git a/user/libxxf86dga/APKBUILD b/user/libxxf86dga/APKBUILD index 9df55acd4..5de299edc 100644 --- a/user/libxxf86dga/APKBUILD +++ b/user/libxxf86dga/APKBUILD @@ -1,19 +1,18 @@ # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=libxxf86dga -pkgver=1.1.4 -pkgrel=2 +pkgver=1.1.5 +pkgrel=0 pkgdesc="X11 Direct Graphics Access extension library" url="https://www.X.Org/" arch="all" license="X11" -subpackages="$pkgname-dev $pkgname-doc" depends="" makedepends="libx11-dev libxext-dev util-macros xorgproto-dev" +subpackages="$pkgname-dev $pkgname-doc" source="https://www.X.Org/releases/individual/lib/libXxf86dga-$pkgver.tar.bz2" builddir="$srcdir"/libXxf86dga-$pkgver build() { - cd "$builddir" ./configure \ --build=$CBUILD \ --host=$CHOST \ @@ -22,13 +21,11 @@ build() { } check() { - cd "$builddir" make check } package() { - cd "$builddir" make DESTDIR="$pkgdir" install } -sha512sums="58d81a7850275fc8382018bcc56dbc65b4200828b1f1379dcee3da1878f12a83ee681a9d474bcd564d99bf93bedfeb7b243370e0ebb89177652b37cee158a3f2 libXxf86dga-1.1.4.tar.bz2" +sha512sums="0e77c4003aeba737b10c17d55aeefa935fc57c4ba9e8f79a834f3f8c690d6a1d98f69ad707eded784346c1cf40c41829719d257283b5eae3207147fb4c79ed89 libXxf86dga-1.1.5.tar.bz2" diff --git a/user/libzip/APKBUILD b/user/libzip/APKBUILD index 32f0a956c..9c1836e60 100644 --- a/user/libzip/APKBUILD +++ b/user/libzip/APKBUILD @@ -3,8 +3,8 @@ # Contributor: Carlo Landmeter <clandmeter@gmail.com> # Maintainer: Max Rees <maxcrees@me.com> pkgname=libzip -pkgver=1.5.1 -pkgrel=2 +pkgver=1.5.2 +pkgrel=0 pkgdesc="C library for manipulating ZIP archives" url="https://libzip.org/" arch="all" @@ -19,7 +19,6 @@ source="https://libzip.org/download/$pkgname-$pkgver.tar.xz" # - CVE-2017-14107 build() { - cd "$builddir" cmake \ -DCMAKE_INSTALL_PREFIX=/usr \ -DCMAKE_INSTALL_LIBDIR=lib \ @@ -31,12 +30,10 @@ build() { } check() { - cd "$builddir" make check } package() { - cd "$builddir" make DESTDIR="$pkgdir" -j1 install } @@ -46,4 +43,4 @@ tools() { mv "$pkgdir"/usr/bin "$subpkgdir"/usr } -sha512sums="92df9490a9910ebb1da49ecaec96f364fce39a779e1bc739f7796b27b3a864301f5e1ba0108947708dda1d90af7a9e751be54cbb8a0de2a04a48f9f3eb728e3d libzip-1.5.1.tar.xz" +sha512sums="1e6d48ddbac4d270f70b314f6ada3c93a3196a8cc3b8d17c6cf5ea8409ff29f36ac351206675f9d81351fcf633b0c15d7b0b5530c30c4140e4fe55e64c602643 libzip-1.5.2.tar.xz" diff --git a/user/lighttpd/APKBUILD b/user/lighttpd/APKBUILD index 1be241d58..280955e7f 100644 --- a/user/lighttpd/APKBUILD +++ b/user/lighttpd/APKBUILD @@ -1,7 +1,7 @@ # Contributor: Valery Kartel <valery.kartel@gmail.com> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=lighttpd -pkgver=1.4.52 +pkgver=1.4.53 pkgrel=0 pkgdesc="A secure, fast, compliant and very flexible web-server" url="http://www.lighttpd.net/" @@ -101,7 +101,7 @@ mod_webdav() { _mv_mod mod_webdav } -sha512sums="3c604f441c001641681b958012524c9a2e801314b07d9741d4b5e086e7585d676516e3fe587e0ff69f1f937c11b9a290f2173866d6b90019117b6be299972a72 lighttpd-1.4.52.tar.xz +sha512sums="bf5ea1c9f6f664c9ddcdf33ddba5b2bff760960d03c29a2181e73e3aceb45b523bb90003d0e0bc565334751830e6027cd7be2e92d030cde90813511957c9ea76 lighttpd-1.4.53.tar.xz f2f3c5c7731550237fd75a8de66275f427eaf897cffff7ac7ef44178328ad8fad6c4ec6654759bfc665cbaf7991ddcdf0aaa916831c8b6aa440192d57b242038 lighttpd.initd 9d2ab5deb7353ebf290e90936b511941df440859c78589d0bcf130ef69a5e9c79e4d318548b6b118df002083c46f7476230a28954b7a10a9dbd05040e02b1291 lighttpd.confd 0536b4f21d2e8659f7831b45998c13d9f6051ae7ecde13be01f372f837d255bfc4e211de48a7686cc743d53aa9c08ab3f10ec19788896dcf8356b90053ca7a16 lighttpd.logrotate diff --git a/user/links/APKBUILD b/user/links/APKBUILD index 572f9d977..b3ade3cb2 100644 --- a/user/links/APKBUILD +++ b/user/links/APKBUILD @@ -1,6 +1,6 @@ # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=links -pkgver=2.17 +pkgver=2.19 pkgrel=0 pkgdesc="Text Web browser, similar to Lynx" url="http://links.twibright.com/" @@ -13,7 +13,6 @@ subpackages="$pkgname-doc" source="http://$pkgname.twibright.com/download/$pkgname-$pkgver.tar.bz2" build () { - cd "$builddir" ./configure \ --build=$CBUILD \ --host=$CHOST \ @@ -26,8 +25,7 @@ build () { } package() { - cd "$builddir" make DESTDIR="$pkgdir" install } -sha512sums="871a3a2cbc210467f4ffd830ba2966f2ebc0ec9ed4a1de018d032cec4b550e58f6858875478647c627ec746bb76810a4b97603575f2d21b5ea650c612684c8d5 links-2.17.tar.bz2" +sha512sums="8716cea6feb5a02b59d7e2dd5bfd0af9b2ac2a4427c0f98a3c8a8eaabca31e7a96c16888c0de19976749485b3cdbf75cbff88a37cd3b58700c1f090acec328ea links-2.19.tar.bz2" diff --git a/user/lksctp-tools/APKBUILD b/user/lksctp-tools/APKBUILD index adeeec587..c625bb4d5 100644 --- a/user/lksctp-tools/APKBUILD +++ b/user/lksctp-tools/APKBUILD @@ -1,20 +1,21 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=lksctp-tools -pkgver=1.0.17 -pkgrel=0 +pkgver=1.0.18 +pkgrel=1 pkgdesc="Tools for using SCTP on Linux" url="http://lksctp.sourceforge.net/" arch="all" license="GPL-2.0-only AND LGPL-2.1-only" depends="" -makedepends="" +makedepends="autoconf automake" subpackages="$pkgname-dev $pkgname-doc" -source="https://downloads.sourceforge.net/lksctp/lksctp-tools-$pkgver.tar.gz" -builddir="$srcdir/lksctp-tools-$pkgver" +source="$pkgname-$pkgver.tar.gz::https://github.com/sctp/$pkgname/archive/v$pkgver.tar.gz + header-install.patch + " build() { - cd "$builddir" + ./bootstrap ./configure \ --build=$CBUILD \ --host=$CHOST \ @@ -26,13 +27,12 @@ build() { } check() { - cd "$builddir" make check } package() { - cd "$builddir" make DESTDIR="$pkgdir" install } -sha512sums="055719130b7dda4da9cf002dcd5f1fb3d8cf75300a99365976e087b2b6971b4ccd357f95b515a44e37874af161f7b7f9b42c60191aff938d18fada5a49aa44c4 lksctp-tools-1.0.17.tar.gz" +sha512sums="1d7275fadc0f2270865307cff2645810e9bab6c1a97e70be6115cace737334dbdd87a072fae25b89dd9cac2e05974556542de70ea8ef70b9e4f14873c82a5055 lksctp-tools-1.0.18.tar.gz +1047d40a961433ef072404aad31c976300e4631ef4ccc4abd505a1ae2dfbb169982079f6932eaab5d91c564f3f6949adf97c44ac155d80b4161c39931f569590 header-install.patch" diff --git a/user/lksctp-tools/header-install.patch b/user/lksctp-tools/header-install.patch new file mode 100644 index 000000000..1ebe6c803 --- /dev/null +++ b/user/lksctp-tools/header-install.patch @@ -0,0 +1,32 @@ +From 378560050a8f93786c590cc99a55461666205b61 Mon Sep 17 00:00:00 2001 +From: Xin Long <lucien.xin@gmail.com> +Date: Fri, 24 Aug 2018 01:13:32 +0800 +Subject: [PATCH] build: fix netinet/sctp.h not to be installed + +After libcnetinet_HEADERS was set to sctp.h.in, netinet/sctp.h can +no longer be installed into ${includedir}. + +Since "AC_CONFIG_HEADERS([src/include/netinet/sctp.h])" is already +added into configure.ac, there's no need to generate sctp.h by +automake. + +So we simply set libcnetinet_HEADERS back to sctp.h. + +Fixes: 9607dd85e70a ("netinet/sctp.h: dynamically build based on system setup") +Signed-off-by: Xin Long <lucien.xin@gmail.com> +Signed-off-by: Marcelo Ricardo Leitner <marcelo.leitner@gmail.com> +--- + src/include/netinet/Makefile.am | 3 +-- + 1 file changed, 1 insertion(+), 2 deletions(-) + +diff --git a/src/include/netinet/Makefile.am b/src/include/netinet/Makefile.am +index ca0aac2..965db8c 100644 +--- a/src/include/netinet/Makefile.am ++++ b/src/include/netinet/Makefile.am +@@ -11,5 +11,4 @@ libcnetinetdir = $(includedir)/netinet + # API. + include_HEADERS = + +-libcnetinet_HEADERS = sctp.h.in +-BUILT_SOURCES = sctp.h ++libcnetinet_HEADERS = sctp.h diff --git a/user/llvm7/more-secure-plt.patch b/user/llvm7/more-secure-plt.patch deleted file mode 100644 index 64920c74c..000000000 --- a/user/llvm7/more-secure-plt.patch +++ /dev/null @@ -1,15 +0,0 @@ -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/llvm7/ppc32-calling-convention.patch b/user/llvm7/ppc32-calling-convention.patch deleted file mode 100644 index 2e6d66427..000000000 --- a/user/llvm7/ppc32-calling-convention.patch +++ /dev/null @@ -1,69 +0,0 @@ -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/llvm7/APKBUILD b/user/llvm8/APKBUILD index 53cf78e63..de4969ac7 100644 --- a/user/llvm7/APKBUILD +++ b/user/llvm8/APKBUILD @@ -3,7 +3,7 @@ # Contributor: Jakub Jirutka <jakub@jirutka.cz> # Maintainer: A. Wilcox <awilfox@adelielinux.org> _pkgname=llvm -pkgver=7.0.1 +pkgver=8.0.0 _majorver=${pkgver%%.*} pkgname=$_pkgname$_majorver pkgrel=0 @@ -24,7 +24,6 @@ source="https://llvm.org/releases/$pkgver/llvm-$pkgver.src.tar.xz musl-ppc64-elfv2.patch more-secure-plt.patch even-more-secure-plt.patch - ppc32-calling-convention.patch python3-test.patch " builddir="$srcdir/$_pkgname-$pkgver.src" @@ -102,7 +101,7 @@ build() { -DLLVM_HOST_TRIPLE="$CHOST" \ -DLLVM_INCLUDE_EXAMPLES=OFF \ -DLLVM_LINK_LLVM_DYLIB=ON \ - -DLLVM_TARGETS_TO_BUILD='X86;ARM;AArch64;PowerPC;SystemZ;AMDGPU;NVPTX;Mips;BPF' \ + -DLLVM_TARGETS_TO_BUILD='AArch64;AMDGPU;ARM;BPF;Mips;PowerPC;Sparc;SystemZ;WebAssembly;X86' \ "$builddir" make llvm-tblgen @@ -114,6 +113,9 @@ build() { check() { cd "$builddir"/build + # appears to be an issue on musl and glibc, but only fails on musl: + # https://github.com/NixOS/nixpkgs/blob/bb7e9e46/pkgs/development/compilers/llvm/8/llvm.nix#L74 + rm "$builddir"/test/CodeGen/AArch64/wineh4.mir # FIXME: Few tests fail on s390x, ignore it for now. See build log # https://gist.github.com/jirutka/6edc951ad5b8002cf1780546cf661edc case "$CARCH" in @@ -161,11 +163,7 @@ package() { rmdir include ln -s ../../include/$pkgname include - # Move /usr/lib/$pkgname/lib/cmake/llvm/ into /usr/lib/cmake/$pkgname/ - # and symlink it back. - _mv lib/cmake/llvm/* "$pkgdir"/usr/lib/cmake/$pkgname/ - rmdir lib/cmake/llvm - ln -s ../../../cmake/$pkgname lib/cmake/llvm + ln -s "$pkgdir"/usr/lib/cmake/llvm ../$pkgname/lib/cmake/llvm } static() { @@ -241,12 +239,11 @@ _mv() { mv $@ } -sha512sums="ac43a3cb71a53deb55e3693653847cf20bf6f5d9056f224e6956c96d63bc59ebee9404f088eec9cabe65337b4607a905ef931354b373cf64e0004c6905a6b5df llvm-7.0.1.src.tar.xz +sha512sums="1602343b451b964f5d8c2d6b0654d89384c80d45883498c5f0e2f4196168dd4a1ed2a4dadb752076020243df42ffe46cb31d82ffc145d8e5874163cbb9686a1f llvm-8.0.0.src.tar.xz f84cd65d7042e89826ba6e8d48c4c302bf4980da369d7f19a55f217e51c00ca8ed178d453df3a3cee76598a7cecb94aed0775a6d24fe73266f82749913fc3e71 llvm-fix-build-with-musl-libc.patch 49c47f125014b60d0ea7870f981a2c1708ad705793f89287ed846ee881a837a4dc0170bf467e03f2ef56177473128945287749ac80dc2d13cfabcf8b929ba58a disable-FileSystemTest.CreateDir-perms-assert.patch caeec8e4dbd92f5f74940780b69075f3879a267a8623822cbdc193fd14706eb089071e3a5a20d60cc2eca59e4c5b2a61d29827a2f3362ee7c5f74f11d9ace200 disable-dlclose-test.patch e5ddbc4b6c4928e79846dc3c022eb7928aaa8fed40515c78f5f03b8ab8264f34f1eb8aa8bfc0f436450932f4917e54ad261603032092ea271d9590f11a37cf1e musl-ppc64-elfv2.patch -8c0e2a08f6b503efb6673af4cb475ed788b288e016881eacb314a74b9cdd1a920853b219f1cdf1c20e67dec9fcceedfa37e726820b28cd0454302397188aac2f more-secure-plt.patch +957516510439be661ad04e061e9616da8a271a5621603238cde5b4782bd2465367eaaa5ade628d163c8d9e70b8b0495687669f4648bd031ac6e5a1582d2e75a4 more-secure-plt.patch deb71762721ebc73bfdf23143b582f40c70eddcef3e337ed14499e8e336bee2906292d38d64fe98fa633430c1bcb66cf6a2e067258c8fbe6e931f99f6d10a6f7 even-more-secure-plt.patch -c3f596a1578a07ce0ee40c4e2576fe05ca6ca0c1b4f94b1f74c55cb09603afe7c846db9294fe28d83ca48633086bad422218e6d06e0d92173143fb298e06fb38 ppc32-calling-convention.patch 53cc0d13dd871e9b775bb4e7567de4f9a97d91b8246cd7ce74607fd88d6e3e2ab9455f5b4195bc7f9dbdedbc77d659d43e98ec0b7cd78cd395aaea6919510287 python3-test.patch" diff --git a/user/llvm7/disable-FileSystemTest.CreateDir-perms-assert.patch b/user/llvm8/disable-FileSystemTest.CreateDir-perms-assert.patch index e73ce9b6f..e73ce9b6f 100644 --- a/user/llvm7/disable-FileSystemTest.CreateDir-perms-assert.patch +++ b/user/llvm8/disable-FileSystemTest.CreateDir-perms-assert.patch diff --git a/user/llvm7/disable-dlclose-test.patch b/user/llvm8/disable-dlclose-test.patch index b70cd4d4d..b70cd4d4d 100644 --- a/user/llvm7/disable-dlclose-test.patch +++ b/user/llvm8/disable-dlclose-test.patch diff --git a/user/llvm7/even-more-secure-plt.patch b/user/llvm8/even-more-secure-plt.patch index 112e111b8..112e111b8 100644 --- a/user/llvm7/even-more-secure-plt.patch +++ b/user/llvm8/even-more-secure-plt.patch diff --git a/user/llvm7/llvm-fix-build-with-musl-libc.patch b/user/llvm8/llvm-fix-build-with-musl-libc.patch index 6ee91ea44..6ee91ea44 100644 --- a/user/llvm7/llvm-fix-build-with-musl-libc.patch +++ b/user/llvm8/llvm-fix-build-with-musl-libc.patch diff --git a/user/llvm8/more-secure-plt.patch b/user/llvm8/more-secure-plt.patch new file mode 100644 index 000000000..6728e2765 --- /dev/null +++ b/user/llvm8/more-secure-plt.patch @@ -0,0 +1,28 @@ +--- a/lib/Target/PowerPC/PPCSubtarget.cpp ++++ b/lib/Target/PowerPC/PPCSubtarget.cpp +@@ -138,6 +138,10 @@ + if (isDarwin()) + HasLazyResolverStubs = true; + ++ // Set up musl-specific properties. ++ if (TargetTriple.getEnvironment() == Triple::Musl) ++ SecurePlt = true; ++ + if (HasSPE && IsPPC64) + report_fatal_error( "SPE is only supported for 32-bit targets.\n", false); + if (HasSPE && (HasAltivec || HasQPX || HasVSX || HasFPU)) +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) + return Reloc::PIC_; + ++ // musl needs SecurePlt, which depends on PIC. ++ if (TT.getEnvironment() == Triple::Musl) ++ return Reloc::PIC_; ++ + // Rest are static by default. + return Reloc::Static; + } diff --git a/user/llvm7/musl-ppc64-elfv2.patch b/user/llvm8/musl-ppc64-elfv2.patch index 016be5dad..016be5dad 100644 --- a/user/llvm7/musl-ppc64-elfv2.patch +++ b/user/llvm8/musl-ppc64-elfv2.patch diff --git a/user/llvm7/python3-test.patch b/user/llvm8/python3-test.patch index 746313317..746313317 100644 --- a/user/llvm7/python3-test.patch +++ b/user/llvm8/python3-test.patch diff --git a/user/lskat/APKBUILD b/user/lskat/APKBUILD index 8c20e285e..19d904a95 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.12.3 +pkgver=19.04.1 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="6fadb424397fa3780af818323eda2c7025f4e611e33a78ed93aad661a5bd1d0df2d71af6da9c6598278aee137e60a9ca7591e5fadbd0cc25af2eb2ebffaa7ded lskat-18.12.3.tar.xz" +sha512sums="3b50fee9690d58f09c81a12982d6c9dc49130a00a3471236257111ac9ea62047ea5eae5d5331da36a2ed0a15dc6a78d21fd07c4ed5f9764cb3c3aacebf3c933f lskat-19.04.1.tar.xz" diff --git a/user/luarocks/APKBUILD b/user/luarocks/APKBUILD index 3a536a7bd..7bc21d7e0 100644 --- a/user/luarocks/APKBUILD +++ b/user/luarocks/APKBUILD @@ -1,7 +1,7 @@ # Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> # Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> pkgname=luarocks -pkgver=3.0.4 +pkgver=3.1.2 pkgrel=0 pkgdesc="Package manager for Lua software" url="https://luarocks.org/" @@ -27,4 +27,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="65a28f0dca4fc45a0ee413493d0e4287de9c495b27c0366d955a16d03adf94b36cb9dbeda00fb74045809eb5048b78ea5158257b5ddafa924dc8ff0f017e95f8 luarocks-3.0.4.tar.gz" +sha512sums="78ef1d72302c88fa9989aaf4dba8d7043a2929b709631be2003d3419df828e9168b207365c56bbbf0b52bf81d15fc96b92a7c7abb5dd11dde3630d23886ff51c luarocks-3.1.2.tar.gz" diff --git a/user/lynx/APKBUILD b/user/lynx/APKBUILD index d19215e41..4e69511e8 100644 --- a/user/lynx/APKBUILD +++ b/user/lynx/APKBUILD @@ -1,6 +1,6 @@ # Contributor: Sören Tempel <soeren+alpine@soeren-tempel.net> # Contributor: Kiyoshi Aman <kiyoshi.aman@gmail.com> -# Maintainer: Kiyoshi Aman <kiyoshi.aman@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> pkgname=lynx pkgver=2.8.9_p1 _relver=${pkgver/_p/rel.} diff --git a/user/makedepend/APKBUILD b/user/makedepend/APKBUILD index da9da0ee9..13d8c1e05 100644 --- a/user/makedepend/APKBUILD +++ b/user/makedepend/APKBUILD @@ -1,8 +1,8 @@ # Contributor: William Pitcock <nenolod@dereferenced.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=makedepend -pkgver=1.0.5 -pkgrel=1 +pkgver=1.0.6 +pkgrel=0 pkgdesc="Utility for making makefile dependencies" url="https://www.freedesktop.org/" arch="all" @@ -13,7 +13,6 @@ subpackages="$pkgname-doc" source="https://www.X.Org/releases/individual/util/${pkgname}-${pkgver}.tar.bz2" build() { - cd "$builddir" ./configure \ --build=$CBUILD \ --host=$CHOST \ @@ -23,13 +22,11 @@ build() { } check() { - cd "$builddir" make check } package() { - cd "$builddir" make DESTDIR="$pkgdir" install } -sha512sums="e28d71c3ce4f74ca6479771fcdd123c19ab18e3f2aa690a7798237f21f13fca4c4d66d7b7b1d708c2c214b8e17f8fe37e6cf5b75a4d2b88514c50addea2600cb makedepend-1.0.5.tar.bz2" +sha512sums="eb0e8ee8ab7515806d7d98a060cdcd392ec38e4225e5e05db26daa6651f185d0b764aab403edeea904d4d23211b1f7db20daeee6eafce8abe65225784ed0aa42 makedepend-1.0.6.tar.bz2" diff --git a/user/marble/APKBUILD b/user/marble/APKBUILD index 00df90902..fb4a1f02e 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.12.3 +pkgver=19.04.1 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="af6147a288021a3056892bae8d9c83b6ecfc581c7237d3fa04a579e4461779a5dacb0e22b21f0e8af5032f75d827a56d197369c85193f0188140ac361777a851 marble-18.12.3.tar.xz" +sha512sums="f1a0bbd99b17053e4a3d4555ff38ab74b9f6425e38383a55d529772cb9cf78981af0b560ded3e36731ded686165b6b8e09cf7d8e98c6e5f3c04a9a89294cee36 marble-19.04.1.tar.xz" diff --git a/user/marco/APKBUILD b/user/marco/APKBUILD new file mode 100644 index 000000000..2f7daa034 --- /dev/null +++ b/user/marco/APKBUILD @@ -0,0 +1,40 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=marco +pkgver=1.22.1 +pkgrel=0 +pkgdesc="Window manager for the MATE desktop environment" +url="https://mate-desktop.org" +arch="all" +license="GPL-2.0+ AND MIT-advertising AND MIT-CMU" +depends="" +makedepends="gtk+3.0-dev intltool itstool libcanberra-dev libice-dev libsm-dev + libxml2-utils zenity" +subpackages="$pkgname-dev $pkgname-doc $pkgname-lang" +source="https://pub.mate-desktop.org/releases/${pkgver%.*}/marco-$pkgver.tar.xz + correctly-posix.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="18093f4d419fbc90f957a04ec3e36a153b3c51a6bcdc1ac5884adcc0292f157bc5e4af51e171451a4b54b5bccffdee2e8a07ed13dafb6106773abfb06b6a8a4f marco-1.22.1.tar.xz +b377b2a7d2af094a8b4bd6d1827c85f9675656cd8bdc6892b334c8479d188459ec8585fed3c746fdaef5820f768ce93605586693a3308f0db2d6f58e08f4df49 correctly-posix.patch" diff --git a/user/marco/correctly-posix.patch b/user/marco/correctly-posix.patch new file mode 100644 index 000000000..e2ad5fa18 --- /dev/null +++ b/user/marco/correctly-posix.patch @@ -0,0 +1,12 @@ +diff -Nurd marco-1.22.0/src/ui/theme.c marco-1.22.0.new/src/ui/theme.c +--- marco-1.22.0/src/ui/theme.c 2019-02-08 08:51:33.000000000 -0600 ++++ marco-1.22.0.new/src/ui/theme.c 2019-03-23 06:00:16.139892136 -0500 +@@ -60,7 +60,7 @@ + #include <gtk/gtk.h> + #include <string.h> + #include <stdlib.h> +-#define __USE_XOPEN ++#define _XOPEN_SOURCE + #include <math.h> + + #define GDK_COLOR_RGBA(color) \ diff --git a/user/mate-applets/APKBUILD b/user/mate-applets/APKBUILD new file mode 100644 index 000000000..c6973884d --- /dev/null +++ b/user/mate-applets/APKBUILD @@ -0,0 +1,41 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=mate-applets +pkgver=1.22.1 +pkgrel=0 +pkgdesc="Utility applications for the MATE desktop environment" +url="https://mate-desktop.org" +arch="all" +license="LGPL-2.0+ AND GPL-2.0+ AND GPL-2.0-only" +depends="" +makedepends="dbus-dev dbus-glib-dev gtk+3.0-dev gtksourceview-3.0-dev + gucharmap-dev intltool itstool libmateweather-dev libnotify-dev + libwnck-dev libxml2-dev libxml2-utils mate-panel-dev polkit-dev + upower-dev" +subpackages="$pkgname-doc $pkgname-lang" +source="https://pub.mate-desktop.org/releases/1.22/mate-applets-$pkgver.tar.xz" + +build() { + cd "$builddir" + rm -r mateweather/docs/ru + ./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="d132c8b5e433a557785745032235a5792d04edd7c249269d9a4066fb345b76955bdca71164f7b321f41f566803694d85d9cd7690fbd699daa54788572f0eb986 mate-applets-1.22.1.tar.xz" diff --git a/user/mate-backgrounds/APKBUILD b/user/mate-backgrounds/APKBUILD new file mode 100644 index 000000000..bd70d43a8 --- /dev/null +++ b/user/mate-backgrounds/APKBUILD @@ -0,0 +1,37 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=mate-backgrounds +pkgver=1.22.0 +pkgrel=0 +pkgdesc="Desktop wallpapers provided by the MATE desktop environment" +url="https://mate-desktop.org" +arch="noarch" +license="GPL-2.0+" +depends="" +makedepends="intltool" +subpackages="$pkgname-lang" +source="https://pub.mate-desktop.org/releases/${pkgver%.*}/mate-backgrounds-$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="b7135cdb20972d50f43026cf98275faaa3c5e41bd0900bca7624a8f9ed03d0ec7f465c78aaf3da534ea6798e8cc690727a1fed8f14b3fb42a8a63bd82858ff30 mate-backgrounds-1.22.0.tar.xz" diff --git a/user/mate-calc/APKBUILD b/user/mate-calc/APKBUILD new file mode 100644 index 000000000..a8f505202 --- /dev/null +++ b/user/mate-calc/APKBUILD @@ -0,0 +1,37 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=mate-calc +pkgver=1.22.1 +pkgrel=0 +pkgdesc="Calculator utility for the MATE desktop environment" +url="https://mate-desktop.org" +arch="all" +license="GPL-2.0+ AND GPL-2.0-only" +depends="" +makedepends="gtk+3.0-dev intltool itstool libxml2-utils libxml2-dev" +subpackages="$pkgname-doc $pkgname-lang" +source="https://pub.mate-desktop.org/releases/${pkgver%.*}/mate-calc-$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="8e8efa1c17f6b6330471d877bc4d9c8486c64fb22ac3e3caf13a47f8be030664f1ca635a2323a78c5345a838fda307c3b4913caa748a67cc45fe43b9c8070e9a mate-calc-1.22.1.tar.xz" diff --git a/user/mate-common/APKBUILD b/user/mate-common/APKBUILD new file mode 100644 index 000000000..e9e00f902 --- /dev/null +++ b/user/mate-common/APKBUILD @@ -0,0 +1,37 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=mate-common +pkgver=1.22.0 +pkgrel=0 +pkgdesc="Additional development support for the MATE desktop environment" +url="https://mate-desktop.org" +arch="noarch" +license="GPL-3.0-only" +depends="" +makedepends="" +subpackages="$pkgname-dev $pkgname-doc" +source="https://pub.mate-desktop.org/releases/1.22/mate-common-$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="3887634081c126c6c23f560ca256ae83edbc5f77f0fc0128c2aaa2b5652672ec6f21ca29b0b44802b03c5dfd53bf0da860093ec73c46fba58f7be12a1db1d2a3 mate-common-1.22.0.tar.xz" diff --git a/user/mate-complete/APKBUILD b/user/mate-complete/APKBUILD new file mode 100644 index 000000000..f3a5ac75a --- /dev/null +++ b/user/mate-complete/APKBUILD @@ -0,0 +1,26 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=mate-complete +pkgver=1.22.0 +pkgrel=0 +url="https://mate-desktop.org" +pkgdesc="Complete MATE desktop environment" +arch="noarch" +options="!check" # No tests +license=" " +depends="atril caja caja-dropbox caja-extensions engrampa eom marco + mate-applets mate-backgrounds mate-calc mate-control-center + mate-desktop mate-icon-theme mate-indicator-applet mate-media + mate-menus mate-netbook mate-notification-daemon mate-panel + mate-polkit mate-power-manager mate-screensaver mate-sensors-applet + mate-session-manager mate-settings-daemon mate-system-monitor + mate-terminal mate-user-guide mate-user-share mate-utils mozo pluma" +source="org.adelie-linux.about-mate.desktop" + +package() { + cd "$srcdir" + mkdir -p "$pkgdir"/usr/share/applications + install -Dm644 org.adelie-linux.about-mate.desktop "$pkgdir"/usr/share/applications +} + +sha512sums="24fd0524d949a22b22e38c81667f31498bc524302c52128c10d8a5802315720543426ba82245f5e7510832c493389ff59f36be14433f1a6a6c68993f733f329c org.adelie-linux.about-mate.desktop" diff --git a/user/mate-complete/org.adelie-linux.about-mate.desktop b/user/mate-complete/org.adelie-linux.about-mate.desktop new file mode 100644 index 000000000..53e23ed68 --- /dev/null +++ b/user/mate-complete/org.adelie-linux.about-mate.desktop @@ -0,0 +1,8 @@ +[Desktop Entry] +Type=Application +Version=1.0 +Name=About MATE +Comment=Learn about the MATE desktop environment +Icon=dialog-information +Categories=MATE +Exec=xdg-open https://mate-desktop.org diff --git a/user/mate-control-center/APKBUILD b/user/mate-control-center/APKBUILD new file mode 100644 index 000000000..93d563e05 --- /dev/null +++ b/user/mate-control-center/APKBUILD @@ -0,0 +1,40 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=mate-control-center +pkgver=1.22.1 +pkgrel=0 +pkgdesc="Configuration utilities for the MATE desktop environment" +url="https://mate-desktop.org" +arch="all" +license="GPL-2.0-only AND GPL-2.0+ AND LGPL-2.0+ AND LGPL-2.1+ AND MIT" +depends="" +makedepends="accountsservice-dev dbus-dev dbus-glib-dev desktop-file-utils + gtk+3.0-dev intltool itstool libcanberra-dev libmatekbd-dev + libxklavier-dev libxml2-dev libxml2-utils marco-dev mate-desktop-dev + mate-menus-dev mate-settings-daemon-dev" +subpackages="$pkgname-dev $pkgname-doc $pkgname-lang" +source="https://pub.mate-desktop.org/releases/${pkgver%.*}/mate-control-center-$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="92390bf5eea459effbd94f0488cdaf3d7b6ff4f548f1aafead928d75e064e85ec1ac7796289f96af2ca8f6cbf3ef57bd2ae37058192af0ec976f4770ec8abeca mate-control-center-1.22.1.tar.xz" diff --git a/user/mate-desktop/APKBUILD b/user/mate-desktop/APKBUILD new file mode 100644 index 000000000..8b4fb0fcc --- /dev/null +++ b/user/mate-desktop/APKBUILD @@ -0,0 +1,38 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=mate-desktop +pkgver=1.22.1 +pkgrel=0 +pkgdesc="Core library for the MATE desktop environment" +url="https://mate-desktop.org" +arch="all" +license="MIT AND LGPL-2.0+ AND GPL-2.0+" +depends="" +makedepends="dconf-dev gobject-introspection-dev gtk+3.0-dev intltool + iso-codes-dev librsvg startup-notification-dev" +subpackages="$pkgname-dev $pkgname-doc $pkgname-lang" +source="https://pub.mate-desktop.org/releases/${pkgver%.*}/mate-desktop-$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="bb2bf9de05439a0fcd4ab01ac628a2a235808cd07c1b7ce9abfbf2e64f98dc572603dfbd4a52bca5f03446825fba199715d7e08fcdc84f0df8d2ffeb4c87da62 mate-desktop-1.22.1.tar.xz" diff --git a/user/mate-icon-theme/APKBUILD b/user/mate-icon-theme/APKBUILD new file mode 100644 index 000000000..f06e39926 --- /dev/null +++ b/user/mate-icon-theme/APKBUILD @@ -0,0 +1,38 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=mate-icon-theme +pkgver=1.22.1 +pkgrel=0 +pkgdesc="Default icon theme for the MATE desktop environment" +url="https://mate-desktop.org" +arch="noarch" +license="LGPL-3.0-only OR CC-BY-SA-3.0" +depends="" +makedepends="icon-naming-utils-dev intltool" +subpackages="$pkgname-lang" +source="https://pub.mate-desktop.org/releases/${pkgver%.*}/mate-icon-theme-$pkgver.tar.xz" +builddir="$srcdir/mate-icon-theme-$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="640fea3dfd4d9f2edd24353e4a36d57520de356c421b24ee1aec7fca98d3f76a789808a1d005a20ed87ee089d1777376e5b3f229ce0e90b06adf242f6a79b3b9 mate-icon-theme-1.22.1.tar.xz" diff --git a/user/mate-indicator-applet/APKBUILD b/user/mate-indicator-applet/APKBUILD new file mode 100644 index 000000000..884c9e35c --- /dev/null +++ b/user/mate-indicator-applet/APKBUILD @@ -0,0 +1,38 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=mate-indicator-applet +pkgver=1.22.0 +pkgrel=0 +pkgdesc="MATE panel applet for consistent information display" +url="https://mate-desktop.org" +arch="all" +license="GPL-3.0+ AND LGPL-2.0+" +depends="" +makedepends="ayatana-ido-dev gtk+3.0-dev intltool libayatana-indicator-dev + mate-panel-dev" +subpackages="$pkgname-lang" +source="https://pub.mate-desktop.org/releases/${pkgver%.*}/mate-indicator-applet-$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="6e1dd133a521f247ecb648b3ffa542e326f504fd3b0719a74099e83ac1dfa9fd4d7676af284f89f69d6684e5640f240930bb0fb43bcf7d59472786adf4c3200c mate-indicator-applet-1.22.0.tar.xz" diff --git a/user/mate-media/APKBUILD b/user/mate-media/APKBUILD new file mode 100644 index 000000000..9850fcf9b --- /dev/null +++ b/user/mate-media/APKBUILD @@ -0,0 +1,38 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=mate-media +pkgver=1.22.1 +pkgrel=0 +pkgdesc="Media utilities for the MATE desktop environment" +url="https://mate-desktop.org" +arch="all" +license="GPL-2.0+" +depends="" +makedepends="gtk+3.0-dev intltool libcanberra-dev libmatemixer-dev libxml2-dev + mate-desktop-dev mate-panel-dev" +subpackages="$pkgname-doc $pkgname-lang" +source="https://pub.mate-desktop.org/releases/1.22/mate-media-$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="e7bce9128bc6e551cd918af669d52a7ca238a280a4ca09d15822f4d5b52fd9925b647278a39067a1f2a5dd0facfad4988385233939abbdf4aefecc21d2e089d9 mate-media-1.22.1.tar.xz" diff --git a/user/mate-menus/APKBUILD b/user/mate-menus/APKBUILD new file mode 100644 index 000000000..4d4fe80d4 --- /dev/null +++ b/user/mate-menus/APKBUILD @@ -0,0 +1,37 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=mate-menus +pkgver=1.22.0 +pkgrel=0 +pkgdesc="Desktop menu implementation for the MATE desktop environment" +url="https://mate-desktop.org" +arch="all" +license="LGPL-2.0+" +depends="" +makedepends="gobject-introspection-dev intltool" +subpackages="$pkgname-dev $pkgname-lang" +source="https://pub.mate-desktop.org/releases/1.22/mate-menus-$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="7ca02c1bb89c83b6b331fc2e8878862fa8f02f5cd52b297aa44b36dd5c2d1ee1ffeb1641d63a10bd4deb99f63ded9c3b890a05ab7f7faf32d7f895b0a2f68d70 mate-menus-1.22.0.tar.xz" diff --git a/user/mate-netbook/APKBUILD b/user/mate-netbook/APKBUILD new file mode 100644 index 000000000..885424a55 --- /dev/null +++ b/user/mate-netbook/APKBUILD @@ -0,0 +1,38 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=mate-netbook +pkgver=1.22.1 +pkgrel=0 +pkgdesc="Netbook-oriented window manager for the MATE desktop environment" +url="https://mate-desktop.org" +arch="all" +license="GPL-3.0-only AND LGPL-2.0+" +depends="" +makedepends="gtk+3.0-dev intltool libfakekey-dev libwnck-dev libxtst-dev + mate-panel-dev" +subpackages="$pkgname-doc $pkgname-lang" +source="https://pub.mate-desktop.org/releases/${pkgver%.*}/mate-netbook-$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="d0ba10d798e779e89b656a5bab2f5524c36755d58b877ba18482171c7673c5217ecf39b8098ff7b258634fbae62638d70bdf11e17f02f47c68ca96058f0ebb03 mate-netbook-1.22.1.tar.xz" diff --git a/user/mate-notification-daemon/APKBUILD b/user/mate-notification-daemon/APKBUILD new file mode 100644 index 000000000..c45995739 --- /dev/null +++ b/user/mate-notification-daemon/APKBUILD @@ -0,0 +1,37 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=mate-notification-daemon +pkgver=1.22.0 +pkgrel=0 +pkgdesc="Notification service for the MATE desktop environment" +url="https://mate-desktop.org" +arch="all" +license="GPL-2.0+" +depends="" +makedepends="gtk+3.0-dev intltool libcanberra-dev libnotify-dev libwnck-dev" +subpackages="$pkgname-dev $pkgname-doc $pkgname-lang" +source="https://pub.mate-desktop.org/releases/${pkgver%.*}/mate-notification-daemon-$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="1345604dee1315843ad5a6920aab7cbe1544c8f7c7ccea686e5684c7ea5272fa09d27edbcc996f6a568f8b3760f561b84901c44f93f1b3ae2d5ddcd3c3ce86fc mate-notification-daemon-1.22.0.tar.xz" diff --git a/user/mate-panel/APKBUILD b/user/mate-panel/APKBUILD new file mode 100644 index 000000000..bc2108938 --- /dev/null +++ b/user/mate-panel/APKBUILD @@ -0,0 +1,39 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=mate-panel +pkgver=1.22.1 +pkgrel=0 +pkgdesc="Panel for the MATE desktop environment" +url="https://mate-desktop.org" +arch="all" +license="GPL-2.0+ AND GPL-2.0-only AND LGPL-2.0+ AND MIT" +depends="" +makedepends="gobject-introspection-dev gtk+3.0-dev intltool itstool libice-dev + libmateweather-dev librsvg-dev libsm-dev libwnck-dev libxml2-utils + mate-desktop-dev mate-menus-dev" +subpackages="$pkgname-dev $pkgname-doc $pkgname-lang" +source="https://pub.mate-desktop.org/releases/${pkgver%.*}/mate-panel-$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="023599a2c0a879e32df11fc09d7526a54b8dc5248173c940e61df1dd9cbe8c04e4c916da89f5a64e44fe3f99462d56c72849314fc182c0af58a7c19e1fac642f mate-panel-1.22.1.tar.xz" diff --git a/user/mate-polkit/APKBUILD b/user/mate-polkit/APKBUILD new file mode 100644 index 000000000..345159cbc --- /dev/null +++ b/user/mate-polkit/APKBUILD @@ -0,0 +1,37 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=mate-polkit +pkgver=1.22.0 +pkgrel=0 +pkgdesc="PolKit integration for the MATE desktop environment" +url="https://mate-desktop.org" +arch="all" +license="LGPL-2.0+" +depends="" +makedepends="gtk+3.0-dev intltool polkit-dev" +subpackages="$pkgname-lang" +source="https://pub.mate-desktop.org/releases/${pkgver%.*}/mate-polkit-$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="e761ec10842789b5bbb3831f568c64e969429131a893850e8323927b949e115a24b3907fd3def7f31f5f785f0831717d852c61f08a9028a009ea9cca0ba86393 mate-polkit-1.22.0.tar.xz" diff --git a/user/mate-power-manager/APKBUILD b/user/mate-power-manager/APKBUILD new file mode 100644 index 000000000..8807ec167 --- /dev/null +++ b/user/mate-power-manager/APKBUILD @@ -0,0 +1,39 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=mate-power-manager +pkgver=1.22.1 +pkgrel=0 +pkgdesc="Power management utility for the MATE desktop environment" +url="https://mate-desktop.org" +arch="all" +license="GPL-2.0+ AND LGPL-2.0+" +depends="" +makedepends="dbus-dev dbus-glib-dev intltool itstool libcanberra-dev + libexecinfo-dev libgnome-keyring-dev libnotify-dev libxml2-utils + mate-panel-dev upower-dev" +subpackages="$pkgname-doc $pkgname-lang" +source="https://pub.mate-desktop.org/releases/${pkgver%.*}/mate-power-manager-$pkgver.tar.xz" + +build() { + cd "$builddir" + LIBS="-lexecinfo" ./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="8eabd7f8171f0a6be610c849fad8346bb30ca2c69208e2e117f436daaa5ada3bf0fef479dc017f32f56ec6bd52a7ff7ff69d18baf01b402c5fa2747245261a81 mate-power-manager-1.22.1.tar.xz" diff --git a/user/mate-screensaver/APKBUILD b/user/mate-screensaver/APKBUILD new file mode 100644 index 000000000..0dcfcba19 --- /dev/null +++ b/user/mate-screensaver/APKBUILD @@ -0,0 +1,38 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=mate-screensaver +pkgver=1.22.1 +pkgrel=0 +pkgdesc="Screensaver for the MATE desktop environment" +url="https://mate-desktop.org" +arch="all" +license="LGPL-2.0+ AND GPL-2.0+ AND MIT" +depends="" +makedepends="dbus-glib-dev gtk+3.0-dev intltool libxscrnsaver-dev + mate-desktop-dev mate-menus-dev" +subpackages="$pkgname-dev $pkgname-doc $pkgname-lang" +source="https://pub.mate-desktop.org/releases/${pkgver%.*}/mate-screensaver-$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="7ffb94d88095ff5580862fe9c958a2e4af7a424d40dc5e0f3c1da49a258035179573721fc7052710624916678e953a6347a898b53ff872a49e022987b8c02904 mate-screensaver-1.22.1.tar.xz" diff --git a/user/mate-sensors-applet/APKBUILD b/user/mate-sensors-applet/APKBUILD new file mode 100644 index 000000000..fcb3ebb96 --- /dev/null +++ b/user/mate-sensors-applet/APKBUILD @@ -0,0 +1,38 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=mate-sensors-applet +pkgver=1.22.1 +pkgrel=0 +pkgdesc="System monitoring applet for the MATE desktop environment" +url="https://mate-desktop.org" +arch="all" +license="GPL-2.0+" +depends="" +makedepends="gtk+3.0-dev intltool itstool libnotify-dev libxml2-utils libxslt + mate-panel-dev" +subpackages="$pkgname-dev $pkgname-doc $pkgname-lang" +source="https://pub.mate-desktop.org/releases/${pkgver%.*}/mate-sensors-applet-$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="4b6e608c92f03051044863f770b295d1526b19a9668513b566e81adeb28bc8524d8f458d114d2b44acf00f20c2f0a8d86b1ca7254fa165fde3b867c75a6b83e6 mate-sensors-applet-1.22.1.tar.xz" diff --git a/user/mate-session-manager/APKBUILD b/user/mate-session-manager/APKBUILD new file mode 100644 index 000000000..82ff187a5 --- /dev/null +++ b/user/mate-session-manager/APKBUILD @@ -0,0 +1,37 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=mate-session-manager +pkgver=1.22.1 +pkgrel=0 +pkgdesc="Session manager for the MATE desktop environment" +url="https://mate-desktop.org" +arch="all" +license="GPL-2.0+ AND LGPL-2.0+" +depends="" +makedepends="dbus-glib-dev gtk+3.0-dev intltool libsm-dev" +subpackages="$pkgname-doc $pkgname-lang" +source="https://pub.mate-desktop.org/releases/${pkgver%.*}/mate-session-manager-$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="1c47134813d24abef7b2f5df098120a2cd138f822ea3d687a1a2566224bbde21482bf40ac47ba08a39ed0899ff35eeac3c3690c83c006774c47f22189688990b mate-session-manager-1.22.1.tar.xz" diff --git a/user/mate-settings-daemon/APKBUILD b/user/mate-settings-daemon/APKBUILD new file mode 100644 index 000000000..df1a07ec1 --- /dev/null +++ b/user/mate-settings-daemon/APKBUILD @@ -0,0 +1,39 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=mate-settings-daemon +pkgver=1.22.0 +pkgrel=0 +pkgdesc="Settings daemon for the MATE desktop environment" +url="https://mate-desktop.org" +arch="all" +license="GPL-2.0+ AND MIT AND LGPL-2.0+ AND GPL-3.0+" +depends="" +makedepends="dbus-dev dbus-glib-dev dconf-dev gtk+3.0-dev intltool + libcanberra-dev libmatekbd-dev libmatemixer-dev libnotify-dev + mate-desktop-dev nss-dev polkit-dev pulseaudio-dev" +subpackages="$pkgname-dev $pkgname-doc $pkgname-lang" +source="https://pub.mate-desktop.org/releases/${pkgver%.*}/mate-settings-daemon-$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="e8fa2ba07195dd66a94312909be37abe67089c7a687afee3bfde5860a598e84481949c9cdc7408886f90776556b41d5574bd6efc0614ed7583908214d59c6cb5 mate-settings-daemon-1.22.0.tar.xz" diff --git a/user/mate-system-monitor/APKBUILD b/user/mate-system-monitor/APKBUILD new file mode 100644 index 000000000..78b8ce4b5 --- /dev/null +++ b/user/mate-system-monitor/APKBUILD @@ -0,0 +1,38 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=mate-system-monitor +pkgver=1.22.1 +pkgrel=0 +pkgdesc="System monitor utilities for the MATE desktop environment" +url="https://mate-desktop.org" +arch="all" +license="GPL-2.0+ AND LGPL-2.0+ AND GPL-2.0-only" +depends="" +makedepends="gtkmm+3.0-dev intltool itstool libgtop-dev librsvg-dev + libwnck-dev libxml2-dev libxml2-utils" +subpackages="$pkgname-doc $pkgname-lang" +source="https://pub.mate-desktop.org/releases/${pkgver%.*}/mate-system-monitor-$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="ce5c514c333b85d6dd94b9fa212b51ed78212781da9719f730c50fc61fcf433e1a7df1d2665fe90e9529fba08207df59858b66f982bcd070845f62b22f8bd82f mate-system-monitor-1.22.1.tar.xz" diff --git a/user/mate-terminal/APKBUILD b/user/mate-terminal/APKBUILD new file mode 100644 index 000000000..02da7e5b3 --- /dev/null +++ b/user/mate-terminal/APKBUILD @@ -0,0 +1,38 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=mate-terminal +pkgver=1.22.1 +pkgrel=0 +pkgdesc="Terminal emulator for the MATE desktop environment" +url="https://mate-desktop.org" +arch="all" +license="GPL-3.0+ AND LGPL-3.0+" +depends="" +makedepends="dconf-dev gtk+3.0-dev intltool itstool libsm-dev libxml2-utils + vte-dev" +subpackages="$pkgname-doc $pkgname-lang" +source="https://pub.mate-desktop.org/releases/${pkgver%.*}/mate-terminal-$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="b20102c15dc140b59c93802606ca94fd108dfd5f7ac7f079b872e957794fc2c3aab40c0e6da697e8d393a67fca7b106573a4cb8014af5d6c8ad777be3a798534 mate-terminal-1.22.1.tar.xz" diff --git a/user/mate-user-guide/APKBUILD b/user/mate-user-guide/APKBUILD new file mode 100644 index 000000000..3d905d3af --- /dev/null +++ b/user/mate-user-guide/APKBUILD @@ -0,0 +1,37 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=mate-user-guide +pkgver=1.22.1 +pkgrel=0 +pkgdesc="User handbook for the MATE desktop environment" +url="https://mate-desktop.org" +arch="noarch" +license="GFDL-1.1+" +depends="" +makedepends="intltool itstool libxml2-utils" +subpackages="$pkgname-lang" +source="https://pub.mate-desktop.org/releases/${pkgver%.*}/mate-user-guide-$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="972f609364cb0673c3c402f6936618ba4a212d122055ea18232734cc2cc9d023e9a16cbd78ba96898d227b6db640234c98b387550504224428bfc682b6090877 mate-user-guide-1.22.1.tar.xz" diff --git a/user/mate-user-share/APKBUILD b/user/mate-user-share/APKBUILD new file mode 100644 index 000000000..3e681aa4f --- /dev/null +++ b/user/mate-user-share/APKBUILD @@ -0,0 +1,40 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=mate-user-share +pkgver=1.22.0 +pkgrel=0 +pkgdesc="Inter-user file sharing utilities for the MATE desktop environment" +url="https://mate-desktop.org" +arch="all" +license="GPL-2.0+" +depends="" +makedepends="apache-httpd-dev caja-dev dbus-glib-dev gtk+3.0-dev intltool + itstool libcanberra-dev libnotify-dev libxml2-utils" +subpackages="$pkgname-doc $pkgname-lang" +source="https://pub.mate-desktop.org/releases/${pkgver%.*}/mate-user-share-$pkgver.tar.xz" + +build() { + cd "$builddir" + ./configure \ + --build=$CBUILD \ + --host=$CHOST \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --localstatedir=/var \ + --with-httpd=/usr/sbin/httpd \ + --with-modules-dir=/usr/libexec/apache2 + make +} + +check() { + cd "$builddir" + make check +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install +} + +sha512sums="151532ebe031a973e8825d86c9a315697f5930f89d78960946da3ba135238e3130c59018d04cf9dc8d343ff1613e51254701bbf8e23a9881733ecbb7e6fb9f18 mate-user-share-1.22.0.tar.xz" diff --git a/user/mate-utils/APKBUILD b/user/mate-utils/APKBUILD new file mode 100644 index 000000000..7d70c09f4 --- /dev/null +++ b/user/mate-utils/APKBUILD @@ -0,0 +1,38 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=mate-utils +pkgver=1.22.0 +pkgrel=0 +pkgdesc="Miscellaneous utilities for the MATE desktop environment" +url="https://mate-desktop.org" +arch="all" +license="LGPL-2.0+ AND LGPL-2.1+ AND GPL-2.0+ AND GPL-3.0+" +depends="" +makedepends="gtk+3.0-dev intltool itstool libcanberra-dev libgtop-dev + libsm-dev libxml2-utils mate-panel-dev" +subpackages="$pkgname-dev $pkgname-doc $pkgname-lang" +source="https://pub.mate-desktop.org/releases/${pkgver%.*}/mate-utils-$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="248c6e4108900768a4e8b272d20ac9b2d70e8bf77375f4669a099f4d8386c2e8affeafb772d209f00906f96f20d7ee347167ef4837186f44d8aaad85ef855f70 mate-utils-1.22.0.tar.xz" diff --git a/user/mednafen/APKBUILD b/user/mednafen/APKBUILD index 097454cad..0666bec0f 100644 --- a/user/mednafen/APKBUILD +++ b/user/mednafen/APKBUILD @@ -1,7 +1,7 @@ # Contributor: Horst Burkhardt <horst@adelielinux.org> # Maintainer: Horst Burkhardt <horst@adelielinux.org> pkgname=mednafen -pkgver=1.21.3 +pkgver=1.22.1 pkgrel=0 pkgdesc="an emulator for various home gaming consoles" url="https://mednafen.github.io/" @@ -12,18 +12,26 @@ license="GPL-2.0-only" depends="" makedepends="alsa-lib-dev flac-dev libogg-dev libsndfile-dev libvorbis-dev lzo-dev sdl2-dev zlib-dev" -source="https://mednafen.github.io/releases/files/$pkgname-$pkgver.tar.xz" +source="https://mednafen.github.io/releases/files/$pkgname-$pkgver.tar.xz + ppc.patch + ppc64.patch + " builddir="$srcdir/$pkgname" build() { - cd "$builddir" - ./configure --prefix=/usr --enable-ss=no - make + ./autogen.sh + export CXXFLAGS="$CXXFLAGS -fno-omit-frame-pointer" + ./configure \ + --prefix=/usr \ + --enable-ss=no \ + --enable-snes-faust=no + make } package() { - cd "$builddir" make DESTDIR="$pkgdir" install } -sha512sums="987c14edae68901f8a693c9f7317063daf4274bb0b650ed05cd01cf4ceb38d76e6ff5446c324447f73727096c74d0bf7f545cdeadfb6291d67656d659de26715 mednafen-1.21.3.tar.xz" +sha512sums="4e6890b984a812e188a42582e79dfdac28e101ce3bd658044b68f267d5c8b3799ea3f4de3dcac5314a615f17591a537b51e64f6bd165fec01f028b201eb32763 mednafen-1.22.1.tar.xz +264b22be3af9db57d0e8676d77b57338308764c79a5eae1c7bd3bb211c5e190ec0797e34a952039175395c0b8819e6285f2ac5f652ee0d5b9d1e0eaf43eca6e9 ppc.patch +84cbff76b16960ec67fec785fc6e8d541db342e9567fb6f4d42c84ced3fc0f0dfe702a8a7fd7af4f84835f8efe289e7cb9cf18766e4196525686eaa23b02537c ppc64.patch" diff --git a/user/mednafen/ppc.patch b/user/mednafen/ppc.patch new file mode 100644 index 000000000..0f795f169 --- /dev/null +++ b/user/mednafen/ppc.patch @@ -0,0 +1,11 @@ +--- mednafen/configure.ac.old 2019-01-28 06:52:37.000000000 +0000 ++++ mednafen/configure.ac 2019-03-24 22:30:31.180000000 +0000 +@@ -765,7 +765,7 @@ + AM_CONDITIONAL(ARCH_X86_32, true) + ;; + +- powerpc) ++ powerpc*|ppc*) + AC_DEFINE([ARCH_POWERPC], [1], [Define if we are compiling for PPC architectures.]) + AM_CONDITIONAL(ARCH_POWERPC, true) + diff --git a/user/mednafen/ppc64.patch b/user/mednafen/ppc64.patch new file mode 100644 index 000000000..734af47de --- /dev/null +++ b/user/mednafen/ppc64.patch @@ -0,0 +1,13 @@ +musl is always ELFv2, no matter endianness. + +--- mednafen/src/snes/src/lib/libco/ppc.c.old 2019-01-28 06:52:37.000000000 +0000 ++++ mednafen/src/snes/src/lib/libco/ppc.c 2019-03-25 03:42:05.330000000 +0000 +@@ -40,7 +40,7 @@ + /* Whether function calls are indirect through a descriptor, + or are directly to function */ + #ifndef LIBCO_PPCDESC +- #if !_CALL_SYSV && (_CALL_AIX || _CALL_AIXDESC || LIBCO_PPC64) ++ #if !_CALL_SYSV && (_CALL_AIX || _CALL_AIXDESC || (LIBCO_PPC64 && _CALL_ELF == 1)) + #define LIBCO_PPCDESC 1 + #endif + #endif diff --git a/user/mesa-demos/APKBUILD b/user/mesa-demos/APKBUILD index f89083ae4..d1c172828 100644 --- a/user/mesa-demos/APKBUILD +++ b/user/mesa-demos/APKBUILD @@ -3,7 +3,7 @@ # Maintainer: Dan Theisen <djt@hxx.in> pkgname=mesa-demos pkgver=8.4.0 -pkgrel=0 +pkgrel=1 pkgdesc="Mesa demos and utils" url="http://mesa3d.org" arch="all" @@ -25,6 +25,8 @@ build() { package() { cd "$builddir" make -j1 DESTDIR="$pkgdir" install + # conflicts with X11 bitmap tool + mv "$pkgdir"/usr/bin/bitmap "$pkgdir"/usr/bin/bitmap-demo } sha512sums="b72d03cad36e0535ff18dcfb222ec4200064b9264f6da51a6e5f03b0dd912abe188bc1d600b6698de3ce6f63b28d2ce01565886ca8e7079edc4967fbf2fb0957 mesa-demos-8.4.0.tar.bz2" diff --git a/user/mesa/APKBUILD b/user/mesa/APKBUILD index d9b27c865..4b8dc8d5a 100644 --- a/user/mesa/APKBUILD +++ b/user/mesa/APKBUILD @@ -1,6 +1,6 @@ # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=mesa -pkgver=18.3.4 +pkgver=18.3.6 pkgrel=0 pkgdesc="Mesa DRI OpenGL library" url="https://www.mesa3d.org" @@ -16,7 +16,7 @@ subpackages="$pkgname-dev $pkgname-glapi $pkgname-egl $pkgname-gl $pkgname-gles $pkgname-xatracker $pkgname-osmesa $pkgname-gbm " -_llvmver=7 +_llvmver=8 depends_dev="libdrm-dev libxcb-dev libxdamage-dev libxext-dev libxshmfence-dev xorgproto-dev" makedepends="$depends_dev byacc eudev-dev expat-dev flex libelf-dev @@ -230,7 +230,7 @@ _dri() { esac } -sha512sums="e4ead944ba053aa05425e9e199d633f576dfa424976253fc32438e8db6da5e8d381122e4c4b7fb18f94177421f208bab5567cfec8d2692d104e266483ca02a99 mesa-18.3.4.tar.xz +sha512sums="3a6dcaba99185e28d162b130bbd760fe87e6072065958189b28f41ea287ef041397897e098d93218a64802cf11c73806f7400a866bd8e5ed69694fa15c147487 mesa-18.3.6.tar.xz 9f7a050f09571a2b17098d495b82e2e85b293fb7285e7d6d7c3c48cd4220a1bdcc61a7321ba78dd14860939ecabe7e89b32d6110f3728f793273e1e26b78a553 musl-fixes.patch c7d91a660a033df91fac9c557039efc8669f0c26b2d35997d50753938b70d1af0bd110dcab3f8236eafab7d4be5dd7cd128a3e057e67e7e6a38a73fd6a7ef62e musl-fix-includes.patch 245d0d64d858dfadeeb544f31f7d0bb6ecb746a7fd5ec99755d679ae1a1eef4198d66473fb24d333eb6786bb8657012771e8285d67f165dc61a031df801947aa amdgpu-pthread-header.patch diff --git a/user/meson/APKBUILD b/user/meson/APKBUILD index d649ab340..25dae2457 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.49.2 +pkgver=0.50.1 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="d07a5dfd699f1e4b00af39c377ec186c91718d9595cb0ab506b4b40c0c63ddd14eccbe8afb446635272c431e2a78032888be0bc8f6064044da53e8c0b5f7be3f meson-0.49.2.tar.gz" +sha512sums="1e3dda7684e999b408a34b4b594f0b7d22494328dc0e98ec794625f16d821f2ef96303ffc761a52249e3919b52befe9fc02577dbd52e50f4b16e6c0f79ba2fca meson-0.50.1.tar.gz" diff --git a/user/minuet/APKBUILD b/user/minuet/APKBUILD index d6dd2837f..ef7180b64 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.12.3 +pkgver=19.04.1 pkgrel=0 pkgdesc="Music education software" url="https://minuet.kde.org/" @@ -40,4 +40,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="559c62c62aceadb10f2f501cddd9094e0ce2a5520d3c872fe5a76f6c3827828c6aca7850ce8c27b1c9126446887b87e7f39f65b861214733e4578816c6981660 minuet-18.12.3.tar.xz" +sha512sums="0db8274cc30d04c790a0261abdb32b9e759018a7725d25b0e50eab5b06117d3c2ab9a6e0f8ea1fbad22ccbe6fbeb366e557431b31e255919278591adcf48ace8 minuet-19.04.1.tar.xz" diff --git a/user/mkcomposecache/APKBUILD b/user/mkcomposecache/APKBUILD index dbd363bf0..d75231431 100644 --- a/user/mkcomposecache/APKBUILD +++ b/user/mkcomposecache/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=mkcomposecache -pkgver=1.2 +pkgver=1.2.1 pkgrel=0 pkgdesc="Utility to manipulate X11 Compose key cache files" url="https://www.X.Org/" @@ -10,10 +10,14 @@ license="MIT" depends="" makedepends="libx11-dev" subpackages="$pkgname-doc" -source="https://www.x.org/releases/individual/app/mkcomposecache-$pkgver.tar.bz2" +source="https://www.X.Org/releases/individual/app/mkcomposecache-$pkgver.tar.bz2" + +prepare() { + update_config_sub + default_prepare +} build() { - cd "$builddir" ./configure \ --build=$CBUILD \ --host=$CHOST \ @@ -25,13 +29,11 @@ build() { } check() { - cd "$builddir" make check } package() { - cd "$builddir" make DESTDIR="$pkgdir" install } -sha512sums="e81101dbf3324341a2aa6b12a6f1a67bf18484f69edc86e38f78f30b2e62d4d3a98d65dbd05540dfe437d739b5cdd330d1e381da87ec3fe4fe7c42fcef58aad7 mkcomposecache-1.2.tar.bz2" +sha512sums="97ce9e5e2f2534291fc0b3a121899e2936de3e71ec6a9929cfc6e1e0f41e6d57cccd08147a2b5d3c7d70d1769f14ed6c4745c398602d5b81a2ddb8c7490fcb5b mkcomposecache-1.2.1.tar.bz2" diff --git a/user/mkfontdir/APKBUILD b/user/mkfontdir/APKBUILD deleted file mode 100644 index 45629cd20..000000000 --- a/user/mkfontdir/APKBUILD +++ /dev/null @@ -1,41 +0,0 @@ -# Maintainer: A. Wilcox <awilfox@adelielinux.org> -pkgname=mkfontdir -pkgver=1.0.7 -pkgrel=3 -pkgdesc="Font file index utility from X.Org" -url="https://www.X.Org/" -arch="noarch" -license="X11 AND MIT" -depends="encodings mkfontscale" -makedepends="util-macros" -subpackages="$pkgname-doc" -triggers="$pkgname.trigger=/usr/share/fonts/* - $pkgname.trigger=/usr/share/fonts/X11/*" -source="https://www.X.Org/releases/individual/app/$pkgname-$pkgver.tar.bz2" - -prepare() { - cd "$builddir" - update_config_sub - default_prepare -} - -build() { - cd "$builddir" - ./configure \ - --build=$CBUILD \ - --host=$CHOST \ - --prefix=/usr - make -} - -check() { - cd "$builddir" - make check -} - -package() { - cd "$builddir" - make DESTDIR="$pkgdir" install -} - -sha512sums="96d1920565514f90621e18a87fb5a2db9e052d1bffc6552d9659e065a21e252ab98b4e62013755032b98ed6d8c3381eb75c3c8e02651766ee4791ca622dcef1f mkfontdir-1.0.7.tar.bz2" diff --git a/user/mkfontdir/mkfontdir.trigger b/user/mkfontdir/mkfontdir.trigger deleted file mode 100644 index 3024d71f1..000000000 --- a/user/mkfontdir/mkfontdir.trigger +++ /dev/null @@ -1,6 +0,0 @@ -#!/bin/sh - -for i in "$@"; do - mkfontdir -e "/usr/share/fonts/X11/encodings" -e "/usr/share/fonts/X11/encodings/large" -- "$i" -done - diff --git a/user/mkfontscale/APKBUILD b/user/mkfontscale/APKBUILD index c2d81ec73..cfda36c89 100644 --- a/user/mkfontscale/APKBUILD +++ b/user/mkfontscale/APKBUILD @@ -1,7 +1,7 @@ # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=mkfontscale -pkgver=1.1.3 -pkgrel=1 +pkgver=1.2.1 +pkgrel=0 pkgdesc="Scalable font file creator for X.Org" url="https://www.X.Org/" arch="all" @@ -9,12 +9,12 @@ license="MIT" subpackages="$pkgname-doc" depends="" makedepends="freetype-dev libfontenc-dev util-macros xorgproto-dev zlib-dev" +provides="mkfontdir=$pkgver-r$pkgrel" triggers="$pkgname.trigger=/usr/share/fonts/* $pkgname.trigger=/usr/share/fonts/X11/*" source="https://www.X.Org/releases/individual/app/$pkgname-$pkgver.tar.bz2" build() { - cd "$builddir" ./configure \ --build=$CBUILD \ --host=$CHOST \ @@ -23,13 +23,11 @@ build() { } check() { - cd "$builddir" make check } package() { - cd "$builddir" make DESTDIR="$pkgdir" install } -sha512sums="509e2f9cd55cf87cc3968c8767bf3f2386016278db8b7be75b7df34bf61f52519dd2778f3b9881ffbe30cc2fe26089c0a5b2c33af46bc7727f46dad83f030a62 mkfontscale-1.1.3.tar.bz2" +sha512sums="4d243160e1f7f8dfa6a8f53349c1a42a55fc99426455ebdef58352c5e951fce8b4f1fbd1061a76c9a148095b002eac372db1ae5e2647d2ccb4886635b317b18c mkfontscale-1.2.1.tar.bz2" diff --git a/user/mkfontscale/mkfontscale.trigger b/user/mkfontscale/mkfontscale.trigger index 2357e06dc..9b08da4b0 100644 --- a/user/mkfontscale/mkfontscale.trigger +++ b/user/mkfontscale/mkfontscale.trigger @@ -2,5 +2,6 @@ for i in "$@"; do mkfontscale "$i" + mkfontdir -e "/usr/share/fonts/X11/encodings" -e "/usr/share/fonts/X11/encodings/large" -- "$i" done diff --git a/user/mlt/APKBUILD b/user/mlt/APKBUILD index eedfc1e65..c42db62ba 100644 --- a/user/mlt/APKBUILD +++ b/user/mlt/APKBUILD @@ -1,7 +1,7 @@ # Contributor: Carlo Landmeter <clandmeter@gmail.com> # Maintainer: pkgname=mlt -pkgver=6.12.0 +pkgver=6.14.0 pkgrel=0 pkgdesc="MLT multimedia framework" url="https://www.mltframework.org/" @@ -13,7 +13,7 @@ makedepends="bsd-compat-headers ffmpeg-dev fftw-dev frei0r-plugins-dev qt5-qtbase-dev qt5-qtsvg-dev sdl_image-dev sox-dev" subpackages="$pkgname-dev" source="https://github.com/mltframework/mlt/releases/download/v$pkgver/mlt-$pkgver.tar.gz - mlt-6.8.0-locale-header.patch + mlt-6.14.0-locale-header.patch " build() { @@ -45,5 +45,5 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="ed2cc0eeda45558ae6f1ec8780dfd413641953dc12dc32dccf655649f68f8e6088d39fefb7bef7bae042a41096976004446019d82ea162785bc487009cb97680 mlt-6.12.0.tar.gz -c7c9fe70475ccf78c719c1ca6e1a7f2189e08abe04d556fe558dd787799bd7808d61326cfb2818eefe4a6868eed300b0c0d1480aa3df302b65b79a9a9aacc1b1 mlt-6.8.0-locale-header.patch" +sha512sums="86b26b0c421cc881f6bebbde2c0ae9d834f190d8f878fb279ab29a1d7ac5416077b7dd91420bf63a7821fade9ca9c044a92440e02673c7b330b8ff36982a9fb9 mlt-6.14.0.tar.gz +d00f01d50d5c78b1da5b43dc2b0bbfc49d5e383b602169ae9554734d29f6d43b9da8f97546141933c06ff0367bb4c9f0d2161bbcb6f016265bb0aa1dcbfcb3b1 mlt-6.14.0-locale-header.patch" diff --git a/user/mlt/mlt-6.14.0-locale-header.patch b/user/mlt/mlt-6.14.0-locale-header.patch new file mode 100644 index 000000000..28d659460 --- /dev/null +++ b/user/mlt/mlt-6.14.0-locale-header.patch @@ -0,0 +1,12 @@ +diff -Nurd mlt-6.14.0/src/framework/mlt_property.h mlt-6.14.0.new/src/framework/mlt_property.h +--- mlt-6.14.0/src/framework/mlt_property.h 2019-03-30 15:59:21.000000000 -0500 ++++ mlt-6.14.0.new/src/framework/mlt_property.h 2019-04-07 11:44:33.645881649 -0500 +@@ -30,7 +30,7 @@ + #include <sys/param.h> + #endif + +-#if (defined(__GLIBC__) && !defined(__APPLE__)) || defined(HAVE_LOCALE_H) ++#if (defined(__linux__) && !defined(__APPLE__)) || defined(HAVE_LOCALE_H) + # include <locale.h> + #elif defined(__APPLE__) || (defined(__FreeBSD_version) && __FreeBSD_version >= 900506) + # include <xlocale.h> diff --git a/user/mlt/mlt-6.8.0-locale-header.patch b/user/mlt/mlt-6.8.0-locale-header.patch deleted file mode 100644 index 5b45b600a..000000000 --- a/user/mlt/mlt-6.8.0-locale-header.patch +++ /dev/null @@ -1,18 +0,0 @@ -Extremely incorrect logic here; fix it so that locale_t is defined properly. - ---- mlt-6.8.0/src/framework/mlt_property.h.old 2018-05-10 20:16:56.000000000 -0500 -+++ mlt-6.8.0/src/framework/mlt_property.h 2018-06-07 05:22:57.345580154 -0500 -@@ -30,10 +30,10 @@ - #include <sys/param.h> - #endif - --#if (defined(__GLIBC__) && !defined(__APPLE__)) || HAVE_LOCALE_H --# include <locale.h> --#elif defined(__APPLE__) || (__FreeBSD_version >= 900506) -+#if defined(__APPLE__) || (__FreeBSD_version >= 900506) - # include <xlocale.h> -+#elif defined(__linux__) || HAVE_LOCALE_H -+# include <locale.h> - #else - typedef char* locale_t; - #endif diff --git a/user/modemmanager/01-org.freedesktop.ModemManager.rules b/user/modemmanager/01-org.freedesktop.ModemManager.rules new file mode 100644 index 000000000..c57f4c55c --- /dev/null +++ b/user/modemmanager/01-org.freedesktop.ModemManager.rules @@ -0,0 +1,8 @@ +// Let users in either 'plugdev' or 'dialout' control ModemManager +polkit.addRule(function(action, subject) { + if (/^org\.freedesktop\.ModemManager1\.(Device\.Control|Contacts|Messaging|Location)$/.test(action.id) && + (subject.isInGroup("plugdev") || subject.isInGroup("dialout")) && subject.active) { + return "yes"; + } +}); + diff --git a/user/modemmanager/APKBUILD b/user/modemmanager/APKBUILD new file mode 100644 index 000000000..a6ad0524d --- /dev/null +++ b/user/modemmanager/APKBUILD @@ -0,0 +1,48 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: A. Wilcox <awilfox@adelielinux.org> +pkgname=modemmanager +pkgver=1.10.0 +pkgrel=0 +pkgdesc="Software to control mobile broadband modems" +url="https://www.freedesktop.org/wiki/Software/ModemManager/" +arch="all" +license="GPL-2.0+ AND LGPL-2.1+" +depends="" +checkdepends="dbus-x11" +makedepends="glib-dev gobject-introspection-dev libgudev-dev libmbim-dev + libqmi-dev polkit-dev vala-dev" +subpackages="$pkgname-dev $pkgname-doc $pkgname-lang" +source="https://www.freedesktop.org/software/ModemManager/ModemManager-$pkgver.tar.xz + no-translit.patch + + 01-org.freedesktop.ModemManager.rules + " +builddir="$srcdir/ModemManager-$pkgver" + +build() { + ./configure \ + --build=$CBUILD \ + --host=$CHOST \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --localstatedir=/var \ + --disable-more-warnings \ + --enable-introspection \ + --enable-vala + make +} + +check() { + make check +} + +package() { + make DESTDIR="$pkgdir" install + install -D -m644 -t "$pkgdir"/usr/share/polkit-1/rules.d/ \ + "$srcdir"/01-org.freedesktop.ModemManager.rules +} + +sha512sums="676b11892b284c2da587895e71903f80ec96978c66eafae5e2d90e5c0f1dae18e50efc68b704c7907f01f208d585f5a8140316cf83e093df3f782c80949c33bc ModemManager-1.10.0.tar.xz +78e1c2ef604fb8b204618b9ecdc741ed7087fcc46ee563dbaaf6c9c0185165be58abfc3bf8ba89129fce7570c172cd1ac1e191e6d1200e3029c14a585ff40b83 no-translit.patch +31ded548acc8ccfcca5cd54384819b73ad9ac83556b754fa03a1a9c08aed7f913c7f066000abef0e52310721ef8c00ca8f48f1f762faaa5792420f62b5201881 01-org.freedesktop.ModemManager.rules" diff --git a/user/modemmanager/no-translit.patch b/user/modemmanager/no-translit.patch new file mode 100644 index 000000000..8f6d4b5f7 --- /dev/null +++ b/user/modemmanager/no-translit.patch @@ -0,0 +1,92 @@ +--- ModemManager-1.10.0/src/mm-broadband-modem.c.old 2019-01-15 14:57:35.000000000 +0000 ++++ ModemManager-1.10.0/src/mm-broadband-modem.c 2019-05-10 05:17:07.329881242 +0000 +@@ -7014,7 +7014,7 @@ + /* The raw SMS data can only be GSM, UCS2, or unknown (8-bit), so we + * need to convert to UCS2 here. + */ +- ucs2_text = g_convert (text, -1, "UCS-2BE//TRANSLIT", "UTF-8", NULL, &ucs2_len, NULL); ++ ucs2_text = g_convert (text, -1, "UCS-2BE", "UTF-8", NULL, &ucs2_len, NULL); + g_assert (ucs2_text); + raw = g_byte_array_sized_new (ucs2_len); + g_byte_array_append (raw, (const guint8 *) ucs2_text, ucs2_len); +--- ModemManager-1.10.0/src/mm-charsets.c.old 2019-05-10 05:09:21.350652258 +0000 ++++ ModemManager-1.10.0/src/mm-charsets.c 2019-05-10 05:16:41.752668021 +0000 +@@ -35,15 +35,15 @@ + } CharsetEntry; + + static CharsetEntry charset_map[] = { +- { "UTF-8", "UTF8", "UTF-8", "UTF-8//TRANSLIT", MM_MODEM_CHARSET_UTF8 }, +- { "UCS2", NULL, "UCS-2BE", "UCS-2BE//TRANSLIT", MM_MODEM_CHARSET_UCS2 }, +- { "IRA", "ASCII", "ASCII", "ASCII//TRANSLIT", MM_MODEM_CHARSET_IRA }, +- { "GSM", NULL, NULL, NULL, MM_MODEM_CHARSET_GSM }, +- { "8859-1", NULL, "ISO8859-1", "ISO8859-1//TRANSLIT", MM_MODEM_CHARSET_8859_1 }, +- { "PCCP437", "CP437", "CP437", "CP437//TRANSLIT", MM_MODEM_CHARSET_PCCP437 }, +- { "PCDN", "CP850", "CP850", "CP850//TRANSLIT", MM_MODEM_CHARSET_PCDN }, +- { "HEX", NULL, NULL, NULL, MM_MODEM_CHARSET_HEX }, +- { NULL, NULL, NULL, NULL, MM_MODEM_CHARSET_UNKNOWN } ++ { "UTF-8", "UTF8", "UTF-8", "UTF-8", MM_MODEM_CHARSET_UTF8 }, ++ { "UCS2", NULL, "UCS-2BE", "UCS-2BE", MM_MODEM_CHARSET_UCS2 }, ++ { "IRA", "ASCII", "ASCII", "ASCII", MM_MODEM_CHARSET_IRA }, ++ { "GSM", NULL, NULL, NULL, MM_MODEM_CHARSET_GSM }, ++ { "8859-1", NULL, "ISO8859-1", "ISO8859-1", MM_MODEM_CHARSET_8859_1 }, ++ { "PCCP437", "CP437", "CP437", "CP437", MM_MODEM_CHARSET_PCCP437 }, ++ { "PCDN", "CP850", "CP850", "CP850", MM_MODEM_CHARSET_PCDN }, ++ { "HEX", NULL, NULL, NULL, MM_MODEM_CHARSET_HEX }, ++ { NULL, NULL, NULL, NULL, MM_MODEM_CHARSET_UNKNOWN } + }; + + const char * +@@ -163,7 +163,7 @@ + g_return_val_if_fail (iconv_from != NULL, FALSE); + + converted = g_convert ((const gchar *)array->data, array->len, +- "UTF-8//TRANSLIT", iconv_from, ++ "UTF-8", iconv_from, + NULL, NULL, &error); + if (!converted || error) { + g_clear_error (&error); +@@ -195,7 +195,7 @@ + return unconverted; + + converted = g_convert (unconverted, unconverted_len, +- "UTF-8//TRANSLIT", iconv_from, ++ "UTF-8", iconv_from, + NULL, NULL, &error); + if (!converted || error) { + g_clear_error (&error); +@@ -226,7 +226,7 @@ + return g_strdup (src); + + converted = g_convert (src, strlen (src), +- iconv_to, "UTF-8//TRANSLIT", ++ iconv_to, "UTF-8", + NULL, &converted_len, &error); + if (!converted || error) { + g_clear_error (&error); +@@ -747,7 +747,7 @@ + + iconv_from = charset_iconv_from (charset); + utf8 = g_convert (str, strlen (str), +- "UTF-8//TRANSLIT", iconv_from, ++ "UTF-8", iconv_from, + NULL, NULL, &error); + if (!utf8 || error) { + g_clear_error (&error); +@@ -790,7 +790,7 @@ + * that is UTF-8, if any. + */ + utf8 = g_convert (str, strlen (str), +- "UTF-8//TRANSLIT", "UTF-8//TRANSLIT", ++ "UTF-8", "UTF-8", + &bread, &bwritten, NULL); + + /* Valid conversion, or we didn't get enough valid UTF-8 */ +@@ -804,7 +804,7 @@ + */ + str[bread] = '\0'; + utf8 = g_convert (str, strlen (str), +- "UTF-8//TRANSLIT", "UTF-8//TRANSLIT", ++ "UTF-8", "UTF-8", + NULL, NULL, NULL); + g_free (str); + break; diff --git a/user/montecarlo/APKBUILD b/user/montecarlo/APKBUILD index 71e45e6dd..f3c794409 100644 --- a/user/montecarlo/APKBUILD +++ b/user/montecarlo/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=montecarlo -pkgver=0 +pkgver=1 pkgrel=0 pkgdesc="Monospace typeface designed for programmers" url="http://www.bok.net/MonteCarlo/" diff --git a/user/mosh/APKBUILD b/user/mosh/APKBUILD index 323891e69..afa107c80 100644 --- a/user/mosh/APKBUILD +++ b/user/mosh/APKBUILD @@ -7,7 +7,7 @@ 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" +depends="$pkgname-client $pkgname-server perl" checkdepends="tmux perl" makedepends="ncurses-dev zlib-dev openssl-dev perl-dev perl-io-tty protobuf-dev automake autoconf libtool gzip" diff --git a/user/mozjs/0004-build-Copy-headers-on-install-instead-of-symlinking.patch b/user/mozjs/0004-build-Copy-headers-on-install-instead-of-symlinking.patch deleted file mode 100644 index cc55486b9..000000000 --- a/user/mozjs/0004-build-Copy-headers-on-install-instead-of-symlinking.patch +++ /dev/null @@ -1,35 +0,0 @@ -From 45919a0f627c7adde9f9676228448b4c53b291e5 Mon Sep 17 00:00:00 2001 -From: Rico Tzschichholz <ricotz@ubuntu.com> -Date: Wed, 5 Jul 2017 22:45:59 -0700 -Subject: [PATCH 04/10] build: Copy headers on install instead of symlinking - -Patch ported forward to mozjs52 by Philip Chimento -<philip.chimento@gmail.com>. - -https://bugzilla.mozilla.org/show_bug.cgi?id=1379537 ---- - python/mozbuild/mozbuild/backend/recursivemake.py | 6 +++--- - 1 file changed, 3 insertions(+), 3 deletions(-) - -diff --git a/python/mozbuild/mozbuild/backend/recursivemake.py b/python/mozbuild/mozbuild/backend/recursivemake.py -index 132dcf94..33d489a6 100644 ---- a/python/mozbuild/mozbuild/backend/recursivemake.py -+++ b/python/mozbuild/mozbuild/backend/recursivemake.py -@@ -1307,11 +1307,11 @@ class RecursiveMakeBackend(CommonBackend): - raise Exception("Wildcards are only supported in the filename part of " - "srcdir-relative or absolute paths.") - -- install_manifest.add_pattern_symlink(basepath, wild, path) -+ install_manifest.add_pattern_copy(basepath, wild, path) - else: -- install_manifest.add_pattern_symlink(f.srcdir, f, path) -+ install_manifest.add_pattern_copy(f.srcdir, f, path) - else: -- install_manifest.add_symlink(f.full_path, dest) -+ install_manifest.add_copy(f.full_path, dest) - else: - install_manifest.add_optional_exists(dest) - backend_file.write('%s_FILES += %s\n' % ( --- -2.13.0 - diff --git a/user/mozjs/0006-Disable-MOZ_GLUE_IN_PROGRAM-in-stand-alone-builds-on.patch b/user/mozjs/0006-Disable-MOZ_GLUE_IN_PROGRAM-in-stand-alone-builds-on.patch deleted file mode 100644 index dd0e40115..000000000 --- a/user/mozjs/0006-Disable-MOZ_GLUE_IN_PROGRAM-in-stand-alone-builds-on.patch +++ /dev/null @@ -1,68 +0,0 @@ -From ed8471fe677138b71477f25a6ee2732a80c1c5f7 Mon Sep 17 00:00:00 2001 -From: Till Schneidereit <till@tillschneidereit.net> -Date: Thu, 1 Oct 2015 12:59:09 +0200 -Subject: [PATCH 06/10] Disable MOZ_GLUE_IN_PROGRAM in stand-alone builds on - all platforms - -Otherwise, build fails not being able to find HashBytes. - -Patch ported forward to mozjs52 by Philip Chimento -<philip.chimento@gmail.com>. - -https://bugzilla.mozilla.org/show_bug.cgi?id=1176787 ---- - js/src/old-configure.in | 23 ++++++++++++++--------- - mozglue/build/moz.build | 2 +- - 2 files changed, 15 insertions(+), 10 deletions(-) - -diff --git a/js/src/old-configure.in b/js/src/old-configure.in -index c40eb962..336e1aa7 100644 ---- a/js/src/old-configure.in -+++ b/js/src/old-configure.in -@@ -1620,16 +1620,21 @@ dnl ======================================================== - dnl = Enable jemalloc - dnl ======================================================== - --case "${OS_TARGET}" in --Android|WINNT|Darwin) -+dnl In stand-alone builds we always only want to link executables against mozglue. -+if test "$JS_STANDALONE"; then - MOZ_GLUE_IN_PROGRAM= -- ;; --*) -- dnl On !Android !Windows !OSX, we only want to link executables against mozglue -- MOZ_GLUE_IN_PROGRAM=1 -- AC_DEFINE(MOZ_GLUE_IN_PROGRAM) -- ;; --esac -+else -+ case "${OS_TARGET}" in -+ Android|WINNT|Darwin) -+ MOZ_GLUE_IN_PROGRAM= -+ ;; -+ *) -+ dnl On !Android !Windows !OSX, we only want to link executables against mozglue -+ MOZ_GLUE_IN_PROGRAM=1 -+ AC_DEFINE(MOZ_GLUE_IN_PROGRAM) -+ ;; -+ esac -+fi - - if test "$MOZ_MEMORY"; then - if test "x$MOZ_DEBUG" = "x1"; then -diff --git a/mozglue/build/moz.build b/mozglue/build/moz.build -index d2897477..e3be5a2b 100644 ---- a/mozglue/build/moz.build -+++ b/mozglue/build/moz.build -@@ -6,7 +6,7 @@ - - # Build mozglue as a shared lib on Windows, OSX and Android. - # If this is ever changed, update MOZ_SHARED_MOZGLUE in browser/installer/Makefile.in --if CONFIG['OS_TARGET'] in ('WINNT', 'Darwin', 'Android'): -+if CONFIG['OS_TARGET'] in ('WINNT', 'Darwin', 'Android') and not CONFIG['JS_STANDALONE']: - SharedLibrary('mozglue') - else: - Library('mozglue') --- -2.13.0 - diff --git a/user/mozjs/0008-tests-Skip-on-all-64-bit-archs.patch b/user/mozjs/0008-tests-Skip-on-all-64-bit-archs.patch deleted file mode 100644 index 9f41e0fd6..000000000 --- a/user/mozjs/0008-tests-Skip-on-all-64-bit-archs.patch +++ /dev/null @@ -1,51 +0,0 @@ -From 6a5ffe6cc8c6c2b7cf18c1778279e993afbb660a Mon Sep 17 00:00:00 2001 -From: Marcin Juszkiewicz <mjuszkiewicz@redhat.com> -Date: Wed, 5 Jul 2017 21:05:27 -0700 -Subject: [PATCH 08/10] tests: Skip on all 64-bit archs - -Tests that are skipped on x86_64 should be skipped on all 64-bit -architectures. - -https://bugzilla.mozilla.org/show_bug.cgi?id=1357593 - -Taken from Fedora: -http://pkgs.fedoraproject.org/cgit/rpms/mozjs38.git/tree/fix-64bit-archs.patch ---- - js/src/tests/js1_5/Array/regress-157652.js | 2 +- - js/src/tests/js1_5/Array/regress-330812.js | 2 +- - js/src/tests/js1_5/Regress/regress-422348.js | 2 +- - 3 files changed, 3 insertions(+), 3 deletions(-) - -diff --git a/js/src/tests/js1_5/Array/regress-157652.js b/js/src/tests/js1_5/Array/regress-157652.js -index 0bdba8fd..9d77802c 100644 ---- a/js/src/tests/js1_5/Array/regress-157652.js -+++ b/js/src/tests/js1_5/Array/regress-157652.js -@@ -1,4 +1,4 @@ --// |reftest| skip-if(xulRuntime.XPCOMABI.match(/x86_64/)||Android) -- No test results -+// |reftest| skip-if(xulRuntime.XPCOMABI.match(/x86_64|aarch64|ppc64|ppc64le|s390x/)||Android) -- No test results - /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ - /* This Source Code Form is subject to the terms of the Mozilla Public - * License, v. 2.0. If a copy of the MPL was not distributed with this -diff --git a/js/src/tests/js1_5/Array/regress-330812.js b/js/src/tests/js1_5/Array/regress-330812.js -index 3a392976..c48f4c88 100644 ---- a/js/src/tests/js1_5/Array/regress-330812.js -+++ b/js/src/tests/js1_5/Array/regress-330812.js -@@ -1,4 +1,4 @@ --// |reftest| skip-if(xulRuntime.XPCOMABI.match(/x86_64/)||Android) -- No test results -+// |reftest| skip-if(xulRuntime.XPCOMABI.match(/x86_64|aarch64|ppc64|ppc64le|s390x/)||Android) -- No test results - /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ - /* This Source Code Form is subject to the terms of the Mozilla Public - * License, v. 2.0. If a copy of the MPL was not distributed with this -diff --git a/js/src/tests/js1_5/Regress/regress-422348.js b/js/src/tests/js1_5/Regress/regress-422348.js -index f2443c28..7ae83f4a 100644 ---- a/js/src/tests/js1_5/Regress/regress-422348.js -+++ b/js/src/tests/js1_5/Regress/regress-422348.js -@@ -1,4 +1,4 @@ --// |reftest| skip-if(xulRuntime.XPCOMABI.match(/x86_64/)) -- On 64-bit, takes forever rather than throwing -+// |reftest| skip-if(xulRuntime.XPCOMABI.match(/x86_64|aarch64|ppc64|ppc64le|s390x/)) -- On 64-bit, takes forever rather than throwing - /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ - /* This Source Code Form is subject to the terms of the Mozilla Public - * License, v. 2.0. If a copy of the MPL was not distributed with this --- -2.13.0 - diff --git a/user/mozjs/1002_drop_build_id.patch b/user/mozjs/1002_drop_build_id.patch new file mode 100644 index 000000000..9f62abaea --- /dev/null +++ b/user/mozjs/1002_drop_build_id.patch @@ -0,0 +1,33 @@ +From: Jory A. Pratt <anarchy@gentoo.org> + +We must drop build id as it causes conflicts when merging +thunderbird/firefox/seamonkey on same system when using +splitdebug + +diff --git a/js/src/old-configure.in b/js/src/old-configure.in +--- a/js/src/old-configure.in ++++ b/js/src/old-configure.in +@@ -478,23 +478,16 @@ if test "$GNU_CC"; then + + AC_MSG_CHECKING([for -z relro option to ld]) + _SAVE_LDFLAGS=$LDFLAGS + LDFLAGS="$LDFLAGS -Wl,-z,relro" + AC_TRY_LINK(,,AC_MSG_RESULT([yes]), + AC_MSG_RESULT([no]) + LDFLAGS=$_SAVE_LDFLAGS) + +- AC_MSG_CHECKING([for --build-id option to ld]) +- _SAVE_LDFLAGS=$LDFLAGS +- LDFLAGS="$LDFLAGS -Wl,--build-id" +- AC_TRY_LINK(,,AC_MSG_RESULT([yes]), +- AC_MSG_RESULT([no]) +- LDFLAGS=$_SAVE_LDFLAGS) +- + _DEFINES_CFLAGS="-include $jsconfdefs -DMOZILLA_CLIENT" + _USE_CPP_INCLUDE_FLAG=1 + fi + + if test "$GNU_CXX"; then + _DEFINES_CXXFLAGS="-DMOZILLA_CLIENT -include $jsconfdefs" + _USE_CPP_INCLUDE_FLAG=1 + fi diff --git a/user/mozjs/1004_fix_pie_detection.patch b/user/mozjs/1004_fix_pie_detection.patch new file mode 100644 index 000000000..e24adf365 --- /dev/null +++ b/user/mozjs/1004_fix_pie_detection.patch @@ -0,0 +1,34 @@ +From: Jory A. Pratt <anarchy@gentoo.org> + +CFLAGS must contain -fPIC when checking the linker + +diff --git a/build/autoconf/compiler-opts.m4 b/build/autoconf/compiler-opts.m4 +--- a/build/autoconf/compiler-opts.m4 ++++ b/build/autoconf/compiler-opts.m4 +@@ -205,23 +205,26 @@ MOZ_PIE= + + MOZ_ARG_ENABLE_BOOL(pie, + [ --enable-pie Enable Position Independent Executables], + MOZ_PIE=1, + MOZ_PIE= ) + + if test "$GNU_CC$CLANG_CC" -a -n "$MOZ_PIE"; then + AC_MSG_CHECKING([for PIE support]) ++ _SAVE_CFLAGS=$CFLAGS ++ CFLAGS="$CFLAGS -fPIC" + _SAVE_LDFLAGS=$LDFLAGS + LDFLAGS="$LDFLAGS $DSO_PIC_CFLAGS -pie" + AC_TRY_LINK(,,AC_MSG_RESULT([yes]) + [MOZ_PROGRAM_LDFLAGS="$MOZ_PROGRAM_LDFLAGS -pie"], + AC_MSG_RESULT([no]) + AC_MSG_ERROR([--enable-pie requires PIE support from the linker.])) + LDFLAGS=$_SAVE_LDFLAGS ++ CFLAGS=$_SAVE_CFLAGS + fi + + AC_SUBST(MOZ_PROGRAM_LDFLAGS) + + dnl ASan assumes no symbols are being interposed, and when that happens, + dnl it's not happy with it. Unconveniently, since Firefox is exporting + dnl libffi symbols and Gtk+3 pulls system libffi via libwayland-client, + dnl system libffi interposes libffi symbols that ASan assumes are in diff --git a/user/mozjs/6006_musl_pthread_setname.patch b/user/mozjs/6006_musl_pthread_setname.patch new file mode 100644 index 000000000..213509ff7 --- /dev/null +++ b/user/mozjs/6006_musl_pthread_setname.patch @@ -0,0 +1,29 @@ +From: Jory A. Pratt <anarchy@gentoo.org> + +set pthread name for non glibc systems + +diff --git a/js/src/threading/posix/Thread.cpp b/js/src/threading/posix/Thread.cpp +--- a/js/src/threading/posix/Thread.cpp ++++ b/js/src/threading/posix/Thread.cpp +@@ -155,18 +155,20 @@ + int rv; + #ifdef XP_DARWIN + rv = pthread_setname_np(name); + #elif defined(__DragonFly__) || defined(__FreeBSD__) || defined(__OpenBSD__) + pthread_set_name_np(pthread_self(), name); + rv = 0; + #elif defined(__NetBSD__) + rv = pthread_setname_np(pthread_self(), "%s", (void*)name); +-#else ++#elif defined(__GLIBC__) + rv = pthread_setname_np(pthread_self(), name); ++#else ++ rv = 0; + #endif + MOZ_RELEASE_ASSERT(!rv); + } + + void js::ThisThread::GetName(char* nameBuffer, size_t len) { + MOZ_RELEASE_ASSERT(len >= 16); + + int rv = -1; diff --git a/user/mozjs/APKBUILD b/user/mozjs/APKBUILD index 7760654b5..78d4ea352 100644 --- a/user/mozjs/APKBUILD +++ b/user/mozjs/APKBUILD @@ -1,8 +1,8 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=mozjs -pkgver=52.4.0 -pkgrel=1 +pkgver=60.5.2 +pkgrel=0 pkgdesc="Standalone JavaScript interpreter from Mozilla" url="https://developer.mozilla.org/en-US/docs/Mozilla/Projects/SpiderMonkey" arch="all" @@ -10,51 +10,70 @@ license="NPL-1.1" depends="" depends_dev="$pkgname=$pkgver-r$pkgrel" makedepends="autoconf2.13 icu-dev libffi-dev nspr-dev python3 cmd:which - zlib-dev" + zlib-dev + ncurses-dev openssl-dev" subpackages="$pkgname-dev" source="https://distfiles.adelielinux.org/source/mozilla/mozjs-$pkgver.tar.bz2 + https://www.python.org/ftp/python/2.7.15/Python-2.7.15.tar.xz 0003-build-Fix-library-install-name-on-macOS.patch - 0004-build-Copy-headers-on-install-instead-of-symlinking.patch - 0006-Disable-MOZ_GLUE_IN_PROGRAM-in-stand-alone-builds-on.patch - 0008-tests-Skip-on-all-64-bit-archs.patch 0009-build-Include-configure-script-be-nicer-about-option.patch - baseconfig.patch - dont-fail-tests-without-ion.patch - python3.patch + 1002_drop_build_id.patch + 1004_fix_pie_detection.patch + 6006_musl_pthread_setname.patch + endian.patch " builddir="$srcdir/mozjs-$pkgver" +unpack() { + default_unpack + [ -z $SKIP_PYTHON ] || return 0 + + msg "Killing all remaining hope for humanity and building Python 2..." + cd "$srcdir/Python-2.7.15" + [ -d ../python ] && rm -r ../python + # 19:39 <+solar> just make the firefox build process build its own py2 copy + # 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 +} + prepare() { cd "$builddir" default_prepare cd "$builddir"/js/src + export PATH="$srcdir/python/bin:$PATH" autoconf-2.13 old-configure.in >/dev/null autoconf-2.13 } build() { - cd "$builddir"/js/src - ./configure \ + cd "$builddir"/js/src/build + export PATH="$srcdir/python/bin:$PATH" + ../configure \ --build=$CBUILD \ --host=$CHOST \ --prefix=/usr \ --disable-jemalloc \ --disable-optimize \ - --enable-ion \ --enable-tests \ --with-intl-api \ --with-system-icu \ - --with-system-nspr + --with-system-nspr \ + --with-system-zlib MOZ_MAKE_FLAGS="$MAKEFLAGS" make } check() { - cd "$builddir"/js/src + cd "$builddir"/js/src/build dist/bin/jsapi-tests } package() { - cd "$builddir"/js/src + cd "$builddir"/js/src/build make DESTDIR="$pkgdir" install # no real point for 400 MB monster. @@ -62,12 +81,11 @@ package() { rm "$pkgdir"/usr/lib/libjs_static.ajs } -sha512sums="80e006ed7550b64dad7cf78335dd9f2d34f50ad486439887f0088eb3817242d24cf7c1d9325e2dcd4a01fd5c5f54d710873113b97fd914ccd961fa46a71653fa mozjs-52.4.0.tar.bz2 +sha512sums="5fb73330e7803bdd524fbe7cfdf4e6b72e85d4b22b0c827400317b5d052d1088d36e558ceac376393089e9d03e658b24e69262851fc04a66bbcda47135423dc0 mozjs-60.5.2.tar.bz2 +27ea43eb45fc68f3d2469d5f07636e10801dee11635a430ec8ec922ed790bb426b072da94df885e4dfa1ea8b7a24f2f56dd92f9b0f51e162330f161216bd6de6 Python-2.7.15.tar.xz 8563264274c8b47c41fcce0b23d8d31467c60b4f1e6b37e14a390950f0d4c84be08919e0cf3578367ca1c76633201fc7d182c98a1efb57b17ce176a3e1ed5b0d 0003-build-Fix-library-install-name-on-macOS.patch -edbec26bff4fb91911b1dafc566d4cf37635e9039a1cbd527543d74765d1c96bcfae71fe4f9a66c6555750f402377db4963e2afe0d6b061f48dbab78717bd177 0004-build-Copy-headers-on-install-instead-of-symlinking.patch -d9acf4570a073a2151e19ad854e72ff927d050b532f04367bf49fb0c98f8eb544e9f6c455b1411d09a8a3034a2be62e23b7f9080fac9249e4132e85f2245d474 0006-Disable-MOZ_GLUE_IN_PROGRAM-in-stand-alone-builds-on.patch -a95e91ffa3693ac2ac81eddee2e490b4acfb5ae0381a291b1916afc0d91fb00b95457fde0efe62905025fe425c18d5363c5e6ad1bb121645b29a14f6c76c0489 0008-tests-Skip-on-all-64-bit-archs.patch 2556f3322c5bc39c1efbbbd19b6843cf69b63a0255e8e3617f58b229e75ac221b6cb57fce15452cd1f25498c66f29f588f38c10c175b82c6fe163faaa7e3e2b0 0009-build-Include-configure-script-be-nicer-about-option.patch -22870d6ee8a0a0b4359d78173aef0ade49063bfad495fd40815852684a1cdf17f9f50585e0d693eb712c2a2225ea43c4387cf454f3b9bd39e01899f3936775f1 baseconfig.patch -6ebaf6fd24f1987020ad0da82cd2ff878e5c27997ac45a571899f492b435d12e32274eac35e2d571775b6f6bdce24f8e7a968088da61329e2cd36dfc762a0156 dont-fail-tests-without-ion.patch -66a894b4878797438ac1361b892df4df45fe0c990e9540235336116a2dbfcc5d787a3076dca323b8252fb8cb6e39a61819fc0d4ce1491fb9e4d07c912fdf9e4d python3.patch" +0882664005d65d491d4b3d0cd73a2163637730eff41a2ad3ae1ea4e855e8728b83d1bc42632901d717f947a11e6c1c42a33f5286b0adedda3111068ae1425259 1002_drop_build_id.patch +11cef339e8ba5d446d9fbb3947c6526294a3577025f21323cfd959707cbcc36f24535d5b68ea286220891de584ae6deef9408e838fc720af453062a179f22f42 1004_fix_pie_detection.patch +00cc3ea149ea8527393fa3995fcb6fa7af41fc79488c38df2bcd3326dbf43bcc83db509b6dbf2c9c8d68998ce2c1ab1f18c1c46584d9aeb63ddd2cf05b1ca1ce 6006_musl_pthread_setname.patch +363f1df1a78799783b4e9f887dc85d83ec83c6ec392aeacbd98dc89e543d0cd3b9d1964ce274142b44847a03c47f845cbf6fa7fa17a04b25bbaa37fc5d714730 endian.patch" diff --git a/user/mozjs/baseconfig.patch b/user/mozjs/baseconfig.patch deleted file mode 100644 index ee52728fa..000000000 --- a/user/mozjs/baseconfig.patch +++ /dev/null @@ -1,22 +0,0 @@ -Fix various paths to include MOZ_APP_VERSION - -This has been committed upstream but was not included in -the 52.4.0 sources that spidermonkey was rolled from. - ---- a/config/baseconfig.mk 2017-10-03 14:00:45.000000000 -0400 -+++ b/config/baseconfig.mk 2017-10-03 16:36:10.857663794 -0400 -@@ -2,10 +2,10 @@ - # directly in python/mozbuild/mozbuild/base.py for gmake validation. - # We thus use INCLUDED_AUTOCONF_MK to enable/disable some parts depending - # whether a normal build is happening or whether the check is running. --includedir := $(includedir)/$(MOZ_APP_NAME) --idldir = $(includedir)/idl/$(MOZ_APP_NAME) --installdir = $(libdir)/$(MOZ_APP_NAME) --sdkdir = $(libdir)/$(MOZ_APP_NAME) -+includedir := $(includedir)/$(MOZ_APP_NAME)-$(MOZ_APP_VERSION) -+idldir = $(includedir)/idl/$(MOZ_APP_NAME)-$(MOZ_APP_VERSION) -+installdir = $(libdir)/$(MOZ_APP_NAME)-$(MOZ_APP_VERSION) -+sdkdir = $(libdir)/$(MOZ_APP_NAME)-$(MOZ_APP_VERSION) - ifeq (.,$(DEPTH)) - DIST = dist - else diff --git a/user/mozjs/dont-fail-tests-without-ion.patch b/user/mozjs/dont-fail-tests-without-ion.patch deleted file mode 100644 index 569947cdc..000000000 --- a/user/mozjs/dont-fail-tests-without-ion.patch +++ /dev/null @@ -1,39 +0,0 @@ - -# HG changeset patch -# User Steve Fink <sfink@mozilla.com> -# Date 1519362707 28800 -# Node ID 7b78c4aa2d589e088519b4f76bddf8ded33283a6 -# Parent 9b8b888e1ce64b1a607158681aecb959721d1326 -Bug 1426006 - Do not expect ion scripts when ion is unavailable. r=bbouvier, a=RyanVM - -diff --git a/js/src/jsapi-tests/testPreserveJitCode.cpp b/js/src/jsapi-tests/testPreserveJitCode.cpp ---- a/js/src/jsapi-tests/testPreserveJitCode.cpp -+++ b/js/src/jsapi-tests/testPreserveJitCode.cpp -@@ -38,24 +38,20 @@ testPreserveJitCode(bool preserveJitCode - cx->options().setBaseline(true); - cx->options().setIon(true); - cx->setOffthreadIonCompilationEnabled(false); - - RootedObject global(cx, createTestGlobal(preserveJitCode)); - CHECK(global); - JSAutoCompartment ac(cx, global); - --#ifdef JS_CODEGEN_ARM64 -- // The ARM64 Ion JIT is not yet enabled, so this test will fail with -- // countIonScripts(global) == 0. Once Ion is enabled for ARM64, this test -- // should be passing again, and this code can be deleted. -- // Bug 1208526 - ARM64: Reenable jsapi-tests/testPreserveJitCode once Ion is enabled -+ // The Ion JIT may be unavailable due to --disable-ion or lack of support -+ // for this platform. - if (!js::jit::IsIonEnabled(cx)) - knownFail = true; --#endif - - CHECK_EQUAL(countIonScripts(global), 0u); - - const char* source = - "var i = 0;\n" - "var sum = 0;\n" - "while (i < 10) {\n" - " sum += i;\n" - diff --git a/user/mozjs/endian.patch b/user/mozjs/endian.patch new file mode 100644 index 000000000..1a04573ea --- /dev/null +++ b/user/mozjs/endian.patch @@ -0,0 +1,141 @@ +Bug 1488552 - Ensure proper running on 64-bit and 32-bit BE platforms. + +diff --git a/js/src/gc/RelocationOverlay.h b/js/src/gc/RelocationOverlay.h +--- a/js/src/gc/RelocationOverlay.h ++++ b/js/src/gc/RelocationOverlay.h +@@ -29,23 +29,34 @@ struct Cell; + * This structure overlays a Cell that has been moved and provides a way to find + * its new location. It's used during generational and compacting GC. + */ + class RelocationOverlay { + /* See comment in js/public/HeapAPI.h. */ + static const uint32_t Relocated = js::gc::Relocated; + ++#if MOZ_LITTLE_ENDIAN || JS_BITS_PER_WORD == 32 + /* +- * Keep the low 32 bits untouched. Use them to distinguish strings from ++ * Keep the first 32 bits untouched. Use them to distinguish strings from + * objects in the nursery. + */ + uint32_t preserve_; + + /* Set to Relocated when moved. */ + uint32_t magic_; ++#elif JS_BITS_PER_WORD == 64 ++ /* ++ * On big-endian, we need to reorder to keep preserve_ lined up with the ++ * low 32 bits of the aligned group_ pointer in JSObject. ++ */ ++ uint32_t magic_; ++ uint32_t preserve_; ++#else ++# error "Unknown endianness or word size" ++#endif + + /* The location |this| was moved to. */ + Cell* newLocation_; + + /* A list entry to track all relocated things. */ + RelocationOverlay* next_; + + public: +diff --git a/js/src/vm/StringType.h b/js/src/vm/StringType.h +--- a/js/src/vm/StringType.h ++++ b/js/src/vm/StringType.h +@@ -2,16 +2,17 @@ + * vim: set ts=8 sts=4 et sw=4 tw=99: + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ + + #ifndef vm_StringType_h + #define vm_StringType_h + ++#include "mozilla/EndianUtils.h" + #include "mozilla/MemoryReporting.h" + #include "mozilla/PodOperations.h" + #include "mozilla/Range.h" + + #include "jsapi.h" + #include "jsfriendapi.h" + + #include "builtin/String.h" +@@ -168,8 +168,20 @@ class JSString : public js::gc::Cell + struct Data { + union { + struct { ++#if MOZ_LITTLE_ENDIAN || JS_BITS_PER_WORD == 32 + uint32_t flags; /* JSString */ + uint32_t length; /* JSString */ ++#elif JS_BITS_PER_WORD == 64 ++ /* ++ * On big-endian, we need to reorder to keep flags lined up ++ * with the low 32 bits of the aligned group_ pointer in ++ * JSObject. ++ */ ++ uint32_t length; /* JSString */ ++ uint32_t flags; /* JSString */ ++#else ++# error "Unknown endianness or word size" ++#endif + }; + uintptr_t flattenData; /* JSRope (temporary while flattening) */ + } u1; +--- thunderbird-60.2.1/js/src/gc/Marking-inl.h.old 2018-10-01 14:51:12.000000000 +0000 ++++ thunderbird-60.2.1/js/src/gc/Marking-inl.h 2018-10-12 19:08:28.260000000 +0000 +@@ -92,13 +92,29 @@ + MOZ_ASSERT(!isForwarded()); + // The location of magic_ is important because it must never be valid to see + // the value Relocated there in a GC thing that has not been moved. ++#if MOZ_LITTLE_ENDIAN || JS_BITS_PER_WORD == 32 ++ // On 32-bit, the magic_ aliases with whatever comes after the first ++ // pointer; on little-endian 64-bit, the magic_ aliases with the ++ // 32 most significant bits of the pointer, which are the second half. + static_assert(offsetof(RelocationOverlay, magic_) == + offsetof(JSObject, group_) + sizeof(uint32_t), + "RelocationOverlay::magic_ is in the wrong location"); + static_assert(offsetof(RelocationOverlay, magic_) == + offsetof(js::Shape, base_) + sizeof(uint32_t), + "RelocationOverlay::magic_ is in the wrong location"); ++#elif JS_BITS_PER_WORD == 64 ++ // On big-endian 64-bit, the magic_ aliases with the 32 most ++ // significant bits of the pointer, but now that's the first half. ++ static_assert(offsetof(RelocationOverlay, magic_) == ++ offsetof(JSObject, group_), ++ "RelocationOverlay::magic_ is in the wrong location"); ++ static_assert(offsetof(RelocationOverlay, magic_) == ++ offsetof(js::Shape, base_), ++ "RelocationOverlay::magic_ is in the wrong location"); ++#else ++# error "Unknown endianness or word size" ++#endif + static_assert( + offsetof(RelocationOverlay, magic_) == offsetof(JSString, d.u1.length), + "RelocationOverlay::magic_ is in the wrong location"); + magic_ = Relocated; +--- thunderbird-60.2.1/js/src/jsfriendapi.h.old 2018-10-01 14:51:13.000000000 +0000 ++++ thunderbird-60.2.1/js/src/jsfriendapi.h 2018-10-12 19:12:06.190000000 +0000 +@@ -9,6 +9,7 @@ + + #include "mozilla/Atomics.h" + #include "mozilla/Casting.h" ++#include "mozilla/EndianUtils.h" + #include "mozilla/Maybe.h" + #include "mozilla/MemoryReporting.h" + #include "mozilla/UniquePtr.h" +@@ -640,8 +641,15 @@ + static const uint32_t LATIN1_CHARS_BIT = JS_BIT(6); + static const uint32_t EXTERNAL_FLAGS = LINEAR_BIT | NON_ATOM_BIT | JS_BIT(5); + static const uint32_t TYPE_FLAGS_MASK = JS_BIT(6) - 1; ++#if MOZ_LITTLE_ENDIAN || JS_BITS_PER_WORD == 32 + uint32_t flags; + uint32_t length; ++#elif JS_BITS_PER_WORD == 64 ++ uint32_t length; ++ uint32_t flags; ++#else ++# error "Unknown endianness or word size" ++#endif + union { + const JS::Latin1Char* nonInlineCharsLatin1; + const char16_t* nonInlineCharsTwoByte; diff --git a/user/mozjs/python3.patch b/user/mozjs/python3.patch index 2ff9dcfa6..65fc9da53 100644 --- a/user/mozjs/python3.patch +++ b/user/mozjs/python3.patch @@ -424,17 +424,6 @@ return bool(self._set) def __iter__(self): ---- mozjs-52.4.0/python/mozbuild/mozbuild/milestone.py (original) -+++ mozjs-52.4.0/python/mozbuild/mozbuild/milestone.py (refactored) -@@ -2,7 +2,7 @@ - # License, v. 2.0. If a copy of the MPL was not distributed with this - # file, You can obtain one at http://mozilla.org/MPL/2.0/. - --from __future__ import absolute_import, print_function, unicode_literals -+ - - import argparse - import os --- mozjs-52.4.0/python/mozbuild/mozbuild/mozconfig.py (original) +++ mozjs-52.4.0/python/mozbuild/mozbuild/mozconfig.py (refactored) @@ -2,7 +2,7 @@ @@ -962,26 +951,6 @@ - print('%s=%s' % (key, value)) +for key, value in list(os.environ.items()): + print(('%s=%s' % (key, value))) ---- mozjs-52.4.0/python/mozbuild/mozbuild/action/explode_aar.py (original) -+++ mozjs-52.4.0/python/mozbuild/mozbuild/action/explode_aar.py (refactored) -@@ -2,7 +2,7 @@ - # License, v. 2.0. If a copy of the MPL was not distributed with this - # file, You can obtain one at http://mozilla.org/MPL/2.0/. - --from __future__ import absolute_import, print_function, unicode_literals -+ - - import argparse - import errno -@@ -44,7 +44,7 @@ - assets = mozpath.join(destdir, 'assets') - try: - os.rmdir(assets) -- except OSError, e: -+ except OSError as e: - if e.errno in (errno.ENOTEMPTY, errno.ENOENT): - pass - else: --- mozjs-52.4.0/python/mozbuild/mozbuild/action/file_generate.py (original) +++ mozjs-52.4.0/python/mozbuild/mozbuild/action/file_generate.py (refactored) @@ -6,7 +6,7 @@ @@ -1201,17 +1170,6 @@ from mozpack.files import FileFinder from mozpack.copier import Jarrer ---- mozjs-52.4.0/python/mozbuild/mozbuild/backend/android_eclipse.py (original) -+++ mozjs-52.4.0/python/mozbuild/mozbuild/backend/android_eclipse.py (refactored) -@@ -2,7 +2,7 @@ - # License, v. 2.0. If a copy of the MPL was not distributed with this - # file, You can obtain one at http://mozilla.org/MPL/2.0/. - --from __future__ import absolute_import, unicode_literals -+ - - import itertools - import os --- mozjs-52.4.0/python/mozbuild/mozbuild/backend/base.py (original) +++ mozjs-52.4.0/python/mozbuild/mozbuild/backend/base.py (refactored) @@ -2,7 +2,7 @@ @@ -3235,21 +3193,6 @@ os.path.join(os.path.abspath(mozbuild_path), '__init__.py'), os.path.join(os.path.abspath(mozbuild_path), 'pythonutil.py'), os.path.join(os.path.abspath(mozbuild_path), 'test', 'test_pythonutil.py'), ---- mozjs-52.4.0/python/mozbuild/mozbuild/test/test_testing.py (original) -+++ mozjs-52.4.0/python/mozbuild/mozbuild/test/test_testing.py (refactored) -@@ -2,9 +2,9 @@ - # License, v. 2.0. If a copy of the MPL was not distributed with this - # file, You can obtain one at http://mozilla.org/MPL/2.0/. - --from __future__ import unicode_literals -- --import cPickle as pickle -+ -+ -+import pickle as pickle - import os - import shutil - import tempfile --- mozjs-52.4.0/python/mozbuild/mozbuild/test/test_util.py (original) +++ mozjs-52.4.0/python/mozbuild/mozbuild/test/test_util.py (refactored) @@ -3,7 +3,7 @@ @@ -3488,17 +3431,6 @@ import os import unittest ---- mozjs-52.4.0/python/mozbuild/mozbuild/test/backend/test_android_eclipse.py (original) -+++ mozjs-52.4.0/python/mozbuild/mozbuild/test/backend/test_android_eclipse.py (refactored) -@@ -2,7 +2,7 @@ - # License, v. 2.0. If a copy of the MPL was not distributed with this - # file, You can obtain one at http://mozilla.org/MPL/2.0/. - --from __future__ import unicode_literals -+ - - import json - import os --- mozjs-52.4.0/python/mozbuild/mozbuild/test/backend/test_build.py (original) +++ mozjs-52.4.0/python/mozbuild/mozbuild/test/backend/test_build.py (refactored) @@ -2,7 +2,7 @@ @@ -7145,26 +7077,6 @@ import posixpath import os ---- mozjs-52.4.0/python/mozbuild/mozpack/unify.py (original) -+++ mozjs-52.4.0/python/mozbuild/mozpack/unify.py (refactored) -@@ -2,7 +2,7 @@ - # License, v. 2.0. If a copy of the MPL was not distributed with this - # file, You can obtain one at http://mozilla.org/MPL/2.0/. - --from __future__ import absolute_import -+ - - from mozpack.files import ( - BaseFinder, -@@ -73,7 +73,7 @@ - creating the instance. - skip_if_older is ignored. - ''' -- assert isinstance(dest, basestring) -+ assert isinstance(dest, str) - tmpfiles = [] - try: - for e in self._executables: --- mozjs-52.4.0/python/mozbuild/mozpack/chrome/flags.py (original) +++ mozjs-52.4.0/python/mozbuild/mozpack/chrome/flags.py (refactored) @@ -2,7 +2,7 @@ @@ -7615,17 +7527,6 @@ ) ---- mozjs-52.4.0/python/mozbuild/mozpack/test/test_unify.py (original) -+++ mozjs-52.4.0/python/mozbuild/mozpack/test/test_unify.py (refactored) -@@ -13,7 +13,7 @@ - from mozpack.files import FileFinder - from mozpack.mozjar import JarWriter - from mozpack.test.test_files import MockDest --from cStringIO import StringIO -+from io import StringIO - import os - import sys - from mozpack.errors import ( --- mozjs-52.4.0/python/mozbuild/mozpack/test/support/minify_js_verify.py (original) +++ mozjs-52.4.0/python/mozbuild/mozpack/test/support/minify_js_verify.py (refactored) @@ -2,7 +2,7 @@ @@ -7837,42 +7738,6 @@ diff -aur mozjs-52.4.0/python/mozbuild/mozbuild/makeutil.py mozjs-fixed/python/m self._commands.extend(commands) return self -diff -aur mozjs-52.4.0/python/which/which.py mozjs-fixed/python/which/which.py ---- mozjs-52.4.0/python/which/which.py 2017-04-11 02:13:24.000000000 +0000 -+++ mozjs-fixed/python/which/which.py 2018-07-10 08:11:01.570000000 +0000 -@@ -280,17 +280,17 @@ - try: - optlist, args = getopt.getopt(argv[1:], 'haVvqp:e:', - ['help', 'all', 'version', 'verbose', 'quiet', 'path=', 'exts=']) -- except getopt.GetoptError, msg: -+ except getopt.GetoptError as msg: - sys.stderr.write("which: error: %s. Your invocation was: %s\n"\ - % (msg, argv)) - sys.stderr.write("Try 'which --help'.\n") - return 1 - for opt, optarg in optlist: - if opt in ('-h', '--help'): -- print _cmdlnUsage -+ print(_cmdlnUsage) - return 0 - elif opt in ('-V', '--version'): -- print "which %s" % __version__ -+ print("which %s" % __version__) - return 0 - elif opt in ('-a', '--all'): - all = 1 -@@ -318,9 +318,9 @@ - nmatches = 0 - for match in whichgen(arg, path=altpath, verbose=verbose, exts=exts): - if verbose: -- print "%s (%s)" % match -+ print("%s (%s)" % match) - else: -- print match -+ print(match) - nmatches += 1 - if not all: - break diff -aur mozjs-52.4.0/testing/mozbase/mozprocess/mozprocess/processhandler.py mozjs-fixed/testing/mozbase/mozprocess/mozprocess/processhandler.py --- mozjs-52.4.0/testing/mozbase/mozprocess/mozprocess/processhandler.py 2017-04-11 02:13:06.000000000 +0000 +++ mozjs-fixed/testing/mozbase/mozprocess/mozprocess/processhandler.py 2018-07-10 08:13:15.440000000 +0000 @@ -8117,18 +7982,6 @@ diff -aur mozjs-52.4.0/python/mozbuild/mozbuild/virtualenv.py mozjs-fixed/python log_handle.write('You are running Python %s.\n' % our) if os.name in ('nt', 'ce'): -diff -aur mozjs-52.4.0/python/which/which.py mozjs-fixed/python/which/which.py ---- mozjs-52.4.0/python/which/which.py 2018-07-10 10:29:50.380000000 +0000 -+++ mozjs-fixed/python/which/which.py 2018-07-10 10:20:16.770000000 +0000 -@@ -243,7 +243,7 @@ - If no match is found for the command, a WhichError is raised. - """ - try: -- match = whichgen(command, path, verbose, exts).next() -+ match = next(whichgen(command, path, verbose, exts)) - except StopIteration: - raise WhichError("Could not find '%s' on the path." % command) - return match --- mozjs-52.4.0/build/moz.configure/old.configure.old 2018-07-10 10:32:48.550000000 +0000 +++ mozjs-52.4.0/build/moz.configure/old.configure 2018-07-10 10:35:32.440000000 +0000 @@ -107,7 +107,7 @@ @@ -8252,57 +8105,6 @@ diff -aur mozjs-52.4.0/python/which/which.py mozjs-fixed/python/which/which.py from mozbuild.config_status import config_status # Some values in sanitized_config also have more complex types, such as ---- mozjs-52.4.0/python/blessings/blessings/__init__.py.old 2017-04-11 02:13:23.000000000 +0000 -+++ mozjs-52.4.0/python/blessings/blessings/__init__.py 2018-07-10 10:56:52.820000000 +0000 -@@ -333,7 +333,7 @@ - 'shadow', 'standout', 'subscript', 'superscript'])) - - --class ParametrizingString(unicode): -+class ParametrizingString(str): - """A Unicode string which can be called to parametrize it as a terminal capability""" - def __new__(cls, formatting, normal=None): - """Instantiate. -@@ -343,7 +343,7 @@ - "normal" capability. - - """ -- new = unicode.__new__(cls, formatting) -+ new = str.__new__(cls, formatting) - new._normal = normal - return new - -@@ -375,10 +375,10 @@ - raise - - --class FormattingString(unicode): -+class FormattingString(str): - """A Unicode string which can be called upon a piece of text to wrap it in formatting""" - def __new__(cls, formatting, normal): -- new = unicode.__new__(cls, formatting) -+ new = str.__new__(cls, formatting) - new._normal = normal - return new - -@@ -393,7 +393,7 @@ - return self + text + self._normal - - --class NullCallableString(unicode): -+class NullCallableString(str): - """A dummy class to stand in for ``FormattingString`` and ``ParametrizingString`` - - A callable bytestring that returns an empty Unicode when called with an int -@@ -402,7 +402,7 @@ - - """ - def __new__(cls): -- new = unicode.__new__(cls, u'') -+ new = str.__new__(cls, u'') - return new - - def __call__(self, arg): --- mozjs-52.4.0/testing/mozbase/mozfile/mozfile/mozfile.py (original) +++ mozjs-52.4.0/testing/mozbase/mozfile/mozfile/mozfile.py (refactored) @@ -6,7 +6,7 @@ @@ -8599,56 +8401,6 @@ diff -aur mozjs-52.4.0/python/which/which.py mozjs-fixed/python/which/which.py cls._walk_directories(directories, callback, pattern=pattern, ignore=ignore) ---- mozjs-52.4.0/testing/mozbase/manifestparser/manifestparser/cli.py (original) -+++ mozjs-52.4.0/testing/mozbase/manifestparser/manifestparser/cli.py (refactored) -@@ -81,7 +81,7 @@ - # parse the arguments - try: - kwargs, tags, args = parse_args(args) -- except ParserError, e: -+ except ParserError as e: - self._parser.error(e.message) - - # make sure we have some manifests, otherwise it will -@@ -132,7 +132,7 @@ - manifest = convert(args, pattern=options.pattern, ignore=options.ignore, - write=options.in_place) - if manifest: -- print manifest -+ print(manifest) - - - class WriteCLI(CLICommand): -@@ -146,7 +146,7 @@ - # parse the arguments - try: - kwargs, tags, args = parse_args(args) -- except ParserError, e: -+ except ParserError as e: - self._parser.error(e.message) - - # make sure we have some manifests, otherwise it will -@@ -175,9 +175,9 @@ - commands[args[0]](self._parser).parser().print_help() - else: - self._parser.print_help() -- print '\nCommands:' -+ print('\nCommands:') - for command in sorted(commands): -- print ' %s : %s' % (command, commands[command].__doc__.strip()) -+ print(' %s : %s' % (command, commands[command].__doc__.strip())) - - - class UpdateCLI(CLICommand): -@@ -190,7 +190,7 @@ - # parse the arguments - try: - kwargs, tags, args = parse_args(args) -- except ParserError, e: -+ except ParserError as e: - self._parser.error(e.message) - - # make sure we have some manifests, otherwise it will --- mozjs-52.4.0/testing/mozbase/manifestparser/manifestparser/expression.py (original) +++ mozjs-52.4.0/testing/mozbase/manifestparser/manifestparser/expression.py (refactored) @@ -275,7 +275,7 @@ @@ -9378,61 +9130,6 @@ diff -aur mozjs-52.4.0/python/which/which.py mozjs-fixed/python/which/which.py lines.append("{0:6}: {1}".format(v, k)) lines.sort() ---- mozjs-52.4.0/config/link.py (original) -+++ mozjs-52.4.0/config/link.py (refactored) -@@ -18,7 +18,7 @@ - time.sleep(0.5) - idleTime += 0.5 - if idleTime > 20 * 60: -- print "Still linking, 20 minutes passed..." -+ print("Still linking, 20 minutes passed...") - sys.stdout.flush() - idleTime = 0 - -@@ -42,6 +42,6 @@ - - if __name__ == "__main__": - if len(sys.argv) < 2: -- print >>sys.stderr, "Usage: link.py <commandline>" -+ print("Usage: link.py <commandline>", file=sys.stderr) - sys.exit(1) - sys.exit(wrap_linker(sys.argv[1:])) ---- mozjs-52.4.0/config/mozunit.py (original) -+++ mozjs-52.4.0/config/mozunit.py (refactored) -@@ -140,7 +140,7 @@ - ''' - def __init__(self, files = {}): - self.files = {} -- for name, content in files.iteritems(): -+ for name, content in files.items(): - self.files[normcase(os.path.abspath(name))] = content - - def __call__(self, name, mode = 'r'): -@@ -158,19 +158,19 @@ - return file - - def __enter__(self): -- import __builtin__ -- self.open = __builtin__.open -+ import builtins -+ self.open = builtins.open - self._orig_path_exists = os.path.exists - self._orig_path_isdir = os.path.isdir - self._orig_path_isfile = os.path.isfile -- __builtin__.open = self -+ builtins.open = self - os.path.exists = self._wrapped_exists - os.path.isdir = self._wrapped_isdir - os.path.isfile = self._wrapped_isfile - - def __exit__(self, type, value, traceback): -- import __builtin__ -- __builtin__.open = self.open -+ import builtins -+ builtins.open = self.open - os.path.exists = self._orig_path_exists - os.path.isdir = self._orig_path_isdir - os.path.isfile = self._orig_path_isfile --- mozjs-52.4.0/config/nsinstall.py (original) +++ mozjs-52.4.0/config/nsinstall.py (refactored) @@ -9,7 +9,7 @@ @@ -9782,34 +9479,6 @@ diff -aur mozjs-52.4.0/python/which/which.py mozjs-fixed/python/which/which.py sys.stderr.flush() if proc.returncode: return proc.returncode ---- mozjs-52.4.0/js/src/jsautokw.py.old 2017-04-11 02:13:16.000000000 +0000 -+++ mozjs-52.4.0/js/src/jsautokw.py 2018-07-11 05:11:27.080000000 +0000 -@@ -80,14 +80,14 @@ - per_column = column_dict.setdefault(keyword[column], []) - per_column.append(item) - -- return sorted(column_dict.items(), key=lambda (char, keyword): ord(char)) -+ return sorted(list(column_dict.items()), key=lambda char_keyword: ord(char_keyword[0])) - - def generate_letter_switch(opt, unprocessed_columns, keyword_list, - columns=None): - assert(len(keyword_list) != 0); - - if not columns: -- columns = range(0, unprocessed_columns) -+ columns = list(range(0, unprocessed_columns)) - - if len(keyword_list) == 1: - index, keyword = keyword_list[0] -@@ -161,7 +161,7 @@ - per_length = length_dict.setdefault(len(keyword), []) - per_length.append(item) - -- return sorted(length_dict.items(), key=lambda (length, keyword): length) -+ return sorted(list(length_dict.items()), key=lambda length_keyword: length_keyword[0]) - - def generate_switch(opt, keyword_list): - assert(len(keyword_list) != 0); --- mozjs-52.4.0/js/src/builtin/embedjs.py (original) +++ mozjs-52.4.0/js/src/builtin/embedjs.py (refactored) @@ -36,7 +36,7 @@ diff --git a/user/mozo/APKBUILD b/user/mozo/APKBUILD new file mode 100644 index 000000000..612afb7b9 --- /dev/null +++ b/user/mozo/APKBUILD @@ -0,0 +1,37 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=mozo +pkgver=1.22.1 +pkgrel=0 +pkgdesc="Menu editor for the MATE desktop environment" +url="https://mate-desktop.org" +arch="noarch" +license="LGPL-2.0+" +depends="python3" +makedepends="intltool mate-menus-dev py3-pygobject-dev" +subpackages="$pkgname-doc $pkgname-lang" +source="https://pub.mate-desktop.org/releases/${pkgver%.*}/mozo-$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="6cd4ed04d43ae064077fc78ed59644bf6efe4c65c26995742166c57333d470fbe95ca4f4037e786f16dc076e75d938868948e8c2e5c662f35d971b36992f1a9b mozo-1.22.1.tar.xz" diff --git a/user/muparser/APKBUILD b/user/muparser/APKBUILD index ff5fbda6f..f088af0fa 100644 --- a/user/muparser/APKBUILD +++ b/user/muparser/APKBUILD @@ -1,10 +1,10 @@ # Contributor: Kiyoshi Aman <kiyoshi.aman@gmail.com> -# Maintainer: Kiyoshi Aman <kiyoshi.aman@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> pkgname=muparser -pkgver=2.2.6 +pkgver=2.2.6.1 pkgrel=0 pkgdesc="Fast math parser library" -url="http://beltoforion.de/article.php?a=muparser" +url="https://beltoforion.de/article.php?a=muparser" arch="all" options="!check" # No test suite. license="MIT" @@ -14,8 +14,6 @@ subpackages="$pkgname-dev" source="$pkgname-$pkgver.tar.gz::https://github.com/beltoforion/$pkgname/archive/v$pkgver.tar.gz" build() { - cd "$builddir/build" - cmake \ -DBUILD_SHARED_LIBS=ON \ -DCMAKE_BUILD_TYPE=RelWithDebugInfo \ @@ -23,13 +21,12 @@ build() { -DCMAKE_INSTALL_LIBDIR=lib \ -DCMAKE_VERBOSE_MAKEFILE=ON \ $cmake_opts \ - ../ - make + -Bbuild + make -C build } package() { - cd "$builddir/build" - make DESTDIR="$pkgdir" install + make DESTDIR="$pkgdir" -C build install } -sha512sums="2b34e740a3d07767b2b97871d11f845afd74e4abe7ba5ceb5dd9bd8405aa45b8dcb2c5980535b05b92ba680cfc6f722948bf9e7f8858a335c9b63f7ac384107c muparser-2.2.6.tar.gz" +sha512sums="01bfc8cc48158c8413ae5e1da2ddbac1c9f0b9075470b1ab75853587d641dd195ebea268e1060a340098fd8015bc5f77d8e9cde5f81cffeade2f157c5f295496 muparser-2.2.6.1.tar.gz" diff --git a/user/mutt/APKBUILD b/user/mutt/APKBUILD index cb717ec1b..e13de2e06 100644 --- a/user/mutt/APKBUILD +++ b/user/mutt/APKBUILD @@ -3,10 +3,10 @@ # Contributor: Natanael Copa <ncopa@alpinelinux.org> # Maintainer: Max Rees <maxcrees@me.com> pkgname=mutt -pkgver=1.10.1 +pkgver=1.11.4 pkgrel=0 pkgdesc="Small but very powerful text-mode email client" -url="http://www.mutt.org" +url="http://www.mutt.org" # No HTTPS arch="all" options="suid !check" # No test suite. license="GPL-2.0+ AND LGPL-2.0+ AND LGPL-2.1+ AND Public-Domain" @@ -16,7 +16,6 @@ subpackages="$pkgname-doc $pkgname-lang" source="https://bitbucket.org/$pkgname/$pkgname/downloads/$pkgname-$pkgver.tar.gz" build() { - cd "$builddir" ISPELL=/usr/bin/hunspell \ ./configure \ --build=$CBUILD \ @@ -42,7 +41,6 @@ build() { } package() { - cd "$builddir" make DESTDIR="$pkgdir" install rm "$pkgdir"/etc/*.dist \ @@ -58,4 +56,4 @@ package() { "$pkgdir"/etc/Muttrc.gpg.dist } -sha512sums="13509ff159c65e23614696967b4bd8baf7b8e16c0e85cfd89e2df8201de2dc97e6c4a426f5919f05051dee2b14f847c7203e0b236931d3cdf81dbbb221551726 mutt-1.10.1.tar.gz" +sha512sums="18c5bfa5c45ef70b3307afccf28f613a36de035f1b5c493f84f0571f7ba297cd0b25e01be9102a028c51c28c459c4bc62281da88926e16ce58c3c1407609e0eb mutt-1.11.4.tar.gz" diff --git a/user/nano/APKBUILD b/user/nano/APKBUILD index 45583d16a..5c9e06bd5 100644 --- a/user/nano/APKBUILD +++ b/user/nano/APKBUILD @@ -1,7 +1,7 @@ # Contributor: Michael Mason <ms13sp@gmail.com> # Maintainer: Dan Theisen <djt@hxx.in> pkgname=nano -pkgver=3.1 +pkgver=4.2 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="dc50381a129fec32d85982d8129324268e3e27a28c5b958fb7bcfca690646bd0a3b995dc456971355b91952c0ac3ea3e0a873b228010238a76e8dbb0ddaf1143 nano-3.1.tar.xz" +sha512sums="280c986ebbc83875270da659232910568bcade962b75ddf9ddc2af6e0fb9aab2b0d029a80d632b5c67fc385958ef4d724aafeeb10299c9e2bc281e737a11845c nano-4.2.tar.xz" diff --git a/user/ncompress/APKBUILD b/user/ncompress/APKBUILD index dab9c6d08..0a34a72fe 100644 --- a/user/ncompress/APKBUILD +++ b/user/ncompress/APKBUILD @@ -1,8 +1,8 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=ncompress -pkgver=4.2.4.4 -pkgrel=1 +pkgver=4.2.4.5 +pkgrel=0 pkgdesc="Fast, simple LZW compressor" url="https://github.com/vapier/ncompress" arch="all" @@ -13,15 +13,13 @@ source="https://downloads.sourceforge.net/ncompress/ncompress-$pkgver.tar.gz fix-9bit-compress.patch" build() { - cd "$builddir" make } package() { - cd "$builddir" install -D -m755 "$builddir"/compress "$pkgdir"/usr/bin/compress install -D -m644 "$builddir"/compress.1 "$pkgdir"/usr/share/man/man1/compress.1 } -sha512sums="abc7bd96daaab0b83d5ca18ef4b8b4c6528632653a0882a4e0eda4fb3f99e23aae60ee30193e79104ea2ac8fb5816ac3b0bdebb08322db6bde6b8ef1639527be ncompress-4.2.4.4.tar.gz +sha512sums="487e8d5ca743c3aba19cf69f7ec62bdc0784e43af5737f06d6d4257f2f33899eb3d293ed049f57b3164e344a0fddc077bc73437564977bad8de45816354c8bf3 ncompress-4.2.4.5.tar.gz b2e897679234f391fa3cf4d5b55a3894424cca632a3b16303b0085e908808bc72b66e6a9df3e56e1a26eac79340c0901f7e6ef2378cc61b710e93194d345c2ea fix-9bit-compress.patch" diff --git a/user/networkmanager/01-org.freedesktop.NetworkManager.rules b/user/networkmanager/01-org.freedesktop.NetworkManager.rules new file mode 100644 index 000000000..d00b26853 --- /dev/null +++ b/user/networkmanager/01-org.freedesktop.NetworkManager.rules @@ -0,0 +1,7 @@ +// Let users in plugdev group modify NetworkManager +polkit.addRule(function(action, subject) { + if (action.id == "org.freedesktop.NetworkManager.settings.modify.system" && + subject.isInGroup("plugdev") && subject.active) { + return "yes"; + } +}); diff --git a/user/networkmanager/10-openrc-status b/user/networkmanager/10-openrc-status new file mode 100644 index 000000000..06b22bd77 --- /dev/null +++ b/user/networkmanager/10-openrc-status @@ -0,0 +1,35 @@ +#!/bin/sh +# Copyright (c) 2012 Alexandre Rostovtsev +# Released under the 2-clause BSD license. + +# Ensures that the NetworkManager OpenRC service is marked as started and +# providing net only when it has a successful connection. + +if [ ! -e "/run/openrc/softlevel" ]; then + # OpenRC is not running + exit 0 +fi + +# Ensure rc-service is in PATH +PATH="${PATH}:/sbin:/usr/sbin" + +# Exit if the NetworkManager OpenRC service is not running +rc-service NetworkManager status 2>&1 | grep -Eq "status: (starting|started|inactive|stopping)" || exit 0 + +# Call rc-service in background mode so that the start/stop functions update +# NetworkManager service status to started or inactive instead of actually +# starting or stopping the daemon +export IN_BACKGROUND=YES + +case "$2" in + up) nm-online -t 0 -x && + ! rc-service NetworkManager status 2>&1 | grep -q started && + exec rc-service NetworkManager start ;; + down) nm-online -t 0 -x || + rc-service NetworkManager status 2>&1 | grep -q stopped || + exec rc-service NetworkManager stop ;; + pre-sleep) rc-service NetworkManager status 2>&1 | grep -q stopped || + exec rc-service NetworkManager stop ;; +esac +exit 0 +# vim: set ts=4: diff --git a/user/networkmanager/APKBUILD b/user/networkmanager/APKBUILD new file mode 100644 index 000000000..daf79c413 --- /dev/null +++ b/user/networkmanager/APKBUILD @@ -0,0 +1,100 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: A. Wilcox <awilfox@adelielinux.org> +pkgname=networkmanager +pkgver=1.18.1 +pkgrel=0 +pkgdesc="Network management daemon" +url="https://wiki.gnome.org/Projects/NetworkManager" +arch="all" +options="!check" # Requires dbus-python and running DBus server. +license="GPL-2.0+ AND LGPL-2.1+" +depends="dhcpcd iputils ppp wpa_supplicant-dbus" +makedepends="bluez-dev consolekit2-dev curl-dev dbus-dev dbus-glib-dev + eudev-dev glib-dev gobject-introspection-dev intltool libedit-dev + libndp-dev libxslt modemmanager-dev ncurses-dev newt-dev nss-dev + perl polkit-dev ppp-dev py3-pygobject util-linux-dev vala-dev" +subpackages="$pkgname-dev $pkgname-doc $pkgname-lang $pkgname-openrc" +source="https://download.gnome.org/sources/NetworkManager/1.18/NetworkManager-$pkgver.tar.xz + editline.patch + errno.patch + musl.patch + tests.patch + + 01-org.freedesktop.NetworkManager.rules + 10-openrc-status + nm.confd + nm.initd + " +builddir="$srcdir/NetworkManager-$pkgver" + +build() { + # pppd plugin dir is a huge hack. + ./configure \ + --build=$CBUILD \ + --host=$CHOST \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --localstatedir=/var \ + --disable-json-validation \ + --disable-more-warnings \ + --disable-ovs \ + --disable-qt \ + --disable-static \ + --enable-bluez5-dun \ + --enable-concheck \ + --enable-polkit=yes \ + --enable-ppp \ + --enable-vala \ + --with-crypto=nss \ + --with-dbus-sys-dir=/etc/dbus-1/system.d \ + --with-dhcpcd \ + --with-ebpf=yes \ + --with-iptables=/sbin/iptables \ + --with-libnm-glib \ + --with-nmcli=yes \ + --with-nmtui \ + --with-pppd-plugin-dir=/usr/lib/pppd/$(ls -1 /usr/lib/pppd | head) \ + --with-session-tracking=consolekit \ + --with-suspend-resume=consolekit \ + --without-dhclient \ + --without-libaudit \ + --without-libpsl \ + --without-netconfig \ + --without-systemd-journal + make +} + +check() { + make check +} + +package() { + make DESTDIR="$pkgdir" install + + install -D -m755 "$srcdir"/nm.initd "$pkgdir"/etc/init.d/NetworkManager + install -D -m644 "$srcdir"/nm.confd "$pkgdir"/etc/conf.d/NetworkManager + install -D -m600 -t "$pkgdir"/usr/share/polkit-1/rules.d/ \ + "$srcdir"/01-org.freedesktop.NetworkManager.rules + install -D -m755 -t "$pkgdir"/etc/NetworkManager/dispatcher.d/ \ + "$srcdir"/10-openrc-status + install -d "$pkgdir"/etc/NetworkManager/system-connections + touch "$pkgdir"/etc/NetworkManager/system-connections/.keepdir +} + +openrc() { + default_openrc + mkdir -p "$subpkgdir"/etc/NetworkManager/dispatcher.d + mv "$pkgdir"/etc/NetworkManager/dispatcher.d/10-openrc-status \ + "$subpkgdir"/etc/NetworkManager/dispatcher.d/ +} + +sha512sums="24ffd5b5802692ce392a5ce65623679014d4e476cddedf76222829118f3ab4c92e180c1814db80438f66e2ab7a4e93eb1bac1e0b77575ff7620b0bf0e27d2992 NetworkManager-1.18.1.tar.xz +559dc42d3017508bfc35ea91da3d0169d601cd6b1764210fd8a27733e9c6671ec2d2d4d6a88af6749df450ea0c16dbc5269258cf2a0b608b9223688a40ca3ec0 editline.patch +0006d9c538a72673746b6aede8c61e0b7a23b055f8276fa2dde6e70f8c00d60854cf49678c996764f83b40cf06c5c2cd24c8c382d900aaf97fc840342e29500f errno.patch +2d77b08d737653999631b8d51b884d12a2f6ba62ef99f0115e0fe2513fcdabec44ea67083684a6762dbc0423d9b41706d6223e4751bbabb70e8ef0691af57256 musl.patch +2c987c464c31e6ad5a34abd8401bb625e9438e656a55adca21e07ca6ee974d39b6d7e942805b17a72ef38154612e2475fd7951f185b775945c8bd740226668af tests.patch +22dfa5b071891ba16b9a8b90a1964d56e370cb640d78191934ae802e568f92c299b9d4d965f7081fb36a8c09378bfb0b33193b2332cbdc28c6799b152128c214 01-org.freedesktop.NetworkManager.rules +26f962cea0b6a75549d16c19a71e3559239b08b001927882702f5d9355a2cc95f7b13c581439f758a950d9a5bfb73b86ba61a5ffb22c9abe19f5b05fe5f5834a 10-openrc-status +f8c9331834cbc66ab0e4e6f4a120fde6a08a435d680a1e1087718fdbb2b9843a313e7ec30b7008822999dafd98e152aa7d2a96f87320ba9c91c3adb63e0b7c9a nm.confd +a8356480592ec5e818b390b83cb258248d64850748e9e485bed68befabf067219d02fda137ee63684e0cd2c0e4f5fca30f94f8db71f811149183ff4715159658 nm.initd" diff --git a/user/networkmanager/editline.patch b/user/networkmanager/editline.patch new file mode 100644 index 000000000..e97461d3a --- /dev/null +++ b/user/networkmanager/editline.patch @@ -0,0 +1,128 @@ +--- NetworkManager-1.18.1/clients/cli/agent.c.old 2019-04-18 09:19:11.000000000 +0000 ++++ NetworkManager-1.18.1/clients/cli/agent.c 2019-05-10 06:15:55.614930112 +0000 +@@ -25,8 +25,7 @@ + + #include <stdio.h> + #include <stdlib.h> +-#include <readline/readline.h> +-#include <readline/history.h> ++#include <editline/readline.h> + + #include "common.h" + #include "utils.h" +--- NetworkManager-1.18.1/clients/cli/common.c.old 2019-04-20 19:01:59.000000000 +0000 ++++ NetworkManager-1.18.1/clients/cli/common.c 2019-05-10 07:07:34.506620687 +0000 +@@ -26,8 +26,7 @@ + #include <stdio.h> + #include <stdlib.h> + #include <sys/ioctl.h> +-#include <readline/readline.h> +-#include <readline/history.h> ++#include <editline/readline.h> + + #include "nm-vpn-helpers.h" + #include "nm-client-utils.h" +@@ -984,7 +983,7 @@ + * nmc_readline_echo: + * + * The same as nmc_readline() except it can disable echoing of input characters if @echo_on is %FALSE. +- * nmc_readline(TRUE, ...) == nmc_readline(...) ++ * nmc_readline_echo(TRUE, ...) == nmc_readline(...) + */ + char * + nmc_readline_echo (const NmcConfig *nmc_config, +@@ -995,8 +994,7 @@ + va_list args; + gs_free char *prompt = NULL; + char *str; +- HISTORY_STATE *saved_history; +- HISTORY_STATE passwd_history = { 0, }; ++ int whence, curpos; + + va_start (args, prompt_fmt); + prompt = g_strdup_vprintf (prompt_fmt, args); +@@ -1006,8 +1004,7 @@ + + /* Hide the actual password */ + if (!echo_on) { +- saved_history = history_get_history_state (); +- history_set_history_state (&passwd_history); ++ whence = where_history (); + rl_redisplay_function = nmc_secret_redisplay; + } + +@@ -1016,7 +1013,10 @@ + /* Restore the non-hiding behavior */ + if (!echo_on) { + rl_redisplay_function = rl_redisplay; +- history_set_history_state (saved_history); ++ curpos = where_history (); ++ for (; curpos > whence; curpos--) { ++ remove_history (curpos); ++ } + } + + return str; +--- NetworkManager-1.18.1/clients/cli/connections.c.old 2019-04-20 19:01:59.000000000 +0000 ++++ NetworkManager-1.18.1/clients/cli/connections.c 2019-05-10 07:05:43.058781503 +0000 +@@ -26,8 +26,7 @@ + #include <unistd.h> + #include <signal.h> + #include <netinet/ether.h> +-#include <readline/readline.h> +-#include <readline/history.h> ++#include <editline/readline.h> + #include <fcntl.h> + + #include "nm-client-utils.h" +@@ -6007,9 +6006,6 @@ + return nmc_rl_gen_func_basic (text, state, avals); + } + +-/* from readline */ +-extern int rl_complete_with_tilde_expansion; +- + /* + * Attempt to complete on the contents of TEXT. START and END show the + * region of TEXT that contains the word to complete. We can use the +@@ -6036,9 +6032,6 @@ + /* Disable default filename completion */ + rl_attempted_completion_over = 1; + +- /* Enable tilde expansion when filenames are completed */ +- rl_complete_with_tilde_expansion = 1; +- + /* Filter out possible ANSI color escape sequences */ + prompt_tmp = nmc_filter_out_colors ((const char *) rl_prompt); + +@@ -9142,7 +9135,6 @@ + generator_func = _meta_abstract_generator; + } else if (g_strcmp0 (rl_prompt, PROMPT_IMPORT_FILE) == 0) { + rl_attempted_completion_over = 0; +- rl_complete_with_tilde_expansion = 1; + } else if (g_strcmp0 (rl_prompt, PROMPT_VPN_CONNECTION) == 0) { + generator_func = gen_vpn_ids; + } +--- NetworkManager-1.18.1/clients/cli/devices.c.old 2019-04-20 19:01:59.000000000 +0000 ++++ NetworkManager-1.18.1/clients/cli/devices.c 2019-05-10 06:16:21.432108032 +0000 +@@ -23,7 +23,7 @@ + + #include <stdio.h> + #include <stdlib.h> +-#include <readline/readline.h> ++#include <editline/readline.h> + + #include "nm-secret-agent-simple.h" + #include "nm-client-utils.h" +--- NetworkManager-1.18.1/clients/cli/nmcli.c.old 2019-04-20 19:01:59.000000000 +0000 ++++ NetworkManager-1.18.1/clients/cli/nmcli.c 2019-05-10 06:16:29.211257692 +0000 +@@ -30,8 +30,7 @@ + #include <unistd.h> + #include <locale.h> + #include <glib-unix.h> +-#include <readline/readline.h> +-#include <readline/history.h> ++#include <editline/readline.h> + + #include "nm-client-utils.h" + diff --git a/user/networkmanager/errno.patch b/user/networkmanager/errno.patch new file mode 100644 index 000000000..825cc97a7 --- /dev/null +++ b/user/networkmanager/errno.patch @@ -0,0 +1,21 @@ +--- NetworkManager-1.18.1/shared/nm-glib-aux/nm-errno.c.old 2019-04-19 09:31:51.000000000 +0000 ++++ NetworkManager-1.18.1/shared/nm-glib-aux/nm-errno.c 2019-05-10 06:01:00.812741059 +0000 +@@ -121,7 +121,6 @@ + nm_assert (buf); + nm_assert (buf_size > 0); + +-#if (_POSIX_C_SOURCE >= 200112L) && ! _GNU_SOURCE + /* XSI-compliant */ + { + int errno_saved = errno; +@@ -132,10 +131,6 @@ + } + buf2 = buf; + } +-#else +- /* GNU-specific */ +- buf2 = strerror_r (errsv, buf, buf_size); +-#endif + + /* like g_strerror(), ensure that the error message is UTF-8. */ + if ( !g_get_charset (NULL) diff --git a/user/networkmanager/musl.patch b/user/networkmanager/musl.patch new file mode 100644 index 000000000..2e4370969 --- /dev/null +++ b/user/networkmanager/musl.patch @@ -0,0 +1,223 @@ +Misc header fixes for compatibility with musl libc. + +diff --git a/shared/systemd/src/basic/stdio-util.h b/shared/systemd/src/basic/stdio-util.h +index c3b9448..e80a938 100644 +--- a/shared/systemd/src/basic/stdio-util.h ++++ b/shared/systemd/src/basic/stdio-util.h +@@ -1,7 +1,9 @@ + /* SPDX-License-Identifier: LGPL-2.1+ */ + #pragma once + ++#if defined(__GLIBC__) + #include <printf.h> ++#endif + #include <stdarg.h> + #include <stdio.h> + #include <sys/types.h> +diff --git a/shared/systemd/src/basic/sort-util.h b/shared/systemd/src/basic/sort-util.h +index e029f86..935f136 100644 +--- a/shared/systemd/src/basic/sort-util.h ++++ b/shared/systemd/src/basic/sort-util.h +@@ -5,6 +5,13 @@ + + #include "macro.h" + ++#ifndef __COMPAR_FN_T ++# define __COMPAR_FN_T ++typedef int (*__compar_fn_t) (const void *, const void *); ++typedef __compar_fn_t comparison_fn_t; ++typedef int (*__compar_d_fn_t) (const void *, const void *, void *); ++#endif ++ + void *xbsearch_r(const void *key, const void *base, size_t nmemb, size_t size, + __compar_d_fn_t compar, void *arg); + +diff --git a/shared/systemd/src/basic/util.h b/shared/systemd/src/basic/util.h +index 25e6ab8..7967e8a 100644 +--- a/shared/systemd/src/basic/util.h ++++ b/shared/systemd/src/basic/util.h +@@ -46,6 +46,12 @@ static inline unsigned u64log2(uint64_t n) { + #endif + } + ++#if !defined(__GLIBC__) ++typedef int (*__compar_fn_t) (const void*, const void*); ++typedef __compar_fn_t comparison_fn_t; ++typedef int (*__compar_d_fn_t) (const void *, const void *, void *); ++#endif ++ + static inline unsigned u32ctz(uint32_t n) { + #if __SIZEOF_INT__ == 4 + return n != 0 ? __builtin_ctz(n) : 32; +diff --git a/libnm-core/nm-utils.h b/libnm-core/nm-utils.h +index 2b5baba..976850c 100644 +--- a/libnm-core/nm-utils.h ++++ b/libnm-core/nm-utils.h +@@ -30,7 +30,11 @@ + #include <netinet/in.h> + + /* For ETH_ALEN and INFINIBAND_ALEN */ ++#if defined(__GLIBC__) + #include <linux/if_ether.h> ++#else ++#define ETH_ALEN 6 /* Octets in one ethernet addr */ ++#endif + #include <linux/if_infiniband.h> + + #include "nm-core-enum-types.h" +diff --git a/shared/systemd/src/basic/socket-util.h b/shared/systemd/src/basic/socket-util.h +index d2246a8..4cb0807 100644 +--- a/shared/systemd/src/basic/socket-util.h ++++ b/shared/systemd/src/basic/socket-util.h +@@ -12,6 +12,11 @@ + #include <sys/socket.h> + #include <sys/types.h> + #include <sys/un.h> ++#if !defined(__GLIBC__) ++/* SIOCGSTAMPNS from linux/asm-generic.h ++ * for src/systemd/src/libsystemd-network/sd-lldp.c */ ++#include <linux/sockios.h> ++#endif + + #include "macro.h" + #include "missing_socket.h" +diff --git a/src/platform/wifi/nm-wifi-utils.h b/src/platform/wifi/nm-wifi-utils.h +index 36148b5..d282eb2 100644 +--- a/src/platform/wifi/nm-wifi-utils.h ++++ b/src/platform/wifi/nm-wifi-utils.h +@@ -22,7 +22,11 @@ + #ifndef __WIFI_UTILS_H__ + #define __WIFI_UTILS_H__ + ++#if defined(__GLIBC__) + #include <net/ethernet.h> ++#else /* musl libc */ ++#define ETH_ALEN 6 /* Octets in one ethernet addr */ ++#endif + + #include "nm-dbus-interface.h" + #include "nm-setting-wireless.h" +diff --git a/src/devices/nm-device.c b/src/devices/nm-device.c +index 7514fa7..f041382 100644 +--- a/src/devices/nm-device.c ++++ b/src/devices/nm-device.c +@@ -32,7 +32,11 @@ + #include <arpa/inet.h> + #include <fcntl.h> + #include <linux/if_addr.h> ++#if defined(__GLIBC__) + #include <linux/if_arp.h> ++#else ++#include <linux/if.h> ++#endif + #include <linux/rtnetlink.h> + #include <linux/pkt_sched.h> + +diff --git a/src/nm-manager.c b/src/nm-manager.c +index 0bf6a75..e392507 100644 +--- a/src/nm-manager.c ++++ b/src/nm-manager.c +@@ -26,6 +26,7 @@ + #include <stdlib.h> + #include <fcntl.h> + #include <unistd.h> ++#include <asm/types.h> + + #include "nm-utils/nm-c-list.h" + +--- NetworkManager-1.18.1/shared/systemd/src/basic/fs-util.h.old 2019-04-18 09:19:11.000000000 +0000 ++++ NetworkManager-1.18.1/shared/systemd/src/basic/fs-util.h 2019-05-10 06:02:21.493921788 +0000 +@@ -7,6 +7,7 @@ + #include <stdbool.h> + #include <stdint.h> + #include <sys/inotify.h> ++#include <sys/stat.h> + #include <sys/types.h> + #include <unistd.h> + +diff --git a/src/systemd/sd-adapt-core/nm-sd-adapt-core.h b/src/systemd/sd-adapt-core/nm-sd-adapt-core.h +index 8c07c53..d043afc 100644 +--- a/src/systemd/sd-adapt-core/nm-sd-adapt-core.h ++++ b/src/systemd/sd-adapt-core/nm-sd-adapt-core.h +@@ -65,7 +65,7 @@ + # ifdef HAVE___SECURE_GETENV + # define secure_getenv __secure_getenv + # else +-# error neither secure_getenv nor __secure_getenv is available ++# define secure_getenv getenv + # endif + #endif + +--- NetworkManager-1.18.1/src/platform/nm-linux-platform.c.old 2019-04-19 09:31:51.000000000 +0000 ++++ NetworkManager-1.18.1/src/platform/nm-linux-platform.c 2019-05-10 07:21:32.665163629 +0000 +@@ -20,6 +20,7 @@ + #include "nm-default.h" + + #include "nm-linux-platform.h" ++#include "wpan/nm-wpan-utils.h" + + #include <arpa/inet.h> + #include <dlfcn.h> +@@ -28,7 +29,11 @@ + #include <libudev.h> + #include <linux/fib_rules.h> + #include <linux/ip.h> ++#ifdef __GLIBC__ + #include <linux/if_arp.h> ++#else ++#include <linux/if.h> ++#endif + #include <linux/if_bridge.h> + #include <linux/if_link.h> + #include <linux/if_tun.h> +@@ -57,7 +62,6 @@ + #include "nm-platform-private.h" + #include "wifi/nm-wifi-utils.h" + #include "wifi/nm-wifi-utils-wext.h" +-#include "wpan/nm-wpan-utils.h" + #include "nm-glib-aux/nm-io-utils.h" + #include "nm-udev-aux/nm-udev-utils.h" + +diff --git a/shared/systemd/src/basic/process-util.c b/shared/systemd/src/basic/process-util.c +index b0afb5c..f72e346 100644 +--- a/shared/systemd/src/basic/process-util.c ++++ b/shared/systemd/src/basic/process-util.c +@@ -21,6 +21,9 @@ + #include <sys/wait.h> + #include <syslog.h> + #include <unistd.h> ++#ifndef __GLIBC__ ++#include <pthread.h> ++#endif + #if 0 /* NM_IGNORED */ + #if HAVE_VALGRIND_VALGRIND_H + #include <valgrind/valgrind.h> +@@ -1168,11 +1171,13 @@ void reset_cached_pid(void) { + cached_pid = CACHED_PID_UNSET; + } + ++#ifdef __GLIBC__ + /* We use glibc __register_atfork() + __dso_handle directly here, as they are not included in the glibc + * headers. __register_atfork() is mostly equivalent to pthread_atfork(), but doesn't require us to link against + * libpthread, as it is part of glibc anyway. */ + extern int __register_atfork(void (*prepare) (void), void (*parent) (void), void (*child) (void), void *dso_handle); + extern void* __dso_handle _weak_; ++#endif + + pid_t getpid_cached(void) { + static bool installed = false; +@@ -1201,7 +1206,12 @@ pid_t getpid_cached(void) { + * only half-documented (glibc doesn't document it but LSB does — though only superficially) + * we'll check for errors only in the most generic fashion possible. */ + +- if (__register_atfork(NULL, NULL, reset_cached_pid, __dso_handle) != 0) { ++ #ifdef __GLIBC__ ++ if (__register_atfork(NULL, NULL, reset_cached_pid, __dso_handle) != 0) { ++ #else ++ if (pthread_atfork(NULL, NULL, reset_cached_pid) != 0) { ++ #endif ++ + /* OOM? Let's try again later */ + cached_pid = CACHED_PID_UNSET; + return new_pid; + diff --git a/user/networkmanager/nm.confd b/user/networkmanager/nm.confd new file mode 100644 index 000000000..4a9922965 --- /dev/null +++ b/user/networkmanager/nm.confd @@ -0,0 +1,4 @@ +# If NetworkManager does not establish a connection within $INACTIVE_TIMEOUT +# seconds after starting, the service will be marked as inactive, and it will +# continue to wait for a connection in background mode. +INACTIVE_TIMEOUT=1 diff --git a/user/networkmanager/nm.initd b/user/networkmanager/nm.initd new file mode 100644 index 000000000..3209644c5 --- /dev/null +++ b/user/networkmanager/nm.initd @@ -0,0 +1,58 @@ +#!/sbin/openrc-run +# Copyright (c) 2008 Saleem Abdulrasool <compnerd@compnerd.org> +# Copyright 2013-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +description="NetworkManager daemon. The service is marked as started only \ +when a network connection is established." + +depend() { + need dbus + use consolekit + provide net +} + +start() { + # If we are re-called by a dispatcher event, we want to mark the service + # as started without starting the daemon again + yesno "${IN_BACKGROUND}" && return 0 + + [ -z "${INACTIVE_TIMEOUT}" ] && INACTIVE_TIMEOUT="1" + + ebegin "Starting NetworkManager" + start-stop-daemon --start --quiet --pidfile /run/NetworkManager/NetworkManager.pid \ + --exec /usr/sbin/NetworkManager -- --pid-file /run/NetworkManager/NetworkManager.pid + local _retval=$? + eend "${_retval}" + if [ "x${_retval}" = 'x0' ] && ! nm-online -t "${INACTIVE_TIMEOUT}"; then + einfo "Marking NetworkManager as inactive. It will automatically be marked" + einfo "as started after a network connection has been established." + mark_service_inactive + fi + return "${_retval}" +} + +stop() { + # If we are re-called by a dispatcher event, we want to mark the service + # as inactive without stopping the daemon + if yesno "${IN_BACKGROUND}"; then + mark_service_inactive "${SVCNAME}" + return 0 + fi + + ebegin "Stopping NetworkManager" + local pidfile=/run/NetworkManager/NetworkManager.pid + if [ ! -e "${pidfile}" ] && [ -e /var/run/NetworkManager.pid ]; then + # Try stopping the pid file used by <0.9.7 + pidfile=/var/run/NetworkManager.pid + start-stop-daemon --stop --quiet --pidfile "${pidfile}" + ret=$? + [ ${ret} = 0 ] && [ -e "${pidfile}" ] && rm "${pidfile}" + eend ${ret} + else + start-stop-daemon --stop --quiet --pidfile "${pidfile}" + eend $? + fi +} + +# vim: set ft=gentoo-init-d ts=4 : diff --git a/user/networkmanager/tests.patch b/user/networkmanager/tests.patch new file mode 100644 index 000000000..8fb5cda60 --- /dev/null +++ b/user/networkmanager/tests.patch @@ -0,0 +1,18 @@ +--- NetworkManager-1.18.1/src/devices/tests/test-lldp.c.old 2019-04-18 09:19:11.000000000 +0000 ++++ NetworkManager-1.18.1/src/devices/tests/test-lldp.c 2019-05-10 07:23:58.979198831 +0000 +@@ -21,7 +21,6 @@ + #include "nm-default.h" + + #include <fcntl.h> +-#include <linux/if_tun.h> + #include <sys/ioctl.h> + #include <sys/stat.h> + #include <sys/types.h> +@@ -32,6 +31,7 @@ + #include "platform/tests/test-common.h" + + #include "nm-test-utils-core.h" ++#include <linux/if_tun.h> + + /*****************************************************************************/ + diff --git a/user/newt/APKBUILD b/user/newt/APKBUILD new file mode 100644 index 000000000..c05167f63 --- /dev/null +++ b/user/newt/APKBUILD @@ -0,0 +1,37 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: A. Wilcox <awilfox@adelielinux.org> +pkgname=newt +pkgver=0.52.20 +pkgrel=0 +pkgdesc="Terminal user interface library" +url="https://pagure.io/newt/" +arch="all" +options="!check" # No test suite. +license="LGPL-2.0-only" +depends="" +makedepends="popt-dev slang-dev" +subpackages="$pkgname-dev $pkgname-doc $pkgname-lang" +source="https://pagure.io/newt/archive/r${pkgver//./-}/newt-r${pkgver//./-}.tar.gz" +builddir="$srcdir/newt-r${pkgver//./-}" + +prepare() { + default_prepare + ./autogen.sh +} + +build() { + ./configure \ + --build=$CBUILD \ + --host=$CHOST \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --localstatedir=/var + make +} + +package() { + make DESTDIR="$pkgdir" install +} + +sha512sums="d8d66cef16595d289e4d8cc75589c684e855158f0eda3530d8be9f980f663c4f175ac47925cf9ba6980e9e5fdb0a83f7bcacf38fef0db31a1a48a62bd07bdec6 newt-r0-52-20.tar.gz" diff --git a/user/nextcloud-client/APKBUILD b/user/nextcloud-client/APKBUILD index 549383413..ffd242b29 100644 --- a/user/nextcloud-client/APKBUILD +++ b/user/nextcloud-client/APKBUILD @@ -1,25 +1,22 @@ # Contributor: Leonardo Arena <rnalrd@alpinelinux.org> # Maintainer: Max Rees <maxcrees@me.com> pkgname=nextcloud-client -pkgver=2.5.0_beta2 -_ver="${pkgver%_beta2}-beta2" +pkgver=2.5.2 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 +source="$pkgname-$pkgver.tar.gz::https://github.com/nextcloud/desktop/archive/v$pkgver.tar.gz no-webengine.patch openssl.patch" -builddir="$srcdir/desktop-$_ver" +builddir="$srcdir/desktop-$pkgver" build() { - cd "$builddir" cmake \ -DCMAKE_BUILD_TYPE=RelWithDebInfo \ -DCMAKE_INSTALL_LIBDIR=lib \ @@ -27,20 +24,21 @@ build() { -DCMAKE_INSTALL_SYSCONFDIR="/etc/$pkgname" \ -DNO_SHIBBOLETH=1 \ -DWITH_CRASHREPORTER=bool:OFF \ - -DUNIT_TESTING=bool:ON + -DUNIT_TESTING=bool:ON \ + -DNO_SHIBBOLETH=bool:ON make } check() { - cd "$builddir" - make test + # ChunkingTestNg fails sporadically when run with the other tests based + # on a timeout, but runs fine on its own + make test || make test ARGS="--rerun-failed --output-on-failure" } package() { - cd "$builddir" make DESTDIR="$pkgdir" install } -sha512sums="ed5ec8c0fd79d3f7f843ef1aefb9b94088b85dacca442388bc9a42e1ddbf1ee90482595135ffaffc85e40d223406964c903949ca1c2161fa0f6a2d6770a77cea nextcloud-client-2.5.0_beta2.tar.gz -6bd83fdee02eabe7ae29fb1a677f62d4a416ec553a0f8c66b7544cafb9201dd7d8b04dc6fb21f447f6c1ece13b06f5d3cba57ac71b211e166607ef15350b3e57 no-webengine.patch +sha512sums="1000b420355d7a4104ca5b41e813d467dcb345b60c79c78ce532de9c58ea89cad10d5565a433409bd512f0f7771c18c7c27974b968c74f84ccfda1ed3510d3ae nextcloud-client-2.5.2.tar.gz +17e6a8437d33a2bb1305e45405aee4e23f233e00c232669a1f8317355032d88329899d3f7b65d1069cf1612029b589a575b0f64018b9b23d239a73c5f4bed2ce no-webengine.patch e323a1074f8ac96667a420f076fdfc988e2fd97cdacd05d83ac54b467b567f5adbf635e7c4fb0414af0012b4016cc4c13441cb35ed3976bc970e514e81b65fd4 openssl.patch" diff --git a/user/nextcloud-client/no-webengine.patch b/user/nextcloud-client/no-webengine.patch index d5beed35c..762b5092d 100644 --- a/user/nextcloud-client/no-webengine.patch +++ b/user/nextcloud-client/no-webengine.patch @@ -1,470 +1,17 @@ ---- 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" +--- desktop-2.5.2/src/CMakeLists.txt 2019-03-19 01:52:24.000000000 +0000 ++++ desktop-2.5.2/src/CMakeLists.txt 2019-04-22 04:01:31.260028906 +0000 +@@ -4,7 +4,7 @@ - namespace OCC { + set(synclib_NAME ${APPLICATION_EXECUTABLE}sync) -@@ -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 @@ +-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() +--- desktop-2.5.2/src/gui/CMakeLists.txt 2019-03-19 01:52:24.000000000 +0000 ++++ desktop-2.5.2/src/gui/CMakeLists.txt 2019-04-22 04:15:53.230034980 +0000 +@@ -40,7 +40,6 @@ wizard/owncloudoauthcredspage.ui wizard/owncloudsetupnocredspage.ui wizard/owncloudwizardresultpage.ui @@ -472,7 +19,7 @@ ) set(client_SRCS -@@ -104,8 +103,6 @@ +@@ -103,8 +102,6 @@ creds/credentialsfactory.cpp creds/httpcredentialsgui.cpp creds/oauth.cpp @@ -481,16 +28,16 @@ wizard/postfixlineedit.cpp wizard/abstractcredswizardpage.cpp wizard/owncloudadvancedsetuppage.cpp -@@ -116,8 +113,6 @@ +@@ -115,8 +112,6 @@ wizard/owncloudwizardcommon.cpp wizard/owncloudwizard.cpp wizard/owncloudwizardresultpage.cpp - wizard/webviewpage.cpp - wizard/webview.cpp + wizard/slideshow.cpp ) - IF(NOT NO_SHIBBOLETH) -@@ -290,7 +290,7 @@ +@@ -295,7 +290,7 @@ endif() add_library(updater STATIC ${updater_SRCS}) @@ -499,459 +46,50 @@ 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); +--- desktop-2.5.2/src/gui/accountmanager.cpp 2019-03-19 01:52:24.000000000 +0000 ++++ desktop-2.5.2/src/gui/accountmanager.cpp 2019-04-22 04:17:04.440035482 +0000 +@@ -253,20 +253,6 @@ + acc->setUrl(urlConfig.toUrl()); + } + +- // Migrate to webflow +- if (authType == QLatin1String("http")) { +- authType = "webflow"; +- settings.setValue(QLatin1String(authTypeC), authType); +- +- foreach(QString key, settings.childKeys()) { +- if (!key.startsWith("http_")) +- continue; +- auto newkey = QString::fromLatin1("webflow_").append(key.mid(5)); +- settings.setValue(newkey, settings.value((key))); +- settings.remove(key); - } - } - -- 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; + qCInfo(lcAccountManager) << "Account for" << acc->url() << "using auth type" << authType; - /** - * @brief The OwncloudWizard class -@@ -106,7 +105,6 @@ - OwncloudAdvancedSetupPage *_advancedSetupPage; - OwncloudWizardResultPage *_resultPage; - AbstractCredentialsWizardPage *_credentialsPage; -- WebViewPage *_webViewPage; + acc->_serverVersion = settings.value(QLatin1String(serverVersionC)).toString(); +--- desktop-2.5.2/src/gui/creds/credentialsfactory.cpp 2019-03-19 01:52:24.000000000 +0000 ++++ desktop-2.5.2/src/gui/creds/credentialsfactory.cpp 2019-04-22 04:23:19.590038126 +0000 +@@ -21,7 +21,6 @@ + #ifndef NO_SHIBBOLETH + #include "creds/shibbolethcredentials.h" + #endif +-#include "creds/webflowcredentials.h" - QStringList _setupLog; + namespace OCC { ---- 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 +@@ -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.2/src/gui/wizard/owncloudwizard.cpp 2019-03-19 01:52:24.000000000 +0000 ++++ desktop-2.5.2/src/gui/wizard/owncloudwizard.cpp 2019-04-22 04:24:59.360038829 +0000 @@ -26,7 +26,6 @@ #endif #include "wizard/owncloudadvancedsetuppage.h" @@ -963,7 +101,7 @@ @@ -51,7 +50,6 @@ , _advancedSetupPage(new OwncloudAdvancedSetupPage) , _resultPage(new OwncloudWizardResultPage) - , _credentialsPage(0) + , _credentialsPage(nullptr) - , _webViewPage(new WebViewPage(this)) , _setupLog() , _registration(false) @@ -1004,14 +142,64 @@ } 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 @@ +--- desktop-2.5.2/src/libsync/networkjobs.h 2019-03-19 01:52:24.000000000 +0000 ++++ desktop-2.5.2/src/libsync/networkjobs.h 2019-04-22 05:21:11.950062594 +0000 +@@ -411,8 +411,7 @@ + enum AuthType { + Basic, // also the catch-all fallback for backwards compatibility reasons + OAuth, +- Shibboleth, +- WebViewFlow ++ Shibboleth + }; + + explicit DetermineAuthTypeJob(AccountPtr account, QObject *parent = nullptr); +--- desktop-2.5.2/src/libsync/networkjobs.cpp 2019-03-19 01:52:24.000000000 +0000 ++++ desktop-2.5.2/src/libsync/networkjobs.cpp 2019-04-22 05:33:28.590067785 +0000 +@@ -922,7 +922,7 @@ - set(synclib_NAME ${APPLICATION_EXECUTABLE}sync) + // 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.2/src/gui/wizard/owncloudsetuppage.cpp 2019-03-19 01:52:24.000000000 +0000 ++++ desktop-2.5.2/src/gui/wizard/owncloudsetuppage.cpp 2019-04-22 05:32:01.750067173 +0000 +@@ -143,7 +143,7 @@ + void OwncloudSetupPage::slotGotoProviderList() + { + _ocWizard->setRegistration(true); +- _ocWizard->setAuthType(DetermineAuthTypeJob::AuthType::WebViewFlow); ++ _ocWizard->setAuthType(DetermineAuthTypeJob::AuthType::Basic); + _authTypeKnown = true; + _checking = false; + emit completeChanged(); +@@ -260,8 +260,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.2/src/gui/wizard/owncloudwizard.h 2019-03-18 21:52:24.000000000 -0400 ++++ desktop-2.5.2/src/gui/wizard/owncloudwizard.h 2019-04-22 02:07:03.600081984 -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; --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/nfs-utils/APKBUILD b/user/nfs-utils/APKBUILD index 5c2c06c70..6ca30bbad 100644 --- a/user/nfs-utils/APKBUILD +++ b/user/nfs-utils/APKBUILD @@ -2,7 +2,7 @@ # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=nfs-utils pkgver=2.3.3 -pkgrel=0 +pkgrel=1 pkgdesc="NFS file sharing client and server" url="http://nfs.sourceforge.net/" arch="all" @@ -13,6 +13,7 @@ makedepends="keyutils-dev krb5-dev libevent-dev libtirpc-dev lvm2-dev rpcsvc-proto sqlite-dev util-linux-dev" subpackages="$pkgname-doc $pkgname-openrc" source="https://downloads.sourceforge.net/nfs/nfs-utils-$pkgver.tar.xz + freeaddrinfo-properly.patch nfs-utils-1.1.4-mtab-sym.patch posixish.patch undef-def.patch @@ -63,6 +64,7 @@ package() { } sha512sums="5025ccd7699ac1a0fdbd8b18ed8b33ea89230158320d809ec51e73f831100db75dceaddde481d911eeca9059caa521d155c2d14d014d75f091f432aad92a9716 nfs-utils-2.3.3.tar.xz +7e1472989374cf8a8dbd4944bbd5deaa5520f12ea3627709be037fb78febec531b373c6e05004f27046d1e3842f5cc7ce024f4db65cf656864bda85db529b451 freeaddrinfo-properly.patch 1cd916028a8515772f05ef63832d73a09e9720055aedc9e2e4ce3a08ce1820948700a4f00ca9c4ee684880f18e67aca888dd857fc7931d923021ba50964be998 nfs-utils-1.1.4-mtab-sym.patch f0b87ff4229d96a46e3f0c17f87dcd3ce5c51651ee036d935c1481b421cd7e5b6a048a082b4f8115a969fe6e85cc871df7658bf5d80c480095b69f29fd6b085d posixish.patch 2e54efa2cac0522f549e8bed45147676d10b299b5060eda305da8767feb55d37627259196d89c295e8d5f4fbbb7c9e791a53dddd579187600f1717968049aa6a undef-def.patch diff --git a/user/nfs-utils/freeaddrinfo-properly.patch b/user/nfs-utils/freeaddrinfo-properly.patch new file mode 100644 index 000000000..7ddcde004 --- /dev/null +++ b/user/nfs-utils/freeaddrinfo-properly.patch @@ -0,0 +1,126 @@ +diff -Naur nfs-utils-2.3.3-orig/support/export/client.c nfs-utils-2.3.3/support/export/client.c +--- nfs-utils-2.3.3-orig/support/export/client.c 2018-09-06 13:09:08.000000000 -0500 ++++ nfs-utils-2.3.3/support/export/client.c 2019-04-21 02:48:45.676838188 -0500 +@@ -309,7 +309,8 @@ + init_addrlist(clp, ai); + + out: +- freeaddrinfo(ai); ++ if (ai != NULL) ++ freeaddrinfo(ai); + return clp; + } + +diff -Naur nfs-utils-2.3.3-orig/tests/nsm_client/nsm_client.c nfs-utils-2.3.3/tests/nsm_client/nsm_client.c +--- nfs-utils-2.3.3-orig/tests/nsm_client/nsm_client.c 2018-09-06 13:09:08.000000000 -0500 ++++ nfs-utils-2.3.3/tests/nsm_client/nsm_client.c 2019-04-21 02:35:53.139552780 -0500 +@@ -243,7 +243,8 @@ + printf("RPC client creation failed\n"); + } + out: +- freeaddrinfo(ai); ++ if (ai != NULL) ++ freeaddrinfo(ai); + return client; + } + +diff -Naur nfs-utils-2.3.3-orig/utils/exportfs/exportfs.c nfs-utils-2.3.3/utils/exportfs/exportfs.c +--- nfs-utils-2.3.3-orig/utils/exportfs/exportfs.c 2018-09-06 13:09:08.000000000 -0500 ++++ nfs-utils-2.3.3/utils/exportfs/exportfs.c 2019-04-21 02:40:07.432327005 -0500 +@@ -282,7 +282,8 @@ + validate_export(exp); + + out: +- freeaddrinfo(ai); ++ if (ai != NULL) ++ freeaddrinfo(ai); + } + + static int exportfs_generic(char *arg, char *options, int verbose) +@@ -395,7 +396,8 @@ + if (!success) + xlog(L_ERROR, "Could not find '%s:%s' to unexport.", hname, path); + +- freeaddrinfo(ai); ++ if (ai != NULL) ++ freeaddrinfo(ai); + } + + static int unexportfs_generic(char *arg, int verbose) +@@ -639,8 +641,10 @@ + } + + out: +- freeaddrinfo(results1); +- freeaddrinfo(results2); ++ if (results1 != NULL) ++ freeaddrinfo(results1); ++ if (results2 != NULL) ++ freeaddrinfo(results2); + return result; + } + +diff -Naur nfs-utils-2.3.3-orig/utils/mount/stropts.c nfs-utils-2.3.3/utils/mount/stropts.c +--- nfs-utils-2.3.3-orig/utils/mount/stropts.c 2018-09-06 13:09:08.000000000 -0500 ++++ nfs-utils-2.3.3/utils/mount/stropts.c 2019-04-21 02:43:18.451874403 -0500 +@@ -1263,7 +1263,8 @@ + } else + nfs_error(_("%s: internal option parsing error"), progname); + +- freeaddrinfo(mi.address); ++ if (mi.address != NULL) ++ freeaddrinfo(mi.address); + free(mi.hostname); + return retval; + } +diff -Naur nfs-utils-2.3.3-orig/utils/mountd/cache.c nfs-utils-2.3.3/utils/mountd/cache.c +--- nfs-utils-2.3.3-orig/utils/mountd/cache.c 2019-04-21 02:33:43.603417171 -0500 ++++ nfs-utils-2.3.3/utils/mountd/cache.c 2019-04-21 02:45:11.289792765 -0500 +@@ -834,7 +834,8 @@ + out: + if (found_path) + free(found_path); +- freeaddrinfo(ai); ++ if (ai != NULL) ++ freeaddrinfo(ai); + free(dom); + xlog(D_CALL, "nfsd_fh: found %p path %s", found, found ? found->e_path : NULL); + } +@@ -1355,7 +1356,7 @@ + xlog(D_CALL, "nfsd_export: found %p path %s", found, path ? path : NULL); + if (dom) free(dom); + if (path) free(path); +- freeaddrinfo(ai); ++ if (ai) freeaddrinfo(ai); + } + + +diff -Naur nfs-utils-2.3.3-orig/utils/mountd/mountd.c nfs-utils-2.3.3/utils/mountd/mountd.c +--- nfs-utils-2.3.3-orig/utils/mountd/mountd.c 2018-09-06 13:09:08.000000000 -0500 ++++ nfs-utils-2.3.3/utils/mountd/mountd.c 2019-04-21 02:45:41.796526387 -0500 +@@ -581,7 +581,8 @@ + freeaddrinfo(ai); + continue; + } +- freeaddrinfo(ai); ++ if (ai != NULL) ++ freeaddrinfo(ai); + } + cp = &(c->gr_next); + } +diff -Naur nfs-utils-2.3.3-orig/utils/statd/hostname.c nfs-utils-2.3.3/utils/statd/hostname.c +--- nfs-utils-2.3.3-orig/utils/statd/hostname.c 2018-09-06 13:09:08.000000000 -0500 ++++ nfs-utils-2.3.3/utils/statd/hostname.c 2019-04-21 02:41:39.712446505 -0500 +@@ -308,8 +308,10 @@ + } + + out: +- freeaddrinfo(results2); +- freeaddrinfo(results1); ++ if (results2 != NULL) ++ freeaddrinfo(results2); ++ if (results1 != NULL) ++ freeaddrinfo(results1); + + xlog(D_CALL, "%s: hostnames %s and %s %s", __func__, + hostname1, hostname2, diff --git a/user/nghttp2/APKBUILD b/user/nghttp2/APKBUILD index da23381f8..0c0c764e7 100644 --- a/user/nghttp2/APKBUILD +++ b/user/nghttp2/APKBUILD @@ -1,7 +1,7 @@ # Contributor: Natanael Copa <ncopa@alpinelinux.org> # Maintainer: pkgname=nghttp2 -pkgver=1.36.0 +pkgver=1.37.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="4e0d5c5cdb4f1b7e5f12790850237f36649af4aa9596033392725972e4e0e5a33bb78bd1aa0735e35e489b523b7e9a236a7b5847dfca69bd7583fcab36c13c76 nghttp2-1.36.0.tar.xz" +sha512sums="67a4b9df3f7f0edad719011fa289d9aa9ef04f31ef3ccf826b861c8830ed24e0743a33b54ab66d198fec7edbf723852b38a2007b335d7f566f702f4b02297b0f nghttp2-1.37.0.tar.xz" diff --git a/user/node/APKBUILD b/user/node/APKBUILD new file mode 100644 index 000000000..ba3ff6807 --- /dev/null +++ b/user/node/APKBUILD @@ -0,0 +1,71 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: A. Wilcox <awilfox@adelielinux.org> +pkgname=node +pkgver=10.15.3 +pkgrel=0 +pkgdesc="JavaScript runtime" +url="https://nodejs.org/" +arch="all" +license="MIT AND ICU AND BSD-3-Clause AND BSD-2-Clause AND ISC AND OpenSSL AND Public-Domain AND Zlib AND Artistic-2.0 AND Apache-2.0 AND CC0-1.0" +depends="" +makedepends="c-ares-dev http-parser-dev icu-dev libexecinfo-dev libuv-dev + nghttp2-dev python3 zlib-dev" +subpackages="$pkgname-dev $pkgname-doc" +source="https://nodejs.org/download/release/v$pkgver/node-v$pkgver.tar.xz + https://www.python.org/ftp/python/2.7.15/Python-2.7.15.tar.xz + libatomic.patch + ppc32.patch + ppc64.patch + stack-silliness.patch + " +builddir="$srcdir/$pkgname-v$pkgver" + +unpack() { + default_unpack + [ -z $SKIP_PYTHON ] || return 0 + + msg "Killing all remaining hope for humanity and building Python 2..." + cd "$srcdir/Python-2.7.15" + [ -d ../python ] && rm -r ../python + # 19:39 <+solar> just make the firefox build process build its own py2 copy + # 20:03 <calvin> TheWilfox: there's always violence + ./configure --prefix="$srcdir/python" + make -j $JOBS + make -j $JOBS install +} + +build() { + cd "$builddir" + export PATH="$srcdir/python/bin:$PATH" + # We can't use --shared-openssl until 1.1 is available. + python ./configure.py \ + --prefix=/usr \ + --with-intl=system-icu \ + --shared-cares \ + --shared-http-parser \ + --shared-libuv \ + --shared-nghttp2 \ + --openssl-no-asm \ + --shared-zlib + # keep DESTDIR set, to avoid a full rebuild in package() + make DESTDIR="$pkgdir" +} + +check() { + cd "$builddir" + export PATH="$srcdir/python/bin:$PATH" + make DESTDIR="$pkgdir" test-only +} + +package() { + cd "$builddir" + export PATH="$srcdir/python/bin:$PATH" + make DESTDIR="$pkgdir" install +} + +sha512sums="cf741f733af7a7e1fbd37b0f98110078494b4771dbdfccacfda95a5ea4cda6cdcea4f8d31dddcf27477213614e4ab6cf7d1a1f900cb92936333730737ac4f9e8 node-v10.15.3.tar.xz +27ea43eb45fc68f3d2469d5f07636e10801dee11635a430ec8ec922ed790bb426b072da94df885e4dfa1ea8b7a24f2f56dd92f9b0f51e162330f161216bd6de6 Python-2.7.15.tar.xz +8f64922d586bce9d82c83042a989739cc55ecc5e015778cdfbda21c257aa50527ddb18740985bcb2068e4a749b71eb8a135d9a8152b374d361589df7f33c9b60 libatomic.patch +d369cd9685e372368af11ea763defdde7afc789ce5e2f617b47174fb4d45003d6e494a00ef92c9ed098c49c189d1690edf9ce780448a5b4a5b072c20ea35ab95 ppc32.patch +583326353de5b0ac14a6c42321f6b031bd943a80550624794e15bd7526470f67bfa14a66558db3c94b4ee2db3053d2e4efed2117f4e7b6dca3c59c171048c094 ppc64.patch +3ea09e36ed0cc31e0475ebc9c92b7609b70e9c1637c5db6c92cf1d6363fb8c6f884ffa20dd81054ca390b721695185327d80c9eeff0688a959e9d46947602471 stack-silliness.patch" diff --git a/user/node/gyp-python3.patch b/user/node/gyp-python3.patch new file mode 100644 index 000000000..e52ef19ec --- /dev/null +++ b/user/node/gyp-python3.patch @@ -0,0 +1,3862 @@ +diff --git a/tools/gyp/pylib/gyp/input.py b/pylib/gyp/input.py +index a046a15..21b4606 100644 +--- a/tools/gyp/pylib/gyp/input.py ++++ b/tools/gyp/pylib/gyp/input.py +@@ -2,14 +2,8 @@ + # Use of this source code is governed by a BSD-style license that can be + # found in the LICENSE file. + +-from compiler.ast import Const +-from compiler.ast import Dict +-from compiler.ast import Discard +-from compiler.ast import List +-from compiler.ast import Module +-from compiler.ast import Node +-from compiler.ast import Stmt +-import compiler ++import ast ++ + import gyp.common + import gyp.simple_copy + import multiprocessing +@@ -183,43 +177,38 @@ + Note that this is slower than eval() is. + """ + +- ast = compiler.parse(file_contents) +- assert isinstance(ast, Module) +- c1 = ast.getChildren() +- assert c1[0] is None +- assert isinstance(c1[1], Stmt) +- c2 = c1[1].getChildren() +- assert isinstance(c2[0], Discard) +- c3 = c2[0].getChildren() +- assert len(c3) == 1 +- return CheckNode(c3[0], []) ++ syntax_tree = ast.parse(file_contents) ++ assert isinstance(syntax_tree, ast.Module) ++ c1 = syntax_tree.body ++ assert len(c1) == 1 ++ c2 = c1[0] ++ assert isinstance(c2, ast.Expr) ++ return CheckNode(c2.value, []) + + + def CheckNode(node, keypath): +- if isinstance(node, Dict): +- c = node.getChildren() ++ if isinstance(node, ast.Dict): + dict = {} +- for n in range(0, len(c), 2): +- assert isinstance(c[n], Const) +- key = c[n].getChildren()[0] ++ for key, value in zip(node.keys, node.values): ++ assert isinstance(key, ast.Str) ++ key = key.s + if key in dict: + raise GypError("Key '" + key + "' repeated at level " + + repr(len(keypath) + 1) + " with key path '" + + '.'.join(keypath) + "'") + kp = list(keypath) # Make a copy of the list for descending this node. + kp.append(key) +- dict[key] = CheckNode(c[n + 1], kp) ++ dict[key] = CheckNode(value, kp) + return dict +- elif isinstance(node, List): +- c = node.getChildren() ++ elif isinstance(node, ast.List): + children = [] +- for index, child in enumerate(c): ++ for index, child in enumerate(node.elts): + kp = list(keypath) # Copy list. + kp.append(repr(index)) + children.append(CheckNode(child, kp)) + return children +- elif isinstance(node, Const): +- return node.getChildren()[0] ++ elif isinstance(node, ast.Str): ++ return node.s + else: + raise TypeError("Unknown AST node at key path '" + '.'.join(keypath) + + "': " + repr(node)) +diff --git a/tools/gyp/pylib/gyp/simple_copy.py b/pylib/gyp/simple_copy.py +index 74c98c5..eaf5f8b 100644 +--- a/tools/gyp/pylib/gyp/simple_copy.py ++++ b/tools/gyp/pylib/gyp/simple_copy.py +@@ -28,8 +28,19 @@ + def _deepcopy_atomic(x): + return x + +-for x in (type(None), int, long, float, +- bool, str, unicode, type): ++try: ++ _string_types = (str, unicode) ++# There's no unicode in python3 ++except NameError: ++ _string_types = (str, ) ++ ++try: ++ _integer_types = (int, long) ++# There's no long in python3 ++except NameError: ++ _integer_types = (int, ) ++ ++for x in (type(None), float, bool, type) + _integer_types + _string_types: + d[x] = _deepcopy_atomic + + def _deepcopy_list(x): +diff --git a/tools/gyp/PRESUBMIT.py b/PRESUBMIT.py +index 4bc1b8c..5ee669b 100644 +--- a/tools/gyp/PRESUBMIT.py ++++ b/tools/gyp/PRESUBMIT.py +@@ -76,8 +76,7 @@ + def _LicenseHeader(input_api): + # Accept any year number from 2009 to the current year. + current_year = int(input_api.time.strftime('%Y')) +- allowed_years = (str(s) for s in reversed(xrange(2009, current_year + 1))) +- ++ allowed_years = (str(s) for s in reversed(range(2009, current_year + 1))) + years_re = '(' + '|'.join(allowed_years) + ')' + + # The (c) is deprecated, but tolerate it until it's removed from all files. +diff --git a/tools/gyp/README.md b/README.md +index c0d73ac..b4766c9 100644 +--- a/tools/gyp/README.md ++++ b/tools/gyp/README.md +@@ -1,4 +1,5 @@ + GYP can Generate Your Projects. + =================================== + +-Documents are available at [gyp.gsrc.io](https://gyp.gsrc.io), or you can check out ```md-pages``` branch to read those documents offline. ++Documents are available at [gyp.gsrc.io](https://gyp.gsrc.io), or you can ++check out ```md-pages``` branch to read those documents offline. +diff --git a/tools/gyp/buildbot/buildbot_run.py b/buildbot/buildbot_run.py +index 9a2b71f..8941652 100755 +--- a/tools/gyp/buildbot/buildbot_run.py ++++ b/tools/gyp/buildbot/buildbot_run.py +@@ -5,6 +5,8 @@ + + """Argument-less script to select what to run on the buildbots.""" + ++from __future__ import print_function ++ + import os + import shutil + import subprocess +@@ -24,14 +26,14 @@ + with open(os.devnull) as devnull_fd: + retcode = subprocess.call(stdin=devnull_fd, *args, **kwargs) + if retcode != 0: +- print '@@@STEP_EXCEPTION@@@' ++ print('@@@STEP_EXCEPTION@@@') + sys.exit(1) + + + def PrepareCmake(): + """Build CMake 2.8.8 since the version in Precise is 2.8.7.""" + if os.environ['BUILDBOT_CLOBBER'] == '1': +- print '@@@BUILD_STEP Clobber CMake checkout@@@' ++ print('@@@BUILD_STEP Clobber CMake checkout@@@') + shutil.rmtree(CMAKE_DIR) + + # We always build CMake 2.8.8, so no need to do anything +@@ -39,10 +41,10 @@ + if os.path.isdir(CMAKE_DIR): + return + +- print '@@@BUILD_STEP Initialize CMake checkout@@@' ++ print('@@@BUILD_STEP Initialize CMake checkout@@@') + os.mkdir(CMAKE_DIR) + +- print '@@@BUILD_STEP Sync CMake@@@' ++ print('@@@BUILD_STEP Sync CMake@@@') + CallSubProcess( + ['git', 'clone', + '--depth', '1', +@@ -53,7 +55,7 @@ + CMAKE_DIR], + cwd=CMAKE_DIR) + +- print '@@@BUILD_STEP Build CMake@@@' ++ print('@@@BUILD_STEP Build CMake@@@') + CallSubProcess( + ['/bin/bash', 'bootstrap', '--prefix=%s' % CMAKE_DIR], + cwd=CMAKE_DIR) +@@ -74,7 +76,7 @@ + if not format: + format = title + +- print '@@@BUILD_STEP ' + title + '@@@' ++ print('@@@BUILD_STEP ' + title + '@@@') + sys.stdout.flush() + env = os.environ.copy() + if msvs_version: +@@ -89,17 +91,17 @@ + retcode = subprocess.call(command, cwd=ROOT_DIR, env=env, shell=True) + if retcode: + # Emit failure tag, and keep going. +- print '@@@STEP_FAILURE@@@' ++ print('@@@STEP_FAILURE@@@') + return 1 + return 0 + + + def GypBuild(): + # Dump out/ directory. +- print '@@@BUILD_STEP cleanup@@@' +- print 'Removing %s...' % OUT_DIR ++ print('@@@BUILD_STEP cleanup@@@') ++ print('Removing %s...' % OUT_DIR) + shutil.rmtree(OUT_DIR, ignore_errors=True) +- print 'Done.' ++ print('Done.') + + retcode = 0 + if sys.platform.startswith('linux'): +@@ -128,7 +130,7 @@ + # after the build proper that could be used for cumulative failures), + # use that instead of this. This isolates the final return value so + # that it isn't misattributed to the last stage. +- print '@@@BUILD_STEP failures@@@' ++ print('@@@BUILD_STEP failures@@@') + sys.exit(retcode) + + +diff --git a/tools/gyp/pylib/gyp/MSVSSettings.py b/pylib/gyp/MSVSSettings.py +index 8ae1918..1d2e25a 100644 +--- a/tools/gyp/pylib/gyp/MSVSSettings.py ++++ b/tools/gyp/pylib/gyp/MSVSSettings.py +@@ -14,9 +14,17 @@ + MSBuild install directory, e.g. c:\Program Files (x86)\MSBuild + """ + ++from __future__ import print_function ++ + import sys + import re + ++try: ++ # basestring was removed in python3. ++ basestring ++except NameError: ++ basestring = str ++ + # Dictionaries of settings validators. The key is the tool name, the value is + # a dictionary mapping setting names to validation functions. + _msvs_validators = {} +@@ -400,7 +408,7 @@ + + if unrecognized: + # We don't know this setting. Give a warning. +- print >> stderr, error_msg ++ print(error_msg, file=stderr) + + + def FixVCMacroSlashes(s): +@@ -433,7 +441,7 @@ + '$(PlatformName)': '$(Platform)', + '$(SafeInputName)': '%(Filename)', + } +- for old, new in replace_map.iteritems(): ++ for old, new in replace_map.items(): + s = s.replace(old, new) + s = FixVCMacroSlashes(s) + return s +@@ -453,17 +461,18 @@ + dictionaries of settings and their values. + """ + msbuild_settings = {} +- for msvs_tool_name, msvs_tool_settings in msvs_settings.iteritems(): ++ for msvs_tool_name, msvs_tool_settings in msvs_settings.items(): + if msvs_tool_name in _msvs_to_msbuild_converters: + msvs_tool = _msvs_to_msbuild_converters[msvs_tool_name] +- for msvs_setting, msvs_value in msvs_tool_settings.iteritems(): ++ for msvs_setting, msvs_value in msvs_tool_settings.items(): + if msvs_setting in msvs_tool: + # Invoke the translation function. + try: + msvs_tool[msvs_setting](msvs_value, msbuild_settings) +- except ValueError, e: +- print >> stderr, ('Warning: while converting %s/%s to MSBuild, ' +- '%s' % (msvs_tool_name, msvs_setting, e)) ++ except ValueError as e: ++ print(('Warning: while converting %s/%s to MSBuild, ' ++ '%s' % (msvs_tool_name, msvs_setting, e)), ++ file=stderr) + else: + _ValidateExclusionSetting(msvs_setting, + msvs_tool, +@@ -472,8 +481,8 @@ + (msvs_tool_name, msvs_setting)), + stderr) + else: +- print >> stderr, ('Warning: unrecognized tool %s while converting to ' +- 'MSBuild.' % msvs_tool_name) ++ print(('Warning: unrecognized tool %s while converting to ' ++ 'MSBuild.' % msvs_tool_name), file=stderr) + return msbuild_settings + + +@@ -513,13 +522,13 @@ + for tool_name in settings: + if tool_name in validators: + tool_validators = validators[tool_name] +- for setting, value in settings[tool_name].iteritems(): ++ for setting, value in settings[tool_name].items(): + if setting in tool_validators: + try: + tool_validators[setting](value) +- except ValueError, e: +- print >> stderr, ('Warning: for %s/%s, %s' % +- (tool_name, setting, e)) ++ except ValueError as e: ++ print(('Warning: for %s/%s, %s' % ++ (tool_name, setting, e)), file=stderr) + else: + _ValidateExclusionSetting(setting, + tool_validators, +@@ -528,7 +537,7 @@ + stderr) + + else: +- print >> stderr, ('Warning: unrecognized tool %s' % tool_name) ++ print(('Warning: unrecognized tool %s' % tool_name), file=stderr) + + + # MSVS and MBuild names of the tools. +diff --git a/tools/gyp/pylib/gyp/MSVSSettings_test.py b/pylib/gyp/MSVSSettings_test.py +index bf6ea6b..73ed25e 100755 +--- a/tools/gyp/pylib/gyp/MSVSSettings_test.py ++++ b/tools/gyp/pylib/gyp/MSVSSettings_test.py +@@ -6,7 +6,10 @@ + + """Unit tests for the MSVSSettings.py file.""" + +-import StringIO ++try: ++ from StringIO import StringIO ++except ImportError: ++ from io import StringIO + import unittest + import gyp.MSVSSettings as MSVSSettings + +@@ -14,7 +17,7 @@ + class TestSequenceFunctions(unittest.TestCase): + + def setUp(self): +- self.stderr = StringIO.StringIO() ++ self.stderr = StringIO() + + def _ExpectedWarnings(self, expected): + """Compares recorded lines to expected warnings.""" +diff --git a/tools/gyp/pylib/gyp/MSVSUserFile.py b/pylib/gyp/MSVSUserFile.py +index 6c07e9a..2264d64 100644 +--- a/tools/gyp/pylib/gyp/MSVSUserFile.py ++++ b/tools/gyp/pylib/gyp/MSVSUserFile.py +@@ -91,7 +91,7 @@ + + if environment and isinstance(environment, dict): + env_list = ['%s="%s"' % (key, val) +- for (key,val) in environment.iteritems()] ++ for (key,val) in environment.items()] + environment = ' '.join(env_list) + else: + environment = '' +@@ -135,7 +135,7 @@ + def WriteIfChanged(self): + """Writes the user file.""" + configs = ['Configurations'] +- for config, spec in sorted(self.configurations.iteritems()): ++ for config, spec in sorted(self.configurations.items()): + configs.append(spec) + + content = ['VisualStudioUserFile', +diff --git a/tools/gyp/pylib/gyp/MSVSUtil.py b/pylib/gyp/MSVSUtil.py +index 96dea6c..f24530b 100644 +--- a/tools/gyp/pylib/gyp/MSVSUtil.py ++++ b/tools/gyp/pylib/gyp/MSVSUtil.py +@@ -236,7 +236,7 @@ + + # Set up the shim to output its PDB to the same location as the final linker + # target. +- for config_name, config in shim_dict.get('configurations').iteritems(): ++ for config_name, config in shim_dict.get('configurations').items(): + pdb_path = _GetPdbPath(target_dict, config_name, vars) + + # A few keys that we don't want to propagate. +diff --git a/tools/gyp/pylib/gyp/MSVSVersion.py b/pylib/gyp/MSVSVersion.py +index 44b958d..5f316b6 100644 +--- a/tools/gyp/pylib/gyp/MSVSVersion.py ++++ b/tools/gyp/pylib/gyp/MSVSVersion.py +@@ -189,7 +189,7 @@ + text = None + try: + text = _RegistryQueryBase('Sysnative', key, value) +- except OSError, e: ++ except OSError as e: + if e.errno == errno.ENOENT: + text = _RegistryQueryBase('System32', key, value) + else: +@@ -207,12 +207,15 @@ + contents of the registry key's value, or None on failure. Throws + ImportError if _winreg is unavailable. + """ +- import _winreg ++ try: ++ import _winreg as winreg ++ except ImportError: ++ import winreg + try: + root, subkey = key.split('\\', 1) + assert root == 'HKLM' # Only need HKLM for now. +- with _winreg.OpenKey(_winreg.HKEY_LOCAL_MACHINE, subkey) as hkey: +- return _winreg.QueryValueEx(hkey, value)[0] ++ with winreg.OpenKey(winreg.HKEY_LOCAL_MACHINE, subkey) as hkey: ++ return winreg.QueryValueEx(hkey, value)[0] + except WindowsError: + return None + +diff --git a/tools/gyp/pylib/gyp/__init__.py b/pylib/gyp/__init__.py +index 668f38b..e038151 100755 +--- a/tools/gyp/pylib/gyp/__init__.py ++++ b/tools/gyp/pylib/gyp/__init__.py +@@ -4,6 +4,8 @@ + # Use of this source code is governed by a BSD-style license that can be + # found in the LICENSE file. + ++from __future__ import print_function ++ + import copy + import gyp.input + import optparse +@@ -14,6 +16,12 @@ + import traceback + from gyp.common import GypError + ++try: ++ # basestring was removed in python3. ++ basestring ++except NameError: ++ basestring = str ++ + # Default debug modes for GYP + debug = {} + +@@ -22,7 +30,6 @@ + DEBUG_VARIABLES = 'variables' + DEBUG_INCLUDES = 'includes' + +- + def DebugOutput(mode, message, *args): + if 'all' in gyp.debug or mode in gyp.debug: + ctx = ('unknown', 0, 'unknown') +@@ -34,8 +41,8 @@ + pass + if args: + message %= args +- print '%s:%s:%d:%s %s' % (mode.upper(), os.path.basename(ctx[0]), +- ctx[1], ctx[2], message) ++ print('%s:%s:%d:%s %s' % (mode.upper(), os.path.basename(ctx[0]), ++ ctx[1], ctx[2], message)) + + def FindBuildFiles(): + extension = '.gyp' +@@ -207,7 +214,7 @@ + # We always want to ignore the environment when regenerating, to avoid + # duplicate or changed flags in the environment at the time of regeneration. + flags = ['--ignore-environment'] +- for name, metadata in options._regeneration_metadata.iteritems(): ++ for name, metadata in options._regeneration_metadata.items(): + opt = metadata['opt'] + value = getattr(options, name) + value_predicate = metadata['type'] == 'path' and FixPath or Noop +@@ -226,12 +233,13 @@ + (action == 'store_false' and not value)): + flags.append(opt) + elif options.use_environment and env_name: +- print >>sys.stderr, ('Warning: environment regeneration unimplemented ' ++ print(('Warning: environment regeneration unimplemented ' + 'for %s flag %r env_name %r' % (action, opt, +- env_name)) ++ env_name)), ++ file=sys.stderr) + else: +- print >>sys.stderr, ('Warning: regeneration unimplemented for action %r ' +- 'flag %r' % (action, opt)) ++ print(('Warning: regeneration unimplemented for action %r ' ++ 'flag %r' % (action, opt)), file=sys.stderr) + + return flags + +@@ -431,12 +439,11 @@ + for build_file in build_files: + build_file_dir = os.path.abspath(os.path.dirname(build_file)) + build_file_dir_components = build_file_dir.split(os.path.sep) +- components_len = len(build_file_dir_components) +- for index in xrange(components_len - 1, -1, -1): +- if build_file_dir_components[index] == 'src': ++ for component in reversed(build_file_dir_components): ++ if component == 'src': + options.depth = os.path.sep.join(build_file_dir_components) + break +- del build_file_dir_components[index] ++ del build_file_dir_components[-1] + + # If the inner loop found something, break without advancing to another + # build file. +@@ -475,7 +482,7 @@ + if home_dot_gyp != None: + default_include = os.path.join(home_dot_gyp, 'include.gypi') + if os.path.exists(default_include): +- print 'Using overrides found in ' + default_include ++ print('Using overrides found in ' + default_include) + includes.append(default_include) + + # Command-line --include files come after the default include. +@@ -490,7 +497,7 @@ + if options.generator_flags: + gen_flags += options.generator_flags + generator_flags = NameValueListToDict(gen_flags) +- if DEBUG_GENERAL in gyp.debug.keys(): ++ if DEBUG_GENERAL in gyp.debug: + DebugOutput(DEBUG_GENERAL, "generator_flags: %s", generator_flags) + + # Generate all requested formats (use a set in case we got one format request +@@ -523,7 +530,7 @@ + generator.GenerateOutput(flat_list, targets, data, params) + + if options.configs: +- valid_configs = targets[flat_list[0]]['configurations'].keys() ++ valid_configs = targets[flat_list[0]]['configurations'] + for conf in options.configs: + if conf not in valid_configs: + raise GypError('Invalid config specified via --build: %s' % conf) +@@ -536,7 +543,7 @@ + def main(args): + try: + return gyp_main(args) +- except GypError, e: ++ except GypError as e: + sys.stderr.write("gyp: %s\n" % e) + return 1 + +diff --git a/tools/gyp/pylib/gyp/common.py b/pylib/gyp/common.py +index 1b245ec..1823de8 100644 +--- a/tools/gyp/pylib/gyp/common.py ++++ b/tools/gyp/pylib/gyp/common.py +@@ -345,7 +345,7 @@ + prefix=os.path.split(filename)[1] + '.gyp.', + dir=os.path.split(filename)[0]) + try: +- self.tmp_file = os.fdopen(tmp_fd, 'wb') ++ self.tmp_file = os.fdopen(tmp_fd, 'w') + except Exception: + # Don't leave turds behind. + os.unlink(self.tmp_path) +@@ -363,7 +363,7 @@ + same = False + try: + same = filecmp.cmp(self.tmp_path, filename, False) +- except OSError, e: ++ except OSError as e: + if e.errno != errno.ENOENT: + raise + +@@ -382,9 +382,9 @@ + # + # No way to get the umask without setting a new one? Set a safe one + # and then set it back to the old value. +- umask = os.umask(077) ++ umask = os.umask(0o77) + os.umask(umask) +- os.chmod(self.tmp_path, 0666 & ~umask) ++ os.chmod(self.tmp_path, 0o666 & ~umask) + if sys.platform == 'win32' and os.path.exists(filename): + # NOTE: on windows (but not cygwin) rename will not replace an + # existing file, so it must be preceded with a remove. Sadly there +@@ -471,7 +471,7 @@ + ''.join([source[0], header] + source[1:])) + + # Make file executable. +- os.chmod(tool_path, 0755) ++ os.chmod(tool_path, 0o755) + + + # From Alex Martelli, +diff --git a/tools/gyp/pylib/gyp/common_test.py b/pylib/gyp/common_test.py +index ad6f9a1..0b8ada3 100755 +--- a/tools/gyp/pylib/gyp/common_test.py ++++ b/tools/gyp/pylib/gyp/common_test.py +@@ -63,6 +63,7 @@ + self.assertFlavor('solaris', 'sunos' , {}); + self.assertFlavor('linux' , 'linux2' , {}); + self.assertFlavor('linux' , 'linux3' , {}); ++ self.assertFlavor('linux' , 'linux' , {}); + + def test_param(self): + self.assertFlavor('foobar', 'linux2' , {'flavor': 'foobar'}) +diff --git a/tools/gyp/pylib/gyp/easy_xml.py b/pylib/gyp/easy_xml.py +index 2522efb..15c6651 100644 +--- a/tools/gyp/pylib/gyp/easy_xml.py ++++ b/tools/gyp/pylib/gyp/easy_xml.py +@@ -6,6 +6,11 @@ + import os + import locale + ++try: ++ # reduce moved to functools in python3. ++ reduce ++except NameError: ++ from functools import reduce + + def XmlToString(content, encoding='utf-8', pretty=False): + """ Writes the XML content to disk, touching the file only if it has changed. +@@ -80,7 +85,7 @@ + # Optionally in second position is a dictionary of the attributes. + rest = specification[1:] + if rest and isinstance(rest[0], dict): +- for at, val in sorted(rest[0].iteritems()): ++ for at, val in sorted(rest[0].items()): + xml_parts.append(' %s="%s"' % (at, _XmlEscape(val, attr=True))) + rest = rest[1:] + if rest: +diff --git a/tools/gyp/pylib/gyp/easy_xml_test.py b/pylib/gyp/easy_xml_test.py +index df64354..a1fdb18 100755 +--- a/tools/gyp/pylib/gyp/easy_xml_test.py ++++ b/tools/gyp/pylib/gyp/easy_xml_test.py +@@ -8,13 +8,16 @@ + + import gyp.easy_xml as easy_xml + import unittest +-import StringIO ++try: ++ from StringIO import StringIO ++except ImportError: ++ from io import StringIO + + + class TestSequenceFunctions(unittest.TestCase): + + def setUp(self): +- self.stderr = StringIO.StringIO() ++ self.stderr = StringIO() + + def test_EasyXml_simple(self): + self.assertEqual( +diff --git a/tools/gyp/pylib/gyp/flock_tool.py b/pylib/gyp/flock_tool.py +index b38d866..81fb79d 100755 +--- a/tools/gyp/pylib/gyp/flock_tool.py ++++ b/tools/gyp/pylib/gyp/flock_tool.py +@@ -39,7 +39,7 @@ + # where fcntl.flock(fd, LOCK_EX) always fails + # with EBADF, that's why we use this F_SETLK + # hack instead. +- fd = os.open(lockfile, os.O_WRONLY|os.O_NOCTTY|os.O_CREAT, 0666) ++ fd = os.open(lockfile, os.O_WRONLY|os.O_NOCTTY|os.O_CREAT, 0o666) + if sys.platform.startswith('aix'): + # Python on AIX is compiled with LARGEFILE support, which changes the + # struct size. +diff --git a/tools/gyp/pylib/gyp/generator/analyzer.py b/pylib/gyp/generator/analyzer.py +index 921c1a6..b3484dc 100644 +--- a/tools/gyp/pylib/gyp/generator/analyzer.py ++++ b/tools/gyp/pylib/gyp/generator/analyzer.py +@@ -62,6 +62,8 @@ + then the "all" target includes "b1" and "b2". + """ + ++from __future__ import print_function ++ + import gyp.common + import gyp.ninja_syntax as ninja_syntax + import json +@@ -155,7 +157,7 @@ + continue + result.append(base_path + source) + if debug: +- print 'AddSource', org_source, result[len(result) - 1] ++ print('AddSource', org_source, result[len(result) - 1]) + + + def _ExtractSourcesFromAction(action, base_path, base_path_components, +@@ -185,7 +187,7 @@ + base_path += '/' + + if debug: +- print 'ExtractSources', target, base_path ++ print('ExtractSources', target, base_path) + + results = [] + if 'sources' in target_dict: +@@ -278,7 +280,7 @@ + the root of the source tree.""" + if _ToLocalPath(toplevel_dir, _ToGypPath(build_file)) in files: + if debug: +- print 'gyp file modified', build_file ++ print('gyp file modified', build_file) + return True + + # First element of included_files is the file itself. +@@ -291,8 +293,8 @@ + _ToGypPath(gyp.common.UnrelativePath(include_file, build_file)) + if _ToLocalPath(toplevel_dir, rel_include_file) in files: + if debug: +- print 'included gyp file modified, gyp_file=', build_file, \ +- 'included file=', rel_include_file ++ print('included gyp file modified, gyp_file=', build_file, \ ++ 'included file=', rel_include_file) + return True + return False + +@@ -373,7 +375,7 @@ + # If a build file (or any of its included files) is modified we assume all + # targets in the file are modified. + if build_file_in_files[build_file]: +- print 'matching target from modified build file', target_name ++ print('matching target from modified build file', target_name) + target.match_status = MATCH_STATUS_MATCHES + matching_targets.append(target) + else: +@@ -381,7 +383,7 @@ + toplevel_dir) + for source in sources: + if _ToGypPath(os.path.normpath(source)) in files: +- print 'target', target_name, 'matches', source ++ print('target', target_name, 'matches', source) + target.match_status = MATCH_STATUS_MATCHES + matching_targets.append(target) + break +@@ -433,7 +435,7 @@ + for dep in target.deps: + if _DoesTargetDependOnMatchingTargets(dep): + target.match_status = MATCH_STATUS_MATCHES_BY_DEPENDENCY +- print '\t', target.name, 'matches by dep', dep.name ++ print('\t', target.name, 'matches by dep', dep.name) + return True + target.match_status = MATCH_STATUS_DOESNT_MATCH + return False +@@ -445,7 +447,7 @@ + supplied as input to analyzer. + possible_targets: targets to search from.""" + found = [] +- print 'Targets that matched by dependency:' ++ print('Targets that matched by dependency:') + for target in possible_targets: + if _DoesTargetDependOnMatchingTargets(target): + found.append(target) +@@ -484,12 +486,13 @@ + (add_if_no_ancestor or target.requires_build)) or + (target.is_static_library and add_if_no_ancestor and + not target.is_or_has_linked_ancestor)): +- print '\t\tadding to compile targets', target.name, 'executable', \ +- target.is_executable, 'added_to_compile_targets', \ +- target.added_to_compile_targets, 'add_if_no_ancestor', \ +- add_if_no_ancestor, 'requires_build', target.requires_build, \ +- 'is_static_library', target.is_static_library, \ ++ print('\t\tadding to compile targets', target.name, 'executable', ++ target.is_executable, 'added_to_compile_targets', ++ target.added_to_compile_targets, 'add_if_no_ancestor', ++ add_if_no_ancestor, 'requires_build', target.requires_build, ++ 'is_static_library', target.is_static_library, + 'is_or_has_linked_ancestor', target.is_or_has_linked_ancestor ++ ) + result.add(target) + target.added_to_compile_targets = True + +@@ -500,7 +503,7 @@ + supplied_targets: set of targets supplied to analyzer to search from.""" + result = set() + for target in matching_targets: +- print 'finding compile targets for match', target.name ++ print('finding compile targets for match', target.name) + _AddCompileTargets(target, supplied_targets, True, result) + return result + +@@ -508,46 +511,46 @@ + def _WriteOutput(params, **values): + """Writes the output, either to stdout or a file is specified.""" + if 'error' in values: +- print 'Error:', values['error'] ++ print('Error:', values['error']) + if 'status' in values: +- print values['status'] ++ print(values['status']) + if 'targets' in values: + values['targets'].sort() +- print 'Supplied targets that depend on changed files:' ++ print('Supplied targets that depend on changed files:') + for target in values['targets']: +- print '\t', target ++ print('\t', target) + if 'invalid_targets' in values: + values['invalid_targets'].sort() +- print 'The following targets were not found:' ++ print('The following targets were not found:') + for target in values['invalid_targets']: +- print '\t', target ++ print('\t', target) + if 'build_targets' in values: + values['build_targets'].sort() +- print 'Targets that require a build:' ++ print('Targets that require a build:') + for target in values['build_targets']: +- print '\t', target ++ print('\t', target) + if 'compile_targets' in values: + values['compile_targets'].sort() +- print 'Targets that need to be built:' ++ print('Targets that need to be built:') + for target in values['compile_targets']: +- print '\t', target ++ print('\t', target) + if 'test_targets' in values: + values['test_targets'].sort() +- print 'Test targets:' ++ print('Test targets:') + for target in values['test_targets']: +- print '\t', target ++ print('\t', target) + + output_path = params.get('generator_flags', {}).get( + 'analyzer_output_path', None) + if not output_path: +- print json.dumps(values) ++ print(json.dumps(values)) + return + try: + f = open(output_path, 'w') + f.write(json.dumps(values) + '\n') + f.close() + except IOError as e: +- print 'Error writing to output file', output_path, str(e) ++ print('Error writing to output file', output_path, str(e)) + + + def _WasGypIncludeFileModified(params, files): +@@ -556,7 +559,7 @@ + if params['options'].includes: + for include in params['options'].includes: + if _ToGypPath(os.path.normpath(include)) in files: +- print 'Include file modified, assuming all changed', include ++ print('Include file modified, assuming all changed', include) + return True + return False + +@@ -638,13 +641,13 @@ + set(self._root_targets))] + else: + test_targets = [x for x in test_targets_no_all] +- print 'supplied test_targets' ++ print('supplied test_targets') + for target_name in self._test_target_names: +- print '\t', target_name +- print 'found test_targets' ++ print('\t', target_name) ++ print('found test_targets') + for target in test_targets: +- print '\t', target.name +- print 'searching for matching test targets' ++ print('\t', target.name) ++ print('searching for matching test targets') + matching_test_targets = _GetTargetsDependingOnMatchingTargets(test_targets) + matching_test_targets_contains_all = (test_target_names_contains_all and + set(matching_test_targets) & +@@ -654,14 +657,14 @@ + # 'all' is subsequentely added to the matching names below. + matching_test_targets = [x for x in (set(matching_test_targets) & + set(test_targets_no_all))] +- print 'matched test_targets' ++ print('matched test_targets') + for target in matching_test_targets: +- print '\t', target.name ++ print('\t', target.name) + matching_target_names = [gyp.common.ParseQualifiedTarget(target.name)[1] + for target in matching_test_targets] + if matching_test_targets_contains_all: + matching_target_names.append('all') +- print '\tall' ++ print('\tall') + return matching_target_names + + def find_matching_compile_target_names(self): +@@ -669,7 +672,7 @@ + assert self.is_build_impacted(); + # Compile targets are found by searching up from changed targets. + # Reset the visited status for _GetBuildTargets. +- for target in self._name_to_target.itervalues(): ++ for target in self._name_to_target.values(): + target.visited = False + + supplied_targets = _LookupTargets(self._supplied_target_names_no_all(), +@@ -677,10 +680,10 @@ + if 'all' in self._supplied_target_names(): + supplied_targets = [x for x in (set(supplied_targets) | + set(self._root_targets))] +- print 'Supplied test_targets & compile_targets' ++ print('Supplied test_targets & compile_targets') + for target in supplied_targets: +- print '\t', target.name +- print 'Finding compile targets' ++ print('\t', target.name) ++ print('Finding compile targets') + compile_targets = _GetCompileTargets(self._changed_targets, + supplied_targets) + return [gyp.common.ParseQualifiedTarget(target.name)[1] +@@ -699,7 +702,7 @@ + + toplevel_dir = _ToGypPath(os.path.abspath(params['options'].toplevel_dir)) + if debug: +- print 'toplevel_dir', toplevel_dir ++ print('toplevel_dir', toplevel_dir) + + if _WasGypIncludeFileModified(params, config.files): + result_dict = { 'status': all_changed_string, +diff --git a/tools/gyp/pylib/gyp/generator/cmake.py b/pylib/gyp/generator/cmake.py +index a2b9629..4a2041c 100644 +--- a/tools/gyp/pylib/gyp/generator/cmake.py ++++ b/tools/gyp/pylib/gyp/generator/cmake.py +@@ -28,6 +28,8 @@ + CMakeLists.txt file. + """ + ++from __future__ import print_function ++ + import multiprocessing + import os + import signal +@@ -36,6 +38,12 @@ + import gyp.common + import gyp.xcode_emulation + ++try: ++ # maketrans moved to str in python3. ++ _maketrans = string.maketrans ++except NameError: ++ _maketrans = str.maketrans ++ + generator_default_variables = { + 'EXECUTABLE_PREFIX': '', + 'EXECUTABLE_SUFFIX': '', +@@ -238,7 +246,7 @@ + Invalid for make: ':' + Invalid for unknown reasons but cause failures: '.' + """ +- return a.translate(string.maketrans(' /():."', '_______')) ++ return a.translate(_maketrans(' /():."', '_______')) + + + def WriteActions(target_name, actions, extra_sources, extra_deps, +@@ -644,8 +652,8 @@ + + cmake_target_type = cmake_target_type_from_gyp_target_type.get(target_type) + if cmake_target_type is None: +- print ('Target %s has unknown target type %s, skipping.' % +- ( target_name, target_type ) ) ++ print('Target %s has unknown target type %s, skipping.' % ++ ( target_name, target_type )) + return + + SetVariable(output, 'TARGET', target_name) +@@ -868,8 +876,8 @@ + default_product_ext = generator_default_variables['SHARED_LIB_SUFFIX'] + + elif target_type != 'executable': +- print ('ERROR: What output file should be generated?', +- 'type', target_type, 'target', target_name) ++ print(('ERROR: What output file should be generated?', ++ 'type', target_type, 'target', target_name)) + + product_prefix = spec.get('product_prefix', default_product_prefix) + product_name = spec.get('product_name', default_product_name) +@@ -1207,11 +1215,11 @@ + output_dir, + config_name)) + arguments = ['cmake', '-G', 'Ninja'] +- print 'Generating [%s]: %s' % (config_name, arguments) ++ print('Generating [%s]: %s' % (config_name, arguments)) + subprocess.check_call(arguments, cwd=build_dir) + + arguments = ['ninja', '-C', build_dir] +- print 'Building [%s]: %s' % (config_name, arguments) ++ print('Building [%s]: %s' % (config_name, arguments)) + subprocess.check_call(arguments) + + +@@ -1230,7 +1238,7 @@ + GenerateOutputForConfig(target_list, target_dicts, data, + params, user_config) + else: +- config_names = target_dicts[target_list[0]]['configurations'].keys() ++ config_names = target_dicts[target_list[0]]['configurations'] + if params['parallel']: + try: + pool = multiprocessing.Pool(len(config_names)) +@@ -1239,7 +1247,7 @@ + arglists.append((target_list, target_dicts, data, + params, config_name)) + pool.map(CallGenerateOutputForConfig, arglists) +- except KeyboardInterrupt, e: ++ except KeyboardInterrupt as e: + pool.terminate() + raise e + else: +diff --git a/tools/gyp/pylib/gyp/generator/dump_dependency_json.py b/pylib/gyp/generator/dump_dependency_json.py +index 160eafe..2bf3f39 100644 +--- a/tools/gyp/pylib/gyp/generator/dump_dependency_json.py ++++ b/tools/gyp/pylib/gyp/generator/dump_dependency_json.py +@@ -2,6 +2,8 @@ + # Use of this source code is governed by a BSD-style license that can be + # found in the LICENSE file. + ++from __future__ import print_function ++ + import collections + import os + import gyp +@@ -96,4 +98,4 @@ + f = open(filename, 'w') + json.dump(edges, f) + f.close() +- print 'Wrote json to %s.' % filename ++ print('Wrote json to %s.' % filename) +diff --git a/tools/gyp/pylib/gyp/generator/eclipse.py b/pylib/gyp/generator/eclipse.py +index 3544347..d039f03 100644 +--- a/tools/gyp/pylib/gyp/generator/eclipse.py ++++ b/tools/gyp/pylib/gyp/generator/eclipse.py +@@ -141,7 +141,7 @@ + compiler_includes_list.append(include_dir) + + # Find standard gyp include dirs. +- if config.has_key('include_dirs'): ++ if 'include_dirs' in config: + include_dirs = config['include_dirs'] + for shared_intermediate_dir in shared_intermediate_dirs: + for include_dir in include_dirs: +@@ -272,7 +272,7 @@ + out.write(' <language name="holder for library settings"></language>\n') + for lang in eclipse_langs: + out.write(' <language name="%s">\n' % lang) +- for key in sorted(defines.iterkeys()): ++ for key in sorted(defines.keys()): + out.write(' <macro><name>%s</name><value>%s</value></macro>\n' % + (escape(key), escape(defines[key]))) + out.write(' </language>\n') +@@ -418,7 +418,7 @@ + GenerateOutputForConfig(target_list, target_dicts, data, params, + user_config) + else: +- config_names = target_dicts[target_list[0]]['configurations'].keys() ++ config_names = target_dicts[target_list[0]]['configurations'] + for config_name in config_names: + GenerateOutputForConfig(target_list, target_dicts, data, params, + config_name) +diff --git a/tools/gyp/pylib/gyp/generator/gypd.py b/pylib/gyp/generator/gypd.py +index 3efdb99..78eeaa6 100644 +--- a/tools/gyp/pylib/gyp/generator/gypd.py ++++ b/tools/gyp/pylib/gyp/generator/gypd.py +@@ -88,7 +88,7 @@ + if not output_file in output_files: + output_files[output_file] = input_file + +- for output_file, input_file in output_files.iteritems(): ++ for output_file, input_file in output_files.items(): + output = open(output_file, 'w') + pprint.pprint(data[input_file], output) + output.close() +diff --git a/tools/gyp/pylib/gyp/generator/make.py b/pylib/gyp/generator/make.py +index fb4f918..2057e3a 100644 +--- a/tools/gyp/pylib/gyp/generator/make.py ++++ b/tools/gyp/pylib/gyp/generator/make.py +@@ -21,6 +21,8 @@ + # toplevel Makefile. It may make sense to generate some .mk files on + # the side to keep the the files readable. + ++from __future__ import print_function ++ + import os + import re + import sys +@@ -668,7 +670,7 @@ + basenames.setdefault(basename, []).append(source) + + error = '' +- for basename, files in basenames.iteritems(): ++ for basename, files in basenames.items(): + if len(files) > 1: + error += ' %s: %s\n' % (basename, ' '.join(files)) + +@@ -816,7 +818,7 @@ + gyp.xcode_emulation.MacPrefixHeader( + self.xcode_settings, lambda p: Sourceify(self.Absolutify(p)), + self.Pchify)) +- sources = filter(Compilable, all_sources) ++ sources = [x for x in all_sources if Compilable(x)] + if sources: + self.WriteLn(SHARED_HEADER_SUFFIX_RULES_COMMENT1) + extensions = set([os.path.splitext(s)[1] for s in sources]) +@@ -945,7 +947,7 @@ + '%s%s' + % (name, cd_action, command)) + self.WriteLn() +- outputs = map(self.Absolutify, outputs) ++ outputs = [self.Absolutify(o) for o in outputs] + # The makefile rules are all relative to the top dir, but the gyp actions + # are defined relative to their containing dir. This replaces the obj + # variable for the action rule with an absolute version so that the output +@@ -1035,7 +1037,7 @@ + outputs = [gyp.xcode_emulation.ExpandEnvVars(o, env) for o in outputs] + inputs = [gyp.xcode_emulation.ExpandEnvVars(i, env) for i in inputs] + +- outputs = map(self.Absolutify, outputs) ++ outputs = [self.Absolutify(o) for o in outputs] + all_outputs += outputs + # Only write the 'obj' and 'builddir' rules for the "primary" output + # (:1); it's superfluous for the "extra outputs", and this avoids +@@ -1233,11 +1235,11 @@ + self.WriteList(cflags_objcc, 'CFLAGS_OBJCC_%s' % configname) + includes = config.get('include_dirs') + if includes: +- includes = map(Sourceify, map(self.Absolutify, includes)) ++ includes = [Sourceify(self.Absolutify(include)) for include in includes] + self.WriteList(includes, 'INCS_%s' % configname, prefix='-I') + + compilable = filter(Compilable, sources) +- objs = map(self.Objectify, map(self.Absolutify, map(Target, compilable))) ++ objs = [self.Objectify(self.Absolutify(Target(x))) for x in compilable] + self.WriteList(objs, 'OBJS') + + for obj in objs: +@@ -1309,7 +1311,7 @@ + + # If there are any object files in our input file list, link them into our + # output. +- extra_link_deps += filter(Linkable, sources) ++ extra_link_deps += [source for source in sources if Linkable(source)] + + self.WriteLn() + +@@ -1377,8 +1379,8 @@ + elif self.type == 'none': + target = '%s.stamp' % target + elif self.type != 'executable': +- print ("ERROR: What output file should be generated?", +- "type", self.type, "target", target) ++ print(("ERROR: What output file should be generated?", ++ "type", self.type, "target", target)) + + target_prefix = spec.get('product_prefix', target_prefix) + target = spec.get('product_name', target) +@@ -1542,9 +1544,9 @@ + # Postbuilds expect to be run in the gyp file's directory, so insert an + # implicit postbuild to cd to there. + postbuilds.insert(0, gyp.common.EncodePOSIXShellList(['cd', self.path])) +- for i in xrange(len(postbuilds)): +- if not postbuilds[i].startswith('$'): +- postbuilds[i] = EscapeShellArgument(postbuilds[i]) ++ for i, postbuild in enumerate(postbuilds): ++ if not postbuild.startswith('$'): ++ postbuilds[i] = EscapeShellArgument(postbuild) + self.WriteLn('%s: builddir := $(abs_builddir)' % QuoteSpaces(self.output)) + self.WriteLn('%s: POSTBUILDS := %s' % ( + QuoteSpaces(self.output), ' '.join(postbuilds))) +@@ -1634,7 +1636,7 @@ + self.WriteDoCmd([self.output_binary], deps, 'touch', part_of_all, + postbuilds=postbuilds) + else: +- print "WARNING: no output for", self.type, target ++ print("WARNING: no output for", self.type, target) + + # Add an alias for each target (if there are any outputs). + # Installable target aliases are created below. +@@ -1741,7 +1743,7 @@ + output is just a name to run the rule + command: (optional) command name to generate unambiguous labels + """ +- outputs = map(QuoteSpaces, outputs) ++ outputs = [QuoteSpaces(o) for o in outputs] + inputs = map(QuoteSpaces, inputs) + + if comment: +@@ -1986,7 +1988,7 @@ + if options.toplevel_dir and options.toplevel_dir != '.': + arguments += '-C', options.toplevel_dir + arguments.append('BUILDTYPE=' + config) +- print 'Building [%s]: %s' % (config, arguments) ++ print('Building [%s]: %s' % (config, arguments)) + subprocess.check_call(arguments) + + +diff --git a/tools/gyp/pylib/gyp/generator/msvs.py b/pylib/gyp/generator/msvs.py +index 8fe9e5a..e8a2b36 100644 +--- a/tools/gyp/pylib/gyp/generator/msvs.py ++++ b/tools/gyp/pylib/gyp/generator/msvs.py +@@ -2,6 +2,9 @@ + # Use of this source code is governed by a BSD-style license that can be + # found in the LICENSE file. + ++from __future__ import print_function ++ ++import collections + import copy + import ntpath + import os +@@ -23,16 +26,6 @@ + from gyp.common import GypError + from gyp.common import OrderedSet + +-# TODO: Remove once bots are on 2.7, http://crbug.com/241769 +-def _import_OrderedDict(): +- import collections +- try: +- return collections.OrderedDict +- except AttributeError: +- import gyp.ordered_dict +- return gyp.ordered_dict.OrderedDict +-OrderedDict = _import_OrderedDict() +- + + # Regular expression for validating Visual Studio GUIDs. If the GUID + # contains lowercase hex letters, MSVS will be fine. However, +@@ -202,7 +195,7 @@ + if not prefix: prefix = [] + result = [] + excluded_result = [] +- folders = OrderedDict() ++ folders = collections.OrderedDict() + # Gather files into the final result, excluded, or folders. + for s in sources: + if len(s) == 1: +@@ -469,7 +462,7 @@ + 'CommandLine': cmd, + }) + # Add to the properties of primary input for each config. +- for config_name, c_data in spec['configurations'].iteritems(): ++ for config_name, c_data in spec['configurations'].items(): + p.AddFileConfig(_FixPath(primary_input), + _ConfigFullName(config_name, c_data), tools=[tool]) + +@@ -775,8 +768,8 @@ + # the VCProj but cause the same problem on the final command-line. Moving + # the item to the end of the list does works, but that's only possible if + # there's only one such item. Let's just warn the user. +- print >> sys.stderr, ('Warning: MSVS may misinterpret the odd number of ' + +- 'quotes in ' + s) ++ print(('Warning: MSVS may misinterpret the odd number of ' + ++ 'quotes in ' + s), file=sys.stderr) + return s + + +@@ -991,7 +984,7 @@ + basenames.setdefault(basename, []).append(source) + + error = '' +- for basename, files in basenames.iteritems(): ++ for basename, files in basenames.items(): + if len(files) > 1: + error += ' %s: %s\n' % (basename, ' '.join(files)) + +@@ -1023,7 +1016,7 @@ + relative_path_of_gyp_file = gyp.common.RelativePath(gyp_path, project_dir) + + config_type = _GetMSVSConfigurationType(spec, project.build_file) +- for config_name, config in spec['configurations'].iteritems(): ++ for config_name, config in spec['configurations'].items(): + _AddConfigurationToMSVSProject(p, spec, config_type, config_name, config) + + # MSVC08 and prior version cannot handle duplicate basenames in the same +@@ -1392,10 +1385,10 @@ + A list of Tool objects. + """ + tool_list = [] +- for tool, settings in tools.iteritems(): ++ for tool, settings in tools.items(): + # Collapse settings with lists. + settings_fixed = {} +- for setting, value in settings.iteritems(): ++ for setting, value in settings.items(): + if type(value) == list: + if ((tool == 'VCLinkerTool' and + setting == 'AdditionalDependencies') or +@@ -1570,7 +1563,7 @@ + def _GetPrecompileRelatedFiles(spec): + # Gather a list of precompiled header related sources. + precompiled_related = [] +- for _, config in spec['configurations'].iteritems(): ++ for _, config in spec['configurations'].items(): + for k in precomp_keys: + f = config.get(k) + if f: +@@ -1581,7 +1574,7 @@ + def _ExcludeFilesFromBeingBuilt(p, spec, excluded_sources, excluded_idl, + list_excluded): + exclusions = _GetExcludedFilesFromBuild(spec, excluded_sources, excluded_idl) +- for file_name, excluded_configs in exclusions.iteritems(): ++ for file_name, excluded_configs in exclusions.items(): + if (not list_excluded and + len(excluded_configs) == len(spec['configurations'])): + # If we're not listing excluded files, then they won't appear in the +@@ -1598,7 +1591,7 @@ + # Exclude excluded sources from being built. + for f in excluded_sources: + excluded_configs = [] +- for config_name, config in spec['configurations'].iteritems(): ++ for config_name, config in spec['configurations'].items(): + precomped = [_FixPath(config.get(i, '')) for i in precomp_keys] + # Don't do this for ones that are precompiled header related. + if f not in precomped: +@@ -1608,7 +1601,7 @@ + # Exclude them now. + for f in excluded_idl: + excluded_configs = [] +- for config_name, config in spec['configurations'].iteritems(): ++ for config_name, config in spec['configurations'].items(): + excluded_configs.append((config_name, config)) + exclusions[f] = excluded_configs + return exclusions +@@ -1617,7 +1610,7 @@ + def _AddToolFilesToMSVS(p, spec): + # Add in tool files (rules). + tool_files = OrderedSet() +- for _, config in spec['configurations'].iteritems(): ++ for _, config in spec['configurations'].items(): + for f in config.get('msvs_tool_files', []): + tool_files.add(f) + for f in tool_files: +@@ -1630,7 +1623,7 @@ + # kind (i.e. C vs. C++) as the precompiled header source stub needs + # to have use of precompiled headers disabled. + extensions_excluded_from_precompile = [] +- for config_name, config in spec['configurations'].iteritems(): ++ for config_name, config in spec['configurations'].items(): + source = config.get('msvs_precompiled_source') + if source: + source = _FixPath(source) +@@ -1651,7 +1644,7 @@ + else: + basename, extension = os.path.splitext(source) + if extension in extensions_excluded_from_precompile: +- for config_name, config in spec['configurations'].iteritems(): ++ for config_name, config in spec['configurations'].items(): + tool = MSVSProject.Tool('VCCLCompilerTool', + {'UsePrecompiledHeader': '0', + 'ForcedIncludeFiles': '$(NOINHERIT)'}) +@@ -1702,7 +1695,7 @@ + return # Nothing to add + # Write out the user file. + user_file = _CreateMSVSUserFile(project_path, version, spec) +- for config_name, c_data in spec['configurations'].iteritems(): ++ for config_name, c_data in spec['configurations'].items(): + user_file.AddDebugSettings(_ConfigFullName(config_name, c_data), + action, environment, working_directory) + user_file.WriteIfChanged() +@@ -1756,7 +1749,7 @@ + def _DictsToFolders(base_path, bucket, flat): + # Convert to folders recursively. + children = [] +- for folder, contents in bucket.iteritems(): ++ for folder, contents in bucket.items(): + if type(contents) == dict: + folder_children = _DictsToFolders(os.path.join(base_path, folder), + contents, flat) +@@ -1778,8 +1771,8 @@ + # such projects up one level. + if (type(node) == dict and + len(node) == 1 and +- node.keys()[0] == parent + '.vcproj'): +- return node[node.keys()[0]] ++ next(iter(node)) == parent + '.vcproj'): ++ return node[next(iter(node))] + if type(node) != dict: + return node + for child in node: +@@ -1798,8 +1791,8 @@ + # Walk down from the top until we hit a folder that has more than one entry. + # In practice, this strips the top-level "src/" dir from the hierarchy in + # the solution. +- while len(root) == 1 and type(root[root.keys()[0]]) == dict: +- root = root[root.keys()[0]] ++ while len(root) == 1 and type(root[next(iter(root))]) == dict: ++ root = root[next(iter(root))] + # Collapse singles. + root = _CollapseSingles('', root) + # Merge buckets until everything is a root entry. +@@ -1828,7 +1821,7 @@ + # Prepare a dict indicating which project configurations are used for which + # solution configurations for this target. + config_platform_overrides = {} +- for config_name, c in spec['configurations'].iteritems(): ++ for config_name, c in spec['configurations'].items(): + config_fullname = _ConfigFullName(config_name, c) + platform = c.get('msvs_target_platform', _ConfigPlatform(c)) + fixed_config_fullname = '%s|%s' % ( +@@ -1967,7 +1960,7 @@ + msvs_version = params['msvs_version'] + devenv = os.path.join(msvs_version.path, 'Common7', 'IDE', 'devenv.com') + +- for build_file, build_file_dict in data.iteritems(): ++ for build_file, build_file_dict in data.items(): + (build_file_root, build_file_ext) = os.path.splitext(build_file) + if build_file_ext != '.gyp': + continue +@@ -1977,7 +1970,7 @@ + + for config in configurations: + arguments = [devenv, sln_path, '/Build', config] +- print 'Building [%s]: %s' % (config, arguments) ++ print('Building [%s]: %s' % (config, arguments)) + rtn = subprocess.check_call(arguments) + + +@@ -2029,7 +2022,7 @@ + configs = set() + for qualified_target in target_list: + spec = target_dicts[qualified_target] +- for config_name, config in spec['configurations'].iteritems(): ++ for config_name, config in spec['configurations'].items(): + configs.add(_ConfigFullName(config_name, config)) + configs = list(configs) + +@@ -2072,7 +2065,7 @@ + if generator_flags.get('msvs_error_on_missing_sources', False): + raise GypError(error_message) + else: +- print >> sys.stdout, "Warning: " + error_message ++ print("Warning: " + error_message, file=sys.stdout) + + + def _GenerateMSBuildFiltersFile(filters_path, source_files, +@@ -2669,7 +2662,7 @@ + + def _GetMSBuildProjectConfigurations(configurations): + group = ['ItemGroup', {'Label': 'ProjectConfigurations'}] +- for (name, settings) in sorted(configurations.iteritems()): ++ for (name, settings) in sorted(configurations.items()): + configuration, platform = _GetConfigurationAndPlatform(name, settings) + designation = '%s|%s' % (configuration, platform) + group.append( +@@ -2742,7 +2735,7 @@ + + def _GetMSBuildConfigurationDetails(spec, build_file): + properties = {} +- for name, settings in spec['configurations'].iteritems(): ++ for name, settings in spec['configurations'].items(): + msbuild_attributes = _GetMSBuildAttributes(spec, settings, build_file) + condition = _GetConfigurationCondition(name, settings) + character_set = msbuild_attributes.get('CharacterSet') +@@ -2776,9 +2769,9 @@ + user_props = r'$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props' + additional_props = {} + props_specified = False +- for name, settings in sorted(configurations.iteritems()): ++ for name, settings in sorted(configurations.items()): + configuration = _GetConfigurationCondition(name, settings) +- if settings.has_key('msbuild_props'): ++ if 'msbuild_props' in settings: + additional_props[configuration] = _FixPaths(settings['msbuild_props']) + props_specified = True + else: +@@ -2798,7 +2791,7 @@ + ] + else: + sheets = [] +- for condition, props in additional_props.iteritems(): ++ for condition, props in additional_props.items(): + import_group = [ + 'ImportGroup', + {'Label': 'PropertySheets', +@@ -2831,7 +2824,7 @@ + elif a == 'ConfigurationType': + msbuild_attributes[a] = _ConvertMSVSConfigurationType(msvs_attributes[a]) + else: +- print 'Warning: Do not know how to convert MSVS attribute ' + a ++ print('Warning: Do not know how to convert MSVS attribute ' + a) + return msbuild_attributes + + +@@ -2927,7 +2920,7 @@ + new_paths = '$(ExecutablePath);' + ';'.join(new_paths) + + properties = {} +- for (name, configuration) in sorted(configurations.iteritems()): ++ for (name, configuration) in sorted(configurations.items()): + condition = _GetConfigurationCondition(name, configuration) + attributes = _GetMSBuildAttributes(spec, configuration, build_file) + msbuild_settings = configuration['finalized_msbuild_settings'] +@@ -2952,7 +2945,7 @@ + _AddConditionalProperty(properties, condition, 'ExecutablePath', + new_paths) + tool_settings = msbuild_settings.get('', {}) +- for name, value in sorted(tool_settings.iteritems()): ++ for name, value in sorted(tool_settings.items()): + formatted_value = _GetValueFormattedForMSBuild('', name, value) + _AddConditionalProperty(properties, condition, name, formatted_value) + return _GetMSBuildPropertyGroup(spec, None, properties) +@@ -3021,7 +3014,7 @@ + # NOTE: reverse(topsort(DAG)) = topsort(reverse_edges(DAG)) + for name in reversed(properties_ordered): + values = properties[name] +- for value, conditions in sorted(values.iteritems()): ++ for value, conditions in sorted(values.items()): + if len(conditions) == num_configurations: + # If the value is the same all configurations, + # just add one unconditional entry. +@@ -3034,18 +3027,18 @@ + + def _GetMSBuildToolSettingsSections(spec, configurations): + groups = [] +- for (name, configuration) in sorted(configurations.iteritems()): ++ for (name, configuration) in sorted(configurations.items()): + msbuild_settings = configuration['finalized_msbuild_settings'] + group = ['ItemDefinitionGroup', + {'Condition': _GetConfigurationCondition(name, configuration)} + ] +- for tool_name, tool_settings in sorted(msbuild_settings.iteritems()): ++ for tool_name, tool_settings in sorted(msbuild_settings.items()): + # Skip the tool named '' which is a holder of global settings handled + # by _GetMSBuildConfigurationGlobalProperties. + if tool_name: + if tool_settings: + tool = [tool_name] +- for name, value in sorted(tool_settings.iteritems()): ++ for name, value in sorted(tool_settings.items()): + formatted_value = _GetValueFormattedForMSBuild(tool_name, name, + value) + tool.append([name, formatted_value]) +@@ -3078,8 +3071,8 @@ + for ignored_setting in ignored_settings: + value = configuration.get(ignored_setting) + if value: +- print ('Warning: The automatic conversion to MSBuild does not handle ' +- '%s. Ignoring setting of %s' % (ignored_setting, str(value))) ++ print('Warning: The automatic conversion to MSBuild does not handle ' ++ '%s. Ignoring setting of %s' % (ignored_setting, str(value))) + + defines = [_EscapeCppDefineForMSBuild(d) for d in defines] + disabled_warnings = _GetDisabledWarnings(configuration) +@@ -3245,7 +3238,7 @@ + {'Condition': condition}, + 'true']) + # Add precompile if needed +- for config_name, configuration in spec['configurations'].iteritems(): ++ for config_name, configuration in spec['configurations'].items(): + precompiled_source = configuration.get('msvs_precompiled_source', '') + if precompiled_source != '': + precompiled_source = _FixPath(precompiled_source) +@@ -3291,7 +3284,7 @@ + ['Project', guid], + ['ReferenceOutputAssembly', 'false'] + ] +- for config in dependency.spec.get('configurations', {}).itervalues(): ++ for config in dependency.spec.get('configurations', {}).values(): + if config.get('msvs_use_library_dependency_inputs', 0): + project_ref.append(['UseLibraryDependencyInputs', 'true']) + break +@@ -3360,7 +3353,7 @@ + extension_to_rule_name) + missing_sources = _VerifySourcesExist(sources, project_dir) + +- for configuration in configurations.itervalues(): ++ for configuration in configurations.values(): + _FinalizeMSBuildSettings(spec, configuration) + + # Add attributes to root element +@@ -3486,7 +3479,7 @@ + """ + sources_handled_by_action = OrderedSet() + actions_spec = [] +- for primary_input, actions in actions_to_add.iteritems(): ++ for primary_input, actions in actions_to_add.items(): + inputs = OrderedSet() + outputs = OrderedSet() + descriptions = [] +diff --git a/tools/gyp/pylib/gyp/generator/msvs_test.py b/pylib/gyp/generator/msvs_test.py +index c0b021d..838d236 100755 +--- a/tools/gyp/pylib/gyp/generator/msvs_test.py ++++ b/tools/gyp/pylib/gyp/generator/msvs_test.py +@@ -7,13 +7,16 @@ + + import gyp.generator.msvs as msvs + import unittest +-import StringIO ++try: ++ from StringIO import StringIO ++except ImportError: ++ from io import StringIO + + + class TestSequenceFunctions(unittest.TestCase): + + def setUp(self): +- self.stderr = StringIO.StringIO() ++ self.stderr = StringIO() + + def test_GetLibraries(self): + self.assertEqual( +diff --git a/tools/gyp/pylib/gyp/generator/ninja.py b/pylib/gyp/generator/ninja.py +index 6de87b7..66faabc 100644 +--- a/tools/gyp/pylib/gyp/generator/ninja.py ++++ b/tools/gyp/pylib/gyp/generator/ninja.py +@@ -2,6 +2,8 @@ + # Use of this source code is governed by a BSD-style license that can be + # found in the LICENSE file. + ++from __future__ import print_function ++ + import collections + import copy + import hashlib +@@ -18,7 +20,10 @@ + import gyp.msvs_emulation + import gyp.MSVSUtil as MSVSUtil + import gyp.xcode_emulation +-from cStringIO import StringIO ++try: ++ from cStringIO import StringIO ++except ImportError: ++ from io import StringIO + + from gyp.common import GetEnvironFallback + import gyp.ninja_syntax as ninja_syntax +@@ -350,7 +355,7 @@ + + Uses a stamp file if necessary.""" + +- assert targets == filter(None, targets), targets ++ assert targets == [t for t in targets if t], targets + if len(targets) == 0: + assert not order_only + return None +@@ -427,8 +432,8 @@ + compile_depends.append(target.PreCompileInput()) + if target.uses_cpp: + self.target.uses_cpp = True +- actions_depends = filter(None, actions_depends) +- compile_depends = filter(None, compile_depends) ++ actions_depends = [d for d in actions_depends if d] ++ compile_depends = [d for d in compile_depends if d] + actions_depends = self.WriteCollapsedDependencies('actions_depends', + actions_depends) + compile_depends = self.WriteCollapsedDependencies('compile_depends', +@@ -455,8 +460,8 @@ + try: + sources = extra_sources + spec.get('sources', []) + except TypeError: +- print 'extra_sources: ', str(extra_sources) +- print 'spec.get("sources"): ', str(spec.get('sources')) ++ print('extra_sources: ', str(extra_sources)) ++ print('spec.get("sources"): ', str(spec.get('sources'))) + raise + if sources: + if self.flavor == 'mac' and len(self.archs) > 1: +@@ -485,8 +490,9 @@ + if self.flavor != 'mac' or len(self.archs) == 1: + link_deps += [self.GypPathToNinja(o) for o in obj_outputs] + else: +- print "Warning: Actions/rules writing object files don't work with " \ +- "multiarch targets, dropping. (target %s)" % spec['target_name'] ++ print("Warning: Actions/rules writing object files don't work with " \ ++ "multiarch targets, dropping. (target %s)" % ++ spec['target_name']) + elif self.flavor == 'mac' and len(self.archs) > 1: + link_deps = collections.defaultdict(list) + +@@ -838,7 +844,7 @@ + 'XCASSETS_LAUNCH_IMAGE': 'launch-image', + } + settings = self.xcode_settings.xcode_settings[self.config_name] +- for settings_key, arg_name in settings_to_arg.iteritems(): ++ for settings_key, arg_name in settings_to_arg.items(): + value = settings.get(settings_key) + if value: + extra_arguments[arg_name] = value +@@ -1772,7 +1778,7 @@ + + # VS 2015 uses 20% more working set than VS 2013 and can consume all RAM + # on a 64 GB machine. +- mem_limit = max(1, stat.ullTotalPhys / (5 * (2 ** 30))) # total / 5GB ++ mem_limit = max(1, stat.ullTotalPhys // (5 * (2 ** 30))) # total / 5GB + hard_cap = max(1, int(os.environ.get('GYP_LINK_CONCURRENCY_MAX', 2**32))) + return min(mem_limit, hard_cap) + elif sys.platform.startswith('linux'): +@@ -1784,14 +1790,14 @@ + if not match: + continue + # Allow 8Gb per link on Linux because Gold is quite memory hungry +- return max(1, int(match.group(1)) / (8 * (2 ** 20))) ++ return max(1, int(match.group(1)) // (8 * (2 ** 20))) + return 1 + elif sys.platform == 'darwin': + try: + avail_bytes = int(subprocess.check_output(['sysctl', '-n', 'hw.memsize'])) + # A static library debug build of Chromium's unit_tests takes ~2.7GB, so + # 4GB per ld process allows for some more bloat. +- return max(1, avail_bytes / (4 * (2 ** 30))) # total / 4GB ++ return max(1, avail_bytes // (4 * (2 ** 30))) # total / 4GB + except: + return 1 + else: +@@ -1946,7 +1952,7 @@ + wrappers[key[:-len('_wrapper')]] = os.path.join(build_to_root, value) + + # Support wrappers from environment variables too. +- for key, value in os.environ.iteritems(): ++ for key, value in os.environ.items(): + if key.lower().endswith('_wrapper'): + key_prefix = key[:-len('_wrapper')] + key_prefix = re.sub(r'\.HOST$', '.host', key_prefix) +@@ -1966,7 +1972,7 @@ + configs, generator_flags) + cl_paths = gyp.msvs_emulation.GenerateEnvironmentFiles( + toplevel_build, generator_flags, shared_system_includes, OpenOutput) +- for arch, path in sorted(cl_paths.iteritems()): ++ for arch, path in sorted(cl_paths.items()): + if clang_cl: + # If we have selected clang-cl, use that instead. + path = clang_cl +@@ -2381,6 +2387,7 @@ + + qualified_target_for_hash = gyp.common.QualifiedTarget(build_file, name, + toolset) ++ qualified_target_for_hash = qualified_target_for_hash.encode('utf-8') + hash_for_rules = hashlib.md5(qualified_target_for_hash).hexdigest() + + base_path = os.path.dirname(build_file) +@@ -2447,7 +2454,7 @@ + for config in configurations: + builddir = os.path.join(options.toplevel_dir, 'out', config) + arguments = ['ninja', '-C', builddir] +- print 'Building [%s]: %s' % (config, arguments) ++ print('Building [%s]: %s' % (config, arguments)) + subprocess.check_call(arguments) + + +@@ -2475,7 +2482,7 @@ + GenerateOutputForConfig(target_list, target_dicts, data, params, + user_config) + else: +- config_names = target_dicts[target_list[0]]['configurations'].keys() ++ config_names = target_dicts[target_list[0]]['configurations'] + if params['parallel']: + try: + pool = multiprocessing.Pool(len(config_names)) +@@ -2484,7 +2491,7 @@ + arglists.append( + (target_list, target_dicts, data, params, config_name)) + pool.map(CallGenerateOutputForConfig, arglists) +- except KeyboardInterrupt, e: ++ except KeyboardInterrupt as e: + pool.terminate() + raise e + else: +diff --git a/tools/gyp/pylib/gyp/generator/ninja_test.py b/pylib/gyp/generator/ninja_test.py +index 1767b2f..1ad68e4 100644 +--- a/tools/gyp/pylib/gyp/generator/ninja_test.py ++++ b/tools/gyp/pylib/gyp/generator/ninja_test.py +@@ -8,7 +8,6 @@ + + import gyp.generator.ninja as ninja + import unittest +-import StringIO + import sys + import TestCommon + +diff --git a/tools/gyp/pylib/gyp/generator/xcode.py b/pylib/gyp/generator/xcode.py +index b35372a..8bc22be 100644 +--- a/tools/gyp/pylib/gyp/generator/xcode.py ++++ b/tools/gyp/pylib/gyp/generator/xcode.py +@@ -2,6 +2,8 @@ + # Use of this source code is governed by a BSD-style license that can be + # found in the LICENSE file. + ++from __future__ import print_function ++ + import filecmp + import gyp.common + import gyp.xcodeproj_file +@@ -129,7 +131,7 @@ + try: + os.makedirs(self.path) + self.created_dir = True +- except OSError, e: ++ except OSError as e: + if e.errno != errno.EEXIST: + raise + +@@ -183,7 +185,7 @@ + # the tree tree view for UI display. + # Any values set globally are applied to all configurations, then any + # per-configuration values are applied. +- for xck, xcv in self.build_file_dict.get('xcode_settings', {}).iteritems(): ++ for xck, xcv in self.build_file_dict.get('xcode_settings', {}).items(): + xccl.SetBuildSetting(xck, xcv) + if 'xcode_config_file' in self.build_file_dict: + config_ref = self.project.AddOrGetFileInRootGroup( +@@ -197,7 +199,7 @@ + if build_file_configuration_named: + xcc = xccl.ConfigurationNamed(config_name) + for xck, xcv in build_file_configuration_named.get('xcode_settings', +- {}).iteritems(): ++ {}).items(): + xcc.SetBuildSetting(xck, xcv) + if 'xcode_config_file' in build_file_configuration_named: + config_ref = self.project.AddOrGetFileInRootGroup( +@@ -273,7 +275,7 @@ + script = script + "\n".join( + ['export %s="%s"' % + (key, gyp.xcodeproj_file.ConvertVariablesToShellSyntax(val)) +- for (key, val) in command.get('environment').iteritems()]) + "\n" ++ for (key, val) in command.get('environment').items()]) + "\n" + + # Some test end up using sockets, files on disk, etc. and can get + # confused if more then one test runs at a time. The generator +@@ -444,7 +446,7 @@ + dir=self.path) + + try: +- output_file = os.fdopen(output_fd, 'wb') ++ output_file = os.fdopen(output_fd, 'w') + + self.project_file.Print(output_file) + output_file.close() +@@ -454,7 +456,7 @@ + same = False + try: + same = filecmp.cmp(pbxproj_path, new_pbxproj_path, False) +- except OSError, e: ++ except OSError as e: + if e.errno != errno.ENOENT: + raise + +@@ -473,10 +475,10 @@ + # + # No way to get the umask without setting a new one? Set a safe one + # and then set it back to the old value. +- umask = os.umask(077) ++ umask = os.umask(0o77) + os.umask(umask) + +- os.chmod(new_pbxproj_path, 0666 & ~umask) ++ os.chmod(new_pbxproj_path, 0o666 & ~umask) + os.rename(new_pbxproj_path, pbxproj_path) + + except Exception: +@@ -566,7 +568,7 @@ + def PerformBuild(data, configurations, params): + options = params['options'] + +- for build_file, build_file_dict in data.iteritems(): ++ for build_file, build_file_dict in data.items(): + (build_file_root, build_file_ext) = os.path.splitext(build_file) + if build_file_ext != '.gyp': + continue +@@ -577,7 +579,7 @@ + for config in configurations: + arguments = ['xcodebuild', '-project', xcodeproj_path] + arguments += ['-configuration', config] +- print "Building [%s]: %s" % (config, arguments) ++ print("Building [%s]: %s" % (config, arguments)) + subprocess.check_call(arguments) + + +@@ -625,7 +627,7 @@ + skip_excluded_files = \ + not generator_flags.get('xcode_list_excluded_files', True) + xcode_projects = {} +- for build_file, build_file_dict in data.iteritems(): ++ for build_file, build_file_dict in data.items(): + (build_file_root, build_file_ext) = os.path.splitext(build_file) + if build_file_ext != '.gyp': + continue +@@ -744,7 +746,7 @@ + xctarget_type = gyp.xcodeproj_file.PBXNativeTarget + try: + target_properties['productType'] = _types[type_bundle_key] +- except KeyError, e: ++ except KeyError as e: + gyp.common.ExceptionAppend(e, "-- unknown product type while " + "writing target %s" % target_name) + raise +@@ -1016,22 +1018,21 @@ + makefile_name) + # TODO(mark): try/close? Write to a temporary file and swap it only + # if it's got changes? +- makefile = open(makefile_path, 'wb') ++ makefile = open(makefile_path, 'w') + + # make will build the first target in the makefile by default. By + # convention, it's called "all". List all (or at least one) + # concrete output for each rule source as a prerequisite of the "all" + # target. + makefile.write('all: \\\n') +- for concrete_output_index in \ +- xrange(0, len(concrete_outputs_by_rule_source)): ++ for concrete_output_index, concrete_output_by_rule_source in \ ++ enumerate(concrete_outputs_by_rule_source): + # Only list the first (index [0]) concrete output of each input + # in the "all" target. Otherwise, a parallel make (-j > 1) would + # attempt to process each input multiple times simultaneously. + # Otherwise, "all" could just contain the entire list of + # concrete_outputs_all. +- concrete_output = \ +- concrete_outputs_by_rule_source[concrete_output_index][0] ++ concrete_output = concrete_output_by_rule_source[0] + if concrete_output_index == len(concrete_outputs_by_rule_source) - 1: + eol = '' + else: +@@ -1047,8 +1048,8 @@ + # rule source. Collect the names of the directories that are + # required. + concrete_output_dirs = [] +- for concrete_output_index in xrange(0, len(concrete_outputs)): +- concrete_output = concrete_outputs[concrete_output_index] ++ for concrete_output_index, concrete_output in \ ++ enumerate(concrete_outputs): + if concrete_output_index == 0: + bol = '' + else: +@@ -1066,8 +1067,7 @@ + # the set of additional rule inputs, if any. + prerequisites = [rule_source] + prerequisites.extend(rule.get('inputs', [])) +- for prerequisite_index in xrange(0, len(prerequisites)): +- prerequisite = prerequisites[prerequisite_index] ++ for prerequisite_index, prerequisite in enumerate(prerequisites): + if prerequisite_index == len(prerequisites) - 1: + eol = '' + else: +@@ -1279,7 +1279,7 @@ + set_define = EscapeXcodeDefine(define) + xcbc.AppendBuildSetting('GCC_PREPROCESSOR_DEFINITIONS', set_define) + if 'xcode_settings' in configuration: +- for xck, xcv in configuration['xcode_settings'].iteritems(): ++ for xck, xcv in configuration['xcode_settings'].items(): + xcbc.SetBuildSetting(xck, xcv) + if 'xcode_config_file' in configuration: + config_ref = pbxp.AddOrGetFileInRootGroup( +@@ -1287,7 +1287,7 @@ + xcbc.SetBaseConfiguration(config_ref) + + build_files = [] +- for build_file, build_file_dict in data.iteritems(): ++ for build_file, build_file_dict in data.items(): + if build_file.endswith('.gyp'): + build_files.append(build_file) + +diff --git a/tools/gyp/pylib/gyp/input.py b/pylib/gyp/input.py +index 21b4606..8ac47cb 100644 +--- a/tools/gyp/pylib/gyp/input.py ++++ b/tools/gyp/pylib/gyp/input.py +@@ -2,8 +2,9 @@ + # Use of this source code is governed by a BSD-style license that can be + # found in the LICENSE file. + +-import ast ++from __future__ import print_function + ++import ast + import gyp.common + import gyp.simple_copy + import multiprocessing +@@ -231,10 +232,10 @@ + else: + build_file_data = eval(build_file_contents, {'__builtins__': None}, + None) +- except SyntaxError, e: ++ except SyntaxError as e: + e.filename = build_file_path + raise +- except Exception, e: ++ except Exception as e: + gyp.common.ExceptionAppend(e, 'while reading ' + build_file_path) + raise + +@@ -254,7 +255,7 @@ + else: + LoadBuildFileIncludesIntoDict(build_file_data, build_file_path, data, + aux_data, None, check) +- except Exception, e: ++ except Exception as e: + gyp.common.ExceptionAppend(e, + 'while reading includes of ' + build_file_path) + raise +@@ -291,7 +292,7 @@ + subdict_path, include) + + # Recurse into subdictionaries. +- for k, v in subdict.iteritems(): ++ for k, v in subdict.items(): + if type(v) is dict: + LoadBuildFileIncludesIntoDict(v, subdict_path, data, aux_data, + None, check) +@@ -456,7 +457,7 @@ + try: + LoadTargetBuildFile(dependency, data, aux_data, variables, + includes, depth, check, load_dependencies) +- except Exception, e: ++ except Exception as e: + gyp.common.ExceptionAppend( + e, 'while loading dependencies of %s' % build_file_path) + raise +@@ -477,7 +478,7 @@ + signal.signal(signal.SIGINT, signal.SIG_IGN) + + # Apply globals so that the worker process behaves the same. +- for key, value in global_flags.iteritems(): ++ for key, value in global_flags.items(): + globals()[key] = value + + SetGeneratorGlobals(generator_input_info) +@@ -499,12 +500,12 @@ + return (build_file_path, + build_file_data, + dependencies) +- except GypError, e: ++ except GypError as e: + sys.stderr.write("gyp: %s\n" % e) + return None +- except Exception, e: +- print >>sys.stderr, 'Exception:', e +- print >>sys.stderr, traceback.format_exc() ++ except Exception as e: ++ print('Exception:', e, file=sys.stderr) ++ print(traceback.format_exc(), file=sys.stderr) + return None + + +@@ -594,7 +595,7 @@ + args = (global_flags, dependency, + variables, includes, depth, check, generator_input_info), + callback = parallel_state.LoadTargetBuildFileCallback) +- except KeyboardInterrupt, e: ++ except KeyboardInterrupt as e: + parallel_state.pool.terminate() + raise e + +@@ -894,7 +895,7 @@ + stderr=subprocess.PIPE, + stdin=subprocess.PIPE, + cwd=build_file_dir) +- except Exception, e: ++ except Exception as e: + raise GypError("%s while executing command '%s' in %s" % + (e, contents, build_file)) + +@@ -1008,9 +1009,9 @@ + + # Convert all strings that are canonically-represented integers into integers. + if type(output) is list: +- for index in xrange(0, len(output)): +- if IsStrCanonicalInt(output[index]): +- output[index] = int(output[index]) ++ for index, outstr in enumerate(output): ++ if IsStrCanonicalInt(outstr): ++ output[index] = int(outstr) + elif IsStrCanonicalInt(output): + output = int(output) + +@@ -1079,13 +1080,13 @@ + if eval(ast_code, {'__builtins__': None}, variables): + return true_dict + return false_dict +- except SyntaxError, e: ++ except SyntaxError as e: + syntax_error = SyntaxError('%s while evaluating condition \'%s\' in %s ' + 'at character %d.' % + (str(e.args[0]), e.text, build_file, e.offset), + e.filename, e.lineno, e.offset, e.text) + raise syntax_error +- except NameError, e: ++ except NameError as e: + gyp.common.ExceptionAppend(e, 'while evaluating condition \'%s\' in %s' % + (cond_expr_expanded, build_file)) + raise GypError(e) +@@ -1140,7 +1141,7 @@ + def LoadAutomaticVariablesFromDict(variables, the_dict): + # Any keys with plain string values in the_dict become automatic variables. + # The variable name is the key name with a "_" character prepended. +- for key, value in the_dict.iteritems(): ++ for key, value in the_dict.items(): + if type(value) in (str, int, list): + variables['_' + key] = value + +@@ -1153,7 +1154,7 @@ + # the_dict in the_dict's parent dict. If the_dict's parent is not a dict + # (it could be a list or it could be parentless because it is a root dict), + # the_dict_key will be None. +- for key, value in the_dict.get('variables', {}).iteritems(): ++ for key, value in the_dict.get('variables', {}).items(): + if type(value) not in (str, int, list): + continue + +@@ -1192,7 +1193,7 @@ + # list before we process them so that you can reference one + # variable from another. They will be fully expanded by recursion + # in ExpandVariables. +- for key, value in the_dict['variables'].iteritems(): ++ for key, value in the_dict['variables'].items(): + variables[key] = value + + # Handle the associated variables dict first, so that any variable +@@ -1205,7 +1206,7 @@ + + LoadVariablesFromVariablesDict(variables, the_dict, the_dict_key) + +- for key, value in the_dict.iteritems(): ++ for key, value in the_dict.items(): + # Skip "variables", which was already processed if present. + if key != 'variables' and type(value) is str: + expanded = ExpandVariables(value, phase, variables, build_file) +@@ -1263,7 +1264,7 @@ + + # Recurse into child dicts, or process child lists which may result in + # further recursion into descendant dicts. +- for key, value in the_dict.iteritems(): ++ for key, value in the_dict.items(): + # Skip "variables" and string values, which were already processed if + # present. + if key == 'variables' or type(value) is str: +@@ -1360,14 +1361,14 @@ + for dep in dependency_sections + for op in ('', '!', '/')] + +- for target, target_dict in targets.iteritems(): ++ for target, target_dict in targets.items(): + target_build_file = gyp.common.BuildFile(target) + toolset = target_dict['toolset'] + for dependency_key in all_dependency_sections: + dependencies = target_dict.get(dependency_key, []) +- for index in xrange(0, len(dependencies)): ++ for index, dep in enumerate(dependencies): + dep_file, dep_target, dep_toolset = gyp.common.ResolveTarget( +- target_build_file, dependencies[index], toolset) ++ target_build_file, dep, toolset) + if not multiple_toolsets: + # Ignore toolset specification in the dependency if it is specified. + dep_toolset = toolset +@@ -1400,7 +1401,7 @@ + dependency list, must be qualified when this function is called. + """ + +- for target, target_dict in targets.iteritems(): ++ for target, target_dict in targets.items(): + toolset = target_dict['toolset'] + target_build_file = gyp.common.BuildFile(target) + for dependency_key in dependency_sections: +@@ -1462,7 +1463,7 @@ + def RemoveDuplicateDependencies(targets): + """Makes sure every dependency appears only once in all targets's dependency + lists.""" +- for target_name, target_dict in targets.iteritems(): ++ for target_name, target_dict in targets.items(): + for dependency_key in dependency_sections: + dependencies = target_dict.get(dependency_key, []) + if dependencies: +@@ -1478,7 +1479,7 @@ + def RemoveSelfDependencies(targets): + """Remove self dependencies from targets that have the prune_self_dependency + variable set.""" +- for target_name, target_dict in targets.iteritems(): ++ for target_name, target_dict in targets.items(): + for dependency_key in dependency_sections: + dependencies = target_dict.get(dependency_key, []) + if dependencies: +@@ -1491,7 +1492,7 @@ + def RemoveLinkDependenciesFromNoneTargets(targets): + """Remove dependencies having the 'link_dependency' attribute from the 'none' + targets.""" +- for target_name, target_dict in targets.iteritems(): ++ for target_name, target_dict in targets.items(): + for dependency_key in dependency_sections: + dependencies = target_dict.get(dependency_key, []) + if dependencies: +@@ -1783,14 +1784,14 @@ + # Create a DependencyGraphNode for each target. Put it into a dict for easy + # access. + dependency_nodes = {} +- for target, spec in targets.iteritems(): ++ for target, spec in targets.items(): + if target not in dependency_nodes: + dependency_nodes[target] = DependencyGraphNode(target) + + # Set up the dependency links. Targets that have no dependencies are treated + # as dependent on root_node. + root_node = DependencyGraphNode(None) +- for target, spec in targets.iteritems(): ++ for target, spec in targets.items(): + target_node = dependency_nodes[target] + target_build_file = gyp.common.BuildFile(target) + dependencies = spec.get('dependencies') +@@ -1814,7 +1815,7 @@ + if not root_node.dependents: + # If all targets have dependencies, add the first target as a dependent + # of root_node so that the cycle can be discovered from root_node. +- target = targets.keys()[0] ++ target = next(iter(targets)) + target_node = dependency_nodes[target] + target_node.dependencies.append(root_node) + root_node.dependents.append(target_node) +@@ -1833,20 +1834,20 @@ + # Create a DependencyGraphNode for each gyp file containing a target. Put + # it into a dict for easy access. + dependency_nodes = {} +- for target in targets.iterkeys(): ++ for target in targets.keys(): + build_file = gyp.common.BuildFile(target) + if not build_file in dependency_nodes: + dependency_nodes[build_file] = DependencyGraphNode(build_file) + + # Set up the dependency links. +- for target, spec in targets.iteritems(): ++ for target, spec in targets.items(): + build_file = gyp.common.BuildFile(target) + build_file_node = dependency_nodes[build_file] + target_dependencies = spec.get('dependencies', []) + for dependency in target_dependencies: + try: + dependency_build_file = gyp.common.BuildFile(dependency) +- except GypError, e: ++ except GypError as e: + gyp.common.ExceptionAppend( + e, 'while computing dependencies of .gyp file %s' % build_file) + raise +@@ -1864,7 +1865,7 @@ + + # Files that have no dependencies are treated as dependent on root_node. + root_node = DependencyGraphNode(None) +- for build_file_node in dependency_nodes.itervalues(): ++ for build_file_node in dependency_nodes.values(): + if len(build_file_node.dependencies) == 0: + build_file_node.dependencies.append(root_node) + root_node.dependents.append(build_file_node) +@@ -1877,7 +1878,7 @@ + if not root_node.dependents: + # If all files have dependencies, add the first file as a dependent + # of root_node so that the cycle can be discovered from root_node. +- file_node = dependency_nodes.values()[0] ++ file_node = next(iter(dependency_nodes.values())) + file_node.dependencies.append(root_node) + root_node.dependents.append(file_node) + cycles = [] +@@ -2104,7 +2105,7 @@ + + def MergeDicts(to, fro, to_file, fro_file): + # I wanted to name the parameter "from" but it's a Python keyword... +- for k, v in fro.iteritems(): ++ for k, v in fro.items(): + # It would be nice to do "if not k in to: to[k] = v" but that wouldn't give + # copy semantics. Something else may want to merge from the |fro| dict + # later, and having the same dict ref pointed to twice in the tree isn't +@@ -2239,13 +2240,13 @@ + if not 'configurations' in target_dict: + target_dict['configurations'] = {'Default': {}} + if not 'default_configuration' in target_dict: +- concrete = [i for (i, config) in target_dict['configurations'].iteritems() ++ concrete = [i for (i, config) in target_dict['configurations'].items() + if not config.get('abstract')] + target_dict['default_configuration'] = sorted(concrete)[0] + + merged_configurations = {} + configs = target_dict['configurations'] +- for (configuration, old_configuration_dict) in configs.iteritems(): ++ for (configuration, old_configuration_dict) in configs.items(): + # Skip abstract configurations (saves work only). + if old_configuration_dict.get('abstract'): + continue +@@ -2253,7 +2254,7 @@ + # Get the inheritance relationship right by making a copy of the target + # dict. + new_configuration_dict = {} +- for (key, target_val) in target_dict.iteritems(): ++ for (key, target_val) in target_dict.items(): + key_ext = key[-1:] + if key_ext in key_suffixes: + key_base = key[:-1] +@@ -2274,10 +2275,9 @@ + merged_configurations[configuration]) + + # Now drop all the abstract ones. +- for configuration in target_dict['configurations'].keys(): +- old_configuration_dict = target_dict['configurations'][configuration] +- if old_configuration_dict.get('abstract'): +- del target_dict['configurations'][configuration] ++ configs = target_dict['configurations'] ++ target_dict['configurations'] = \ ++ {k: v for k, v in configs.items() if not v.get('abstract')} + + # Now that all of the target's configurations have been built, go through + # the target dict's keys and remove everything that's been moved into a +@@ -2337,7 +2337,7 @@ + + lists = [] + del_lists = [] +- for key, value in the_dict.iteritems(): ++ for key, value in the_dict.items(): + operation = key[-1] + if operation != '!' and operation != '/': + continue +@@ -2385,8 +2385,8 @@ + exclude_key = list_key + '!' + if exclude_key in the_dict: + for exclude_item in the_dict[exclude_key]: +- for index in xrange(0, len(the_list)): +- if exclude_item == the_list[index]: ++ for index, list_item in enumerate(the_list): ++ if exclude_item == list_item: + # This item matches the exclude_item, so set its action to 0 + # (exclude). + list_actions[index] = 0 +@@ -2411,8 +2411,7 @@ + raise ValueError('Unrecognized action ' + action + ' in ' + name + \ + ' key ' + regex_key) + +- for index in xrange(0, len(the_list)): +- list_item = the_list[index] ++ for index, list_item in enumerate(the_list): + if list_actions[index] == action_value: + # Even if the regex matches, nothing will change so continue (regex + # searches are expensive). +@@ -2442,7 +2441,7 @@ + # the indices of items that haven't been seen yet don't shift. That means + # that things need to be prepended to excluded_list to maintain them in the + # same order that they existed in the_list. +- for index in xrange(len(list_actions) - 1, -1, -1): ++ for index in range(len(list_actions) - 1, -1, -1): + if list_actions[index] == 0: + # Dump anything with action 0 (exclude). Keep anything with action 1 + # (include) or -1 (no include or exclude seen for the item). +@@ -2455,7 +2454,7 @@ + the_dict[excluded_key] = excluded_list + + # Now recurse into subdicts and lists that may contain dicts. +- for key, value in the_dict.iteritems(): ++ for key, value in the_dict.items(): + if type(value) is dict: + ProcessListFiltersInDict(key, value) + elif type(value) is list: +@@ -2512,7 +2511,7 @@ + basenames.setdefault(basename, []).append(source) + + error = '' +- for basename, files in basenames.iteritems(): ++ for basename, files in basenames.items(): + if len(files) > 1: + error += ' %s: %s\n' % (basename, ' '.join(files)) + +@@ -2651,8 +2650,7 @@ + def TurnIntIntoStrInList(the_list): + """Given list the_list, recursively converts all integers into strings. + """ +- for index in xrange(0, len(the_list)): +- item = the_list[index] ++ for index, item in enumerate(the_list): + if type(item) is int: + the_list[index] = str(item) + elif type(item) is dict: +@@ -2769,7 +2767,7 @@ + try: + LoadTargetBuildFile(build_file, data, aux_data, + variables, includes, depth, check, True) +- except Exception, e: ++ except Exception as e: + gyp.common.ExceptionAppend(e, 'while trying to load %s' % build_file) + raise + +@@ -2791,7 +2789,7 @@ + RemoveLinkDependenciesFromNoneTargets(targets) + + # Apply exclude (!) and regex (/) list filters only for dependency_sections. +- for target_name, target_dict in targets.iteritems(): ++ for target_name, target_dict in targets.items(): + tmp_dict = {} + for key_base in dependency_sections: + for op in ('', '!', '/'): +diff --git a/tools/gyp/pylib/gyp/input_test.py b/pylib/gyp/input_test.py +index 4234fbb..6c4b1cc 100755 +--- a/tools/gyp/pylib/gyp/input_test.py ++++ b/tools/gyp/pylib/gyp/input_test.py +@@ -22,7 +22,7 @@ + dependency.dependents.append(dependent) + + def test_no_cycle_empty_graph(self): +- for label, node in self.nodes.iteritems(): ++ for label, node in self.nodes.items(): + self.assertEquals([], node.FindCycles()) + + def test_no_cycle_line(self): +@@ -30,7 +30,7 @@ + self._create_dependency(self.nodes['b'], self.nodes['c']) + self._create_dependency(self.nodes['c'], self.nodes['d']) + +- for label, node in self.nodes.iteritems(): ++ for label, node in self.nodes.items(): + self.assertEquals([], node.FindCycles()) + + def test_no_cycle_dag(self): +@@ -38,7 +38,7 @@ + self._create_dependency(self.nodes['a'], self.nodes['c']) + self._create_dependency(self.nodes['b'], self.nodes['c']) + +- for label, node in self.nodes.iteritems(): ++ for label, node in self.nodes.items(): + self.assertEquals([], node.FindCycles()) + + def test_cycle_self_reference(self): +diff --git a/tools/gyp/pylib/gyp/mac_tool.py b/pylib/gyp/mac_tool.py +index 0ad7e7a..7d3a8c2 100755 +--- a/tools/gyp/pylib/gyp/mac_tool.py ++++ b/tools/gyp/pylib/gyp/mac_tool.py +@@ -8,6 +8,8 @@ + These functions are executed via gyp-mac-tool when using the Makefile generator. + """ + ++from __future__ import print_function ++ + import fcntl + import fnmatch + import glob +@@ -16,7 +18,6 @@ + import plistlib + import re + import shutil +-import string + import struct + import subprocess + import sys +@@ -155,11 +156,11 @@ + fp.close() + return None + fp.close() +- if header.startswith("\xFE\xFF"): ++ if header.startswith(b"\xFE\xFF"): + return "UTF-16" +- elif header.startswith("\xFF\xFE"): ++ elif header.startswith(b"\xFF\xFE"): + return "UTF-16" +- elif header.startswith("\xEF\xBB\xBF"): ++ elif header.startswith(b"\xEF\xBB\xBF"): + return "UTF-8" + else: + return None +@@ -174,7 +175,7 @@ + # Insert synthesized key/value pairs (e.g. BuildMachineOSBuild). + plist = plistlib.readPlistFromString(lines) + if keys: +- plist = dict(plist.items() + json.loads(keys[0]).items()) ++ plist.update(json.loads(keys[0])) + lines = plistlib.writePlistToString(plist) + + # Go through all the environment variables and replace them as variables in +@@ -185,7 +186,7 @@ + continue + evar = '${%s}' % key + evalue = os.environ[key] +- lines = string.replace(lines, evar, evalue) ++ lines = lines.replace(evar, evalue) + + # Xcode supports various suffices on environment variables, which are + # all undocumented. :rfc1034identifier is used in the standard project +@@ -195,11 +196,11 @@ + # in a URL either -- oops, hence :rfc1034identifier was born. + evar = '${%s:identifier}' % key + evalue = IDENT_RE.sub('_', os.environ[key]) +- lines = string.replace(lines, evar, evalue) ++ lines = lines.replace(evar, evalue) + + evar = '${%s:rfc1034identifier}' % key + evalue = IDENT_RE.sub('-', os.environ[key]) +- lines = string.replace(lines, evar, evalue) ++ lines = lines.replace(evar, evalue) + + # Remove any keys with values that haven't been replaced. + lines = lines.split('\n') +@@ -270,7 +271,7 @@ + _, err = libtoolout.communicate() + for line in err.splitlines(): + if not libtool_re.match(line) and not libtool_re5.match(line): +- print >>sys.stderr, line ++ print(line, file=sys.stderr) + # Unconditionally touch the output .a file on the command line if present + # and the command succeeded. A bit hacky. + if not libtoolout.returncode: +@@ -385,7 +386,7 @@ + ]) + if keys: + keys = json.loads(keys) +- for key, value in keys.iteritems(): ++ for key, value in keys.items(): + arg_name = '--' + key + if isinstance(value, bool): + if value: +@@ -480,8 +481,9 @@ + profiles_dir = os.path.join( + os.environ['HOME'], 'Library', 'MobileDevice', 'Provisioning Profiles') + if not os.path.isdir(profiles_dir): +- print >>sys.stderr, ( +- 'cannot find mobile provisioning for %s' % bundle_identifier) ++ print(( ++ 'cannot find mobile provisioning for %s' % bundle_identifier), ++ file=sys.stderr) + sys.exit(1) + provisioning_profiles = None + if profile: +@@ -502,8 +504,9 @@ + valid_provisioning_profiles[app_id_pattern] = ( + profile_path, profile_data, team_identifier) + if not valid_provisioning_profiles: +- print >>sys.stderr, ( +- 'cannot find mobile provisioning for %s' % bundle_identifier) ++ print(( ++ 'cannot find mobile provisioning for %s' % bundle_identifier), ++ file=sys.stderr) + sys.exit(1) + # If the user has multiple provisioning profiles installed that can be + # used for ${bundle_identifier}, pick the most specific one (ie. the +@@ -527,7 +530,7 @@ + + def _MergePlist(self, merged_plist, plist): + """Merge |plist| into |merged_plist|.""" +- for key, value in plist.iteritems(): ++ for key, value in plist.items(): + if isinstance(value, dict): + merged_value = merged_plist.get(key, {}) + if isinstance(merged_value, dict): +@@ -637,7 +640,7 @@ + the key was not found. + """ + if isinstance(data, str): +- for key, value in substitutions.iteritems(): ++ for key, value in substitutions.items(): + data = data.replace('$(%s)' % key, value) + return data + if isinstance(data, list): +diff --git a/tools/gyp/pylib/gyp/msvs_emulation.py b/pylib/gyp/msvs_emulation.py +index 6d5b5bd..63d40e6 100644 +--- a/tools/gyp/pylib/gyp/msvs_emulation.py ++++ b/tools/gyp/pylib/gyp/msvs_emulation.py +@@ -7,6 +7,7 @@ + build systems, primarily ninja. + """ + ++import collections + import os + import re + import subprocess +@@ -16,6 +17,12 @@ + import gyp.MSVSUtil + import gyp.MSVSVersion + ++try: ++ # basestring was removed in python3. ++ basestring ++except NameError: ++ basestring = str ++ + + windows_quoter_regex = re.compile(r'(\\*)"') + +@@ -84,8 +91,8 @@ + """Add |prefix| to |element| or each subelement if element is iterable.""" + if element is None: + return element +- # Note, not Iterable because we don't want to handle strings like that. +- if isinstance(element, list) or isinstance(element, tuple): ++ if (isinstance(element, collections.Iterable) and ++ not isinstance(element, basestring)): + return [prefix + e for e in element] + else: + return prefix + element +@@ -97,7 +104,8 @@ + if map is not None and element is not None: + if not callable(map): + map = map.get # Assume it's a dict, otherwise a callable to do the remap. +- if isinstance(element, list) or isinstance(element, tuple): ++ if (isinstance(element, collections.Iterable) and ++ not isinstance(element, basestring)): + element = filter(None, [map(elem) for elem in element]) + else: + element = map(element) +@@ -109,7 +117,8 @@ + then add |element| to it, adding each item in |element| if it's a list or + tuple.""" + if append is not None and element is not None: +- if isinstance(element, list) or isinstance(element, tuple): ++ if (isinstance(element, collections.Iterable) and ++ not isinstance(element, basestring)): + append.extend(element) + else: + append.append(element) +@@ -209,7 +218,7 @@ + configs = spec['configurations'] + for field, default in supported_fields: + setattr(self, field, {}) +- for configname, config in configs.iteritems(): ++ for configname, config in configs.items(): + getattr(self, field)[configname] = config.get(field, default()) + + self.msvs_cygwin_dirs = spec.get('msvs_cygwin_dirs', ['.']) +@@ -482,7 +491,7 @@ + # https://msdn.microsoft.com/en-us/library/dn502518.aspx + cflags.append('/FS') + # ninja handles parallelism by itself, don't have the compiler do it too. +- cflags = filter(lambda x: not x.startswith('/MP'), cflags) ++ cflags = [x for x in cflags if not x.startswith('/MP')] + return cflags + + def _GetPchFlags(self, config, extension): +@@ -649,19 +658,17 @@ + + # If the base address is not specifically controlled, DYNAMICBASE should + # be on by default. +- base_flags = filter(lambda x: 'DYNAMICBASE' in x or x == '/FIXED', +- ldflags) +- if not base_flags: ++ if not any('DYNAMICBASE' in flag or flag == '/FIXED' for flag in ldflags): + ldflags.append('/DYNAMICBASE') + + # If the NXCOMPAT flag has not been specified, default to on. Despite the + # documentation that says this only defaults to on when the subsystem is + # Vista or greater (which applies to the linker), the IDE defaults it on + # unless it's explicitly off. +- if not filter(lambda x: 'NXCOMPAT' in x, ldflags): ++ if not any('NXCOMPAT' in flag for flag in ldflags): + ldflags.append('/NXCOMPAT') + +- have_def_file = filter(lambda x: x.startswith('/DEF:'), ldflags) ++ have_def_file = any(flag.startswith('/DEF:') for flag in ldflags) + manifest_flags, intermediate_manifest, manifest_files = \ + self._GetLdManifestFlags(config, manifest_base_name, gyp_to_build_path, + is_executable and not have_def_file, build_dir) +@@ -953,7 +960,7 @@ + """Expand $(Variable) per expansions dict. See MsvsSettings.GetVSMacroEnv + for the canonical way to retrieve a suitable dict.""" + if '$' in string: +- for old, new in expansions.iteritems(): ++ for old, new in expansions.items(): + assert '$(' not in new, new + string = string.replace(old, new) + return string +@@ -1001,7 +1008,7 @@ + CreateProcess documentation for more details.""" + block = '' + nul = '\0' +- for key, value in envvar_dict.iteritems(): ++ for key, value in envvar_dict.items(): + block += key + '=' + value + nul + block += nul + return block +@@ -1056,7 +1063,7 @@ + env['INCLUDE'] = ';'.join(system_includes) + + env_block = _FormatAsEnvironmentBlock(env) +- f = open_out(os.path.join(toplevel_build_dir, 'environment.' + arch), 'wb') ++ f = open_out(os.path.join(toplevel_build_dir, 'environment.' + arch), 'w') + f.write(env_block) + f.close() + +@@ -1078,7 +1085,7 @@ + if int(generator_flags.get('msvs_error_on_missing_sources', 0)): + no_specials = filter(lambda x: '$' not in x, sources) + relative = [os.path.join(build_dir, gyp_to_ninja(s)) for s in no_specials] +- missing = filter(lambda x: not os.path.exists(x), relative) ++ missing = [x for x in relative if not os.path.exists(x)] + if missing: + # They'll look like out\Release\..\..\stuff\things.cc, so normalize the + # path for a slightly less crazy looking output. +diff --git a/tools/gyp/pylib/gyp/ordered_dict.py b/pylib/gyp/ordered_dict.py +deleted file mode 100644 +index a1e89f9..0000000 +--- a/tools/gyp/pylib/gyp/ordered_dict.py ++++ /dev/null +@@ -1,289 +0,0 @@ +-# Unmodified from http://code.activestate.com/recipes/576693/ +-# other than to add MIT license header (as specified on page, but not in code). +-# Linked from Python documentation here: +-# http://docs.python.org/2/library/collections.html#collections.OrderedDict +-# +-# This should be deleted once Py2.7 is available on all bots, see +-# http://crbug.com/241769. +-# +-# Copyright (c) 2009 Raymond Hettinger. +-# +-# 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. +- +-# Backport of OrderedDict() class that runs on Python 2.4, 2.5, 2.6, 2.7 and pypy. +-# Passes Python2.7's test suite and incorporates all the latest updates. +- +-try: +- from thread import get_ident as _get_ident +-except ImportError: +- from dummy_thread import get_ident as _get_ident +- +-try: +- from _abcoll import KeysView, ValuesView, ItemsView +-except ImportError: +- pass +- +- +-class OrderedDict(dict): +- 'Dictionary that remembers insertion order' +- # An inherited dict maps keys to values. +- # The inherited dict provides __getitem__, __len__, __contains__, and get. +- # The remaining methods are order-aware. +- # Big-O running times for all methods are the same as for regular dictionaries. +- +- # The internal self.__map dictionary maps keys to links in a doubly linked list. +- # The circular doubly linked list starts and ends with a sentinel element. +- # The sentinel element never gets deleted (this simplifies the algorithm). +- # Each link is stored as a list of length three: [PREV, NEXT, KEY]. +- +- def __init__(self, *args, **kwds): +- '''Initialize an ordered dictionary. Signature is the same as for +- regular dictionaries, but keyword arguments are not recommended +- because their insertion order is arbitrary. +- +- ''' +- if len(args) > 1: +- raise TypeError('expected at most 1 arguments, got %d' % len(args)) +- try: +- self.__root +- except AttributeError: +- self.__root = root = [] # sentinel node +- root[:] = [root, root, None] +- self.__map = {} +- self.__update(*args, **kwds) +- +- def __setitem__(self, key, value, dict_setitem=dict.__setitem__): +- 'od.__setitem__(i, y) <==> od[i]=y' +- # Setting a new item creates a new link which goes at the end of the linked +- # list, and the inherited dictionary is updated with the new key/value pair. +- if key not in self: +- root = self.__root +- last = root[0] +- last[1] = root[0] = self.__map[key] = [last, root, key] +- dict_setitem(self, key, value) +- +- def __delitem__(self, key, dict_delitem=dict.__delitem__): +- 'od.__delitem__(y) <==> del od[y]' +- # Deleting an existing item uses self.__map to find the link which is +- # then removed by updating the links in the predecessor and successor nodes. +- dict_delitem(self, key) +- link_prev, link_next, key = self.__map.pop(key) +- link_prev[1] = link_next +- link_next[0] = link_prev +- +- def __iter__(self): +- 'od.__iter__() <==> iter(od)' +- root = self.__root +- curr = root[1] +- while curr is not root: +- yield curr[2] +- curr = curr[1] +- +- def __reversed__(self): +- 'od.__reversed__() <==> reversed(od)' +- root = self.__root +- curr = root[0] +- while curr is not root: +- yield curr[2] +- curr = curr[0] +- +- def clear(self): +- 'od.clear() -> None. Remove all items from od.' +- try: +- for node in self.__map.itervalues(): +- del node[:] +- root = self.__root +- root[:] = [root, root, None] +- self.__map.clear() +- except AttributeError: +- pass +- dict.clear(self) +- +- def popitem(self, last=True): +- '''od.popitem() -> (k, v), return and remove a (key, value) pair. +- Pairs are returned in LIFO order if last is true or FIFO order if false. +- +- ''' +- if not self: +- raise KeyError('dictionary is empty') +- root = self.__root +- if last: +- link = root[0] +- link_prev = link[0] +- link_prev[1] = root +- root[0] = link_prev +- else: +- link = root[1] +- link_next = link[1] +- root[1] = link_next +- link_next[0] = root +- key = link[2] +- del self.__map[key] +- value = dict.pop(self, key) +- return key, value +- +- # -- the following methods do not depend on the internal structure -- +- +- def keys(self): +- 'od.keys() -> list of keys in od' +- return list(self) +- +- def values(self): +- 'od.values() -> list of values in od' +- return [self[key] for key in self] +- +- def items(self): +- 'od.items() -> list of (key, value) pairs in od' +- return [(key, self[key]) for key in self] +- +- def iterkeys(self): +- 'od.iterkeys() -> an iterator over the keys in od' +- return iter(self) +- +- def itervalues(self): +- 'od.itervalues -> an iterator over the values in od' +- for k in self: +- yield self[k] +- +- def iteritems(self): +- 'od.iteritems -> an iterator over the (key, value) items in od' +- for k in self: +- yield (k, self[k]) +- +- # Suppress 'OrderedDict.update: Method has no argument': +- # pylint: disable=E0211 +- def update(*args, **kwds): +- '''od.update(E, **F) -> None. Update od from dict/iterable E and F. +- +- If E is a dict instance, does: for k in E: od[k] = E[k] +- If E has a .keys() method, does: for k in E.keys(): od[k] = E[k] +- Or if E is an iterable of items, does: for k, v in E: od[k] = v +- In either case, this is followed by: for k, v in F.items(): od[k] = v +- +- ''' +- if len(args) > 2: +- raise TypeError('update() takes at most 2 positional ' +- 'arguments (%d given)' % (len(args),)) +- elif not args: +- raise TypeError('update() takes at least 1 argument (0 given)') +- self = args[0] +- # Make progressively weaker assumptions about "other" +- other = () +- if len(args) == 2: +- other = args[1] +- if isinstance(other, dict): +- for key in other: +- self[key] = other[key] +- elif hasattr(other, 'keys'): +- for key in other.keys(): +- self[key] = other[key] +- else: +- for key, value in other: +- self[key] = value +- for key, value in kwds.items(): +- self[key] = value +- +- __update = update # let subclasses override update without breaking __init__ +- +- __marker = object() +- +- def pop(self, key, default=__marker): +- '''od.pop(k[,d]) -> v, remove specified key and return the corresponding value. +- If key is not found, d is returned if given, otherwise KeyError is raised. +- +- ''' +- if key in self: +- result = self[key] +- del self[key] +- return result +- if default is self.__marker: +- raise KeyError(key) +- return default +- +- def setdefault(self, key, default=None): +- 'od.setdefault(k[,d]) -> od.get(k,d), also set od[k]=d if k not in od' +- if key in self: +- return self[key] +- self[key] = default +- return default +- +- def __repr__(self, _repr_running={}): +- 'od.__repr__() <==> repr(od)' +- call_key = id(self), _get_ident() +- if call_key in _repr_running: +- return '...' +- _repr_running[call_key] = 1 +- try: +- if not self: +- return '%s()' % (self.__class__.__name__,) +- return '%s(%r)' % (self.__class__.__name__, self.items()) +- finally: +- del _repr_running[call_key] +- +- def __reduce__(self): +- 'Return state information for pickling' +- items = [[k, self[k]] for k in self] +- inst_dict = vars(self).copy() +- for k in vars(OrderedDict()): +- inst_dict.pop(k, None) +- if inst_dict: +- return (self.__class__, (items,), inst_dict) +- return self.__class__, (items,) +- +- def copy(self): +- 'od.copy() -> a shallow copy of od' +- return self.__class__(self) +- +- @classmethod +- def fromkeys(cls, iterable, value=None): +- '''OD.fromkeys(S[, v]) -> New ordered dictionary with keys from S +- and values equal to v (which defaults to None). +- +- ''' +- d = cls() +- for key in iterable: +- d[key] = value +- return d +- +- def __eq__(self, other): +- '''od.__eq__(y) <==> od==y. Comparison to another OD is order-sensitive +- while comparison to a regular mapping is order-insensitive. +- +- ''' +- if isinstance(other, OrderedDict): +- return len(self)==len(other) and self.items() == other.items() +- return dict.__eq__(self, other) +- +- def __ne__(self, other): +- return not self == other +- +- # -- the following methods are only used in Python 2.7 -- +- +- def viewkeys(self): +- "od.viewkeys() -> a set-like object providing a view on od's keys" +- return KeysView(self) +- +- def viewvalues(self): +- "od.viewvalues() -> an object providing a view on od's values" +- return ValuesView(self) +- +- def viewitems(self): +- "od.viewitems() -> a set-like object providing a view on od's items" +- return ItemsView(self) +- +diff --git a/tools/gyp/pylib/gyp/simple_copy.py b/pylib/gyp/simple_copy.py +index eaf5f8b..58a61c3 100644 +--- a/tools/gyp/pylib/gyp/simple_copy.py ++++ b/tools/gyp/pylib/gyp/simple_copy.py +@@ -49,7 +49,7 @@ + + def _deepcopy_dict(x): + y = {} +- for key, value in x.iteritems(): ++ for key, value in x.items(): + y[deepcopy(key)] = deepcopy(value) + return y + d[dict] = _deepcopy_dict +diff --git a/tools/gyp/pylib/gyp/win_tool.py b/pylib/gyp/win_tool.py +index 1c843a0..8973484 100755 +--- a/tools/gyp/pylib/gyp/win_tool.py ++++ b/tools/gyp/pylib/gyp/win_tool.py +@@ -9,6 +9,8 @@ + These functions are executed via gyp-win-tool when using the ninja generator. + """ + ++from __future__ import print_function ++ + import os + import re + import shutil +@@ -134,7 +136,7 @@ + if (not line.startswith(' Creating library ') and + not line.startswith('Generating code') and + not line.startswith('Finished generating code')): +- print line ++ print(line) + return link.returncode + + def ExecLinkWithManifests(self, arch, embed_manifest, out, ldcmd, resname, +@@ -193,16 +195,18 @@ + our_manifest = '%(out)s.manifest' % variables + # Load and normalize the manifests. mt.exe sometimes removes whitespace, + # and sometimes doesn't unfortunately. +- with open(our_manifest, 'rb') as our_f: +- with open(assert_manifest, 'rb') as assert_f: ++ with open(our_manifest, 'r') as our_f: ++ with open(assert_manifest, 'r') as assert_f: + our_data = our_f.read().translate(None, string.whitespace) + assert_data = assert_f.read().translate(None, string.whitespace) + if our_data != assert_data: + os.unlink(out) + def dump(filename): +- sys.stderr.write('%s\n-----\n' % filename) +- with open(filename, 'rb') as f: +- sys.stderr.write(f.read() + '\n-----\n') ++ print(filename, file=sys.stderr) ++ print('-----', file=sys.stderr) ++ with open(filename, 'r') as f: ++ print(f.read(), file=sys.stderr) ++ print('-----', file=sys.stderr) + dump(intermediate_manifest) + dump(our_manifest) + dump(assert_manifest) +@@ -223,7 +227,7 @@ + out, _ = popen.communicate() + for line in out.splitlines(): + if line and 'manifest authoring warning 81010002' not in line: +- print line ++ print(line) + return popen.returncode + + def ExecManifestToRc(self, arch, *args): +@@ -231,7 +235,7 @@ + |args| is tuple containing path to resource file, path to manifest file + and resource name which can be "1" (for executables) or "2" (for DLLs).""" + manifest_path, resource_path, resource_name = args +- with open(resource_path, 'wb') as output: ++ with open(resource_path, 'w') as output: + output.write('#include <windows.h>\n%s RT_MANIFEST "%s"' % ( + resource_name, + os.path.abspath(manifest_path).replace('\\', '/'))) +@@ -263,7 +267,7 @@ + for x in lines if x.startswith(prefixes)) + for line in lines: + if not line.startswith(prefixes) and line not in processing: +- print line ++ print(line) + return popen.returncode + + def ExecAsmWrapper(self, arch, *args): +@@ -277,7 +281,7 @@ + not line.startswith('Microsoft (R) Macro Assembler') and + not line.startswith(' Assembling: ') and + line): +- print line ++ print(line) + return popen.returncode + + def ExecRcWrapper(self, arch, *args): +@@ -291,7 +295,7 @@ + if (not line.startswith('Microsoft (R) Windows (R) Resource Compiler') and + not line.startswith('Copyright (C) Microsoft Corporation') and + line): +- print line ++ print(line) + return popen.returncode + + def ExecActionWrapper(self, arch, rspfile, *dir): +@@ -300,7 +304,7 @@ + env = self._GetEnv(arch) + # TODO(scottmg): This is a temporary hack to get some specific variables + # through to actions that are set after gyp-time. http://crbug.com/333738. +- for k, v in os.environ.iteritems(): ++ for k, v in os.environ.items(): + if k not in env: + env[k] = v + args = open(rspfile).read() +diff --git a/tools/gyp/pylib/gyp/xcode_emulation.py b/pylib/gyp/xcode_emulation.py +index dba8e76..4c875de 100644 +--- a/tools/gyp/pylib/gyp/xcode_emulation.py ++++ b/tools/gyp/pylib/gyp/xcode_emulation.py +@@ -7,6 +7,8 @@ + other build systems, such as make and ninja. + """ + ++from __future__ import print_function ++ + import copy + import gyp.common + import os +@@ -73,7 +75,7 @@ + if arch not in expanded_archs: + expanded_archs.append(arch) + except KeyError as e: +- print 'Warning: Ignoring unsupported variable "%s".' % variable ++ print('Warning: Ignoring unsupported variable "%s".' % variable) + elif arch not in expanded_archs: + expanded_archs.append(arch) + return expanded_archs +@@ -171,7 +173,7 @@ + # the same for all configs are implicitly per-target settings. + self.xcode_settings = {} + configs = spec['configurations'] +- for configname, config in configs.iteritems(): ++ for configname, config in configs.items(): + self.xcode_settings[configname] = config.get('xcode_settings', {}) + self._ConvertConditionalKeys(configname) + if self.xcode_settings[configname].get('IPHONEOS_DEPLOYMENT_TARGET', +@@ -197,8 +199,8 @@ + new_key = key.split("[")[0] + settings[new_key] = settings[key] + else: +- print 'Warning: Conditional keys not implemented, ignoring:', \ +- ' '.join(conditional_keys) ++ print('Warning: Conditional keys not implemented, ignoring:', \ ++ ' '.join(conditional_keys)) + del settings[key] + + def _Settings(self): +@@ -216,7 +218,7 @@ + + def _WarnUnimplemented(self, test_key): + if test_key in self._Settings(): +- print 'Warning: Ignoring not yet implemented key "%s".' % test_key ++ print('Warning: Ignoring not yet implemented key "%s".' % test_key) + + def IsBinaryOutputFormat(self, configname): + default = "binary" if self.isIOS else "xml" +@@ -963,7 +965,7 @@ + result = dict(self.xcode_settings[configname]) + first_pass = False + else: +- for key, value in self.xcode_settings[configname].iteritems(): ++ for key, value in self.xcode_settings[configname].items(): + if key not in result: + continue + elif result[key] != value: +@@ -1084,8 +1086,8 @@ + unimpl = ['OTHER_CODE_SIGN_FLAGS'] + unimpl = set(unimpl) & set(self.xcode_settings[configname].keys()) + if unimpl: +- print 'Warning: Some codesign keys not implemented, ignoring: %s' % ( +- ', '.join(sorted(unimpl))) ++ print('Warning: Some codesign keys not implemented, ignoring: %s' % ( ++ ', '.join(sorted(unimpl)))) + + if self._IsXCTest(): + # For device xctests, Xcode copies two extra frameworks into $TEST_HOST. +@@ -1737,7 +1739,7 @@ + order = gyp.common.TopologicallySorted(env.keys(), GetEdges) + order.reverse() + return order +- except gyp.common.CycleError, e: ++ except gyp.common.CycleError as e: + raise GypError( + 'Xcode environment variables are cyclically dependent: ' + str(e.nodes)) + +@@ -1774,10 +1776,11 @@ + def _AddIOSDeviceConfigurations(targets): + """Clone all targets and append -iphoneos to the name. Configure these targets + to build for iOS devices and use correct architectures for those builds.""" +- for target_dict in targets.itervalues(): ++ for target_dict in targets.values(): + toolset = target_dict['toolset'] + configs = target_dict['configurations'] +- for config_name, simulator_config_dict in dict(configs).iteritems(): ++ ++ for config_name, simulator_config_dict in dict(configs).items(): + iphoneos_config_dict = copy.deepcopy(simulator_config_dict) + configs[config_name + '-iphoneos'] = iphoneos_config_dict + configs[config_name + '-iphonesimulator'] = simulator_config_dict +diff --git a/tools/gyp/pylib/gyp/xcode_ninja.py b/pylib/gyp/xcode_ninja.py +index bc76fff..1d71b8c 100644 +--- a/tools/gyp/pylib/gyp/xcode_ninja.py ++++ b/tools/gyp/pylib/gyp/xcode_ninja.py +@@ -28,7 +28,7 @@ + workspace_path = os.path.join(options.generator_output, workspace_path) + try: + os.makedirs(workspace_path) +- except OSError, e: ++ except OSError as e: + if e.errno != errno.EEXIST: + raise + output_string = '<?xml version="1.0" encoding="UTF-8"?>\n' + \ +@@ -85,7 +85,7 @@ + "%s/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)" % ninja_toplevel + + if 'configurations' in old_spec: +- for config in old_spec['configurations'].iterkeys(): ++ for config in old_spec['configurations'].keys(): + old_xcode_settings = \ + old_spec['configurations'][config].get('xcode_settings', {}) + if 'IPHONEOS_DEPLOYMENT_TARGET' in old_xcode_settings: +@@ -167,7 +167,7 @@ + params: Dict of global options for gyp. + """ + orig_gyp = params['build_files'][0] +- for gyp_name, gyp_dict in data.iteritems(): ++ for gyp_name, gyp_dict in data.items(): + if gyp_name == orig_gyp: + depth = gyp_dict['_DEPTH'] + +@@ -238,7 +238,7 @@ + not generator_flags.get('xcode_ninja_list_excluded_files', True) + + sources = [] +- for target, target_dict in target_dicts.iteritems(): ++ for target, target_dict in target_dicts.items(): + base = os.path.dirname(target) + files = target_dict.get('sources', []) + \ + target_dict.get('mac_bundle_resources', []) +diff --git a/tools/gyp/pylib/gyp/xcodeproj_file.py b/pylib/gyp/xcodeproj_file.py +index e69235f..bd238f6 100644 +--- a/tools/gyp/pylib/gyp/xcodeproj_file.py ++++ b/tools/gyp/pylib/gyp/xcodeproj_file.py +@@ -154,6 +154,11 @@ + import sha + _new_sha1 = sha.new + ++try: ++ # basestring was removed in python3. ++ basestring ++except NameError: ++ basestring = str + + # See XCObject._EncodeString. This pattern is used to determine when a string + # can be printed unquoted. Strings that match this pattern may be printed +@@ -314,7 +319,7 @@ + """ + + that = self.__class__(id=self.id, parent=self.parent) +- for key, value in self._properties.iteritems(): ++ for key, value in self._properties.items(): + is_strong = self._schema[key][2] + + if isinstance(value, XCObject): +@@ -324,8 +329,7 @@ + that._properties[key] = new_value + else: + that._properties[key] = value +- elif isinstance(value, str) or isinstance(value, unicode) or \ +- isinstance(value, int): ++ elif isinstance(value, basestring) or isinstance(value, int): + that._properties[key] = value + elif isinstance(value, list): + if is_strong: +@@ -449,10 +453,10 @@ + # is 160 bits. Instead of throwing out 64 bits of the digest, xor them + # into the portion that gets used. + assert hash.digest_size % 4 == 0 +- digest_int_count = hash.digest_size / 4 ++ digest_int_count = hash.digest_size // 4 + digest_ints = struct.unpack('>' + 'I' * digest_int_count, hash.digest()) + id_ints = [0, 0, 0] +- for index in xrange(0, digest_int_count): ++ for index in range(0, digest_int_count): + id_ints[index % 3] ^= digest_ints[index] + self.id = '%08X%08X%08X' % tuple(id_ints) + +@@ -475,7 +479,7 @@ + """Returns a list of all of this object's owned (strong) children.""" + + children = [] +- for property, attributes in self._schema.iteritems(): ++ for property, attributes in self._schema.items(): + (is_list, property_type, is_strong) = attributes[0:3] + if is_strong and property in self._properties: + if not is_list: +@@ -603,7 +607,12 @@ + comment = value.Comment() + elif isinstance(value, str): + printable += self._EncodeString(value) +- elif isinstance(value, unicode): ++ # A python3 compatible way of saying isinstance(value, unicode). ++ # basestring is str in python3 so this is equivalent to the above ++ # isinstance. Thus if it failed above it will fail here. ++ # In python2 we test against str and unicode at this point. str has already ++ # failed in the above isinstance so we test against unicode. ++ elif isinstance(value, basestring): + printable += self._EncodeString(value.encode('utf-8')) + elif isinstance(value, int): + printable += str(value) +@@ -622,7 +631,7 @@ + printable += end_tabs + ')' + elif isinstance(value, dict): + printable = '{' + sep +- for item_key, item_value in sorted(value.iteritems()): ++ for item_key, item_value in sorted(value.items()): + printable += element_tabs + \ + self._XCPrintableValue(tabs + 1, item_key, flatten_list) + ' = ' + \ + self._XCPrintableValue(tabs + 1, item_value, flatten_list) + ';' + \ +@@ -691,7 +700,7 @@ + printable_value[0] == '"' and printable_value[-1] == '"': + printable_value = printable_value[1:-1] + printable += printable_key + ' = ' + printable_value + ';' + after_kv +- except TypeError, e: ++ except TypeError as e: + gyp.common.ExceptionAppend(e, + 'while printing key "%s"' % key) + raise +@@ -730,7 +739,7 @@ + self._XCKVPrint(file, 3, 'isa', self.__class__.__name__) + + # The remaining elements of an object dictionary are sorted alphabetically. +- for property, value in sorted(self._properties.iteritems()): ++ for property, value in sorted(self._properties.items()): + self._XCKVPrint(file, 3, property, value) + + # End the object. +@@ -752,7 +761,7 @@ + if properties is None: + return + +- for property, value in properties.iteritems(): ++ for property, value in properties.items(): + # Make sure the property is in the schema. + if not property in self._schema: + raise KeyError(property + ' not in ' + self.__class__.__name__) +@@ -766,7 +775,7 @@ + ' must be list, not ' + value.__class__.__name__) + for item in value: + if not isinstance(item, property_type) and \ +- not (item.__class__ == unicode and property_type == str): ++ not (isinstance(item, basestring) and property_type == str): + # Accept unicode where str is specified. str is treated as + # UTF-8-encoded. + raise TypeError( +@@ -774,7 +783,7 @@ + ' must be ' + property_type.__name__ + ', not ' + \ + item.__class__.__name__) + elif not isinstance(value, property_type) and \ +- not (value.__class__ == unicode and property_type == str): ++ not (isinstance(value, basestring) and property_type == str): + # Accept unicode where str is specified. str is treated as + # UTF-8-encoded. + raise TypeError( +@@ -788,8 +797,7 @@ + self._properties[property] = value.Copy() + else: + self._properties[property] = value +- elif isinstance(value, str) or isinstance(value, unicode) or \ +- isinstance(value, int): ++ elif isinstance(value, basestring) or isinstance(value, int): + self._properties[property] = value + elif isinstance(value, list): + if is_strong: +@@ -865,7 +873,7 @@ + + # TODO(mark): A stronger verification mechanism is needed. Some + # subclasses need to perform validation beyond what the schema can enforce. +- for property, attributes in self._schema.iteritems(): ++ for property, attributes in self._schema.items(): + (is_list, property_type, is_strong, is_required) = attributes[0:4] + if is_required and not property in self._properties: + raise KeyError(self.__class__.__name__ + ' requires ' + property) +@@ -875,7 +883,7 @@ + overwrite properties that have already been set.""" + + defaults = {} +- for property, attributes in self._schema.iteritems(): ++ for property, attributes in self._schema.items(): + (is_list, property_type, is_strong, is_required) = attributes[0:4] + if is_required and len(attributes) >= 5 and \ + not property in self._properties: +@@ -1426,8 +1434,8 @@ + xche = self + while xche != None and isinstance(xche, XCHierarchicalElement): + xche_hashables = xche.Hashables() +- for index in xrange(0, len(xche_hashables)): +- hashables.insert(index, xche_hashables[index]) ++ for index, xche_hashable in enumerate(xche_hashables): ++ hashables.insert(index, xche_hashable) + xche = xche.parent + return hashables + +@@ -2468,8 +2476,7 @@ + # The headers phase should come before the resources, sources, and + # frameworks phases, if any. + insert_at = len(self._properties['buildPhases']) +- for index in xrange(0, len(self._properties['buildPhases'])): +- phase = self._properties['buildPhases'][index] ++ for index, phase in enumerate(self._properties['buildPhases']): + if isinstance(phase, PBXResourcesBuildPhase) or \ + isinstance(phase, PBXSourcesBuildPhase) or \ + isinstance(phase, PBXFrameworksBuildPhase): +@@ -2489,8 +2496,7 @@ + # The resources phase should come before the sources and frameworks + # phases, if any. + insert_at = len(self._properties['buildPhases']) +- for index in xrange(0, len(self._properties['buildPhases'])): +- phase = self._properties['buildPhases'][index] ++ for index, phase in enumerate(self._properties['buildPhases']): + if isinstance(phase, PBXSourcesBuildPhase) or \ + isinstance(phase, PBXFrameworksBuildPhase): + insert_at = index +@@ -2911,7 +2917,7 @@ + # determine the sort order. + return cmp(x_index, y_index) + +- for other_pbxproject, ref_dict in self._other_pbxprojects.iteritems(): ++ for other_pbxproject, ref_dict in self._other_pbxprojects.items(): + # Build up a list of products in the remote project file, ordered the + # same as the targets that produce them. + remote_products = [] +diff --git a/tools/gyp/pylib/gyp/xml_fix.py b/pylib/gyp/xml_fix.py +index 5de8481..4308d99 100644 +--- a/tools/gyp/pylib/gyp/xml_fix.py ++++ b/tools/gyp/pylib/gyp/xml_fix.py +@@ -32,8 +32,7 @@ + writer.write(indent+"<" + self.tagName) + + attrs = self._get_attributes() +- a_names = attrs.keys() +- a_names.sort() ++ a_names = sorted(attrs.keys()) + + for a_name in a_names: + writer.write(" %s=\"" % a_name) +diff --git a/tools/gyp/tools/graphviz.py b/tools/graphviz.py +index 326ae22..538b059 100755 +--- a/tools/gyp/tools/graphviz.py ++++ b/tools/gyp/tools/graphviz.py +@@ -8,6 +8,8 @@ + generate input suitable for graphviz to render a dependency graph of + targets.""" + ++from __future__ import print_function ++ + import collections + import json + import sys +@@ -50,9 +52,9 @@ + build_file, target_name, toolset = ParseTarget(src) + files[build_file].append(src) + +- print 'digraph D {' +- print ' fontsize=8' # Used by subgraphs. +- print ' node [fontsize=8]' ++ print('digraph D {') ++ print(' fontsize=8') # Used by subgraphs. ++ print(' node [fontsize=8]') + + # Output nodes by file. We must first write out each node within + # its file grouping before writing out any edges that may refer +@@ -63,31 +65,31 @@ + # the display by making it a box without an internal node. + target = targets[0] + build_file, target_name, toolset = ParseTarget(target) +- print ' "%s" [shape=box, label="%s\\n%s"]' % (target, filename, +- target_name) ++ print(' "%s" [shape=box, label="%s\\n%s"]' % (target, filename, ++ target_name)) + else: + # Group multiple nodes together in a subgraph. +- print ' subgraph "cluster_%s" {' % filename +- print ' label = "%s"' % filename ++ print(' subgraph "cluster_%s" {' % filename) ++ print(' label = "%s"' % filename) + for target in targets: + build_file, target_name, toolset = ParseTarget(target) +- print ' "%s" [label="%s"]' % (target, target_name) +- print ' }' ++ print(' "%s" [label="%s"]' % (target, target_name)) ++ print(' }') + + # Now that we've placed all the nodes within subgraphs, output all + # the edges between nodes. + for src, dsts in edges.items(): + for dst in dsts: +- print ' "%s" -> "%s"' % (src, dst) ++ print(' "%s" -> "%s"' % (src, dst)) + +- print '}' ++ print('}') + + + def main(): + if len(sys.argv) < 2: +- print >>sys.stderr, __doc__ +- print >>sys.stderr +- print >>sys.stderr, 'usage: %s target1 target2...' % (sys.argv[0]) ++ print(__doc__, file=sys.stderr) ++ print(file=sys.stderr) ++ print('usage: %s target1 target2...' % (sys.argv[0]), file=sys.stderr) + return 1 + + edges = LoadEdges('dump.json', sys.argv[1:]) +diff --git a/tools/gyp/tools/pretty_gyp.py b/tools/pretty_gyp.py +index d5736bb..5060d1d 100755 +--- a/tools/gyp/tools/pretty_gyp.py ++++ b/tools/gyp/tools/pretty_gyp.py +@@ -6,6 +6,8 @@ + + """Pretty-prints the contents of a GYP file.""" + ++from __future__ import print_function ++ + import sys + import re + +@@ -125,15 +127,15 @@ + (brace_diff, after) = count_braces(line) + if brace_diff != 0: + if after: +- print " " * (basic_offset * indent) + line ++ print(" " * (basic_offset * indent) + line) + indent += brace_diff + else: + indent += brace_diff +- print " " * (basic_offset * indent) + line ++ print(" " * (basic_offset * indent) + line) + else: +- print " " * (basic_offset * indent) + line ++ print(" " * (basic_offset * indent) + line) + else: +- print "" ++ print("") + last_line = line + + +diff --git a/tools/gyp/tools/pretty_sln.py b/tools/pretty_sln.py +index ca8cf4a..12a6dad 100755 +--- a/tools/gyp/tools/pretty_sln.py ++++ b/tools/gyp/tools/pretty_sln.py +@@ -12,6 +12,8 @@ + Then it outputs a possible build order. + """ + ++from __future__ import print_function ++ + __author__ = 'nsylvain (Nicolas Sylvain)' + + import os +@@ -26,7 +28,7 @@ + for dep in deps[project]: + if dep not in built: + BuildProject(dep, built, projects, deps) +- print project ++ print(project) + built.append(project) + + def ParseSolution(solution_file): +@@ -100,44 +102,44 @@ + return (projects, dependencies) + + def PrintDependencies(projects, deps): +- print "---------------------------------------" +- print "Dependencies for all projects" +- print "---------------------------------------" +- print "-- --" ++ print("---------------------------------------") ++ print("Dependencies for all projects") ++ print("---------------------------------------") ++ print("-- --") + + for (project, dep_list) in sorted(deps.items()): +- print "Project : %s" % project +- print "Path : %s" % projects[project][0] ++ print("Project : %s" % project) ++ print("Path : %s" % projects[project][0]) + if dep_list: + for dep in dep_list: +- print " - %s" % dep +- print "" ++ print(" - %s" % dep) ++ print("") + +- print "-- --" ++ print("-- --") + + def PrintBuildOrder(projects, deps): +- print "---------------------------------------" +- print "Build order " +- print "---------------------------------------" +- print "-- --" ++ print("---------------------------------------") ++ print("Build order ") ++ print("---------------------------------------") ++ print("-- --") + + built = [] + for (project, _) in sorted(deps.items()): + if project not in built: + BuildProject(project, built, projects, deps) + +- print "-- --" ++ print("-- --") + + def PrintVCProj(projects): + + for project in projects: +- print "-------------------------------------" +- print "-------------------------------------" +- print project +- print project +- print project +- print "-------------------------------------" +- print "-------------------------------------" ++ print("-------------------------------------") ++ print("-------------------------------------") ++ print(project) ++ print(project) ++ print(project) ++ print("-------------------------------------") ++ print("-------------------------------------") + + project_path = os.path.abspath(os.path.join(os.path.dirname(sys.argv[1]), + projects[project][2])) +@@ -153,7 +155,7 @@ + def main(): + # check if we have exactly 1 parameter. + if len(sys.argv) < 2: +- print 'Usage: %s "c:\\path\\to\\project.sln"' % sys.argv[0] ++ print('Usage: %s "c:\\path\\to\\project.sln"' % sys.argv[0]) + return 1 + + (projects, deps) = ParseSolution(sys.argv[1]) +diff --git a/tools/gyp/tools/pretty_vcproj.py b/tools/pretty_vcproj.py +index 6099bd7..f02e59e 100755 +--- a/tools/gyp/tools/pretty_vcproj.py ++++ b/tools/gyp/tools/pretty_vcproj.py +@@ -12,6 +12,8 @@ + It outputs the resulting xml to stdout. + """ + ++from __future__ import print_function ++ + __author__ = 'nsylvain (Nicolas Sylvain)' + + import os +@@ -73,23 +75,23 @@ + + # Print the main tag + if attr_count == 0: +- print '%s<%s>' % (' '*indent, node.nodeName) ++ print('%s<%s>' % (' '*indent, node.nodeName)) + else: +- print '%s<%s' % (' '*indent, node.nodeName) ++ print('%s<%s' % (' '*indent, node.nodeName)) + + all_attributes = [] + for (name, value) in node.attributes.items(): + all_attributes.append((name, value)) +- all_attributes.sort(CmpTuple()) ++ all_attributes.sort(key=(lambda attr: attr[0])) + for (name, value) in all_attributes: +- print '%s %s="%s"' % (' '*indent, name, value) +- print '%s>' % (' '*indent) ++ print('%s %s="%s"' % (' '*indent, name, value)) ++ print('%s>' % (' '*indent)) + if node.nodeValue: +- print '%s %s' % (' '*indent, node.nodeValue) ++ print('%s %s' % (' '*indent, node.nodeValue)) + + for sub_node in node.childNodes: + PrettyPrintNode(sub_node, indent=indent+2) +- print '%s</%s>' % (' '*indent, node.nodeName) ++ print('%s</%s>' % (' '*indent, node.nodeName)) + + + def FlattenFilter(node): +@@ -283,8 +285,8 @@ + + # check if we have exactly 1 parameter. + if len(argv) < 2: +- print ('Usage: %s "c:\\path\\to\\vcproj.vcproj" [key1=value1] ' +- '[key2=value2]' % argv[0]) ++ print('Usage: %s "c:\\path\\to\\vcproj.vcproj" [key1=value1] ' ++ '[key2=value2]' % argv[0]) + return 1 + + # Parse the keys +diff --git a/tools/gyp/gyptest.py b/gyptest.py +index 9930e78..1a9ffca 100755 +--- a/tools/gyp/gyptest.py ++++ b/tools/gyp/gyptest.py +@@ -58,7 +58,7 @@ + os.chdir(args.chdir) + + if args.path: +- extra_path = [os.path.abspath(p) for p in opts.path] ++ extra_path = [os.path.abspath(p) for p in args.path] + extra_path = os.pathsep.join(extra_path) + os.environ['PATH'] = extra_path + os.pathsep + os.environ['PATH'] + +diff --git a/tools/gyp/pylib/gyp/MSVSNew.py b/pylib/gyp/MSVSNew.py +index 593f0e5..0445931 100644 +--- a/tools/gyp/pylib/gyp/MSVSNew.py ++++ b/tools/gyp/pylib/gyp/MSVSNew.py +@@ -21,6 +21,13 @@ + _new_md5 = md5.new + + ++try: ++ # cmp was removed in python3. ++ cmp ++except NameError: ++ def cmp(a, b): ++ return (a > b) - (a < b) ++ + # Initialize random number generator + random.seed() + +diff --git a/tools/gyp/pylib/gyp/common.py b/pylib/gyp/common.py +index 1823de8..b268d22 100644 +--- a/tools/gyp/pylib/gyp/common.py ++++ b/tools/gyp/pylib/gyp/common.py +@@ -584,7 +584,7 @@ + graph = {'a': '$(b) $(c)', 'b': 'hi', 'c': '$(b)'} + def GetEdges(node): + return re.findall(r'\$\(([^))]\)', graph[node]) +- print TopologicallySorted(graph.keys(), GetEdges) ++ print(TopologicallySorted(graph.keys(), GetEdges)) + ==> + ['a', 'c', b'] + """ +diff --git a/tools/gyp/pylib/gyp/generator/make.py b/pylib/gyp/generator/make.py +index 2057e3a..8c2827e 100644 +--- a/tools/gyp/pylib/gyp/generator/make.py ++++ b/tools/gyp/pylib/gyp/generator/make.py +@@ -1636,7 +1636,7 @@ + self.WriteDoCmd([self.output_binary], deps, 'touch', part_of_all, + postbuilds=postbuilds) + else: +- print("WARNING: no output for", self.type, target) ++ print("WARNING: no output for", self.type, self.target) + + # Add an alias for each target (if there are any outputs). + # Installable target aliases are created below. +diff --git a/tools/gyp/pylib/gyp/generator/msvs.py b/pylib/gyp/generator/msvs.py +index e8a2b36..9eac028 100644 +--- a/tools/gyp/pylib/gyp/generator/msvs.py ++++ b/tools/gyp/pylib/gyp/generator/msvs.py +@@ -308,10 +308,8 @@ + if names: + return names[0] + else: +- print >> sys.stdout, ( +- 'Warning: No include files found for ' +- 'detected Windows SDK version %s' % (version) +- ) ++ print('Warning: No include files found for ' ++ 'detected Windows SDK version %s' % (version)) + + + def _BuildCommandLineForRuleRaw(spec, cmd, cygwin_shell, has_input_path, +@@ -2065,7 +2063,7 @@ + if generator_flags.get('msvs_error_on_missing_sources', False): + raise GypError(error_message) + else: +- print("Warning: " + error_message, file=sys.stdout) ++ print("Warning: " + error_message) + + + def _GenerateMSBuildFiltersFile(filters_path, source_files, +diff --git a/tools/gyp/pylib/gyp/mac_tool.py b/pylib/gyp/mac_tool.py +index 7d3a8c2..84f8863 100755 +--- a/tools/gyp/pylib/gyp/mac_tool.py ++++ b/tools/gyp/pylib/gyp/mac_tool.py +@@ -670,7 +670,7 @@ + count = len(filelist) + capacity = NextGreaterPowerOf2(count) + strings_offset = 24 + (12 * capacity) +- max_value_length = len(max(filelist.items(), key=lambda (k,v):len(v))[1]) ++ max_value_length = len(max(filelist.items(), key=lambda t: len(t[1]))[1]) + + out = open(output_name, "wb") + out.write(struct.pack('<LHHLLLL', magic, version, _reserved, strings_offset, +diff --git a/tools/gyp/pylib/gyp/xcodeproj_file.py b/pylib/gyp/xcodeproj_file.py +index bd238f6..bc9814d 100644 +--- a/tools/gyp/pylib/gyp/xcodeproj_file.py ++++ b/tools/gyp/pylib/gyp/xcodeproj_file.py +@@ -160,6 +160,13 @@ + except NameError: + basestring = str + ++try: ++ # cmp was removed in python3. ++ cmp ++except NameError: ++ def cmp(a, b): ++ return (a > b) - (a < b) ++ + # See XCObject._EncodeString. This pattern is used to determine when a string + # can be printed unquoted. Strings that match this pattern may be printed + # unquoted. Strings that do not match must be quoted and may be further +diff --git a/tools/gyp/samples/samples b/samples/samples +index 804b618..ff26de3 100755 +--- a/tools/gyp/samples/samples ++++ b/tools/gyp/samples/samples +@@ -4,6 +4,8 @@ + # Use of this source code is governed by a BSD-style license that can be + # found in the LICENSE file. + ++from __future__ import print_function ++ + import os.path + import shutil + import sys +@@ -57,7 +59,7 @@ + + def Main(argv): + if len(argv) != 3 or argv[1] not in ['push', 'pull']: +- print 'Usage: %s push/pull PATH_TO_CHROME' % argv[0] ++ print('Usage: %s push/pull PATH_TO_CHROME' % argv[0]) + return 1 + + path_to_chrome = argv[2] +@@ -66,10 +68,10 @@ + chrome_file = os.path.join(path_to_chrome, g) + local_file = os.path.join(os.path.dirname(argv[0]), os.path.split(g)[1]) + if argv[1] == 'push': +- print 'Copying %s to %s' % (local_file, chrome_file) ++ print('Copying %s to %s' % (local_file, chrome_file)) + shutil.copyfile(local_file, chrome_file) + elif argv[1] == 'pull': +- print 'Copying %s to %s' % (chrome_file, local_file) ++ print('Copying %s to %s' % (chrome_file, local_file)) + shutil.copyfile(chrome_file, local_file) + else: + assert False +diff --git a/tools/gyp/tools/pretty_vcproj.py b/tools/pretty_vcproj.py +index f02e59e..4454d9b 100755 +--- a/tools/gyp/tools/pretty_vcproj.py ++++ b/tools/gyp/tools/pretty_vcproj.py +@@ -22,6 +22,13 @@ + from xml.dom.minidom import parse + from xml.dom.minidom import Node + ++try: ++ # cmp was removed in python3. ++ cmp ++except NameError: ++ def cmp(a, b): ++ return (a > b) - (a < b) ++ + REPLACEMENTS = dict() + ARGUMENTS = None + +@@ -63,7 +70,7 @@ + def PrettyPrintNode(node, indent=0): + if node.nodeType == Node.TEXT_NODE: + if node.data.strip(): +- print '%s%s' % (' '*indent, node.data.strip()) ++ print('%s%s' % (' '*indent, node.data.strip())) + return + + if node.childNodes: +@@ -322,7 +329,6 @@ + + # Finally, we use the prett xml function to print the vcproj back to the + # user. +- #print dom.toprettyxml(newl="\n") + PrettyPrintNode(dom.documentElement) + return 0 + +--- node-v10.15.3/tools/gyp/pylib/gyp/input.py.old 2019-04-02 06:44:13.086310973 +0000 ++++ node-v10.15.3/tools/gyp/pylib/gyp/input.py 2019-04-02 06:45:35.987250735 +0000 +@@ -900,6 +900,9 @@ + (e, contents, build_file)) + + p_stdout, p_stderr = p.communicate('') ++ if getattr(p_stdout, 'decode'): ++ p_stdout = p_stdout.decode('utf-8') ++ p_stderr = p_stderr.decode('utf-8') + + if p.wait() != 0 or p_stderr: + sys.stderr.write(p_stderr) diff --git a/user/node/libatomic.patch b/user/node/libatomic.patch new file mode 100644 index 000000000..fc2e4ffd2 --- /dev/null +++ b/user/node/libatomic.patch @@ -0,0 +1,14 @@ +--- node-v10.15.3/node.gyp.old 2019-03-05 15:16:32.000000000 +0000 ++++ node-v10.15.3/node.gyp 2019-04-06 13:54:51.204939193 +0000 +@@ -479,6 +479,11 @@ + 'msvs_disabled_warnings!': [4244], + + 'conditions': [ ++ [ 'host_arch=="mips" or host_arch=="mipsel" or host_arch=="ppc"', { ++ 'link_settings': { ++ 'libraries': [ '-latomic' ], ++ }, ++ }], + [ 'node_code_cache_path!=""', { + 'sources': [ '<(node_code_cache_path)' ] + }, { diff --git a/user/node/ppc32.patch b/user/node/ppc32.patch new file mode 100644 index 000000000..80b97993c --- /dev/null +++ b/user/node/ppc32.patch @@ -0,0 +1,18 @@ +--- node-v10.15.3/deps/v8/src/libsampler/sampler.cc.old 2019-03-05 15:16:28.000000000 +0000 ++++ node-v10.15.3/deps/v8/src/libsampler/sampler.cc 2019-04-06 13:44:07.224653262 +0000 +@@ -502,9 +502,15 @@ + reinterpret_cast<void*>(ucontext->uc_mcontext.regs->gpr[PT_R31]); + #else + // Some C libraries, notably Musl, define the regs member as a void pointer ++ #if !V8_TARGET_ARCH_32_BIT + state->pc = reinterpret_cast<void*>(ucontext->uc_mcontext.gp_regs[32]); + state->sp = reinterpret_cast<void*>(ucontext->uc_mcontext.gp_regs[1]); + state->fp = reinterpret_cast<void*>(ucontext->uc_mcontext.gp_regs[31]); ++ #else ++ state->pc = reinterpret_cast<void*>(ucontext->uc_mcontext.gregs[32]); ++ state->sp = reinterpret_cast<void*>(ucontext->uc_mcontext.gregs[1]); ++ state->fp = reinterpret_cast<void*>(ucontext->uc_mcontext.gregs[31]); ++ #endif + #endif + #elif V8_HOST_ARCH_S390 + #if V8_TARGET_ARCH_32_BIT diff --git a/user/node/ppc64.patch b/user/node/ppc64.patch new file mode 100644 index 000000000..f76618562 --- /dev/null +++ b/user/node/ppc64.patch @@ -0,0 +1,40 @@ +--- a/deps/v8/src/ppc/assembler-ppc.h.old 2019-03-05 15:16:29.000000000 +0000 ++++ b/deps/v8/src/ppc/assembler-ppc.h 2019-04-02 07:05:25.977213735 +0000 +@@ -48,7 +48,8 @@ + #include "src/ppc/constants-ppc.h" + + #if V8_HOST_ARCH_PPC && \ +- (V8_OS_AIX || (V8_TARGET_ARCH_PPC64 && V8_TARGET_BIG_ENDIAN)) ++ (V8_OS_AIX || (V8_TARGET_ARCH_PPC64 && \ ++ (V8_TARGET_BIG_ENDIAN && (!defined(_CALL_ELF) || _CALL_ELF == 1)))) + #define ABI_USES_FUNCTION_DESCRIPTORS 1 + #else + #define ABI_USES_FUNCTION_DESCRIPTORS 0 +@@ -60,13 +61,15 @@ + #define ABI_PASSES_HANDLES_IN_REGS 0 + #endif + +-#if !V8_HOST_ARCH_PPC || !V8_TARGET_ARCH_PPC64 || V8_TARGET_LITTLE_ENDIAN ++#if !V8_HOST_ARCH_PPC || !V8_TARGET_ARCH_PPC64 || \ ++ (V8_TARGET_LITTLE_ENDIAN || (defined(_CALL_ELF) && _CALL_ELF == 2)) + #define ABI_RETURNS_OBJECT_PAIRS_IN_REGS 1 + #else + #define ABI_RETURNS_OBJECT_PAIRS_IN_REGS 0 + #endif + +-#if !V8_HOST_ARCH_PPC || (V8_TARGET_ARCH_PPC64 && V8_TARGET_LITTLE_ENDIAN) ++#if !V8_HOST_ARCH_PPC || (V8_TARGET_ARCH_PPC64 && \ ++ (V8_TARGET_LITTLE_ENDIAN || (defined(_CALL_ELF) && _CALL_ELF == 2))) + #define ABI_CALL_VIA_IP 1 + #else + #define ABI_CALL_VIA_IP 0 +@@ -220,7 +220,8 @@ + // The following constants describe the stack frame linkage area as + // defined by the ABI. Note that kNumRequiredStackFrameSlots must + // satisfy alignment requirements (rounding up if required). +-#if V8_TARGET_ARCH_PPC64 && V8_TARGET_LITTLE_ENDIAN ++#if V8_TARGET_ARCH_PPC64 && (V8_TARGET_LITTLE_ENDIAN || \ ++ defined(_CALL_ELF) && _CALL_ELF == 2) + // [0] back chain + // [1] condition register save area + // [2] link register save area diff --git a/user/node/python3.patch b/user/node/python3.patch new file mode 100644 index 000000000..dca32c7e4 --- /dev/null +++ b/user/node/python3.patch @@ -0,0 +1,163 @@ +--- node-v10.15.3/tools/configure.d/nodedownload.py (original) ++++ node-v10.15.3/tools/configure.d/nodedownload.py (refactored) +@@ -1,7 +1,10 @@ + #!/usr/bin/env python + # Moved some utilities here from ../../configure + ++try: +-import urllib ++ import urllib ++except ImportError: ++ import urllib.request, urllib.parse, urllib.error + import hashlib + import sys + import zipfile +@@ -18,10 +18,10 @@ + spin = ".:|'" + return (spin[c % len(spin)]) + +-class ConfigOpener(urllib.FancyURLopener): ++class ConfigOpener(urllib.request.FancyURLopener): + """fancy opener used by retrievefile. Set a UA""" + # append to existing version (UA) +- version = '%s node.js/configure' % urllib.URLopener.version ++ version = '%s node.js/configure' % urllib.request.URLopener.version + + def reporthook(count, size, total): + """internal hook used by retrievefile""" +@@ -36,10 +36,10 @@ + sys.stdout.write(' <%s>\nConnecting...\r' % url) + sys.stdout.flush() + ConfigOpener().retrieve(url, targetfile, reporthook=reporthook) +- print '' # clear the line ++ print('') # clear the line + return targetfile + except: +- print ' ** Error occurred while downloading\n <%s>' % url ++ print(' ** Error occurred while downloading\n <%s>' % url) + raise + + def md5sum(targetfile): +@@ -56,12 +56,12 @@ + """Unpacks packedfile into parent_path. Assumes .zip. Returns parent_path""" + if zipfile.is_zipfile(packedfile): + with contextlib.closing(zipfile.ZipFile(packedfile, 'r')) as icuzip: +- print ' Extracting zipfile: %s' % packedfile ++ print(' Extracting zipfile: %s' % packedfile) + icuzip.extractall(parent_path) + return parent_path + elif tarfile.is_tarfile(packedfile): + with contextlib.closing(tarfile.TarFile.open(packedfile, 'r')) as icuzip: +- print ' Extracting tarfile: %s' % packedfile ++ print(' Extracting tarfile: %s' % packedfile) + icuzip.extractall(parent_path) + return parent_path + else: +@@ -112,16 +112,16 @@ + theRet[anOpt] = True + else: + # future proof: ignore unknown types +- print 'Warning: ignoring unknown --download= type "%s"' % anOpt ++ print('Warning: ignoring unknown --download= type "%s"' % anOpt) + # all done + return theRet + + def candownload(auto_downloads, package): +- if not (package in auto_downloads.keys()): ++ if not (package in list(auto_downloads.keys())): + raise Exception('Internal error: "%s" is not in the --downloads list. Check nodedownload.py' % package) + if auto_downloads[package]: + return True + else: +- print """Warning: Not downloading package "%s". You could pass "--download=all" +- (Windows: "download-all") to try auto-downloading it.""" % package ++ print("""Warning: Not downloading package "%s". You could pass "--download=all" ++ (Windows: "download-all") to try auto-downloading it.""" % package) + return False +--- node-v10.15.3/tools/configure.d/nodedownload.py.old 2019-04-02 00:56:07.533200475 +0000 ++++ node-v10.15.3/tools/configure.d/nodedownload.py 2019-04-02 00:58:09.019947842 +0000 +@@ -6,12 +6,11 @@ + import sys + import zipfile + import tarfile +-import fpformat + import contextlib + + def formatSize(amt): + """Format a size as a string in MB""" +- return fpformat.fix(amt / 1024000., 1) ++ return "%{size}.1f" % (amt / 1024000.) + + def spin(c): + """print out an ASCII 'spinner' based on the value of counter 'c'""" +--- node-v10.15.3/configure.py.old 2019-03-05 15:16:24.000000000 +0000 ++++ node-v10.15.3/configure.py 2019-04-02 01:09:04.948394534 +0000 +@@ -649,8 +649,8 @@ + except OSError: + return (False, False, '', '') + +- proc.stdin.write('__clang__ __GNUC__ __GNUC_MINOR__ __GNUC_PATCHLEVEL__ ' +- '__clang_major__ __clang_minor__ __clang_patchlevel__') ++ proc.stdin.write(b'__clang__ __GNUC__ __GNUC_MINOR__ __GNUC_PATCHLEVEL__ ' ++ b'__clang_major__ __clang_minor__ __clang_patchlevel__') + + values = (proc.communicate()[0].split() + ['0'] * 7)[0:7] + is_clang = values[0] == '1' +@@ -727,7 +727,7 @@ + consider adjusting the CC environment variable if you installed + it in a non-standard prefix.''') + +- gas_ret = proc.communicate()[1] ++ gas_ret = proc.communicate()[1].decode('utf-8') + match = re.match(r"GNU assembler version ([2-9]\.[0-9]+)", gas_ret) + + if match: +@@ -794,7 +794,7 @@ + consider adjusting the CC environment variable if you installed + it in a non-standard prefix.''') + +- p.stdin.write('\n') ++ p.stdin.write(b'\n') + out = p.communicate()[0] + + out = str(out).split('\n') +@@ -1351,7 +1351,7 @@ + o['variables']['icu_small'] = b(True) + locs = set(options.with_icu_locales.split(',')) + locs.add('root') # must have root +- o['variables']['icu_locales'] = string.join(locs,',') ++ o['variables']['icu_locales'] = ','.join(locs) + # We will check a bit later if we can use the canned deps/icu-small + elif with_intl == 'full-icu': + # full ICU +@@ -1655,7 +1655,7 @@ + if options.prefix: + config['PREFIX'] = options.prefix + +-config = '\n'.join(map('='.join, config.iteritems())) + '\n' ++config = '\n'.join(map('='.join, config.items())) + '\n' + + # On Windows there's no reason to search for a different python binary. + bin_override = None if sys.platform == 'win32' else make_bin_override() +--- node-v10.15.3/configure.py.old 2019-04-02 01:12:29.786049396 +0000 ++++ node-v10.15.3/configure.py 2019-04-02 01:21:08.499637208 +0000 +@@ -634,7 +634,7 @@ + proc = subprocess.Popen( + shlex.split(pkg_config) + ['--silence-errors', flag, pkg], + stdout=subprocess.PIPE) +- val = proc.communicate()[0].strip() ++ val = proc.communicate()[0].strip().decode('utf-8') + except OSError as e: + if e.errno != errno.ENOENT: raise e # Unexpected error. + return (None, None, None, None) # No pkg-config/pkgconf installed. +--- node-v10.15.3/configure.py.old 2019-04-02 01:27:36.437454388 +0000 ++++ node-v10.15.3/configure.py 2019-04-02 01:28:06.954136125 +0000 +@@ -795,7 +795,7 @@ + it in a non-standard prefix.''') + + p.stdin.write(b'\n') +- out = p.communicate()[0] ++ out = p.communicate()[0].decode('utf-8') + + out = str(out).split('\n') + diff --git a/user/node/stack-silliness.patch b/user/node/stack-silliness.patch new file mode 100644 index 000000000..e8d775b73 --- /dev/null +++ b/user/node/stack-silliness.patch @@ -0,0 +1,14 @@ +--- node-v10.15.3/src/inspector_agent.cc.old 2019-03-05 15:16:32.000000000 +0000 ++++ node-v10.15.3/src/inspector_agent.cc 2019-04-06 02:03:11.082016553 +0000 +@@ -104,9 +104,9 @@ + // Don't shrink the thread's stack on FreeBSD. Said platform decided to + // follow the pthreads specification to the letter rather than in spirit: + // https://lists.freebsd.org/pipermail/freebsd-current/2014-March/048885.html +-#ifndef __FreeBSD__ ++#ifdef __GLIBC__ + CHECK_EQ(0, pthread_attr_setstacksize(&attr, PTHREAD_STACK_MIN)); +-#endif // __FreeBSD__ ++#endif // __GLIBC__ + CHECK_EQ(0, pthread_attr_setdetachstate(&attr, PTHREAD_CREATE_DETACHED)); + sigset_t sigmask; + // Mask all signals. diff --git a/user/node/v8-python3.patch b/user/node/v8-python3.patch new file mode 100644 index 000000000..64151be4f --- /dev/null +++ b/user/node/v8-python3.patch @@ -0,0 +1,169 @@ +--- node-v10.15.3/deps/v8/tools/node/fetch_deps.py.old 2019-03-05 15:16:31.000000000 +0000 ++++ node-v10.15.3/deps/v8/tools/node/fetch_deps.py 2019-04-02 01:01:00.421250178 +0000 +@@ -9,6 +9,9 @@ + Usage: fetch_deps.py <v8-path> + """ + ++# for py2/py3 compatibility ++from __future__ import print_function ++ + import os + import subprocess + import sys +@@ -51,9 +55,9 @@ + expected_git_dir = os.path.join(v8_path, ".git") + actual_git_dir = git("rev-parse --absolute-git-dir") + if expected_git_dir == actual_git_dir: +- print "V8 is tracked stand-alone by git." ++ print("V8 is tracked stand-alone by git.") + return False +- print "Initializing temporary git repository in v8." ++ print("Initializing temporary git repository in v8.") + git("init") + git("config user.name \"Ada Lovelace\"") + git("config user.email ada@lovela.ce") +@@ -70,7 +74,7 @@ + + temporary_git = EnsureGit(v8_path) + try: +- print "Fetching dependencies." ++ print("Fetching dependencies.") + env = os.environ.copy() + # gclient needs to have depot_tools in the PATH. + env["PATH"] = depot_tools + os.pathsep + env["PATH"] +--- node-v10.15.3/deps/v8/tools/node/node_common.py.old 2019-03-05 15:16:31.000000000 +0000 ++++ node-v10.15.3/deps/v8/tools/node/node_common.py 2019-04-02 01:00:45.522875398 +0000 +@@ -3,11 +3,15 @@ + # Use of this source code is governed by a BSD-style license that can be + # found in the LICENSE file. + ++# for py2/py3 compatibility ++from __future__ import print_function ++ + import os + import pipes + import shutil + import stat + import subprocess ++import sys + + DEPOT_TOOLS_URL = \ + "https://chromium.googlesource.com/chromium/tools/depot_tools.git" +@@ -22,23 +26,27 @@ + except: + pass + if fetch_if_not_exist: +- print "Checking out depot_tools." ++ print("Checking out depot_tools.") + # shell=True needed on Windows to resolve git.bat. + subprocess.check_call("git clone {} {}".format( + pipes.quote(DEPOT_TOOLS_URL), + pipes.quote(depot_tools)), shell=True) ++ # Using check_output to hide warning messages. ++ subprocess.check_output( ++ [sys.executable, gclient_path, "metrics", "--opt-out"], ++ cwd=depot_tools) + return depot_tools + return None + depot_tools = _Get(v8_path) + assert depot_tools is not None +- print "Using depot tools in %s" % depot_tools ++ print("Using depot tools in %s" % depot_tools) + return depot_tools + + def UninitGit(v8_path): +- print "Uninitializing temporary git repository" ++ print("Uninitializing temporary git repository") + target = os.path.join(v8_path, ".git") + if os.path.isdir(target): +- print ">> Cleaning up %s" % target ++ print(">> Cleaning up %s" % target) + def OnRmError(func, path, exec_info): + # This might happen on Windows + os.chmod(path, stat.S_IWRITE) +--- node-v10.15.3/deps/v8/tools/node/update_node.py.old 2019-03-05 15:16:31.000000000 +0000 ++++ node-v10.15.3/deps/v8/tools/node/update_node.py 2019-04-02 01:00:27.184875836 +0000 +@@ -23,6 +23,9 @@ + --with-patch Also include currently staged files in the V8 checkout. + """ + ++# for py2/py3 compatibility ++from __future__ import print_function ++ + import argparse + import os + import shutil +@@ -61,9 +64,9 @@ + # Node.js owns deps/v8/gypfiles in their downstream repository. + FILES_TO_KEEP = [ "gypfiles" ] + + def RunGclient(path): + assert os.path.isdir(path) +- print ">> Running gclient sync" ++ print(">> Running gclient sync") + subprocess.check_call(["gclient", "sync", "--nohooks"], cwd=path) + + def CommitPatch(options): +@@ -74,7 +77,7 @@ + the fake git clone fetch it into node.js. We can leave the commit, as + bot_update will ensure a clean state on each run. + """ +- print ">> Committing patch" ++ print(">> Committing patch") + subprocess.check_call( + ["git", "-c", "user.name=fake", "-c", "user.email=fake@chromium.org", + "commit", "--allow-empty", "-m", "placeholder-commit"], +@@ -84,8 +87,8 @@ + def UpdateTarget(repository, options, files_to_keep): + source = os.path.join(options.v8_path, *repository) + target = os.path.join(options.node_path, TARGET_SUBDIR, *repository) +- print ">> Updating target directory %s" % target +- print ">> from active branch at %s" % source ++ print(">> Updating target directory %s" % target) ++ print(">> from active branch at %s" % source) + if not os.path.exists(target): + os.makedirs(target) + # Remove possible remnants of previous incomplete runs. +@@ -98,10 +101,11 @@ + git_args.append(["add"] + files_to_keep) # add and commit + git_args.append(["commit", "-m", "keep files"]) # files we want to keep + ++ git_args.append(["clean", "-fxd"]) # nuke everything else + git_args.append(["remote", "add", "source", source]) # point to source repo + git_args.append(["fetch", "source", "HEAD"]) # sync to current branch + git_args.append(["checkout", "-f", "FETCH_HEAD"]) # switch to that branch +- git_args.append(["clean", "-fd"]) # delete removed files ++ git_args.append(["clean", "-fxd"]) # delete removed files + + if files_to_keep: + git_args.append(["cherry-pick", "master"]) # restore kept files +@@ -117,17 +120,17 @@ + def UpdateGitIgnore(options): + file_name = os.path.join(options.node_path, TARGET_SUBDIR, ".gitignore") + assert os.path.isfile(file_name) +- print ">> Updating .gitignore with lines" ++ print(">> Updating .gitignore with lines") + with open(file_name) as gitignore: + content = gitignore.readlines() + content = [x.strip() for x in content] + for x in DELETE_FROM_GITIGNORE: + if x in content: +- print "- %s" % x ++ print("- %s" % x) + content.remove(x) + for x in ADD_TO_GITIGNORE: + if x not in content: +- print "+ %s" % x ++ print("+ %s" % x) + content.append(x) + content.sort(key=lambda x: x[1:] if x.startswith("!") else x) + with open(file_name, "w") as gitignore: +@@ -135,7 +138,7 @@ + gitignore.write("%s\n" % x) + + def CreateCommit(options): +- print ">> Creating commit." ++ print(">> Creating commit.") + # Find git hash from source. + githash = subprocess.check_output(["git", "rev-parse", "--short", "HEAD"], + cwd=options.v8_path).strip() diff --git a/user/notmuch/APKBUILD b/user/notmuch/APKBUILD index 4e8153630..c97dce2cc 100644 --- a/user/notmuch/APKBUILD +++ b/user/notmuch/APKBUILD @@ -1,7 +1,7 @@ # Contributor: Luis Ressel <aranea@aixah.de> # Maintainer: Luis Ressel <aranea@aixah.de> pkgname=notmuch -pkgver=0.28.3 +pkgver=0.28.4 pkgrel=0 pkgdesc="Thread-based email index, search and tagging" url="https://notmuchmail.org/" @@ -92,5 +92,5 @@ zshcomp() { mv "$pkgdir/usr/share/zsh" "$subpkgdir/usr/share" } -sha512sums="dd3931b78cc27540e962f1fca5f4ebb1c04b2637a5761cda023f307fd9be4b5ddc2af26010330868c55200fa96b60b2a11b3b22d4c20d2a4a2d3787421ed85cf notmuch-0.28.3.tar.gz +sha512sums="77d7ad81e1f7dc93ae6392346da434f6dc74c21d19be728c2a6ca283c429f36e7081387d223af58eb5f63f5d2a8ad8367f0103f0bb9d052890c07fe419abbee7 notmuch-0.28.4.tar.gz b2991ee5edf927f04d904d99888dbce17a98e9d4d7d809bc2248f45d214025f4a1632b19e4fbca2b08e99721ec8a7eea82384c5c718206884801c7bfa5a8c540 0.28.2-disable-rpath.patch" diff --git a/user/nsd/APKBUILD b/user/nsd/APKBUILD index 388c902a1..f99b4514e 100644 --- a/user/nsd/APKBUILD +++ b/user/nsd/APKBUILD @@ -1,7 +1,7 @@ # Contributor: Luis Ressel <aranea@aixah.de> # Maintainer: Luis Ressel <aranea@aixah.de> pkgname=nsd -pkgver=4.1.26 +pkgver=4.1.27 pkgrel=0 pkgdesc="An authoritative only name server" url="https://www.nlnetlabs.nl/projects/nsd/about/" @@ -50,6 +50,6 @@ openrc() { install -Dm644 "$srcdir/nsd.confd" "$subpkgdir/etc/conf.d/nsd" } -sha512sums="49c07ad79e4e056bd519dad157a44d5cc55cd9a28723fd910159dc761d4ba56ef86cb7bf289dc5d1b363a49b999232bb7ec1afa737ca5c2659c4c9893e93494b nsd-4.1.26.tar.gz +sha512sums="9c75041f5a6213cdba7238c2e51fc73031f6f073e06587659f93992fed49418ee789642b25b5522d48642507050ac15021f385927eed81ce5ea649f974e66402 nsd-4.1.27.tar.gz f0ef1d3427e92650239d9d91402810c045fc9223e3f42ce86986422bf2039a0bcc02dffdfe1153d54de5c76c8f2bdc3e34fe341c65b41f2d333b02c00b5b0eae nsd.confd 139e52dec98792173f06d298574db0d0e6966a06af8a0a3069487beb01fd570c09d22322569b54bacdc43232dbfb99a8c497d4417d2bbfee88bcdd9d1b4d22f7 nsd.initd" diff --git a/user/okteta/APKBUILD b/user/okteta/APKBUILD index 9a96a915b..24b9a6e6f 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.4 +pkgver=0.26.1 pkgrel=0 pkgdesc="Graphical hex/binary editor" url="https://www.kde.org/applications/utilities/okteta/" @@ -13,11 +13,10 @@ makedepends="cmake extra-cmake-modules qt5-qtbase-dev qt5-qtscript-dev kio-dev kcrash-dev kdbusaddons-dev kdoctools-dev kiconthemes-dev kcmutils-dev knewstuff-dev kparts-dev kservice-dev kwidgetsaddons-dev kxmlgui-dev qca-dev shared-mime-info qt5-qttools-dev" -subpackages="$pkgname-doc $pkgname-lang" +subpackages="$pkgname-dev $pkgname-doc $pkgname-lang" source="https://download.kde.org/stable/okteta/$pkgver/src/okteta-$pkgver.tar.xz" build() { - cd "$builddir" if [ "$CBUILD" != "$CHOST" ]; then CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux" fi @@ -33,14 +32,12 @@ build() { } check() { - cd "$builddir" local _skip="libkasten-core-testdocumenttest|libkasten-core-documentmanagertest|oktetakasten-document-bytearraydocumenttest|kpart-oktetaparttest" CTEST_OUTPUT_ON_FAILURE=TRUE ctest -E "($_skip)" } package() { - cd "$builddir" make DESTDIR="$pkgdir" install } -sha512sums="d9887a90efbad3bb2caa0d3bb12af27708b77d54a90cd0da82eace7ea6dfc2efbcea3d7dc720bf4a088a823a8ed9edf75ab1c3680aa6d99c640d5c9e4c385e16 okteta-0.25.4.tar.xz" +sha512sums="fa4e841c77ae255e9936b29e30fa0bc1f65594898820652ac8ba78497658ec5ef78cadf8b4d33cab09b2ee8da1d75b84377be28680b2d91c5af2dcdfe5da95e3 okteta-0.26.1.tar.xz" diff --git a/user/okular/APKBUILD b/user/okular/APKBUILD index ed7175568..a4d7cacc3 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.12.3 +pkgver=19.04.1 pkgrel=0 pkgdesc="Universal document reader developed by KDE" url="https://okular.kde.org/" @@ -16,7 +16,9 @@ makedepends="cmake extra-cmake-modules qt5-qtbase-dev qt5-qtsvg-dev kconfig-dev libjpeg-turbo-dev kpty-dev kirigami2-dev djvulibre-dev libkexiv2-dev libspectre-dev ebook-tools-dev" subpackages="$pkgname-doc $pkgname-lang" -source="https://download.kde.org/stable/applications/$pkgver/src/okular-$pkgver.tar.xz" +source="https://download.kde.org/stable/applications/$pkgver/src/okular-$pkgver.tar.xz + es-doc-fix.patch + " build() { cd "$builddir" @@ -45,4 +47,5 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="cbbf20657b6d0c5837d1400fb5be17410672e2489372f62f247b380bd38c0f3ef412d179b683a92d592a906855a648e997c6db5898e29365dcefdf7a8192bf11 okular-18.12.3.tar.xz" +sha512sums="01be68692d106a4cc830361e9653f477e6ed204905950cf4db366b20c2665abc7914d6fca0504fc5ea2064f2f1e28dc8662deef3a73a52b32f3cdfafffed3007 okular-19.04.1.tar.xz +d82dd9de666a28ef605d8a81e74851f265be4ccaeaa39a1cdee9eb1db830fcd0d581d01d6e89a1d36b8ea5c9c8113f1016090dc0e9f17070d388166d9e967458 es-doc-fix.patch" diff --git a/user/okular/es-doc-fix.patch b/user/okular/es-doc-fix.patch new file mode 100644 index 000000000..05967d736 --- /dev/null +++ b/user/okular/es-doc-fix.patch @@ -0,0 +1,11 @@ +--- okular-19.04.1/po/es/docs/okular/index.docbook.old 2019-05-07 00:14:57.000000000 +0000 ++++ okular-19.04.1/po/es/docs/okular/index.docbook 2019-05-12 03:14:04.511177243 +0000 +@@ -1090,7 +1090,7 @@ + <para + >Para eliminar una anotación, pulse sobre ella con el &RMB; y seleccione <guimenuitem + >Borrar</guimenuitem +-> o seleccione una anotación usando el &LMB; y pulse la tecla ∇. </para> ++> o seleccione una anotación usando el &LMB; y pulse la tecla Delete. </para> + <para + >Al borrar una anotación, su ventana se cerrará si estuviera abierta. </para> + <note> diff --git a/user/opengfx/APKBUILD b/user/opengfx/APKBUILD index b0ab22c55..e3f0dbaaf 100644 --- a/user/opengfx/APKBUILD +++ b/user/opengfx/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=opengfx -pkgver=0.5.4 +pkgver=0.5.5 pkgrel=0 pkgdesc="Graphics files for OpenTTD" url="https://www.openttd.org/en/" @@ -11,7 +11,7 @@ license="GPL-2.0-only" depends="" makedepends="grfcodec nml" subpackages="" -source="http://bundles.openttdcoop.org/opengfx/releases/$pkgver/$pkgname-$pkgver-source.tar.xz +source="https://binaries.openttd.org/extra/opengfx/$pkgver/$pkgname-$pkgver-source.tar.xz Makefile.patch " builddir="$srcdir/$pkgname-$pkgver-source" @@ -30,5 +30,5 @@ package() { done } -sha512sums="42f8438c747b42a77cf9d86c5da60ce3ce84ed347d714c345f3871806f9e35f2ed4729b445e0ee319f3e2edd53458dfbaad5ca42e389c3a2e800bce19223cdb1 opengfx-0.5.4-source.tar.xz -f2cd513b6b244fcdd522e488c3becd27164f622f0bc723bd1f704ce1e76419ac628425cf3fc437beb50f851735923e85eae8a3f70e828f58edff4d632784bbf9 Makefile.patch" +sha512sums="952fb52e19bd790e335a9df0f11fa29b2fc570b49903419904956cc65883adde93d432160b16682366ab8b973b7852d2d30f574f1840f6fbd082e1addbe5bfe8 opengfx-0.5.5-source.tar.xz +a337ab4ade493a87d2687a7aa2fb05dcd5718725645950486975a6df309dd1e6631d4b04fa6dcbf590e869b45b037caa32468ea6f677ce458d61950f77c5a006 Makefile.patch" diff --git a/user/opengfx/Makefile.patch b/user/opengfx/Makefile.patch index 169df9668..1e4585311 100644 --- a/user/opengfx/Makefile.patch +++ b/user/opengfx/Makefile.patch @@ -11,15 +11,6 @@ # Graphics processing GIMP ?= gimp -@@ -196,7 +196,7 @@ - endif - - # Days of commit since 2000-1-1 00-00 --REPO_DAYS_SINCE_2000 ?= $(shell $(PYTHON) -c "from datetime import date; print (date(`echo "$(REPO_DATE)" | sed s/-/,/g | sed s/,0/,/g`)-date(2000,1,1)).days") -+REPO_DAYS_SINCE_2000 ?= $(shell $(PYTHON) -c "from datetime import date; print ((date(`echo "$(REPO_DATE)" | sed s/-/,/g | sed s/,0/,/g`)-date(2000,1,1)).days)") - - # Filename addition, if we're not building the default branch - REPO_BRANCH_STRING ?= $(shell if [ "$(REPO_BRANCH)" = "$(DEFAULT_BRANCH_NAME)" ]; then echo ""; else echo "-$(REPO_BRANCH)"; fi) @@ -719,7 +719,7 @@ $(_E) endif diff --git a/user/openjdk7/APKBUILD b/user/openjdk7/APKBUILD index bf05b670f..597031b43 100644 --- a/user/openjdk7/APKBUILD +++ b/user/openjdk7/APKBUILD @@ -1,6 +1,6 @@ # Contributor: Timo Teras <timo.teras@iki.fi> # Contributor: Jakub Jirutka <jakub@jirutka.cz> -# Maintainer: Timo Teras <timo.teras@iki.fi> +# Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=openjdk7 _icedteaver=2.6.16 # pkgver is <JDK version>.<JDK update> diff --git a/user/openjdk8/APKBUILD b/user/openjdk8/APKBUILD new file mode 100644 index 000000000..24dd5e28a --- /dev/null +++ b/user/openjdk8/APKBUILD @@ -0,0 +1,309 @@ +# Maintainer: A. Wilcox <awilfox@adelielinux.org> +pkgname=openjdk8 +_icedteaver=3.11.0 +# pkgver is <JDK version>.<JDK update>.<JDK build> +# Check https://icedtea.classpath.org/wiki/Main_Page when updating +pkgver=8.201.08 +pkgrel=0 +pkgdesc="Libre Java development kit for Java 8" +url="https://icedtea.classpath.org/" +arch="all" +license="GPL-2.0-only" +depends="$pkgname-jre java-cacerts" +options="sover-namecheck" +makedepends="bash findutils libarchive-tools zip file util-linux libxslt + autoconf automake linux-headers sed xz coreutils + openjdk7 ca-certificates libjpeg-turbo-dev cmd:which + nss-dev nss-static cups-dev giflib-dev libpng-dev libxt-dev + lcms2-dev libxp-dev libxtst-dev libxinerama-dev zlib-dev + libxrender-dev alsa-lib-dev freetype-dev fontconfig-dev + gtk+2.0-dev krb5-dev attr-dev pcsc-lite-dev lksctp-tools-dev + libxcomposite-dev" + +case $CARCH in +x86|pmmx) _jarch=i386;; +x86_64) _jarch=amd64;; +arm*) _jarch=aarch32;; +ppc64) _jarch=ppc64 + export CFLAGS="$CFLAGS -DABI_ELFv2";; +*) _jarch="$CARCH";; +esac + +_bootstrap_java_home="/usr/lib/jvm/java-1.7-openjdk" +_java_home="/usr/lib/jvm/java-1.8-openjdk" +_jrelib="$_java_home/jre/lib/$_jarch" + +# Exclude xawt from ldpath to avoid duplicate provides for libmawt.so +# (also in headless). in future this should be a virtual provides. +ldpath="$_jrelib:$_jrelib/native_threads:$_jrelib/headless:$_jrelib/server:$_jrelib/jli" +sonameprefix="$pkgname:" + +subpackages="$pkgname-dbg $pkgname-jre-lib:jrelib:noarch $pkgname-jre $pkgname-jre-base:jrebase + $pkgname-doc $pkgname-demos" + +_dropsver=$_icedteaver +_dropsurl="https://icedtea.classpath.org/download/drops/icedtea8/$_dropsver" + +source="https://icedtea.classpath.org/download/source/icedtea-$_icedteaver.tar.xz + openjdk-$_dropsver.tar.xz::$_dropsurl/openjdk.tar.xz + corba-$_dropsver.tar.xz::$_dropsurl/corba.tar.xz + jaxp-$_dropsver.tar.xz::$_dropsurl/jaxp.tar.xz + jaxws-$_dropsver.tar.xz::$_dropsurl/jaxws.tar.xz + jdk-$_dropsver.tar.xz::$_dropsurl/jdk.tar.xz + langtools-$_dropsver.tar.xz::$_dropsurl/langtools.tar.xz + hotspot-$_dropsver.tar.xz::$_dropsurl/hotspot.tar.xz + nashorn-$_dropsver.tar.xz::$_dropsurl/nashorn.tar.xz + + icedtea-hotspot-musl.patch + icedtea-hotspot-musl-ppc.patch + icedtea-hotspot-noagent-musl.patch + icedtea-jdk-execinfo.patch + icedtea-jdk-fix-ipv6-init.patch + icedtea-jdk-fix-libjvm-load.patch + icedtea-jdk-musl.patch + icedtea-jdk-includes.patch + icedtea-jdk-getmntent-buffer.patch + icedtea-autoconf-config.patch + icedtea-jdk-tls-nist-curves.patch + remove-gawk.patch + " +builddir="$srcdir/icedtea-$_icedteaver" + +# secfixes: +# 8.201.08-r0: +# - CVE-2019-2422 +# - CVE-2019-2426 +# - CVE-2018-11212 +# 8.191.12-r0: +# - CVE-2018-3136 +# - CVE-2018-3139 +# - CVE-2018-3149 +# - CVE-2018-3169 +# - CVE-2018-3180 +# - CVE-2018-3183 +# - CVE-2018-3214 +# - CVE-2018-13785 +# - CVE-2018-16435 +# 8.181.13-r0: +# - CVE-2018-2938 +# - CVE-2018-2940 +# - CVE-2018-2952 +# - CVE-2018-2973 +# - CVE-2018-3639 + +unpack() { + if [ -z "$force" ]; then + verify + initdcheck + fi + mkdir -p "$srcdir" + msg "Unpacking sources..." + tar -C "$srcdir" -Jxf icedtea-$_icedteaver.tar.xz +} + +prepare() { + cd "$builddir" + + local ver_u=$(sed -En 's/^\s*JDK_UPDATE_VERSION\s*=\s*(\S+).*/\1/p' acinclude.m4) + local ver_b=$(sed -En 's/^\s*BUILD_VERSION\s*=\s*b(\S+).*/\1/p' acinclude.m4) + [ "${pkgver#*.}" = "$ver_u.$ver_b" ] \ + || die "Version mismatch, source is 8.$ver_u.$ver_b, but abuild defines $pkgver!" + + # Busybox sha256 does not support longopts. + sed -e "s/--check/-c/g" -i Makefile.am + + local patch; for patch in $source; do + case $patch in + icedtea-*.patch) + cp ../$patch patches + ;; + *.patch) + msg "Applying patch $patch" + patch -p1 -i "$srcdir"/$patch + ;; + esac + done + + ./autogen.sh +} + +build() { + export JAVA_HOME="$_bootstrap_java_home" + export PATH="$JAVA_HOME/bin:$PATH" + + if [ -z "$JOBS" ]; then + export JOBS=$(printf '%s\n' "$MAKEFLAGS" | sed -n -e 's/.*-j\([0-9]\+\).*/\1/p') + fi + + DISTRIBUTION_PATCHES="" + local patch; for patch in $source; do + case $patch in + icedtea-*.patch) + DISTRIBUTION_PATCHES="$DISTRIBUTION_PATCHES patches/$patch" + ;; + esac + done + export DISTRIBUTION_PATCHES + echo "icedtea patches: $DISTRIBUTION_PATCHES" + + cd "$builddir" + bash ./configure \ + --build=$CBUILD \ + --host=$CHOST \ + --prefix="$_java_home" \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --infodir=/usr/share/info \ + --localstatedir=/var \ + --disable-dependency-tracking \ + --disable-downloading \ + --disable-precompiled-headers \ + --with-parallel-jobs=${JOBS:-2} \ + --with-hotspot-build=default \ + --with-openjdk-src-zip="$srcdir/openjdk-$_dropsver.tar.xz" \ + --with-hotspot-src-zip="$srcdir/hotspot-$_dropsver.tar.xz" \ + --with-corba-src-zip="$srcdir/corba-$_dropsver.tar.xz" \ + --with-jaxp-src-zip="$srcdir/jaxp-$_dropsver.tar.xz" \ + --with-jaxws-src-zip="$srcdir/jaxws-$_dropsver.tar.xz" \ + --with-jdk-src-zip="$srcdir/jdk-$_dropsver.tar.xz" \ + --with-langtools-src-zip="$srcdir/langtools-$_dropsver.tar.xz" \ + --with-nashorn-src-zip="$srcdir/nashorn-$_dropsver.tar.xz" \ + --with-pax=paxmark \ + --with-jdk-home="$_bootstrap_java_home" \ + --with-pkgversion="Adelie ${pkgver}-r${pkgrel}" \ + --enable-nss \ + --enable-non-nss-curves + make +} + +# TODO: Run tests or at least try to compile and run hello world. +check() { + cd "$builddir"/openjdk.build/images/j2sdk-image + + ./bin/java -version +} + +package() { + cd "$builddir" + + mkdir -p "$pkgdir"/$_java_home + + cp -a openjdk.build/images/j2sdk-image/* "$pkgdir"/$_java_home/ + rm "$pkgdir"/$_java_home/src.zip + + # This archive contains absolute paths from the build environment, + # so it does not work on the target system. User can generate it + # running `java -Xshare:dump`. + rm -f "$pkgdir"/$_jrelib/server/classes.jsa + + # pax mark again (due to fakeroot xattr handling bug) + ./pax-mark-vm "$pkgdir"/$_java_home true + + # symlink to shared java cacerts store + rm -f "$pkgdir"/$_java_home/jre/lib/security/cacerts + ln -sf /etc/ssl/certs/java/cacerts \ + "$pkgdir"/$_java_home/jre/lib/security/cacerts +} + +jrelib() { + pkgdesc="OpenJDK 8 Java Runtime (class libraries)" + depends="" + + local file dir + for file in jre/lib/images \ + jre/lib/*.jar \ + jre/lib/security \ + jre/lib/ext/*.jar \ + jre/lib/cmm \ + jre/ASSEMBLY_EXCEPTION \ + jre/THIRD_PARTY_README \ + jre/LICENSE; do + + dir=${file%/*} + mkdir -p "$subpkgdir"/$_java_home/$dir + mv "$pkgdir"/$_java_home/$file "$subpkgdir"/$_java_home/$dir + done +} + +jre() { + pkgdesc="OpenJDK 8 Java Runtime" + local file dir + + mkdir -p "$subpkgdir" + for file in jre/bin/policytool \ + bin/appletviewer \ + bin/policytool \ + jre/lib/$_jarch/libawt_xawt.so \ + jre/lib/$_jarch/libfontmanager.so \ + jre/lib/$_jarch/libjawt.so \ + jre/lib/$_jarch/libjsoundalsa.so \ + jre/lib/$_jarch/libsplashscreen.so; do + + dir=${file%/*} + mkdir -p "$subpkgdir"/$_java_home/$dir + mv "$pkgdir"/$_java_home/$file "$subpkgdir"/$_java_home/$dir + done + + # Pax mark again (due to fakeroot xattr handling bug). + "$builddir"/pax-mark-vm "$subpkgdir"/$_java_home true +} + +jrebase() { + pkgdesc="OpenJDK 8 Java Runtime (no GUI support)" + depends="$pkgname-jre-lib java-common java-cacerts" + + mkdir -p "$subpkgdir"/$_java_home/bin \ + "$subpkgdir"/$_java_home/lib/$_jarch + + mv "$pkgdir"/$_java_home/lib/$_jarch/jli \ + "$subpkgdir"/$_java_home/lib/$_jarch/ + + local file; for file in java orbd rmid servertool unpack200 keytool \ + pack200 rmiregistry tnameserv; do + mv "$pkgdir"/$_java_home/bin/$file "$subpkgdir"/$_java_home/bin/ + done + + # Rest of the jre subdir (which were not taken by -jre subpkg). + mv "$pkgdir"/$_java_home/jre "$subpkgdir"/$_java_home/ + + # Pax mark again (due to fakeroot xattr handling bug). + "$builddir"/pax-mark-vm "$subpkgdir"/$_java_home true +} + +doc() { + default_doc + + mkdir -p "$subpkgdir"/$_java_home/ + mv "$pkgdir"/$_java_home/man "$subpkgdir"/$_java_home/ +} + +demos() { + pkgdesc="OpenJDK 8 Java Demos and Samples" + depends="$pkgname" + + mkdir -p "$subpkgdir"/$_java_home/ + mv "$pkgdir"/$_java_home/demo "$pkgdir"/$_java_home/sample \ + "$subpkgdir"/$_java_home/ +} + +sha512sums="a71c9318d49077f8ae27f5c3e0b61df0709eded241f557c886f6b93aa98c13ad78f713d1286da286989bf62866dfff7538ad783eb804a705a160cbc096dea851 icedtea-3.11.0.tar.xz +fc3faa7d7b9531f10c40241d89c36854043921f6f1a0851f284bcab36fc54fb0bb8cf8365dd4b2fb22b3ee8ddb8ed4a79e0807f79cb95b4b00f164993f1acc0b openjdk-3.11.0.tar.xz +9b8a44dda0bbfba8dc0d659e0fabf22e84b9931518e4b199a238faa103cbc4ed814c97f0f38f0aed263846b46fc7eab4500ba9759503373083e12cb8b5b364b5 corba-3.11.0.tar.xz +9eba0f6ada2ae8adc1791a91ceb4fba9bd06aee0626cd1b4310ff16c7c8006045fed5fb7f109e490395b70695be4e6bfd6f1f5cbcdb095fb17abf123012a03de jaxp-3.11.0.tar.xz +ce5f0c2aced1af59f002dc9dc6cba4b9332167e9e019a3040267901ef7f325e05b8c99ed1f276b88ddb4e43cdd1b0c456e0c4dc2222ae6b3800c0502ffa840de jaxws-3.11.0.tar.xz +411508ed91f14ae1c51ea54de72a943db222ff572f3991631fe1a1fa97f9bb42da1e01ca98893f7236b4b44bae2917fc3f8622d7f94a085be30d437451acd272 jdk-3.11.0.tar.xz +363c376848870c6c28415967561c4b151f1256c38a315fabc69c90425f5255224182045349a00c9433db52c416b7ebffedaa4825c980460541a3f9338adbaa5e langtools-3.11.0.tar.xz +13fa35f4a4fe01b3da4efb8476c0cb3482a36596eb422f2ad958a4c51efc286962ac3123a75853e84c4db477ac064a0fd3ee5e03f1ea0ec4f7e2c8ac07aa2d0e hotspot-3.11.0.tar.xz +2b46a8599d530a351522420cae8ac780cd2e64a6d7adbff87397a178f12f0a992bccd0f56435582dbd10be2157d4a4540c41b3dca488566162eed680102e58a9 nashorn-3.11.0.tar.xz +c0776ff52e11a353fee29419319cd9e1fc4e5bb922832547616e8499fd52852a935a6a6fb93b49a67ab7b3fd2f7a63320f917e354cc7123220139e80694a7b5a icedtea-hotspot-musl.patch +e5cf4d70f96fc1e72ae8b97a887adb96092ff36584711cbb8de9d9fa9e859cb8731d638838de0d9591239fc44ffe5c74422d1842bd9f10a0c00dff1627bdeeef icedtea-hotspot-musl-ppc.patch +19459dbb922f5a71cd15b53199481498626a783c24f91d2544d55b7dddd2cdb34a64bbf0226b99548612dd1743af01b3f9ff32c30abbbc90ce727ca2dbbbd1f9 icedtea-hotspot-noagent-musl.patch +f6365cfafafa008bd6c1bf0ccec01a63f8a39bd1a8bc87baa492a27234d47793ba02d455e5667a873ef50148df3baaf6a8421e2da0b15faac675867da714dd5f icedtea-jdk-execinfo.patch +48533f87fc2cf29d26b259be0df51087d2fe5b252e72d00c6ea2f4add7b0fb113141718c116279c5905e03f64a1118082e719393786811367cf4d472b5d36774 icedtea-jdk-fix-ipv6-init.patch +b135991c76b0db8fa7c363e0903624668e11eda7b54a943035c214aa4d7fc8c3e8110ed200edcec82792f3c9393150a9bd628625ddf7f3e55720ff163fbbb471 icedtea-jdk-fix-libjvm-load.patch +1fbc32ddc528c7c0099dbc1e48f88d29dccf55e7b8997793aa1d3d8408003a1223d898cca4248e1a12d343d3feec5144f875e6cdac8460d763c73ab3ad7e49f9 icedtea-jdk-musl.patch +e8d9f1b867bf4fc84aa00d1237b264bcf503b1ed5f34735e14b0b747a728953fe0051a5af69ed058d377fbf65d8be1ed9e38fe5fc6edb2d50b31f34bf3ba91dc icedtea-jdk-includes.patch +7e6fa46b10c630517bfa46943858aea1d032c12d32ba3fcb7a2143ae1e896c34fa4cb8f925af80cb19f8e29149b835aa054adfd30ebb00539f6c78588d6f5211 icedtea-jdk-getmntent-buffer.patch +662d662d0a7a84be2978e921317589f212f3ba3b7629527ba0f1140b5ac4c1024893e0ed176211688ed1a4505968c4befc841ed57ffcdbb9d355c2cb0571b167 icedtea-autoconf-config.patch +9ea7ac942baf29cc619bc2e1acd59201b9f6d38f39a517b495d7613aec746459200c81afb57c5fcdcb856f6bc8b33f7566c8593fed07e5c73f43e08f1072d458 icedtea-jdk-tls-nist-curves.patch +b0f6d07c6a949acdc8b4a25bf924f134f468e162f01dd440fd4ca80769fb84a0a54210f93efbe88012404fe3db6701aad31cdbc772bc054ad69021c37db5538c remove-gawk.patch" diff --git a/user/openjdk8/icedtea-autoconf-config.patch b/user/openjdk8/icedtea-autoconf-config.patch new file mode 100644 index 000000000..9b75def87 --- /dev/null +++ b/user/openjdk8/icedtea-autoconf-config.patch @@ -0,0 +1,114 @@ +OpenJDK contains very outdated autoconf-config.guess and autoconf-config.sub +that don't handle triplet with -musl. It also contains wrapper scripts +config.guess and config.sub that we don't need at all. + +This patch modifies these wrapper scripts to just include up-to-date +config.guess and config.sub from the icedtea tarball. + +--- openjdk.orig/common/autoconf/build-aux/config.guess ++++ openjdk/common/autoconf/build-aux/config.guess +@@ -28,62 +28,4 @@ + # and fix the broken property, if needed. + + DIR=`dirname $0` +-OUT=`. $DIR/autoconf-config.guess` +- +-# Test and fix solaris on x86_64 +-echo $OUT | grep i386-pc-solaris > /dev/null 2> /dev/null +-if test $? = 0; then +- # isainfo -n returns either i386 or amd64 +- REAL_CPU=`isainfo -n` +- OUT=$REAL_CPU`echo $OUT | sed -e 's/[^-]*//'` +-fi +- +-# Test and fix solaris on sparcv9 +-echo $OUT | grep sparc-sun-solaris > /dev/null 2> /dev/null +-if test $? = 0; then +- # isainfo -n returns either sparc or sparcv9 +- REAL_CPU=`isainfo -n` +- OUT=$REAL_CPU`echo $OUT | sed -e 's/[^-]*//'` +-fi +- +-# Test and fix cygwin on x86_64 +-echo $OUT | grep 86-pc-cygwin > /dev/null 2> /dev/null +-if test $? != 0; then +- echo $OUT | grep 86-pc-mingw > /dev/null 2> /dev/null +-fi +-if test $? = 0; then +- case `echo $PROCESSOR_IDENTIFIER | cut -f1 -d' '` in +- intel64|Intel64|INTEL64|em64t|EM64T|amd64|AMD64|8664|x86_64) +- REAL_CPU=x86_64 +- OUT=$REAL_CPU`echo $OUT | sed -e 's/[^-]*//'` +- ;; +- esac +-fi +- +-# Test and fix architecture string on AIX +-# On AIX 'config.guess' returns 'powerpc' as architecture but 'powerpc' is +-# implicitely handled as 32-bit architecture in 'platform.m4' so we check +-# for the kernel mode rewrite it to 'powerpc64' if we'Re running in 64-bit mode. +-# The check could also be done with `/usr/sbin/prtconf | grep "Kernel Type" | grep "64-bit"` +-echo $OUT | grep powerpc-ibm-aix > /dev/null 2> /dev/null +-if test $? = 0; then +- if [ -x /bin/getconf ] ; then +- KERNEL_BITMODE=`getconf KERNEL_BITMODE` +- if [ "$KERNEL_BITMODE" = "32" ]; then +- KERNEL_BITMODE="" +- fi +- fi +- OUT=powerpc$KERNEL_BITMODE`echo $OUT | sed -e 's/[^-]*//'` +-fi +- +-# Test and fix little endian PowerPC64. +-# TODO: should be handled by autoconf-config.guess. +-if [ "x$OUT" = x ]; then +- if [ `uname -m` = ppc64le ]; then +- if [ `uname -s` = Linux ]; then +- OUT=powerpc64le-unknown-linux-gnu +- fi +- fi +-fi +- +-echo $OUT ++. $DIR/../../../../config.guess +--- openjdk.orig/common/autoconf/build-aux/config.sub ++++ openjdk/common/autoconf/build-aux/config.sub +@@ -28,37 +28,4 @@ + # wrap it and fix the broken property, if needed. + + DIR=`dirname $0` +- +-# First, filter out everything that doesn't begin with "aarch64-" +-if ! echo $* | grep '^aarch64-' >/dev/null ; then +- . $DIR/autoconf-config.sub "$@" +- # autoconf-config.sub exits, so we never reach here, but just in +- # case we do: +- exit +-fi +- +-while test $# -gt 0 ; do +- case $1 in +- -- ) # Stop option processing +- shift; break ;; +- aarch64-* ) +- config=`echo $1 | sed 's/^aarch64-/arm-/'` +- sub_args="$sub_args $config" +- shift; ;; +- - ) # Use stdin as input. +- sub_args="$sub_args $1" +- shift; break ;; +- * ) +- sub_args="$sub_args $1" +- shift; ;; +- esac +-done +- +-result=`. $DIR/autoconf-config.sub $sub_args "$@"` +-exitcode=$? +- +-result=`echo $result | sed "s/^arm-/aarch64-/"` +- +-echo $result +-exit $exitcode +- ++. $DIR/../../../../config.sub "$@" diff --git a/user/openjdk8/icedtea-hotspot-musl-ppc.patch b/user/openjdk8/icedtea-hotspot-musl-ppc.patch new file mode 100644 index 000000000..eca684884 --- /dev/null +++ b/user/openjdk8/icedtea-hotspot-musl-ppc.patch @@ -0,0 +1,169 @@ +--- openjdk.orig/hotspot/src/os_cpu/linux_ppc/vm/os_linux_ppc.cpp ++++ openjdk/hotspot/src/os_cpu/linux_ppc/vm/os_linux_ppc.cpp +@@ -110,11 +110,19 @@ + // it because the volatile registers are not needed to make setcontext() work. + // Hopefully it was zero'd out beforehand. + guarantee(uc->uc_mcontext.regs != NULL, "only use ucontext_get_pc in sigaction context"); ++#if defined(__GLIBC__) || defined(__UCLIBC__) + return (address)uc->uc_mcontext.regs->nip; ++#else // Musl ++ return (address)uc->uc_mcontext.gp_regs[32]; ++#endif + } + + intptr_t* os::Linux::ucontext_get_sp(ucontext_t * uc) { ++#if defined(__GLIBC__) || defined(__UCLIBC__) + return (intptr_t*)uc->uc_mcontext.regs->gpr[1/*REG_SP*/]; ++#else // Musl ++ return (intptr_t*)uc->uc_mcontext.gp_regs[1/*REG_SP*/]; ++#endif + } + + intptr_t* os::Linux::ucontext_get_fp(ucontext_t * uc) { +@@ -213,7 +221,11 @@ + if (uc) { + address const pc = os::Linux::ucontext_get_pc(uc); + if (pc && StubRoutines::is_safefetch_fault(pc)) { ++#if defined(__GLIBC__) || defined(__UCLIBC__) + uc->uc_mcontext.regs->nip = (unsigned long)StubRoutines::continuation_for_safefetch_fault(pc); ++#else // Musl ++ uc->uc_mcontext.gp_regs[32] = (unsigned long)StubRoutines::continuation_for_safefetch_fault(pc); ++#endif + return true; + } + } +@@ -364,7 +376,11 @@ + // continue at the next instruction after the faulting read. Returning + // garbage from this read is ok. + thread->set_pending_unsafe_access_error(); ++#if defined(__GLIBC__) || defined(__UCLIBC__) + uc->uc_mcontext.regs->nip = ((unsigned long)pc) + 4; ++#else // Musl ++ uc->uc_mcontext.gp_regs[32] = ((unsigned long)pc) + 4; ++#endif + return true; + } + } +@@ -383,7 +399,11 @@ + // continue at the next instruction after the faulting read. Returning + // garbage from this read is ok. + thread->set_pending_unsafe_access_error(); ++#if defined(__GLIBC__) || defined(__UCLIBC__) + uc->uc_mcontext.regs->nip = ((unsigned long)pc) + 4; ++#else // Musl ++ uc->uc_mcontext.gp_regs[32] = ((unsigned long)pc) + 4; ++#endif + return true; + } + } +@@ -406,7 +426,11 @@ + if (stub != NULL) { + // Save all thread context in case we need to restore it. + if (thread != NULL) thread->set_saved_exception_pc(pc); ++#if defined(__GLIBC__) || defined(__UCLIBC__) + uc->uc_mcontext.regs->nip = (unsigned long)stub; ++#else ++ uc->uc_mcontext.gp_regs[32] = (unsigned long)stub; ++#endif + return true; + } + +@@ -564,6 +588,7 @@ + ucontext_t* uc = (ucontext_t*)context; + + st->print_cr("Registers:"); ++#if defined(__GLIBC__) || defined(__UCLIBC__) + st->print("pc =" INTPTR_FORMAT " ", uc->uc_mcontext.regs->nip); + st->print("lr =" INTPTR_FORMAT " ", uc->uc_mcontext.regs->link); + st->print("ctr=" INTPTR_FORMAT " ", uc->uc_mcontext.regs->ctr); +@@ -572,8 +597,18 @@ + st->print("r%-2d=" INTPTR_FORMAT " ", i, uc->uc_mcontext.regs->gpr[i]); + if (i % 3 == 2) st->cr(); + } ++#else // Musl ++ st->print("pc =" INTPTR_FORMAT " ", uc->uc_mcontext.gp_regs[32]); ++ st->print("lr =" INTPTR_FORMAT " ", uc->uc_mcontext.gp_regs[36]); ++ st->print("ctr=" INTPTR_FORMAT " ", uc->uc_mcontext.gp_regs[35]); + st->cr(); ++ for (int i = 0; i < 32; i++) { ++ st->print("r%-2d=" INTPTR_FORMAT " ", i, uc->uc_mcontext.gp_regs[i]); ++ if (i % 3 == 2) st->cr(); ++ } ++#endif + st->cr(); ++ st->cr(); + + intptr_t *sp = (intptr_t *)os::Linux::ucontext_get_sp(uc); + st->print_cr("Top of Stack: (sp=" PTR_FORMAT ")", p2i(sp)); +@@ -600,7 +635,11 @@ + // this is only for the "general purpose" registers + for (int i = 0; i < 32; i++) { + st->print("r%-2d=", i); ++#if defined(__GLIBC__) || defined(__UCLIBC__) + print_location(st, uc->uc_mcontext.regs->gpr[i]); ++#else // Musl ++ print_location(st, uc->uc_mcontext.gp_regs[i]); ++#endif + } + st->cr(); + } +--- openjdk.orig/hotspot.orig/src/cpu/ppc/vm/macroAssembler_ppc.cpp ++++ openjdk/hotspot/src/cpu/ppc/vm/macroAssembler_ppc.cpp +@@ -1242,7 +1242,11 @@ + // the safepoing polling page. + ucontext_t* uc = (ucontext_t*) ucontext; + // Set polling address. ++#if defined(__GLIBC__) || defined(__UCLIBC__) + address addr = (address)uc->uc_mcontext.regs->gpr[ra] + (ssize_t)ds; ++#else // Musl ++ address addr = (address)uc->uc_mcontext.gp_regs[ra] + (ssize_t)ds; ++#endif + if (polling_address_ptr != NULL) { + *polling_address_ptr = addr; + } +@@ -1263,15 +1267,24 @@ + int rb = inv_rb_field(instruction); + + // look up content of ra and rb in ucontext ++#if defined(__GLIBC__) || defined(__UCLIBC__) + address ra_val=(address)uc->uc_mcontext.regs->gpr[ra]; + long rb_val=(long)uc->uc_mcontext.regs->gpr[rb]; ++#else // Musl ++ address ra_val=(address)uc->uc_mcontext.gp_regs[ra]; ++ long rb_val=(long)uc->uc_mcontext.gp_regs[rb]; ++#endif + return os::is_memory_serialize_page(thread, ra_val+rb_val); + } else if (is_stw(instruction) || is_stwu(instruction)) { + int ra = inv_ra_field(instruction); + int d1 = inv_d1_field(instruction); + + // look up content of ra in ucontext ++#if defined(__GLIBC__) || defined(__UCLIBC__) + address ra_val=(address)uc->uc_mcontext.regs->gpr[ra]; ++#else // Musl ++ address ra_val=(address)uc->uc_mcontext.gp_regs[ra]; ++#endif + return os::is_memory_serialize_page(thread, ra_val+d1); + } else { + return false; +@@ -1334,11 +1347,20 @@ + || (is_stdu(instruction) && rs == 1)) { + int ds = inv_ds_field(instruction); + // return banged address ++#if defined(__GLIBC__) || defined(__UCLIBC__) + return ds+(address)uc->uc_mcontext.regs->gpr[ra]; ++#else // Musl ++ return ds+(address)uc->uc_mcontext.gp_regs[ra]; ++#endif + } else if (is_stdux(instruction) && rs == 1) { + int rb = inv_rb_field(instruction); ++#if defined(__GLIBC__) || defined(__UCLIBC__) + address sp = (address)uc->uc_mcontext.regs->gpr[1]; + long rb_val = (long)uc->uc_mcontext.regs->gpr[rb]; ++#else // Musl ++ address sp = (address)uc->uc_mcontext.gp_regs[1]; ++ long rb_val = (long)uc->uc_mcontext.gp_regs[rb]; ++#endif + return ra != 1 || rb_val >= 0 ? NULL // not a stack bang + : sp + rb_val; // banged address + } diff --git a/user/openjdk8/icedtea-hotspot-musl.patch b/user/openjdk8/icedtea-hotspot-musl.patch new file mode 100644 index 000000000..6cfb3e606 --- /dev/null +++ b/user/openjdk8/icedtea-hotspot-musl.patch @@ -0,0 +1,135 @@ +diff --git icedtea/hotspot/src/os/linux/vm/jvm_linux.cpp icedtea/hotspot/src/os/linux/vm/jvm_linux.cpp +index ba84788..c22281f 100644 +--- openjdk/hotspot/src/os/linux/vm/jvm_linux.cpp ++++ openjdk/hotspot/src/os/linux/vm/jvm_linux.cpp +@@ -154,7 +154,9 @@ struct siglabel siglabels[] = { + #ifdef SIGSTKFLT + "STKFLT", SIGSTKFLT, /* Stack fault. */ + #endif ++#ifdef SIGCLD + "CLD", SIGCLD, /* Same as SIGCHLD (System V). */ ++#endif + "CHLD", SIGCHLD, /* Child status has changed (POSIX). */ + "CONT", SIGCONT, /* Continue (POSIX). */ + "STOP", SIGSTOP, /* Stop, unblockable (POSIX). */ +diff --git icedtea/hotspot/src/os/linux/vm/os_linux.cpp icedtea/hotspot/src/os/linux/vm/os_linux.cpp +index 89ba0ff..e84837a 100644 +--- openjdk/hotspot/src/os/linux/vm/os_linux.cpp ++++ openjdk/hotspot/src/os/linux/vm/os_linux.cpp +@@ -94,7 +94,6 @@ + # include <string.h> + # include <syscall.h> + # include <sys/sysinfo.h> +-# include <gnu/libc-version.h> + # include <sys/ipc.h> + # include <sys/shm.h> + # include <link.h> +@@ -530,6 +529,13 @@ void os::Linux::hotspot_sigmask(Thread* thread) { + // detecting pthread library + + void os::Linux::libpthread_init() { ++#if 1 ++ // Hard code musl compatible settings ++ os::Linux::set_glibc_version("glibc 2.9"); ++ os::Linux::set_libpthread_version("NPTL"); ++ os::Linux::set_is_NPTL(); ++ os::Linux::set_is_floating_stack(); ++#else + // Save glibc and pthread version strings. Note that _CS_GNU_LIBC_VERSION + // and _CS_GNU_LIBPTHREAD_VERSION are supported in glibc >= 2.3.2. Use a + // generic name for earlier versions. +@@ -588,6 +594,7 @@ void os::Linux::libpthread_init() { + if (os::Linux::is_NPTL() || os::Linux::supports_variable_stack_size()) { + os::Linux::set_is_floating_stack(); + } ++#endif + } + + ///////////////////////////////////////////////////////////////////////////// +@@ -2834,6 +2841,11 @@ extern "C" JNIEXPORT void numa_warn(int number, char *where, ...) { } + extern "C" JNIEXPORT void numa_error(char *where) { } + extern "C" JNIEXPORT int fork1() { return fork(); } + ++static void *dlvsym(void *handle, const char *name, const char *ver) ++{ ++ return dlsym(handle, name); ++} ++ + // Handle request to load libnuma symbol version 1.1 (API v1). If it fails + // load symbol from base version instead. + void* os::Linux::libnuma_dlsym(void* handle, const char *name) { +diff --git openjdk/hotspot/src/os/linux/vm/os_linux.inline.hpp openjdk/hotspot/src/os/linux/vm/os_linux.inline.hpp +index 10d56d8..b9b2b77 100644 +--- openjdk/hotspot/src/os/linux/vm/os_linux.inline.hpp ++++ openjdk/hotspot/src/os/linux/vm/os_linux.inline.hpp +@@ -33,7 +33,7 @@ + + #include <unistd.h> + #include <sys/socket.h> +-#include <sys/poll.h> ++#include <poll.h> + #include <netdb.h> + + inline void* os::thread_local_storage_at(int index) { +diff --git openjdk/hotspot/src/os_cpu/linux_aarch64/vm/os_linux_aarch64.cpp openjdk/hotspot/src/os_cpu/linux_aarch64/vm/os_linux_aarch64.cpp +index d2c10e0..20f657f 100644 +--- openjdk/hotspot/src/os_cpu/linux_aarch64/vm/os_linux_aarch64.cpp ++++ openjdk/hotspot/src/os_cpu/linux_aarch64/vm/os_linux_aarch64.cpp +@@ -75,7 +75,7 @@ + # include <pwd.h> + # include <poll.h> + # include <ucontext.h> +-# include <fpu_control.h> ++# include <linux/types.h> /* provides __u64 */ + + #ifdef BUILTIN_SIM + #define REG_SP REG_RSP +diff --git openjdk/hotspot/src/os_cpu/linux_x86/vm/os_linux_x86.cpp openjdk/hotspot/src/os_cpu/linux_x86/vm/os_linux_x86.cpp +index 38388cb..2505ba8 100644 +--- openjdk/hotspot/src/os_cpu/linux_x86/vm/os_linux_x86.cpp ++++ openjdk/hotspot/src/os_cpu/linux_x86/vm/os_linux_x86.cpp +@@ -72,7 +72,6 @@ + # include <pwd.h> + # include <poll.h> + # include <ucontext.h> +-# include <fpu_control.h> + + #ifdef AMD64 + #define REG_SP REG_RSP +@@ -544,6 +543,9 @@ JVM_handle_linux_signal(int sig, + return true; // Mute compiler + } + ++#define _FPU_GETCW(cw) __asm__ __volatile__ ("fnstcw %0" : "=m" (*&cw)) ++#define _FPU_SETCW(cw) __asm__ __volatile__ ("fldcw %0" : : "m" (*&cw)) ++ + void os::Linux::init_thread_fpu_state(void) { + #ifndef AMD64 + // set fpu to 53 bit precision +diff --git openjdk/hotspot/src/os_cpu/linux_x86/vm/threadLS_linux_x86.hpp openjdk/hotspot/src/os_cpu/linux_x86/vm/threadLS_linux_x86.hpp +index f3f2f26..6b50cfa 100644 +--- openjdk/hotspot/src/os_cpu/linux_x86/vm/threadLS_linux_x86.hpp ++++ openjdk/hotspot/src/os_cpu/linux_x86/vm/threadLS_linux_x86.hpp +@@ -32,7 +32,9 @@ + // map stack pointer to thread pointer - see notes in threadLS_linux_x86.cpp + #define SP_BITLENGTH 32 + #define PAGE_SHIFT 12 ++ #ifndef PAGE_SIZE + #define PAGE_SIZE (1UL << PAGE_SHIFT) ++ #endif + static Thread* _sp_map[1UL << (SP_BITLENGTH - PAGE_SHIFT)]; + + public: +diff --git openjdk/hotspot/src/share/vm/utilities/globalDefinitions_gcc.hpp openjdk/hotspot/src/share/vm/utilities/globalDefinitions_gcc.hpp +index efa0b4e..6df2302 100644 +--- openjdk/hotspot/src/share/vm/utilities/globalDefinitions_gcc.hpp ++++ openjdk/hotspot/src/share/vm/utilities/globalDefinitions_gcc.hpp +@@ -235,7 +235,7 @@ inline int g_isnan(double f) { return isnand(f); } + #elif defined(__APPLE__) + inline int g_isnan(double f) { return isnan(f); } + #elif defined(LINUX) || defined(_ALLBSD_SOURCE) +-inline int g_isnan(float f) { return isnanf(f); } ++inline int g_isnan(float f) { return isnan(f); } + inline int g_isnan(double f) { return isnan(f); } + #else + #error "missing platform-specific definition here" diff --git a/user/openjdk8/icedtea-hotspot-noagent-musl.patch b/user/openjdk8/icedtea-hotspot-noagent-musl.patch new file mode 100644 index 000000000..25bdb1c5a --- /dev/null +++ b/user/openjdk8/icedtea-hotspot-noagent-musl.patch @@ -0,0 +1,79 @@ +--- openjdk.orig/common/autoconf/configure ++++ openjdk/common/autoconf/configure +@@ -103,7 +103,7 @@ + } + + # Check for local changes +-check_hg_updates ++run_autogen_or_fail + + if test -e $conf_custom_script_dir/generated-configure.sh; then + # Test if open configure is newer than custom configure, if so, custom needs to +--- openjdk.orig/common/autoconf/jdk-options.m4 ++++ openjdk/common/autoconf/jdk-options.m4 +@@ -159,7 +159,7 @@ + AC_SUBST(JVM_VARIANT_ZEROSHARK) + AC_SUBST(JVM_VARIANT_CORE) + +- INCLUDE_SA=true ++ AC_CHECK_HEADER(thread_db.h,INCLUDE_SA=true,INCLUDE_SA=false) + if test "x$JVM_VARIANT_ZERO" = xtrue ; then + INCLUDE_SA=false + fi +--- openjdk.orig/hotspot/make/linux/makefiles/defs.make ++++ openjdk/hotspot/make/linux/makefiles/defs.make +@@ -305,6 +305,9 @@ + + # Serviceability Binaries + # No SA Support for PPC, IA64, ARM or zero ++# or if thread_db.h missing (musl) ++ ++ifneq ($(wildcard /usr/include/thread_db.h),) + ADD_SA_BINARIES/x86 = $(EXPORT_JRE_LIB_ARCH_DIR)/libsaproc.$(LIBRARY_SUFFIX) \ + $(EXPORT_LIB_DIR)/sa-jdi.jar + ADD_SA_BINARIES/sparc = $(EXPORT_JRE_LIB_ARCH_DIR)/libsaproc.$(LIBRARY_SUFFIX) \ +@@ -322,6 +322,11 @@ + endif + endif + endif ++else ++ADD_SA_BINARIES/x86 = ++ADD_SA_BINARIES/sparc = ++ADD_SA_BINARIES/aarch64 = ++endif + ADD_SA_BINARIES/ppc = + ADD_SA_BINARIES/ia64 = + ADD_SA_BINARIES/arm = +--- openjdk.orig/hotspot/make/linux/makefiles/sa.make ++++ openjdk/hotspot/make/linux/makefiles/sa.make +@@ -59,9 +59,11 @@ + + # if $(AGENT_DIR) does not exist, we don't build SA + # also, we don't build SA on Itanium or zero. ++# check for thread_db.h too (musl does not have it). + + all: +- if [ -d $(AGENT_DIR) -a "$(SRCARCH)" != "ia64" \ ++ if [ -d $(AGENT_DIR) -a -f /usr/include/thread_db.h \ ++ -a "$(SRCARCH)" != "ia64" \ + -a "$(SRCARCH)" != "zero" ] ; then \ + $(MAKE) -f sa.make $(GENERATED)/sa-jdi.jar; \ + fi +--- openjdk.orig/hotspot/make/linux/makefiles/saproc.make ++++ openjdk/hotspot/make/linux/makefiles/saproc.make +@@ -61,12 +61,15 @@ + + # if $(AGENT_DIR) does not exist, we don't build SA + # also, we don't build SA on Itanium or zero. ++# check for thread_db.h too (musl does not have it). + ++ifneq ($(wildcard /usr/include/thread_db.h),) + ifneq ($(wildcard $(AGENT_DIR)),) + ifneq ($(filter-out ia64 zero,$(SRCARCH)),) + BUILDLIBSAPROC = $(LIBSAPROC) + endif + endif ++endif + + ifneq ($(ALT_SASRCDIR),) + ALT_SAINCDIR=-I$(ALT_SASRCDIR) -DALT_SASRCDIR diff --git a/user/openjdk8/icedtea-jdk-execinfo.patch b/user/openjdk8/icedtea-jdk-execinfo.patch new file mode 100644 index 000000000..e4ae562c5 --- /dev/null +++ b/user/openjdk8/icedtea-jdk-execinfo.patch @@ -0,0 +1,20 @@ +--- openjdk.orig/jdk/src/solaris/native/sun/xawt/XToolkit.c ++++ openjdk/jdk/src/solaris/native/sun/xawt/XToolkit.c +@@ -27,7 +27,7 @@ + #include <X11/Xutil.h> + #include <X11/Xos.h> + #include <X11/Xatom.h> +-#ifdef __linux__ ++#if defined(__linux__) && defined(__GLIBC__) && ! defined(__UCLIBC__) + #include <execinfo.h> + #endif + +@@ -689,7 +689,7 @@ + return ret; + } + +-#ifdef __linux__ ++#if defined(__linux__) && defined(__GLIBC__) && ! defined(__UCLIBC__) + void print_stack(void) + { + void *array[10]; diff --git a/user/openjdk8/icedtea-jdk-fix-ipv6-init.patch b/user/openjdk8/icedtea-jdk-fix-ipv6-init.patch new file mode 100644 index 000000000..11f3bf6dd --- /dev/null +++ b/user/openjdk8/icedtea-jdk-fix-ipv6-init.patch @@ -0,0 +1,42 @@ +--- openjdk/jdk/src/solaris/native/java/net/net_util_md.c.orig ++++ openjdk/jdk/src/solaris/native/java/net/net_util_md.c +@@ -561,7 +561,7 @@ + + static struct localinterface *localifs = 0; + static int localifsSize = 0; /* size of array */ +-static int nifs = 0; /* number of entries used in array */ ++static int nifs = -1; /* number of entries used in array */ + + /* not thread safe: make sure called once from one thread */ + +@@ -573,6 +573,10 @@ + int index, x1, x2, x3; + unsigned int u0,u1,u2,u3,u4,u5,u6,u7,u8,u9,ua,ub,uc,ud,ue,uf; + ++ if (nifs >= 0) ++ return ; ++ nifs = 0; ++ + if ((f = fopen("/proc/net/if_inet6", "r")) == NULL) { + return ; + } +@@ -601,7 +605,7 @@ + localifs = (struct localinterface *) realloc ( + localifs, sizeof (struct localinterface)* (localifsSize+5)); + if (localifs == 0) { +- nifs = 0; ++ nifs = -1; + fclose (f); + return; + } +@@ -624,9 +628,7 @@ + static int getLocalScopeID (char *addr) { + struct localinterface *lif; + int i; +- if (localifs == 0) { +- initLocalIfs(); +- } ++ initLocalIfs(); + for (i=0, lif=localifs; i<nifs; i++, lif++) { + if (memcmp (addr, lif->localaddr, 16) == 0) { + return lif->index; diff --git a/user/openjdk8/icedtea-jdk-fix-libjvm-load.patch b/user/openjdk8/icedtea-jdk-fix-libjvm-load.patch new file mode 100644 index 000000000..d0a090ea5 --- /dev/null +++ b/user/openjdk8/icedtea-jdk-fix-libjvm-load.patch @@ -0,0 +1,14 @@ +musl needs LD_LIBRARY_PATH set because when .so is opened with dlopen(/abs/path) +it does not qualify for providing symbols for NEEDED dependency. + +--- openjdk.orig/jdk/src/solaris/bin/java_md_solinux.c ++++ openjdk/jdk/src/solaris/bin/java_md_solinux.c +@@ -291,6 +291,8 @@ + char *dmllp = NULL; + char *p; /* a utility pointer */ + ++ return JNI_TRUE; ++ + #ifdef AIX + /* We always have to set the LIBPATH on AIX because ld doesn't support $ORIGIN. */ + return JNI_TRUE; diff --git a/user/openjdk8/icedtea-jdk-getmntent-buffer.patch b/user/openjdk8/icedtea-jdk-getmntent-buffer.patch new file mode 100644 index 000000000..075a9d423 --- /dev/null +++ b/user/openjdk8/icedtea-jdk-getmntent-buffer.patch @@ -0,0 +1,88 @@ +Give a much bigger buffer to getmntent_r. + +https://bugs.alpinelinux.org/issues/7093 + +diff --git a/openjdk/jdk/src/solaris/native/sun/nio/fs/LinuxNativeDispatcher.c b/openjdk/jdk/src/solaris/native/sun/nio/fs/LinuxNativeDispatcher.c +index c8500db..d0b85d6 100644 +--- openjdk/jdk/src/solaris/native/sun/nio/fs/LinuxNativeDispatcher.c ++++ openjdk/jdk/src/solaris/native/sun/nio/fs/LinuxNativeDispatcher.c +@@ -33,6 +33,7 @@ + #include <dlfcn.h> + #include <errno.h> + #include <mntent.h> ++#include <limits.h> + + #include "sun_nio_fs_LinuxNativeDispatcher.h" + +@@ -173,8 +174,8 @@ Java_sun_nio_fs_LinuxNativeDispatcher_getmntent(JNIEnv* env, jclass this, + jlong value, jobject entry) + { + struct mntent ent; +- char buf[1024]; +- int buflen = sizeof(buf); ++ char *buf = NULL; ++ const size_t buflen = PATH_MAX * 4; + struct mntent* m; + FILE* fp = jlong_to_ptr(value); + jsize len; +@@ -183,10 +184,17 @@ Java_sun_nio_fs_LinuxNativeDispatcher_getmntent(JNIEnv* env, jclass this, + char* dir; + char* fstype; + char* options; ++ jint res = -1; + +- m = getmntent_r(fp, &ent, (char*)&buf, buflen); +- if (m == NULL) ++ buf = malloc(buflen); ++ if (buf == NULL) { ++ JNU_ThrowOutOfMemoryError(env, "native heap"); + return -1; ++ } ++ m = getmntent_r(fp, &ent, buf, buflen); ++ if (m == NULL) ++ goto out; ++ + name = m->mnt_fsname; + dir = m->mnt_dir; + fstype = m->mnt_type; +@@ -195,32 +203,35 @@ Java_sun_nio_fs_LinuxNativeDispatcher_getmntent(JNIEnv* env, jclass this, + len = strlen(name); + bytes = (*env)->NewByteArray(env, len); + if (bytes == NULL) +- return -1; ++ goto out; + (*env)->SetByteArrayRegion(env, bytes, 0, len, (jbyte*)name); + (*env)->SetObjectField(env, entry, entry_name, bytes); + + len = strlen(dir); + bytes = (*env)->NewByteArray(env, len); + if (bytes == NULL) +- return -1; ++ goto out; + (*env)->SetByteArrayRegion(env, bytes, 0, len, (jbyte*)dir); + (*env)->SetObjectField(env, entry, entry_dir, bytes); + + len = strlen(fstype); + bytes = (*env)->NewByteArray(env, len); + if (bytes == NULL) +- return -1; ++ goto out; + (*env)->SetByteArrayRegion(env, bytes, 0, len, (jbyte*)fstype); + (*env)->SetObjectField(env, entry, entry_fstype, bytes); + + len = strlen(options); + bytes = (*env)->NewByteArray(env, len); + if (bytes == NULL) +- return -1; ++ goto out; + (*env)->SetByteArrayRegion(env, bytes, 0, len, (jbyte*)options); + (*env)->SetObjectField(env, entry, entry_options, bytes); + +- return 0; ++ res = 0; ++out: ++ free(buf); ++ return res; + } + + JNIEXPORT void JNICALL diff --git a/user/openjdk8/icedtea-jdk-includes.patch b/user/openjdk8/icedtea-jdk-includes.patch new file mode 100644 index 000000000..6443a1973 --- /dev/null +++ b/user/openjdk8/icedtea-jdk-includes.patch @@ -0,0 +1,154 @@ +--- openjdk.orig/jdk/src/aix/native/java/net/aix_close.c ++++ openjdk/jdk/src/aix/native/java/net/aix_close.c +@@ -62,7 +62,7 @@ + #include <unistd.h> + #include <errno.h> + +-#include <sys/poll.h> ++#include <poll.h> + + /* + * Stack allocated by thread when doing blocking operation +--- openjdk.orig/jdk/src/aix/native/sun/nio/ch/AixNativeThread.c ++++ openjdk/jdk/src/aix/native/sun/nio/ch/AixNativeThread.c +@@ -32,7 +32,7 @@ + #include "sun_nio_ch_NativeThread.h" + + #include <pthread.h> +-#include <sys/signal.h> ++#include <signal.h> + + /* Also defined in src/aix/native/java/net/aix_close.c */ + #define INTERRUPT_SIGNAL (SIGRTMAX - 1) +--- openjdk.orig/jdk/src/aix/native/sun/nio/ch/AixPollPort.c ++++ openjdk/jdk/src/aix/native/sun/nio/ch/AixPollPort.c +@@ -34,7 +34,7 @@ + #include <unistd.h> + #include <sys/types.h> + #include <sys/socket.h> +-#include <sys/poll.h> ++#include <poll.h> + #include <sys/pollset.h> + #include <fcntl.h> + #include <stddef.h> +--- openjdk.orig/jdk/src/macosx/javavm/export/jvm_md.h ++++ openjdk/jdk/src/macosx/javavm/export/jvm_md.h +@@ -60,7 +60,7 @@ + #include <sys/stat.h> + #include <fcntl.h> + #include <errno.h> +-#include <sys/signal.h> ++#include <signal.h> + + /* O Flags */ + +--- openjdk.orig/jdk/src/solaris/javavm/export/jvm_md.h ++++ openjdk/jdk/src/solaris/javavm/export/jvm_md.h +@@ -65,7 +65,7 @@ + #include <sys/stat.h> + #include <fcntl.h> + #include <errno.h> +-#include <sys/signal.h> ++#include <signal.h> + + /* O Flags */ + +--- openjdk.orig/jdk/src/solaris/native/java/net/PlainSocketImpl.c ++++ openjdk/jdk/src/solaris/native/java/net/PlainSocketImpl.c +@@ -28,7 +28,7 @@ + #include <sys/types.h> + #include <sys/socket.h> + #if defined(__linux__) && !defined(USE_SELECT) +-#include <sys/poll.h> ++#include <poll.h> + #endif + #include <netinet/tcp.h> /* Defines TCP_NODELAY, needed for 2.6 */ + #include <netinet/in.h> +--- openjdk.orig/jdk/src/solaris/native/java/net/bsd_close.c ++++ openjdk/jdk/src/solaris/native/java/net/bsd_close.c +@@ -36,7 +36,7 @@ + #include <sys/uio.h> + #include <unistd.h> + #include <errno.h> +-#include <sys/poll.h> ++#include <poll.h> + + /* + * Stack allocated by thread when doing blocking operation +--- openjdk.orig/jdk/src/solaris/native/java/net/linux_close.c ++++ openjdk/jdk/src/solaris/native/java/net/linux_close.c +@@ -34,7 +34,7 @@ + #include <sys/uio.h> + #include <unistd.h> + #include <errno.h> +-#include <sys/poll.h> ++#include <poll.h> + + /* + * Stack allocated by thread when doing blocking operation +--- openjdk.orig/jdk/src/solaris/native/java/net/net_util_md.h ++++ openjdk/jdk/src/solaris/native/java/net/net_util_md.h +@@ -33,7 +33,7 @@ + #include <unistd.h> + + #ifndef USE_SELECT +-#include <sys/poll.h> ++#include <poll.h> + #endif + + int NET_Timeout(int s, long timeout); +--- openjdk.orig/jdk/src/solaris/native/sun/nio/ch/DevPollArrayWrapper.c ++++ openjdk/jdk/src/solaris/native/sun/nio/ch/DevPollArrayWrapper.c +@@ -28,7 +28,7 @@ + #include "jvm.h" + #include "jlong.h" + #include "sun_nio_ch_DevPollArrayWrapper.h" +-#include <sys/poll.h> ++#include <poll.h> + #include <unistd.h> + #include <sys/time.h> + +--- openjdk.orig/jdk/src/solaris/native/sun/nio/ch/NativeThread.c ++++ openjdk/jdk/src/solaris/native/sun/nio/ch/NativeThread.c +@@ -34,7 +34,7 @@ + + #ifdef __linux__ + #include <pthread.h> +- #include <sys/signal.h> ++ #include <signal.h> + /* Also defined in net/linux_close.c */ + #define INTERRUPT_SIGNAL (SIGRTMAX - 2) + #elif __solaris__ +--- openjdk.orig/jdk/src/solaris/native/sun/nio/ch/Net.c ++++ openjdk/jdk/src/solaris/native/sun/nio/ch/Net.c +@@ -23,7 +23,7 @@ + * questions. + */ + +-#include <sys/poll.h> ++#include <poll.h> + #include <sys/types.h> + #include <sys/socket.h> + #include <string.h> +--- openjdk.orig/jdk/src/solaris/native/sun/nio/fs/LinuxWatchService.c ++++ openjdk/jdk/src/solaris/native/sun/nio/fs/LinuxWatchService.c +@@ -32,7 +32,7 @@ + #include <dlfcn.h> + #include <sys/types.h> + #include <sys/socket.h> +-#include <sys/poll.h> ++#include <poll.h> + #include <sys/inotify.h> + + #include "sun_nio_fs_LinuxWatchService.h" +--- openjdk.orig/jdk/src/solaris/transport/socket/socket_md.c ++++ openjdk/jdk/src/solaris/transport/socket/socket_md.c +@@ -37,7 +37,7 @@ + #include <thread.h> + #else + #include <pthread.h> +-#include <sys/poll.h> ++#include <poll.h> + #endif + + #include "socket_md.h" diff --git a/user/openjdk8/icedtea-jdk-musl.patch b/user/openjdk8/icedtea-jdk-musl.patch new file mode 100644 index 000000000..97946ba42 --- /dev/null +++ b/user/openjdk8/icedtea-jdk-musl.patch @@ -0,0 +1,105 @@ +diff -ru openjdk.orig/jdk/src/share/native/com/sun/java/util/jar/pack/zip.cpp openjdk/jdk/src/share/native/com/sun/java/util/jar/pack/zip.cpp +--- openjdk.orig/jdk/src/share/native/com/sun/java/util/jar/pack/zip.cpp 2017-01-25 04:22:03.000000000 +0000 ++++ openjdk/jdk/src/share/native/com/sun/java/util/jar/pack/zip.cpp 2017-02-06 11:23:47.041165210 +0000 +@@ -46,6 +46,8 @@ + + #include "zip.h" + ++#define uchar unsigned char ++ + #ifdef NO_ZLIB + + inline bool jar::deflate_bytes(bytes& head, bytes& tail) { +diff -ru openjdk.orig/jdk/src/share/native/com/sun/java/util/jar/pack/zip.h openjdk/jdk/src/share/native/com/sun/java/util/jar/pack/zip.h +--- openjdk.orig/jdk/src/share/native/com/sun/java/util/jar/pack/zip.h 2017-01-25 04:22:03.000000000 +0000 ++++ openjdk/jdk/src/share/native/com/sun/java/util/jar/pack/zip.h 2017-02-06 11:23:47.047832009 +0000 +@@ -23,9 +23,7 @@ + * questions. + */ + +-#define ushort unsigned short +-#define uint unsigned int +-#define uchar unsigned char ++#include <sys/types.h> + + struct unpacker; + +diff -ru openjdk.orig/jdk/src/share/native/sun/awt/medialib/mlib_types.h openjdk/jdk/src/share/native/sun/awt/medialib/mlib_types.h +--- openjdk.orig/jdk/src/share/native/sun/awt/medialib/mlib_types.h 2017-01-25 04:22:03.000000000 +0000 ++++ openjdk/jdk/src/share/native/sun/awt/medialib/mlib_types.h 2017-02-06 11:23:47.047832009 +0000 +@@ -27,6 +27,7 @@ + #ifndef MLIB_TYPES_H + #define MLIB_TYPES_H + ++#include <stddef.h> /* for NULL */ + #include <limits.h> + #if defined(_MSC_VER) + #include <float.h> /* for FLT_MAX and DBL_MAX */ +diff -ru openjdk.orig/jdk/src/solaris/native/java/net/Inet4AddressImpl.c openjdk/jdk/src/solaris/native/java/net/Inet4AddressImpl.c +--- openjdk.orig/jdk/src/solaris/native/java/net/Inet4AddressImpl.c 2017-01-25 04:22:03.000000000 +0000 ++++ openjdk/jdk/src/solaris/native/java/net/Inet4AddressImpl.c 2017-02-06 11:23:47.047832009 +0000 +@@ -47,7 +47,7 @@ + + #include "java_net_Inet4AddressImpl.h" + +-#if defined(__GLIBC__) || (defined(__FreeBSD__) && (__FreeBSD_version >= 601104)) ++#if defined(__linux__) || (defined(__FreeBSD__) && (__FreeBSD_version >= 601104)) + #define HAS_GLIBC_GETHOSTBY_R 1 + #endif + +diff -ru openjdk.orig/jdk/src/solaris/native/java/net/PlainDatagramSocketImpl.c openjdk/jdk/src/solaris/native/java/net/PlainDatagramSocketImpl.c +--- openjdk.orig/jdk/src/solaris/native/java/net/PlainDatagramSocketImpl.c 2017-01-25 04:22:03.000000000 +0000 ++++ openjdk/jdk/src/solaris/native/java/net/PlainDatagramSocketImpl.c 2017-02-06 11:23:47.047832009 +0000 +@@ -41,7 +41,6 @@ + #endif + #ifdef __linux__ + #include <unistd.h> +-#include <sys/sysctl.h> + #include <sys/utsname.h> + #include <netinet/ip.h> + +diff -ru openjdk.orig/jdk/src/solaris/native/java/net/PlainSocketImpl.c openjdk/jdk/src/solaris/native/java/net/PlainSocketImpl.c +--- openjdk.orig/jdk/src/solaris/native/java/net/PlainSocketImpl.c 2017-01-25 04:22:03.000000000 +0000 ++++ openjdk/jdk/src/solaris/native/java/net/PlainSocketImpl.c 2017-02-06 11:23:47.047832009 +0000 +@@ -43,7 +43,6 @@ + #endif + #ifdef __linux__ + #include <unistd.h> +-#include <sys/sysctl.h> + #endif + + #include "jvm.h" +diff -ru openjdk.orig/jdk/src/solaris/native/java/net/linux_close.c openjdk/jdk/src/solaris/native/java/net/linux_close.c +--- openjdk.orig/jdk/src/solaris/native/java/net/linux_close.c 2017-01-25 04:22:03.000000000 +0000 ++++ openjdk/jdk/src/solaris/native/java/net/linux_close.c 2017-02-06 11:23:47.047832009 +0000 +@@ -56,7 +56,7 @@ + /* + * Signal to unblock thread + */ +-static int sigWakeup = (__SIGRTMAX - 2); ++static int sigWakeup; + + /* + * The fd table and the number of file descriptors +@@ -95,6 +95,9 @@ + /* + * Setup the signal handler + */ ++#ifndef __AIX ++ sigWakeup = SIGRTMAX - 2; ++#endif + sa.sa_handler = sig_wakeup; + sa.sa_flags = 0; + sigemptyset(&sa.sa_mask); +diff -ru openjdk.orig/jdk/src/solaris/native/sun/nio/ch/NativeThread.c openjdk/jdk/src/solaris/native/sun/nio/ch/NativeThread.c +--- openjdk.orig/jdk/src/solaris/native/sun/nio/ch/NativeThread.c 2017-01-25 04:22:03.000000000 +0000 ++++ openjdk/jdk/src/solaris/native/sun/nio/ch/NativeThread.c 2017-02-06 11:23:47.051165409 +0000 +@@ -36,7 +36,7 @@ + #include <pthread.h> + #include <sys/signal.h> + /* Also defined in net/linux_close.c */ +- #define INTERRUPT_SIGNAL (__SIGRTMAX - 2) ++ #define INTERRUPT_SIGNAL (SIGRTMAX - 2) + #elif __solaris__ + #include <thread.h> + #include <signal.h> diff --git a/user/openjdk8/icedtea-jdk-tls-nist-curves.patch b/user/openjdk8/icedtea-jdk-tls-nist-curves.patch new file mode 100644 index 000000000..75fb3af8c --- /dev/null +++ b/user/openjdk8/icedtea-jdk-tls-nist-curves.patch @@ -0,0 +1,47 @@ +Bug #7404 TLS negotiation error in OpenJDK 8 u131 + +Fixes an OpenJDK 8 regression discovered in docker-library/openjdk#115 +on Alpine Linux 3.5 (u121) and 3.6 (u131) that causes TLS negotiation +errors for some clients. + +Root cause appears to be OpenJDK announcing support for NIST curves the +underlying NSS library does doesn't. This patch limits OpenJDK's +announcement to elliptic curves 23 (secp256r1), 24 (secp384r1), and 25 +(secp521r1). + +Related issues: + +* https://github.com/docker-library/openjdk/issues/115 +* https://bugs.alpinelinux.org/issues/7404 +* https://access.redhat.com/discussions/2339811 +* https://bugzilla.redhat.com/show_bug.cgi?id=1022017 +* https://bugzilla.redhat.com/show_bug.cgi?id=1348525 + +--- openjdk.orig/jdk/src/share/classes/sun/security/ssl/EllipticCurvesExtension.java 2017-05-08 20:03:50.000000000 -0700 ++++ openjdk/jdk/src/share/classes/sun/security/ssl/EllipticCurvesExtension.java 2017-06-14 13:37:00.000000000 -0700 +@@ -168,21 +168,10 @@ + "contains no supported elliptic curves"); + } + } else { // default curves +- int[] ids; +- if (requireFips) { +- ids = new int[] { +- // only NIST curves in FIPS mode +- 23, 24, 25, 9, 10, 11, 12, 13, 14, +- }; +- } else { +- ids = new int[] { +- // NIST curves first +- 23, 24, 25, 9, 10, 11, 12, 13, 14, +- // non-NIST curves +- 22, +- }; +- } +- ++ int[] ids = new int[] { ++ // NSS currently only supports these three NIST curves ++ 23, 24, 25 ++ }; + idList = new ArrayList<>(ids.length); + for (int curveId : ids) { + if (isAvailableCurve(curveId)) { diff --git a/user/openjdk8/remove-gawk.patch b/user/openjdk8/remove-gawk.patch new file mode 100644 index 000000000..f0731bab4 --- /dev/null +++ b/user/openjdk8/remove-gawk.patch @@ -0,0 +1,125 @@ +--- icedtea-2.6.16/configure.old 2019-01-01 20:11:07.846602426 +0000 ++++ icedtea-2.6.16/configure 2019-02-27 00:23:41.230000000 +0000 +@@ -6881,108 +6881,7 @@ + LDD="$ac_cv_prog_LDD" + fi + +-if test -n "$ac_tool_prefix"; then +- # Extract the first word of "${ac_tool_prefix}gawk", so it can be a program name with args. +-set dummy ${ac_tool_prefix}gawk; ac_word=$2 +-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +-$as_echo_n "checking for $ac_word... " >&6; } +-if ${ac_cv_path_GAWK+:} false; then : +- $as_echo_n "(cached) " >&6 +-else +- case $GAWK in +- [\\/]* | ?:[\\/]*) +- ac_cv_path_GAWK="$GAWK" # Let the user override the test with a path. +- ;; +- *) +- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +-for as_dir in $PATH +-do +- IFS=$as_save_IFS +- test -z "$as_dir" && as_dir=. +- for ac_exec_ext in '' $ac_executable_extensions; do +- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then +- ac_cv_path_GAWK="$as_dir/$ac_word$ac_exec_ext" +- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 +- break 2 +- fi +-done +- done +-IFS=$as_save_IFS +- +- ;; +-esac +-fi +-GAWK=$ac_cv_path_GAWK +-if test -n "$GAWK"; then +- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $GAWK" >&5 +-$as_echo "$GAWK" >&6; } +-else +- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +-$as_echo "no" >&6; } +-fi +- +- +-fi +-if test -z "$ac_cv_path_GAWK"; then +- ac_pt_GAWK=$GAWK +- # Extract the first word of "gawk", so it can be a program name with args. +-set dummy gawk; ac_word=$2 +-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +-$as_echo_n "checking for $ac_word... " >&6; } +-if ${ac_cv_path_ac_pt_GAWK+:} false; then : +- $as_echo_n "(cached) " >&6 +-else +- case $ac_pt_GAWK in +- [\\/]* | ?:[\\/]*) +- ac_cv_path_ac_pt_GAWK="$ac_pt_GAWK" # Let the user override the test with a path. +- ;; +- *) +- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +-for as_dir in $PATH +-do +- IFS=$as_save_IFS +- test -z "$as_dir" && as_dir=. +- for ac_exec_ext in '' $ac_executable_extensions; do +- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then +- ac_cv_path_ac_pt_GAWK="$as_dir/$ac_word$ac_exec_ext" +- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 +- break 2 +- fi +-done +- done +-IFS=$as_save_IFS +- +- ;; +-esac +-fi +-ac_pt_GAWK=$ac_cv_path_ac_pt_GAWK +-if test -n "$ac_pt_GAWK"; then +- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_pt_GAWK" >&5 +-$as_echo "$ac_pt_GAWK" >&6; } +-else +- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +-$as_echo "no" >&6; } +-fi +- +- if test "x$ac_pt_GAWK" = x; then +- GAWK="" +- else +- case $cross_compiling:$ac_tool_warned in +-yes:) +-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 +-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} +-ac_tool_warned=yes ;; +-esac +- GAWK=$ac_pt_GAWK +- fi +-else +- GAWK="$ac_cv_path_GAWK" +-fi +- +- if test x"$GAWK" = x ; then +- as_fn_error $? "The following program was not found on the PATH: gawk" "$LINENO" 5 +- fi +- ++GAWK="$AWK" + + if test -n "$ac_tool_prefix"; then + # Extract the first word of "${ac_tool_prefix}perl", so it can be a program name with args. +--- icedtea-2.6.16/configure.ac.old 2019-01-01 20:09:39.139994680 +0000 ++++ icedtea-2.6.16/configure.ac 2019-02-27 00:25:01.960000000 +0000 +@@ -39,9 +39,7 @@ + IT_FIND_TOOLS([FASTJAR], [fastjar jar]) + IT_FIND_TOOLS([SED],[gsed sed]) + AC_CHECK_TOOL([LDD], [ldd]) +-dnl OpenJDK's README-builds.html lists gawk as a build dependency so we +-dnl check for it explicitly rather than using AC_PROG_AWK. +-IT_FIND_TOOL([GAWK], [gawk]) ++IT_FIND_TOOL([GAWK], [awk]) + IT_FIND_TOOL([WHICH], [which]) + IT_FIND_TOOL([PERL], [perl]) + diff --git a/user/openjpeg/APKBUILD b/user/openjpeg/APKBUILD index 3b4c6dc49..6e2993bd6 100644 --- a/user/openjpeg/APKBUILD +++ b/user/openjpeg/APKBUILD @@ -1,8 +1,8 @@ # Contributor: William Pitcock <nenolod@dereferenced.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=openjpeg -pkgver=2.3.0 -pkgrel=1 +pkgver=2.3.1 +pkgrel=0 pkgdesc="Open-source implementation of JPEG 2000 image codec" url="http://www.openjpeg.org/" arch="all" @@ -11,12 +11,9 @@ license="BSD-2-Clause-NetBSD" depends_dev="$pkgname-tools" makedepends="libpng-dev tiff-dev lcms2-dev doxygen cmake" subpackages="$pkgname-dev $pkgname-tools" -source="$pkgname-$pkgver.tar.gz::https://github.com/uclouvain/openjpeg/archive/v$pkgver.tar.gz - fix-include-path.patch - " +source="$pkgname-$pkgver.tar.gz::https://github.com/uclouvain/openjpeg/archive/v$pkgver.tar.gz" build() { - cd "$builddir" cmake . \ -DCMAKE_INSTALL_PREFIX=/usr \ -DCMAKE_BUILD_TYPE=RelWithDebInfo \ @@ -41,7 +38,6 @@ build() { # - CVE-2016-9581 package() { - cd "$builddir" make DESTDIR="$pkgdir" install } @@ -51,5 +47,4 @@ tools() { mv "$pkgdir"/usr/bin "$subpkgdir"/usr/ } -sha512sums="0a9d427be4a820b1d759fca4b50e293721b45fe4885aa61ca1ae09e099f75ed93520448090c780d62f51076d575cc03618cd6d5181bdb6b34e4fc07b4cfdd568 openjpeg-2.3.0.tar.gz -354fb181a25eeabe231d28216bcb8e401648cf8e71ba476cabd25e297f46bbc1ea5b091b4d2d4450501422b8b20649bf109ff5b3f3b49f1492650dbb46ed6e22 fix-include-path.patch" +sha512sums="339fbc899bddf2393d214df71ed5d6070a3a76b933b1e75576c8a0ae9dfcc4adec40bdc544f599e4b8d0bc173e4e9e7352408497b5b3c9356985605830c26c03 openjpeg-2.3.1.tar.gz" diff --git a/user/openjpeg/fix-include-path.patch b/user/openjpeg/fix-include-path.patch deleted file mode 100644 index f5ff1e60d..000000000 --- a/user/openjpeg/fix-include-path.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- openjpeg-2.3.0/cmake/OpenJPEGConfig.cmake.in.old 2017-10-04 22:23:14.000000000 +0000 -+++ openjpeg-2.3.0/cmake/OpenJPEGConfig.cmake.in 2018-09-06 00:53:22.860000000 +0000 -@@ -26,7 +26,7 @@ - if(EXISTS ${SELF_DIR}/OpenJPEGTargets.cmake) - # This is an install tree - include(${SELF_DIR}/OpenJPEGTargets.cmake) -- get_filename_component(OPENJPEG_INCLUDE_ROOT "${SELF_DIR}/../../@OPENJPEG_INSTALL_INCLUDE_DIR@" ABSOLUTE) -+ get_filename_component(OPENJPEG_INCLUDE_ROOT "${SELF_DIR}/../../../@OPENJPEG_INSTALL_INCLUDE_DIR@" ABSOLUTE) - set(OPENJPEG_INCLUDE_DIRS ${OPENJPEG_INCLUDE_ROOT}) - - else() diff --git a/user/openldap/APKBUILD b/user/openldap/APKBUILD index f1d84ba54..552c760c6 100644 --- a/user/openldap/APKBUILD +++ b/user/openldap/APKBUILD @@ -9,7 +9,7 @@ # - CVE-2017-9287 # pkgname=openldap -pkgver=2.4.46 +pkgver=2.4.47 pkgrel=0 pkgdesc="LDAP Server" url="http://www.openldap.org/" @@ -36,7 +36,6 @@ source="ftp://ftp.$pkgname.org/pub/OpenLDAP/$pkgname-release/$pkgname-$pkgver.tg slapd.initd slapd.confd " -builddir="$srcdir/$pkgname-$pkgver" # SLAPD backends _backends="" @@ -203,7 +202,7 @@ _submv() { done } -sha512sums="eef39d43f04aa09c657a1422cefef060fe00368559ae40d0d97536c08ebeaaa1ab06207b3f121ba6afcde54abdc550027c3505e5217e5fd47ae6f8c001260186 openldap-2.4.46.tgz +sha512sums="d424079e34207e3d24383a2bea70a07ded40714982a6767174d2b2cb208cd94feab5ef12157accae915b8e404e5773a7547aaef65f06b44dc3cc09c6a64d5a11 openldap-2.4.47.tgz 5d34d49eabe7cb66cf8284cc3bd9730fa23df4932df68549e242d250ee50d40c434ae074ebc720d5fbcd9d16587c9333c5598d30a5f1177caa61461ab7771f38 openldap-2.4-ppolicy.patch 44d97efb25d4f39ab10cd5571db43f3bfa7c617a5bb087085ae16c0298aca899b55c8742a502121ba743a73e6d77cd2056bc96cee63d6d0862dabc8fb5574357 openldap-2.4.11-libldap_r.patch 8c4244d316a05870dd1147b2ab7ddbcfd7626b5dce2f5a0e72f066dc635c2edb4f1ea3be88c6fec2d5ab016001be16bedef70f2ce0695c3cd96f69e1614ff177 fix-manpages.patch diff --git a/user/openttd/APKBUILD b/user/openttd/APKBUILD index 63df0988e..2c185d8cb 100644 --- a/user/openttd/APKBUILD +++ b/user/openttd/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=openttd -pkgver=1.8.0 +pkgver=1.9.1 pkgrel=0 pkgdesc="Simulation game based on Transport Tycoon Deluxe" url="https://www.openttd.org/en/" @@ -12,9 +12,7 @@ depends="opengfx openmsx opensfx" makedepends="fontconfig-dev freetype-dev icu-dev libpng-dev libxdg-basedir-dev lzo-dev sdl-dev xz-dev zlib-dev" subpackages="$pkgname-doc" -source="https://binaries.openttd.org/releases/1.8.0/openttd-$pkgver-source.tar.xz - icu61.patch - " +source="https://proxy.binaries.openttd.org/openttd-releases/$pkgver/openttd-$pkgver-source.tar.xz" build() { cd "$builddir" @@ -32,5 +30,4 @@ package() { make install } -sha512sums="a2d61b3c94a550c8f3a581127df8c3459b1ddff5ba924942c468cbc70e88e0bf4405cecb68a91243b544ead64f215aa8d489a07b38dce507ae7d59e8ec155d7a openttd-1.8.0-source.tar.xz -db470433bcc68688b1a4cf71a514879c139300a778feb3f832bff0400b578d4b7720df6e259a86013334a661fce56c66d74aaf709d0027cf9638f006bebca10e icu61.patch" +sha512sums="44d907299a14fd09ebff980f7c212bbdbd5def880bc56bfe106c3efa8cb32472bbcafdbb145d3f4340a3bc96179418f78fe2ddc62dd067b464eca73313b477c1 openttd-1.9.1-source.tar.xz" diff --git a/user/openttd/icu61.patch b/user/openttd/icu61.patch deleted file mode 100644 index e4143d82f..000000000 --- a/user/openttd/icu61.patch +++ /dev/null @@ -1,45 +0,0 @@ -From 19076c24c1f3baf2a22d1fa832d5688216cf54a3 Mon Sep 17 00:00:00 2001 -From: Charles Pigott <charlespigott@googlemail.com> -Date: Sun, 8 Apr 2018 01:06:18 +0100 -Subject: [PATCH] Fix #6690: Compilation with ICU 61 - ---- - src/language.h | 2 +- - src/strings.cpp | 4 ++-- - 2 files changed, 3 insertions(+), 3 deletions(-) - -diff --git a/src/language.h b/src/language.h -index d33ba81892..ec241dbd8c 100644 ---- a/src/language.h -+++ b/src/language.h -@@ -105,7 +105,7 @@ extern LanguageList _languages; - extern const LanguageMetadata *_current_language; - - #ifdef WITH_ICU_SORT --extern Collator *_current_collator; -+extern icu::Collator *_current_collator; - #endif /* WITH_ICU_SORT */ - - bool ReadLanguagePack(const LanguageMetadata *lang); -diff --git a/src/strings.cpp b/src/strings.cpp -index 1c539d9343..fd7420259a 100644 ---- a/src/strings.cpp -+++ b/src/strings.cpp -@@ -52,7 +52,7 @@ const LanguageMetadata *_current_language = NULL; ///< The currently loaded lang - TextDirection _current_text_dir; ///< Text direction of the currently selected language. - - #ifdef WITH_ICU_SORT --Collator *_current_collator = NULL; ///< Collator for the language currently in use. -+icu::Collator *_current_collator = NULL; ///< Collator for the language currently in use. - #endif /* WITH_ICU_SORT */ - - static uint64 _global_string_params_data[20]; ///< Global array of string parameters. To access, use #SetDParam. -@@ -1795,7 +1795,7 @@ bool ReadLanguagePack(const LanguageMetadata *lang) - - /* Create a collator instance for our current locale. */ - UErrorCode status = U_ZERO_ERROR; -- _current_collator = Collator::createInstance(Locale(_current_language->isocode), status); -+ _current_collator = icu::Collator::createInstance(icu::Locale(_current_language->isocode), status); - /* Sort number substrings by their numerical value. */ - if (_current_collator != NULL) _current_collator->setAttribute(UCOL_NUMERIC_COLLATION, UCOL_ON, status); - /* Avoid using the collator if it is not correctly set. */ diff --git a/user/opus/APKBUILD b/user/opus/APKBUILD index 7b76e2a0a..2b2a2d887 100644 --- a/user/opus/APKBUILD +++ b/user/opus/APKBUILD @@ -1,7 +1,7 @@ # Contributor: Carlo Landmeter <clandmeter@gmail.com> # Maintainer: pkgname=opus -pkgver=1.3 +pkgver=1.3.1 pkgrel=0 pkgdesc="Codec designed for speech and audio transmission" url="http://www.opus-codec.org/" @@ -39,4 +39,4 @@ package() { "$pkgdir/usr/share/licenses/$pkgname/LICENSE" } -sha512sums="438635667e72c326d6d06a30e0b3a5564ba6cf5d484066456e1118e1c2fe3a61b959d0afa77a1084b177b72f9230618b6b55c78bc4e24e9127a09fd345b42518 opus-1.3.tar.gz" +sha512sums="6cd5e4d8a0551ed5fb59488c07a5cc18a241d1fde5f9eb9f16cd4e77abcdb4134dd51ad1d737be1e6039bfa56912510b8648152f2478a1f21c7c1d9ce32933cd opus-1.3.1.tar.gz" diff --git a/user/orc/APKBUILD b/user/orc/APKBUILD index 9726ef4f4..de40d3f31 100644 --- a/user/orc/APKBUILD +++ b/user/orc/APKBUILD @@ -2,16 +2,15 @@ # Contributor: Natanael Copa <ncopa@alpinelinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=orc -pkgver=0.4.28 -pkgrel=1 +pkgver=0.4.29 +pkgrel=0 pkgdesc="The Oil Run-time Compiler" url="https://gstreamer.freedesktop.org/modules/orc.html" arch="all" license="BSD-2-Clause AND BSD-3-Clause" makedepends="linux-headers" subpackages="$pkgname-dev $pkgname-doc $pkgname-compiler" -source="https://gstreamer.freedesktop.org/src/orc/${pkgname}-${pkgver}.tar.xz - orc-0.4.28-ppc64-elfv2.patch" +source="https://gstreamer.freedesktop.org/src/orc/${pkgname}-${pkgver}.tar.xz" build() { cd "$builddir" @@ -48,5 +47,4 @@ compiler() { mv "$pkgdir"/usr/bin "$subpkgdir"/usr/ } -sha512sums="2ae3100e7d0c03eba9a8a10a8924da4d729e1967b63e5dfdf88c4aee907d7ece82c782d74f4cb7e28a366dd74ce5e1ddc6e2b971e5a2f879b0501cc313b93410 orc-0.4.28.tar.xz -c7067aff0295a68048cc0c2dbe9d7ce5b0eff6a19fce553fcccb6a358d35fb2f14f1a201f96e995d920f44995483f2eccc779f9d81817b0661794354555b5532 orc-0.4.28-ppc64-elfv2.patch" +sha512sums="57aa75bbefa9ba9ffcce97affd504c13c57612e2409863c011555bed6ff6ba224d38ed66b715bf103679a8ee28ddae427db3d78c7b4a2ddfa7dbd72a4fa81726 orc-0.4.29.tar.xz" diff --git a/user/orc/orc-0.4.28-ppc64-elfv2.patch b/user/orc/orc-0.4.28-ppc64-elfv2.patch deleted file mode 100644 index 7f4f8b0d3..000000000 --- a/user/orc/orc-0.4.28-ppc64-elfv2.patch +++ /dev/null @@ -1,28 +0,0 @@ ---- orc-0.4.28/orc/orcprogram-altivec.c.old 2014-04-11 03:36:22.000000000 -0500 -+++ orc-0.4.28/orc/orcprogram-altivec.c 2018-01-07 23:32:55.065198004 -0600 -@@ -27,12 +27,14 @@ - ORC_ASM_CODE (compiler, "%s:\n", compiler->program->name); - - if (compiler->is_64bit) { -+#if !defined(_CALL_ELF) || _CALL_ELF == 1 - ORC_ASM_CODE (compiler, " .quad .%s,.TOC.@tocbase,0\n", - compiler->program->name); - ORC_ASM_CODE (compiler, ".%s:\n", compiler->program->name); - powerpc_emit (compiler, 0); powerpc_emit (compiler, 0); - powerpc_emit (compiler, 0); powerpc_emit (compiler, 0); - powerpc_emit (compiler, 0); powerpc_emit (compiler, 0); -+#endif - powerpc_emit_stdu (compiler, POWERPC_R1, POWERPC_R1, -16); - } else { - powerpc_emit_stwu (compiler, POWERPC_R1, POWERPC_R1, -16); ---- orc-0.4.28/orc/orcpowerpc.c.old 2014-04-11 03:36:22.000000000 -0500 -+++ orc-0.4.28/orc/orcpowerpc.c 2018-01-07 23:31:53.285259170 -0600 -@@ -423,7 +423,7 @@ - int size = code->code_size; - - ptr = code->code; --#ifdef __powerpc64__ -+#if defined(__powerpc64__) && (!defined(_CALL_ELF) || _CALL_ELF == 1) - *(unsigned char **) ptr = (unsigned char *) code->exec + 24; - #endif - for (i=0;i<size;i+=cache_line_size) { diff --git a/user/otf-culmus/APKBUILD b/user/otf-culmus/APKBUILD index d70ab7169..b67bd4347 100644 --- a/user/otf-culmus/APKBUILD +++ b/user/otf-culmus/APKBUILD @@ -4,7 +4,7 @@ pkgname=otf-culmus pkgver=0.133 pkgrel=0 pkgdesc="Culmus collections of Hebrew font families" -url="https://culmus.sourceforge.net" +url="http://culmus.sourceforge.net/" arch="noarch" options="!check" # No tests license="MIT AND GPL-2.0-only WITH font-exception" @@ -13,7 +13,6 @@ source="https://downloads.sourceforge.net/culmus/culmus-$pkgver.tar.gz" builddir="$srcdir"/${pkgname#*-}-$pkgver package() { - cd "$builddir" mkdir -p "$pkgdir"/usr/share/fonts/X11/OTF/${pkgname#*-} for i in *.otf; do install -Dm644 "$i" "$pkgdir"/usr/share/fonts/X11/OTF/${pkgname#*-} diff --git a/user/oxygen-fonts/APKBUILD b/user/oxygen-fonts/APKBUILD index 2def092ef..152a0aae4 100644 --- a/user/oxygen-fonts/APKBUILD +++ b/user/oxygen-fonts/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=oxygen-fonts -pkgver=5.3.95 +pkgver=5.4.3 pkgrel=0 pkgdesc="Fonts for the KDE Oxygen style" url="https://www.KDE.org/" @@ -10,7 +10,7 @@ license="OFL-1.1" depends="" makedepends="cmake extra-cmake-modules qt5-qtbase-dev fontforge-dev" subpackages="" -source="https://download.kde.org/unstable/plasma/$pkgver/oxygen-fonts-$pkgver.tar.xz" +source="http://download.kde.org/stable/plasma/$pkgver/oxygen-fonts-$pkgver.tar.xz" build() { cd "$builddir" @@ -38,4 +38,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="97e7cd7900f9628fdce1b41bb3a74373c4fa27a1f7f6269b47cd4ebda3aec0f40bb5540cbd7c50b94f91aae2d7963be1e942fb8b5d01c1ba445eaf1f143e149d oxygen-fonts-5.3.95.tar.xz" +sha512sums="6dab7b2ef3f7540cd28e91435662f6c43ef9e972fe4ccd1e58ba8904d1b4e8f1ca562384d02df1fc7c5dd5366e9be1ed0a1590a9b9a182621e4bab26ffc3497f oxygen-fonts-5.4.3.tar.xz" diff --git a/user/p11-kit/APKBUILD b/user/p11-kit/APKBUILD index ee6c68cb9..fff4a60c6 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.15 +pkgver=0.23.16.1 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="d703eec12626b79551ce337521f7ea7b1a0b64c211d7a93d831dd28ec1de77c7b58358c1588bf82d70f047c01ad9433fa8a286d1a25ae3f6b0ee6016b8c42950 p11-kit-0.23.15.tar.gz" +sha512sums="7d0bbd793b43dba081054b4d022a8dbd1d477a3bd6aced72a641087023cf020f1d898899a08e737880e6c810f924814c62497c5ecb19f8322cde42667426a9a7 p11-kit-0.23.16.1.tar.gz" diff --git a/user/palapeli/APKBUILD b/user/palapeli/APKBUILD index 5a4ec3dc4..8038b6717 100644 --- a/user/palapeli/APKBUILD +++ b/user/palapeli/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=palapeli -pkgver=18.12.3 +pkgver=19.04.1 pkgrel=0 pkgdesc="Jigsaw puzzle game by KDE" url="https://www.kde.org/applications/games/palapeli/" @@ -42,4 +42,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="69c7e16ca54e39ec1f32f04db54161dcdd88f85089759ef6871707b10aa3f52edfa59d99ab98e3e115ab0c3471af54148d64b9cc2b3939e5c12fd33c3dcd8678 palapeli-18.12.3.tar.xz" +sha512sums="a560646ce1577b3ea24cefdd2ffc7053c407469ed1d76e0c4af9c74f45222daebf56d8e409cf8f832da73baaa6402dccacd06cf72c71cfc34e9b25c542b4a8a0 palapeli-19.04.1.tar.xz" diff --git a/user/parole/APKBUILD b/user/parole/APKBUILD index ad29a1cfb..496594ae1 100644 --- a/user/parole/APKBUILD +++ b/user/parole/APKBUILD @@ -1,7 +1,7 @@ # Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> # Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> pkgname=parole -pkgver=1.0.1 +pkgver=1.0.2 pkgrel=0 pkgdesc="GStreamer-based media player for the XFCE desktop environment" url="https://xfce.org" @@ -35,4 +35,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="026ece62e6a8175976e7ce218edbd6955a0cdb5074996adad5bed3e536f90108e4d1106f22edcb06d213fb09dd47b04f81bff94f4534710b61f0f53cb0395f72 parole-1.0.1.tar.bz2" +sha512sums="d7e989af7f9dab14080e62bd656a2858d8536a056ba82b5d5ac7d26a7d898f478b74c1ba4371779624691b7f42b695580ad53cfb15da0a4dc209d7570c12a66d parole-1.0.2.tar.bz2" diff --git a/user/pcsc-lite/APKBUILD b/user/pcsc-lite/APKBUILD index 3066ad3bc..9746a2d46 100644 --- a/user/pcsc-lite/APKBUILD +++ b/user/pcsc-lite/APKBUILD @@ -2,7 +2,7 @@ # Contributor: Timo Teräs <timo.teras@iki.fi> # Maintainer: pkgname=pcsc-lite -pkgver=1.8.24 +pkgver=1.8.25 pkgrel=0 pkgdesc="Middleware to access a smart card using SCard API (PC/SC)" url="https://pcsclite.apdu.fr/" @@ -64,5 +64,5 @@ dev() { mv "$subpkgdir"/usr/lib/libpcsclite.so "$pkgdir"/usr/lib/libpcsclite.so } -sha512sums="df2e6a7a8179563a6dbf654ab75cf78a4b297b0562214a081d7d2b5d00fd4adf92fd892bd16aacf9d5e2867f3ad46c88a88e5834e311011f37556dd7e8936a0c pcsc-lite-1.8.24.tar.bz2 +sha512sums="0da63cefd70d9524b2afabd62c5f404758c805b84bbe9ef64fb801ef91a8934c38495513022565ea31bd8550b23bc95b9e9b098ddc76930e3d0643c1fbfb5deb pcsc-lite-1.8.25.tar.bz2 6810ab357b5bcf07bf1ad76ed17ebb8e92be4599303a4e697b87a05d43b8d2bec5d3c29d44d8ddb5d031910ea62ca52a9868e6de9a255227eaeb29d1a7ee0041 pcscd.initd" diff --git a/user/perl-app-licensecheck/APKBUILD b/user/perl-app-licensecheck/APKBUILD new file mode 100644 index 000000000..58f4dd9e9 --- /dev/null +++ b/user/perl-app-licensecheck/APKBUILD @@ -0,0 +1,39 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-app-licensecheck +_pkgname=App-Licensecheck +pkgver=3.0.36 +pkgrel=0 +pkgdesc="Perl library and utility for checking source-file licensing" +url="https://metacpan.org/pod/distribution/App-Licensecheck" +arch="noarch" +license="GPL-3.0+" +depends="perl perl-getopt-long-descriptive perl-moo perl-namespace-clean + perl-path-iterator-rule perl-path-tiny perl-pod-constants + perl-regexp-pattern perl-regexp-pattern-license perl-software-license + perl-sort-key perl-strictures perl-string-copyright perl-string-escape + perl-test-requires perl-test-script perl-try-tiny + perl-universal-require" +makedepends="" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/J/JO/JONASS/$_pkgname-v$pkgver.tar.gz" +builddir="$srcdir"/$_pkgname-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="1afa30822028205742edadfdd9c393189a46d781a3b2988b4ff8c39e269762258b75e10b3002df4859607b6336f82aa13c740125f715e98bb0ce89318e78d5ca App-Licensecheck-v3.0.36.tar.gz" diff --git a/user/perl-b-hooks-op-check/APKBUILD b/user/perl-b-hooks-op-check/APKBUILD new file mode 100644 index 000000000..93b27f9dd --- /dev/null +++ b/user/perl-b-hooks-op-check/APKBUILD @@ -0,0 +1,33 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-b-hooks-op-check +pkgver=0.22 +pkgrel=0 +pkgdesc="Perl module for wrapping OP check callbacks in XS" +url="https://metacpan.org/pod/B::Hooks::OP::Check" +arch="all" +license="Artistic-1.0-Perl" +depends="" +makedepends="perl-dev perl-extutils-depends" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/E/ET/ETHER/B-Hooks-OP-Check-$pkgver.tar.gz" +builddir="$srcdir/B-Hooks-OP-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="e68b08a34244afc73d7d3b2b0acdf8fe791b0b1f087b6b0496da0a1e655a9e51552ec8fb0f743c8626a0414fb469a2133d113ff5b4ba9f96217cc87bef877542 B-Hooks-OP-Check-0.22.tar.gz" diff --git a/user/perl-bareword-filehandles/APKBUILD b/user/perl-bareword-filehandles/APKBUILD new file mode 100644 index 000000000..1e75b8f9f --- /dev/null +++ b/user/perl-bareword-filehandles/APKBUILD @@ -0,0 +1,34 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-bareword-filehandles +pkgver=0.006 +pkgrel=0 +pkgdesc="Perl module for disabling support for bareword filehandles" +url="https://metacpan.org/pod/bareword::filehandles" +arch="all" +license="Artistic-1.0-Perl" +depends="" +makedepends="perl-dev perl-b-hooks-op-check perl-extutils-depends" +install="" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/I/IL/ILMARI/bareword-filehandles-$pkgver.tar.gz" +builddir="$srcdir/bareword-filehandles-$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="73cf85f35d10d13d4ad3be471e30cce0a19a899a7c4d033d2202d815dae8e30aa54b2ad7923dba6d798db1c49d2dcbc7c4f72b2d3f1f08e6e009700682d4e65e bareword-filehandles-0.006.tar.gz" diff --git a/user/perl-cgi/APKBUILD b/user/perl-cgi/APKBUILD index 09fca609f..4135379d6 100644 --- a/user/perl-cgi/APKBUILD +++ b/user/perl-cgi/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> pkgname=perl-cgi -pkgver=4.40 +pkgver=4.42 pkgrel=0 pkgdesc="Handle CGI requests and responses in Perl" url="https://metacpan.org/release/CGI" @@ -31,4 +31,4 @@ package() { find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete } -sha512sums="317cc410d8cc630067759cc05b8643e0c3fe4e55307c437176892a625b88d46443c3e0ff4361e066c54f95c3573e5fa8c21e23069071fa0dc74fc2d93dca13c1 CGI-4.40.tar.gz" +sha512sums="caa5402ffe683b38609aab56fdd1388ddecf97fde449e889cecb9ac6ecbb490a08624ea8b9430d59b46c99133608a79fde6cba584d13ca435a201c741a0b472b CGI-4.42.tar.gz" diff --git a/user/perl-class-inspector/APKBUILD b/user/perl-class-inspector/APKBUILD index 64423c44a..e2255d2ad 100644 --- a/user/perl-class-inspector/APKBUILD +++ b/user/perl-class-inspector/APKBUILD @@ -2,7 +2,7 @@ # Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> pkgname=perl-class-inspector _pkgname=Class-Inspector -pkgver=1.32 +pkgver=1.34 pkgrel=0 pkgdesc="Inspect Perl classes and structures" url="https://metacpan.org/release/Class-Inspector" @@ -31,4 +31,4 @@ package() { find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete } -sha512sums="980654614d968e2fb61df864322f5c5248e352f0697a425539600c3549505f47b857d7856bc9d406ebc8757f8fc379a669f1f5085412f6fa48672c9db8a82df4 Class-Inspector-1.32.tar.gz" +sha512sums="c9f3f3dbc10c45811d0dffca3f31b9579200cd3b5288bb878bf97f38c4c153bb665632e5238ecce55bd3c515200c8d9500d5b1e461a9ea47e5ad011783323a80 Class-Inspector-1.34.tar.gz" diff --git a/user/perl-data-section/APKBUILD b/user/perl-data-section/APKBUILD new file mode 100644 index 000000000..1e874f9ba --- /dev/null +++ b/user/perl-data-section/APKBUILD @@ -0,0 +1,33 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-data-section +pkgver=0.200007 +pkgrel=0 +pkgdesc="Perl module for reading inline data in chunks" +url="https://metacpan.org/pod/Data::Section" +arch="noarch" +license="Artistic-1.0-Perl" +depends="perl perl-mro-compat perl-sub-exporter perl-test-failwarnings" +makedepends="" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/R/RJ/RJBS/Data-Section-$pkgver.tar.gz" +builddir="$srcdir/Data-Section-$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="0c23141ccc2041e8c1c222c95d6eab4b56e2d77a94c68507f67acbb62fa5132e9229e9680c9fff6ebbc6a47a42cf1943d6e5b50a5f0168c66193fb52aaa241f0 Data-Section-0.200007.tar.gz" diff --git a/user/perl-datetime-locale/APKBUILD b/user/perl-datetime-locale/APKBUILD index a70b6872b..829b21dcf 100644 --- a/user/perl-datetime-locale/APKBUILD +++ b/user/perl-datetime-locale/APKBUILD @@ -2,7 +2,7 @@ # Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> pkgname=perl-datetime-locale _pkgname=DateTime-Locale -pkgver=1.23 +pkgver=1.24 pkgrel=0 pkgdesc="Locale support for Perl DateTime" url="https://metacpan.org/release/DateTime-Locale" @@ -35,4 +35,4 @@ package() { find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete } -sha512sums="4404f6e5301b7623253e788b127fd59fffb1a4b24d97878168d8d9244bafb383424b9664ab78dbafe83bbd6cfa3d4686d4a4375a729c8fad157f36905868c884 DateTime-Locale-1.23.tar.gz" +sha512sums="0510df7e69bc7e50cb301510224cb084bf9d75f072ceb631d7c94ab07a6f7c11b64247c492054c0be3840bf5b13b6981f09426fd0b8e20a48901308cc0b5ffdb DateTime-Locale-1.24.tar.gz" diff --git a/user/perl-datetime-timezone/APKBUILD b/user/perl-datetime-timezone/APKBUILD index 9a1b35e06..cccb8ee11 100644 --- a/user/perl-datetime-timezone/APKBUILD +++ b/user/perl-datetime-timezone/APKBUILD @@ -2,7 +2,7 @@ # Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> pkgname=perl-datetime-timezone _pkgname=DateTime-TimeZone -pkgver=2.23 +pkgver=2.34 pkgrel=0 pkgdesc="Time zone object class and factory for Perl" url="https://metacpan.org/release/DateTime-TimeZone" @@ -33,4 +33,4 @@ package() { find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete } -sha512sums="e2edfde606bea8595df6f6cec9239fe6fe637d2c3ca2eb319da835c71061dab52ae8da0eb67da3d572b371f2e0820a35d681d9876e0c4dc8003e7504bdd41d06 DateTime-TimeZone-2.23.tar.gz" +sha512sums="8525542dfee39f8b889889db310d455b03dd0f270d391a06c337c46d9d457969e365ebf9b8fa42eef71b1dbf2bbd3e25c1ef710f19701a300729bc1816bcaa0c DateTime-TimeZone-2.34.tar.gz" diff --git a/user/perl-devel-hide/APKBUILD b/user/perl-devel-hide/APKBUILD new file mode 100644 index 000000000..6eea34be8 --- /dev/null +++ b/user/perl-devel-hide/APKBUILD @@ -0,0 +1,33 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-devel-hide +pkgver=0.0010 +pkgrel=0 +pkgdesc="Perl module for forcing the unavailability of modules for testing" +url="https://metacpan.org/pod/Devel::Hide" +arch="noarch" +license="Artistic-1.0-Perl" +depends="perl" +makedepends="" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/F/FE/FERREIRA/Devel-Hide-$pkgver.tar.gz" +builddir="$srcdir/Devel-Hide-$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="50bd9daf86239963e501936f09c0ee4b19be65deef22774910813a2502a2f60a6efcf7fbd586f2ea09c60ca1b77aa418a08043151f5a0d9915b7d881d66013c9 Devel-Hide-0.0010.tar.gz" diff --git a/user/perl-extutils-depends/APKBUILD b/user/perl-extutils-depends/APKBUILD index 2d62635f2..84a2a30be 100644 --- a/user/perl-extutils-depends/APKBUILD +++ b/user/perl-extutils-depends/APKBUILD @@ -1,7 +1,7 @@ # Contributor: Dan Theisen <djt@hxx.in> # Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> pkgname=perl-extutils-depends -pkgver=0.405 +pkgver=0.8000 pkgrel=0 pkgdesc="Easily build XS extensions that depend on XS extensions" url="https://metacpan.org/release/ExtUtils-Depends" @@ -31,4 +31,4 @@ package() { find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete } -sha512sums="b9983ad763ff0cb81c899bc24f3152f13c69e608304b6e4446bd07b9b13d039650f3f87544c0bdd29c67246ea2973f04a1ce0fccbffb566fe89fdbe0bb03f11b ExtUtils-Depends-0.405.tar.gz" +sha512sums="c2823e48fc6ae42677da958d8cbeb561a29839cc387224ecd545e1d81979cd963377210f9c5a9bf314e2fc6e0907190f0b867ed59e91f8eab6df91f8d0c91e5d ExtUtils-Depends-0.8000.tar.gz" diff --git a/user/perl-file-find-object-rule/APKBUILD b/user/perl-file-find-object-rule/APKBUILD index f8938a59c..498f0358e 100644 --- a/user/perl-file-find-object-rule/APKBUILD +++ b/user/perl-file-find-object-rule/APKBUILD @@ -1,7 +1,7 @@ # 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 +pkgver=0.0310 pkgrel=0 pkgdesc="Alternative Perl interface to File::Find::Object" url="https://metacpan.org/release/File-Find-Object-Rule" @@ -31,4 +31,4 @@ package() { find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete } -sha512sums="d4fe0bc369faa4870bb4f66b4e1212f0597ab0eb723dfb0ab6473428657067c0a72f9b9d6354a549117e553be1ddde222ede822555f94846ba110a2f82cc4b68 File-Find-Object-Rule-0.0309.tar.gz" +sha512sums="d77f600a43a45fddf84fd9689666fb90d3dc87fb444e575a111bcebec482d570201e591764513f345941983935f1761bf4e2704d1a70babd6b3ba12ba3d8a74d File-Find-Object-Rule-0.0310.tar.gz" diff --git a/user/perl-file-slurp/APKBUILD b/user/perl-file-slurp/APKBUILD index 5a0a67246..cec87b5ac 100644 --- a/user/perl-file-slurp/APKBUILD +++ b/user/perl-file-slurp/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> pkgname=perl-file-slurp -pkgver=9999.26 +pkgver=9999.27 pkgrel=0 pkgdesc="Simple and efficient file manipulation in Perl" url="https://metacpan.org/release/File-Slurp" @@ -31,4 +31,4 @@ package() { find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete } -sha512sums="dbe49038400df7dc32ee97cd8bcd037b1f11dc6d1230a7db1e33651971716c0c5ab65dbcdf93399b42b5a1e61ffd5ade45b8e4abc7000bad619249231cb79e08 File-Slurp-9999.26.tar.gz" +sha512sums="24a5e2b93f7fda65cbdf0e54687de3af511cfd3909dcf4c79610882bf4f119afdf2bd60de28fcb8d9155b94a29ca4f901e28930a810949e490ba1c584d7a6ee0 File-Slurp-9999.27.tar.gz" diff --git a/user/perl-games-solitaire-verify/APKBUILD b/user/perl-games-solitaire-verify/APKBUILD index 8854921a3..627484d38 100644 --- a/user/perl-games-solitaire-verify/APKBUILD +++ b/user/perl-games-solitaire-verify/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> pkgname=perl-games-solitaire-verify -pkgver=0.1900 +pkgver=0.2000 pkgrel=0 pkgdesc="Verify solutions to solitaire games" url="https://metacpan.org/release/Games-Solitaire-Verify" @@ -9,7 +9,7 @@ arch="noarch" license="MIT" depends="perl-class-xsaccessor perl-exception-class perl-list-moreutils" makedepends="perl-dev perl-module-build" -checkdepends="perl-test-differences" +checkdepends="perl-test-differences perl-path-tiny" 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" @@ -32,4 +32,4 @@ package() { find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete } -sha512sums="d161bc395f85f2aa404fe7aac893c840b302c7659e529b62bda9ad6c274508c4294c03c9037b9ab6a667e8a90292ef83445c88be26e42dde89625224f85027f0 Games-Solitaire-Verify-0.1900.tar.gz" +sha512sums="4abc5cd68bc57f96115a2f273aa16076b2f2ff50a597a8e1f4bf5b6f6dcb26771346d7cff3cadfc10eb1f8584c79141b06ecd6b07b6b19610405dc80977d9382 Games-Solitaire-Verify-0.2000.tar.gz" diff --git a/user/perl-http-headers-fast/APKBUILD b/user/perl-http-headers-fast/APKBUILD index b7496496b..ec547543e 100644 --- a/user/perl-http-headers-fast/APKBUILD +++ b/user/perl-http-headers-fast/APKBUILD @@ -2,7 +2,7 @@ # Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> pkgname=perl-http-headers-fast _pkgname=HTTP-Headers-Fast -pkgver=0.21 +pkgver=0.22 pkgrel=0 pkgdesc="Fast HTTP header parsing for Perl" url="https://metacpan.org/release/HTTP-Headers-Fast" @@ -32,4 +32,4 @@ package() { find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete } -sha512sums="ce04b70f0748ee2d5911c772149b71c8c130d172267c11716151c1ca21b26e8c793af22227098d73a9253c9bfae57d618b6d67454c41862e2ba3a9798c067cf6 HTTP-Headers-Fast-0.21.tar.gz" +sha512sums="60435c11b5846c1a6256227c7edb00fd444c76346797424f186f971c5bebec93b1c84be805e0a4589c92b8c571d0c3e0332436b21ad099677a31544305d819b2 HTTP-Headers-Fast-0.22.tar.gz" diff --git a/user/perl-importer/APKBUILD b/user/perl-importer/APKBUILD new file mode 100644 index 000000000..d4d202cda --- /dev/null +++ b/user/perl-importer/APKBUILD @@ -0,0 +1,33 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-importer +pkgver=0.025 +pkgrel=0 +pkgdesc="Alternative interface to Perl's Exporter module" +url="https://metacpan.org/pod/Importer" +arch="noarch" +license="Artistic-1.0-Perl" +depends="perl" +makedepends="" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/E/EX/EXODIST/Importer-$pkgver.tar.gz" +builddir="$srcdir/Importer-$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="99632c7a425fe7d965e052b2fc1fa8c34c4fe44c39899d280adaed8490b980f1fd7cc70dc974b45f97ce67c88163177bc2a11be44f04324241cc8d097e0afed8 Importer-0.025.tar.gz" diff --git a/user/perl-indirect/APKBUILD b/user/perl-indirect/APKBUILD new file mode 100644 index 000000000..54e814d1e --- /dev/null +++ b/user/perl-indirect/APKBUILD @@ -0,0 +1,33 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-indirect +pkgver=0.38 +pkgrel=0 +pkgdesc="Perl module for lexically warning about indirect method calls" +url="https://metacpan.org/pod/indirect" +arch="all" +license="Artistic-1.0-Perl" +depends="" +makedepends="perl-dev perl-extutils-depends" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/V/VP/VPIT/indirect-$pkgver.tar.gz" +builddir="$srcdir/indirect-$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="1ae363d2b2961be8495168a870bf941953a7845b0f3e9c7e9b267affc0b0392e1747ca4edd484ac98ddeef70b1a1cf28672bf1b9289847cb193409914e2f4673 indirect-0.38.tar.gz" diff --git a/user/perl-inline-c/APKBUILD b/user/perl-inline-c/APKBUILD index 50d298bb0..f5065e0c5 100644 --- a/user/perl-inline-c/APKBUILD +++ b/user/perl-inline-c/APKBUILD @@ -1,7 +1,7 @@ # Contributor: Dan Theisen <djt@hxx.in> # Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> pkgname=perl-inline-c -pkgver=0.78 +pkgver=0.80 pkgrel=0 pkgdesc="C Language Support for Inline" url="https://metacpan.org/pod/Inline::C" @@ -32,4 +32,4 @@ package() { find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete } -sha512sums="368e68dfb9f1700534d9b391090e340172e3adde5fe15576f883e9341047fec35cea8660751883b27e128ad91dda363d513547368097a989457d669bbbdc8ce4 Inline-C-0.78.tar.gz" +sha512sums="f68eb9478374ef13a6eb0be6c5adc12ba9c052834ef45db6acc0c794ac295d5b47ffda57dd4d0b15345be96aa21ccaab8bf7e2be0ac0bc4cef73be782a346cf0 Inline-C-0.80.tar.gz" diff --git a/user/perl-inline/APKBUILD b/user/perl-inline/APKBUILD index 0c2dcd8d7..c3343d150 100644 --- a/user/perl-inline/APKBUILD +++ b/user/perl-inline/APKBUILD @@ -1,7 +1,7 @@ # Contributor: Dan Theisen <djt@hxx.in> # Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> pkgname=perl-inline -pkgver=0.81 +pkgver=0.82 pkgrel=0 pkgdesc="Write Perl Subroutines in Other Programming Languages" url="https://metacpan.org/pod/Inline" @@ -32,4 +32,4 @@ package() { find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete } -sha512sums="ea52647af6a51e6902d78c448e53814f1f3de225d3cf5530764d880f604ddea6dc6e6272619a918c213ce611bf3643f602e779d56e503245987b86363cb0501a Inline-0.81.tar.gz" +sha512sums="c53d8ae250e8463bd8973be96cf9bc70cc46fc937fb99990f4c1872c30411356f63ce785a10b55234e0d032a123a88c8192516ad9ad19ed50c0966b77669806a Inline-0.82.tar.gz" diff --git a/user/perl-json-xs/APKBUILD b/user/perl-json-xs/APKBUILD index 758211fa0..cd09f8f87 100644 --- a/user/perl-json-xs/APKBUILD +++ b/user/perl-json-xs/APKBUILD @@ -1,7 +1,7 @@ # Contributor: Dan Theisen <djt@hxx.in> # Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> pkgname=perl-json-xs -pkgver=4.01 +pkgver=4.02 pkgrel=0 pkgdesc="JSON serialising/deserialising, done correctly and fast" url="https://metacpan.org/pod/JSON::XS" @@ -31,4 +31,4 @@ package() { find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete } -sha512sums="283adfa5b5b0c8e8c0b8d86c92d521695bdc306249be30555cf8f2833b8da7196429c9e1269106a687ef9170051ddd3cbad4f671e97b0fc1e2aa4d73a1a2960f JSON-XS-4.01.tar.gz" +sha512sums="4a8fdf8d81cdd6e38c3c5672621d38ef6f63a09ca3a74e98fbb21e679273c347d2a3b8c2233c8e813987d2728081fb535223ea3f705d33a7016b76d0e76ffd61 JSON-XS-4.02.tar.gz" diff --git a/user/perl-lib-relative/APKBUILD b/user/perl-lib-relative/APKBUILD index daeb17687..b717ab88f 100644 --- a/user/perl-lib-relative/APKBUILD +++ b/user/perl-lib-relative/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> pkgname=perl-lib-relative -pkgver=0.002 +pkgver=1.000 pkgrel=0 pkgdesc="Add paths relative to the current file to Perl @INC" url="https://metacpan.org/release/lib-relative" @@ -30,4 +30,4 @@ package() { find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete } -sha512sums="ebe552fbc4967dd8615e2a1ecde69000358b3909095c66b557a6dd68c1a4744ca586dc91d2cf1b679a57ef981ec79a4689ba9c3f846393f4f48e528e85c326b0 lib-relative-0.002.tar.gz" +sha512sums="1b4de00abe4ba5190259414123d8cbdde9bf43a525a32d7ef07f7faa3a88ed9d40babbec6f3c49a0a3550c63ffb8cbf79b0c7a6204568549d30145bbd02f8a55 lib-relative-1.000.tar.gz" diff --git a/user/perl-multidimensional/APKBUILD b/user/perl-multidimensional/APKBUILD new file mode 100644 index 000000000..ef431756c --- /dev/null +++ b/user/perl-multidimensional/APKBUILD @@ -0,0 +1,33 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-multidimensional +pkgver=0.014 +pkgrel=0 +pkgdesc="Perl module for disabling multidimensional array emulation" +url="https://metacpan.org/pod/multidimensional" +arch="all" +license="Artistic-1.0-Perl" +depends="" +makedepends="perl-b-hooks-op-check perl-dev perl-extutils-depends" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/I/IL/ILMARI/multidimensional-$pkgver.tar.gz" +builddir="$srcdir/multidimensional-$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="94c9dabb3023165a8dd140ef791e4aab980e3b604eae06ed0e29290aab67a9302f2cde4c8b394de0b4c55c5f78ce4510db902d615d665bf60b12ec409f341043 multidimensional-0.014.tar.gz" diff --git a/user/perl-number-range/APKBUILD b/user/perl-number-range/APKBUILD new file mode 100644 index 000000000..e5aececf7 --- /dev/null +++ b/user/perl-number-range/APKBUILD @@ -0,0 +1,33 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-number-range +pkgver=0.12 +pkgrel=0 +pkgdesc="Perl module for working with number ranges" +url="https://metacpan.org/pod/Number::Range" +arch="noarch" +license="Artistic-1.0-Perl" +depends="perl" +makedepends="" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/L/LA/LARRYSH/Number-Range-$pkgver.tar.gz" +builddir="$srcdir/Number-Range-$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="d5c2ed41f2eb6caa013d10f4cad295b73157323fcb0496c4e10f4673507965f65f18433d5f4b03e8180fa2108b7e87cf0e23255c493431b5ddeb49562ed997d8 Number-Range-0.12.tar.gz" diff --git a/user/perl-path-iterator-rule/APKBUILD b/user/perl-path-iterator-rule/APKBUILD new file mode 100644 index 000000000..5fbd3f7be --- /dev/null +++ b/user/perl-path-iterator-rule/APKBUILD @@ -0,0 +1,34 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-path-iterator-rule +pkgver=1.014 +pkgrel=0 +pkgdesc="Perl module for terative, recursive file-finding" +url="https://metacpan.org/pod/Path::Iterator::Rule" +arch="noarch" +license="Apache-2.0" +depends="perl perl-file-pushd perl-number-compare perl-path-tiny perl-test-deep + perl-test-filename perl-text-glob perl-try-tiny" +makedepends="" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/D/DA/DAGOLDEN/Path-Iterator-Rule-$pkgver.tar.gz" +builddir="$srcdir/Path-Iterator-Rule-$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="d401d3b0f59ffd15d088dc3859a118fb689d6126e5dbc7602db123ae01c461a12831768e4485732781e05d33c69c2f7be90475048633df029ba870346459c591 Path-Iterator-Rule-1.014.tar.gz" diff --git a/user/perl-pod-constants/APKBUILD b/user/perl-pod-constants/APKBUILD new file mode 100644 index 000000000..bfb2802d7 --- /dev/null +++ b/user/perl-pod-constants/APKBUILD @@ -0,0 +1,34 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-pod-constants +pkgver=0.19 +pkgrel=0 +pkgdesc="Perl module for pulling constants from POD text" +url="https://metacpan.org/pod/Pod::Constants" +arch="noarch" +license="Artistic-2.0" +depends="perl" +makedepends="" +install="" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/M/MG/MGV/Pod-Constants-$pkgver.tar.gz" +builddir="$srcdir/Pod-Constants-$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="4c7b7ccdede87f0069bf100406de5b2320b5f9cb0363d413e90b419e512d4322114851d78fdd7a1bce63347ee5986ecd397b11579b91eee6e46d9b0a82b0b64a Pod-Constants-0.19.tar.gz" diff --git a/user/perl-probe-perl/APKBUILD b/user/perl-probe-perl/APKBUILD new file mode 100644 index 000000000..6cc331ddd --- /dev/null +++ b/user/perl-probe-perl/APKBUILD @@ -0,0 +1,33 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=perl-probe-perl +pkgver=0.03 +pkgrel=0 +pkgdesc="Perl module for acquiring information about the active Perl interpreter" +url="https://metacpan.org/pod/Probe::Perl" +arch="noarch" +license="Artistic-1.0-Perl" +depends="perl" +makedepends="" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/K/KW/KWILLIAMS/Probe-Perl-$pkgver.tar.gz" +builddir="$srcdir/Probe-Perl-$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="739bdb9d1a74eb77ab885a5aca861a1915cadbb1002bb4cb0d21fc6940ae6b3aa64ee52951ac8b2dca41c9e8fe188e17ae5f3c848c4a1caaf66fec5d25bef49c Probe-Perl-0.03.tar.gz" diff --git a/user/perl-regexp-pattern-license/APKBUILD b/user/perl-regexp-pattern-license/APKBUILD new file mode 100644 index 000000000..7dd444b1f --- /dev/null +++ b/user/perl-regexp-pattern-license/APKBUILD @@ -0,0 +1,34 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-regexp-pattern-license +pkgver=3.1.92 +pkgrel=0 +pkgdesc="Perl module for regex-matching legal licenses" +url="https://metacpan.org/pod/Regexp::Pattern::License" +arch="noarch" +license="GPL-3.0+" +depends="perl perl-regexp-pattern perl-strictures perl-try-tiny" +makedepends="" +install="" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/J/JO/JONASS/Regexp-Pattern-License-v$pkgver.tar.gz" +builddir="$srcdir/Regexp-Pattern-License-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="f574479fb7c36de30fe9cf396920c239ced39ca208fb4ab64bafba5addb120043e66b30938b3d2ed1343f6e67bd5200025973a268af87138609ccb46c4ee4bc6 Regexp-Pattern-License-v3.1.92.tar.gz" diff --git a/user/perl-regexp-pattern/APKBUILD b/user/perl-regexp-pattern/APKBUILD new file mode 100644 index 000000000..0990e8cba --- /dev/null +++ b/user/perl-regexp-pattern/APKBUILD @@ -0,0 +1,34 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-regexp-pattern +pkgver=0.2.8 +pkgrel=0 +pkgdesc="Perl framework for regex collection standardization" +url="https://metacpan.org/pod/Regexp::Pattern" +arch="noarch" +license="Artistic-1.0-Perl" +depends="perl perl-test-exception" +makedepends="" +install="" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/P/PE/PERLANCAR/Regexp-Pattern-$pkgver.tar.gz" +builddir="$srcdir/Regexp-Pattern-$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="f2e1f1387b8ea563ad8066c8cdc1b94b2e5ba742b3833ab7764c9541974b8758998090840f74962250a8f5f3a7fd1cd03afbcf41ed942fc2cc1054ee15b4950e Regexp-Pattern-0.2.8.tar.gz" diff --git a/user/perl-software-license/APKBUILD b/user/perl-software-license/APKBUILD new file mode 100644 index 000000000..8e65bc360 --- /dev/null +++ b/user/perl-software-license/APKBUILD @@ -0,0 +1,33 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-software-license +pkgver=0.103014 +pkgrel=0 +pkgdesc="Perl module for generating prefilled license text" +url="https://metacpan.org/pod/Software::License" +arch="noarch" +license="Artistic-1.0-Perl" +depends="perl perl-data-section perl-text-template perl-try-tiny" +makedepends="" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/L/LE/LEONT/Software-License-$pkgver.tar.gz" +builddir="$srcdir/Software-License-$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="8012f9d3e8671bdcbaf52f6790f6cd2f6a0510883bb40115c222c8c685aed6697ba33b3f9df8d853841cd2eef0806d919c9038b6ba7b1057f475b3b63457069d Software-License-0.103014.tar.gz" diff --git a/user/perl-sort-key/APKBUILD b/user/perl-sort-key/APKBUILD new file mode 100644 index 000000000..3fd065c65 --- /dev/null +++ b/user/perl-sort-key/APKBUILD @@ -0,0 +1,34 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-sort-key +pkgver=1.33 +pkgrel=0 +pkgdesc="Perl module for fast sorting" +url="https://metacpan.org/pod/Sort::Key" +arch="all" +license="Artistic-1.0-Perl" +depends="" +makedepends="perl-dev" +install="" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/S/SA/SALVA/Sort-Key-$pkgver.tar.gz" +builddir="$srcdir/Sort-Key-$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="cf87cd2f5c0eea662dbdaf7faed5646ebd63925c71a093a79a9980d6de290b1128443954675893f263961e68d1db0e9e4ca1412a2734ce8dcdd271bcf4f1be17 Sort-Key-1.33.tar.gz" diff --git a/user/perl-strictures/APKBUILD b/user/perl-strictures/APKBUILD new file mode 100644 index 000000000..a4c21c402 --- /dev/null +++ b/user/perl-strictures/APKBUILD @@ -0,0 +1,33 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-strictures +pkgver=2.000006 +pkgrel=0 +pkgdesc="Perl module for using strict and fatal warnings" +url="https://metacpan.org/pod/strictures" +arch="noarch" +license="Artistic-1.0-Perl" +depends="perl-bareword-filehandles perl-indirect perl-multidimensional" +makedepends="perl-dev" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/H/HA/HAARG/strictures-$pkgver.tar.gz" +builddir="$srcdir/strictures-$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="670857a491fa58b85b10ee3bb5c6b7be845798926327ff3a32a9b78cb86bbbb95bfcc358983ece766dc8ef19a1eae12091ec9d9a7fef6d3f5d44ee4f8c04b7d2 strictures-2.000006.tar.gz" diff --git a/user/perl-string-copyright/APKBUILD b/user/perl-string-copyright/APKBUILD new file mode 100644 index 000000000..518c486b2 --- /dev/null +++ b/user/perl-string-copyright/APKBUILD @@ -0,0 +1,33 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-string-copyright +pkgver=0.003006 +pkgrel=0 +pkgdesc="Perl module for normalizing copyright text" +url="https://metacpan.org/pod/String::Copyright" +arch="noarch" +license="GPL-3.0+" +depends="perl perl-exporter-tiny perl-number-range" +makedepends="" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/J/JO/JONASS/String-Copyright-$pkgver.tar.gz" +builddir="$srcdir/String-Copyright-$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="7852d96cbe465dde14b4c093f77374b530967412ef95a98703fe838511e405ea9744e4dbfa314bc5a33fc23b160d8a4866654ad60da1bfb07853263f1c11cd3f String-Copyright-0.003006.tar.gz" diff --git a/user/perl-string-escape/APKBUILD b/user/perl-string-escape/APKBUILD new file mode 100644 index 000000000..33d612291 --- /dev/null +++ b/user/perl-string-escape/APKBUILD @@ -0,0 +1,33 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=perl-string-escape +pkgver=2010.002 +pkgrel=0 +pkgdesc="Perl module for escaping strings" +url="https://metacpan.org/pod/String::Escape" +arch="noarch" +license="Artistic-1.0-Perl" +depends="perl" +makedepends="" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/E/EV/EVO/String-Escape-$pkgver.tar.gz" +builddir="$srcdir/String-Escape-$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="668e196bbd95b4e9e5fc9ae3aebe0e7f1990362973bd027f2f3728f212786bc2104141ced3e024006b3ed22fa6345b968440029c98b87cbc299ac192221724c7 String-Escape-2010.002.tar.gz" diff --git a/user/perl-sub-info/APKBUILD b/user/perl-sub-info/APKBUILD new file mode 100644 index 000000000..fc9f606f0 --- /dev/null +++ b/user/perl-sub-info/APKBUILD @@ -0,0 +1,33 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-sub-info +pkgver=0.002 +pkgrel=0 +pkgdesc="Perl module for introspecting subroutines" +url="https://metacpan.org/pod/Sub::Info" +arch="noarch" +license="Artistic-1.0-Perl" +depends="perl perl-importer" +makedepends="" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/E/EX/EXODIST/Sub-Info-$pkgver.tar.gz" +builddir="$srcdir/Sub-Info-$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="e3ad2c8b270a44f9de2d5b71845a4a21f363a234edf2ddb9942c2fb2e4d765eedff3653a047f025b9d1dfaeff32ddd58aeff7f81fa42e6f4b57f5ca6311519b3 Sub-Info-0.002.tar.gz" diff --git a/user/perl-sub-quote/APKBUILD b/user/perl-sub-quote/APKBUILD index 778b7f793..d8f15cd71 100644 --- a/user/perl-sub-quote/APKBUILD +++ b/user/perl-sub-quote/APKBUILD @@ -1,7 +1,7 @@ # Contributor: Dan Theisen <djt@hxx.in> # Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> pkgname=perl-sub-quote -pkgver=2.005001 +pkgver=2.006003 pkgrel=0 pkgdesc="Efficient generation of subroutines via string eval" url="https://metacpan.org/release/Sub-Quote" @@ -31,4 +31,4 @@ package() { find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete } -sha512sums="3c32348c8ac6a8831faf75b084a6108657a3cfc0841fda8d8a182c4ca38c88f800bc60a01df07a2010b9a877e120fc46720f17f11092de5e97f40c36854ba24c Sub-Quote-2.005001.tar.gz" +sha512sums="d486556750fa8cf8152f86204ed2156ff33dd4ba467955c3f9621b67b68acb543f953eb1476297a85d3ee2bc9755072491ad9d34c33a496d5ba5828c687f6d83 Sub-Quote-2.006003.tar.gz" diff --git a/user/perl-term-size-any/APKBUILD b/user/perl-term-size-any/APKBUILD new file mode 100644 index 000000000..32d132fb1 --- /dev/null +++ b/user/perl-term-size-any/APKBUILD @@ -0,0 +1,33 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-term-size-any +pkgver=0.002 +pkgrel=0 +pkgdesc="Perl module for retrieving terminal sizing" +url="https://metacpan.org/pod/Term::Size::Any" +arch="noarch" +license="Artistic-1.0-Perl" +depends="perl perl-devel-hide perl-term-size-perl" +makedepends="" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/F/FE/FERREIRA/Term-Size-Any-$pkgver.tar.gz" +builddir="$srcdir/Term-Size-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="e34d7e8d03e71e9f1758551e702711550804560a3165e0e9cea6756a7d87043e0408123b8c7997c79d6d77e7d48f167ed5aa12e4d572b1d787ef638ff71a3a1d Term-Size-Any-0.002.tar.gz" diff --git a/user/perl-term-size-perl/APKBUILD b/user/perl-term-size-perl/APKBUILD new file mode 100644 index 000000000..e00a4aeeb --- /dev/null +++ b/user/perl-term-size-perl/APKBUILD @@ -0,0 +1,33 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-term-size-perl +pkgver=0.031 +pkgrel=0 +pkgdesc="Pure Perl module for retrieving terminal sizing" +url="https://metacpan.org/pod/Term::Size::Perl" +arch="noarch" +license="Artistic-1.0-Perl" +depends="perl" +makedepends="" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/F/FE/FERREIRA/Term-Size-Perl-$pkgver.tar.gz" +builddir="$srcdir/Term-Size-Perl-$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="7babfb7637e795f1826a964a64cdca48bc7d92dc2cdff0fbdf62f2462fcd2be81475703f577baa18ce3df24f6ae8c103ca19ea53aa3b78733391ed456fcb66bc Term-Size-Perl-0.031.tar.gz" diff --git a/user/perl-term-table/APKBUILD b/user/perl-term-table/APKBUILD new file mode 100644 index 000000000..8b38da8b2 --- /dev/null +++ b/user/perl-term-table/APKBUILD @@ -0,0 +1,33 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-term-table +pkgver=0.013 +pkgrel=0 +pkgdesc="Perl module for producing pretty tables for terminal applications" +url="https://metacpan.org/pod/Term::Table" +arch="noarch" +license="Artistic-1.0-Perl" +depends="perl perl-importer perl-test-simple" +makedepends="" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/E/EX/EXODIST/Term-Table-$pkgver.tar.gz" +builddir="$srcdir/Term-Table-$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="e327b0856b1f3d97056f3bd057fa3b22b7dd3b1263313f2a3f81cf0986c2dc5692c7e40e7eb1de321cb718fce0dcfd9cc4ba57ad159a0b38ee3f0af982ce8d46 Term-Table-0.013.tar.gz" diff --git a/user/perl-test-differences/APKBUILD b/user/perl-test-differences/APKBUILD index 56d34bce8..25948de34 100644 --- a/user/perl-test-differences/APKBUILD +++ b/user/perl-test-differences/APKBUILD @@ -1,7 +1,7 @@ # Contributor: Dan Theisen <djt@hxx.in> # Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> pkgname=perl-test-differences -pkgver=0.65 +pkgver=0.67 pkgrel=0 pkgdesc="Test strings and data structures and show differences if not ok" url="https://metacpan.org/pod/Test::Differences" @@ -31,4 +31,4 @@ package() { find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete } -sha512sums="298058b0ca94b865ac84bbed86275e1d2c3f9eadafc70c017d471d39a78a1370112aa63c09ff072621b12b1e6a84e9b456fe05e17d0d2893e2f5fc9946f81b87 Test-Differences-0.65.tar.gz" +sha512sums="72f5e70d5ed953f50e7fff36645612b8e531354a217de5e7780ee76d72c95e1aed1f1f23a1aaf447b2893246d0c8d0452f2946afa820966d85b2c99dcf9b5ed9 Test-Differences-0.67.tar.gz" diff --git a/user/perl-test-failwarnings/APKBUILD b/user/perl-test-failwarnings/APKBUILD new file mode 100644 index 000000000..a31710567 --- /dev/null +++ b/user/perl-test-failwarnings/APKBUILD @@ -0,0 +1,33 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-test-failwarnings +pkgver=0.008 +pkgrel=0 +pkgdesc="Perl module for failing tests on caught warnings" +url="https://metacpan.org/pod/Test::FailWarnings" +arch="noarch" +license="Apache-2.0" +depends="perl perl-capture-tiny" +makedepends="" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/D/DA/DAGOLDEN/Test-FailWarnings-$pkgver.tar.gz" +builddir="$srcdir/Test-FailWarnings-$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="7bffcc18191326095d99ad01be6426f4d9d927f769a156318f9abfea67da6adfecb657bad89390740c9f531fe69c717afa1d250258eed63d127bf10cbbf2bd51 Test-FailWarnings-0.008.tar.gz" diff --git a/user/perl-test-filename/APKBUILD b/user/perl-test-filename/APKBUILD new file mode 100644 index 000000000..5110fe5b5 --- /dev/null +++ b/user/perl-test-filename/APKBUILD @@ -0,0 +1,33 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-test-filename +pkgver=0.03 +pkgrel=0 +pkgdesc="Perl module for portable filename comparison" +url="https://metacpan.org/pod/Test::Filename" +arch="noarch" +license="Apache-2.0" +depends="perl perl-path-tiny perl-try-tiny" +makedepends="" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/D/DA/DAGOLDEN/Test-Filename-$pkgver.tar.gz" +builddir="$srcdir/Test-Filename-$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="7ceb0d06937b9701e45629008946fd125fa7a97386f0cbacd8571119ba68699db3acb999d973ed4e401a32ccacbd3ba1f51de7a8c93a95dff6b64605326be235 Test-Filename-0.03.tar.gz" diff --git a/user/perl-test-more-utf8/APKBUILD b/user/perl-test-more-utf8/APKBUILD new file mode 100644 index 000000000..54d63ff40 --- /dev/null +++ b/user/perl-test-more-utf8/APKBUILD @@ -0,0 +1,33 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-test-more-utf8 +pkgver=0.05 +pkgrel=0 +pkgdesc="UTF-8 extensions for Perl Test::More module" +url="https://metacpan.org/pod/Test::More::UTF8" +arch="noarch" +license="Artistic-1.0-Perl" +depends="perl" +makedepends="" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/M/MO/MONS/Test-More-UTF8-$pkgver.tar.gz" +builddir="$srcdir/Test-More-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="9a1ba4216037aa1517ef57b2e5a40bd78f2f3aaaff3683a4e45f10d4b574b5e2752509a5620d8a76156135b4fa7182320a182a5a6900bf450979d805d7dc05a3 Test-More-UTF8-0.05.tar.gz" diff --git a/user/perl-test-perltidy/APKBUILD b/user/perl-test-perltidy/APKBUILD index 392257c83..428c833cf 100644 --- a/user/perl-test-perltidy/APKBUILD +++ b/user/perl-test-perltidy/APKBUILD @@ -1,16 +1,17 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> pkgname=perl-test-perltidy -pkgver=20130104 +pkgver=20190402 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" +checkdepends="perl-path-tiny" makedepends="perl-dev" subpackages="$pkgname-doc" -source="https://cpan.metacpan.org/authors/id/L/LA/LARRYL/Test-PerlTidy-$pkgver.tar.gz" +source="https://cpan.metacpan.org/authors/id/S/SH/SHLOMIF/Test-PerlTidy-$pkgver.tar.gz" builddir="$srcdir/Test-PerlTidy-$pkgver" build() { @@ -30,4 +31,4 @@ package() { find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete } -sha512sums="47d77083ec6f4808ac60bdb19431b3013b996f83506b0af490a6fa52f4f71a8c1812cf21b447568661495c845d524f9c2be6842380bd41c9ccfe22ec6acd802f Test-PerlTidy-20130104.tar.gz" +sha512sums="0fcdb45fff1f6d29ccd4a88b88e6c81a3e12d32ec618b33cb5751582c5c0580a628f7cddbc7c657e17c6626ac6a4d7c3b259d4d1bede8617a48adadb8985cd1a Test-PerlTidy-20190402.tar.gz" diff --git a/user/perl-test-script/APKBUILD b/user/perl-test-script/APKBUILD new file mode 100644 index 000000000..11eb89603 --- /dev/null +++ b/user/perl-test-script/APKBUILD @@ -0,0 +1,34 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-test-script +pkgver=1.25 +pkgrel=0 +pkgdesc="Perl module for cross-platform script testing" +url="https://metacpan.org/pod/Test::Script" +arch="noarch" +license="Artistic-1.0-Perl" +depends="perl perl-capture-tiny perl-probe-perl perl-test2-suite" +makedepends="" +install="" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/P/PL/PLICEASE/Test-Script-$pkgver.tar.gz" +builddir="$srcdir/Test-Script-$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="307aeb0692ff4f116bbdadced22526ee583df184742ffde7922e18e2949889b309f57d12dfdc4fef65d55489634dedd77d57fa76ba7b12fc3e58c3bb71b6d81b Test-Script-1.25.tar.gz" diff --git a/user/perl-test2-suite/APKBUILD b/user/perl-test2-suite/APKBUILD new file mode 100644 index 000000000..6382858fc --- /dev/null +++ b/user/perl-test2-suite/APKBUILD @@ -0,0 +1,37 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-test2-suite +pkgver=0.000120 +pkgrel=0 +pkgdesc="Collection of Perl modules in the Test2 namespace" +url="https://metacpan.org/pod/Test2::Suite" +arch="noarch" +license="Artistic-1.0-Perl" +depends="perl perl-importer perl-module-pluggable perl-scope-guard + perl-sub-info perl-term-table perl-test-simple + + perl-sub-name perl-term-readkey perl-term-size-any + perl-unicode-linebreak" +makedepends="" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/E/EX/EXODIST/Test2-Suite-$pkgver.tar.gz" +builddir="$srcdir/Test2-Suite-$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="bdaa2ee8eb6e4444b40598f42a87b29b7b049b8f8cd1629d3bd0c4a56de0579b610898312e0a6cb039f4107d4e8ca00510b31485e96a1e01db87a28102ea2c92 Test2-Suite-0.000120.tar.gz" diff --git a/user/perl-text-template/APKBUILD b/user/perl-text-template/APKBUILD new file mode 100644 index 000000000..5dc3d3ad6 --- /dev/null +++ b/user/perl-text-template/APKBUILD @@ -0,0 +1,33 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> +pkgname=perl-text-template +pkgver=1.55 +pkgrel=0 +pkgdesc="Perl module for expanding embedded Perl in templates" +url="https://metacpan.org/pod/Text::Template" +arch="noarch" +license="Artistic-1.0-Perl" +depends="perl perl-test-more-utf8 perl-test-warnings" +makedepends="" +subpackages="$pkgname-doc" +source="https://cpan.metacpan.org/authors/id/M/MS/MSCHOUT/Text-Template-$pkgver.tar.gz" +builddir="$srcdir/Text-Template-$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="19a281cdfc56483bc717be5ae2367ae0edd27e2d31a693f9e54a660ec21cb6b51a8e5eae2e659d0053f59cdb6b9266cf1e175fd55e1abf9f9362c973c44d8173 Text-Template-1.55.tar.gz" diff --git a/user/perl-yaml-libyaml/APKBUILD b/user/perl-yaml-libyaml/APKBUILD index 42578f61e..87a8c5a80 100644 --- a/user/perl-yaml-libyaml/APKBUILD +++ b/user/perl-yaml-libyaml/APKBUILD @@ -1,7 +1,7 @@ # Contributor: Dan Theisen <djt@hxx.in> # Maintainer: Adélie Perl Team <adelie-perl@lists.adelielinux.org> pkgname=perl-yaml-libyaml -pkgver=0.76 +pkgver=0.77 pkgrel=0 pkgdesc="Perl YAML Serialization using XS and libyaml" url="https://metacpan.org/pod/YAML::LibYAML" @@ -33,4 +33,4 @@ package() { find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete } -sha512sums="1a5058cc957bc891aaf1468bd03b7a169372f2711ce027ec701126f8c3d2c15d2029946ca2db77438cf8d43a3a1964238c50fc1a3da20addb3a525733b4499c8 YAML-LibYAML-0.76.tar.gz" +sha512sums="20d35718ebd318c2e7cfd618274dafb9c4489596e6ee77ca957f58d4971b7c712cbbf71517c9b29f316d0059b1b9f375aab57facc895c61c200cc0e40589de33 YAML-LibYAML-0.77.tar.gz" diff --git a/user/phonon-vlc/APKBUILD b/user/phonon-vlc/APKBUILD index 4d1d8a3c2..19a7ec59e 100644 --- a/user/phonon-vlc/APKBUILD +++ b/user/phonon-vlc/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=phonon-vlc -pkgver=0.10.1 +pkgver=0.10.2 pkgrel=0 pkgdesc="Phonon backend utilising VLC for media playback" url="https://www.kde.org/" @@ -10,9 +10,9 @@ license="LGPL-2.1+" depends="vlc" makedepends="cmake extra-cmake-modules qt5-qtbase-dev phonon-dev vlc-dev" source="https://download.kde.org/stable/phonon/phonon-backend-vlc/$pkgver/phonon-backend-vlc-$pkgver.tar.xz" +builddir="$srcdir/phonon-backend-vlc-$pkgver" build() { - cd "$builddir" if [ "$CBUILD" != "$CHOST" ]; then CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux" fi @@ -29,13 +29,11 @@ build() { } check() { - cd "$builddir" CTEST_OUTPUT_ON_FAILURE=TRUE ctest } package() { - cd "$builddir" make DESTDIR="$pkgdir" install } -sha512sums="fa94298a8236c29f792285d3f288140d244e0eacba02511a32ee56b5bace50f92a93a714b5c44dc5bafb15b2a9d5ae792231e78dce8ca1a45ab3a328492911df phonon-backend-vlc-0.10.1.tar.xz" +sha512sums="3c4e7c60582d7871b209f4b38b139f43ab5f97618399164ecc649cd0e077a1d4c7848bc5c5c213d747cf7e5f1252ff53ded745880dfd36247494479840789ba5 phonon-backend-vlc-0.10.2.tar.xz" diff --git a/user/phonon/APKBUILD b/user/phonon/APKBUILD index af4ac50f5..c89f68a37 100644 --- a/user/phonon/APKBUILD +++ b/user/phonon/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=phonon -pkgver=4.10.1 +pkgver=4.10.2 pkgrel=0 pkgdesc="Qt library for playing multimedia files" url="https://phonon.kde.org/" @@ -14,7 +14,6 @@ subpackages="$pkgname-dev $pkgname-designer" source="https://download.kde.org/stable/phonon/$pkgver/phonon-$pkgver.tar.xz" build() { - cd "$builddir" if [ "$CBUILD" != "$CHOST" ]; then CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux" fi @@ -34,12 +33,10 @@ build() { } check() { - cd "$builddir" CTEST_OUTPUT_ON_FAILURE=TRUE ctest } package() { - cd "$builddir" make DESTDIR="$pkgdir" install } @@ -52,4 +49,4 @@ designer() { rmdir "$pkgdir"/usr/lib/qt5/plugins || true # Never mind } -sha512sums="a1cc0960c587d09a2fb0f43ae82147df133c34cba7bf01f5720b4b27aca4dda1d83444e89e40fb2f25828d152f89ccfff56d2d4649007c57b7df9eca8c64c007 phonon-4.10.1.tar.xz" +sha512sums="205c2f41691ed37a2b24aa5e900f7720ba024d2046ea4bf0a9b9c46235ffd72dfb4010287ccf753b13e395f84c2a202cbb76454806de3519faf52c3ac7001c4e phonon-4.10.2.tar.xz" diff --git a/user/php7/APKBUILD b/user/php7/APKBUILD index 187646dd3..c220704c6 100644 --- a/user/php7/APKBUILD +++ b/user/php7/APKBUILD @@ -36,7 +36,7 @@ pkgname=php7 _pkgname=php -pkgver=7.2.16 +pkgver=7.2.17 pkgrel=0 _apiver=20170718 pkgdesc="The PHP7 language runtime engine" @@ -82,7 +82,7 @@ makedepends="autoconf subpackages="$pkgname-dev $pkgname-doc $pkgname-apache $pkgname-phpdbg $pkgname-embed $pkgname-litespeed $pkgname-cgi $pkgname-fpm $pkgname-pear::noarch $pkgname-dbg" -source="http://php.net/distributions/$_pkgname-$pkgver.tar.bz2 +source="https://www.php.net/distributions/$_pkgname-$pkgver.tar.bz2 $_pkgname-fpm.initd $_pkgname-fpm.logrotate $_pkgname-module.conf @@ -92,7 +92,8 @@ source="http://php.net/distributions/$_pkgname-$pkgver.tar.bz2 allow-build-recode-and-imap-together.patch fix-tests-devserver.patch pwbuflen.patch - enchant-2.patch" + enchant-2.patch + fix-32bit-int-min.patch" builddir="$srcdir/$_pkgname-$pkgver" _libdir="/usr/lib/$_pkgname" _extension_dir="$_libdir/modules" @@ -526,7 +527,7 @@ _mv() { mv $@ } -sha512sums="f97545905a3ec4bc1ce431e306bffb2d7b6357164ea035a6899ea1589d8df4e6617af3924fa1abcb5da428ad691967504c3f94187d4cae6f2ef285e963d07e3d php-7.2.16.tar.bz2 +sha512sums="6d14311cb3699eec7a8eacfb82e0a00e8f5dcfb31474dd32071c1c3261ddf52157a43a1ead4762da01283b0f5ccbbae8dfbbad2fb59e0900a1769e9f318e5830 php-7.2.17.tar.bz2 23df4e779c809db3e3b8e5b0353b1aafaad2f3dc56f2d1cd45f9b0e3ad71b32e40700d6ebfe914b3c87e8e0b670d0dc862ded1e5c898adf160e33dea372e044f php-fpm.initd 01d4ba3ef104ea378eb0e8cbb7bdee3fdf65e4bd6865eb3bc6c0dc4af31c2d52887abdf0150b5ef984b877860285a3b1af84b11ffebb5b8b722ea9faf83edfeb php-fpm.logrotate a7f9ba5e11652fd1cb9e756c3269269a95de083ecb5be936a85c7a09c1396db9088e0251c6a643c40235c0e776fce2a471e5c7f5a033b85c7d3b3110c2b39e48 php-module.conf @@ -536,4 +537,5 @@ a77dd3bdf9dc7a0f2c06ff3e7c425d062bbaa29902c17402ce98701dc99499be863ad543aa5e6a7d f8ecae241a90cbc3e98aa4deb3d5d35ef555f51380e29f4e182a8060dffeb84be74f030a14c6b452668471030d78964f52795ca74275db05543ccad20ef1f2cc allow-build-recode-and-imap-together.patch f8bb322e56df79dd9f391737fb8737945cc730b14c7dc2ae8688979c565a9b97f5f2a12c9fcd0d8124624a9d09bd10228147d9e999bb94909bbe249f0a50646c fix-tests-devserver.patch 8e538063d872f6770a57cdb844226a771ccda3d387dd1f199bb08c274b94fbe12ec0ef6df75c32071f308cb8f4ab51b91b520c7c2ed687adf96d0d322788e463 pwbuflen.patch -03de56676449ddc1ba1fc9c4fee2b2ed620cd1a8ce52d288c91b42e081182871ade55c8dbbe1c8286bc4eadcd92d497a62ac7b689ea8d6b1bcb5eb25225595c4 enchant-2.patch" +03de56676449ddc1ba1fc9c4fee2b2ed620cd1a8ce52d288c91b42e081182871ade55c8dbbe1c8286bc4eadcd92d497a62ac7b689ea8d6b1bcb5eb25225595c4 enchant-2.patch +90c29989b88fcec1b5700b525c7e9f39dee67ca32cf66109908ac750eb2930270de5e13bc2ba3f5720a57c5613e39bc04475fa2bc001ca47c9505bff7e14a9d9 fix-32bit-int-min.patch" diff --git a/user/php7/fix-32bit-int-min.patch b/user/php7/fix-32bit-int-min.patch new file mode 100644 index 000000000..d121d26bc --- /dev/null +++ b/user/php7/fix-32bit-int-min.patch @@ -0,0 +1,1351 @@ +From a467a89f167e9e03b4acc4bd9b1430e0d52133fa Mon Sep 17 00:00:00 2001 +From: Remi Collet <remi@php.net> +Date: Wed, 20 Mar 2019 14:07:26 +0100 +Subject: [PATCH] Fix tests after fix for #76717 + +--- + .../general_functions/var_export-locale.phpt | 3 + + .../var_export-locale_32.phpt | 1148 +++++++++++++++++ + .../general_functions/var_export_basic1.phpt | 6 + + .../var_export_basic1_32.phpt | 147 +++ + 4 files changed, 1304 insertions(+) + create mode 100644 ext/standard/tests/general_functions/var_export-locale_32.phpt + create mode 100644 ext/standard/tests/general_functions/var_export_basic1_32.phpt + +diff --git a/ext/standard/tests/general_functions/var_export-locale.phpt b/ext/standard/tests/general_functions/var_export-locale.phpt +index 7503e789b093..37625f4201ad 100644 +--- a/ext/standard/tests/general_functions/var_export-locale.phpt ++++ b/ext/standard/tests/general_functions/var_export-locale.phpt +@@ -7,6 +7,9 @@ serialize_precision=17 + if (!setlocale(LC_ALL, "german", "de","de_DE","de_DE.ISO8859-1","de_DE.ISO_8859-1","de_DE.UTF-8")) { + die("skip locale needed for this test is not supported on this platform"); + } ++if (PHP_INT_SIZE < 8) { ++ die("skip 64-bit only"); ++} + ?> + --FILE-- + <?php +diff --git a/ext/standard/tests/general_functions/var_export-locale_32.phpt b/ext/standard/tests/general_functions/var_export-locale_32.phpt +new file mode 100644 +index 000000000000..39efdec7dfcb +--- /dev/null ++++ b/ext/standard/tests/general_functions/var_export-locale_32.phpt +@@ -0,0 +1,1148 @@ ++--TEST-- ++Test var_export() function with locale ++--INI-- ++serialize_precision=17 ++--SKIPIF-- ++<?php ++if (!setlocale(LC_ALL, "german", "de","de_DE","de_DE.ISO8859-1","de_DE.ISO_8859-1","de_DE.UTF-8")) { ++ die("skip locale needed for this test is not supported on this platform"); ++} ++if (PHP_INT_SIZE > 4) { ++ die("skip 32-bit only"); ++} ++?> ++--FILE-- ++<?php ++setlocale(LC_ALL, "german", "de","de_DE","de_DE.ISO8859-1","de_DE.ISO_8859-1","de_DE.UTF-8"); ++/* Prototype: mixed var_export( mixed expression [, bool return]); ++ * Description: Returns the variable representation when the return parameter is used and evaluates to TRUE. Otherwise, this function will return NULL. ++ ++*/ ++ ++echo "*** Testing var_export() with integer values ***\n"; ++// different integer vlaues ++$valid_ints = array( ++ '0', ++ '1', ++ '-1', ++ '-2147483648', // max negative integer value ++ '-2147483647', ++ 2147483647, // max positive integer value ++ 2147483640, ++ 0x123B, // integer as hexadecimal ++ '0x12ab', ++ '0Xfff', ++ '0XFA', ++ -0x7fffffff - 1, // max negative integer as hexadecimal ++ '0x7fffffff', // max positive integer as hexadecimal ++ 0x7FFFFFFF, // max positive integer as hexadecimal ++ '0123', // integer as octal ++ 01, // should be quivalent to octal 1 ++ -017777777777 - 1, // max negative integer as octal ++ 017777777777, // max positive integer as octal ++ ); ++$counter = 1; ++/* Loop to check for above integer values with var_export() */ ++echo "\n*** Output for integer values ***\n"; ++foreach($valid_ints as $int_value) { ++echo "\nIteration ".$counter."\n"; ++var_export( $int_value ); ++echo "\n"; ++var_export( $int_value, FALSE); ++echo "\n"; ++var_dump( var_export( $int_value, TRUE) ); ++echo "\n"; ++$counter++; ++} ++ ++echo "*** Testing var_export() with valid boolean values ***\n"; ++// different valid boolean vlaues ++$valid_bool = array( ++ 1, ++ TRUE, ++ true, ++ 0, ++ FALSE, ++ false ++ ); ++$counter = 1; ++/* Loop to check for above boolean values with var_export() */ ++echo "\n*** Output for boolean values ***\n"; ++foreach($valid_bool as $bool_value) { ++echo "\nIteration ".$counter."\n"; ++var_export( $bool_value ); ++echo "\n"; ++var_export( $bool_value, FALSE); ++echo "\n"; ++var_dump( var_export( $bool_value, TRUE) ); ++echo "\n"; ++$counter++; ++} ++ ++echo "*** Testing var_export() with valid float values ***\n"; ++// different valid float vlaues ++$valid_floats = array( ++ (float)-2147483649, // float value ++ (float)2147483648, // float value ++ (float)-0x80000001, // float value, beyond max negative int ++ (float)0x800000001, // float value, beyond max positive int ++ (float)020000000001, // float value, beyond max positive int ++ (float)-020000000001, // float value, beyond max negative int ++ 0.0, ++ -0.1, ++ 10.0000000000000000005, ++ 10.5e+5, ++ 1e5, ++ 1e-5, ++ 1e+5, ++ 1E5, ++ 1E+5, ++ 1E-5, ++ .5e+7, ++ .6e-19, ++ .05E+44, ++ .0034E-30 ++); ++$counter = 1; ++/* Loop to check for above float values with var_export() */ ++echo "\n*** Output for float values ***\n"; ++foreach($valid_floats as $float_value) { ++echo "\nIteration ".$counter."\n"; ++var_export( $float_value ); ++echo "\n"; ++var_export( $float_value, FALSE); ++echo "\n"; ++var_dump( var_export( $float_value, TRUE) ); ++echo "\n"; ++$counter++; ++} ++ ++echo "*** Testing var_export() with valid strings ***\n"; ++// different valid string ++$valid_strings = array( ++ "", ++ " ", ++ '', ++ ' ', ++ "string", ++ 'string', ++ "NULL", ++ 'null', ++ "FALSE", ++ 'false', ++ "\x0b", ++ "\0", ++ '\0', ++ '\060', ++ "\070" ++ ); ++$counter = 1; ++/* Loop to check for above strings with var_export() */ ++echo "\n*** Output for strings ***\n"; ++foreach($valid_strings as $str) { ++echo "\nIteration ".$counter."\n"; ++var_export( $str ); ++echo "\n"; ++var_export( $str, FALSE); ++echo "\n"; ++var_dump( var_export( $str, TRUE) ); ++echo "\n"; ++$counter++; ++} ++ ++echo "*** Testing var_export() with valid arrays ***\n"; ++// different valid arrays ++$valid_arrays = array( ++ array(), ++ array(NULL), ++ array(null), ++ array(true), ++ array(""), ++ array(''), ++ array(array(), array()), ++ array(array(1, 2), array('a', 'b')), ++ array(1 => 'One'), ++ array("test" => "is_array"), ++ array(0), ++ array(-1), ++ array(10.5, 5.6), ++ array("string", "test"), ++ array('string', 'test') ++ ); ++$counter = 1; ++/* Loop to check for above arrays with var_export() */ ++echo "\n*** Output for arrays ***\n"; ++foreach($valid_arrays as $arr) { ++echo "\nIteration ".$counter."\n"; ++var_export( $arr ); ++echo "\n"; ++var_export( $arr, FALSE); ++echo "\n"; ++var_dump( var_export( $arr, TRUE) ); ++echo "\n"; ++$counter++; ++} ++ ++echo "*** Testing var_export() with valid objects ***\n"; ++ ++// class with no members ++class foo ++{ ++// no members ++} ++ ++// abstract class ++abstract class abstractClass ++{ ++ abstract protected function getClassName(); ++ public function printClassName () { ++ echo $this->getClassName() . "\n"; ++ } ++} ++// implement abstract class ++class concreteClass extends abstractClass ++{ ++ protected function getClassName() { ++ return "concreteClass"; ++ } ++} ++ ++// interface class ++interface iValue ++{ ++ public function setVal ($name, $val); ++ public function dumpVal (); ++} ++// implement the interface ++class Value implements iValue ++{ ++ private $vars = array (); ++ ++ public function setVal ( $name, $val ) { ++ $this->vars[$name] = $val; ++ } ++ ++ public function dumpVal () { ++ var_export ( $vars ); ++ } ++} ++ ++// a gereral class ++class myClass ++{ ++ var $foo_object; ++ public $public_var; ++ public $public_var1; ++ private $private_var; ++ protected $protected_var; ++ ++ function __construct ( ) { ++ $this->foo_object = new foo(); ++ $this->public_var = 10; ++ $this->public_var1 = new foo(); ++ $this->private_var = new foo(); ++ $this->proected_var = new foo(); ++ } ++} ++ ++// create a object of each class defined above ++$myClass_object = new myClass(); ++$foo_object = new foo(); ++$Value_object = new Value(); ++$concreteClass_object = new concreteClass(); ++ ++$valid_objects = array( ++ new stdclass, ++ new foo, ++ new concreteClass, ++ new Value, ++ new myClass, ++ $myClass_object, ++ $myClass_object->foo_object, ++ $myClass_object->public_var1, ++ $foo_object, ++ $Value_object, ++ $concreteClass_object ++ ); ++ $counter = 1; ++/* Loop to check for above objects with var_export() */ ++echo "\n*** Output for objects ***\n"; ++foreach($valid_objects as $obj) { ++echo "\nIteration ".$counter."\n"; ++var_export( $obj ); ++echo "\n"; ++var_export( $obj, FALSE); ++echo "\n"; ++var_dump( var_export( $obj, TRUE) ); ++echo "\n"; ++$counter++; ++} ++ ++echo "*** Testing var_export() with valid null values ***\n"; ++// different valid null vlaues ++$unset_var = array(); ++unset ($unset_var); // now a null ++$null_var = NULL; ++ ++$valid_nulls = array( ++ NULL, ++ null, ++ $null_var, ++ ); ++ $counter = 1; ++/* Loop to check for above null values with var_export() */ ++echo "\n*** Output for null values ***\n"; ++foreach($valid_nulls as $null_value) { ++echo "\nIteration ".$counter."\n"; ++var_export( $null_value ); ++echo "\n"; ++var_export( $null_value, FALSE); ++echo "\n"; ++var_dump( var_export( $null_value, true) ); ++echo "\n"; ++$counter++; ++} ++ ++echo "\n*** Testing error conditions ***\n"; ++//Zero argument ++var_export( var_export() ); ++ ++//arguments more than expected ++var_export( var_export(TRUE, FALSE, TRUE) ); ++ ++echo "\n\nDone"; ++ ++ ++?> ++--EXPECTF-- ++*** Testing var_export() with integer values *** ++ ++*** Output for integer values *** ++ ++Iteration 1 ++'0' ++'0' ++string(3) "'0'" ++ ++ ++Iteration 2 ++'1' ++'1' ++string(3) "'1'" ++ ++ ++Iteration 3 ++'-1' ++'-1' ++string(4) "'-1'" ++ ++ ++Iteration 4 ++'-2147483648' ++'-2147483648' ++string(13) "'-2147483648'" ++ ++ ++Iteration 5 ++'-2147483647' ++'-2147483647' ++string(13) "'-2147483647'" ++ ++ ++Iteration 6 ++2147483647 ++2147483647 ++string(10) "2147483647" ++ ++ ++Iteration 7 ++2147483640 ++2147483640 ++string(10) "2147483640" ++ ++ ++Iteration 8 ++4667 ++4667 ++string(4) "4667" ++ ++ ++Iteration 9 ++'0x12ab' ++'0x12ab' ++string(8) "'0x12ab'" ++ ++ ++Iteration 10 ++'0Xfff' ++'0Xfff' ++string(7) "'0Xfff'" ++ ++ ++Iteration 11 ++'0XFA' ++'0XFA' ++string(6) "'0XFA'" ++ ++ ++Iteration 12 ++-2147483647-1 ++-2147483647-1 ++string(13) "-2147483647-1" ++ ++ ++Iteration 13 ++'0x7fffffff' ++'0x7fffffff' ++string(12) "'0x7fffffff'" ++ ++ ++Iteration 14 ++2147483647 ++2147483647 ++string(10) "2147483647" ++ ++ ++Iteration 15 ++'0123' ++'0123' ++string(6) "'0123'" ++ ++ ++Iteration 16 ++1 ++1 ++string(1) "1" ++ ++ ++Iteration 17 ++-2147483647-1 ++-2147483647-1 ++string(13) "-2147483647-1" ++ ++ ++Iteration 18 ++2147483647 ++2147483647 ++string(10) "2147483647" ++ ++*** Testing var_export() with valid boolean values *** ++ ++*** Output for boolean values *** ++ ++Iteration 1 ++1 ++1 ++string(1) "1" ++ ++ ++Iteration 2 ++true ++true ++string(4) "true" ++ ++ ++Iteration 3 ++true ++true ++string(4) "true" ++ ++ ++Iteration 4 ++0 ++0 ++string(1) "0" ++ ++ ++Iteration 5 ++false ++false ++string(5) "false" ++ ++ ++Iteration 6 ++false ++false ++string(5) "false" ++ ++*** Testing var_export() with valid float values *** ++ ++*** Output for float values *** ++ ++Iteration 1 ++-2147483649.0 ++-2147483649.0 ++string(13) "-2147483649.0" ++ ++ ++Iteration 2 ++2147483648.0 ++2147483648.0 ++string(12) "2147483648.0" ++ ++ ++Iteration 3 ++-2147483649.0 ++-2147483649.0 ++string(13) "-2147483649.0" ++ ++ ++Iteration 4 ++34359738369.0 ++34359738369.0 ++string(13) "34359738369.0" ++ ++ ++Iteration 5 ++2147483649.0 ++2147483649.0 ++string(12) "2147483649.0" ++ ++ ++Iteration 6 ++-2147483649.0 ++-2147483649.0 ++string(13) "-2147483649.0" ++ ++ ++Iteration 7 ++0.0 ++0.0 ++string(3) "0.0" ++ ++ ++Iteration 8 ++-0.10000000000000001 ++-0.10000000000000001 ++string(20) "-0.10000000000000001" ++ ++ ++Iteration 9 ++10.0 ++10.0 ++string(4) "10.0" ++ ++ ++Iteration 10 ++1050000.0 ++1050000.0 ++string(9) "1050000.0" ++ ++ ++Iteration 11 ++100000.0 ++100000.0 ++string(8) "100000.0" ++ ++ ++Iteration 12 ++1.0000000000000001E-5 ++1.0000000000000001E-5 ++string(21) "1.0000000000000001E-5" ++ ++ ++Iteration 13 ++100000.0 ++100000.0 ++string(8) "100000.0" ++ ++ ++Iteration 14 ++100000.0 ++100000.0 ++string(8) "100000.0" ++ ++ ++Iteration 15 ++100000.0 ++100000.0 ++string(8) "100000.0" ++ ++ ++Iteration 16 ++1.0000000000000001E-5 ++1.0000000000000001E-5 ++string(21) "1.0000000000000001E-5" ++ ++ ++Iteration 17 ++5000000.0 ++5000000.0 ++string(9) "5000000.0" ++ ++ ++Iteration 18 ++6.0000000000000006E-20 ++6.0000000000000006E-20 ++string(22) "6.0000000000000006E-20" ++ ++ ++Iteration 19 ++5.0000000000000001E+42 ++5.0000000000000001E+42 ++string(22) "5.0000000000000001E+42" ++ ++ ++Iteration 20 ++3.4000000000000001E-33 ++3.4000000000000001E-33 ++string(22) "3.4000000000000001E-33" ++ ++*** Testing var_export() with valid strings *** ++ ++*** Output for strings *** ++ ++Iteration 1 ++'' ++'' ++string(2) "''" ++ ++ ++Iteration 2 ++' ' ++' ' ++string(3) "' '" ++ ++ ++Iteration 3 ++'' ++'' ++string(2) "''" ++ ++ ++Iteration 4 ++' ' ++' ' ++string(3) "' '" ++ ++ ++Iteration 5 ++'string' ++'string' ++string(8) "'string'" ++ ++ ++Iteration 6 ++'string' ++'string' ++string(8) "'string'" ++ ++ ++Iteration 7 ++'NULL' ++'NULL' ++string(6) "'NULL'" ++ ++ ++Iteration 8 ++'null' ++'null' ++string(6) "'null'" ++ ++ ++Iteration 9 ++'FALSE' ++'FALSE' ++string(7) "'FALSE'" ++ ++ ++Iteration 10 ++'false' ++'false' ++string(7) "'false'" ++ ++ ++Iteration 11 ++'' ++'' ++string(3) "''" ++ ++ ++Iteration 12 ++'' . "\0" . '' ++'' . "\0" . '' ++string(14) "'' . "\0" . ''" ++ ++ ++Iteration 13 ++'\\0' ++'\\0' ++string(5) "'\\0'" ++ ++ ++Iteration 14 ++'\\060' ++'\\060' ++string(7) "'\\060'" ++ ++ ++Iteration 15 ++'8' ++'8' ++string(3) "'8'" ++ ++*** Testing var_export() with valid arrays *** ++ ++*** Output for arrays *** ++ ++Iteration 1 ++array ( ++) ++array ( ++) ++string(9) "array ( ++)" ++ ++ ++Iteration 2 ++array ( ++ 0 => NULL, ++) ++array ( ++ 0 => NULL, ++) ++string(22) "array ( ++ 0 => NULL, ++)" ++ ++ ++Iteration 3 ++array ( ++ 0 => NULL, ++) ++array ( ++ 0 => NULL, ++) ++string(22) "array ( ++ 0 => NULL, ++)" ++ ++ ++Iteration 4 ++array ( ++ 0 => true, ++) ++array ( ++ 0 => true, ++) ++string(22) "array ( ++ 0 => true, ++)" ++ ++ ++Iteration 5 ++array ( ++ 0 => '', ++) ++array ( ++ 0 => '', ++) ++string(20) "array ( ++ 0 => '', ++)" ++ ++ ++Iteration 6 ++array ( ++ 0 => '', ++) ++array ( ++ 0 => '', ++) ++string(20) "array ( ++ 0 => '', ++)" ++ ++ ++Iteration 7 ++array ( ++ 0 => ++ array ( ++ ), ++ 1 => ++ array ( ++ ), ++) ++array ( ++ 0 => ++ array ( ++ ), ++ 1 => ++ array ( ++ ), ++) ++string(55) "array ( ++ 0 => ++ array ( ++ ), ++ 1 => ++ array ( ++ ), ++)" ++ ++ ++Iteration 8 ++array ( ++ 0 => ++ array ( ++ 0 => 1, ++ 1 => 2, ++ ), ++ 1 => ++ array ( ++ 0 => 'a', ++ 1 => 'b', ++ ), ++) ++array ( ++ 0 => ++ array ( ++ 0 => 1, ++ 1 => 2, ++ ), ++ 1 => ++ array ( ++ 0 => 'a', ++ 1 => 'b', ++ ), ++) ++string(107) "array ( ++ 0 => ++ array ( ++ 0 => 1, ++ 1 => 2, ++ ), ++ 1 => ++ array ( ++ 0 => 'a', ++ 1 => 'b', ++ ), ++)" ++ ++ ++Iteration 9 ++array ( ++ 1 => 'One', ++) ++array ( ++ 1 => 'One', ++) ++string(23) "array ( ++ 1 => 'One', ++)" ++ ++ ++Iteration 10 ++array ( ++ 'test' => 'is_array', ++) ++array ( ++ 'test' => 'is_array', ++) ++string(33) "array ( ++ 'test' => 'is_array', ++)" ++ ++ ++Iteration 11 ++array ( ++ 0 => 0, ++) ++array ( ++ 0 => 0, ++) ++string(19) "array ( ++ 0 => 0, ++)" ++ ++ ++Iteration 12 ++array ( ++ 0 => -1, ++) ++array ( ++ 0 => -1, ++) ++string(20) "array ( ++ 0 => -1, ++)" ++ ++ ++Iteration 13 ++array ( ++ 0 => 10.5, ++ 1 => 5.5999999999999996, ++) ++array ( ++ 0 => 10.5, ++ 1 => 5.5999999999999996, ++) ++string(49) "array ( ++ 0 => 10.5, ++ 1 => 5.5999999999999996, ++)" ++ ++ ++Iteration 14 ++array ( ++ 0 => 'string', ++ 1 => 'test', ++) ++array ( ++ 0 => 'string', ++ 1 => 'test', ++) ++string(41) "array ( ++ 0 => 'string', ++ 1 => 'test', ++)" ++ ++ ++Iteration 15 ++array ( ++ 0 => 'string', ++ 1 => 'test', ++) ++array ( ++ 0 => 'string', ++ 1 => 'test', ++) ++string(41) "array ( ++ 0 => 'string', ++ 1 => 'test', ++)" ++ ++*** Testing var_export() with valid objects *** ++ ++*** Output for objects *** ++ ++Iteration 1 ++stdClass::__set_state(array( ++)) ++stdClass::__set_state(array( ++)) ++string(31) "stdClass::__set_state(array( ++))" ++ ++ ++Iteration 2 ++foo::__set_state(array( ++)) ++foo::__set_state(array( ++)) ++string(26) "foo::__set_state(array( ++))" ++ ++ ++Iteration 3 ++concreteClass::__set_state(array( ++)) ++concreteClass::__set_state(array( ++)) ++string(36) "concreteClass::__set_state(array( ++))" ++ ++ ++Iteration 4 ++Value::__set_state(array( ++ 'vars' => ++ array ( ++ ), ++)) ++Value::__set_state(array( ++ 'vars' => ++ array ( ++ ), ++)) ++string(57) "Value::__set_state(array( ++ 'vars' => ++ array ( ++ ), ++))" ++ ++ ++Iteration 5 ++myClass::__set_state(array( ++ 'foo_object' => ++ foo::__set_state(array( ++ )), ++ 'public_var' => 10, ++ 'public_var1' => ++ foo::__set_state(array( ++ )), ++ 'private_var' => ++ foo::__set_state(array( ++ )), ++ 'protected_var' => NULL, ++ 'proected_var' => ++ foo::__set_state(array( ++ )), ++)) ++myClass::__set_state(array( ++ 'foo_object' => ++ foo::__set_state(array( ++ )), ++ 'public_var' => 10, ++ 'public_var1' => ++ foo::__set_state(array( ++ )), ++ 'private_var' => ++ foo::__set_state(array( ++ )), ++ 'protected_var' => NULL, ++ 'proected_var' => ++ foo::__set_state(array( ++ )), ++)) ++string(293) "myClass::__set_state(array( ++ 'foo_object' => ++ foo::__set_state(array( ++ )), ++ 'public_var' => 10, ++ 'public_var1' => ++ foo::__set_state(array( ++ )), ++ 'private_var' => ++ foo::__set_state(array( ++ )), ++ 'protected_var' => NULL, ++ 'proected_var' => ++ foo::__set_state(array( ++ )), ++))" ++ ++ ++Iteration 6 ++myClass::__set_state(array( ++ 'foo_object' => ++ foo::__set_state(array( ++ )), ++ 'public_var' => 10, ++ 'public_var1' => ++ foo::__set_state(array( ++ )), ++ 'private_var' => ++ foo::__set_state(array( ++ )), ++ 'protected_var' => NULL, ++ 'proected_var' => ++ foo::__set_state(array( ++ )), ++)) ++myClass::__set_state(array( ++ 'foo_object' => ++ foo::__set_state(array( ++ )), ++ 'public_var' => 10, ++ 'public_var1' => ++ foo::__set_state(array( ++ )), ++ 'private_var' => ++ foo::__set_state(array( ++ )), ++ 'protected_var' => NULL, ++ 'proected_var' => ++ foo::__set_state(array( ++ )), ++)) ++string(293) "myClass::__set_state(array( ++ 'foo_object' => ++ foo::__set_state(array( ++ )), ++ 'public_var' => 10, ++ 'public_var1' => ++ foo::__set_state(array( ++ )), ++ 'private_var' => ++ foo::__set_state(array( ++ )), ++ 'protected_var' => NULL, ++ 'proected_var' => ++ foo::__set_state(array( ++ )), ++))" ++ ++ ++Iteration 7 ++foo::__set_state(array( ++)) ++foo::__set_state(array( ++)) ++string(26) "foo::__set_state(array( ++))" ++ ++ ++Iteration 8 ++foo::__set_state(array( ++)) ++foo::__set_state(array( ++)) ++string(26) "foo::__set_state(array( ++))" ++ ++ ++Iteration 9 ++foo::__set_state(array( ++)) ++foo::__set_state(array( ++)) ++string(26) "foo::__set_state(array( ++))" ++ ++ ++Iteration 10 ++Value::__set_state(array( ++ 'vars' => ++ array ( ++ ), ++)) ++Value::__set_state(array( ++ 'vars' => ++ array ( ++ ), ++)) ++string(57) "Value::__set_state(array( ++ 'vars' => ++ array ( ++ ), ++))" ++ ++ ++Iteration 11 ++concreteClass::__set_state(array( ++)) ++concreteClass::__set_state(array( ++)) ++string(36) "concreteClass::__set_state(array( ++))" ++ ++*** Testing var_export() with valid null values *** ++ ++*** Output for null values *** ++ ++Iteration 1 ++NULL ++NULL ++string(4) "NULL" ++ ++ ++Iteration 2 ++NULL ++NULL ++string(4) "NULL" ++ ++ ++Iteration 3 ++NULL ++NULL ++string(4) "NULL" ++ ++ ++*** Testing error conditions *** ++ ++Warning: var_export() expects at least 1 parameter, 0 given in %s on line %d ++NULL ++Warning: var_export() expects at most 2 parameters, 3 given in %s on line %d ++NULL ++ ++Done +diff --git a/ext/standard/tests/general_functions/var_export_basic1.phpt b/ext/standard/tests/general_functions/var_export_basic1.phpt +index 2dfd28785bc8..a7d3142ddc29 100644 +--- a/ext/standard/tests/general_functions/var_export_basic1.phpt ++++ b/ext/standard/tests/general_functions/var_export_basic1.phpt +@@ -1,5 +1,11 @@ + --TEST-- + Test var_export() function with integer values ++--SKIPIF-- ++<?php ++if (PHP_INT_SIZE < 8) { ++ die("skip 64-bit only"); ++} ++?> + --FILE-- + <?php + /* Prototype : mixed var_export(mixed var [, bool return]) +diff --git a/ext/standard/tests/general_functions/var_export_basic1_32.phpt b/ext/standard/tests/general_functions/var_export_basic1_32.phpt +new file mode 100644 +index 000000000000..95596800d690 +--- /dev/null ++++ b/ext/standard/tests/general_functions/var_export_basic1_32.phpt +@@ -0,0 +1,147 @@ ++--TEST-- ++Test var_export() function with integer values ++--SKIPIF-- ++<?php ++if (PHP_INT_SIZE > 4) { ++ die("skip 32-bit only"); ++} ++?> ++--FILE-- ++<?php ++/* Prototype : mixed var_export(mixed var [, bool return]) ++ * Description: Outputs or returns a string representation of a variable ++ * Source code: ext/standard/var.c ++ * Alias to functions: ++ */ ++ ++echo "*** Testing var_export() with integer values ***\n"; ++// different integer vlaues ++$valid_ints = array( ++ '0' => '0', ++ '1' => '1', ++ '-1' => '-1', ++ '-2147483648' => '-2147483648', // max negative integer value ++ '-2147483647' => '-2147483647', ++ '2147483647' => 2147483647, // max positive integer value ++ '2147483640' => 2147483640, ++ '0x123B' => 0x123B, // integer as hexadecimal ++ "'0x12ab'" => '0x12ab', ++ "'0Xfff'" => '0Xfff', ++ "'0XFA'" => '0XFA', ++ "-0x80000000" => -0x7FFFFFFF - 1, // max negative integer as hexadecimal ++ "'0x7fffffff'" => '0x7fffffff', // max positive integer as hexadecimal ++ "0x7FFFFFFF" => 0x7FFFFFFF, // max positive integer as hexadecimal ++ "'0123'" => '0123', // integer as octal ++ "01912" => 01, // should be quivalent to octal 1 ++ "-020000000000" => -017777777777 - 1, // max negative integer as octal ++ "017777777777" => 017777777777, // max positive integer as octal ++); ++ ++/* Loop to check for above integer values with var_export() */ ++echo "\n*** Output for integer values ***\n"; ++foreach($valid_ints as $key => $int_value) { ++ echo "\n-- Iteration: $key --\n"; ++ var_export( $int_value ); ++ echo "\n"; ++ var_export( $int_value, FALSE); ++ echo "\n"; ++ var_dump( var_export( $int_value, TRUE) ); ++} ++ ++?> ++===DONE=== ++--EXPECT-- ++*** Testing var_export() with integer values *** ++ ++*** Output for integer values *** ++ ++-- Iteration: 0 -- ++'0' ++'0' ++string(3) "'0'" ++ ++-- Iteration: 1 -- ++'1' ++'1' ++string(3) "'1'" ++ ++-- Iteration: -1 -- ++'-1' ++'-1' ++string(4) "'-1'" ++ ++-- Iteration: -2147483648 -- ++'-2147483648' ++'-2147483648' ++string(13) "'-2147483648'" ++ ++-- Iteration: -2147483647 -- ++'-2147483647' ++'-2147483647' ++string(13) "'-2147483647'" ++ ++-- Iteration: 2147483647 -- ++2147483647 ++2147483647 ++string(10) "2147483647" ++ ++-- Iteration: 2147483640 -- ++2147483640 ++2147483640 ++string(10) "2147483640" ++ ++-- Iteration: 0x123B -- ++4667 ++4667 ++string(4) "4667" ++ ++-- Iteration: '0x12ab' -- ++'0x12ab' ++'0x12ab' ++string(8) "'0x12ab'" ++ ++-- Iteration: '0Xfff' -- ++'0Xfff' ++'0Xfff' ++string(7) "'0Xfff'" ++ ++-- Iteration: '0XFA' -- ++'0XFA' ++'0XFA' ++string(6) "'0XFA'" ++ ++-- Iteration: -0x80000000 -- ++-2147483647-1 ++-2147483647-1 ++string(13) "-2147483647-1" ++ ++-- Iteration: '0x7fffffff' -- ++'0x7fffffff' ++'0x7fffffff' ++string(12) "'0x7fffffff'" ++ ++-- Iteration: 0x7FFFFFFF -- ++2147483647 ++2147483647 ++string(10) "2147483647" ++ ++-- Iteration: '0123' -- ++'0123' ++'0123' ++string(6) "'0123'" ++ ++-- Iteration: 01912 -- ++1 ++1 ++string(1) "1" ++ ++-- Iteration: -020000000000 -- ++-2147483647-1 ++-2147483647-1 ++string(13) "-2147483647-1" ++ ++-- Iteration: 017777777777 -- ++2147483647 ++2147483647 ++string(10) "2147483647" ++===DONE=== diff --git a/user/physfs/APKBUILD b/user/physfs/APKBUILD index 4c9fde504..86f57e0cc 100644 --- a/user/physfs/APKBUILD +++ b/user/physfs/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=physfs -pkgver=3.0.1 +pkgver=3.0.2 pkgrel=0 pkgdesc="Library to access various archives for game engines" url="https://www.icculus.org/physfs" @@ -13,7 +13,6 @@ subpackages="$pkgname-dev $pkgname-tools" source="https://icculus.org/physfs/downloads/physfs-$pkgver.tar.bz2" build() { - cd "$builddir" if [ "$CBUILD" != "$CHOST" ]; then CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux" fi @@ -29,12 +28,10 @@ build() { } check() { - cd "$builddir" CTEST_OUTPUT_ON_FAILURE=TRUE ctest } package() { - cd "$builddir" make DESTDIR="$pkgdir" install } @@ -44,4 +41,4 @@ tools() { mv "$pkgdir"/usr/bin "$subpkgdir"/usr/ } -sha512sums="ddf3b075ccb506da5e9a1ce96001be402752b9b777c2e816a85d48aff3626ff0886ea43eb07bd300fe3a9f59b9a002f54d822c51d483a4ee94b38378534c1879 physfs-3.0.1.tar.bz2" +sha512sums="4024b6c3348e0b6fc1036aac330192112dfe17de3e3d14773be9f06e9a062df5a1006869f21162b4e0b584989f463788a35e64186b1913225c073fea62754472 physfs-3.0.2.tar.bz2" diff --git a/user/physlock/APKBUILD b/user/physlock/APKBUILD index a2c4e471f..f9a5f9574 100644 --- a/user/physlock/APKBUILD +++ b/user/physlock/APKBUILD @@ -1,7 +1,7 @@ # Contributor: Max Rees <maxcrees@me.com> # Maintainer: Max Rees <maxcrees@me.com> pkgname=physlock -pkgver=11 +pkgver=13 pkgrel=0 pkgdesc="Lightweight Linux console-locking tool" url="https://github.com/muennich/physlock" @@ -12,17 +12,17 @@ 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" + utmps.patch + makefile.patch" build() { - cd "$builddir" make } package() { - cd "$builddir" make PREFIX="/usr" DESTDIR="$pkgdir" install } -sha512sums="d3badf5c99e4e3e16f4e7ec5c59ee8320c845f1b180463900d816206362ce1aa8652f2489453ad5e190cceee2ed61a90acc52e25bb6b4c4a9dc8c4ebd3054938 physlock-11.tar.gz -d461b462dedfb7505f506ce1050d5140b8729f50a383157157e4f65465f63174cc11dc0a46cc1eed57cec0293006c5ec6cc6e96af9acab009ab3c9fe5e2381d5 utmps.patch" +sha512sums="85c291fb7b146fbd81aacbf94d8af07e727dd9b37b458988eaee5f7a51f9923871f9b19fd9438428635963864de67d3f2a72f938d99ffe6dc3015c3a1b99ea1c physlock-13.tar.gz +69367872c48985db31f2d84b038089da71e48ca79db0b0089f4a94f0cd853409bf9253fd5ee0b0729c01d9252072be1998141fad675baee97e93af1100ce71e6 utmps.patch +54119c1059231f15ab5ea5543583e12f7e3f9907e9c71b3ec76b10ee5df64a0303d6caf88be9c768d7b679cfcaf0a374c924a3232f221329bc54d22b31c771ce makefile.patch" diff --git a/user/physlock/makefile.patch b/user/physlock/makefile.patch new file mode 100644 index 000000000..9cae82168 --- /dev/null +++ b/user/physlock/makefile.patch @@ -0,0 +1,14 @@ +--- physlock-13/Makefile 2019-01-28 18:46:20.000000000 +0000 ++++ physlock-13/Makefile 2019-04-18 07:17:28.779909174 +0000 +@@ -7,9 +7,9 @@ + MANPREFIX = $(PREFIX)/share/man + + # enable user detection using libsystemd +-HAVE_SYSTEMD = 1 ++HAVE_SYSTEMD = 0 + +-cflags = -Wall -pedantic $(CFLAGS) ++cflags = -D_GNU_SOURCE -Wall -pedantic $(CFLAGS) + cppflags = -I. $(CPPFLAGS) -D_XOPEN_SOURCE=500 + + lib_systemd_0 = diff --git a/user/physlock/utmps.patch b/user/physlock/utmps.patch index efae166a9..f3ba5e575 100644 --- a/user/physlock/utmps.patch +++ b/user/physlock/utmps.patch @@ -1,31 +1,23 @@ ---- 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> +--- physlock-13/session.c 2019-01-28 18:46:20.000000000 +0000 ++++ physlock-13/session.c 2019-04-18 07:11:54.749911535 +0000 +@@ -6,7 +7,7 @@ #include <pwd.h> #include <unistd.h> + #include <errno.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) { + #if HAVE_SYSTEMD + #include <systemd/sd-login.h> +@@ -50,11 +51,11 @@ + int get_user_utmp(userinfo_t *uinfo, int vt) { + int ret = -1; FILE *uf; - struct utmp r; + struct utmpx r; - struct passwd *pw; - char tty[16], name[UT_NAMESIZE+1]; + char tty[UT_LINESIZE+1], name[UT_NAMESIZE+1]; - uinfo->name = NULL; + name[0] = '\0'; - while ((uf = fopen(_PATH_UTMP, "r")) == NULL && errno == EINTR); + while ((uf = fopen(UTMPX_FILE, "r")) == NULL && errno == EINTR); diff --git a/user/pixman/APKBUILD b/user/pixman/APKBUILD index 332cc576d..0e545f547 100644 --- a/user/pixman/APKBUILD +++ b/user/pixman/APKBUILD @@ -1,6 +1,6 @@ # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=pixman -pkgver=0.38.0 +pkgver=0.38.4 pkgrel=0 pkgdesc="Low-level pixel manipulation library" url="https://www.X.Org/" @@ -31,5 +31,5 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="f2279a30947df0c75064fdc36c3e0b735d9392d516191d99a9a66c9bae86778c538a552f1bf9eb75cdbd141891e3addb4836b37ef1553bc6d55285f214311b78 pixman-0.38.0.tar.bz2 +sha512sums="0683b7f67caa0881b23188b7e6f8487c7e0a1257a912686616b7d862efd5a9efdb51641c81ec54905a6f6b1029d796ca4e25c0909db28fc29fa3617bf09f9cf9 pixman-0.38.4.tar.bz2 3d75e7328e6eaaa6e8f4defa4402db815764369f94b81be38fba07933267fe24b03b591dd4c3f3544cb090650153728bfbdd81a91acaf19524c3d08f61427f63 stacksize-reduction.patch" diff --git a/user/pluma/APKBUILD b/user/pluma/APKBUILD new file mode 100644 index 000000000..85fc97b63 --- /dev/null +++ b/user/pluma/APKBUILD @@ -0,0 +1,39 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=pluma +pkgver=1.22.1 +pkgrel=0 +pkgdesc="Text editor for the MATE desktop environment" +url="https://mate-desktop.org" +arch="all" +options="!check" # tests fail due to schema being requested but not available +license="GPL-2.0+ AND GPL-2.0-only AND LGPL-2.0+" +depends="" +makedepends="gtk+3.0-dev gtksourceview-3.0-dev enchant-dev intltool + itstool iso-codes-dev libpeas-dev libsm-dev libxml2-dev libxml2-utils" +subpackages="$pkgname-dev $pkgname-doc $pkgname-lang" +source="https://pub.mate-desktop.org/releases/${pkgver%.*}/pluma-$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="0d3f07b2e8c736c9e1ad64ed5cb749db6088868e9bc27aa786cbb0c3fe72715f0fd4dd53999502a4333ec82110148b772c0dde81433d0936d2d3c2d04804026a pluma-1.22.1.tar.xz" diff --git a/user/polkit/0001-make-netgroup-support-optional.patch b/user/polkit/0001-make-netgroup-support-optional.patch index 1a7716c45..6387974be 100644 --- a/user/polkit/0001-make-netgroup-support-optional.patch +++ b/user/polkit/0001-make-netgroup-support-optional.patch @@ -1,4 +1,4 @@ -From aafb9fd0e79775146186ee1d7ffef1f76cdbc1bb Mon Sep 17 00:00:00 2001 +From 778bb45e0e0cbabe2b04adf67a500af1dab09768 Mon Sep 17 00:00:00 2001 From: "A. Wilcox" <AWilcox@Wilcox-Tech.com> Date: Wed, 11 Jul 2018 04:54:26 -0500 Subject: [PATCH] make netgroup support optional @@ -12,253 +12,23 @@ that function is not available on the system, an error will be returned to the administrator if unix-netgroup: is specified in configuration. Fixes bug 50145. + +Closes polkit/polkit#14. + +Signed-off-by: A. Wilcox <AWilcox@Wilcox-Tech.com> --- - 0001-make-netgroup-support-optional.patch | 226 ++++++++++++++++++ - configure.ac | 2 +- - src/polkit/polkitidentity.c | 16 ++ - src/polkit/polkitunixnetgroup.c | 3 + - .../polkitbackendinteractiveauthority.c | 14 +- - .../polkitbackendjsauthority.cpp | 2 + - test/polkit/polkitidentitytest.c | 9 +- - test/polkit/polkitunixnetgrouptest.c | 3 + - .../test-polkitbackendjsauthority.c | 2 + - 9 files changed, 269 insertions(+), 8 deletions(-) - create mode 100644 0001-make-netgroup-support-optional.patch + configure.ac | 2 +- + src/polkit/polkitidentity.c | 16 ++++++++++++++++ + src/polkit/polkitunixnetgroup.c | 3 +++ + .../polkitbackendinteractiveauthority.c | 14 ++++++++------ + src/polkitbackend/polkitbackendjsauthority.cpp | 2 ++ + test/polkit/polkitidentitytest.c | 9 ++++++++- + test/polkit/polkitunixnetgrouptest.c | 3 +++ + .../test-polkitbackendjsauthority.c | 2 ++ + 8 files changed, 43 insertions(+), 8 deletions(-) -diff --git a/0001-make-netgroup-support-optional.patch b/0001-make-netgroup-support-optional.patch -new file mode 100644 -index 0000000..dedc5f7 ---- /dev/null -+++ b/0001-make-netgroup-support-optional.patch -@@ -0,0 +1,226 @@ -+From 73eada88dd344333cc1d1f9c5c35413fcee1dd67 Mon Sep 17 00:00:00 2001 -+From: "A. Wilcox" <AWilcox@Wilcox-Tech.com> -+Date: Wed, 11 Jul 2018 04:54:26 -0500 -+Subject: [PATCH] make netgroup support optional -+ -+On at least Linux/musl and Linux/uclibc, netgroup support is not -+available. PolKit fails to compile on these systems for that reason. -+ -+This change makes netgroup support conditional on the presence of the -+setnetgrent(3) function which is required for the support to work. If -+that function is not available on the system, an error will be returned -+to the administrator if unix-netgroup: is specified in configuration. -+ -+Fixes bug 50145. -+--- -+ configure.ac | 2 +- -+ src/polkit/polkitidentity.c | 16 ++++++++++++++++ -+ src/polkit/polkitunixnetgroup.c | 3 +++ -+ .../polkitbackendinteractiveauthority.c | 14 ++++++++------ -+ src/polkitbackend/polkitbackendjsauthority.cpp | 2 ++ -+ test/polkit/polkitidentitytest.c | 9 ++++++++- -+ test/polkit/polkitunixnetgrouptest.c | 3 +++ -+ 7 files changed, 41 insertions(+), 8 deletions(-) -+ -+diff --git a/configure.ac b/configure.ac -+index bfa87dd..cb86ac7 100644 -+--- a/configure.ac -++++ b/configure.ac -+@@ -99,7 +99,7 @@ AC_CHECK_LIB(expat,XML_ParserCreate,[EXPAT_LIBS="-lexpat"], -+ [AC_MSG_ERROR([Can't find expat library. Please install expat.])]) -+ AC_SUBST(EXPAT_LIBS) -+ -+-AC_CHECK_FUNCS(clearenv fdatasync) -++AC_CHECK_FUNCS(clearenv fdatasync setnetgrent) -+ -+ if test "x$GCC" = "xyes"; then -+ LDFLAGS="-Wl,--as-needed $LDFLAGS" -+diff --git a/src/polkit/polkitidentity.c b/src/polkit/polkitidentity.c -+index 3aa1f7f..10e9c17 100644 -+--- a/src/polkit/polkitidentity.c -++++ b/src/polkit/polkitidentity.c -+@@ -182,7 +182,15 @@ polkit_identity_from_string (const gchar *str, -+ } -+ else if (g_str_has_prefix (str, "unix-netgroup:")) -+ { -++#ifndef HAVE_SETNETGRENT -++ g_set_error (error, -++ POLKIT_ERROR, -++ POLKIT_ERROR_FAILED, -++ "Netgroups are not available on this machine ('%s')", -++ str); -++#else -+ identity = polkit_unix_netgroup_new (str + sizeof "unix-netgroup:" - 1); -++#endif -+ } -+ -+ if (identity == NULL && (error != NULL && *error == NULL)) -+@@ -344,6 +352,13 @@ polkit_identity_new_for_gvariant (GVariant *variant, -+ GVariant *v; -+ const char *name; -+ -++#ifndef HAVE_SETNETGRENT -++ g_set_error (error, -++ POLKIT_ERROR, -++ POLKIT_ERROR_FAILED, -++ "Netgroups are not available on this machine"); -++ goto out; -++#else -+ v = lookup_asv (details_gvariant, "name", G_VARIANT_TYPE_STRING, error); -+ if (v == NULL) -+ { -+@@ -353,6 +368,7 @@ polkit_identity_new_for_gvariant (GVariant *variant, -+ name = g_variant_get_string (v, NULL); -+ ret = polkit_unix_netgroup_new (name); -+ g_variant_unref (v); -++#endif -+ } -+ else -+ { -+diff --git a/src/polkit/polkitunixnetgroup.c b/src/polkit/polkitunixnetgroup.c -+index 8a2b369..83f8d4a 100644 -+--- a/src/polkit/polkitunixnetgroup.c -++++ b/src/polkit/polkitunixnetgroup.c -+@@ -194,6 +194,9 @@ polkit_unix_netgroup_set_name (PolkitUnixNetgroup *group, -+ PolkitIdentity * -+ polkit_unix_netgroup_new (const gchar *name) -+ { -++#ifndef HAVE_SETNETGRENT -++ g_assert_not_reached(); -++#endif -+ g_return_val_if_fail (name != NULL, NULL); -+ return POLKIT_IDENTITY (g_object_new (POLKIT_TYPE_UNIX_NETGROUP, -+ "name", name, -+diff --git a/src/polkitbackend/polkitbackendinteractiveauthority.c b/src/polkitbackend/polkitbackendinteractiveauthority.c -+index cb6fdab..ab47a98 100644 -+--- a/src/polkitbackend/polkitbackendinteractiveauthority.c -++++ b/src/polkitbackend/polkitbackendinteractiveauthority.c -+@@ -2233,25 +2233,26 @@ get_users_in_net_group (PolkitIdentity *group, -+ GList *ret; -+ -+ ret = NULL; -++#ifdef HAVE_SETNETGRENT -+ name = polkit_unix_netgroup_get_name (POLKIT_UNIX_NETGROUP (group)); -+ -+-#ifdef HAVE_SETNETGRENT_RETURN -++# ifdef HAVE_SETNETGRENT_RETURN -+ if (setnetgrent (name) == 0) -+ { -+ g_warning ("Error looking up net group with name %s: %s", name, g_strerror (errno)); -+ goto out; -+ } -+-#else -++# else -+ setnetgrent (name); -+-#endif -++# endif /* HAVE_SETNETGRENT_RETURN */ -+ -+ for (;;) -+ { -+-#if defined(HAVE_NETBSD) || defined(HAVE_OPENBSD) -++# if defined(HAVE_NETBSD) || defined(HAVE_OPENBSD) -+ const char *hostname, *username, *domainname; -+-#else -++# else -+ char *hostname, *username, *domainname; -+-#endif -++# endif /* defined(HAVE_NETBSD) || defined(HAVE_OPENBSD) */ -+ PolkitIdentity *user; -+ GError *error = NULL; -+ -+@@ -2282,6 +2283,7 @@ get_users_in_net_group (PolkitIdentity *group, -+ -+ out: -+ endnetgrent (); -++#endif /* HAVE_SETNETGRENT */ -+ return ret; -+ } -+ -+diff --git a/src/polkitbackend/polkitbackendjsauthority.cpp b/src/polkitbackend/polkitbackendjsauthority.cpp -+index 517f3c6..45b0378 100644 -+--- a/src/polkitbackend/polkitbackendjsauthority.cpp -++++ b/src/polkitbackend/polkitbackendjsauthority.cpp -+@@ -1499,6 +1499,7 @@ js_polkit_user_is_in_netgroup (JSContext *cx, -+ -+ JS::CallArgs args = JS::CallArgsFromVp (argc, vp); -+ -++#ifdef HAVE_SETNETGRENT -+ user = JS_EncodeString (cx, args[0].toString()); -+ netgroup = JS_EncodeString (cx, args[1].toString()); -+ -+@@ -1512,6 +1513,7 @@ js_polkit_user_is_in_netgroup (JSContext *cx, -+ -+ JS_free (cx, netgroup); -+ JS_free (cx, user); -++#endif -+ -+ ret = true; -+ -+diff --git a/test/polkit/polkitidentitytest.c b/test/polkit/polkitidentitytest.c -+index e91967b..e829aaa 100644 -+--- a/test/polkit/polkitidentitytest.c -++++ b/test/polkit/polkitidentitytest.c -+@@ -19,6 +19,7 @@ -+ * Author: Nikki VonHollen <vonhollen@google.com> -+ */ -+ -++#include "config.h" -+ #include "glib.h" -+ #include <polkit/polkit.h> -+ #include <polkit/polkitprivate.h> -+@@ -145,11 +146,15 @@ struct ComparisonTestData comparison_test_data [] = { -+ {"unix-group:root", "unix-group:jane", FALSE}, -+ {"unix-group:jane", "unix-group:jane", TRUE}, -+ -++#ifdef HAVE_SETNETGRENT -+ {"unix-netgroup:foo", "unix-netgroup:foo", TRUE}, -+ {"unix-netgroup:foo", "unix-netgroup:bar", FALSE}, -++#endif -+ -+ {"unix-user:root", "unix-group:root", FALSE}, -++#ifdef HAVE_SETNETGRENT -+ {"unix-user:jane", "unix-netgroup:foo", FALSE}, -++#endif -+ -+ {NULL}, -+ }; -+@@ -181,11 +186,13 @@ main (int argc, char *argv[]) -+ g_test_add_data_func ("/PolkitIdentity/group_string_2", "unix-group:jane", test_string); -+ g_test_add_data_func ("/PolkitIdentity/group_string_3", "unix-group:users", test_string); -+ -++#ifdef HAVE_SETNETGRENT -+ g_test_add_data_func ("/PolkitIdentity/netgroup_string", "unix-netgroup:foo", test_string); -++ g_test_add_data_func ("/PolkitIdentity/netgroup_gvariant", "unix-netgroup:foo", test_gvariant); -++#endif -+ -+ g_test_add_data_func ("/PolkitIdentity/user_gvariant", "unix-user:root", test_gvariant); -+ g_test_add_data_func ("/PolkitIdentity/group_gvariant", "unix-group:root", test_gvariant); -+- g_test_add_data_func ("/PolkitIdentity/netgroup_gvariant", "unix-netgroup:foo", test_gvariant); -+ -+ add_comparison_tests (); -+ -+diff --git a/test/polkit/polkitunixnetgrouptest.c b/test/polkit/polkitunixnetgrouptest.c -+index 3701ba1..e3352eb 100644 -+--- a/test/polkit/polkitunixnetgrouptest.c -++++ b/test/polkit/polkitunixnetgrouptest.c -+@@ -19,6 +19,7 @@ -+ * Author: Nikki VonHollen <vonhollen@google.com> -+ */ -+ -++#include "config.h" -+ #include "glib.h" -+ #include <polkit/polkit.h> -+ #include <string.h> -+@@ -69,7 +70,9 @@ int -+ main (int argc, char *argv[]) -+ { -+ g_test_init (&argc, &argv, NULL); -++#ifdef HAVE_SETNETGRENT -+ g_test_add_func ("/PolkitUnixNetgroup/new", test_new); -+ g_test_add_func ("/PolkitUnixNetgroup/set_name", test_set_name); -++#endif -+ return g_test_run (); -+ } -+-- -+2.17.1 -+ diff --git a/configure.ac b/configure.ac -index bfa87dd..cb86ac7 100644 +index 5cedb4e..87aa0ad 100644 --- a/configure.ac +++ b/configure.ac @@ -99,7 +99,7 @@ AC_CHECK_LIB(expat,XML_ParserCreate,[EXPAT_LIBS="-lexpat"], @@ -327,7 +97,7 @@ index 8a2b369..83f8d4a 100644 return POLKIT_IDENTITY (g_object_new (POLKIT_TYPE_UNIX_NETGROUP, "name", name, diff --git a/src/polkitbackend/polkitbackendinteractiveauthority.c b/src/polkitbackend/polkitbackendinteractiveauthority.c -index cb6fdab..ab47a98 100644 +index 056d9a8..36c2f3d 100644 --- a/src/polkitbackend/polkitbackendinteractiveauthority.c +++ b/src/polkitbackend/polkitbackendinteractiveauthority.c @@ -2233,25 +2233,26 @@ get_users_in_net_group (PolkitIdentity *group, @@ -372,18 +142,18 @@ index cb6fdab..ab47a98 100644 } diff --git a/src/polkitbackend/polkitbackendjsauthority.cpp b/src/polkitbackend/polkitbackendjsauthority.cpp -index 517f3c6..45b0378 100644 +index 9b752d1..09b2878 100644 --- a/src/polkitbackend/polkitbackendjsauthority.cpp +++ b/src/polkitbackend/polkitbackendjsauthority.cpp -@@ -1499,6 +1499,7 @@ js_polkit_user_is_in_netgroup (JSContext *cx, +@@ -1502,6 +1502,7 @@ js_polkit_user_is_in_netgroup (JSContext *cx, JS::CallArgs args = JS::CallArgsFromVp (argc, vp); +#ifdef HAVE_SETNETGRENT - user = JS_EncodeString (cx, args[0].toString()); - netgroup = JS_EncodeString (cx, args[1].toString()); - -@@ -1512,6 +1513,7 @@ js_polkit_user_is_in_netgroup (JSContext *cx, + JS::RootedString usrstr (authority->priv->cx); + usrstr = args[0].toString(); + user = JS_EncodeStringToUTF8 (cx, usrstr); +@@ -1519,6 +1520,7 @@ js_polkit_user_is_in_netgroup (JSContext *cx, JS_free (cx, netgroup); JS_free (cx, user); @@ -457,7 +227,7 @@ index 3701ba1..e3352eb 100644 return g_test_run (); } diff --git a/test/polkitbackend/test-polkitbackendjsauthority.c b/test/polkitbackend/test-polkitbackendjsauthority.c -index b484a26..01e4907 100644 +index 71aad23..fdd28f3 100644 --- a/test/polkitbackend/test-polkitbackendjsauthority.c +++ b/test/polkitbackend/test-polkitbackendjsauthority.c @@ -137,12 +137,14 @@ test_get_admin_identities (void) @@ -476,5 +246,5 @@ index b484a26..01e4907 100644 guint n; -- -2.17.1 +2.21.0 diff --git a/user/polkit/APKBUILD b/user/polkit/APKBUILD index 5b5dfdacd..54ecc7f98 100644 --- a/user/polkit/APKBUILD +++ b/user/polkit/APKBUILD @@ -1,8 +1,8 @@ # Contributor: Carlo Landmeter # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=polkit -pkgver=0.115 -pkgrel=3 +pkgver=0.116 +pkgrel=0 pkgdesc="Toolkit for controlling system-wide privileges" url="https://www.freedesktop.org/wiki/Software/polkit/" arch="all" @@ -17,7 +17,6 @@ pkggroups="polkitd" install="$pkgname.pre-install $pkgname.pre-upgrade" source="https://www.freedesktop.org/software/polkit/releases/polkit-$pkgver.tar.gz 0001-make-netgroup-support-optional.patch - CVE-2018-19788.patch fix-consolekit-db-stat.patch fix-test-fgetpwent.patch " @@ -66,8 +65,7 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="1153011fa93145b2c184e6b3446d3ca21b38918641aeccd8fac3985ac3e30ec6bc75be6973985fde90f2a24236592f1595be259155061c2d33358dd17c4ee4fc polkit-0.115.tar.gz -6d68d90e6dc9594175631c99699d4d949fba6d2d1ad66680897f9a17e9dc3c17b44f2bc06ed4f6149931e17a96baaf481981fb0698aace7c81a67c06c2806c29 0001-make-netgroup-support-optional.patch -4a2a11c1de8ef11def9c32b4b595fd45066aeaeb0cb42665846e3c7b8c6f5b7d3a782d722a25889afdb6a4414abed0837a359692342baaeb770d0e9712818ce1 CVE-2018-19788.patch +sha512sums="b66b01cc2bb4349de70147f41f161f0f6f41e7230b581dfb054058b48969ec57041ab05b51787c749ccfc36aa5f317952d7e7ba337b4f6f6c0a923ed5866c2d5 polkit-0.116.tar.gz +f13a350a040a80b705d28e2ce3fac183409f593dc360879ce1bc9ec85faa7796cf0f4e054098b737fb816369de6c9d598449f6908316484aac99a44a68102ae6 0001-make-netgroup-support-optional.patch 95493ef842b46ce9e724933a5d86083589075fb452435057b8f629643cac7c7eff67a24fd188087987e98057f0130757fad546d0c090767da3d71ebaf8485a24 fix-consolekit-db-stat.patch 966825aded565432f4fda9e54113a773b514ebf7ee7faa83bcb8b97d218ae84a8707d6747bbc3cb8a828638d692fdef34c05038f150ad38e02a29f2c782aba5b fix-test-fgetpwent.patch" diff --git a/user/polkit/CVE-2018-19788.patch b/user/polkit/CVE-2018-19788.patch deleted file mode 100644 index 6a2845aca..000000000 --- a/user/polkit/CVE-2018-19788.patch +++ /dev/null @@ -1,183 +0,0 @@ -From 35af308b530f36c1a0a912387106a59b3ab92027 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= <zbyszek@in.waw.pl> -Date: Mon, 3 Dec 2018 10:28:58 +0100 -Subject: [PATCH 1/2] Use default of -1 for uid/gid in class initialization - -This doesn't seem to change anything in polkitd behaviour, but it -seems cleaner to default to -1 which here means "unset". ---- - src/polkit/polkitunixgroup.c | 4 ++-- - src/polkit/polkitunixuser.c | 4 ++-- - 2 files changed, 4 insertions(+), 4 deletions(-) - -diff --git a/src/polkit/polkitunixgroup.c b/src/polkit/polkitunixgroup.c -index c57a1aa..095cca0 100644 ---- a/src/polkit/polkitunixgroup.c -+++ b/src/polkit/polkitunixgroup.c -@@ -131,9 +131,9 @@ polkit_unix_group_class_init (PolkitUnixGroupClass *klass) - g_param_spec_int ("gid", - "Group ID", - "The UNIX group ID", -- 0, -+ -1, - G_MAXINT, -- 0, -+ -1, - G_PARAM_CONSTRUCT | - G_PARAM_READWRITE | - G_PARAM_STATIC_NAME | -diff --git a/src/polkit/polkitunixuser.c b/src/polkit/polkitunixuser.c -index 8bfd3a1..a5285f4 100644 ---- a/src/polkit/polkitunixuser.c -+++ b/src/polkit/polkitunixuser.c -@@ -144,9 +144,9 @@ polkit_unix_user_class_init (PolkitUnixUserClass *klass) - g_param_spec_int ("uid", - "User ID", - "The UNIX user ID", -- 0, -+ -1, - G_MAXINT, -- 0, -+ -1, - G_PARAM_CONSTRUCT | - G_PARAM_READWRITE | - G_PARAM_STATIC_NAME | --- -2.18.1 - - -From fbaab32cb4ed9ed5f1e3eea6cd317d443aa427dc Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= <zbyszek@in.waw.pl> -Date: Mon, 3 Dec 2018 12:51:26 +0100 -Subject: [PATCH 2/2] Check gid and uid initalization in PolkitUnixUser and - Group objects - -When a user or group above INT32_MAX is created, the numeric uid or -gid wraps around to negative when the value is assigned to gint, and -polkit gets confused. Let's refuse such uids and gids. - -This patch just refuses to initialize uid and gid values to negative. -A nicer fix is to change the underlying type to e.g. gint64 to allow -the full range of values in uid_t and gid_t to be represented. But -this cannot be done without breaking the API, so likely new functions -will have to be added (a polkit_unix_user_new variant that takes a -gint64, and the same for _group_new, _set_uid, _get_uid, _set_gid, -_get_gid, etc.). This will require a bigger patch. - -Fixes https://gitlab.freedesktop.org/polkit/polkit/issues/74. - -Example sessions from uid=4000000000: - -Dec 03 14:35:08 krowka polkitd[21432]: system-bus-name::1.41869 is inquiring whether system-bus-name::1.79432 is authorized for org.freedesktop.systemd1.manage-units -Dec 03 14:35:08 krowka polkitd[21432]: user of caller is unix-user:root -Dec 03 14:35:08 krowka polkitd[21432]: polkit_unix_user_new: assertion 'uid >= 0' failed -Dec 03 14:35:08 krowka polkitd[21432]: polkit_identity_to_string: assertion 'POLKIT_IS_IDENTITY (identity)' failed -Dec 03 14:35:08 krowka polkitd[21432]: user of subject is (null) -Dec 03 14:35:08 krowka polkitd[21432]: polkit_identity_equal: assertion 'POLKIT_IS_IDENTITY (b)' failed -Dec 03 14:35:08 krowka polkitd[21432]: checking whether system-bus-name::1.79432 is authorized for org.freedesktop.systemd1.manage-units -Dec 03 14:35:08 krowka polkitd[21432]: polkit_unix_user_new: assertion 'uid >= 0' failed -Dec 03 14:35:08 krowka polkitd[21432]: -Dec 03 14:35:08 krowka polkitd[21432]: polkit_authorization_result_get_is_challenge: assertion 'POLKIT_IS_AUTHORIZATION_RESULT (result)' failed -Dec 03 14:35:08 krowka polkitd[21432]: g_object_ref: assertion 'G_IS_OBJECT (object)' failed -Dec 03 14:35:08 krowka polkitd[21432]: g_object_ref: assertion 'G_IS_OBJECT (object)' failed -Dec 03 14:35:08 krowka polkitd[21432]: polkit_authorization_result_get_details: assertion 'POLKIT_IS_AUTHORIZATION_RESULT (result)' failed -Dec 03 14:35:08 krowka polkitd[21432]: polkit_authorization_result_get_is_challenge: assertion 'POLKIT_IS_AUTHORIZATION_RESULT (result)' failed -Dec 03 14:35:08 krowka polkitd[21432]: polkit_authorization_result_get_is_authorized: assertion 'POLKIT_IS_AUTHORIZATION_RESULT (result)' failed -Dec 03 14:35:08 krowka polkitd[21432]: g_object_unref: assertion 'G_IS_OBJECT (object)' failed -Dec 03 14:35:08 krowka polkitd[21432]: g_object_unref: assertion 'G_IS_OBJECT (object)' failed ---- - src/polkit/polkitunixgroup.c | 9 ++++++++- - src/polkit/polkitunixuser.c | 7 +++++++ - 2 files changed, 15 insertions(+), 1 deletion(-) - -diff --git a/src/polkit/polkitunixgroup.c b/src/polkit/polkitunixgroup.c -index 095cca0..53db862 100644 ---- a/src/polkit/polkitunixgroup.c -+++ b/src/polkit/polkitunixgroup.c -@@ -71,6 +71,7 @@ G_DEFINE_TYPE_WITH_CODE (PolkitUnixGroup, polkit_unix_group, G_TYPE_OBJECT, - static void - polkit_unix_group_init (PolkitUnixGroup *unix_group) - { -+ unix_group->gid = -1; - } - - static void -@@ -100,11 +101,14 @@ polkit_unix_group_set_property (GObject *object, - GParamSpec *pspec) - { - PolkitUnixGroup *unix_group = POLKIT_UNIX_GROUP (object); -+ gint val; - - switch (prop_id) - { - case PROP_GID: -- unix_group->gid = g_value_get_int (value); -+ val = g_value_get_int (value); -+ g_return_if_fail (val >= 0); -+ unix_group->gid = val; - break; - - default: -@@ -169,6 +173,7 @@ polkit_unix_group_set_gid (PolkitUnixGroup *group, - gint gid) - { - g_return_if_fail (POLKIT_IS_UNIX_GROUP (group)); -+ g_return_if_fail (gid >= 0); - group->gid = gid; - } - -@@ -183,6 +188,8 @@ polkit_unix_group_set_gid (PolkitUnixGroup *group, - PolkitIdentity * - polkit_unix_group_new (gint gid) - { -+ g_return_val_if_fail (gid >= 0, NULL); -+ - return POLKIT_IDENTITY (g_object_new (POLKIT_TYPE_UNIX_GROUP, - "gid", gid, - NULL)); -diff --git a/src/polkit/polkitunixuser.c b/src/polkit/polkitunixuser.c -index a5285f4..ef6403e 100644 ---- a/src/polkit/polkitunixuser.c -+++ b/src/polkit/polkitunixuser.c -@@ -72,6 +72,7 @@ G_DEFINE_TYPE_WITH_CODE (PolkitUnixUser, polkit_unix_user, G_TYPE_OBJECT, - static void - polkit_unix_user_init (PolkitUnixUser *unix_user) - { -+ unix_user->uid = -1; - unix_user->name = NULL; - } - -@@ -112,10 +113,13 @@ polkit_unix_user_set_property (GObject *object, - GParamSpec *pspec) - { - PolkitUnixUser *unix_user = POLKIT_UNIX_USER (object); -+ gint val; - - switch (prop_id) - { - case PROP_UID: -+ val = g_value_get_int (value); -+ g_return_if_fail (val >= 0); - unix_user->uid = g_value_get_int (value); - break; - -@@ -182,6 +186,7 @@ polkit_unix_user_set_uid (PolkitUnixUser *user, - gint uid) - { - g_return_if_fail (POLKIT_IS_UNIX_USER (user)); -+ g_return_if_fail (uid >= 0); - user->uid = uid; - } - -@@ -196,6 +201,8 @@ polkit_unix_user_set_uid (PolkitUnixUser *user, - PolkitIdentity * - polkit_unix_user_new (gint uid) - { -+ g_return_val_if_fail (uid >= 0, NULL); -+ - return POLKIT_IDENTITY (g_object_new (POLKIT_TYPE_UNIX_USER, - "uid", uid, - NULL)); --- -2.18.1 - diff --git a/user/postfix/APKBUILD b/user/postfix/APKBUILD index a0c2d1533..312916128 100644 --- a/user/postfix/APKBUILD +++ b/user/postfix/APKBUILD @@ -1,8 +1,8 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: Dan Theisen <djt@hxx.in> pkgname=postfix -pkgver=3.3.2 -pkgrel=2 +pkgver=3.4.5 +pkgrel=0 pkgdesc="Mail server (MTA) that is Sendmail outside and Qmail inside" url="http://www.postfix.org/" arch="all" @@ -91,6 +91,6 @@ sqlite() { _database "sqlite" "SQLite 3" } -sha512sums="df67eb978751900d357597def16f744dae990f5cc4e48af8dca57f84b0140e05416712727c1760b8f557ed3564cd593620756561b0a6f31db4b54d928e15293f postfix-3.3.2.tar.gz +sha512sums="af59d960b40799f7667935bef8fafb93ae6dcb70abaa77a15cf498571f37fa0429f411f9f08b1b6bfa588d3f572260d14d6d5409f0cd1e82b1c59928b2124c94 postfix-3.4.5.tar.gz 63ea7fe461fca1306088e9984acfab6ab3e919dafa2b606d43fbca472969e6ec232800071f939f5a4482c01c6d7b53a86de9e7e893ab94f4cb135d16ff5763cc honour-config-directory.patch 2ad1b053bbb51d4f480dbf5a01252e8e99a82ec14a75ff49336b2b190ea55bc02400542b109fa0cc4ebfe6b42eaabbc45f70f2ea581f1eb9c4189c439b825592 postfix.initd" diff --git a/user/powerpc-utils/APKBUILD b/user/powerpc-utils/APKBUILD index 878466c74..c16fd2d05 100644 --- a/user/powerpc-utils/APKBUILD +++ b/user/powerpc-utils/APKBUILD @@ -1,20 +1,18 @@ # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=powerpc-utils -pkgver=1.3.5 +pkgver=1.3.6 pkgrel=0 pkgdesc="Maintenance utilities for PowerPC computers" -url="https://github.com/nfont/powerpc-utils" +url="https://github.com/ibm-power-utilities/powerpc-utils" arch="ppc ppc64 ppc64le" options="!check" # No test suite. license="GPL-2.0+" depends="bash bc" makedepends="autoconf automake zlib-dev" subpackages="$pkgname-doc" -source="$pkgname-$pkgver.tar.gz::https://github.com/nfont/$pkgname/archive/v$pkgver.tar.gz" +source="$pkgname-$pkgver.tar.gz::https://github.com/ibm-power-utilities/$pkgname/archive/v$pkgver.tar.gz" build() { - cd "$builddir" - ./autogen.sh ./configure \ --build=$CBUILD \ @@ -26,8 +24,7 @@ build() { } package() { - cd "$builddir" make DESTDIR="$pkgdir" install } -sha512sums="a01f8fc45abd91d0629f8f48e3c2877a863aa1f244907bb65fcc457c2c933e7043181666c237956723f956b7c3d7ce7a0cedc36eaf26ce3cf777aa8f0525244d powerpc-utils-1.3.5.tar.gz" +sha512sums="a30516ccdfe19a198cd5c1a7ad3646d15b599fb40f772cbc7ac95c6d3b364575a3ebb16708022886ba3bcd3184070a3f4d72b649427879fcdd2655406470e977 powerpc-utils-1.3.6.tar.gz" diff --git a/user/ppp/02_all_make-vars.patch b/user/ppp/02_all_make-vars.patch new file mode 100644 index 000000000..7937d666e --- /dev/null +++ b/user/ppp/02_all_make-vars.patch @@ -0,0 +1,185 @@ +--- ppp-2.4.5/chat/Makefile.linux ++++ ppp-2.4.5/chat/Makefile.linux +@@ -10,7 +10,6 @@ + CDEF4= -DFNDELAY=O_NDELAY # Old name value + CDEFS= $(CDEF1) $(CDEF2) $(CDEF3) $(CDEF4) + +-COPTS= -O2 -g -pipe + CFLAGS= $(COPTS) $(CDEFS) + + INSTALL= install +@@ -18,7 +17,7 @@ + all: chat + + chat: chat.o +- $(CC) -o chat chat.o ++ $(CC) $(LDFLAGS) $(CFLAGS) -o $@ $^ + + chat.o: chat.c + $(CC) -c $(CFLAGS) -o chat.o chat.c +--- ppp-2.4.5/pppd/Makefile.linux ++++ ppp-2.4.5/pppd/Makefile.linux +@@ -32,7 +32,7 @@ + + # CC = gcc + # +-COPTS = -O2 -pipe -Wall -g ++COPTS+= -Wall + LIBS = + + # Uncomment the next 2 lines to include support for Microsoft's +--- ppp-2.4.5/pppd/plugins/Makefile.linux ++++ ppp-2.4.5/pppd/plugins/Makefile.linux +@@ -1,7 +1,11 @@ + #CC = gcc +-COPTS = -O2 -g + CFLAGS = $(COPTS) -I.. -I../../include -fPIC +-LDFLAGS = -shared ++LDFLAGS_PROG := $(LDFLAGS) ++export LDFLAGS LDFLAGS_PROG ++LDFLAGS += -shared ++# need the following option, otherwise linking plugins might fail with undef errors (Gentoo bug 210837) ++LDFLAGS += -Wl,--allow-shlib-undefined ++LIBS = + INSTALL = install + + DESTDIR = $(INSTROOT)@DESTDIR@ +@@ -23,7 +27,7 @@ + for d in $(SUBDIRS); do $(MAKE) $(MFLAGS) -C $$d all; done + + %.so: %.c +- $(CC) -o $@ $(LDFLAGS) $(CFLAGS) $^ ++ $(CC) $(LDFLAGS) $(CFLAGS) -o $@ $^ $(LIBS) + + VERSION = $(shell awk -F '"' '/VERSION/ { print $$2; }' ../patchlevel.h) + +--- ppp-2.4.5/pppd/plugins/pppoatm/Makefile.linux ++++ ppp-2.4.5/pppd/plugins/pppoatm/Makefile.linux +@@ -1,7 +1,5 @@ + #CC = gcc +-COPTS = -O2 -g + CFLAGS = $(COPTS) -I../.. -I../../../include -fPIC +-LDFLAGS = -shared + INSTALL = install + + #*********************************************************************** +@@ -33,7 +31,7 @@ + all: $(PLUGIN) + + $(PLUGIN): $(PLUGIN_OBJS) +- $(CC) $(CFLAGS) -o $@ -shared $^ $(LIBS) ++ $(CC) $(LDFLAGS) $(CFLAGS) -o $@ $^ $(LIBS) + + install: all + $(INSTALL) -d -m 755 $(LIBDIR) +--- ppp-2.4.5/pppd/plugins/pppol2tp/Makefile.linux ++++ ppp-2.4.5/pppd/plugins/pppol2tp/Makefile.linux +@@ -1,7 +1,5 @@ + #CC = gcc +-COPTS = -O2 -g + CFLAGS = $(COPTS) -I. -I../.. -I../../../include -fPIC +-LDFLAGS = -shared + INSTALL = install + + #*********************************************************************** +@@ -16,7 +14,7 @@ + all: $(PLUGINS) + + %.so: %.o +- $(CC) $(CFLAGS) -o $@ -shared $^ $(LIBS) ++ $(CC) $(LDFLAGS) $(CFLAGS) -o $@ $^ $(LIBS) + + install: all + $(INSTALL) -d -m 755 $(LIBDIR) +--- ppp-2.4.5/pppd/plugins/radius/Makefile.linux ++++ ppp-2.4.5/pppd/plugins/radius/Makefile.linux +@@ -12,7 +12,7 @@ + INSTALL = install + + PLUGIN=radius.so radattr.so radrealms.so +-CFLAGS=-I. -I../.. -I../../../include -O2 -fPIC -DRC_LOG_FACILITY=LOG_DAEMON ++CFLAGS=$(COPTS) -I. -I../.. -I../../../include -fPIC -DRC_LOG_FACILITY=LOG_DAEMON + + # Uncomment the next line to include support for Microsoft's + # MS-CHAP authentication protocol. +@@ -43,13 +43,13 @@ + $(INSTALL) -c -m 444 pppd-radattr.8 $(MANDIR) + + radius.so: radius.o libradiusclient.a +- $(CC) -o radius.so -shared radius.o libradiusclient.a ++ $(CC) $(LDFLAGS) $(CFLAGS) -o $@ $^ + + radattr.so: radattr.o +- $(CC) -o radattr.so -shared radattr.o ++ $(CC) $(LDFLAGS) $(CFLAGS) -o $@ $^ + + radrealms.so: radrealms.o +- $(CC) -o radrealms.so -shared radrealms.o ++ $(CC) $(LDFLAGS) $(CFLAGS) -o $@ $^ + + CLIENTOBJS = avpair.o buildreq.o config.o dict.o ip_util.o \ + clientid.o sendserver.o lock.o util.o md5.o +--- ppp-2.4.5/pppd/plugins/rp-pppoe/Makefile.linux ++++ ppp-2.4.5/pppd/plugins/rp-pppoe/Makefile.linux +@@ -25,12 +25,11 @@ + # Version is set ONLY IN THE MAKEFILE! Don't delete this! + RP_VERSION=3.8p + +-COPTS=-O2 -g + CFLAGS=$(COPTS) -I../../../include '-DRP_VERSION="$(RP_VERSION)"' + all: rp-pppoe.so pppoe-discovery + + pppoe-discovery: pppoe-discovery.o debug.o +- $(CC) -o pppoe-discovery pppoe-discovery.o debug.o ++ $(CC) $(LDFLAGS_PROG) $(CFLAGS) -o pppoe-discovery pppoe-discovery.o debug.o + + pppoe-discovery.o: pppoe-discovery.c + $(CC) $(CFLAGS) -c -o pppoe-discovery.o pppoe-discovery.c +@@ -39,7 +38,7 @@ + $(CC) $(CFLAGS) -c -o debug.o debug.c + + rp-pppoe.so: plugin.o discovery.o if.o common.o +- $(CC) -o rp-pppoe.so -shared plugin.o discovery.o if.o common.o ++ $(CC) $(LDFLAGS) $(CFLAGS) -o rp-pppoe.so plugin.o discovery.o if.o common.o + + install: all + $(INSTALL) -d -m 755 $(LIBDIR) +--- ppp-2.4.5/pppdump/Makefile.linux ++++ ppp-2.4.5/pppdump/Makefile.linux +@@ -2,7 +2,7 @@ + BINDIR = $(DESTDIR)/sbin + MANDIR = $(DESTDIR)/share/man/man8 + +-CFLAGS= -O -I../include/net ++CFLAGS=$(COPTS) -I../include/net + OBJS = pppdump.o bsd-comp.o deflate.o zlib.o + + INSTALL= install +@@ -10,7 +10,7 @@ + all: pppdump + + pppdump: $(OBJS) +- $(CC) -o pppdump $(OBJS) ++ $(CC) $(LDFLAGS) -o pppdump $(OBJS) + + clean: + rm -f pppdump $(OBJS) *~ +--- ppp-2.4.5/pppstats/Makefile.linux ++++ ppp-2.4.5/pppstats/Makefile.linux +@@ -10,7 +10,6 @@ + PPPSTATOBJS = pppstats.o + + #CC = gcc +-COPTS = -O + COMPILE_FLAGS = -I../include + LIBS = + +@@ -26,7 +25,7 @@ + $(INSTALL) -c -m 444 pppstats.8 $(MANDIR) + + pppstats: $(PPPSTATSRCS) +- $(CC) $(CFLAGS) -o pppstats pppstats.c $(LIBS) ++ $(CC) $(CFLAGS) $(LDFLAGS) -o pppstats pppstats.c $(LIBS) + + clean: + rm -f pppstats *~ #* core diff --git a/user/ppp/03_all_use_internal_logwtmp.patch b/user/ppp/03_all_use_internal_logwtmp.patch new file mode 100644 index 000000000..d9ecddf25 --- /dev/null +++ b/user/ppp/03_all_use_internal_logwtmp.patch @@ -0,0 +1,22 @@ +Use internal implementation of logwtmp function to prevent +utilities from sys-apps/coreutils to not detect authorized users + +Patch by: Sergey Popov <pinkbyte@gentoo.org> + +--- a/pppd/sys-linux.c ++++ b/pppd/sys-linux.c +@@ -2196,7 +2197,6 @@ + return ok; + } + +-#ifndef HAVE_LOGWTMP + /******************************************************************** + * + * Update the wtmp file with the appropriate user name and tty device. +@@ -2270,7 +2270,7 @@ + } + #endif + } +-#endif /* HAVE_LOGWTMP */ ++ + diff --git a/user/ppp/04_all_mpls.patch b/user/ppp/04_all_mpls.patch new file mode 100644 index 000000000..54b79f7bd --- /dev/null +++ b/user/ppp/04_all_mpls.patch @@ -0,0 +1,427 @@ +--- ppp-2.4.5/pppd/main.c ++++ ppp-2.4.5/pppd/main.c +@@ -96,6 +96,9 @@ + #include "fsm.h" + #include "lcp.h" + #include "ipcp.h" ++ ++#include "mplscp.h" ++ + #ifdef INET6 + #include "ipv6cp.h" + #endif +@@ -283,6 +286,7 @@ + &cbcp_protent, + #endif + &ipcp_protent, ++ &mplscp_protent, + #ifdef INET6 + &ipv6cp_protent, + #endif +--- ppp-2.4.5/pppd/Makefile.linux ++++ ppp-2.4.5/pppd/Makefile.linux +@@ -13,16 +13,16 @@ + + PPPDSRCS = main.c magic.c fsm.c lcp.c ipcp.c upap.c chap-new.c md5.c ccp.c \ + ecp.c ipxcp.c auth.c options.c sys-linux.c md4.c chap_ms.c \ +- demand.c utils.c tty.c eap.c chap-md5.c session.c ++ demand.c utils.c tty.c eap.c chap-md5.c session.c mplscp.c + + HEADERS = ccp.h session.h chap-new.h ecp.h fsm.h ipcp.h \ + ipxcp.h lcp.h magic.h md5.h patchlevel.h pathnames.h pppd.h \ +- upap.h eap.h ++ upap.h eap.h mplscp.h + + MANPAGES = pppd.8 + PPPDOBJS = main.o magic.o fsm.o lcp.o ipcp.o upap.o chap-new.o md5.o ccp.o \ + ecp.o auth.o options.o demand.o utils.o sys-linux.o ipxcp.o tty.o \ +- eap.o chap-md5.o session.o ++ eap.o chap-md5.o session.o mplscp.o + + # + # include dependencies if present +--- ppp-2.4.5/pppd/mplscp.c ++++ ppp-2.4.5/pppd/mplscp.c +@@ -0,0 +1,371 @@ ++ ++/* MPLSCP - Serge.Krier@advalvas.be (C) 2001 */ ++ ++#include <stdio.h> ++#include <string.h> ++#include <netdb.h> ++#include <sys/param.h> ++#include <sys/types.h> ++#include <sys/socket.h> ++#include <netinet/in.h> ++#include <arpa/inet.h> ++ ++#include "pppd.h" ++#include "fsm.h" ++#include "mplscp.h" ++ ++ ++/* local vars */ ++/* static int mplscp_is_up; */ /* have called np_up() */ ++ ++/* ++ * Callbacks for fsm code. (CI = Configuration Information) ++ */ ++static void mplscp_resetci __P((fsm *)); /* Reset our CI */ ++static int mplscp_cilen __P((fsm *)); /* Return length of our CI */ ++static void mplscp_addci __P((fsm *, u_char *, int *)); /* Add our CI */ ++static int mplscp_ackci __P((fsm *, u_char *, int)); /* Peer ack'd our CI */ ++static int mplscp_nakci __P((fsm *, u_char *, int)); /* Peer nak'd our CI */ ++static int mplscp_rejci __P((fsm *, u_char *, int)); /* Peer rej'd our CI */ ++static int mplscp_reqci __P((fsm *, u_char *, int *, int)); /* Rcv CI */ ++static void mplscp_up __P((fsm *)); /* We're UP */ ++static void mplscp_down __P((fsm *)); /* We're DOWN */ ++static void mplscp_finished __P((fsm *)); /* Don't need lower layer */ ++ ++fsm mplscp_fsm[NUM_PPP]; /* MPLSCP fsm structure */ ++ ++static fsm_callbacks mplscp_callbacks = { /* MPLSCP callback routines */ ++ mplscp_resetci, /* Reset our Configuration Information */ ++ mplscp_cilen, /* Length of our Configuration Information */ ++ mplscp_addci, /* Add our Configuration Information */ ++ mplscp_ackci, /* ACK our Configuration Information */ ++ mplscp_nakci, /* NAK our Configuration Information */ ++ mplscp_rejci, /* Reject our Configuration Information */ ++ mplscp_reqci, /* Request peer's Configuration Information */ ++ mplscp_up, /* Called when fsm reaches OPENED state */ ++ mplscp_down, /* Called when fsm leaves OPENED state */ ++ NULL, /* Called when we want the lower layer up */ ++ mplscp_finished, /* Called when we want the lower layer down */ ++ NULL, /* Called when Protocol-Reject received */ ++ NULL, /* Retransmission is necessary */ ++ NULL, /* Called to handle protocol-specific codes */ ++ "MPLSCP" /* String name of protocol */ ++}; ++ ++static option_t mplscp_option_list[] = { ++ { "mpls", o_bool, &mplscp_protent.enabled_flag, ++ "Enable MPLSCP (and MPLS)", 1 }, ++ { NULL } }; ++ ++/* ++ * Protocol entry points from main code. ++ */ ++ ++static void mplscp_init __P((int)); ++static void mplscp_open __P((int)); ++static void mplscp_close __P((int, char *)); ++static void mplscp_lowerup __P((int)); ++static void mplscp_lowerdown __P((int)); ++static void mplscp_input __P((int, u_char *, int)); ++static void mplscp_protrej __P((int)); ++static int mplscp_printpkt __P((u_char *, int, ++ void (*) __P((void *, char *, ...)), void *)); ++ ++struct protent mplscp_protent = { ++ PPP_MPLSCP, ++ mplscp_init, ++ mplscp_input, ++ mplscp_protrej, ++ mplscp_lowerup, ++ mplscp_lowerdown, ++ mplscp_open, ++ mplscp_close, ++ mplscp_printpkt, ++ NULL, ++ 0, /* MPLS not enabled by default */ ++ "MPLSCP", ++ "MPLS", ++ mplscp_option_list, ++ NULL, ++ NULL, ++ NULL ++}; ++ ++/* ++ * mplscp_init - Initialize MPLSCP. ++ */ ++static void ++mplscp_init(int unit) { ++ ++ fsm *f = &mplscp_fsm[unit]; ++ ++ f->unit = unit; ++ f->protocol = PPP_MPLSCP; ++ f->callbacks = &mplscp_callbacks; ++ fsm_init(&mplscp_fsm[unit]); ++ ++} ++ ++/* ++ * mplscp_open - MPLSCP is allowed to come up. ++ */ ++static void ++mplscp_open(int unit) { ++ ++ fsm_open(&mplscp_fsm[unit]); ++ ++} ++ ++/* ++ * mplscp_close - Take MPLSCP down. ++ */ ++static void ++mplscp_close(int unit, char *reason) { ++ ++ fsm_close(&mplscp_fsm[unit], reason); ++ ++} ++ ++/* ++ * mplscp_lowerup - The lower layer is up. ++ */ ++static void ++mplscp_lowerup(int unit) { ++ ++ fsm_lowerup(&mplscp_fsm[unit]); ++} ++ ++/* ++ * mplscp_lowerdown - The lower layer is down. ++ */ ++static void ++mplscp_lowerdown(int unit) { ++ ++ fsm_lowerdown(&mplscp_fsm[unit]); ++} ++ ++/* ++ * mplscp_input - Input MPLSCP packet. ++ */ ++static void ++mplscp_input(int unit, u_char *p, int len) { ++ ++ fsm_input(&mplscp_fsm[unit], p, len); ++} ++ ++/* ++ * mplscp_protrej - A Protocol-Reject was received for MPLSCP. ++ * Pretend the lower layer went down, so we shut up. ++ */ ++static void ++mplscp_protrej(int unit) { ++ ++ fsm_lowerdown(&mplscp_fsm[unit]); ++} ++ ++/* ++ * mplscp_resetci - Reset our CI. ++ * Called by fsm_sconfreq, Send Configure Request. ++ */ ++static void ++mplscp_resetci(fsm *f) { ++ ++ return; ++} ++ ++/* ++ * mplscp_cilen - Return length of our CI. ++ * Called by fsm_sconfreq, Send Configure Request. ++ */ ++static int ++mplscp_cilen(fsm *f) { ++ ++ return 0; ++} ++ ++/* ++ * mplscp_addci - Add our desired CIs to a packet. ++ * Called by fsm_sconfreq, Send Configure Request. ++ */ ++static void ++mplscp_addci(fsm *f, u_char *ucp, int *lenp) { ++ ++} ++ ++/* ++ * ipcp_ackci - Ack our CIs. ++ * Called by fsm_rconfack, Receive Configure ACK. ++ * ++ * Returns: ++ * 0 - Ack was bad. ++ * 1 - Ack was good. ++ */ ++static int ++mplscp_ackci(fsm *f, u_char *p, int len) { ++ ++ return 1; ++ ++} ++ ++/* ++ * mplscp_nakci - Peer has sent a NAK for some of our CIs. ++ * This should not modify any state if the Nak is bad ++ * or if MPLSCP is in the OPENED state. ++ * Calback from fsm_rconfnakrej - Receive Configure-Nak or Configure-Reject. ++ * ++ * Returns: ++ * 0 - Nak was bad. ++ * 1 - Nak was good. ++ */ ++static int ++mplscp_nakci(fsm *f, u_char *p, int len) { ++ ++ return 1; ++} ++ ++/* ++ * MPLSVP_rejci - Reject some of our CIs. ++ * Callback from fsm_rconfnakrej. ++ */ ++static int ++mplscp_rejci(fsm *f, u_char *p, int len) { ++ ++ return 1; ++ ++} ++ ++/* ++ * mplscp_reqci - Check the peer's requested CIs and send appropriate response. ++ * Callback from fsm_rconfreq, Receive Configure Request ++ * ++ * Returns: CONFACK, CONFNAK or CONFREJ and input packet modified ++ * appropriately. If reject_if_disagree is non-zero, doesn't return ++ * CONFNAK; returns CONFREJ if it can't return CONFACK. ++ */ ++static int ++mplscp_reqci(fsm *f, u_char *inp, int *len, int reject_if_disagree) { ++ ++ ++ int rc = CONFACK; /* Final packet return code */ ++ ++ PUTCHAR(CONFACK,inp); ++ ++ return rc; ++ ++} ++ ++static void ++mplscp_up(fsm *f) { ++ ++ sifnpmode(f->unit, PPP_MPLS_UC, NPMODE_PASS); ++ /* sifnpmode(f->unit, PPP_MPLS_MC, NPMODE_PASS);*/ ++ ++ np_up(f->unit, PPP_MPLS_UC); ++ /* np_up(f->unit, PPP_MPLS_MC);*/ ++ /* ipcp_is_up = 1;*/ ++ ++ ++#if 1 ++ printf("MPLSCP is OPENED\n"); ++#endif ++ ++} ++ ++static void ++mplscp_down(fsm *f) { ++ ++ sifnpmode(f->unit, PPP_MPLS_UC, NPMODE_DROP); ++ /* sifnpmode(f->unit, PPP_MPLS_MC, NPMODE_DROP);*/ ++ ++ sifdown(f->unit); ++ ++#if 1 ++ printf("MPLSCP is CLOSED\n"); ++#endif ++ ++ ++} ++ ++static void ++mplscp_finished(fsm *f) { ++ ++ np_finished(f->unit, PPP_MPLS_UC); ++ /* np_finished(f->unit, PPP_MPLS_MC);*/ ++ ++} ++ ++/* ++ * mpls_printpkt - print the contents of an MPLSCP packet. ++ */ ++static char *mplscp_codenames[] = { ++ "ConfReq", "ConfAck", "ConfNak", "ConfRej", ++ "TermReq", "TermAck", "CodeRej" ++}; ++ ++static int ++mplscp_printpkt(u_char *p, int plen, ++ void (*printer) __P((void *, char *, ...)), ++ void *arg) { ++ ++ int code, id, len, olen; ++ u_char *pstart, *optend; ++ ++ if (plen < HEADERLEN) ++ return 0; ++ pstart = p; ++ GETCHAR(code, p); ++ GETCHAR(id, p); ++ GETSHORT(len, p); ++ if (len < HEADERLEN || len > plen) ++ return 0; ++ ++ if (code >= 1 && code <= sizeof(mplscp_codenames) / sizeof(char *)) ++ printer(arg, " %s", mplscp_codenames[code-1]); ++ else ++ printer(arg, " code=0x%x", code); ++ printer(arg, " id=0x%x", id); ++ len -= HEADERLEN; ++ switch (code) { ++ case CONFREQ: ++ case CONFACK: ++ case CONFNAK: ++ case CONFREJ: ++ /* print option list */ ++ while (len >= 2) { ++ GETCHAR(code, p); ++ GETCHAR(olen, p); ++ p -= 2; ++ if (olen < 2 || olen > len) { ++ break; ++ } ++ printer(arg, " <"); ++ len -= olen; ++ optend = p + olen; ++ while (p < optend) { ++ GETCHAR(code, p); ++ printer(arg, " %.2x", code); ++ } ++ printer(arg, ">"); ++ } ++ break; ++ ++ case TERMACK: ++ case TERMREQ: ++ if (len > 0 && *p >= ' ' && *p < 0x7f) { ++ printer(arg, " "); ++ print_string((char *)p, len, printer, arg); ++ p += len; ++ len = 0; ++ } ++ break; ++ } ++ ++ /* print the rest of the bytes in the packet */ ++ for (; len > 0; --len) { ++ GETCHAR(code, p); ++ printer(arg, " %.2x", code); ++ } ++ ++ return p - pstart; ++ ++} +--- ppp-2.4.5/pppd/mplscp.h ++++ ppp-2.4.5/pppd/mplscp.h +@@ -0,0 +1,8 @@ ++ ++/* MPLSCP - Serge.Krier@advalvas.be (C) 2001 */ ++ ++#define PPP_MPLSCP 0x8281 ++#define PPP_MPLS_UC 0x0281 ++#define PPP_MPLS_MC 0x0283 ++ ++extern struct protent mplscp_protent; diff --git a/user/ppp/06_all_killaddr-smarter.patch b/user/ppp/06_all_killaddr-smarter.patch new file mode 100644 index 000000000..d86534843 --- /dev/null +++ b/user/ppp/06_all_killaddr-smarter.patch @@ -0,0 +1,131 @@ +--- ppp-2.4.5/pppd/options.c ++++ ppp-2.4.5/pppd/options.c +@@ -100,6 +100,9 @@ + char user[MAXNAMELEN]; /* Username for PAP */ + char passwd[MAXSECRETLEN]; /* Password for PAP */ + bool persist = 0; /* Reopen link after it goes down */ ++bool killoldaddr = 0; /* If our IP is reassigned on ++ reconnect, kill active TCP ++ connections using the old IP. */ + char our_name[MAXNAMELEN]; /* Our name for authentication purposes */ + bool demand = 0; /* do dial-on-demand */ + char *ipparam = NULL; /* Extra parameter for ip up/down scripts */ +@@ -231,6 +234,11 @@ + { "demand", o_bool, &demand, + "Dial on demand", OPT_INITONLY | 1, &persist }, + ++ { "killoldaddr", o_bool, &killoldaddr, ++ "Kill connections from an old source address", 1}, ++ { "nokilloldaddr", o_bool,&killoldaddr, ++ "Don't kill connections from an old source address" }, ++ + { "--version", o_special_noarg, (void *)showversion, + "Show version number" }, + { "--help", o_special_noarg, (void *)showhelp, +--- ppp-2.4.5/pppd/pppd.h ++++ ppp-2.4.5/pppd/pppd.h +@@ -298,6 +298,9 @@ + extern char remote_name[MAXNAMELEN]; /* Peer's name for authentication */ + extern bool explicit_remote;/* remote_name specified with remotename opt */ + extern bool demand; /* Do dial-on-demand */ ++extern bool killoldaddr; /* If our IP is reassigned on ++ reconnect, kill active TCP ++ connections using the old IP. */ + extern char *ipparam; /* Extra parameter for ip up/down scripts */ + extern bool cryptpap; /* Others' PAP passwords are encrypted */ + extern int idle_time_limit;/* Shut down link if idle for this long */ +--- ppp-2.4.5/pppd/sys-linux.c ++++ ppp-2.4.5/pppd/sys-linux.c +@@ -165,6 +165,10 @@ + + #endif /* INET6 */ + ++#ifndef SIOCKILLADDR ++#define SIOCKILLADDR 0x8939 ++#endif ++ + /* We can get an EIO error on an ioctl if the modem has hung up */ + #define ok_error(num) ((num)==EIO) + +@@ -209,6 +213,7 @@ + static u_int32_t proxy_arp_addr; /* Addr for proxy arp entry added */ + static char proxy_arp_dev[16]; /* Device for proxy arp entry */ + static u_int32_t our_old_addr; /* for detecting address changes */ ++static u_int32_t our_current_addr; + static int dynaddr_set; /* 1 if ip_dynaddr set */ + static int looped; /* 1 if using loop */ + static int link_mtu; /* mtu for the link (not bundle) */ +@@ -537,6 +542,27 @@ + return -1; + } + ++static void do_killaddr(u_int32_t oldaddr) ++{ ++ struct ifreq ifr; ++ ++ memset(&ifr,0,sizeof ifr); ++ ++ SET_SA_FAMILY (ifr.ifr_addr, AF_INET); ++ SET_SA_FAMILY (ifr.ifr_dstaddr, AF_INET); ++ SET_SA_FAMILY (ifr.ifr_netmask, AF_INET); ++ ++ SIN_ADDR(ifr.ifr_addr) = oldaddr; ++ ++ strlcpy(ifr.ifr_name, ifname, sizeof (ifr.ifr_name)); ++ ++ if(ioctl(sock_fd,SIOCKILLADDR,&ifr) < 0) { ++ if (!ok_error (errno)) ++ error("ioctl(SIOCKILLADDR): %m(%d)", errno); ++ return; ++ } ++} ++ + /******************************************************************** + * + * tty_disestablish_ppp - Restore the serial port to normal operation. +@@ -2385,21 +2411,29 @@ + } + } + +- /* set ip_dynaddr in demand mode if address changes */ +- if (demand && tune_kernel && !dynaddr_set +- && our_old_addr && our_old_addr != our_adr) { ++ if(persist && our_old_addr && our_old_addr != our_adr) { ++ ++ if(killoldaddr) ++ do_killaddr(our_old_addr); ++ ++ ++ /* set ip_dynaddr in persist mode if address changes */ ++ if (tune_kernel && !dynaddr_set) { + /* set ip_dynaddr if possible */ + char *path; + int fd; + + path = path_to_procfs("/sys/net/ipv4/ip_dynaddr"); + if (path != 0 && (fd = open(path, O_WRONLY)) >= 0) { +- if (write(fd, "1", 1) != 1) +- error("Couldn't enable dynamic IP addressing: %m"); +- close(fd); ++ if (write(fd, "1", 1) != 1) ++ error("Couldn't enable dynamic IP addressing: %m"); ++ close(fd); + } + dynaddr_set = 1; /* only 1 attempt */ ++ } + } ++ ++ our_current_addr = our_adr; + our_old_addr = 0; + + return 1; +@@ -2455,7 +2489,8 @@ + } + + our_old_addr = our_adr; +- ++ our_current_addr = 0; ++ + return 1; + } + diff --git a/user/ppp/08_all_wait-children.patch b/user/ppp/08_all_wait-children.patch new file mode 100644 index 000000000..708cf04d6 --- /dev/null +++ b/user/ppp/08_all_wait-children.patch @@ -0,0 +1,76 @@ +--- ppp-2.4.5/pppd/main.c ++++ ppp-2.4.5/pppd/main.c +@@ -249,6 +249,7 @@ + static void forget_child __P((int pid, int status)); + static int reap_kids __P((void)); + static void childwait_end __P((void *)); ++static void wait_children __P((void)); + + #ifdef USE_TDB + static void update_db_entry __P((void)); +@@ -580,25 +581,11 @@ + if (!persist) + break; + } ++ ++ wait_children(); + } + +- /* Wait for scripts to finish */ +- reap_kids(); +- if (n_children > 0) { +- if (child_wait > 0) +- TIMEOUT(childwait_end, NULL, child_wait); +- if (debug) { +- struct subprocess *chp; +- dbglog("Waiting for %d child processes...", n_children); +- for (chp = children; chp != NULL; chp = chp->next) +- dbglog(" script %s, pid %d", chp->prog, chp->pid); +- } +- while (n_children > 0 && !childwait_done) { +- handle_events(); +- if (kill_link && !childwait_done) +- childwait_end(NULL); +- } +- } ++ wait_children(); + + die(status); + return 0; +@@ -1794,6 +1781,36 @@ + } + + /* ++ * wait_children - wait for scripts to finish. ++ * if child_wait is 0, wait indefinitely. ++ * else, kill'em all at the end of timeout ++ */ ++static void ++wait_children() ++{ ++ /* Wait for scripts to finish */ ++ reap_kids(); ++ if (n_children > 0) { ++ childwait_done = 0; ++ if (child_wait > 0) ++ TIMEOUT(childwait_end, NULL, child_wait); ++ if (debug) { ++ struct subprocess *chp; ++ dbglog("Waiting for %d child processes...", n_children); ++ for (chp = children; chp != NULL; chp = chp->next) ++ dbglog(" script %s, pid %d", chp->prog, chp->pid); ++ } ++ while (n_children > 0 && !childwait_done) { ++ handle_events(); ++ if (asked_to_quit && !childwait_done) ++ childwait_end(NULL); ++ } ++ if (child_wait > 0) ++ UNTIMEOUT(childwait_end, NULL); ++ } ++} ++ ++/* + * childwait_end - we got fed up waiting for the child processes to + * exit, send them all a SIGTERM. + */ diff --git a/user/ppp/10_all_defaultgateway.patch b/user/ppp/10_all_defaultgateway.patch new file mode 100644 index 000000000..1b7ae6396 --- /dev/null +++ b/user/ppp/10_all_defaultgateway.patch @@ -0,0 +1,90 @@ +This patch reverses revision 1.114 of the pppd/sys-linux.c file. +The default gateway is needed by the openswan's %defaultroute. + +--- ppp-2.4.7/pppd/sys-linux.c ++++ ppp-2.4.7/pppd/sys-linux.c +@@ -206,7 +206,7 @@ + + static int if_is_up; /* Interface has been marked up */ + static int if6_is_up; /* Interface has been marked up for IPv6, to help differentiate */ +-static int have_default_route; /* Gateway for default route added */ ++static u_int32_t default_route_gateway; /* Gateway for default route added */ + static u_int32_t proxy_arp_addr; /* Addr for proxy arp entry added */ + static char proxy_arp_dev[16]; /* Device for proxy arp entry */ + static u_int32_t our_old_addr; /* for detecting address changes */ +@@ -346,8 +346,8 @@ + /* + * Delete any routes through the device. + */ +- if (have_default_route) +- cifdefaultroute(0, 0, 0); ++ if (default_route_gateway != 0) ++ cifdefaultroute(0, 0, default_route_gateway); + + if (has_proxy_arp) + cifproxyarp(0, proxy_arp_addr); +@@ -1621,17 +1621,17 @@ + struct rtentry rt; + + if (defaultroute_exists(&rt) && strcmp(rt.rt_dev, ifname) != 0) { +- if (rt.rt_flags & RTF_GATEWAY) +- error("not replacing existing default route via %I", +- SIN_ADDR(rt.rt_gateway)); +- else +- error("not replacing existing default route through %s", +- rt.rt_dev); ++ u_int32_t old_gateway = SIN_ADDR(rt.rt_gateway); ++ ++ if (old_gateway != gateway) ++ error("not replacing existing default route to %s [%I]", ++ rt.rt_dev, old_gateway); + return 0; + } + +- memset (&rt, 0, sizeof (rt)); +- SET_SA_FAMILY (rt.rt_dst, AF_INET); ++ memset (&rt, '\0', sizeof (rt)); ++ SET_SA_FAMILY (rt.rt_dst, AF_INET); ++ SET_SA_FAMILY (rt.rt_gateway, AF_INET); + + rt.rt_dev = ifname; + +@@ -1640,14 +1640,16 @@ + SIN_ADDR(rt.rt_genmask) = 0L; + } + +- rt.rt_flags = RTF_UP; ++ SIN_ADDR(rt.rt_gateway) = gateway; ++ ++ rt.rt_flags = RTF_UP | RTF_GATEWAY; + if (ioctl(sock_fd, SIOCADDRT, &rt) < 0) { + if ( ! ok_error ( errno )) + error("default route ioctl(SIOCADDRT): %m"); + return 0; + } + +- have_default_route = 1; ++ default_route_gateway = gateway; + return 1; + } + +@@ -1660,7 +1662,7 @@ + { + struct rtentry rt; + +- have_default_route = 0; ++ default_route_gateway = 0; + + memset (&rt, '\0', sizeof (rt)); + SET_SA_FAMILY (rt.rt_dst, AF_INET); +@@ -1673,7 +1675,9 @@ + SIN_ADDR(rt.rt_genmask) = 0L; + } + +- rt.rt_flags = RTF_UP; ++ SIN_ADDR(rt.rt_gateway) = gateway; ++ ++ rt.rt_flags = RTF_UP | RTF_GATEWAY; + if (ioctl(sock_fd, SIOCDELRT, &rt) < 0 && errno != ESRCH) { + if (still_ppp()) { + if ( ! ok_error ( errno )) diff --git a/user/ppp/12_all_linkpidfile.patch b/user/ppp/12_all_linkpidfile.patch new file mode 100644 index 000000000..9c5769c8f --- /dev/null +++ b/user/ppp/12_all_linkpidfile.patch @@ -0,0 +1,93 @@ +--- ppp-2.4.5/pppd/auth.c ++++ ppp-2.4.5/pppd/auth.c +@@ -637,7 +637,7 @@ + * we delete its pid file. + */ + if (!doing_multilink && !demand) +- remove_pidfiles(); ++ remove_pidfile(pidfilename); + + /* + * If we may want to bring the link up again, transfer +--- ppp-2.4.5/pppd/main.c ++++ ppp-2.4.5/pppd/main.c +@@ -134,7 +134,7 @@ + + char *progname; /* Name of this program */ + char hostname[MAXNAMELEN]; /* Our hostname */ +-static char pidfilename[MAXPATHLEN]; /* name of pid file */ ++char pidfilename[MAXPATHLEN]; /* name of pid file */ + static char linkpidfile[MAXPATHLEN]; /* name of linkname pid file */ + char ppp_devnam[MAXPATHLEN]; /* name of PPP tty (maybe ttypx) */ + uid_t uid; /* Our real user-id */ +@@ -245,6 +245,7 @@ + static void toggle_debug __P((int)); + static void open_ccp __P((int)); + static void bad_signal __P((int)); ++static void remove_pidfilenames __P((void)); + static void holdoff_end __P((void *)); + static void forget_child __P((int pid, int status)); + static int reap_kids __P((void)); +@@ -835,16 +836,24 @@ + } + + /* +- * remove_pidfile - remove our pid files ++ * remove_pidfile - remove one of the 2 pidfiles (pidfilename or linkpidfile) + */ +-void remove_pidfiles() ++void ++remove_pidfile(filename) ++ char* filename; + { +- if (pidfilename[0] != 0 && unlink(pidfilename) < 0 && errno != ENOENT) +- warn("unable to delete pid file %s: %m", pidfilename); +- pidfilename[0] = 0; +- if (linkpidfile[0] != 0 && unlink(linkpidfile) < 0 && errno != ENOENT) +- warn("unable to delete pid file %s: %m", linkpidfile); +- linkpidfile[0] = 0; ++ if (filename[0] != 0 && unlink(filename) < 0 && errno != ENOENT) ++ warn("unable to delete pid file %s: %m", filename); ++ filename[0] = 0; ++} ++ ++/* ++ * remove_pidfiles - remove our pid files ++ */ ++static void remove_pidfiles() ++{ ++ remove_pidfile(pidfilename); ++ remove_pidfile(linkpidfile); + } + + /* +--- ppp-2.4.5/pppd/multilink.c ++++ ppp-2.4.5/pppd/multilink.c +@@ -267,7 +267,7 @@ + notice("Connection terminated."); + print_link_stats(); + if (!demand) { +- remove_pidfiles(); ++ remove_pidfile(pidfilename); + script_unsetenv("IFNAME"); + } + +--- ppp-2.4.5/pppd/pppd.h ++++ ppp-2.4.5/pppd/pppd.h +@@ -214,6 +214,7 @@ + extern int ifunit; /* Interface unit number */ + extern char ifname[]; /* Interface name */ + extern char hostname[]; /* Our hostname */ ++extern char pidfilename[]; /* name of pid file */ + extern u_char outpacket_buf[]; /* Buffer for outgoing packets */ + extern int devfd; /* fd of underlying device */ + extern int fd_ppp; /* fd for talking PPP */ +@@ -497,7 +498,7 @@ + int ppp_send_config __P((int, int, u_int32_t, int, int)); + int ppp_recv_config __P((int, int, u_int32_t, int, int)); + const char *protocol_name __P((int)); +-void remove_pidfiles __P((void)); ++void remove_pidfile __P((char *)); + void lock_db __P((void)); + void unlock_db __P((void)); + diff --git a/user/ppp/16_all_auth-fail.patch b/user/ppp/16_all_auth-fail.patch new file mode 100644 index 000000000..8ae238035 --- /dev/null +++ b/user/ppp/16_all_auth-fail.patch @@ -0,0 +1,138 @@ +--- ppp-2.4.5/pppd/auth.c ++++ ppp-2.4.5/pppd/auth.c +@@ -259,7 +259,7 @@ + struct wordlist **, struct wordlist **, + char *, int)); + static void free_wordlist __P((struct wordlist *)); +-static void auth_script __P((char *)); ++static void auth_script __P((char *, int)); + static void auth_script_done __P((void *)); + static void set_allowed_addrs __P((int, struct wordlist *, struct wordlist *)); + static int some_ip_ok __P((struct wordlist *)); +@@ -690,7 +690,7 @@ + if (auth_script_state == s_up && auth_script_pid == 0) { + update_link_stats(unit); + auth_script_state = s_down; +- auth_script(_PATH_AUTHDOWN); ++ auth_script(_PATH_AUTHDOWN, 0); + } + } + if (!doing_multilink) { +@@ -822,7 +822,7 @@ + auth_state = s_up; + if (auth_script_state == s_down && auth_script_pid == 0) { + auth_script_state = s_up; +- auth_script(_PATH_AUTHUP); ++ auth_script(_PATH_AUTHUP, 0); + } + } + +@@ -923,6 +923,7 @@ + * Authentication failure: take the link down + */ + status = EXIT_PEER_AUTH_FAILED; ++ auth_script(_PATH_AUTHFAIL, 1); + lcp_close(unit, "Authentication failed"); + } + +@@ -1001,6 +1002,7 @@ + * authentication secrets. + */ + status = EXIT_AUTH_TOPEER_FAILED; ++ auth_script(_PATH_AUTHFAIL, 1); + lcp_close(unit, "Failed to authenticate ourselves to peer"); + } + +@@ -1233,6 +1235,8 @@ + if (user[0] == 0 && !explicit_user) + strlcpy(user, our_name, sizeof(user)); + ++ script_setenv("LOCALNAME", user, 0); ++ + /* + * If we have a default route, require the peer to authenticate + * unless the noauth option was given or the real user is root. +@@ -2314,13 +2318,13 @@ + case s_up: + if (auth_state == s_down) { + auth_script_state = s_down; +- auth_script(_PATH_AUTHDOWN); ++ auth_script(_PATH_AUTHDOWN, 0); + } + break; + case s_down: + if (auth_state == s_up) { + auth_script_state = s_up; +- auth_script(_PATH_AUTHUP); ++ auth_script(_PATH_AUTHUP, 0); + } + break; + } +@@ -2331,8 +2335,9 @@ + * interface-name peer-name real-user tty speed + */ + static void +-auth_script(script) ++auth_script(script, wait) + char *script; ++ int wait; + { + char strspeed[32]; + struct passwd *pw; +@@ -2356,5 +2361,8 @@ + argv[5] = strspeed; + argv[6] = NULL; + +- auth_script_pid = run_program(script, argv, 0, auth_script_done, NULL, 0); ++ if (wait) ++ run_program(script, argv, 0, NULL, NULL, 1); ++ else ++ auth_script_pid = run_program(script, argv, 0, auth_script_done, NULL, 0); + } +--- ppp-2.4.5/pppd/pathnames.h ++++ ppp-2.4.5/pppd/pathnames.h +@@ -27,6 +27,7 @@ + #define _PATH_IPPREUP _ROOT_PATH "/etc/ppp/ip-pre-up" + #define _PATH_AUTHUP _ROOT_PATH "/etc/ppp/auth-up" + #define _PATH_AUTHDOWN _ROOT_PATH "/etc/ppp/auth-down" ++#define _PATH_AUTHFAIL _ROOT_PATH "/etc/ppp/auth-fail" + #define _PATH_TTYOPT _ROOT_PATH "/etc/ppp/options." + #define _PATH_CONNERRS _ROOT_PATH "/etc/ppp/connect-errors" + #define _PATH_PEERFILES _ROOT_PATH "/etc/ppp/peers/" +--- ppp-2.4.5/pppd/pppd.8 ++++ ppp-2.4.5/pppd/pppd.8 +@@ -1553,8 +1553,8 @@ + Pppd invokes scripts at various stages in its processing which can be + used to perform site-specific ancillary processing. These scripts are + usually shell scripts, but could be executable code files instead. +-Pppd does not wait for the scripts to finish (except for the ip-pre-up +-script). The scripts are ++Pppd does not wait for the scripts to finish (except for the ip-pre-up, ++and auth-fail scripts). The scripts are + executed as root (with the real and effective user-id set to 0), so + that they can do things such as update routing tables or run + privileged daemons. Be careful that the contents of these scripts do +@@ -1582,6 +1582,11 @@ + The authenticated name of the peer. This is only set if the peer + authenticates itself. + .TP ++.B LOCALNAME ++The username passed to the user option of the pppd daemon. This is ++handy to identify which account was used for authentication purposes ++when multiple accounts are available. ++.TP + .B SPEED + The baud rate of the tty device. + .TP +@@ -1634,6 +1639,11 @@ + /etc/ppp/auth\-up was previously executed. It is executed in the same + manner with the same parameters as /etc/ppp/auth\-up. + .TP ++.B /etc/ppp/auth\-fail ++A program or script which is executed should authentication fail. pppd ++waits for this script to finish. It is executed in the same manner, with ++the same parameters as /etc/ppp/auth\-up. ++.TP + .B /etc/ppp/ip\-pre\-up + A program or script which is executed just before the ppp network + interface is brought up. It is executed with the same parameters as diff --git a/user/ppp/18_all_defaultmetric.patch b/user/ppp/18_all_defaultmetric.patch new file mode 100644 index 000000000..fba787005 --- /dev/null +++ b/user/ppp/18_all_defaultmetric.patch @@ -0,0 +1,104 @@ +--- ppp-2.4.5/pppd/options.c ++++ ppp-2.4.5/pppd/options.c +@@ -94,6 +94,7 @@ + int kdebugflag = 0; /* Tell kernel to print debug messages */ + int default_device = 1; /* Using /dev/tty or equivalent */ + char devnam[MAXPATHLEN]; /* Device name */ ++int defaultmetric = 0; /* Metric of the default route */ + bool nodetach = 0; /* Don't detach from controlling tty */ + bool updetach = 0; /* Detach once link is up */ + int maxconnect = 0; /* Maximum connect time */ +@@ -289,6 +290,10 @@ + "Number of seconds to wait for child processes at exit", + OPT_PRIO }, + ++ { "defaultmetric", o_int, &defaultmetric, ++ "The metric of the default route", ++ OPT_LIMITS, 0, 32766 }, ++ + #ifdef HAVE_MULTILINK + { "multilink", o_bool, &multilink, + "Enable multilink operation", OPT_PRIO | 1 }, +--- ppp-2.4.5/pppd/pppd.8 ++++ ppp-2.4.5/pppd/pppd.8 +@@ -121,6 +121,9 @@ + This entry is removed when the PPP connection is broken. This option + is privileged if the \fInodefaultroute\fR option has been specified. + .TP ++.B defaultmetric \fIn ++The metric of the default route configured by pppd; default is 0. ++.TP + .B disconnect \fIscript + Execute the command specified by \fIscript\fR, by passing it to a + shell, after +--- ppp-2.4.5/pppd/pppd.h ++++ ppp-2.4.5/pppd/pppd.h +@@ -276,6 +276,7 @@ + extern int kdebugflag; /* Tell kernel to print debug messages */ + extern int default_device; /* Using /dev/tty or equivalent */ + extern char devnam[MAXPATHLEN]; /* Device name */ ++extern int defaultmetric; /* Metric of the default route */ + extern int crtscts; /* Use hardware flow control */ + extern bool modem; /* Use modem control lines */ + extern int inspeed; /* Input/Output speed requested */ +--- ppp-2.4.5/pppd/sys-linux.c ++++ ppp-2.4.5/pppd/sys-linux.c +@@ -1465,7 +1465,7 @@ + FILE *route_fd = (FILE *) 0; + static char route_buffer[512]; + static int route_dev_col, route_dest_col, route_gw_col; +-static int route_flags_col, route_mask_col; ++static int route_flags_col, route_mask_col, route_metric_col; + static int route_num_cols; + + static int open_route_table (void); +@@ -1508,6 +1508,7 @@ + route_dest_col = 1; + route_gw_col = 2; + route_flags_col = 3; ++ route_metric_col = 6; + route_mask_col = 7; + route_num_cols = 8; + +@@ -1527,6 +1528,8 @@ + route_gw_col = col; + else if (strcasecmp(q, "flags") == 0) + route_flags_col = col; ++ else if (strcasecmp(q, "metric") == 0) ++ route_metric_col = col; + else if (strcasecmp(q, "mask") == 0) + route_mask_col = col; + else +@@ -1569,6 +1572,7 @@ + + rt->rt_flags = (short) strtoul(cols[route_flags_col], NULL, 16); + rt->rt_dev = cols[route_dev_col]; ++ rt->rt_metric = (short) strtoul(cols[route_metric_col], NULL, 16); + + return 1; + } +@@ -1591,6 +1595,8 @@ + + if (kernel_version > KVERSION(2,1,0) && SIN_ADDR(rt->rt_genmask) != 0) + continue; ++ if (rt->rt_metric != defaultmetric) /* consider only routes with the same metric */ ++ continue; + if (SIN_ADDR(rt->rt_dst) == 0L) { + result = 1; + break; +@@ -1661,6 +1667,7 @@ + SIN_ADDR(rt.rt_gateway) = gateway; + + rt.rt_flags = RTF_UP | RTF_GATEWAY; ++ rt.rt_metric = defaultmetric + 1; /* +1 for binary compatibility */ + if (ioctl(sock_fd, SIOCADDRT, &rt) < 0) { + if ( ! ok_error ( errno )) + error("default route ioctl(SIOCADDRT): %m"); +@@ -1696,6 +1703,7 @@ + SIN_ADDR(rt.rt_gateway) = gateway; + + rt.rt_flags = RTF_UP | RTF_GATEWAY; ++ rt.rt_metric = defaultmetric + 1; /* +1 for binary compatibility */ + if (ioctl(sock_fd, SIOCDELRT, &rt) < 0 && errno != ESRCH) { + if (still_ppp()) { + if ( ! ok_error ( errno )) diff --git a/user/ppp/19_all_radius_pid_overflow.patch b/user/ppp/19_all_radius_pid_overflow.patch new file mode 100644 index 000000000..b5078bdb9 --- /dev/null +++ b/user/ppp/19_all_radius_pid_overflow.patch @@ -0,0 +1,14 @@ +https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=782450 +https://bugs.gentoo.org/546554 + +--- ppp-2.4.7/pppd/plugins/radius/util.c ++++ ppp-2.4.7/pppd/plugins/radius/util.c +@@ -77,7 +77,7 @@ + static unsigned short int cnt = 0; + sprintf (buf, "%08lX%04X%02hX", + (unsigned long int) time (NULL), +- (unsigned int) getpid (), ++ (unsigned int) getpid () % 65535, + cnt & 0xFF); + cnt++; + return buf; diff --git a/user/ppp/20_all_dev-ppp.patch b/user/ppp/20_all_dev-ppp.patch new file mode 100644 index 000000000..eff3e37f0 --- /dev/null +++ b/user/ppp/20_all_dev-ppp.patch @@ -0,0 +1,20 @@ +--- ppp-2.4.6/pppd/sys-linux.c ++++ ppp-2.4.6/pppd/sys-linux.c +@@ -2031,6 +2031,17 @@ + kernel_version = KVERSION(osmaj, osmin, ospatch); + + fd = open("/dev/ppp", O_RDWR); ++ if (fd < 0) { ++ /* try making it and see if that helps. */ ++ if (errno == ENOENT && mknod("/dev/ppp", S_IFCHR | S_IRUSR | S_IWUSR | S_IRGRP | S_IWGRP, ++ makedev(108, 0)) >= 0) { ++ fd = open("/dev/ppp", O_RDWR); ++ if (fd >= 0) ++ info("Created /dev/ppp device node"); ++ else ++ unlink("/dev/ppp"); /* didn't work, undo the mknod */ ++ } ++ } + if (fd >= 0) { + new_style_driver = 1; + diff --git a/user/ppp/21_all_custom_iface_names.patch b/user/ppp/21_all_custom_iface_names.patch new file mode 100644 index 000000000..5d3f7b94b --- /dev/null +++ b/user/ppp/21_all_custom_iface_names.patch @@ -0,0 +1,144 @@ +pppd: Support arbitrary interface names + +This patch implements a new string option "ifname" which allows to specify +fully custom PPP interface names on Linux. It does so by renaming the +allocated pppX device immediately after it has been created to the requested +interface name. + +Originally written by Suse. Used by openwrt, debian, ubuntu. + +Reference: + +https://dev.openwrt.org/browser/trunk/package/network/services/ppp/patches/320-custom_iface_names.patch + +diff -purN ppp-2.4.7.orig/pppd/main.c ppp-2.4.7/pppd/main.c +--- ppp-2.4.7.orig/pppd/main.c 2016-08-25 15:52:52.032202044 +0200 ++++ ppp-2.4.7/pppd/main.c 2016-08-25 16:22:25.740299940 +0200 +@@ -729,8 +729,11 @@ void + set_ifunit(iskey) + int iskey; + { +- info("Using interface %s%d", PPP_DRV_NAME, ifunit); +- slprintf(ifname, sizeof(ifname), "%s%d", PPP_DRV_NAME, ifunit); ++ if (use_ifname[0] == 0) ++ slprintf(ifname, sizeof(ifname), "%s%d", PPP_DRV_NAME, ifunit); ++ else ++ slprintf(ifname, sizeof(ifname), "%s", use_ifname); ++ info("Using interface %s", ifname); + script_setenv("IFNAME", ifname, iskey); + if (iskey) { + create_pidfile(getpid()); /* write pid to file */ +diff -purN ppp-2.4.7.orig/pppd/options.c ppp-2.4.7/pppd/options.c +--- ppp-2.4.7.orig/pppd/options.c 2016-08-25 15:52:52.191194523 +0200 ++++ ppp-2.4.7/pppd/options.c 2016-08-25 16:04:23.335501924 +0200 +@@ -115,6 +115,7 @@ int log_to_fd = 1; /* send log messages + bool log_default = 1; /* log_to_fd is default (stdout) */ + int maxfail = 10; /* max # of unsuccessful connection attempts */ + char linkname[MAXPATHLEN]; /* logical name for link */ ++char use_ifname[IFNAMSIZ]; /* physical name for PPP link */ + bool tune_kernel; /* may alter kernel settings */ + int connect_delay = 1000; /* wait this many ms after connect script */ + int req_unit = -1; /* requested interface unit */ +@@ -274,6 +275,9 @@ option_t general_options[] = { + { "linkname", o_string, linkname, + "Set logical name for link", + OPT_PRIO | OPT_PRIV | OPT_STATIC, NULL, MAXPATHLEN }, ++ { "ifname", o_string, use_ifname, ++ "Set physical name for PPP interface", ++ OPT_PRIO | OPT_PRIV | OPT_STATIC, NULL, IFNAMSIZ }, + + { "maxfail", o_int, &maxfail, + "Maximum number of unsuccessful connection attempts to allow", +diff -purN ppp-2.4.7.orig/pppd/pppd.h ppp-2.4.7/pppd/pppd.h +--- ppp-2.4.7.orig/pppd/pppd.h 2016-08-25 15:52:52.829164346 +0200 ++++ ppp-2.4.7/pppd/pppd.h 2016-08-25 16:07:12.024522417 +0200 +@@ -71,6 +71,10 @@ + #include "eui64.h" + #endif + ++#ifndef IFNAMSIZ ++#define IFNAMSIZ 16 ++#endif ++ + /* + * Limits. + */ +@@ -319,6 +323,7 @@ extern char *record_file; /* File to rec + extern bool sync_serial; /* Device is synchronous serial device */ + extern int maxfail; /* Max # of unsuccessful connection attempts */ + extern char linkname[MAXPATHLEN]; /* logical name for link */ ++extern char use_ifname[IFNAMSIZ]; /* physical name for PPP interface */ + extern bool tune_kernel; /* May alter kernel settings as necessary */ + extern int connect_delay; /* Time to delay after connect script */ + extern int max_data_rate; /* max bytes/sec through charshunt */ +diff -purN ppp-2.4.7.orig/pppd/sys-linux.c ppp-2.4.7/pppd/sys-linux.c +--- ppp-2.4.7.orig/pppd/sys-linux.c 2016-08-25 15:52:52.268190881 +0200 ++++ ppp-2.4.7/pppd/sys-linux.c 2016-08-25 16:12:13.905242396 +0200 +@@ -172,6 +172,10 @@ struct in6_ifreq { + /* We can get an EIO error on an ioctl if the modem has hung up */ + #define ok_error(num) ((num)==EIO) + ++#if !defined(PPP_DRV_NAME) ++#define PPP_DRV_NAME "ppp" ++#endif /* !defined(PPP_DRV_NAME) */ ++ + static int tty_disc = N_TTY; /* The TTY discipline */ + static int ppp_disc = N_PPP; /* The PPP discpline */ + static int initfdflags = -1; /* Initial file descriptor flags for fd */ +@@ -644,7 +648,8 @@ void generic_disestablish_ppp(int dev_fd + */ + static int make_ppp_unit() + { +- int x, flags; ++ struct ifreq ifr; ++ int x, flags, s; + + if (ppp_dev_fd >= 0) { + dbglog("in make_ppp_unit, already had /dev/ppp open?"); +@@ -667,6 +672,30 @@ static int make_ppp_unit() + } + if (x < 0) + error("Couldn't create new ppp unit: %m"); ++ ++ if (use_ifname[0] != 0) { ++ s = socket(PF_INET, SOCK_DGRAM, 0); ++ if (s < 0) ++ s = socket(PF_PACKET, SOCK_DGRAM, 0); ++ if (s < 0) ++ s = socket(PF_INET6, SOCK_DGRAM, 0); ++ if (s < 0) ++ s = socket(PF_UNIX, SOCK_DGRAM, 0); ++ if (s >= 0) { ++ slprintf(ifr.ifr_name, sizeof(ifr.ifr_name), "%s%d", PPP_DRV_NAME, ifunit); ++ slprintf(ifr.ifr_newname, sizeof(ifr.ifr_newname), "%s", use_ifname); ++ x = ioctl(s, SIOCSIFNAME, &ifr); ++ close(s); ++ } else { ++ x = s; ++ } ++ if (x < 0) { ++ error("Couldn't rename %s to %s", ifr.ifr_name, ifr.ifr_newname); ++ close(ppp_dev_fd); ++ ppp_dev_fd = -1; ++ } ++ } ++ + return x; + } + +diff -purN ppp-2.4.7.orig/pppstats/pppstats.c ppp-2.4.7/pppstats/pppstats.c +--- ppp-2.4.7.orig/pppstats/pppstats.c 2014-08-09 14:31:39.000000000 +0200 ++++ ppp-2.4.7/pppstats/pppstats.c 2016-08-25 16:13:52.623572634 +0200 +@@ -506,10 +506,12 @@ main(argc, argv) + if (argc > 0) + interface = argv[0]; + ++#if 0 + if (sscanf(interface, PPP_DRV_NAME "%d", &unit) != 1) { + fprintf(stderr, "%s: invalid interface '%s' specified\n", + progname, interface); + } ++#endif + + #ifndef STREAMS + { diff --git a/user/ppp/24_all_passwordfd-read-early.patch b/user/ppp/24_all_passwordfd-read-early.patch new file mode 100644 index 000000000..f549540dc --- /dev/null +++ b/user/ppp/24_all_passwordfd-read-early.patch @@ -0,0 +1,84 @@ +--- ppp-2.4.5/pppd/plugins/passwordfd.c ++++ ppp-2.4.5/pppd/plugins/passwordfd.c +@@ -16,11 +16,11 @@ + + char pppd_version[] = VERSION; + +-static int passwdfd = -1; + static char save_passwd[MAXSECRETLEN]; + ++static int readpassword __P((char **)); + static option_t options[] = { +- { "passwordfd", o_int, &passwdfd, ++ { "passwordfd", o_special, (void *)readpassword, + "Receive password on this file descriptor" }, + { NULL } + }; +@@ -30,43 +30,39 @@ + return 1; + } + +-static int pwfd_passwd (char *user, char *passwd) ++static int readpassword(char **argv) + { +- int readgood, red; +- +- if (passwdfd == -1) +- return -1; +- +- if (passwd == NULL) +- return 1; +- +- if (passwdfd == -2) { +- strcpy (passwd, save_passwd); +- return 1; ++ char *arg = *argv; ++ int passwdfd = -1; ++ int chunk, len; ++ ++ if (sscanf(arg, "%d", &passwdfd) != 1 || passwdfd < 0) ++ { ++ error ("\"%s\" is not a valid file descriptor number", arg); ++ return 0; + } + +- readgood = 0; ++ len = 0; + do { +- red = read (passwdfd, passwd + readgood, MAXSECRETLEN - 1 - readgood); +- if (red == 0) +- break; +- if (red < 0) { +- error ("Can't read secret from fd\n"); +- readgood = -1; ++ chunk = read (passwdfd, save_passwd + len, MAXSECRETLEN - 1 - len); ++ if (chunk == 0) + break; ++ if (chunk < 0) { ++ error ("Can't read secret from fd %d", passwdfd); ++ return 0; + } +- readgood += red; +- } while (readgood < MAXSECRETLEN - 1); +- ++ len += chunk; ++ } while (len < MAXSECRETLEN - 1); ++ save_passwd[len] = 0; + close (passwdfd); + +- if (readgood < 0) +- return 0; +- +- passwd[readgood] = 0; +- strcpy (save_passwd, passwd); +- passwdfd = -2; ++ return 1; ++} + ++static int pwfd_passwd (char *user, char *passwd) ++{ ++ if (passwd != NULL) ++ strcpy (passwd, save_passwd); + return 1; + } + diff --git a/user/ppp/26_all_pppd-usepeerwins.patch b/user/ppp/26_all_pppd-usepeerwins.patch new file mode 100644 index 000000000..d66fbe0b1 --- /dev/null +++ b/user/ppp/26_all_pppd-usepeerwins.patch @@ -0,0 +1,256 @@ +--- ppp-2.4.6/pppd/ipcp.c ++++ ppp-2.4.6/pppd/ipcp.c +@@ -91,6 +91,7 @@ + static int default_route_set[NUM_PPP]; /* Have set up a default route */ + static int proxy_arp_set[NUM_PPP]; /* Have created proxy arp entry */ + static bool usepeerdns; /* Ask peer for DNS addrs */ ++static bool usepeerwins; /* Ask peer for WINS addrs */ + static int ipcp_is_up; /* have called np_up() */ + static int ipcp_is_open; /* haven't called np_finished() */ + static bool ask_for_local; /* request our address from peer */ +@@ -210,6 +211,9 @@ + { "usepeerdns", o_bool, &usepeerdns, + "Ask peer for DNS address(es)", 1 }, + ++ { "usepeerwins", o_bool, &usepeerwins, ++ "Ask peer for WINS address(es)", 1 }, ++ + { "netmask", o_special, (void *)setnetmask, + "set netmask", OPT_PRIO | OPT_A2STRVAL | OPT_STATIC, netmask_str }, + +@@ -703,6 +707,8 @@ + wo->accept_remote = 1; + wo->req_dns1 = usepeerdns; /* Request DNS addresses from the peer */ + wo->req_dns2 = usepeerdns; ++ wo->req_wins1 = usepeerwins; /* Request WINS addresses from the peer */ ++ wo->req_wins2 = usepeerwins; + *go = *wo; + if (!ask_for_local) + go->ouraddr = 0; +@@ -755,8 +761,8 @@ + LENCIADDR(go->neg_addr) + + LENCIDNS(go->req_dns1) + + LENCIDNS(go->req_dns2) + +- LENCIWINS(go->winsaddr[0]) + +- LENCIWINS(go->winsaddr[1])) ; ++ LENCIWINS(go->req_wins1) + ++ LENCIWINS(go->req_wins2)) ; + } + + +@@ -830,8 +836,8 @@ + neg = 0; \ + } + +-#define ADDCIWINS(opt, addr) \ +- if (addr) { \ ++#define ADDCIWINS(opt, neg, addr) \ ++ if (neg) { \ + if (len >= CILEN_ADDR) { \ + u_int32_t l; \ + PUTCHAR(opt, ucp); \ +@@ -840,7 +846,7 @@ + PUTLONG(l, ucp); \ + len -= CILEN_ADDR; \ + } else \ +- addr = 0; \ ++ neg = 0; \ + } + + ADDCIADDRS(CI_ADDRS, !go->neg_addr && go->old_addrs, go->ouraddr, +@@ -855,9 +861,9 @@ + + ADDCIDNS(CI_MS_DNS2, go->req_dns2, go->dnsaddr[1]); + +- ADDCIWINS(CI_MS_WINS1, go->winsaddr[0]); ++ ADDCIWINS(CI_MS_WINS1, go->req_wins1, go->winsaddr[0]); + +- ADDCIWINS(CI_MS_WINS2, go->winsaddr[1]); ++ ADDCIWINS(CI_MS_WINS2, go->req_wins2, go->winsaddr[1]); + + *lenp -= len; + } +@@ -962,8 +968,8 @@ + goto bad; \ + } + +-#define ACKCIWINS(opt, addr) \ +- if (addr) { \ ++#define ACKCIWINS(opt, neg, addr) \ ++ if (neg) { \ + u_int32_t l; \ + if ((len -= CILEN_ADDR) < 0) \ + goto bad; \ +@@ -989,9 +995,9 @@ + + ACKCIDNS(CI_MS_DNS2, go->req_dns2, go->dnsaddr[1]); + +- ACKCIWINS(CI_MS_WINS1, go->winsaddr[0]); ++ ACKCIWINS(CI_MS_WINS1, go->req_wins1, go->winsaddr[0]); + +- ACKCIWINS(CI_MS_WINS2, go->winsaddr[1]); ++ ACKCIWINS(CI_MS_WINS2, go->req_wins2, go->winsaddr[1]); + + /* + * If there are any remaining CIs, then this packet is bad. +@@ -1026,7 +1032,7 @@ + u_char cimaxslotindex, cicflag; + u_char citype, cilen, *next; + u_short cishort; +- u_int32_t ciaddr1, ciaddr2, l, cidnsaddr; ++ u_int32_t ciaddr1, ciaddr2, l, cidnsaddr, ciwinsaddr; + ipcp_options no; /* options we've seen Naks for */ + ipcp_options try; /* options to request next time */ + +@@ -1091,6 +1097,19 @@ + code \ + } + ++#define NAKCIWINS(opt, neg, code) \ ++ if (go->neg && \ ++ ((cilen = p[1]) == CILEN_ADDR) && \ ++ len >= cilen && \ ++ p[0] == opt) { \ ++ len -= cilen; \ ++ INCPTR(2, p); \ ++ GETLONG(l, p); \ ++ ciwinsaddr = htonl(l); \ ++ no.neg = 1; \ ++ code \ ++ } ++ + /* + * Accept the peer's idea of {our,his} address, if different + * from our idea, only if the accept_{local,remote} flag is set. +@@ -1167,6 +1186,22 @@ + } + ); + ++ NAKCIWINS(CI_MS_WINS1, req_wins1, ++ if (treat_as_reject) { ++ try.req_wins1 = 0; ++ } else { ++ try.winsaddr[0] = ciwinsaddr; ++ } ++ ); ++ ++ NAKCIWINS(CI_MS_WINS2, req_wins2, ++ if (treat_as_reject) { ++ try.req_wins2 = 0; ++ } else { ++ try.winsaddr[1] = ciwinsaddr; ++ } ++ ); ++ + /* + * There may be remaining CIs, if the peer is requesting negotiation + * on an option that we didn't include in our request packet. +@@ -1259,7 +1294,6 @@ + return 0; + } + +- + /* + * ipcp_rejci - Reject some of our CIs. + * Callback from fsm_rconfnakrej. +@@ -1357,8 +1391,8 @@ + try.neg = 0; \ + } + +-#define REJCIWINS(opt, addr) \ +- if (addr && \ ++#define REJCIWINS(opt, neg, addr) \ ++ if (go->neg && \ + ((cilen = p[1]) == CILEN_ADDR) && \ + len >= cilen && \ + p[0] == opt) { \ +@@ -1370,7 +1404,7 @@ + /* Check rejected value. */ \ + if (cilong != addr) \ + goto bad; \ +- try.winsaddr[opt == CI_MS_WINS2] = 0; \ ++ try.neg = 0; \ + } + + REJCIADDRS(CI_ADDRS, !go->neg_addr && go->old_addrs, +@@ -1385,9 +1419,9 @@ + + REJCIDNS(CI_MS_DNS2, req_dns2, go->dnsaddr[1]); + +- REJCIWINS(CI_MS_WINS1, go->winsaddr[0]); ++ REJCIWINS(CI_MS_WINS1, req_wins1, go->winsaddr[0]); + +- REJCIWINS(CI_MS_WINS2, go->winsaddr[1]); ++ REJCIWINS(CI_MS_WINS2, req_wins2, go->winsaddr[1]); + + /* + * If there are any remaining CIs, then this packet is bad. +@@ -1581,7 +1615,7 @@ + /* Microsoft primary or secondary WINS request */ + d = citype == CI_MS_WINS2; + +- /* If we do not have a DNS address then we cannot send it */ ++ /* If we do not have a WINS address then we cannot send it */ + if (ao->winsaddr[d] == 0 || + cilen != CILEN_ADDR) { /* Check CI length */ + orc = CONFREJ; /* Reject CI */ +@@ -1830,6 +1864,13 @@ + create_resolv(go->dnsaddr[0], go->dnsaddr[1]); + } + ++ if (go->winsaddr[0]) ++ script_setenv("WINS1", ip_ntoa(go->winsaddr[0]), 0); ++ if (go->winsaddr[1]) ++ script_setenv("WINS2", ip_ntoa(go->winsaddr[1]), 0); ++ if (usepeerwins && (go->winsaddr[0] || go->winsaddr[1])) ++ script_setenv("USEPEERWINS", "1", 0); ++ + /* + * Check that the peer is allowed to use the IP address it wants. + */ +--- ppp-2.4.6/pppd/ipcp.h ++++ ppp-2.4.6/pppd/ipcp.h +@@ -77,6 +77,8 @@ + bool accept_remote; /* accept peer's value for hisaddr */ + bool req_dns1; /* Ask peer to send primary DNS address? */ + bool req_dns2; /* Ask peer to send secondary DNS address? */ ++ bool req_wins1; /* Ask peer to send primary WINS address? */ ++ bool req_wins2; /* Ask peer to send secondary WINS address? */ + int vj_protocol; /* protocol value to use in VJ option */ + int maxslotindex; /* values for RFC1332 VJ compression neg. */ + bool cflag; +--- ppp-2.4.6/pppd/pppd.8 ++++ ppp-2.4.6/pppd/pppd.8 +@@ -1102,6 +1102,16 @@ + /etc/ppp/resolv.conf file containing one or two nameserver lines with + the address(es) supplied by the peer. + .TP ++.B usepeerwins ++Ask the peer for up to 2 WINS server addresses. The addresses supplied ++by the peer (if any) are passed to the /etc/ppp/ip\-up script in the ++environment variables WINS1 and WINS2, and the environment variable ++USEPEERWINS will be set to 1. ++.LP ++Please note that some modems (like the Huawei E220) requires this option in ++order to avoid a race condition that results in the incorrect DNS servers ++being assigned. ++.TP + .B user \fIname + Sets the name used for authenticating the local system to the peer to + \fIname\fR. +@@ -1650,6 +1660,15 @@ + If the peer supplies DNS server addresses, this variable is set to the + second DNS server address supplied (whether or not the usepeerdns + option was given). ++.TP ++.B WINS1 ++If the peer supplies WINS server addresses, this variable is set to the ++first WINS server address supplied. ++.TP ++.B WINS2 ++If the peer supplies WINS server addresses, this variable is set to the ++second WINS server address supplied. ++.P + .P + Pppd invokes the following scripts, if they exist. It is not an error + if they don't exist. diff --git a/user/ppp/28_all_connect-errors.patch b/user/ppp/28_all_connect-errors.patch new file mode 100644 index 000000000..b87acef5d --- /dev/null +++ b/user/ppp/28_all_connect-errors.patch @@ -0,0 +1,11 @@ +--- ppp-2.4.5/pppd/pathnames.h ++++ ppp-2.4.5/pppd/pathnames.h +@@ -29,7 +29,7 @@ + #define _PATH_AUTHDOWN _ROOT_PATH "/etc/ppp/auth-down" + #define _PATH_AUTHFAIL _ROOT_PATH "/etc/ppp/auth-fail" + #define _PATH_TTYOPT _ROOT_PATH "/etc/ppp/options." +-#define _PATH_CONNERRS _ROOT_PATH "/etc/ppp/connect-errors" ++#define _PATH_CONNERRS _ROOT_PATH "/var/log/ppp-connect-errors" + #define _PATH_PEERFILES _ROOT_PATH "/etc/ppp/peers/" + #define _PATH_RESOLV _ROOT_PATH "/etc/ppp/resolv.conf" + diff --git a/user/ppp/30_all_Makefile.patch b/user/ppp/30_all_Makefile.patch new file mode 100644 index 000000000..165fc7b22 --- /dev/null +++ b/user/ppp/30_all_Makefile.patch @@ -0,0 +1,37 @@ +Ensure that the build process aborts if there is an error in one of +the plugin subdirectories. + +2010-09-01 Martin von Gagern + +References: +http://bugs.gentoo.org/334727 + +Index: ppp-2.4.5/pppd/plugins/Makefile.linux +=================================================================== +--- ppp-2.4.5/pppd/plugins/Makefile.linux ++++ ppp-2.4.5/pppd/plugins/Makefile.linux +@@ -20,7 +20,7 @@ include .depend + endif + + all: $(PLUGINS) +- for d in $(SUBDIRS); do $(MAKE) $(MFLAGS) -C $$d all; done ++ for d in $(SUBDIRS); do $(MAKE) $(MFLAGS) -C $$d all || exit $?; done + + %.so: %.c + $(CC) -o $@ $(LDFLAGS) $(CFLAGS) $^ +@@ -30,12 +30,12 @@ VERSION = $(shell awk -F '"' '/VERSION/ + install: $(PLUGINS) + $(INSTALL) -d $(LIBDIR) + $(INSTALL) $? $(LIBDIR) +- for d in $(SUBDIRS); do $(MAKE) $(MFLAGS) -C $$d install; done ++ for d in $(SUBDIRS); do $(MAKE) $(MFLAGS) -C $$d install || exit $?; done + + clean: + rm -f *.o *.so *.a +- for d in $(SUBDIRS); do $(MAKE) $(MFLAGS) -C $$d clean; done ++ for d in $(SUBDIRS); do $(MAKE) $(MFLAGS) -C $$d clean || exit $?; done + + depend: + $(CPP) -M $(CFLAGS) *.c >.depend +- for d in $(SUBDIRS); do $(MAKE) $(MFLAGS) -C $$d depend; done ++ for d in $(SUBDIRS); do $(MAKE) $(MFLAGS) -C $$d depend || exit $?; done diff --git a/user/ppp/32_all_pado-timeout.patch b/user/ppp/32_all_pado-timeout.patch new file mode 100644 index 000000000..72f1adbb1 --- /dev/null +++ b/user/ppp/32_all_pado-timeout.patch @@ -0,0 +1,254 @@ +--- ppp-2.4.6/pppd/plugins/rp-pppoe/discovery.c ++++ ppp-2.4.6/pppd/plugins/rp-pppoe/discovery.c +@@ -39,6 +39,7 @@ + #endif + + #include <signal.h> ++#include <time.h> + + /* Calculate time remaining until *exp, return 0 if now >= *exp */ + static int time_left(struct timeval *diff, struct timeval *exp) +@@ -251,6 +252,80 @@ + } + + /*********************************************************************** ++*%FUNCTION: recvPacketForMe ++*%ARGUMENTS: ++* packet -- output parameter ++* len -- output parameter length ++* conn -- connection ++* start -- operation startup timestamp ++* timeout -- how long to wait (in seconds) ++*%RETURNS: ++* -1: error ++* 0: timed out ++* 1: packet received ++*%DESCRIPTION: ++* receive and filter junk packets ++***********************************************************************/ ++ ++static int ++recvPacketForMe(PPPoEPacket *packet, int *len, PPPoEConnection *conn, time_t start, int timeout) ++{ ++ fd_set readable; ++ int r; ++ struct timeval tv; ++ time_t now; ++ int time_remain; ++ ++ do { ++ time(&now); ++ time_remain = timeout - (int)difftime(now, start); ++ if (time_remain <= 0) return 0; /* Timed out */ ++ ++ if (BPF_BUFFER_IS_EMPTY) { ++ tv.tv_sec = time_remain; ++ tv.tv_usec = 0; ++ ++ FD_ZERO(&readable); ++ FD_SET(conn->discoverySocket, &readable); ++ ++ r = select(conn->discoverySocket+1, &readable, NULL, NULL, &tv); ++ if (r < 0) ++ { ++ if (errno == EINTR) ++ { ++ continue; /* interrupted, so retry */ ++ }else ++ { ++ error("pppoe: recvPacketForMe: select: %m"); ++ return -1; ++ } ++ } ++ ++ if (r == 0) return 0; /* Timed out */ ++ } ++ ++ /* Get the packet */ ++ receivePacket(conn->discoverySocket, packet, len); ++ ++ /* Check length */ ++ if (ntohs(packet->length) + HDR_SIZE > *len) { ++ error("Bogus PPPoE length field (%u)", ++ (unsigned int) ntohs(packet->length)); ++ continue; ++ } ++ ++#ifdef USE_BPF ++ /* If it's not a Discovery packet, loop again */ ++ if (etherType(&packet) != Eth_PPPOE_Discovery) continue; ++#endif ++ /* If it's not for us, loop again */ ++ }while ( ! packetIsForMe(conn, packet)); ++ ++ return 1; ++} ++ ++ ++/*********************************************************************** + *%FUNCTION: sendPADI + *%ARGUMENTS: + * conn -- PPPoEConnection structure +@@ -344,13 +419,12 @@ + void + waitForPADO(PPPoEConnection *conn, int timeout) + { +- fd_set readable; + int r; +- struct timeval tv; + struct timeval expire_at; + + PPPoEPacket packet; + int len; ++ time_t start; + + struct PacketCriteria pc; + pc.conn = conn; +@@ -367,43 +441,10 @@ + } + expire_at.tv_sec += timeout; + ++ time(&start); + do { +- if (BPF_BUFFER_IS_EMPTY) { +- if (!time_left(&tv, &expire_at)) +- return; /* Timed out */ +- +- FD_ZERO(&readable); +- FD_SET(conn->discoverySocket, &readable); +- +- while(1) { +- r = select(conn->discoverySocket+1, &readable, NULL, NULL, &tv); +- if (r >= 0 || errno != EINTR) break; +- } +- if (r < 0) { +- error("select (waitForPADO): %m"); +- return; +- } +- if (r == 0) +- return; /* Timed out */ +- } +- +- /* Get the packet */ +- receivePacket(conn->discoverySocket, &packet, &len); +- +- /* Check length */ +- if (ntohs(packet.length) + HDR_SIZE > len) { +- error("Bogus PPPoE length field (%u)", +- (unsigned int) ntohs(packet.length)); +- continue; +- } +- +-#ifdef USE_BPF +- /* If it's not a Discovery packet, loop again */ +- if (etherType(&packet) != Eth_PPPOE_Discovery) continue; +-#endif +- +- /* If it's not for us, loop again */ +- if (!packetIsForMe(conn, &packet)) continue; ++ r = recvPacketForMe(&packet, &len, conn, start, timeout); ++ if (r<=0) return; /* Timed out or error */ + + if (packet.code == CODE_PADO) { + if (NOT_UNICAST(packet.ethHdr.h_source)) { +@@ -537,13 +578,12 @@ + static void + waitForPADS(PPPoEConnection *conn, int timeout) + { +- fd_set readable; + int r; +- struct timeval tv; + struct timeval expire_at; + + PPPoEPacket packet; + int len; ++ time_t start; + + if (gettimeofday(&expire_at, NULL) < 0) { + error("gettimeofday (waitForPADS): %m"); +@@ -551,48 +591,15 @@ + } + expire_at.tv_sec += timeout; + ++ time(&start); + conn->error = 0; + do { +- if (BPF_BUFFER_IS_EMPTY) { +- if (!time_left(&tv, &expire_at)) +- return; /* Timed out */ +- +- FD_ZERO(&readable); +- FD_SET(conn->discoverySocket, &readable); +- +- while(1) { +- r = select(conn->discoverySocket+1, &readable, NULL, NULL, &tv); +- if (r >= 0 || errno != EINTR) break; +- } +- if (r < 0) { +- error("select (waitForPADS): %m"); +- return; +- } +- if (r == 0) +- return; /* Timed out */ +- } +- +- /* Get the packet */ +- receivePacket(conn->discoverySocket, &packet, &len); +- +- /* Check length */ +- if (ntohs(packet.length) + HDR_SIZE > len) { +- error("Bogus PPPoE length field (%u)", +- (unsigned int) ntohs(packet.length)); +- continue; +- } +- +-#ifdef USE_BPF +- /* If it's not a Discovery packet, loop again */ +- if (etherType(&packet) != Eth_PPPOE_Discovery) continue; +-#endif ++ r = recvPacketForMe(&packet, &len, conn, start, timeout); ++ if (r<=0) return; /* Timed out or error */ + + /* If it's not from the AC, it's not for me */ + if (memcmp(packet.ethHdr.h_source, conn->peerEth, ETH_ALEN)) continue; + +- /* If it's not for us, loop again */ +- if (!packetIsForMe(conn, &packet)) continue; +- + /* Is it PADS? */ + if (packet.code == CODE_PADS) { + /* Parse for goodies */ +--- ppp-2.4.6/pppd/plugins/rp-pppoe/pppoe-discovery.c ++++ ppp-2.4.6/pppd/plugins/rp-pppoe/pppoe-discovery.c +@@ -14,6 +14,7 @@ + #include <unistd.h> + #include <errno.h> + #include <string.h> ++#include <time.h> + + #include "pppoe.h" + +@@ -513,6 +514,8 @@ + struct timeval tv; + PPPoEPacket packet; + int len; ++ time_t start, now; ++ int time_remain; + + struct PacketCriteria pc; + pc.conn = conn; +@@ -522,9 +525,13 @@ + pc.seenServiceName = 0; + conn->error = 0; + ++ time(&start); + do { ++ time(&now); ++ time_remain = timeout - (int)difftime(now, start); ++ if (time_remain <= 0) return; /* Timed out */ + if (BPF_BUFFER_IS_EMPTY) { +- tv.tv_sec = timeout; ++ tv.tv_sec = time_remain; + tv.tv_usec = 0; + + FD_ZERO(&readable); diff --git a/user/ppp/34_all_lcp-echo-adaptive.patch b/user/ppp/34_all_lcp-echo-adaptive.patch new file mode 100644 index 000000000..6faf19a27 --- /dev/null +++ b/user/ppp/34_all_lcp-echo-adaptive.patch @@ -0,0 +1,56 @@ +--- ppp-2.4.5/pppd/lcp.c ++++ ppp-2.4.5/pppd/lcp.c +@@ -73,6 +73,7 @@ + */ + int lcp_echo_interval = 0; /* Interval between LCP echo-requests */ + int lcp_echo_fails = 0; /* Tolerance to unanswered echo-requests */ ++bool lcp_echo_adaptive = 0; /* request echo only if the link was idle */ + bool lax_recv = 0; /* accept control chars in asyncmap */ + bool noendpoint = 0; /* don't send/accept endpoint discriminator */ + +@@ -151,6 +152,8 @@ + OPT_PRIO }, + { "lcp-echo-interval", o_int, &lcp_echo_interval, + "Set time in seconds between LCP echo requests", OPT_PRIO }, ++ { "lcp-echo-adaptive", o_bool, &lcp_echo_adaptive, ++ "Suppress LCP echo requests if traffic was received", 1 }, + { "lcp-restart", o_int, &lcp_fsm[0].timeouttime, + "Set time in seconds between LCP retransmissions", OPT_PRIO }, + { "lcp-max-terminate", o_int, &lcp_fsm[0].maxtermtransmits, +@@ -2322,6 +2325,22 @@ + } + + /* ++ * If adaptive echos have been enabled, only send the echo request if ++ * no traffic was received since the last one. ++ */ ++ if (lcp_echo_adaptive) { ++ static unsigned int last_pkts_in = 0; ++ ++ update_link_stats(f->unit); ++ link_stats_valid = 0; ++ ++ if (link_stats.pkts_in != last_pkts_in) { ++ last_pkts_in = link_stats.pkts_in; ++ return; ++ } ++ } ++ ++ /* + * Make and send the echo request frame. + */ + if (f->state == OPENED) { +--- ppp-2.4.5/pppd/pppd.8 ++++ ppp-2.4.5/pppd/pppd.8 +@@ -549,6 +549,11 @@ + dynamic IP address option (i.e. set /proc/sys/net/ipv4/ip_dynaddr to + 1) in demand mode if the local address changes. + .TP ++.B lcp\-echo\-adaptive ++If this option is used with the \fIlcp\-echo\-failure\fR option then ++pppd will send LCP echo\-request frames only if no traffic was received ++from the peer since the last echo\-request was sent. ++.TP + .B lcp\-echo\-failure \fIn + If this option is given, pppd will presume the peer to be dead + if \fIn\fR LCP echo\-requests are sent without receiving a valid LCP diff --git a/user/ppp/50_all_linux-headers.patch b/user/ppp/50_all_linux-headers.patch new file mode 100644 index 000000000..cd2adbead --- /dev/null +++ b/user/ppp/50_all_linux-headers.patch @@ -0,0 +1,28 @@ +the linux headers have started adding shims to not define types or structs +when C lib headers are active, but in order to work, the C lib headers have +to be included before the linux headers. + +move the netinet/in.h include up above the linux/ includes. + +Mike Frysinger <vapier@gentoo.org> + +--- a/pppd/plugins/rp-pppoe/pppoe.h ++++ b/pppd/plugins/rp-pppoe/pppoe.h +@@ -47,6 +47,8 @@ + #include <sys/socket.h> + #endif + ++#include <netinet/in.h> ++ + /* Ugly header files on some Linux boxes... */ + #if defined(HAVE_LINUX_IF_H) + #include <linux/if.h> +@@ -84,8 +86,6 @@ typedef unsigned long UINT32_t; + #include <linux/if_ether.h> + #endif + +-#include <netinet/in.h> +- + #ifdef HAVE_NETINET_IF_ETHER_H + #include <sys/types.h> + diff --git a/user/ppp/51_all_glibc-2.28.patch b/user/ppp/51_all_glibc-2.28.patch new file mode 100644 index 000000000..cbb5857a7 --- /dev/null +++ b/user/ppp/51_all_glibc-2.28.patch @@ -0,0 +1,110 @@ +From 3c7b86229f7bd2600d74db14b1fe5b3896be3875 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Jaroslav=20=C5=A0karvada?= <jskarvad@redhat.com> +Date: Fri, 6 Apr 2018 14:27:18 +0200 +Subject: [PATCH] pppd: Use openssl for the DES instead of the libcrypt / glibc +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +It seems the latest glibc (in Fedora glibc-2.27.9000-12.fc29) dropped +libcrypt. The libxcrypt standalone package can be used instead, but +it dropped the old setkey/encrypt API which ppp uses for DES. There +is support for using openssl in pppcrypt.c, but it contains typos +preventing it from compiling and seems to be written for an ancient +openssl version. + +This updates the code to use current openssl. + +[paulus@ozlabs.org - wrote the commit description, fixed comment in + Makefile.linux.] + +Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com> +Signed-off-by: Paul Mackerras <paulus@ozlabs.org> +--- + pppd/Makefile.linux | 7 ++++--- + pppd/pppcrypt.c | 18 +++++++++--------- + 2 files changed, 13 insertions(+), 12 deletions(-) + +diff --git a/pppd/Makefile.linux b/pppd/Makefile.linux +index 36d2b036..8d5ce99d 100644 +--- a/pppd/Makefile.linux ++++ b/pppd/Makefile.linux +@@ -35,10 +35,10 @@ endif + COPTS = -O2 -pipe -Wall -g + LIBS = + +-# Uncomment the next 2 lines to include support for Microsoft's ++# Uncomment the next line to include support for Microsoft's + # MS-CHAP authentication protocol. Also, edit plugins/radius/Makefile.linux. + CHAPMS=y +-USE_CRYPT=y ++#USE_CRYPT=y + # Don't use MSLANMAN unless you really know what you're doing. + #MSLANMAN=y + # Uncomment the next line to include support for MPPE. CHAPMS (above) must +@@ -137,7 +137,8 @@ endif + + ifdef NEEDDES + ifndef USE_CRYPT +-LIBS += -ldes $(LIBS) ++CFLAGS += -I/usr/include/openssl ++LIBS += -lcrypto + else + CFLAGS += -DUSE_CRYPT=1 + endif +diff --git a/pppd/pppcrypt.c b/pppd/pppcrypt.c +index 8b85b132..6b35375e 100644 +--- a/pppd/pppcrypt.c ++++ b/pppd/pppcrypt.c +@@ -64,7 +64,7 @@ u_char *des_key; /* OUT 64 bit DES key with parity bits added */ + des_key[7] = Get7Bits(key, 49); + + #ifndef USE_CRYPT +- des_set_odd_parity((des_cblock *)des_key); ++ DES_set_odd_parity((DES_cblock *)des_key); + #endif + } + +@@ -158,25 +158,25 @@ u_char *clear; /* OUT 8 octets */ + } + + #else /* USE_CRYPT */ +-static des_key_schedule key_schedule; ++static DES_key_schedule key_schedule; + + bool + DesSetkey(key) + u_char *key; + { +- des_cblock des_key; ++ DES_cblock des_key; + MakeKey(key, des_key); +- des_set_key(&des_key, key_schedule); ++ DES_set_key(&des_key, &key_schedule); + return (1); + } + + bool +-DesEncrypt(clear, key, cipher) ++DesEncrypt(clear, cipher) + u_char *clear; /* IN 8 octets */ + u_char *cipher; /* OUT 8 octets */ + { +- des_ecb_encrypt((des_cblock *)clear, (des_cblock *)cipher, +- key_schedule, 1); ++ DES_ecb_encrypt((DES_cblock *)clear, (DES_cblock *)cipher, ++ &key_schedule, 1); + return (1); + } + +@@ -185,8 +185,8 @@ DesDecrypt(cipher, clear) + u_char *cipher; /* IN 8 octets */ + u_char *clear; /* OUT 8 octets */ + { +- des_ecb_encrypt((des_cblock *)cipher, (des_cblock *)clear, +- key_schedule, 0); ++ DES_ecb_encrypt((DES_cblock *)cipher, (DES_cblock *)clear, ++ &key_schedule, 0); + return (1); + } + diff --git a/user/ppp/80_all_eaptls-mppe-1.101a.patch b/user/ppp/80_all_eaptls-mppe-1.101a.patch new file mode 100644 index 000000000..f22b63a86 --- /dev/null +++ b/user/ppp/80_all_eaptls-mppe-1.101a.patch @@ -0,0 +1,3233 @@ +diff -Naur ppp-2.4.7/README.eap-tls ppp-2.4.7-eaptls-mppe-1.101b/README.eap-tls +--- ppp-2.4.7/README.eap-tls 1970-01-01 01:00:00.000000000 +0100 ++++ ppp-2.4.7-eaptls-mppe-1.101b/README.eap-tls 2018-06-02 01:42:04.021165440 +0200 +@@ -0,0 +1,286 @@ ++EAP-TLS authentication support for PPP ++====================================== ++ ++1. Intro ++ ++ The Extensible Authentication Protocol (EAP; RFC 3748) is a ++ security protocol that can be used with PPP. It provides a means ++ to plug in multiple optional authentication methods. ++ ++ Transport Level Security (TLS; RFC 2246) provides for mutual ++ authentication, integrity-protected ciphersuite negotiation and ++ key exchange between two endpoints. It also provides for optional ++ MPPE encryption. ++ ++ EAP-TLS (RFC 2716) incapsulates the TLS messages in EAP packets, ++ allowing TLS mutual authentication to be used as a generic EAP ++ mechanism. It also provides optional encryption using the MPPE ++ protocol. ++ ++ This patch provide EAP-TLS support to pppd. ++ This authentication method can be used in both client or server ++ mode. ++ ++2. Building ++ ++ To build pppd with EAP-TLS support, OpenSSL (http://www.openssl.org) ++ is required. Any version from 0.9.7 should work. ++ ++ Configure, compile, and install as usual. ++ ++3. Configuration ++ ++ On the client side there are two ways to configure EAP-TLS: ++ ++ 1. supply the appropriate 'ca', 'cert' and 'key' command-line parameters ++ ++ 2. edit the /etc/ppp/eaptls-client file. ++ Insert a line for each system with which you use EAP-TLS. ++ The line is composed of this fields separated by tab: ++ ++ - Client name ++ The name used by the client for authentication, can be * ++ - Server name ++ The name of the server, can be * ++ - Client certificate file ++ The file containing the certificate chain for the ++ client in PEM format ++ - Server certificate file ++ If you want to specify the certificate that the ++ server is allowed to use, put the certificate file name. ++ Else put a dash '-'. ++ - CA certificate file ++ The file containing the trusted CA certificates in PEM ++ format. ++ - Client private key file ++ The file containing the client private key in PEM format. ++ ++ ++ On the server side edit the /etc/ppp/eaptls-server file. ++ Insert a line for each system with which you use EAP-TLS. ++ The line is composed of this fields separated by tab: ++ ++ - Client name ++ The name used by the client for authentication, can be * ++ - Server name ++ The name of the server, can be * ++ - Client certificate file ++ If you want to specify the certificate that the ++ client is allowed to use, put the certificate file name. ++ Else put a dash '-'. ++ - Server certificate file ++ The file containing the certificate chain for the ++ server in PEM format ++ - CA certificate file ++ The file containing the trusted CA certificates in PEM format. ++ - Client private key file ++ The file containing the server private key in PEM format. ++ - addresses ++ A list of IP addresses the client is allowed to use. ++ ++ ++ OpenSSL engine support is included starting with v0.95 of this patch. ++ Currently the only engine tested is the 'pkcs11' engine (hardware token ++ support). To use the 'pksc11' engine: ++ - Use a special private key fileiname in the /etc/ppp/eaptls-client file: ++ <engine>:<identifier> ++ e.g. ++ pkcs11:123456 ++ ++ - The certificate can also be loaded from the 'pkcs11' engine using ++ a special client certificate filename in the /etc/ppp/eaptls-client file: ++ <engine>:<identifier> ++ e.g. ++ pkcs11:123456 ++ ++ - Create an /etc/ppp/openssl.cnf file to load the right OpenSSL engine prior ++ to starting 'pppd'. A sample openssl.cnf file is ++ ++ openssl_conf = openssl_def ++ ++ [ openssl_def ] ++ engines = engine_section ++ ++ [ engine_section ] ++ pkcs11 = pkcs11_section ++ ++ [ pkcs11_section ] ++ engine_id = pkcs11 ++ dynamic_path = /usr/lib64/openssl/engines/engine_pkcs11.so ++ MODULE_PATH = /usr/lib64/libeTPkcs11.so ++ init = 0 ++ ++ - There are two ways to specify a password/PIN for the PKCS11 engine: ++ - inside the openssl.cnf file using ++ PIN = your-secret-pin ++ Note The keyword 'PIN' is case sensitive! ++ - Using the 'password' in the ppp options file. ++ From v0.97 of the eap-tls patch the password can also be supplied ++ using the appropriate 'eaptls_passwd_hook' (see plugins/passprompt.c ++ for an example). ++ ++ ++4. Options ++ ++ These pppd options are available: ++ ++ ca <ca-file> ++ Use the CA public certificate found in <ca-file> in PEM format ++ cert <cert-file> ++ Use the client public certificate found in <cert-file> in PEM format ++ or in engine:engine_id format ++ key <key-file> ++ Use the client private key found in <key-file> in PEM format ++ or in engine:engine_id format ++ crl <crl-file> ++ Use the Certificate Revocation List (CRL) file <crl-file> in PEM format. ++ crl-dir <dir> ++ Use CRL files from directory <dir>. It contains CRL files in PEM ++ format and each file contains a CRL. The files are looked up ++ by the issuer name hash value. Use the c_rehash utility ++ to create necessary links. ++ need-peer-eap ++ If the peer doesn't ask us to authenticate or doesn't use eap ++ to authenticate us, disconnect. ++ ++ Note: ++ password-encrypted certificates can be used as of v0.94 of this ++ patch. The password for the eap-tls.key file is specified using ++ the regular ++ password .... ++ statement in the ppp options file, or by using the appropriate ++ plugin which supplies a 'eaptls_passwd_hook' routine. ++ ++5. Connecting ++ ++ If you're setting up a pppd server, edit the EAP-TLS configuration file ++ as written above and then run pppd with the 'auth' option to authenticate ++ the client. The EAP-TLS method will be used if the other eap methods can't ++ be used (no secrets). ++ ++ If you're setting up a client, edit the configuration file and then run ++ pppd with 'remotename' option to specify the server name. Add the ++ 'need-peer-eap' option if you want to be sure the peer ask you to ++ authenticate (and to use eap) and to disconnect if it doesn't. ++ ++6. Example ++ ++ The following example can be used to connect a Linux client with the 'pptp' ++ package to a Linux server running the 'pptpd' (PoPToP) package. The server ++ was configured with a certificate with name (CN) 'pptp-server', the client ++ was configured with a certificate with name (CN) 'pptp-client', both ++ signed by the same Certificate Authority (CA). ++ ++ Server side: ++ - /etc/pptpd.conf file: ++ option /etc/ppp/options-pptpd-eaptls ++ localip 172.16.1.1 ++ remoteip 172.16.1.10-20 ++ - /etc/ppp/options-pptpd-eaptls file: ++ name pptp-server ++ lock ++ mtu 1500 ++ mru 1450 ++ auth ++ lcp-echo-failure 3 ++ lcp-echo-interval 5 ++ nodeflate ++ nobsdcomp ++ nopredictor1 ++ nopcomp ++ noaccomp ++ ++ require-eap ++ require-mppe-128 ++ ++ crl /home/janjust/ppp/keys/crl.pem ++ ++ debug ++ logfile /tmp/pppd.log ++ ++ - /etc/ppp/eaptls-server file: ++ * pptp-server - /etc/ppp/pptp-server.crt /etc/ppp/ca.crt /etc/ppp/pptp-server.key * ++ ++ - On the server, run ++ pptdp --conf /etc/pptpd.conf ++ ++ Client side: ++ - Run ++ pppd noauth require-eap require-mppe-128 \ ++ ipcp-accept-local ipcp-accept-remote noipdefault \ ++ cert /etc/ppp/keys/pptp-client.crt \ ++ key /etc/ppp/keys/pptp-client.key \ ++ ca /etc/ppp/keys/ca.crt \ ++ name pptp-client remotename pptp-server \ ++ debug logfile /tmp/pppd.log ++ pty "pptp pptp-server.example.com --nolaunchpppd" ++ ++ Check /var/log/messages and the files /tmp/pppd.log on both sides for debugging info. ++ ++7. Notes ++ ++ This is experimental code. ++ Send suggestions and comments to Jan Just Keijser <janjust@nikhef.nl> ++ ++8. Changelog of ppp-<>-eaptls-mppe-* patches ++ ++v0.7 (22-Nov-2005) ++ - First version of the patch to include MPPE support ++ - ppp-2.4.3 only ++v0.9 (25-Jul-2006) ++ - Bug fixes ++ - First version for ppp-2.4.4 ++v0.91 (03-Sep-2006) ++ - Added missing #include for md5.h ++ - Last version for ppp-2.4.3 ++v0.92 (22-Apr-2008) ++ - Fix for openssl 0.9.8 issue with md5 function overload. ++v0.93 (14-Aug-2008) ++ - Make sure 'noauth' option can be used to bypass server certificate verification. ++v0.94 (15-Oct-2008) ++ - Added support for password-protected private keys by (ab)using the 'password' field. ++v0.95 (23-Dec-2009) ++ - First version with OpenSSL engine support. ++v0.96 (27-Jan-2010) ++ - Added fully functional support for OpenSSL engines (PKCS#11) ++ - First version for ppp-2.4.5 ++v0.97 (20-Apr-2010) ++ - Some bug fixes for v0.96 ++ - Added support for entering the password via a plugin. The sample plugin ++ .../pppd/plugins/passprompt.c has been extended with EAP-TLS support. ++ The "old" methods using the password option or the /etc/ppp/openssl.cnf file still work. ++ - Added support for specifying the client CA, certificate and private key on the command-line ++ or via the ppp config file. ++v0.98 (20-Apr-2010) ++ - Fix initialisation bug when using ca/cert/key command-line options. ++ - Last version for ppp-2.4.4 ++v0.99 (05-Oct-2010) ++ - Fix coredump when using multilink option. ++v0.991 (08-Aug-2011) ++ - Fix compilation issue with openssl 1.0. ++v0.992 (01-Dec-2011) ++ - Fix compilation issue with eaptls_check_hook and passwordfd plugin. ++v0.993 (24-Apr-2012) ++ - Fix compilation issue when EAP_TLS=n in pppd/Makefile. ++v0.994 (11-Jun-2012) ++ - Fix compilation issue on Ubuntu 11.10. ++v0.995 (27-May-2014) ++ - Add support for a CRL file using the command-line option 'crl' ++ (prior only 'crl-dir' was supported). ++ - Fix segfault when pkcs11 enginename was not specified correctly. ++ - Fix segfault when client was misconfigured. ++ - Disable SSL Session Ticket support as Windows 8 does not support this. ++v0.996 (28-May-2014) ++ - Fix minor bug where SessionTicket message was printed as 'Unknown SSL3 code 4' ++ - Add EAP-TLS-specific options to pppd.8 manual page. ++ - Updated README.eap-tls file with new options and provide an example. ++v0.997 (19-Jun-2014) ++ - Change SSL_OP_NO_TICKETS to SSL_OP_NO_TICKET ++ - Fix bug in initialisation code with fragmented packets. ++v0.998 (13-Mar-2015) ++ - Added fix for https://bugzilla.redhat.com/show_bug.cgi?id=1023620 ++v0.999 (11-May-2017) ++ - Added support for OpenSSL 1.1: the code will now compile against OpenSSL 1.0.x or 1.1.x. ++v1.101 (1-Jun-2018) ++ - Fix vulnerabilities CVE-2018-11574. ++ +diff -Naur ppp-2.4.7/etc.ppp/eaptls-client ppp-2.4.7-eaptls-mppe-1.101b/etc.ppp/eaptls-client +--- ppp-2.4.7/etc.ppp/eaptls-client 1970-01-01 01:00:00.000000000 +0100 ++++ ppp-2.4.7-eaptls-mppe-1.101b/etc.ppp/eaptls-client 2018-06-02 01:42:04.021165440 +0200 +@@ -0,0 +1,10 @@ ++# Parameters for authentication using EAP-TLS (client) ++ ++# client name (can be *) ++# server name (can be *) ++# client certificate file (required) ++# server certificate file (optional, if unused put '-') ++# CA certificate file (required) ++# client private key file (required) ++ ++#client server /root/cert/client.crt - /root/cert/ca.crt /root/cert/client.key +diff -Naur ppp-2.4.7/etc.ppp/eaptls-server ppp-2.4.7-eaptls-mppe-1.101b/etc.ppp/eaptls-server +--- ppp-2.4.7/etc.ppp/eaptls-server 1970-01-01 01:00:00.000000000 +0100 ++++ ppp-2.4.7-eaptls-mppe-1.101b/etc.ppp/eaptls-server 2018-06-02 01:42:04.021165440 +0200 +@@ -0,0 +1,11 @@ ++# Parameters for authentication using EAP-TLS (server) ++ ++# client name (can be *) ++# server name (can be *) ++# client certificate file (optional, if unused put '-') ++# server certificate file (required) ++# CA certificate file (required) ++# server private key file (required) ++# allowed addresses (required, can be *) ++ ++#client server - /root/cert/server.crt /root/cert/ca.crt /root/cert/server.key 192.168.1.0/24 +diff -Naur ppp-2.4.7/etc.ppp/openssl.cnf ppp-2.4.7-eaptls-mppe-1.101b/etc.ppp/openssl.cnf +--- ppp-2.4.7/etc.ppp/openssl.cnf 1970-01-01 01:00:00.000000000 +0100 ++++ ppp-2.4.7-eaptls-mppe-1.101b/etc.ppp/openssl.cnf 2018-06-02 01:42:04.021165440 +0200 +@@ -0,0 +1,14 @@ ++openssl_conf = openssl_def ++ ++[ openssl_def ] ++engines = engine_section ++ ++[ engine_section ] ++pkcs11 = pkcs11_section ++ ++[ pkcs11_section ] ++engine_id = pkcs11 ++dynamic_path = /usr/lib64/openssl/engines/engine_pkcs11.so ++MODULE_PATH = /usr/lib64/libeTPkcs11.so ++init = 0 ++ +diff -Naur ppp-2.4.7/linux/Makefile.top ppp-2.4.7-eaptls-mppe-1.101b/linux/Makefile.top +--- ppp-2.4.7/linux/Makefile.top 2014-08-09 14:31:39.000000000 +0200 ++++ ppp-2.4.7-eaptls-mppe-1.101b/linux/Makefile.top 2018-06-02 01:42:04.021165440 +0200 +@@ -26,7 +26,7 @@ + cd pppdump; $(MAKE) $(MFLAGS) install + + install-etcppp: $(ETCDIR) $(ETCDIR)/options $(ETCDIR)/pap-secrets \ +- $(ETCDIR)/chap-secrets ++ $(ETCDIR)/chap-secrets $(ETCDIR)/eaptls-server $(ETCDIR)/eaptls-client + + install-devel: + cd pppd; $(MAKE) $(MFLAGS) install-devel +@@ -37,6 +37,10 @@ + $(INSTALL) -c -m 600 etc.ppp/pap-secrets $@ + $(ETCDIR)/chap-secrets: + $(INSTALL) -c -m 600 etc.ppp/chap-secrets $@ ++$(ETCDIR)/eaptls-server: ++ $(INSTALL) -c -m 600 etc.ppp/eaptls-server $@ ++$(ETCDIR)/eaptls-client: ++ $(INSTALL) -c -m 600 etc.ppp/eaptls-client $@ + + $(BINDIR): + $(INSTALL) -d -m 755 $@ +diff -Naur ppp-2.4.7/pppd/Makefile.linux ppp-2.4.7-eaptls-mppe-1.101b/pppd/Makefile.linux +--- ppp-2.4.7/pppd/Makefile.linux 2014-08-09 14:31:39.000000000 +0200 ++++ ppp-2.4.7-eaptls-mppe-1.101b/pppd/Makefile.linux 2018-06-02 01:42:04.021165440 +0200 +@@ -76,6 +76,9 @@ + # Use libutil + USE_LIBUTIL=y + ++# Enable EAP-TLS authentication (requires libssl and libcrypto) ++USE_EAPTLS=y ++ + MAXOCTETS=y + + INCLUDE_DIRS= -I../include +@@ -115,6 +118,15 @@ + PPPDOBJS += sha1.o + endif + ++# EAP-TLS ++ifdef USE_EAPTLS ++CFLAGS += -DUSE_EAPTLS=1 -I/usr/kerberos/include ++LIBS += -lssl -lcrypto ++PPPDSRC += eap-tls.c ++HEADERS += eap-tls.h ++PPPDOBJS += eap-tls.o ++endif ++ + ifdef HAS_SHADOW + CFLAGS += -DHAS_SHADOW + #LIBS += -lshadow $(LIBS) +diff -Naur ppp-2.4.7/pppd/auth.c ppp-2.4.7-eaptls-mppe-1.101b/pppd/auth.c +--- ppp-2.4.7/pppd/auth.c 2014-08-09 14:31:39.000000000 +0200 ++++ ppp-2.4.7-eaptls-mppe-1.101b/pppd/auth.c 2018-06-02 01:42:04.022165436 +0200 +@@ -109,6 +109,9 @@ + #include "upap.h" + #include "chap-new.h" + #include "eap.h" ++#ifdef USE_EAPTLS ++#include "eap-tls.h" ++#endif + #ifdef CBCP_SUPPORT + #include "cbcp.h" + #endif +@@ -183,6 +186,11 @@ + /* Hook for a plugin to get the CHAP password for authenticating us */ + int (*chap_passwd_hook) __P((char *user, char *passwd)) = NULL; + ++#ifdef USE_EAPTLS ++/* Hook for a plugin to get the EAP-TLS password for authenticating us */ ++int (*eaptls_passwd_hook) __P((char *user, char *passwd)) = NULL; ++#endif ++ + /* Hook for a plugin to say whether it is OK if the peer + refuses to authenticate. */ + int (*null_auth_hook) __P((struct wordlist **paddrs, +@@ -238,6 +246,14 @@ + bool explicit_user = 0; /* Set if "user" option supplied */ + bool explicit_passwd = 0; /* Set if "password" option supplied */ + char remote_name[MAXNAMELEN]; /* Peer's name for authentication */ ++#ifdef USE_EAPTLS ++char *cacert_file = NULL; /* CA certificate file (pem format) */ ++char *cert_file = NULL; /* client certificate file (pem format) */ ++char *privkey_file = NULL; /* client private key file (pem format) */ ++char *crl_dir = NULL; /* directory containing CRL files */ ++char *crl_file = NULL; /* Certificate Revocation List (CRL) file (pem format) */ ++bool need_peer_eap = 0; /* Require peer to authenticate us */ ++#endif + + static char *uafname; /* name of most recent +ua file */ + +@@ -254,6 +270,19 @@ + static int have_chap_secret __P((char *, char *, int, int *)); + static int have_srp_secret __P((char *client, char *server, int need_ip, + int *lacks_ipp)); ++ ++#ifdef USE_EAPTLS ++static int have_eaptls_secret_server ++__P((char *client, char *server, int need_ip, int *lacks_ipp)); ++static int have_eaptls_secret_client __P((char *client, char *server)); ++static int scan_authfile_eaptls __P((FILE * f, char *client, char *server, ++ char *cli_cert, char *serv_cert, ++ char *ca_cert, char *pk, ++ struct wordlist ** addrs, ++ struct wordlist ** opts, ++ char *filename, int flags)); ++#endif ++ + static int ip_addr_check __P((u_int32_t, struct permitted_ip *)); + static int scan_authfile __P((FILE *, char *, char *, char *, + struct wordlist **, struct wordlist **, +@@ -401,6 +430,15 @@ + "Set telephone number(s) which are allowed to connect", + OPT_PRIV | OPT_A2LIST }, + ++#ifdef USE_EAPTLS ++ { "ca", o_string, &cacert_file, "EAP-TLS CA certificate in PEM format" }, ++ { "cert", o_string, &cert_file, "EAP-TLS client certificate in PEM format" }, ++ { "key", o_string, &privkey_file, "EAP-TLS client private key in PEM format" }, ++ { "crl-dir", o_string, &crl_dir, "Use CRLs in directory" }, ++ { "crl", o_string, &crl_file, "Use specific CRL file" }, ++ { "need-peer-eap", o_bool, &need_peer_eap, ++ "Require the peer to authenticate us", 1 }, ++#endif /* USE_EAPTLS */ + { NULL } + }; + +@@ -730,6 +768,9 @@ + lcp_options *wo = &lcp_wantoptions[unit]; + lcp_options *go = &lcp_gotoptions[unit]; + lcp_options *ho = &lcp_hisoptions[unit]; ++#ifdef USE_EAPTLS ++ lcp_options *ao = &lcp_allowoptions[unit]; ++#endif + int i; + struct protent *protp; + +@@ -764,6 +805,22 @@ + } + } + ++#ifdef USE_EAPTLS ++ if (need_peer_eap && !ao->neg_eap) { ++ warn("eap required to authenticate us but no suitable secrets"); ++ lcp_close(unit, "couldn't negotiate eap"); ++ status = EXIT_AUTH_TOPEER_FAILED; ++ return; ++ } ++ ++ if (need_peer_eap && !ho->neg_eap) { ++ warn("peer doesn't want to authenticate us with eap"); ++ lcp_close(unit, "couldn't negotiate eap"); ++ status = EXIT_PEER_AUTH_FAILED; ++ return; ++ } ++#endif ++ + new_phase(PHASE_AUTHENTICATE); + auth = 0; + if (go->neg_eap) { +@@ -1277,6 +1334,15 @@ + our_name, 1, &lacks_ip); + } + ++#ifdef USE_EAPTLS ++ if (!can_auth && wo->neg_eap) { ++ can_auth = ++ have_eaptls_secret_server((explicit_remote ? remote_name : ++ NULL), our_name, 1, &lacks_ip); ++ ++ } ++#endif ++ + if (auth_required && !can_auth && noauth_addrs == NULL) { + if (default_auth) { + option_error( +@@ -1331,7 +1397,11 @@ + passwd[0] != 0 || + (hadchap == 1 || (hadchap == -1 && have_chap_secret(user, + (explicit_remote? remote_name: NULL), 0, NULL))) || +- have_srp_secret(user, (explicit_remote? remote_name: NULL), 0, NULL)); ++ have_srp_secret(user, (explicit_remote? remote_name: NULL), 0, NULL) ++#ifdef USE_EAPTLS ++ || have_eaptls_secret_client(user, (explicit_remote? remote_name: NULL)) ++#endif ++ ); + + hadchap = -1; + if (go->neg_upap && !uselogin && !have_pap_secret(NULL)) +@@ -1346,8 +1416,14 @@ + !have_chap_secret((explicit_remote? remote_name: NULL), our_name, + 1, NULL))) && + !have_srp_secret((explicit_remote? remote_name: NULL), our_name, 1, +- NULL)) ++ NULL) ++#ifdef USE_EAPTLS ++ && !have_eaptls_secret_server((explicit_remote? remote_name: NULL), ++ our_name, 1, NULL) ++#endif ++ ) + go->neg_eap = 0; ++ + } + + +@@ -1707,6 +1783,7 @@ + } + + ++ + /* + * get_secret - open the CHAP secret file and return the secret + * for authenticating the given client on the given server. +@@ -2359,3 +2436,335 @@ + + auth_script_pid = run_program(script, argv, 0, auth_script_done, NULL, 0); + } ++ ++ ++#ifdef USE_EAPTLS ++static int ++have_eaptls_secret_server(client, server, need_ip, lacks_ipp) ++ char *client; ++ char *server; ++ int need_ip; ++ int *lacks_ipp; ++{ ++ FILE *f; ++ int ret; ++ char *filename; ++ struct wordlist *addrs; ++ char servcertfile[MAXWORDLEN]; ++ char clicertfile[MAXWORDLEN]; ++ char cacertfile[MAXWORDLEN]; ++ char pkfile[MAXWORDLEN]; ++ ++ filename = _PATH_EAPTLSSERVFILE; ++ f = fopen(filename, "r"); ++ if (f == NULL) ++ return 0; ++ ++ if (client != NULL && client[0] == 0) ++ client = NULL; ++ else if (server != NULL && server[0] == 0) ++ server = NULL; ++ ++ ret = ++ scan_authfile_eaptls(f, client, server, clicertfile, servcertfile, ++ cacertfile, pkfile, &addrs, NULL, filename, ++ 0); ++ ++ fclose(f); ++ ++/* ++ if (ret >= 0 && !eaptls_init_ssl(1, cacertfile, servcertfile, ++ clicertfile, pkfile)) ++ ret = -1; ++*/ ++ ++ if (ret >= 0 && need_ip && !some_ip_ok(addrs)) { ++ if (lacks_ipp != 0) ++ *lacks_ipp = 1; ++ ret = -1; ++ } ++ if (addrs != 0) ++ free_wordlist(addrs); ++ ++ return ret >= 0; ++} ++ ++ ++static int ++have_eaptls_secret_client(client, server) ++ char *client; ++ char *server; ++{ ++ FILE *f; ++ int ret; ++ char *filename; ++ struct wordlist *addrs = NULL; ++ char servcertfile[MAXWORDLEN]; ++ char clicertfile[MAXWORDLEN]; ++ char cacertfile[MAXWORDLEN]; ++ char pkfile[MAXWORDLEN]; ++ ++ if (client != NULL && client[0] == 0) ++ client = NULL; ++ else if (server != NULL && server[0] == 0) ++ server = NULL; ++ ++ if (cacert_file && cert_file && privkey_file) ++ return 1; ++ ++ filename = _PATH_EAPTLSCLIFILE; ++ f = fopen(filename, "r"); ++ if (f == NULL) ++ return 0; ++ ++ ret = ++ scan_authfile_eaptls(f, client, server, clicertfile, servcertfile, ++ cacertfile, pkfile, &addrs, NULL, filename, ++ 0); ++ fclose(f); ++ ++/* ++ if (ret >= 0 && !eaptls_init_ssl(0, cacertfile, clicertfile, ++ servcertfile, pkfile)) ++ ret = -1; ++*/ ++ ++ if (addrs != 0) ++ free_wordlist(addrs); ++ ++ return ret >= 0; ++} ++ ++ ++static int ++scan_authfile_eaptls(f, client, server, cli_cert, serv_cert, ca_cert, pk, ++ addrs, opts, filename, flags) ++ FILE *f; ++ char *client; ++ char *server; ++ char *cli_cert; ++ char *serv_cert; ++ char *ca_cert; ++ char *pk; ++ struct wordlist **addrs; ++ struct wordlist **opts; ++ char *filename; ++ int flags; ++{ ++ int newline; ++ int got_flag, best_flag; ++ struct wordlist *ap, *addr_list, *alist, **app; ++ char word[MAXWORDLEN]; ++ ++ if (addrs != NULL) ++ *addrs = NULL; ++ if (opts != NULL) ++ *opts = NULL; ++ addr_list = NULL; ++ if (!getword(f, word, &newline, filename)) ++ return -1; /* file is empty??? */ ++ newline = 1; ++ best_flag = -1; ++ for (;;) { ++ /* ++ * Skip until we find a word at the start of a line. ++ */ ++ while (!newline && getword(f, word, &newline, filename)); ++ if (!newline) ++ break; /* got to end of file */ ++ ++ /* ++ * Got a client - check if it's a match or a wildcard. ++ */ ++ got_flag = 0; ++ if (client != NULL && strcmp(word, client) != 0 && !ISWILD(word)) { ++ newline = 0; ++ continue; ++ } ++ if (!ISWILD(word)) ++ got_flag = NONWILD_CLIENT; ++ ++ /* ++ * Now get a server and check if it matches. ++ */ ++ if (!getword(f, word, &newline, filename)) ++ break; ++ if (newline) ++ continue; ++ if (!ISWILD(word)) { ++ if (server != NULL && strcmp(word, server) != 0) ++ continue; ++ got_flag |= NONWILD_SERVER; ++ } ++ ++ /* ++ * Got some sort of a match - see if it's better than what ++ * we have already. ++ */ ++ if (got_flag <= best_flag) ++ continue; ++ ++ /* ++ * Get the cli_cert ++ */ ++ if (!getword(f, word, &newline, filename)) ++ break; ++ if (newline) ++ continue; ++ if (strcmp(word, "-") != 0) { ++ strlcpy(cli_cert, word, MAXWORDLEN); ++ } else ++ cli_cert[0] = 0; ++ ++ /* ++ * Get serv_cert ++ */ ++ if (!getword(f, word, &newline, filename)) ++ break; ++ if (newline) ++ continue; ++ if (strcmp(word, "-") != 0) { ++ strlcpy(serv_cert, word, MAXWORDLEN); ++ } else ++ serv_cert[0] = 0; ++ ++ /* ++ * Get ca_cert ++ */ ++ if (!getword(f, word, &newline, filename)) ++ break; ++ if (newline) ++ continue; ++ strlcpy(ca_cert, word, MAXWORDLEN); ++ ++ /* ++ * Get pk ++ */ ++ if (!getword(f, word, &newline, filename)) ++ break; ++ if (newline) ++ continue; ++ strlcpy(pk, word, MAXWORDLEN); ++ ++ ++ /* ++ * Now read address authorization info and make a wordlist. ++ */ ++ app = &alist; ++ for (;;) { ++ if (!getword(f, word, &newline, filename) || newline) ++ break; ++ ap = (struct wordlist *) ++ malloc(sizeof(struct wordlist) + strlen(word) + 1); ++ if (ap == NULL) ++ novm("authorized addresses"); ++ ap->word = (char *) (ap + 1); ++ strcpy(ap->word, word); ++ *app = ap; ++ app = &ap->next; ++ } ++ *app = NULL; ++ /* ++ * This is the best so far; remember it. ++ */ ++ best_flag = got_flag; ++ if (addr_list) ++ free_wordlist(addr_list); ++ addr_list = alist; ++ ++ if (!newline) ++ break; ++ } ++ ++ /* scan for a -- word indicating the start of options */ ++ for (app = &addr_list; (ap = *app) != NULL; app = &ap->next) ++ if (strcmp(ap->word, "--") == 0) ++ break; ++ /* ap = start of options */ ++ if (ap != NULL) { ++ ap = ap->next; /* first option */ ++ free(*app); /* free the "--" word */ ++ *app = NULL; /* terminate addr list */ ++ } ++ if (opts != NULL) ++ *opts = ap; ++ else if (ap != NULL) ++ free_wordlist(ap); ++ if (addrs != NULL) ++ *addrs = addr_list; ++ else if (addr_list != NULL) ++ free_wordlist(addr_list); ++ ++ return best_flag; ++} ++ ++ ++int ++get_eaptls_secret(unit, client, server, clicertfile, servcertfile, ++ cacertfile, pkfile, am_server) ++ int unit; ++ char *client; ++ char *server; ++ char *clicertfile; ++ char *servcertfile; ++ char *cacertfile; ++ char *pkfile; ++ int am_server; ++{ ++ FILE *fp; ++ int ret; ++ char *filename = NULL; ++ struct wordlist *addrs = NULL; ++ struct wordlist *opts = NULL; ++ ++ /* in client mode the ca+cert+privkey can also be specified as options */ ++ if (!am_server && cacert_file && cert_file && privkey_file ) ++ { ++ strlcpy( clicertfile, cert_file, MAXWORDLEN ); ++ strlcpy( cacertfile, cacert_file, MAXWORDLEN ); ++ strlcpy( pkfile, privkey_file, MAXWORDLEN ); ++ servcertfile[0] = '\0'; ++ } ++ else ++ { ++ filename = (am_server ? _PATH_EAPTLSSERVFILE : _PATH_EAPTLSCLIFILE); ++ addrs = NULL; ++ ++ fp = fopen(filename, "r"); ++ if (fp == NULL) ++ { ++ error("Can't open eap-tls secret file %s: %m", filename); ++ return 0; ++ } ++ ++ check_access(fp, filename); ++ ++ ret = scan_authfile_eaptls(fp, client, server, clicertfile, servcertfile, ++ cacertfile, pkfile, &addrs, &opts, filename, 0); ++ ++ fclose(fp); ++ ++ if (ret < 0) return 0; ++ } ++ ++ if (eaptls_passwd_hook) ++ { ++ dbglog( "Calling eaptls password hook" ); ++ if ( (*eaptls_passwd_hook)(pkfile, passwd) < 0) ++ { ++ error("Unable to obtain EAP-TLS password for %s (%s) from plugin", ++ client, pkfile); ++ return 0; ++ } ++ } ++ if (am_server) ++ set_allowed_addrs(unit, addrs, opts); ++ else if (opts != NULL) ++ free_wordlist(opts); ++ if (addrs != NULL) ++ free_wordlist(addrs); ++ ++ return 1; ++} ++#endif ++ +diff -Naur ppp-2.4.7/pppd/ccp.c ppp-2.4.7-eaptls-mppe-1.101b/pppd/ccp.c +--- ppp-2.4.7/pppd/ccp.c 2014-08-09 14:31:39.000000000 +0200 ++++ ppp-2.4.7-eaptls-mppe-1.101b/pppd/ccp.c 2018-06-02 01:42:04.022165436 +0200 +@@ -540,6 +540,9 @@ + if (go->mppe) { + ccp_options *ao = &ccp_allowoptions[f->unit]; + int auth_mschap_bits = auth_done[f->unit]; ++#ifdef USE_EAPTLS ++ int auth_eap_bits = auth_done[f->unit]; ++#endif + int numbits; + + /* +@@ -567,8 +570,23 @@ + lcp_close(f->unit, "MPPE required but not available"); + return; + } ++ ++#ifdef USE_EAPTLS ++ /* ++ * MPPE is also possible in combination with EAP-TLS. ++ * It is not possible to detect if we're doing EAP or EAP-TLS ++ * at this stage, hence we accept all forms of EAP. If TLS is ++ * not used then the MPPE keys will not be derived anyway. ++ */ ++ /* Leave only the eap auth bits set */ ++ auth_eap_bits &= (EAP_WITHPEER | EAP_PEER ); ++ ++ if ((numbits == 0) && (auth_eap_bits == 0)) { ++ error("MPPE required, but MS-CHAP[v2] nor EAP-TLS auth are performed."); ++#else + if (!numbits) { +- error("MPPE required, but MS-CHAP[v2] auth not performed."); ++ error("MPPE required, but MS-CHAP[v2] auth not performed."); ++#endif + lcp_close(f->unit, "MPPE required but not available"); + return; + } +diff -Naur ppp-2.4.7/pppd/chap-md5.c ppp-2.4.7-eaptls-mppe-1.101b/pppd/chap-md5.c +--- ppp-2.4.7/pppd/chap-md5.c 2014-08-09 14:31:39.000000000 +0200 ++++ ppp-2.4.7-eaptls-mppe-1.101b/pppd/chap-md5.c 2018-06-02 01:42:04.022165436 +0200 +@@ -36,7 +36,11 @@ + #include "chap-new.h" + #include "chap-md5.h" + #include "magic.h" ++#ifdef USE_EAPTLS ++#include "eap-tls.h" ++#else + #include "md5.h" ++#endif /* USE_EAPTLS */ + + #define MD5_HASH_SIZE 16 + #define MD5_MIN_CHALLENGE 16 +diff -Naur ppp-2.4.7/pppd/eap-tls.c ppp-2.4.7-eaptls-mppe-1.101b/pppd/eap-tls.c +--- ppp-2.4.7/pppd/eap-tls.c 1970-01-01 01:00:00.000000000 +0100 ++++ ppp-2.4.7-eaptls-mppe-1.101b/pppd/eap-tls.c 2018-06-02 01:42:16.790124406 +0200 +@@ -0,0 +1,1313 @@ ++/* ++ * eap-tls.c - EAP-TLS implementation for PPP ++ * ++ * Copyright (c) Beniamino Galvani 2005 All rights reserved. ++ * ++ * Redistribution and use in source and binary forms, with or without ++ * modification, are permitted provided that the following conditions ++ * are met: ++ * ++ * 1. Redistributions of source code must retain the above copyright ++ * notice, this list of conditions and the following disclaimer. ++ * ++ * 2. Redistributions in binary form must reproduce the above copyright ++ * notice, this list of conditions and the following disclaimer in ++ * the documentation and/or other materials provided with the ++ * distribution. ++ * ++ * 3. The name(s) of the authors of this software must not be used to ++ * endorse or promote products derived from this software without ++ * prior written permission. ++ * ++ * THE AUTHORS OF THIS SOFTWARE DISCLAIM ALL WARRANTIES WITH REGARD TO ++ * THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY ++ * AND FITNESS, IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY ++ * SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES ++ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN ++ * AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING ++ * OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. ++ * ++ */ ++ ++#include <string.h> ++#include <unistd.h> ++#include <sys/types.h> ++#include <sys/stat.h> ++#include <fcntl.h> ++ ++#include <openssl/conf.h> ++#include <openssl/engine.h> ++#include <openssl/hmac.h> ++#include <openssl/err.h> ++#include <openssl/x509v3.h> ++ ++#include "pppd.h" ++#include "eap.h" ++#include "eap-tls.h" ++#include "fsm.h" ++#include "lcp.h" ++#include "pathnames.h" ++ ++/* The openssl configuration file and engines can be loaded only once */ ++static CONF *ssl_config = NULL; ++static ENGINE *cert_engine = NULL; ++static ENGINE *pkey_engine = NULL; ++ ++#ifdef MPPE ++ ++#if OPENSSL_VERSION_NUMBER < 0x10100000L ++ ++/* ++ * https://wiki.openssl.org/index.php/1.1_API_Changes ++ * tries to provide some guidance but ultimately falls short. ++ */ ++ ++ ++static void HMAC_CTX_free(HMAC_CTX *ctx) ++{ ++ if (ctx != NULL) { ++ HMAC_CTX_cleanup(ctx); ++ OPENSSL_free(ctx); ++ } ++} ++ ++static HMAC_CTX *HMAC_CTX_new(void) ++{ ++ HMAC_CTX *ctx = OPENSSL_malloc(sizeof(*ctx)); ++ if (ctx != NULL) ++ HMAC_CTX_init(ctx); ++ return ctx; ++} ++ ++/* ++ * These were basically jacked directly from the OpenSSL tree ++ * without adjustments. ++ */ ++ ++static size_t SSL_get_client_random(const SSL *ssl, unsigned char *out, ++ size_t outlen) ++{ ++ if (outlen == 0) ++ return sizeof(ssl->s3->client_random); ++ if (outlen > sizeof(ssl->s3->client_random)) ++ outlen = sizeof(ssl->s3->client_random); ++ memcpy(out, ssl->s3->client_random, outlen); ++ return outlen; ++} ++ ++static size_t SSL_get_server_random(const SSL *ssl, unsigned char *out, ++ size_t outlen) ++{ ++ if (outlen == 0) ++ return sizeof(ssl->s3->server_random); ++ if (outlen > sizeof(ssl->s3->server_random)) ++ outlen = sizeof(ssl->s3->server_random); ++ memcpy(out, ssl->s3->server_random, outlen); ++ return outlen; ++} ++ ++static size_t SSL_SESSION_get_master_key(const SSL_SESSION *session, ++ unsigned char *out, size_t outlen) ++{ ++ if (outlen == 0) ++ return session->master_key_length; ++ if (outlen > session->master_key_length) ++ outlen = session->master_key_length; ++ memcpy(out, session->master_key, outlen); ++ return outlen; ++} ++ ++/* Avoid a deprecated warning in OpenSSL 1.1 whilst still allowing to build against 1.0.x */ ++#define TLS_method TLSv1_method ++ ++#endif /* OPENSSL_VERSION_NUMBER < 0x10100000L */ ++ ++/* ++ * TLS PRF from RFC 2246 ++ */ ++static void P_hash(const EVP_MD *evp_md, ++ const unsigned char *secret, unsigned int secret_len, ++ const unsigned char *seed, unsigned int seed_len, ++ unsigned char *out, unsigned int out_len) ++{ ++ HMAC_CTX *ctx_a, *ctx_out; ++ unsigned char a[HMAC_MAX_MD_CBLOCK]; ++ unsigned int size; ++ ++ ctx_a = HMAC_CTX_new(); ++ ctx_out = HMAC_CTX_new(); ++ HMAC_Init_ex(ctx_a, secret, secret_len, evp_md, NULL); ++ HMAC_Init_ex(ctx_out, secret, secret_len, evp_md, NULL); ++ ++ size = HMAC_size(ctx_out); ++ ++ /* Calculate A(1) */ ++ HMAC_Update(ctx_a, seed, seed_len); ++ HMAC_Final(ctx_a, a, NULL); ++ ++ while (1) { ++ /* Calculate next part of output */ ++ HMAC_Update(ctx_out, a, size); ++ HMAC_Update(ctx_out, seed, seed_len); ++ ++ /* Check if last part */ ++ if (out_len < size) { ++ HMAC_Final(ctx_out, a, NULL); ++ memcpy(out, a, out_len); ++ break; ++ } ++ ++ /* Place digest in output buffer */ ++ HMAC_Final(ctx_out, out, NULL); ++ HMAC_Init_ex(ctx_out, NULL, 0, NULL, NULL); ++ out += size; ++ out_len -= size; ++ ++ /* Calculate next A(i) */ ++ HMAC_Init_ex(ctx_a, NULL, 0, NULL, NULL); ++ HMAC_Update(ctx_a, a, size); ++ HMAC_Final(ctx_a, a, NULL); ++ } ++ ++ HMAC_CTX_free(ctx_a); ++ HMAC_CTX_free(ctx_out); ++ memset(a, 0, sizeof(a)); ++} ++ ++static void PRF(const unsigned char *secret, unsigned int secret_len, ++ const unsigned char *seed, unsigned int seed_len, ++ unsigned char *out, unsigned char *buf, unsigned int out_len) ++{ ++ unsigned int i; ++ unsigned int len = (secret_len + 1) / 2; ++ const unsigned char *s1 = secret; ++ const unsigned char *s2 = secret + (secret_len - len); ++ ++ P_hash(EVP_md5(), s1, len, seed, seed_len, out, out_len); ++ P_hash(EVP_sha1(), s2, len, seed, seed_len, buf, out_len); ++ ++ for (i=0; i < out_len; i++) { ++ out[i] ^= buf[i]; ++ } ++} ++ ++#define EAPTLS_MPPE_KEY_LEN 32 ++ ++/* ++ * Generate keys according to RFC 2716 and add to reply ++ */ ++void eaptls_gen_mppe_keys(struct eaptls_session *ets, const char *prf_label, ++ int client) ++{ ++ unsigned char out[4*EAPTLS_MPPE_KEY_LEN], buf[4*EAPTLS_MPPE_KEY_LEN]; ++ unsigned char seed[64 + 2*SSL3_RANDOM_SIZE]; ++ unsigned char *p = seed; ++ SSL *s = ets->ssl; ++ size_t prf_size; ++ unsigned char master_key[SSL_MAX_MASTER_KEY_LENGTH]; ++ size_t master_key_length; ++ ++ prf_size = strlen(prf_label); ++ ++ memcpy(p, prf_label, prf_size); ++ p += prf_size; ++ ++ prf_size += SSL_get_client_random(s, p, SSL3_RANDOM_SIZE); ++ p += SSL3_RANDOM_SIZE; ++ ++ prf_size += SSL_get_server_random(s, p, SSL3_RANDOM_SIZE); ++ ++ master_key_length = SSL_SESSION_get_master_key(SSL_get_session(s), master_key, ++ sizeof(master_key)); ++ PRF(master_key, master_key_length, seed, prf_size, out, buf, sizeof(out)); ++ ++ /* ++ * We now have the master send and receive keys. ++ * From these, generate the session send and receive keys. ++ * (see RFC3079 / draft-ietf-pppext-mppe-keys-03.txt for details) ++ */ ++ if (client) ++ { ++ p = out; ++ BCOPY( p, mppe_send_key, sizeof(mppe_send_key) ); ++ p += EAPTLS_MPPE_KEY_LEN; ++ BCOPY( p, mppe_recv_key, sizeof(mppe_recv_key) ); ++ } ++ else ++ { ++ p = out; ++ BCOPY( p, mppe_recv_key, sizeof(mppe_recv_key) ); ++ p += EAPTLS_MPPE_KEY_LEN; ++ BCOPY( p, mppe_send_key, sizeof(mppe_send_key) ); ++ } ++ ++ mppe_keys_set = 1; ++} ++ ++#endif ++ ++void log_ssl_errors( void ) ++{ ++ unsigned long ssl_err = ERR_get_error(); ++ ++ if (ssl_err != 0) ++ dbglog("EAP-TLS SSL error stack:"); ++ while (ssl_err != 0) { ++ dbglog( ERR_error_string( ssl_err, NULL ) ); ++ ssl_err = ERR_get_error(); ++ } ++} ++ ++ ++int password_callback (char *buf, int size, int rwflag, void *u) ++{ ++ if (buf) ++ { ++ strncpy (buf, passwd, size); ++ return strlen (buf); ++ } ++ return 0; ++} ++ ++ ++CONF *eaptls_ssl_load_config( void ) ++{ ++ CONF *config; ++ int ret_code; ++ long error_line = 33; ++ ++ config = NCONF_new( NULL ); ++ dbglog( "Loading OpenSSL config file" ); ++ ret_code = NCONF_load( config, _PATH_OPENSSLCONFFILE, &error_line ); ++ if (ret_code == 0) ++ { ++ warn( "EAP-TLS: Error in OpenSSL config file %s at line %d", _PATH_OPENSSLCONFFILE, error_line ); ++ NCONF_free( config ); ++ config = NULL; ++ ERR_clear_error(); ++ } ++ ++ dbglog( "Loading OpenSSL built-ins" ); ++ ENGINE_load_builtin_engines(); ++ OPENSSL_load_builtin_modules(); ++ ++ dbglog( "Loading OpenSSL configured modules" ); ++ if (CONF_modules_load( config, NULL, 0 ) <= 0 ) ++ { ++ warn( "EAP-TLS: Error loading OpenSSL modules" ); ++ log_ssl_errors(); ++ config = NULL; ++ } ++ ++ return config; ++} ++ ++ENGINE *eaptls_ssl_load_engine( char *engine_name ) ++{ ++ ENGINE *e = NULL; ++ ++ dbglog( "Enabling OpenSSL auto engines" ); ++ ENGINE_register_all_complete(); ++ ++ dbglog( "Loading OpenSSL '%s' engine support", engine_name ); ++ e = ENGINE_by_id( engine_name ); ++ if (!e) ++ { ++ dbglog( "EAP-TLS: Cannot load '%s' engine support, trying 'dynamic'", engine_name ); ++ e = ENGINE_by_id( "dynamic" ); ++ if (e) ++ { ++ if (!ENGINE_ctrl_cmd_string(e, "SO_PATH", engine_name, 0) ++ || !ENGINE_ctrl_cmd_string(e, "LOAD", NULL, 0)) ++ { ++ warn( "EAP-TLS: Error loading dynamic engine '%s'", engine_name ); ++ log_ssl_errors(); ++ ENGINE_free(e); ++ e = NULL; ++ } ++ } ++ else ++ { ++ warn( "EAP-TLS: Cannot load dynamic engine support" ); ++ } ++ } ++ ++ if (e) ++ { ++ dbglog( "Initialising engine" ); ++ if(!ENGINE_set_default(e, ENGINE_METHOD_ALL)) ++ { ++ warn( "EAP-TLS: Cannot use that engine" ); ++ log_ssl_errors(); ++ ENGINE_free(e); ++ e = NULL; ++ } ++ } ++ ++ return e; ++} ++ ++/* ++ * Initialize the SSL stacks and tests if certificates, key and crl ++ * for client or server use can be loaded. ++ */ ++SSL_CTX *eaptls_init_ssl(int init_server, char *cacertfile, ++ char *certfile, char *peer_certfile, char *privkeyfile) ++{ ++ char *cert_engine_name = NULL; ++ char *cert_identifier = NULL; ++ char *pkey_engine_name = NULL; ++ char *pkey_identifier = NULL; ++ SSL_CTX *ctx; ++ X509_STORE *certstore; ++ X509_LOOKUP *lookup; ++ X509 *tmp; ++ ++ /* ++ * Without these can't continue ++ */ ++ if (!cacertfile[0]) ++ { ++ error("EAP-TLS: CA certificate missing"); ++ return NULL; ++ } ++ ++ if (!certfile[0]) ++ { ++ error("EAP-TLS: User certificate missing"); ++ return NULL; ++ } ++ ++ if (!privkeyfile[0]) ++ { ++ error("EAP-TLS: User private key missing"); ++ return NULL; ++ } ++ ++ SSL_library_init(); ++ SSL_load_error_strings(); ++ ++ ctx = SSL_CTX_new(TLS_method()); ++ ++ if (!ctx) { ++ error("EAP-TLS: Cannot initialize SSL CTX context"); ++ goto fail; ++ } ++ ++ /* if the certificate filename is of the form engine:id. e.g. ++ pkcs11:12345 ++ then we try to load and use this engine. ++ If the certificate filename starts with a / or . then we ++ ALWAYS assume it is a file and not an engine/pkcs11 identifier ++ */ ++ if ( index( certfile, '/' ) == NULL && index( certfile, '.') == NULL ) ++ { ++ cert_identifier = index( certfile, ':' ); ++ ++ if (cert_identifier) ++ { ++ cert_engine_name = certfile; ++ *cert_identifier = '\0'; ++ cert_identifier++; ++ ++ dbglog( "Found certificate engine '%s'", cert_engine_name ); ++ dbglog( "Found certificate identifier '%s'", cert_identifier ); ++ } ++ } ++ ++ /* if the privatekey filename is of the form engine:id. e.g. ++ pkcs11:12345 ++ then we try to load and use this engine. ++ If the privatekey filename starts with a / or . then we ++ ALWAYS assume it is a file and not an engine/pkcs11 identifier ++ */ ++ if ( index( privkeyfile, '/' ) == NULL && index( privkeyfile, '.') == NULL ) ++ { ++ pkey_identifier = index( privkeyfile, ':' ); ++ ++ if (pkey_identifier) ++ { ++ pkey_engine_name = privkeyfile; ++ *pkey_identifier = '\0'; ++ pkey_identifier++; ++ ++ dbglog( "Found privatekey engine '%s'", pkey_engine_name ); ++ dbglog( "Found privatekey identifier '%s'", pkey_identifier ); ++ } ++ } ++ ++ if (cert_identifier && pkey_identifier) ++ { ++ if (strlen( cert_identifier ) == 0) ++ { ++ if (strlen( pkey_identifier ) == 0) ++ error( "EAP-TLS: both the certificate and privatekey identifiers are missing!" ); ++ else ++ { ++ dbglog( "Substituting privatekey identifier for certificate identifier" ); ++ cert_identifier = pkey_identifier; ++ } ++ } ++ else ++ { ++ if (strlen( pkey_identifier ) == 0) ++ { ++ dbglog( "Substituting certificate identifier for privatekey identifier" ); ++ pkey_identifier = cert_identifier; ++ } ++ } ++ ++ } ++ ++ /* load the openssl config file only once */ ++ if (!ssl_config) ++ { ++ if (cert_engine_name || pkey_engine_name) ++ ssl_config = eaptls_ssl_load_config(); ++ ++ if (ssl_config && cert_engine_name) ++ cert_engine = eaptls_ssl_load_engine( cert_engine_name ); ++ ++ if (ssl_config && pkey_engine_name) ++ { ++ /* don't load the same engine twice */ ++ if ( cert_engine && strcmp( cert_engine_name, pkey_engine_name) == 0 ) ++ pkey_engine = cert_engine; ++ else ++ pkey_engine = eaptls_ssl_load_engine( pkey_engine_name ); ++ } ++ } ++ ++ SSL_CTX_set_default_passwd_cb (ctx, password_callback); ++ ++ if (!SSL_CTX_load_verify_locations(ctx, cacertfile, NULL)) ++ { ++ error("EAP-TLS: Cannot load or verify CA file %s", cacertfile); ++ goto fail; ++ } ++ ++ if (init_server) ++ SSL_CTX_set_client_CA_list(ctx, SSL_load_client_CA_file(cacertfile)); ++ ++ if (cert_engine) ++ { ++ struct ++ { ++ const char *s_slot_cert_id; ++ X509 *cert; ++ } cert_info; ++ ++ cert_info.s_slot_cert_id = cert_identifier; ++ cert_info.cert = NULL; ++ ++ if (!ENGINE_ctrl_cmd( cert_engine, "LOAD_CERT_CTRL", 0, &cert_info, NULL, 0 ) ) ++ { ++ error( "EAP-TLS: Error loading certificate with id '%s' from engine", cert_identifier ); ++ goto fail; ++ } ++ ++ if (cert_info.cert) ++ { ++ dbglog( "Got the certificate, adding it to SSL context" ); ++ dbglog( "subject = %s", X509_NAME_oneline( X509_get_subject_name( cert_info.cert ), NULL, 0 ) ); ++ if (SSL_CTX_use_certificate(ctx, cert_info.cert) <= 0) ++ { ++ error("EAP-TLS: Cannot use PKCS11 certificate %s", cert_identifier); ++ goto fail; ++ } ++ } ++ else ++ { ++ warn("EAP-TLS: Cannot load PKCS11 key %s", cert_identifier); ++ log_ssl_errors(); ++ } ++ } ++ else ++ { ++ if (!SSL_CTX_use_certificate_file(ctx, certfile, SSL_FILETYPE_PEM)) ++ { ++ error( "EAP-TLS: Cannot use public certificate %s", certfile ); ++ goto fail; ++ } ++ } ++ ++ if (pkey_engine) ++ { ++ EVP_PKEY *pkey = NULL; ++ PW_CB_DATA cb_data; ++ ++ cb_data.password = passwd; ++ cb_data.prompt_info = pkey_identifier; ++ ++ dbglog( "Loading private key '%s' from engine", pkey_identifier ); ++ pkey = ENGINE_load_private_key(pkey_engine, pkey_identifier, NULL, &cb_data); ++ if (pkey) ++ { ++ dbglog( "Got the private key, adding it to SSL context" ); ++ if (SSL_CTX_use_PrivateKey(ctx, pkey) <= 0) ++ { ++ error("EAP-TLS: Cannot use PKCS11 key %s", pkey_identifier); ++ goto fail; ++ } ++ } ++ else ++ { ++ warn("EAP-TLS: Cannot load PKCS11 key %s", pkey_identifier); ++ log_ssl_errors(); ++ } ++ } ++ else ++ { ++ if (!SSL_CTX_use_PrivateKey_file(ctx, privkeyfile, SSL_FILETYPE_PEM)) ++ { ++ error("EAP-TLS: Cannot use private key %s", privkeyfile); ++ goto fail; ++ } ++ } ++ ++ if (SSL_CTX_check_private_key(ctx) != 1) { ++ error("EAP-TLS: Private key %s fails security check", privkeyfile); ++ goto fail; ++ } ++ ++ /* Explicitly set the NO_TICKETS flag to support Win7/Win8 clients */ ++ SSL_CTX_set_options(ctx, SSL_OP_NO_SSLv2 | SSL_OP_NO_SSLv3 ++#ifdef SSL_OP_NO_TICKET ++ | SSL_OP_NO_TICKET ++#endif ++); ++ SSL_CTX_set_verify_depth(ctx, 5); ++ SSL_CTX_set_verify(ctx, ++ SSL_VERIFY_PEER | ++ SSL_VERIFY_FAIL_IF_NO_PEER_CERT, ++ &ssl_verify_callback); ++ ++ if (crl_dir) { ++ if (!(certstore = SSL_CTX_get_cert_store(ctx))) { ++ error("EAP-TLS: Failed to get certificate store"); ++ goto fail; ++ } ++ ++ if (!(lookup = ++ X509_STORE_add_lookup(certstore, X509_LOOKUP_hash_dir()))) { ++ error("EAP-TLS: Store lookup for CRL failed"); ++ ++ goto fail; ++ } ++ ++ X509_LOOKUP_add_dir(lookup, crl_dir, X509_FILETYPE_PEM); ++ X509_STORE_set_flags(certstore, X509_V_FLAG_CRL_CHECK); ++ } ++ ++ if (crl_file) { ++ FILE *fp = NULL; ++ X509_CRL *crl = NULL; ++ ++ fp = fopen(crl_file, "r"); ++ if (!fp) { ++ error("EAP-TLS: Cannot open CRL file '%s'", crl_file); ++ goto fail; ++ } ++ ++ crl = PEM_read_X509_CRL(fp, NULL, NULL, NULL); ++ if (!crl) { ++ error("EAP-TLS: Cannot read CRL file '%s'", crl_file); ++ goto fail; ++ } ++ ++ if (!(certstore = SSL_CTX_get_cert_store(ctx))) { ++ error("EAP-TLS: Failed to get certificate store"); ++ goto fail; ++ } ++ if (!X509_STORE_add_crl(certstore, crl)) { ++ error("EAP-TLS: Cannot add CRL to certificate store"); ++ goto fail; ++ } ++ X509_STORE_set_flags(certstore, X509_V_FLAG_CRL_CHECK); ++ ++ } ++ ++ /* ++ * If a peer certificate file was specified, it must be valid, else fail ++ */ ++ if (peer_certfile[0]) { ++ if (!(tmp = get_X509_from_file(peer_certfile))) { ++ error("EAP-TLS: Error loading client certificate from file %s", ++ peer_certfile); ++ goto fail; ++ } ++ X509_free(tmp); ++ } ++ ++ return ctx; ++ ++fail: ++ log_ssl_errors(); ++ SSL_CTX_free(ctx); ++ return NULL; ++} ++ ++/* ++ * Determine the maximum packet size by looking at the LCP handshake ++ */ ++ ++int eaptls_get_mtu(int unit) ++{ ++ int mtu, mru; ++ ++ lcp_options *wo = &lcp_wantoptions[unit]; ++ lcp_options *go = &lcp_gotoptions[unit]; ++ lcp_options *ho = &lcp_hisoptions[unit]; ++ lcp_options *ao = &lcp_allowoptions[unit]; ++ ++ mtu = ho->neg_mru? ho->mru: PPP_MRU; ++ mru = go->neg_mru? MAX(wo->mru, go->mru): PPP_MRU; ++ mtu = MIN(MIN(mtu, mru), ao->mru)- PPP_HDRLEN - 10; ++ ++ dbglog("MTU = %d", mtu); ++ return mtu; ++} ++ ++ ++/* ++ * Init the ssl handshake (server mode) ++ */ ++int eaptls_init_ssl_server(eap_state * esp) ++{ ++ struct eaptls_session *ets; ++ char servcertfile[MAXWORDLEN]; ++ char clicertfile[MAXWORDLEN]; ++ char cacertfile[MAXWORDLEN]; ++ char pkfile[MAXWORDLEN]; ++ /* ++ * Allocate new eaptls session ++ */ ++ esp->es_server.ea_session = malloc(sizeof(struct eaptls_session)); ++ if (!esp->es_server.ea_session) ++ fatal("Allocation error"); ++ ets = esp->es_server.ea_session; ++ ++ if (!esp->es_server.ea_peer) { ++ error("EAP-TLS: Error: client name not set (BUG)"); ++ return 0; ++ } ++ ++ strncpy(ets->peer, esp->es_server.ea_peer, MAXWORDLEN); ++ ++ dbglog( "getting eaptls secret" ); ++ if (!get_eaptls_secret(esp->es_unit, esp->es_server.ea_peer, ++ esp->es_server.ea_name, clicertfile, ++ servcertfile, cacertfile, pkfile, 1)) { ++ error( "EAP-TLS: Cannot get secret/password for client \"%s\", server \"%s\"", ++ esp->es_server.ea_peer, esp->es_server.ea_name ); ++ return 0; ++ } ++ ++ ets->mtu = eaptls_get_mtu(esp->es_unit); ++ ++ ets->ctx = eaptls_init_ssl(1, cacertfile, servcertfile, clicertfile, pkfile); ++ if (!ets->ctx) ++ goto fail; ++ ++ if (!(ets->ssl = SSL_new(ets->ctx))) ++ goto fail; ++ ++ /* ++ * Set auto-retry to avoid timeouts on BIO_read ++ */ ++ SSL_set_mode(ets->ssl, SSL_MODE_AUTO_RETRY); ++ ++ /* ++ * Initialize the BIOs we use to read/write to ssl engine ++ */ ++ ets->into_ssl = BIO_new(BIO_s_mem()); ++ ets->from_ssl = BIO_new(BIO_s_mem()); ++ SSL_set_bio(ets->ssl, ets->into_ssl, ets->from_ssl); ++ ++ SSL_set_msg_callback(ets->ssl, ssl_msg_callback); ++ SSL_set_msg_callback_arg(ets->ssl, ets); ++ ++ /* ++ * Attach the session struct to the connection, so we can later ++ * retrieve it when doing certificate verification ++ */ ++ SSL_set_ex_data(ets->ssl, 0, ets); ++ ++ SSL_set_accept_state(ets->ssl); ++ ++ ets->data = NULL; ++ ets->datalen = 0; ++ ets->alert_sent = 0; ++ ets->alert_recv = 0; ++ ++ /* ++ * If we specified the client certificate file, store it in ets->peercertfile, ++ * so we can check it later in ssl_verify_callback() ++ */ ++ if (clicertfile[0]) ++ strncpy(&ets->peercertfile[0], clicertfile, MAXWORDLEN); ++ else ++ ets->peercertfile[0] = 0; ++ ++ return 1; ++ ++fail: ++ SSL_CTX_free(ets->ctx); ++ return 0; ++} ++ ++/* ++ * Init the ssl handshake (client mode) ++ */ ++int eaptls_init_ssl_client(eap_state * esp) ++{ ++ struct eaptls_session *ets; ++ char servcertfile[MAXWORDLEN]; ++ char clicertfile[MAXWORDLEN]; ++ char cacertfile[MAXWORDLEN]; ++ char pkfile[MAXWORDLEN]; ++ ++ /* ++ * Allocate new eaptls session ++ */ ++ esp->es_client.ea_session = malloc(sizeof(struct eaptls_session)); ++ if (!esp->es_client.ea_session) ++ fatal("Allocation error"); ++ ets = esp->es_client.ea_session; ++ ++ /* ++ * If available, copy server name in ets; it will be used in cert ++ * verify ++ */ ++ if (esp->es_client.ea_peer) ++ strncpy(ets->peer, esp->es_client.ea_peer, MAXWORDLEN); ++ else ++ ets->peer[0] = 0; ++ ++ ets->mtu = eaptls_get_mtu(esp->es_unit); ++ ++ dbglog( "calling get_eaptls_secret" ); ++ if (!get_eaptls_secret(esp->es_unit, esp->es_client.ea_name, ++ ets->peer, clicertfile, ++ servcertfile, cacertfile, pkfile, 0)) { ++ error( "EAP-TLS: Cannot get secret/password for client \"%s\", server \"%s\"", ++ esp->es_client.ea_name, ets->peer ); ++ return 0; ++ } ++ ++ dbglog( "calling eaptls_init_ssl" ); ++ ets->ctx = eaptls_init_ssl(0, cacertfile, clicertfile, servcertfile, pkfile); ++ if (!ets->ctx) ++ goto fail; ++ ++ ets->ssl = SSL_new(ets->ctx); ++ ++ if (!ets->ssl) ++ goto fail; ++ ++ /* ++ * Initialize the BIOs we use to read/write to ssl engine ++ */ ++ dbglog( "Initializing SSL BIOs" ); ++ ets->into_ssl = BIO_new(BIO_s_mem()); ++ ets->from_ssl = BIO_new(BIO_s_mem()); ++ SSL_set_bio(ets->ssl, ets->into_ssl, ets->from_ssl); ++ ++ SSL_set_msg_callback(ets->ssl, ssl_msg_callback); ++ SSL_set_msg_callback_arg(ets->ssl, ets); ++ ++ /* ++ * Attach the session struct to the connection, so we can later ++ * retrieve it when doing certificate verification ++ */ ++ SSL_set_ex_data(ets->ssl, 0, ets); ++ ++ SSL_set_connect_state(ets->ssl); ++ ++ ets->data = NULL; ++ ets->datalen = 0; ++ ets->alert_sent = 0; ++ ets->alert_recv = 0; ++ ++ /* ++ * If we specified the server certificate file, store it in ++ * ets->peercertfile, so we can check it later in ++ * ssl_verify_callback() ++ */ ++ if (servcertfile[0]) ++ strncpy(ets->peercertfile, servcertfile, MAXWORDLEN); ++ else ++ ets->peercertfile[0] = 0; ++ ++ return 1; ++ ++fail: ++ dbglog( "eaptls_init_ssl_client: fail" ); ++ SSL_CTX_free(ets->ctx); ++ return 0; ++ ++} ++ ++void eaptls_free_session(struct eaptls_session *ets) ++{ ++ if (ets->ssl) ++ SSL_free(ets->ssl); ++ ++ if (ets->ctx) ++ SSL_CTX_free(ets->ctx); ++ ++ free(ets); ++} ++ ++/* ++ * Handle a received packet, reassembling fragmented messages and ++ * passing them to the ssl engine ++ */ ++int eaptls_receive(struct eaptls_session *ets, u_char * inp, int len) ++{ ++ u_char flags; ++ u_int tlslen = 0; ++ u_char dummy[65536]; ++ ++ if (len < 1) { ++ warn("EAP-TLS: received no or invalid data"); ++ return 1; ++ } ++ ++ GETCHAR(flags, inp); ++ len--; ++ ++ if (flags & EAP_TLS_FLAGS_LI && len >= 4) { ++ /* ++ * LenghtIncluded flag set -> this is the first packet of a message ++ */ ++ ++ /* ++ * the first 4 octets are the length of the EAP-TLS message ++ */ ++ GETLONG(tlslen, inp); ++ len -= 4; ++ ++ if (!ets->data) { ++ ++ if (tlslen > EAP_TLS_MAX_LEN) { ++ error("EAP-TLS: TLS message length > %d, truncated", EAP_TLS_MAX_LEN); ++ tlslen = EAP_TLS_MAX_LEN; ++ } ++ ++ /* ++ * Allocate memory for the whole message ++ */ ++ ets->data = malloc(tlslen); ++ if (!ets->data) ++ fatal("EAP-TLS: allocation error\n"); ++ ++ ets->datalen = 0; ++ ets->tlslen = tlslen; ++ } ++ else ++ warn("EAP-TLS: non-first LI packet? that's odd..."); ++ } ++ else if (!ets->data) { ++ /* ++ * A non fragmented message without LI flag ++ */ ++ ++ ets->data = malloc(len); ++ if (!ets->data) ++ fatal("EAP-TLS: allocation error\n"); ++ ++ ets->datalen = 0; ++ ets->tlslen = len; ++ } ++ ++ if (flags & EAP_TLS_FLAGS_MF) ++ ets->frag = 1; ++ else ++ ets->frag = 0; ++ ++ if (len < 0) { ++ warn("EAP-TLS: received malformed data"); ++ return 1; ++ } ++ ++ if (len + ets->datalen > ets->tlslen) { ++ warn("EAP-TLS: received data > TLS message length"); ++ return 1; ++ } ++ ++ BCOPY(inp, ets->data + ets->datalen, len); ++ ets->datalen += len; ++ ++ if (!ets->frag) { ++ ++ /* ++ * If we have the whole message, pass it to ssl ++ */ ++ ++ if (ets->datalen != ets->tlslen) { ++ warn("EAP-TLS: received data != TLS message length"); ++ return 1; ++ } ++ ++ if (BIO_write(ets->into_ssl, ets->data, ets->datalen) == -1) ++ log_ssl_errors(); ++ ++ SSL_read(ets->ssl, dummy, 65536); ++ ++ free(ets->data); ++ ets->data = NULL; ++ ets->datalen = 0; ++ } ++ ++ return 0; ++} ++ ++/* ++ * Return an eap-tls packet in outp. ++ * A TLS message read from the ssl engine is buffered in ets->data. ++ * At each call we control if there is buffered data and send a ++ * packet of mtu bytes. ++ */ ++int eaptls_send(struct eaptls_session *ets, u_char ** outp) ++{ ++ bool first = 0; ++ int size; ++ u_char fromtls[65536]; ++ int res; ++ u_char *start; ++ ++ start = *outp; ++ ++ if (!ets->data) { ++ ++ if(!ets->alert_sent) ++ SSL_read(ets->ssl, fromtls, 65536); ++ ++ /* ++ * Read from ssl ++ */ ++ if ((res = BIO_read(ets->from_ssl, fromtls, 65536)) == -1) ++ fatal("No data from BIO_read"); ++ ++ ets->datalen = res; ++ ++ ets->data = malloc(ets->datalen); ++ BCOPY(fromtls, ets->data, ets->datalen); ++ ++ ets->offset = 0; ++ first = 1; ++ ++ } ++ ++ size = ets->datalen - ets->offset; ++ ++ if (size > ets->mtu) { ++ size = ets->mtu; ++ ets->frag = 1; ++ } else ++ ets->frag = 0; ++ ++ PUTCHAR(EAPT_TLS, *outp); ++ ++ /* ++ * Set right flags and length if necessary ++ */ ++ if (ets->frag && first) { ++ PUTCHAR(EAP_TLS_FLAGS_LI | EAP_TLS_FLAGS_MF, *outp); ++ PUTLONG(ets->datalen, *outp); ++ } else if (ets->frag) { ++ PUTCHAR(EAP_TLS_FLAGS_MF, *outp); ++ } else ++ PUTCHAR(0, *outp); ++ ++ /* ++ * Copy the data in outp ++ */ ++ BCOPY(ets->data + ets->offset, *outp, size); ++ INCPTR(size, *outp); ++ ++ /* ++ * Copy the packet in retransmission buffer ++ */ ++ BCOPY(start, &ets->rtx[0], *outp - start); ++ ets->rtx_len = *outp - start; ++ ++ ets->offset += size; ++ ++ if (ets->offset >= ets->datalen) { ++ ++ /* ++ * The whole message has been sent ++ */ ++ ++ free(ets->data); ++ ets->data = NULL; ++ ets->datalen = 0; ++ ets->offset = 0; ++ } ++ ++ return 0; ++} ++ ++/* ++ * Get the sent packet from the retransmission buffer ++ */ ++void eaptls_retransmit(struct eaptls_session *ets, u_char ** outp) ++{ ++ BCOPY(ets->rtx, *outp, ets->rtx_len); ++ INCPTR(ets->rtx_len, *outp); ++} ++ ++/* ++ * Verify a certificate. ++ * Most of the work (signatures and issuer attributes checking) ++ * is done by ssl; we check the CN in the peer certificate ++ * against the peer name. ++ */ ++int ssl_verify_callback(int preverify_ok, X509_STORE_CTX * ctx) ++{ ++ char subject[256]; ++ char cn_str[256]; ++ X509 *peer_cert; ++ int err, depth; ++ int ok = preverify_ok; ++ SSL *ssl; ++ struct eaptls_session *ets; ++ ++ peer_cert = X509_STORE_CTX_get_current_cert(ctx); ++ err = X509_STORE_CTX_get_error(ctx); ++ depth = X509_STORE_CTX_get_error_depth(ctx); ++ ++ dbglog("certificate verify depth: %d", depth); ++ ++ if (auth_required && !ok) { ++ X509_NAME_oneline(X509_get_subject_name(peer_cert), ++ subject, 256); ++ ++ X509_NAME_get_text_by_NID(X509_get_subject_name(peer_cert), ++ NID_commonName, cn_str, 256); ++ ++ dbglog("Certificate verification error:\n depth: %d CN: %s" ++ "\n err: %d (%s)\n", depth, cn_str, err, ++ X509_verify_cert_error_string(err)); ++ ++ return 0; ++ } ++ ++ ssl = X509_STORE_CTX_get_ex_data(ctx, ++ SSL_get_ex_data_X509_STORE_CTX_idx()); ++ ++ ets = (struct eaptls_session *)SSL_get_ex_data(ssl, 0); ++ ++ if (ets == NULL) { ++ error("Error: SSL_get_ex_data returned NULL"); ++ return 0; ++ } ++ ++ log_ssl_errors(); ++ ++ if (!depth) { /* This is the peer certificate */ ++ ++ X509_NAME_oneline(X509_get_subject_name(peer_cert), ++ subject, 256); ++ ++ X509_NAME_get_text_by_NID(X509_get_subject_name(peer_cert), ++ NID_commonName, cn_str, 256); ++ ++ /* ++ * If acting as client and the name of the server wasn't specified ++ * explicitely, we can't verify the server authenticity ++ */ ++ if (!ets->peer[0]) { ++ warn("Peer name not specified: no check"); ++ return 1; ++ } ++ ++ /* ++ * Check the CN ++ */ ++ if (strcmp(cn_str, ets->peer)) { ++ error ++ ("Certificate verification error: CN (%s) != peer_name (%s)", ++ cn_str, ets->peer); ++ return 0; ++ } ++ ++ warn("Certificate CN: %s , peer name %s", cn_str, ets->peer); ++ ++ /* ++ * If a peer certificate file was specified, here we check it ++ */ ++ if (ets->peercertfile[0]) { ++ if (ssl_cmp_certs(&ets->peercertfile[0], peer_cert) ++ != 0) { ++ error ++ ("Peer certificate doesn't match stored certificate"); ++ return 0; ++ } ++ } ++ } ++ ++ return 1; ++} ++ ++/* ++ * Compare a certificate with the one stored in a file ++ */ ++int ssl_cmp_certs(char *filename, X509 * a) ++{ ++ X509 *b; ++ int ret; ++ ++ if (!(b = get_X509_from_file(filename))) ++ return 1; ++ ++ ret = X509_cmp(a, b); ++ X509_free(b); ++ ++ return ret; ++ ++} ++ ++X509 *get_X509_from_file(char *filename) ++{ ++ FILE *fp; ++ X509 *ret; ++ ++ if (!(fp = fopen(filename, "r"))) ++ return NULL; ++ ++ ret = PEM_read_X509(fp, NULL, NULL, NULL); ++ ++ fclose(fp); ++ ++ return ret; ++} ++ ++/* ++ * Every sent & received message this callback function is invoked, ++ * so we know when alert messages have arrived or are sent and ++ * we can print debug information about TLS handshake. ++ */ ++void ++ssl_msg_callback(int write_p, int version, int content_type, ++ const void *buf, size_t len, SSL * ssl, void *arg) ++{ ++ char string[256]; ++ struct eaptls_session *ets = (struct eaptls_session *)arg; ++ unsigned char code; ++ const unsigned char*msg = buf; ++ int hvers = msg[1] << 8 | msg[2]; ++ ++ if(write_p) ++ strcpy(string, " -> "); ++ else ++ strcpy(string, " <- "); ++ ++ switch(content_type) { ++ ++ case SSL3_RT_HEADER: ++ strcat(string, "SSL/TLS Header: "); ++ switch(hvers) { ++ case SSL3_VERSION: ++ strcat(string, "SSL 3.0"); ++ break; ++ case TLS1_VERSION: ++ strcat(string, "TLS 1.0"); ++ break; ++ case TLS1_1_VERSION: ++ strcat(string, "TLS 1.1"); ++ break; ++ case TLS1_2_VERSION: ++ strcat(string, "TLS 1.2"); ++ break; ++ case DTLS1_VERSION: ++ strcat(string, "DTLS 1.0"); ++ break; ++ case DTLS1_2_VERSION: ++ strcat(string, "DTLS 1.2"); ++ break; ++ default: ++ strcat(string, "Unknown version"); ++ } ++ break; ++ ++ case SSL3_RT_ALERT: ++ strcat(string, "Alert: "); ++ code = msg[1]; ++ ++ if (write_p) { ++ ets->alert_sent = 1; ++ ets->alert_sent_desc = code; ++ } else { ++ ets->alert_recv = 1; ++ ets->alert_recv_desc = code; ++ } ++ ++ strcat(string, SSL_alert_desc_string_long(code)); ++ break; ++ ++ case SSL3_RT_CHANGE_CIPHER_SPEC: ++ strcat(string, "ChangeCipherSpec"); ++ break; ++ ++ case SSL3_RT_HANDSHAKE: ++ ++ strcat(string, "Handshake: "); ++ code = msg[0]; ++ ++ switch(code) { ++ case SSL3_MT_HELLO_REQUEST: ++ strcat(string,"Hello Request"); ++ break; ++ case SSL3_MT_CLIENT_HELLO: ++ strcat(string,"Client Hello"); ++ break; ++ case SSL3_MT_SERVER_HELLO: ++ strcat(string,"Server Hello"); ++ break; ++#ifdef SSL3_MT_NEWSESSION_TICKET ++ case SSL3_MT_NEWSESSION_TICKET: ++ strcat(string,"New Session Ticket"); ++ break; ++#endif ++ case SSL3_MT_CERTIFICATE: ++ strcat(string,"Certificate"); ++ break; ++ case SSL3_MT_SERVER_KEY_EXCHANGE: ++ strcat(string,"Server Key Exchange"); ++ break; ++ case SSL3_MT_CERTIFICATE_REQUEST: ++ strcat(string,"Certificate Request"); ++ break; ++ case SSL3_MT_SERVER_DONE: ++ strcat(string,"Server Hello Done"); ++ break; ++ case SSL3_MT_CERTIFICATE_VERIFY: ++ strcat(string,"Certificate Verify"); ++ break; ++ case SSL3_MT_CLIENT_KEY_EXCHANGE: ++ strcat(string,"Client Key Exchange"); ++ break; ++ case SSL3_MT_FINISHED: ++ strcat(string,"Finished"); ++ break; ++ ++ default: ++ sprintf( string, "Handshake: Unknown SSL3 code received: %d", code ); ++ } ++ break; ++ ++ default: ++ sprintf( string, "SSL message contains unknown content type: %d", content_type ); ++ ++ } ++ ++ /* Alert messages must always be displayed */ ++ if(content_type == SSL3_RT_ALERT) ++ error("%s", string); ++ else ++ dbglog("%s", string); ++} ++ +diff -Naur ppp-2.4.7/pppd/eap-tls.h ppp-2.4.7-eaptls-mppe-1.101b/pppd/eap-tls.h +--- ppp-2.4.7/pppd/eap-tls.h 1970-01-01 01:00:00.000000000 +0100 ++++ ppp-2.4.7-eaptls-mppe-1.101b/pppd/eap-tls.h 2018-06-02 01:42:04.023165433 +0200 +@@ -0,0 +1,107 @@ ++/* ++ * eap-tls.h ++ * ++ * Copyright (c) Beniamino Galvani 2005 All rights reserved. ++ * ++ * Redistribution and use in source and binary forms, with or without ++ * modification, are permitted provided that the following conditions ++ * are met: ++ * ++ * 1. Redistributions of source code must retain the above copyright ++ * notice, this list of conditions and the following disclaimer. ++ * ++ * 2. Redistributions in binary form must reproduce the above copyright ++ * notice, this list of conditions and the following disclaimer in ++ * the documentation and/or other materials provided with the ++ * distribution. ++ * ++ * 3. The name(s) of the authors of this software must not be used to ++ * endorse or promote products derived from this software without ++ * prior written permission. ++ * ++ * THE AUTHORS OF THIS SOFTWARE DISCLAIM ALL WARRANTIES WITH REGARD TO ++ * THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY ++ * AND FITNESS, IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY ++ * SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES ++ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN ++ * AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING ++ * OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. ++ * ++ */ ++ ++#ifndef __EAP_TLS_H__ ++#define __EAP_TLS_H__ ++ ++#include "eap.h" ++ ++#include <openssl/ssl.h> ++#include <openssl/bio.h> ++#include <openssl/md5.h> ++ ++#define EAP_TLS_FLAGS_LI 128 /* length included flag */ ++#define EAP_TLS_FLAGS_MF 64 /* more fragments flag */ ++#define EAP_TLS_FLAGS_START 32 /* start flag */ ++ ++#define EAP_TLS_MAX_LEN 65536 /* max eap tls packet size */ ++ ++struct eaptls_session ++{ ++ u_char *data; /* buffered data */ ++ int datalen; /* buffered data len */ ++ int offset; /* from where to send */ ++ int tlslen; /* total length of tls data */ ++ bool frag; /* packet is fragmented */ ++ SSL_CTX *ctx; ++ SSL *ssl; /* ssl connection */ ++ BIO *from_ssl; ++ BIO *into_ssl; ++ char peer[MAXWORDLEN]; /* peer name */ ++ char peercertfile[MAXWORDLEN]; ++ bool alert_sent; ++ u_char alert_sent_desc; ++ bool alert_recv; ++ u_char alert_recv_desc; ++ char rtx[65536]; /* retransmission buffer */ ++ int rtx_len; ++ int mtu; /* unit mtu */ ++}; ++ ++typedef struct pw_cb_data ++{ ++ const void *password; ++ const char *prompt_info; ++} PW_CB_DATA; ++ ++ ++int ssl_verify_callback(int, X509_STORE_CTX *); ++void ssl_msg_callback(int write_p, int version, int ct, const void *buf, ++ size_t len, SSL * ssl, void *arg); ++ ++X509 *get_X509_from_file(char *filename); ++int ssl_cmp_certs(char *filename, X509 * a); ++ ++SSL_CTX *eaptls_init_ssl(int init_server, char *cacertfile, ++ char *certfile, char *peer_certfile, char *privkeyfile); ++int eaptls_init_ssl_server(eap_state * esp); ++int eaptls_init_ssl_client(eap_state * esp); ++void eaptls_free_session(struct eaptls_session *ets); ++ ++int eaptls_receive(struct eaptls_session *ets, u_char * inp, int len); ++int eaptls_send(struct eaptls_session *ets, u_char ** outp); ++void eaptls_retransmit(struct eaptls_session *ets, u_char ** outp); ++ ++int get_eaptls_secret(int unit, char *client, char *server, ++ char *clicertfile, char *servcertfile, char *cacertfile, ++ char *pkfile, int am_server); ++ ++#ifdef MPPE ++#include "mppe.h" /* MPPE_MAX_KEY_LEN */ ++extern u_char mppe_send_key[MPPE_MAX_KEY_LEN]; ++extern u_char mppe_recv_key[MPPE_MAX_KEY_LEN]; ++extern int mppe_keys_set; ++ ++void eaptls_gen_mppe_keys(struct eaptls_session *ets, const char *prf_label, int client); ++ ++#endif ++ ++#endif +diff -Naur ppp-2.4.7/pppd/eap.c ppp-2.4.7-eaptls-mppe-1.101b/pppd/eap.c +--- ppp-2.4.7/pppd/eap.c 2014-08-09 14:31:39.000000000 +0200 ++++ ppp-2.4.7-eaptls-mppe-1.101b/pppd/eap.c 2018-06-02 01:42:04.023165433 +0200 +@@ -43,6 +43,11 @@ + * Based on draft-ietf-pppext-eap-srp-03.txt. + */ + ++/* ++ * Modification by Beniamino Galvani, Mar 2005 ++ * Implemented EAP-TLS authentication ++ */ ++ + #define RCSID "$Id: eap.c,v 1.4 2004/11/09 22:39:25 paulus Exp $" + + /* +@@ -62,8 +67,12 @@ + + #include "pppd.h" + #include "pathnames.h" +-#include "md5.h" + #include "eap.h" ++#ifdef USE_EAPTLS ++#include "eap-tls.h" ++#else ++#include "md5.h" ++#endif /* USE_EAPTLS */ + + #ifdef USE_SRP + #include <t_pwd.h> +@@ -209,6 +218,9 @@ + esp->es_server.ea_id = (u_char)(drand48() * 0x100); + esp->es_client.ea_timeout = EAP_DEFREQTIME; + esp->es_client.ea_maxrequests = EAP_DEFALLOWREQ; ++#ifdef USE_EAPTLS ++ esp->es_client.ea_using_eaptls = 0; ++#endif /* USE_EAPTLS */ + } + + /* +@@ -436,8 +448,16 @@ + u_char vals[2]; + struct b64state bs; + #endif /* USE_SRP */ ++#ifdef USE_EAPTLS ++ struct eaptls_session *ets; ++ int secret_len; ++ char secret[MAXWORDLEN]; ++#endif /* USE_EAPTLS */ + + esp->es_server.ea_timeout = esp->es_savedtime; ++#ifdef USE_EAPTLS ++ esp->es_server.ea_prev_state = esp->es_server.ea_state; ++#endif /* USE_EAPTLS */ + switch (esp->es_server.ea_state) { + case eapBadAuth: + return; +@@ -562,9 +582,79 @@ + break; + } + #endif /* USE_SRP */ ++#ifdef USE_EAPTLS ++ if (!get_secret(esp->es_unit, esp->es_server.ea_peer, ++ esp->es_server.ea_name, secret, &secret_len, 1)) { ++ ++ esp->es_server.ea_state = eapTlsStart; ++ break; ++ } ++#endif /* USE_EAPTLS */ ++ + esp->es_server.ea_state = eapMD5Chall; + break; + ++#ifdef USE_EAPTLS ++ case eapTlsStart: ++ /* Initialize ssl session */ ++ if(!eaptls_init_ssl_server(esp)) { ++ esp->es_server.ea_state = eapBadAuth; ++ break; ++ } ++ ++ esp->es_server.ea_state = eapTlsRecv; ++ break; ++ ++ case eapTlsRecv: ++ ets = (struct eaptls_session *) esp->es_server.ea_session; ++ ++ if(ets->alert_sent) { ++ esp->es_server.ea_state = eapTlsSendAlert; ++ break; ++ } ++ ++ if (status) { ++ esp->es_server.ea_state = eapBadAuth; ++ break; ++ } ++ ets = (struct eaptls_session *) esp->es_server.ea_session; ++ ++ if(ets->frag) ++ esp->es_server.ea_state = eapTlsSendAck; ++ else ++ esp->es_server.ea_state = eapTlsSend; ++ break; ++ ++ case eapTlsSend: ++ ets = (struct eaptls_session *) esp->es_server.ea_session; ++ ++ if(ets->frag) ++ esp->es_server.ea_state = eapTlsRecvAck; ++ else ++ if(SSL_is_init_finished(ets->ssl)) ++ esp->es_server.ea_state = eapTlsRecvClient; ++ else ++ esp->es_server.ea_state = eapTlsRecv; ++ break; ++ ++ case eapTlsSendAck: ++ esp->es_server.ea_state = eapTlsRecv; ++ break; ++ ++ case eapTlsRecvAck: ++ if (status) { ++ esp->es_server.ea_state = eapBadAuth; ++ break; ++ } ++ ++ esp->es_server.ea_state = eapTlsSend; ++ break; ++ ++ case eapTlsSendAlert: ++ esp->es_server.ea_state = eapTlsRecvAlertAck; ++ break; ++#endif /* USE_EAPTLS */ ++ + case eapSRP1: + #ifdef USE_SRP + ts = (struct t_server *)esp->es_server.ea_session; +@@ -718,6 +808,30 @@ + INCPTR(esp->es_server.ea_namelen, outp); + break; + ++#ifdef USE_EAPTLS ++ case eapTlsStart: ++ PUTCHAR(EAPT_TLS, outp); ++ PUTCHAR(EAP_TLS_FLAGS_START, outp); ++ eap_figure_next_state(esp, 0); ++ break; ++ ++ case eapTlsSend: ++ eaptls_send(esp->es_server.ea_session, &outp); ++ eap_figure_next_state(esp, 0); ++ break; ++ ++ case eapTlsSendAck: ++ PUTCHAR(EAPT_TLS, outp); ++ PUTCHAR(0, outp); ++ eap_figure_next_state(esp, 0); ++ break; ++ ++ case eapTlsSendAlert: ++ eaptls_send(esp->es_server.ea_session, &outp); ++ eap_figure_next_state(esp, 0); ++ break; ++#endif /* USE_EAPTLS */ ++ + #ifdef USE_SRP + case eapSRP1: + PUTCHAR(EAPT_SRP, outp); +@@ -904,11 +1018,57 @@ + eap_server_timeout(arg) + void *arg; + { ++#ifdef USE_EAPTLS ++ u_char *outp; ++ u_char *lenloc; ++ int outlen; ++#endif /* USE_EAPTLS */ ++ + eap_state *esp = (eap_state *) arg; + + if (!eap_server_active(esp)) + return; + ++#ifdef USE_EAPTLS ++ switch(esp->es_server.ea_prev_state) { ++ ++ /* ++ * In eap-tls the state changes after a request, so we return to ++ * previous state ... ++ */ ++ case(eapTlsStart): ++ case(eapTlsSendAck): ++ esp->es_server.ea_state = esp->es_server.ea_prev_state; ++ break; ++ ++ /* ++ * ... or resend the stored data ++ */ ++ case(eapTlsSend): ++ case(eapTlsSendAlert): ++ outp = outpacket_buf; ++ MAKEHEADER(outp, PPP_EAP); ++ PUTCHAR(EAP_REQUEST, outp); ++ PUTCHAR(esp->es_server.ea_id, outp); ++ lenloc = outp; ++ INCPTR(2, outp); ++ ++ eaptls_retransmit(esp->es_server.ea_session, &outp); ++ ++ outlen = (outp - outpacket_buf) - PPP_HDRLEN; ++ PUTSHORT(outlen, lenloc); ++ output(esp->es_unit, outpacket_buf, outlen + PPP_HDRLEN); ++ esp->es_server.ea_requests++; ++ ++ if (esp->es_server.ea_timeout > 0) ++ TIMEOUT(eap_server_timeout, esp, esp->es_server.ea_timeout); ++ ++ return; ++ default: ++ break; ++ } ++#endif /* USE_EAPTLS */ ++ + /* EAP ID number must not change on timeout. */ + eap_send_request(esp); + } +@@ -1166,6 +1326,81 @@ + } + #endif /* USE_SRP */ + ++#ifdef USE_EAPTLS ++/* ++ * Send an EAP-TLS response message with tls data ++ */ ++static void ++eap_tls_response(esp, id) ++eap_state *esp; ++u_char id; ++{ ++ u_char *outp; ++ int outlen; ++ u_char *lenloc; ++ ++ outp = outpacket_buf; ++ ++ MAKEHEADER(outp, PPP_EAP); ++ ++ PUTCHAR(EAP_RESPONSE, outp); ++ PUTCHAR(id, outp); ++ ++ lenloc = outp; ++ INCPTR(2, outp); ++ ++ /* ++ If the id in the request is unchanged, we must retransmit ++ the old data ++ */ ++ if(id == esp->es_client.ea_id) ++ eaptls_retransmit(esp->es_client.ea_session, &outp); ++ else ++ eaptls_send(esp->es_client.ea_session, &outp); ++ ++ outlen = (outp - outpacket_buf) - PPP_HDRLEN; ++ PUTSHORT(outlen, lenloc); ++ ++ output(esp->es_unit, outpacket_buf, PPP_HDRLEN + outlen); ++ ++ esp->es_client.ea_id = id; ++ ++} ++ ++/* ++ * Send an EAP-TLS ack ++ */ ++static void ++eap_tls_sendack(esp, id) ++eap_state *esp; ++u_char id; ++{ ++ u_char *outp; ++ int outlen; ++ u_char *lenloc; ++ ++ outp = outpacket_buf; ++ ++ MAKEHEADER(outp, PPP_EAP); ++ ++ PUTCHAR(EAP_RESPONSE, outp); ++ PUTCHAR(id, outp); ++ esp->es_client.ea_id = id; ++ ++ lenloc = outp; ++ INCPTR(2, outp); ++ ++ PUTCHAR(EAPT_TLS, outp); ++ PUTCHAR(0, outp); ++ ++ outlen = (outp - outpacket_buf) - PPP_HDRLEN; ++ PUTSHORT(outlen, lenloc); ++ ++ output(esp->es_unit, outpacket_buf, PPP_HDRLEN + outlen); ++ ++} ++#endif /* USE_EAPTLS */ ++ + static void + eap_send_nak(esp, id, type) + eap_state *esp; +@@ -1320,6 +1555,11 @@ + char rhostname[256]; + MD5_CTX mdContext; + u_char hash[MD5_SIGNATURE_SIZE]; ++#ifdef USE_EAPTLS ++ u_char flags; ++ struct eaptls_session *ets = esp->es_client.ea_session; ++#endif /* USE_EAPTLS */ ++ + #ifdef USE_SRP + struct t_client *tc; + struct t_num sval, gval, Nval, *Ap, Bval; +@@ -1456,6 +1696,100 @@ + esp->es_client.ea_namelen); + break; + ++#ifdef USE_EAPTLS ++ case EAPT_TLS: ++ ++ switch(esp->es_client.ea_state) { ++ ++ case eapListen: ++ ++ if (len < 1) { ++ error("EAP: received EAP-TLS Listen packet with no data"); ++ /* Bogus request; wait for something real. */ ++ return; ++ } ++ GETCHAR(flags, inp); ++ if(flags & EAP_TLS_FLAGS_START){ ++ ++ esp->es_client.ea_using_eaptls = 1; ++ ++ if (explicit_remote){ ++ esp->es_client.ea_peer = strdup(remote_name); ++ esp->es_client.ea_peerlen = strlen(remote_name); ++ } else ++ esp->es_client.ea_peer = NULL; ++ ++ /* Init ssl session */ ++ if(!eaptls_init_ssl_client(esp)) { ++ dbglog("cannot init ssl"); ++ eap_send_nak(esp, id, EAPT_TLS); ++ esp->es_client.ea_using_eaptls = 0; ++ break; ++ } ++ ++ ets = esp->es_client.ea_session; ++ eap_tls_response(esp, id); ++ esp->es_client.ea_state = (ets->frag ? eapTlsRecvAck : ++ eapTlsRecv); ++ break; ++ } ++ ++ /* The server has sent a bad start packet. */ ++ eap_send_nak(esp, id, EAPT_TLS); ++ break; ++ ++ case eapTlsRecvAck: ++ eap_tls_response(esp, id); ++ esp->es_client.ea_state = (ets->frag ? eapTlsRecvAck : ++ eapTlsRecv); ++ break; ++ ++ case eapTlsRecv: ++ if (len < 1) { ++ error("EAP: discarding EAP-TLS Receive packet with no data"); ++ /* Bogus request; wait for something real. */ ++ return; ++ } ++ eaptls_receive(ets, inp, len); ++ ++ if(ets->frag) { ++ eap_tls_sendack(esp, id); ++ esp->es_client.ea_state = eapTlsRecv; ++ break; ++ } ++ ++ if(ets->alert_recv) { ++ eap_tls_sendack(esp, id); ++ esp->es_client.ea_state = eapTlsRecvFailure; ++ break; ++ } ++ ++ /* Check if TLS handshake is finished */ ++ if(SSL_is_init_finished(ets->ssl)){ ++#ifdef MPPE ++ eaptls_gen_mppe_keys( ets, "client EAP encryption", 1 ); ++#endif ++ eaptls_free_session(ets); ++ eap_tls_sendack(esp, id); ++ esp->es_client.ea_state = eapTlsRecvSuccess; ++ break; ++ } ++ ++ eap_tls_response(esp,id); ++ esp->es_client.ea_state = (ets->frag ? eapTlsRecvAck : ++ eapTlsRecv); ++ ++ break; ++ ++ default: ++ eap_send_nak(esp, id, EAPT_TLS); ++ esp->es_client.ea_using_eaptls = 0; ++ break; ++ } ++ ++ break; ++#endif /* USE_EAPTLS */ ++ + #ifdef USE_SRP + case EAPT_SRP: + if (len < 1) { +@@ -1737,6 +2071,11 @@ + u_char dig[SHA_DIGESTSIZE]; + #endif /* USE_SRP */ + ++#ifdef USE_EAPTLS ++ struct eaptls_session *ets; ++ u_char flags; ++#endif /* USE_EAPTLS */ ++ + if (esp->es_server.ea_id != id) { + dbglog("EAP: discarding Response %d; expected ID %d", id, + esp->es_server.ea_id); +@@ -1776,6 +2115,64 @@ + eap_figure_next_state(esp, 0); + break; + ++#ifdef USE_EAPTLS ++ case EAPT_TLS: ++ switch(esp->es_server.ea_state) { ++ ++ case eapTlsRecv: ++ ++ ets = (struct eaptls_session *) esp->es_server.ea_session; ++ eap_figure_next_state(esp, ++ eaptls_receive(esp->es_server.ea_session, inp, len)); ++ ++ if(ets->alert_recv) { ++ eap_send_failure(esp); ++ break; ++ } ++ break; ++ ++ case eapTlsRecvAck: ++ if(len > 1) { ++ dbglog("EAP-TLS ACK with extra data"); ++ } ++ eap_figure_next_state(esp, 0); ++ break; ++ ++ case eapTlsRecvClient: ++ /* Receive authentication response from client */ ++ ++ if (len > 0) { ++ GETCHAR(flags, inp); ++ ++ if(len == 1 && !flags) { /* Ack = ok */ ++#ifdef MPPE ++ eaptls_gen_mppe_keys( esp->es_server.ea_session, "client EAP encryption", 0 ); ++#endif ++ eap_send_success(esp); ++ } ++ else { /* failure */ ++ warn("Server authentication failed"); ++ eap_send_failure(esp); ++ } ++ } ++ else ++ warn("Bogus EAP-TLS packet received from client"); ++ ++ eaptls_free_session(esp->es_server.ea_session); ++ ++ break; ++ ++ case eapTlsRecvAlertAck: ++ eap_send_failure(esp); ++ break; ++ ++ default: ++ eap_figure_next_state(esp, 1); ++ break; ++ } ++ break; ++#endif /* USE_EAPTLS */ ++ + case EAPT_NOTIFICATION: + dbglog("EAP unexpected Notification; response discarded"); + break; +@@ -1807,6 +2204,13 @@ + esp->es_server.ea_state = eapMD5Chall; + break; + ++#ifdef USE_EAPTLS ++ /* Send EAP-TLS start packet */ ++ case EAPT_TLS: ++ esp->es_server.ea_state = eapTlsStart; ++ break; ++#endif /* USE_EAPTLS */ ++ + default: + dbglog("EAP: peer requesting unknown Type %d", vallen); + switch (esp->es_server.ea_state) { +@@ -2018,13 +2422,27 @@ + int id; + int len; + { +- if (esp->es_client.ea_state != eapOpen && !eap_client_active(esp)) { ++ if (esp->es_client.ea_state != eapOpen && !eap_client_active(esp) ++#ifdef USE_EAPTLS ++ && esp->es_client.ea_state != eapTlsRecvSuccess ++#endif /* USE_EAPTLS */ ++ ) { + dbglog("EAP unexpected success message in state %s (%d)", + eap_state_name(esp->es_client.ea_state), + esp->es_client.ea_state); + return; + } + ++#ifdef USE_EAPTLS ++ if(esp->es_client.ea_using_eaptls && esp->es_client.ea_state != ++ eapTlsRecvSuccess) { ++ dbglog("EAP-TLS unexpected success message in state %s (%d)", ++ eap_state_name(esp->es_client.ea_state), ++ esp->es_client.ea_state); ++ return; ++ } ++#endif /* USE_EAPTLS */ ++ + if (esp->es_client.ea_timeout > 0) { + UNTIMEOUT(eap_client_timeout, (void *)esp); + } +@@ -2150,6 +2568,9 @@ + int code, id, len, rtype, vallen; + u_char *pstart; + u_int32_t uval; ++#ifdef USE_EAPTLS ++ u_char flags; ++#endif /* USE_EAPTLS */ + + if (inlen < EAP_HEADERLEN) + return (0); +@@ -2214,6 +2635,24 @@ + } + break; + ++#ifdef USE_EAPTLS ++ case EAPT_TLS: ++ if (len < 1) ++ break; ++ GETCHAR(flags, inp); ++ len--; ++ ++ if(flags == 0 && len == 0){ ++ printer(arg, " Ack"); ++ break; ++ } ++ ++ printer(arg, flags & EAP_TLS_FLAGS_LI ? " L":" -"); ++ printer(arg, flags & EAP_TLS_FLAGS_MF ? "M":"-"); ++ printer(arg, flags & EAP_TLS_FLAGS_START ? "S":"- "); ++ break; ++#endif /* USE_EAPTLS */ ++ + case EAPT_SRP: + if (len < 3) + goto truncated; +@@ -2325,6 +2764,25 @@ + } + break; + ++#ifdef USE_EAPTLS ++ case EAPT_TLS: ++ if (len < 1) ++ break; ++ GETCHAR(flags, inp); ++ len--; ++ ++ if(flags == 0 && len == 0){ ++ printer(arg, " Ack"); ++ break; ++ } ++ ++ printer(arg, flags & EAP_TLS_FLAGS_LI ? " L":" -"); ++ printer(arg, flags & EAP_TLS_FLAGS_MF ? "M":"-"); ++ printer(arg, flags & EAP_TLS_FLAGS_START ? "S":"- "); ++ ++ break; ++#endif /* USE_EAPTLS */ ++ + case EAPT_NAK: + if (len <= 0) { + printer(arg, " <missing hint>"); +@@ -2426,3 +2884,4 @@ + + return (inp - pstart); + } ++ +diff -Naur ppp-2.4.7/pppd/eap.h ppp-2.4.7-eaptls-mppe-1.101b/pppd/eap.h +--- ppp-2.4.7/pppd/eap.h 2014-08-09 14:31:39.000000000 +0200 ++++ ppp-2.4.7-eaptls-mppe-1.101b/pppd/eap.h 2018-06-02 01:42:04.023165433 +0200 +@@ -84,6 +84,16 @@ + eapClosed, /* Authentication not in use */ + eapListen, /* Client ready (and timer running) */ + eapIdentify, /* EAP Identify sent */ ++ eapTlsStart, /* Send EAP-TLS start packet */ ++ eapTlsRecv, /* Receive EAP-TLS tls data */ ++ eapTlsSendAck, /* Send EAP-TLS ack */ ++ eapTlsSend, /* Send EAP-TLS tls data */ ++ eapTlsRecvAck, /* Receive EAP-TLS ack */ ++ eapTlsRecvClient, /* Receive EAP-TLS auth response from client*/ ++ eapTlsSendAlert, /* Send EAP-TLS tls alert (server)*/ ++ eapTlsRecvAlertAck, /* Receive EAP-TLS ack after sending alert */ ++ eapTlsRecvSuccess, /* Receive EAP success */ ++ eapTlsRecvFailure, /* Receive EAP failure */ + eapSRP1, /* Sent EAP SRP-SHA1 Subtype 1 */ + eapSRP2, /* Sent EAP SRP-SHA1 Subtype 2 */ + eapSRP3, /* Sent EAP SRP-SHA1 Subtype 3 */ +@@ -95,9 +105,18 @@ + + #define EAP_STATES \ + "Initial", "Pending", "Closed", "Listen", "Identify", \ ++ "TlsStart", "TlsRecv", "TlsSendAck", "TlsSend", "TlsRecvAck", "TlsRecvClient",\ ++ "TlsSendAlert", "TlsRecvAlertAck" , "TlsRecvSuccess", "TlsRecvFailure", \ + "SRP1", "SRP2", "SRP3", "MD5Chall", "Open", "SRP4", "BadAuth" + +-#define eap_client_active(esp) ((esp)->es_client.ea_state == eapListen) ++#ifdef USE_EAPTLS ++#define eap_client_active(esp) ((esp)->es_client.ea_state != eapInitial &&\ ++ (esp)->es_client.ea_state != eapPending &&\ ++ (esp)->es_client.ea_state != eapClosed) ++#else ++#define eap_client_active(esp) ((esp)->es_client.ea_state == eapListen) ++#endif /* USE_EAPTLS */ ++ + #define eap_server_active(esp) \ + ((esp)->es_server.ea_state >= eapIdentify && \ + (esp)->es_server.ea_state <= eapMD5Chall) +@@ -112,11 +131,17 @@ + u_short ea_namelen; /* Length of our name */ + u_short ea_peerlen; /* Length of peer's name */ + enum eap_state_code ea_state; ++#ifdef USE_EAPTLS ++ enum eap_state_code ea_prev_state; ++#endif + u_char ea_id; /* Current id */ + u_char ea_requests; /* Number of Requests sent/received */ + u_char ea_responses; /* Number of Responses */ + u_char ea_type; /* One of EAPT_* */ + u_int32_t ea_keyflags; /* SRP shared key usage flags */ ++#ifdef USE_EAPTLS ++ bool ea_using_eaptls; ++#endif + }; + + /* +@@ -139,7 +164,12 @@ + * Timeouts. + */ + #define EAP_DEFTIMEOUT 3 /* Timeout (seconds) for rexmit */ ++#ifdef USE_EAPTLS ++#define EAP_DEFTRANSMITS 30 /* max # times to transmit */ ++ /* certificates can be long ... */ ++#else + #define EAP_DEFTRANSMITS 10 /* max # times to transmit */ ++#endif /* USE_EAPTLS */ + #define EAP_DEFREQTIME 20 /* Time to wait for peer request */ + #define EAP_DEFALLOWREQ 20 /* max # times to accept requests */ + +diff -Naur ppp-2.4.7/pppd/md5.c ppp-2.4.7-eaptls-mppe-1.101b/pppd/md5.c +--- ppp-2.4.7/pppd/md5.c 2014-08-09 14:31:39.000000000 +0200 ++++ ppp-2.4.7-eaptls-mppe-1.101b/pppd/md5.c 2018-06-02 01:42:04.023165433 +0200 +@@ -33,6 +33,8 @@ + *********************************************************************** + */ + ++#ifndef USE_EAPTLS ++ + #include <string.h> + #include "md5.h" + +@@ -305,3 +307,5 @@ + ** End of md5.c ** + ******************************** (cut) ******************************** + */ ++#endif /* USE_EAPTLS */ ++ +diff -Naur ppp-2.4.7/pppd/md5.h ppp-2.4.7-eaptls-mppe-1.101b/pppd/md5.h +--- ppp-2.4.7/pppd/md5.h 2014-08-09 14:31:39.000000000 +0200 ++++ ppp-2.4.7-eaptls-mppe-1.101b/pppd/md5.h 2018-06-02 01:42:04.024165430 +0200 +@@ -36,6 +36,7 @@ + ** documentation and/or software. ** + *********************************************************************** + */ ++#ifndef USE_EAPTLS + + #ifndef __MD5_INCLUDE__ + +@@ -63,3 +64,5 @@ + + #define __MD5_INCLUDE__ + #endif /* __MD5_INCLUDE__ */ ++ ++#endif /* USE_EAPTLS */ +diff -Naur ppp-2.4.7/pppd/pathnames.h ppp-2.4.7-eaptls-mppe-1.101b/pppd/pathnames.h +--- ppp-2.4.7/pppd/pathnames.h 2014-08-09 14:31:39.000000000 +0200 ++++ ppp-2.4.7-eaptls-mppe-1.101b/pppd/pathnames.h 2018-06-02 01:42:04.024165430 +0200 +@@ -21,6 +21,13 @@ + #define _PATH_UPAPFILE _ROOT_PATH "/etc/ppp/pap-secrets" + #define _PATH_CHAPFILE _ROOT_PATH "/etc/ppp/chap-secrets" + #define _PATH_SRPFILE _ROOT_PATH "/etc/ppp/srp-secrets" ++ ++#ifdef USE_EAPTLS ++#define _PATH_EAPTLSCLIFILE _ROOT_PATH "/etc/ppp/eaptls-client" ++#define _PATH_EAPTLSSERVFILE _ROOT_PATH "/etc/ppp/eaptls-server" ++#define _PATH_OPENSSLCONFFILE _ROOT_PATH "/etc/ppp/openssl.cnf" ++#endif /* USE_EAPTLS */ ++ + #define _PATH_SYSOPTIONS _ROOT_PATH "/etc/ppp/options" + #define _PATH_IPUP _ROOT_PATH "/etc/ppp/ip-up" + #define _PATH_IPDOWN _ROOT_PATH "/etc/ppp/ip-down" +diff -Naur ppp-2.4.7/pppd/plugins/Makefile.linux ppp-2.4.7-eaptls-mppe-1.101b/pppd/plugins/Makefile.linux +--- ppp-2.4.7/pppd/plugins/Makefile.linux 2014-08-09 14:31:39.000000000 +0200 ++++ ppp-2.4.7-eaptls-mppe-1.101b/pppd/plugins/Makefile.linux 2018-06-02 01:42:04.024165430 +0200 +@@ -4,6 +4,9 @@ + LDFLAGS = -shared + INSTALL = install + ++# EAP-TLS ++CFLAGS += -DUSE_EAPTLS=1 ++ + DESTDIR = $(INSTROOT)@DESTDIR@ + BINDIR = $(DESTDIR)/sbin + MANDIR = $(DESTDIR)/share/man/man8 +diff -Naur ppp-2.4.7/pppd/plugins/passprompt.c ppp-2.4.7-eaptls-mppe-1.101b/pppd/plugins/passprompt.c +--- ppp-2.4.7/pppd/plugins/passprompt.c 2014-08-09 14:31:39.000000000 +0200 ++++ ppp-2.4.7-eaptls-mppe-1.101b/pppd/plugins/passprompt.c 2018-06-02 01:42:04.024165430 +0200 +@@ -107,4 +107,7 @@ + { + add_options(options); + pap_passwd_hook = promptpass; ++#ifdef USE_EAPTLS ++ eaptls_passwd_hook = promptpass; ++#endif + } +diff -Naur ppp-2.4.7/pppd/plugins/passwordfd.c ppp-2.4.7-eaptls-mppe-1.101b/pppd/plugins/passwordfd.c +--- ppp-2.4.7/pppd/plugins/passwordfd.c 2014-08-09 14:31:39.000000000 +0200 ++++ ppp-2.4.7-eaptls-mppe-1.101b/pppd/plugins/passwordfd.c 2018-06-02 01:42:04.024165430 +0200 +@@ -79,4 +79,8 @@ + + chap_check_hook = pwfd_check; + chap_passwd_hook = pwfd_passwd; ++ ++#ifdef USE_EAPTLS ++ eaptls_passwd_hook = pwfd_passwd; ++#endif + } +diff -Naur ppp-2.4.7/pppd/pppd.8 ppp-2.4.7-eaptls-mppe-1.101b/pppd/pppd.8 +--- ppp-2.4.7/pppd/pppd.8 2014-08-09 14:31:39.000000000 +0200 ++++ ppp-2.4.7-eaptls-mppe-1.101b/pppd/pppd.8 2018-06-02 01:42:04.025165427 +0200 +@@ -248,6 +248,12 @@ + compression in the corresponding direction. Use \fInobsdcomp\fR or + \fIbsdcomp 0\fR to disable BSD-Compress compression entirely. + .TP ++.B ca \fIca-file ++(EAP-TLS) Use the file \fIca-file\fR as the X.509 Certificate Authority ++(CA) file (in PEM format), needed for setting up an EAP-TLS connection. ++This option is used on the client-side in conjunction with the \fBcert\fR ++and \fBkey\fR options. ++.TP + .B cdtrcts + Use a non-standard hardware flow control (i.e. DTR/CTS) to control + the flow of data on the serial port. If neither the \fIcrtscts\fR, +@@ -259,6 +265,12 @@ + bi-directional flow control. The sacrifice is that this flow + control mode does not permit using DTR as a modem control line. + .TP ++.B cert \fIcertfile ++(EAP-TLS) Use the file \fIcertfile\fR as the X.509 certificate (in PEM ++format), needed for setting up an EAP-TLS connection. This option is ++used on the client-side in conjunction with the \fBca\fR and ++\fBkey\fR options. ++.TP + .B chap\-interval \fIn + If this option is given, pppd will rechallenge the peer every \fIn\fR + seconds. +@@ -287,6 +299,18 @@ + 1000 (1 second). This wait period only applies if the \fBconnect\fR + or \fBpty\fR option is used. + .TP ++.B crl \fIfilename ++(EAP-TLS) Use the file \fIfilename\fR as the Certificate Revocation List ++to check for the validity of the peer's certificate. This option is not ++mandatory for setting up an EAP-TLS connection. Also see the \fBcrl-dir\fR ++option. ++.TP ++.B crl-dir \fIdirectory ++(EAP-TLS) Use the directory \fIdirectory\fR to scan for CRL files in ++has format ($hash.r0) to check for the validity of the peer's certificate. ++This option is not mandatory for setting up an EAP-TLS connection. ++Also see the \fBcrl\fR option. ++.TP + .B debug + Enables connection debugging facilities. + If this option is given, pppd will log the contents of all +@@ -551,6 +575,12 @@ + the kernel are logged by syslog(1) to a file as directed in the + /etc/syslog.conf configuration file. + .TP ++.B key \fIkeyfile ++(EAP-TLS) Use the file \fIkeyfile\fR as the private key file (in PEM ++format), needed for setting up an EAP-TLS connection. This option is ++used on the client-side in conjunction with the \fBca\fR and ++\fBcert\fR options. ++.TP + .B ktune + Enables pppd to alter kernel settings as appropriate. Under Linux, + pppd will enable IP forwarding (i.e. set /proc/sys/net/ipv4/ip_forward +@@ -709,6 +739,9 @@ + Disable Address/Control compression in both directions (send and + receive). + .TP ++.B need-peer-eap ++(EAP-TLS) Require the peer to verify our authentication credentials. ++.TP + .B noauth + Do not require the peer to authenticate itself. This option is + privileged. +diff -Naur ppp-2.4.7/pppd/pppd.h ppp-2.4.7-eaptls-mppe-1.101b/pppd/pppd.h +--- ppp-2.4.7/pppd/pppd.h 2014-08-09 14:31:39.000000000 +0200 ++++ ppp-2.4.7-eaptls-mppe-1.101b/pppd/pppd.h 2018-06-02 01:42:04.025165427 +0200 +@@ -325,6 +325,11 @@ + extern bool dryrun; /* check everything, print options, exit */ + extern int child_wait; /* # seconds to wait for children at end */ + ++#ifdef USE_EAPTLS ++extern char *crl_dir; ++extern char *crl_file; ++#endif /* USE_EAPTLS */ ++ + #ifdef MAXOCTETS + extern unsigned int maxoctets; /* Maximum octetes per session (in bytes) */ + extern int maxoctets_dir; /* Direction : +@@ -741,6 +746,10 @@ + extern int (*chap_passwd_hook) __P((char *user, char *passwd)); + extern void (*multilink_join_hook) __P((void)); + ++#ifdef USE_EAPTLS ++extern int (*eaptls_passwd_hook) __P((char *user, char *passwd)); ++#endif ++ + /* Let a plugin snoop sent and received packets. Useful for L2TP */ + extern void (*snoop_recv_hook) __P((unsigned char *p, int len)); + extern void (*snoop_send_hook) __P((unsigned char *p, int len)); + + + diff --git a/user/ppp/85_all_dhcp-make-vars.patch b/user/ppp/85_all_dhcp-make-vars.patch new file mode 100644 index 000000000..68af3aaf3 --- /dev/null +++ b/user/ppp/85_all_dhcp-make-vars.patch @@ -0,0 +1,19 @@ +--- ppp-2.4.3/pppd/plugins/dhcp/Makefile.linux ++++ ppp-2.4.3/pppd/plugins/dhcp/Makefile.linux +@@ -1,6 +1,6 @@ + + PLUGIN=dhcpc.so +-CFLAGS=-I../.. -I../../../include -O2 ++CFLAGS=$(COPTS) -I../.. -I../../../include -fPIC + + all: $(PLUGIN) + +@@ -9,7 +9,7 @@ + $(INSTALL) -s -c -m 755 dhcpc.so $(LIBDIR) + + dhcpc.so: dhcpc.o clientpacket.o packet.o socket.o options.o +- gcc -o dhcpc.so -shared dhcpc.o clientpacket.o packet.o socket.o options.o ++ $(CC) $(LDFLAGS) $(CFLAGS) -o $@ $^ + + + clean: diff --git a/user/ppp/86_all_dhcp-sys_error_to_strerror.patch b/user/ppp/86_all_dhcp-sys_error_to_strerror.patch new file mode 100644 index 000000000..e0d0937b2 --- /dev/null +++ b/user/ppp/86_all_dhcp-sys_error_to_strerror.patch @@ -0,0 +1,128 @@ +--- ppp-2.4.2/pppd/plugins/dhcp/dhcpc.c ++++ ppp-2.4.2/pppd/plugins/dhcp/dhcpc.c +@@ -144,7 +144,7 @@ + fd = raw_socket(client_config.ifindex); + + if (listen_mode != LISTEN_NONE && fd < 0) { +- fatal("DHCPC: couldn't listen on socket, %s", sys_errlist[errno]); ++ fatal("DHCPC: couldn't listen on socket, %s", strerror(errno)); + } + + } +@@ -208,7 +208,7 @@ + len = get_packet(&packet, fd); + + if (len == -1 && errno != EINTR) { +- dbglog("DHCPC: error on read, %s, reopening socket", sys_errlist[errno]); ++ dbglog("DHCPC: error on read, %s, reopening socket", strerror(errno)); + change_mode(LISTEN_KERNEL); + } + if (len < 0) continue; +@@ -380,7 +380,7 @@ + else len = get_raw_packet(&packet, fd); + + if (len == -1 && errno != EINTR) { +- dbglog("DHCPC: error on read, %s, reopening socket", sys_errlist[errno]); ++ dbglog("DHCPC: error on read, %s, reopening socket", strerror(errno)); + change_mode(listen_mode); /* just close and reopen */ + } + if (len < 0) continue; +@@ -445,7 +445,7 @@ + + } else { + /* An error occured */ +- dbglog("DHCPC: error on select, %s, reopening socket", sys_errlist[errno]); ++ dbglog("DHCPC: error on select, %s, reopening socket", strerror(errno)); + change_mode(listen_mode); /* just close and reopen */ + } + +--- ppp-2.4.2/pppd/plugins/dhcp/packet.c ++++ ppp-2.4.2/pppd/plugins/dhcp/packet.c +@@ -125,7 +125,7 @@ + return kernel_packet(payload,payload->giaddr,CLIENT_PORT,dest_ip,dest_port); + + if ((fd = socket(PF_PACKET, SOCK_DGRAM, htons(ETH_P_IP))) < 0) { +- DEBUG(LOG_ERR, "socket call failed: %s", sys_errlist[errno]); ++ DEBUG(LOG_ERR, "socket call failed: %s", strerror(errno)); + return -1; + } + +@@ -138,7 +138,7 @@ + dest.sll_halen = 6; + memcpy(dest.sll_addr, dest_arp, 6); + if (bind(fd, (struct sockaddr *)&dest, sizeof(struct sockaddr_ll)) < 0) { +- DEBUG(LOG_ERR, "bind call failed: %s", sys_errlist[errno]); ++ DEBUG(LOG_ERR, "bind call failed: %s", strerror(errno)); + close(fd); + return -1; + } +@@ -161,7 +161,7 @@ + + result = sendto(fd, &packet, sizeof(struct udp_dhcp_packet), 0, (struct sockaddr *) &dest, sizeof(dest)); + if (result <= 0) { +- DEBUG(LOG_ERR, "write on socket failed: %s", sys_errlist[errno]); ++ DEBUG(LOG_ERR, "write on socket failed: %s", strerror(errno)); + } + close(fd); + return result; +--- ppp-2.4.2/pppd/plugins/dhcp/socket.c ++++ ppp-2.4.2/pppd/plugins/dhcp/socket.c +@@ -60,7 +60,7 @@ + *addr = sin->sin_addr.s_addr; + DEBUG(LOG_INFO, "%s (our ip) = %s", ifr.ifr_name, inet_ntoa(sin->sin_addr)); + } else { +- LOG(LOG_ERR, "SIOCGIFADDR failed!: %s", sys_errlist[errno]); ++ LOG(LOG_ERR, "SIOCGIFADDR failed!: %s", strerror(errno)); + return -1; + } + } +@@ -69,7 +69,7 @@ + DEBUG(LOG_INFO, "adapter index %d", ifr.ifr_ifindex); + *ifindex = ifr.ifr_ifindex; + } else { +- LOG(LOG_ERR, "SIOCGIFINDEX failed!: %s", sys_errlist[errno]); ++ LOG(LOG_ERR, "SIOCGIFINDEX failed!: %s", strerror(errno)); + return -1; + } + if (ioctl(fd, SIOCGIFHWADDR, &ifr) == 0) { +@@ -77,11 +77,11 @@ + DEBUG(LOG_INFO, "adapter hardware address %02x:%02x:%02x:%02x:%02x:%02x", + arp[0], arp[1], arp[2], arp[3], arp[4], arp[5]); + } else { +- LOG(LOG_ERR, "SIOCGIFHWADDR failed!: %s", sys_errlist[errno]); ++ LOG(LOG_ERR, "SIOCGIFHWADDR failed!: %s", strerror(errno)); + return -1; + } + } else { +- LOG(LOG_ERR, "socket failed!: %s", sys_errlist[errno]); ++ LOG(LOG_ERR, "socket failed!: %s", strerror(errno)); + return -1; + } + close(fd); +@@ -98,7 +98,7 @@ + + DEBUG(LOG_INFO, "Opening listen socket on 0x%08x:%d %s\n", ip, port, inf ? inf : "*"); + if ((fd = socket(PF_INET, SOCK_DGRAM, IPPROTO_UDP)) < 0) { +- DEBUG(LOG_ERR, "socket call failed: %s", sys_errlist[errno]); ++ DEBUG(LOG_ERR, "socket call failed: %s", strerror(errno)); + return -1; + } + +@@ -144,7 +144,7 @@ + + DEBUG(LOG_INFO, "Opening raw socket on ifindex %d\n", ifindex); + if ((fd = socket(PF_PACKET, SOCK_DGRAM, htons(ETH_P_IP))) < 0) { +- DEBUG(LOG_ERR, "socket call failed: %s", sys_errlist[errno]); ++ DEBUG(LOG_ERR, "socket call failed: %s", strerror(errno)); + return -1; + } + +@@ -152,7 +152,7 @@ + sock.sll_protocol = htons(ETH_P_IP); + sock.sll_ifindex = ifindex; + if (bind(fd, (struct sockaddr *) &sock, sizeof(sock)) < 0) { +- DEBUG(LOG_ERR, "bind call failed: %s", sys_errlist[errno]); ++ DEBUG(LOG_ERR, "bind call failed: %s", strerror(errno)); + close(fd); + return -1; + } diff --git a/user/ppp/APKBUILD b/user/ppp/APKBUILD new file mode 100644 index 000000000..bcd4c85cf --- /dev/null +++ b/user/ppp/APKBUILD @@ -0,0 +1,125 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: A. Wilcox <awilfox@adelielinux.org> +pkgname=ppp +pkgver=2.4.7 +pkgrel=0 +pkgdesc="Point-to-Point Protocol (PPP) implementation for serial networking" +url="https://ppp.samba.org/" +arch="all" +options="!check" # No test suite. +license="BSD-4-Clause AND GPL-2.0-only AND GPL-2.0+ AND zlib AND LGPL-2.0+" +depends="" +makedepends="bsd-compat-headers linux-pam-dev libpcap-dev openssl-dev utmps-dev" +subpackages="$pkgname-dev $pkgname-doc $pkgname-openrc" +source="https://download.samba.org/pub/ppp/ppp-$pkgver.tar.gz + http://distfiles.gentoo.org/distfiles/ppp-dhcpc.tgz + 02_all_make-vars.patch + 03_all_use_internal_logwtmp.patch + 04_all_mpls.patch + 06_all_killaddr-smarter.patch + 08_all_wait-children.patch + 10_all_defaultgateway.patch + 12_all_linkpidfile.patch + 16_all_auth-fail.patch + 18_all_defaultmetric.patch + 19_all_radius_pid_overflow.patch + 20_all_dev-ppp.patch + 21_all_custom_iface_names.patch + 24_all_passwordfd-read-early.patch + 26_all_pppd-usepeerwins.patch + 28_all_connect-errors.patch + 30_all_Makefile.patch + 32_all_pado-timeout.patch + 34_all_lcp-echo-adaptive.patch + 50_all_linux-headers.patch + 51_all_glibc-2.28.patch + 80_all_eaptls-mppe-1.101a.patch + 85_all_dhcp-make-vars.patch + 86_all_dhcp-sys_error_to_strerror.patch + adelie.patch + dhcp.patch + install-path.patch + musl-fix-headers.patch + utmpx.patch + + ppp.mod + ppp.pamd + pppd.initd + " + +prepare() { + mv "$srcdir"/dhcp "$builddir"/pppd/plugins + default_prepare +} + +build() { + ./configure \ + --build=$CBUILD \ + --host=$CHOST \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --localstatedir=/var + make COPTS="$CFLAGS -D_GNU_SOURCE" \ + LIBS="-lutmps -lskarnet -lcrypto -lssl -lpam -lpcap" + make -C contrib/pppgetpass pppgetpass.vt +} + +package() { + make INSTROOT="$pkgdir" install + + install -Dm 0644 -t "$pkgdir"/usr/include/net/ include/net/ppp_defs.h + + install -d "$pkgdir"/etc/ppp/peers + install -m 0600 etc.ppp/pap-secrets \ + "$pkgdir"/etc/ppp/pap-secrets.example + install -m 0600 etc.ppp/chap-secrets \ + "$pkgdir"/etc/ppp/chap-secrets.example + install -m 0644 etc.ppp/options "$pkgdir"/etc/ppp/options + + install -Dm 0644 "$srcdir"/ppp.pamd "$pkgdir"/etc/pam.d/ppp + install -Dm 0755 -t "$pkgdir"/usr/bin/ scripts/p{on,off,log} + install -Dm 0644 -t "$pkgdir"/usr/share/man/man1/ scripts/pon.1 + + install -Dm 0755 contrib/pppgetpass/pppgetpass.vt \ + "$pkgdir"/usr/sbin/pppgetpass + install -Dm 0644 -t "$pkgdir"/usr/share/man/man8/ \ + contrib/pppgetpass/pppgetpass.8 + + install -Dm 0644 "$srcdir"/ppp.mod "$pkgdir"/etc/modprobe.d/ppp.conf + install -Dm 0755 "$srcdir"/pppd.initd "$pkgdir"/etc/init.d/pppd +} + +sha512sums="e34ce24020af6a73e7a26c83c4f73a9c83fa455b7b363794dba27bf01f70368be06bff779777843949bd77f4bc9385d6ad455ea48bf8fff4e0d73cc8fef16ae2 ppp-2.4.7.tar.gz +aeaf791b14f5a09c0e2079072a157e65132cbff46e608bc0724e6a5827a01da934f5006e2774eb7105f83e607a52cb4987238f4385cf6f5cc86cbe305a556738 ppp-dhcpc.tgz +8444d7edfe902a83f6cce96d29b9b7fb45ac68bdbe44494797d2a98470b80017489d36feb50cf945cbe72486bac69f45b23790e15cfbd33e07913a857ee80ab7 02_all_make-vars.patch +4c4a5cc6fd8ce3203c41ff07fc0ce5f0468985c779fe05030898d36c404d2086ce7a49336ac58e6502fc2fd14c4de9006028fe19c500d2cac890a16a55c723e8 03_all_use_internal_logwtmp.patch +1d63795949da00a19712aef39a54f338183b6917b246083e04a0b9ee43d346af5adeeb9357cb165587722790fa19b13375d55008646a4e9e2acdf8724bf3c7cc 04_all_mpls.patch +b49086401c1b395ee6caba0418272b2d1b2ab9dcf6f1fc7e7f1280e94fcf17c8fdb884a19f4ef911bd7849a9cceb4cc07fc75438726340cd8c17265d4c2bd4d8 06_all_killaddr-smarter.patch +807707ee9795ef4300b92bacdeba6b9e7332b6ce5a355de3ce77ddcc6dafce069f024131fd3ef282e38be3499e4230ad50fdda2b96e00891f5df1696234b775b 08_all_wait-children.patch +c084237458ceb8704541f6e8424855788dbc2883559c4bf1ff35060e277c2b2ddfadcdb6dedc0bf42a5e83e98cfe7241fae8f6dc59d1ed963ed50356c9fd83ed 10_all_defaultgateway.patch +122b9e3dbc3a9accacb31c653b3c0d368e8cdf3d954a6c93d04ac26ca8f3cb5bfcf8a01881d1cf08e855a1d2d0bd86e7fadba22bb5ada1a86f78e6b9820e6687 12_all_linkpidfile.patch +3a23ef3619b2840eb3f1f7e14bd4765526b09acdfa8ab4d659ad8525a6f96d0cfb7c9fef042cde99ba1de8cf5caa74faa32e2a988453b4b17a70d5cc9a4bcf41 16_all_auth-fail.patch +24b2cf579844bb9e1c0360227a5d35c3510471c0de6f16031d5e192d0ae7b1913aba93c2d99ea5fd3724deb6754f9831c1adb30671a31617268c77c65fc8beaf 18_all_defaultmetric.patch +9fdb3346ef13b250f91f1af55c0efa0f836a60abe9e62fceed30df4e431a3bccdd33b083c2662c45e2091085438ba2221cdc4ae51fc1b05a666d77f74d461214 19_all_radius_pid_overflow.patch +82c80701095a2d9707afbf5fc29bdf2fc3f92252b7de5de1d639f8607096a9d34ce90ffd0a2f770512b590a27dec56f2b03e5e9f4c9e56e1f362a2387d9fb568 20_all_dev-ppp.patch +314e0939b546af5229db34888284a06e07d7b4c94190bf95d4382d3ff39935f18ecc6172f62309e4f63a00fdfceca73d908da8d82c95fd0b926b1832968ee3cc 21_all_custom_iface_names.patch +2508cf1285a086c917ba5deffc96c1c29a511f1c1a0ef94c811b2bf139aed0218f34d7c1f1004890e105c47dffc5834a049dbe7686611d0fc8b8607ccdc86105 24_all_passwordfd-read-early.patch +3eb55fb681e7fecf4e09b53683f509d2db3779599dd60fb89f88cd644c92d779f4720114546ba458262e8239581061e4a450143338c4725ada18b7ca314e12b0 26_all_pppd-usepeerwins.patch +2e0bd81124bcd7c1234089f11e0b607b19047d279dc436ced3a4b8d793bcee4fcececd948b6a0755a02f68542c5c5e30b6f8541f90b998c09da8d50362827520 28_all_connect-errors.patch +e495a489ee98258a3a4549127faca2c41feff27dff296065c2e41bfc696ced2ad1062ea0aa5bf3cc2425c85b4494ebbcbaaabacd8a3ea8ce8fab28acea028336 30_all_Makefile.patch +77c0585b46f4fc090a67198d800d67dab2ce75eadcf2153c6e800e274b53ced6b512fd6eb4767c632f765bacd6c332f8d2a68233abb3781d6c62321d6bbb6052 32_all_pado-timeout.patch +0bd928f45708f10835250fd6a6162f6e148dca172c810511c1f4b1fe56602c4869e7f622e95a3f4a41e5502ddefd0cf6054cd57211bc83426d5da5b5f10dac26 34_all_lcp-echo-adaptive.patch +cda8e347eef7f26589cf1a12243f4d77de34d5736e3cb04fda9063adc0d931ef7ec7dbb2f142f1dfabc6d3ee04a252d2dd67d2c99ad9c01f2bd343bec88abe97 50_all_linux-headers.patch +fc012971a062456fa4e253f5b4a5e2ce56ae1852293d0245ecfd165ba162fa76ec2c28e1035dd89de3e9d43941d528e2d95a40552eb8037a5ba084c1717c20d1 51_all_glibc-2.28.patch +977b247e87557c4c57a871470c40670457e285ca59357dabab854ab16cc5578526ddf880410aa2efc7078e16d32d7afea4b69928af14ac4449523f6a591284f1 80_all_eaptls-mppe-1.101a.patch +2d294bfe455648949cedb47a12a07913f0395aadbe2566c1e90d70fc37baa8635a667ab45195a697567f8d52de88771c499adffee82cde2e9e318ed858b6007b 85_all_dhcp-make-vars.patch +44d5528c057d0abf2b45ba04943a52b6b94209434a06aa565f8a74acdd660efd86fe13280d540383168eaedad9f627673410bb8468860b64adb3145030e12889 86_all_dhcp-sys_error_to_strerror.patch +2ba9ba8856e569c204a0e058a3e7a4a74f331118cb33bbca445a87b54bb0e4f0da2a968df5f394633911603359284831a80a4d9c793d795eef8477d00bab63f1 adelie.patch +6d38f9779945bce2277f2d52d66dd79d2696f02c44186e1750d236f2d77d692746a8e8c164d925d5bb32dbfd02a723cabb59304f05954e0b5f7adada208ee220 dhcp.patch +fb4ae2c2ba4ecdd1c85f6e5f730fd9659cf1fbc7a8a004b09042adafee7e4af6238df8deb3dbd3dc9c69407d9ebc4c82e1792a43b4aaf8ac18ebe18268b50597 install-path.patch +2f071ea9db15e4abf1bed6cce8130dc81b710a31bfef5fa8f9370c353f845dbc47674b1551b8e040478e5156add6f98d480530206125e8bb308f0f4288d1eec6 musl-fix-headers.patch +723ff3dd0aee13f9878559aa433b314af6043523a2bafd5957258809a645942f7d34b5bd659869a1528cf7b1a462ad7cc2dbf18e7986220f5f685f2c1ea1d36b utmpx.patch +58bf5d6d286a08bd6dd595b39ee425efedd5745dddf33a9c90505891546eb46f4cf1306d83911bef61bc4611816aa0f6aef5d3e0f14c2f4ddd0a588780570041 ppp.mod +e30a397392d467ac3c78f6533f3adff5de7d38f0372d8d6f7b186db4ec69ddf12463d467d8a86eb5867effeb7dd6bd16942a98fb3a3ab59ff754a123e16d0938 ppp.pamd +bd6f43588b037367ffdb57f5e331492dcaa5969003e219c2dc8b90e6be1aa407282ff6114b91d1379ebeff766983fa0622456520cc0ac592b4f0b1496acf21bf pppd.initd" diff --git a/user/ppp/adelie.patch b/user/ppp/adelie.patch new file mode 100644 index 000000000..06bb6edf9 --- /dev/null +++ b/user/ppp/adelie.patch @@ -0,0 +1,88 @@ +--- ppp-2.4.7/pppd/Makefile.linux.old 2019-05-09 20:32:30.959257140 +0000 ++++ ppp-2.4.7/pppd/Makefile.linux 2019-05-09 20:34:48.964184093 +0000 +@@ -32,7 +32,7 @@ + + # CC = gcc + # +-COPTS+= -Wall ++COPTS+= -Wall -D_GNU_SOURCE + LIBS = + + # Uncomment the next line to include support for Microsoft's +@@ -61,14 +61,14 @@ + USE_TDB=y + + HAS_SHADOW=y +-#USE_PAM=y ++USE_PAM=y + HAVE_INET6=y + + # Enable plugins + PLUGIN=y + + # Enable Microsoft proprietary Callback Control Protocol +-#CBCP=y ++CBCP=y + + # Enable EAP SRP-SHA1 authentication (requires libsrp) + #USE_SRP=y +@@ -102,8 +102,8 @@ + + # EAP SRP-SHA1 + ifdef USE_SRP +-CFLAGS += -DUSE_SRP -DOPENSSL -I/usr/local/ssl/include +-LIBS += -lsrp -L/usr/local/ssl/lib -lcrypto ++CFLAGS += -DUSE_SRP -DOPENSSL ++LIBS += -lsrp `$(PKG_CONFIG) --libs libcrypto` + TARGETS += srp-entry + EXTRAINSTALL = $(INSTALL) -s -c -m 555 srp-entry $(BINDIR)/srp-entry + MANPAGES += srp-entry.8 +--- ppp-2.4.7/pppd/plugins/radius/pathnames.h.old 2014-08-09 12:31:39.000000000 +0000 ++++ ppp-2.4.7/pppd/plugins/radius/pathnames.h 2019-05-09 20:35:39.258690873 +0000 +@@ -22,7 +22,7 @@ + + /* normally defined in the Makefile */ + #ifndef _PATH_ETC_RADIUSCLIENT_CONF +-#define _PATH_ETC_RADIUSCLIENT_CONF "/etc/radiusclient.conf" ++#define _PATH_ETC_RADIUSCLIENT_CONF "/etc/radiusclient/radiusclient.conf" + #endif + + #endif /* PATHNAMES_H */ +--- ppp-2.4.7/pppd/plugins/radius/etc/radiusclient.conf.old 2014-08-09 12:31:39.000000000 +0000 ++++ ppp-2.4.7/pppd/plugins/radius/etc/radiusclient.conf 2019-05-09 20:37:29.676630906 +0000 +@@ -22,7 +22,7 @@ + + # name of the issue file. it's only display when no username is passed + # on the radlogin command line (default /etc/radiusclient/issue) +-issue /usr/local/etc/radiusclient/issue ++issue /etc/radiusclient/issue + + # RADIUS settings + +@@ -43,22 +43,22 @@ + + # file holding shared secrets used for the communication + # between the RADIUS client and server +-servers /usr/local/etc/radiusclient/servers ++servers /etc/radiusclient/servers + + # dictionary of allowed attributes and values + # just like in the normal RADIUS distributions +-dictionary /usr/local/etc/radiusclient/dictionary ++dictionary /etc/radiusclient/dictionary + + # program to call for a RADIUS authenticated login + # (default /usr/sbin/login.radius) +-login_radius /usr/local/sbin/login.radius ++login_radius /usr/sbin/login.radius + + # file which holds sequence number for communication with the + # RADIUS server + seqfile /var/run/radius.seq + + # file which specifies mapping between ttyname and NAS-Port attribute +-mapfile /usr/local/etc/radiusclient/port-id-map ++mapfile /etc/radiusclient/port-id-map + + # default authentication realm to append to all usernames if no + # realm was explicitly specified by the user diff --git a/user/ppp/dhcp.patch b/user/ppp/dhcp.patch new file mode 100644 index 000000000..611882326 --- /dev/null +++ b/user/ppp/dhcp.patch @@ -0,0 +1,324 @@ +--- ppp-2.4.7/pppd/plugins/Makefile.linux.old 2019-05-09 23:06:56.499058276 +0000 ++++ ppp-2.4.7/pppd/plugins/Makefile.linux 2019-05-09 23:11:21.040252628 +0000 +@@ -16,7 +16,7 @@ + MANDIR = $(DESTDIR)/share/man/man8 + LIBDIR = $(DESTDIR)/lib/pppd/$(VERSION) + +-SUBDIRS := rp-pppoe pppoatm pppol2tp ++SUBDIRS := dhcp rp-pppoe pppoatm pppol2tp + # Uncomment the next line to include the radius authentication plugin + SUBDIRS += radius + PLUGINS := minconn.so passprompt.so passwordfd.so winbind.so +--- ppp-2.4.7/pppd/plugins/dhcp/README.old 2002-09-30 11:33:49.000000000 +0000 ++++ ppp-2.4.7/pppd/plugins/dhcp/README 2019-05-09 23:11:37.408470308 +0000 +@@ -37,7 +37,7 @@ + + This option specified the local IP address of the system running + this proxy, as should be identified to the DHCP server in the +- 'giaddr' field of DHCP requests. Normal server behavor should ++ 'giaddr' field of DHCP requests. Normal server behaviour should + be to send DHCP responses to this address. The default is the + primary address bound to the dhcp interface. + +diff -Naur ppp-2.4.7/pppd/plugins/dhcp.old/clientpacket.c ppp-2.4.7/pppd/plugins/dhcp/clientpacket.c +--- ppp-2.4.7/pppd/plugins/dhcp.old/clientpacket.c 2002-08-31 12:19:20.000000000 +0000 ++++ ppp-2.4.7/pppd/plugins/dhcp/clientpacket.c 2019-05-09 23:42:33.566347764 +0000 +@@ -179,8 +179,8 @@ + { + int bytes; + struct udp_dhcp_packet packet; +- u_int32_t source, dest; +- u_int16_t check; ++ uint32_t source, dest; ++ uint16_t check; + + memset(&packet, 0, sizeof(struct udp_dhcp_packet)); + bytes = read(fd, &packet, sizeof(struct udp_dhcp_packet)); +diff -Naur ppp-2.4.7/pppd/plugins/dhcp.old/dhcpc.c ppp-2.4.7/pppd/plugins/dhcp/dhcpc.c +--- ppp-2.4.7/pppd/plugins/dhcp.old/dhcpc.c 2019-05-09 23:41:38.732319544 +0000 ++++ ppp-2.4.7/pppd/plugins/dhcp/dhcpc.c 2019-05-09 23:42:33.566347764 +0000 +@@ -56,11 +56,11 @@ + #include "socket.h" + #include "debug.h" + +-static void (*dhcp_old_ip_choose_hook)(u_int32_t *addrp); ++static void (*dhcp_old_ip_choose_hook)(uint32_t *addrp); + + static int dhcp_state; +-static u_int32_t requested_ip; /* = 0 */ +-u_int32_t assigned_ip; /* value supplied to remote ppp */ ++static uint32_t requested_ip; /* = 0 */ ++uint32_t assigned_ip; /* value supplied to remote ppp */ + static unsigned long server_addr; + unsigned long lease, renew_timeout; + unsigned long xid = 0; +@@ -118,7 +118,7 @@ + void dhcp_release(void *ptr, int arg); + void dhcp_renew(void *dummy); + void dhcp_request_new(); +-void dhcp_ip_choose(u_int32_t *addrp); ++void dhcp_ip_choose(uint32_t *addrp); + void dhcp_read_options(void); + + +@@ -453,8 +453,8 @@ + return; + } + +-void dhcp_ip_choose(u_int32_t *addrp) { +- u_int32_t entryvalue; ++void dhcp_ip_choose(uint32_t *addrp) { ++ uint32_t entryvalue; + + dbglog("DHCPC: ip_choose_hook entered with peer name %s",peer_authname); + +diff -Naur ppp-2.4.7/pppd/plugins/dhcp.old/dhcpc.h ppp-2.4.7/pppd/plugins/dhcp/dhcpc.h +--- ppp-2.4.7/pppd/plugins/dhcp.old/dhcpc.h 2002-08-31 11:54:23.000000000 +0000 ++++ ppp-2.4.7/pppd/plugins/dhcp/dhcpc.h 2019-05-09 23:42:33.566347764 +0000 +@@ -24,9 +24,9 @@ + unsigned char *hostname; /* Optional hostname to use */ + int ifindex; /* Index number of the interface to use */ + unsigned char arp[6]; /* Our arp address */ +- u_int32_t giaddr; /* Fill in this value on all packets we generate */ +- u_int32_t siaddr; /* If defined, only talk to this server (never broadcast) */ +- u_int32_t subnet_selection; /* If non zero, send and require SS option */ ++ uint32_t giaddr; /* Fill in this value on all packets we generate */ ++ uint32_t siaddr; /* If defined, only talk to this server (never broadcast) */ ++ uint32_t subnet_selection; /* If non zero, send and require SS option */ + }; + + extern struct client_config_t client_config; +diff -Naur ppp-2.4.7/pppd/plugins/dhcp.old/dhcpd.h ppp-2.4.7/pppd/plugins/dhcp/dhcpd.h +--- ppp-2.4.7/pppd/plugins/dhcp.old/dhcpd.h 2002-08-31 11:52:31.000000000 +0000 ++++ ppp-2.4.7/pppd/plugins/dhcp/dhcpd.h 2019-05-09 23:42:33.566347764 +0000 +@@ -101,9 +101,9 @@ + }; + + struct server_config_t { +- u_int32_t server; /* Our IP, in network order */ +- u_int32_t start; /* Start address of leases, network order */ +- u_int32_t end; /* End of leases, network order */ ++ uint32_t server; /* Our IP, in network order */ ++ uint32_t start; /* Start address of leases, network order */ ++ uint32_t end; /* End of leases, network order */ + struct option_set *options; /* List of DHCP options loaded from the config file */ + char *interface; /* The name of the interface to use */ + int ifindex; /* Index number of the interface to use */ +@@ -122,7 +122,7 @@ + char *lease_file; + char *pidfile; + char *notify_file; /* What to run whenever leases are written */ +- u_int32_t siaddr; /* next server bootp option */ ++ uint32_t siaddr; /* next server bootp option */ + char *sname; /* bootp server name */ + char *boot_file; /* bootp boot file option */ + }; +diff -Naur ppp-2.4.7/pppd/plugins/dhcp.old/leases.h ppp-2.4.7/pppd/plugins/dhcp/leases.h +--- ppp-2.4.7/pppd/plugins/dhcp.old/leases.h 2002-08-23 13:17:14.000000000 +0000 ++++ ppp-2.4.7/pppd/plugins/dhcp/leases.h 2019-05-09 23:42:33.566347764 +0000 +@@ -4,20 +4,20 @@ + + + struct dhcpOfferedAddr { +- u_int8_t chaddr[16]; +- u_int32_t yiaddr; /* network order */ +- u_int32_t expires; /* host order */ ++ uint8_t chaddr[16]; ++ uint32_t yiaddr; /* network order */ ++ uint32_t expires; /* host order */ + }; + + +-void clear_lease(u_int8_t *chaddr, u_int32_t yiaddr); +-struct dhcpOfferedAddr *add_lease(u_int8_t *chaddr, u_int32_t yiaddr, unsigned long lease); ++void clear_lease(uint8_t *chaddr, uint32_t yiaddr); ++struct dhcpOfferedAddr *add_lease(uint8_t *chaddr, uint32_t yiaddr, unsigned long lease); + int lease_expired(struct dhcpOfferedAddr *lease); + struct dhcpOfferedAddr *oldest_expired_lease(void); +-struct dhcpOfferedAddr *find_lease_by_chaddr(u_int8_t *chaddr); +-struct dhcpOfferedAddr *find_lease_by_yiaddr(u_int32_t yiaddr); +-u_int32_t find_address(int check_expired); +-int check_ip(u_int32_t addr); ++struct dhcpOfferedAddr *find_lease_by_chaddr(uint8_t *chaddr); ++struct dhcpOfferedAddr *find_lease_by_yiaddr(uint32_t yiaddr); ++uint32_t find_address(int check_expired); ++int check_ip(uint32_t addr); + + + #endif +diff -Naur ppp-2.4.7/pppd/plugins/dhcp.old/options.c ppp-2.4.7/pppd/plugins/dhcp/options.c +--- ppp-2.4.7/pppd/plugins/dhcp.old/options.c 2002-08-31 11:52:37.000000000 +0000 ++++ ppp-2.4.7/pppd/plugins/dhcp/options.c 2019-05-09 23:42:33.566347764 +0000 +@@ -148,17 +148,17 @@ + + + /* add a one to four byte option to a packet */ +-int add_simple_option(unsigned char *optionptr, unsigned char code, u_int32_t data) ++int add_simple_option(unsigned char *optionptr, unsigned char code, uint32_t data) + { + char length = 0; + int i; + unsigned char option[2 + 4]; + unsigned char *u8; +- u_int16_t *u16; +- u_int32_t *u32; +- u_int32_t aligned; ++ uint16_t *u16; ++ uint32_t *u32; ++ uint32_t aligned; + u8 = (unsigned char *) &aligned; +- u16 = (u_int16_t *) &aligned; ++ u16 = (uint16_t *) &aligned; + u32 = &aligned; + + for (i = 0; options[i].code; i++) +diff -Naur ppp-2.4.7/pppd/plugins/dhcp.old/options.h ppp-2.4.7/pppd/plugins/dhcp/options.h +--- ppp-2.4.7/pppd/plugins/dhcp.old/options.h 2002-08-23 13:06:28.000000000 +0000 ++++ ppp-2.4.7/pppd/plugins/dhcp/options.h 2019-05-09 23:42:33.566347764 +0000 +@@ -33,7 +33,7 @@ + unsigned char *get_option(struct dhcpMessage *packet, int code); + int end_option(unsigned char *optionptr); + int add_option_string(unsigned char *optionptr, unsigned char *string); +-int add_simple_option(unsigned char *optionptr, unsigned char code, u_int32_t data); ++int add_simple_option(unsigned char *optionptr, unsigned char code, uint32_t data); + struct option_set *find_option(struct option_set *opt_list, char code); + void attach_option(struct option_set **opt_list, struct dhcp_option *option, char *buffer, int length); + +diff -Naur ppp-2.4.7/pppd/plugins/dhcp.old/packet.c ppp-2.4.7/pppd/plugins/dhcp/packet.c +--- ppp-2.4.7/pppd/plugins/dhcp.old/packet.c 2019-05-09 23:41:38.732319544 +0000 ++++ ppp-2.4.7/pppd/plugins/dhcp/packet.c 2019-05-09 23:42:33.566347764 +0000 +@@ -83,13 +83,13 @@ + } + + +-u_int16_t checksum(void *addr, int count) ++uint16_t checksum(void *addr, int count) + { + /* Compute Internet Checksum for "count" bytes + * beginning at location "addr". + */ + register int32_t sum = 0; +- u_int16_t *source = (u_int16_t *) addr; ++ uint16_t *source = (uint16_t *) addr; + + while( count > 1 ) { + /* This is the inner loop */ +@@ -110,8 +110,8 @@ + + + /* Constuct a ip/udp header for a packet, and specify the source and dest hardware address */ +-int raw_packet(struct dhcpMessage *payload, u_int32_t source_ip, int source_port, +- u_int32_t dest_ip, int dest_port, unsigned char *dest_arp, int ifindex) ++int raw_packet(struct dhcpMessage *payload, uint32_t source_ip, int source_port, ++ uint32_t dest_ip, int dest_port, unsigned char *dest_arp, int ifindex) + { + int fd; + int result; +@@ -169,8 +169,8 @@ + + + /* Let the kernel do all the work for packet generation */ +-int kernel_packet(struct dhcpMessage *payload, u_int32_t source_ip, int source_port, +- u_int32_t dest_ip, int dest_port) ++int kernel_packet(struct dhcpMessage *payload, uint32_t source_ip, int source_port, ++ uint32_t dest_ip, int dest_port) + { + int n = 1; + int fd, result; +diff -Naur ppp-2.4.7/pppd/plugins/dhcp.old/packet.h ppp-2.4.7/pppd/plugins/dhcp/packet.h +--- ppp-2.4.7/pppd/plugins/dhcp.old/packet.h 2002-08-23 13:04:56.000000000 +0000 ++++ ppp-2.4.7/pppd/plugins/dhcp/packet.h 2019-05-09 23:42:33.566347764 +0000 +@@ -5,22 +5,22 @@ + #include <netinet/ip.h> + + struct dhcpMessage { +- u_int8_t op; +- u_int8_t htype; +- u_int8_t hlen; +- u_int8_t hops; +- u_int32_t xid; +- u_int16_t secs; +- u_int16_t flags; +- u_int32_t ciaddr; +- u_int32_t yiaddr; +- u_int32_t siaddr; +- u_int32_t giaddr; +- u_int8_t chaddr[16]; +- u_int8_t sname[64]; +- u_int8_t file[128]; +- u_int32_t cookie; +- u_int8_t options[308]; /* 312 - cookie */ ++ uint8_t op; ++ uint8_t htype; ++ uint8_t hlen; ++ uint8_t hops; ++ uint32_t xid; ++ uint16_t secs; ++ uint16_t flags; ++ uint32_t ciaddr; ++ uint32_t yiaddr; ++ uint32_t siaddr; ++ uint32_t giaddr; ++ uint8_t chaddr[16]; ++ uint8_t sname[64]; ++ uint8_t file[128]; ++ uint32_t cookie; ++ uint8_t options[308]; /* 312 - cookie */ + }; + + struct udp_dhcp_packet { +@@ -31,11 +31,11 @@ + + void init_header(struct dhcpMessage *packet, char type); + int get_packet(struct dhcpMessage *packet, int fd); +-u_int16_t checksum(void *addr, int count); +-int raw_packet(struct dhcpMessage *payload, u_int32_t source_ip, int source_port, +- u_int32_t dest_ip, int dest_port, unsigned char *dest_arp, int ifindex); +-int kernel_packet(struct dhcpMessage *payload, u_int32_t source_ip, int source_port, +- u_int32_t dest_ip, int dest_port); ++uint16_t checksum(void *addr, int count); ++int raw_packet(struct dhcpMessage *payload, uint32_t source_ip, int source_port, ++ uint32_t dest_ip, int dest_port, unsigned char *dest_arp, int ifindex); ++int kernel_packet(struct dhcpMessage *payload, uint32_t source_ip, int source_port, ++ uint32_t dest_ip, int dest_port); + + + #endif +diff -Naur ppp-2.4.7/pppd/plugins/dhcp.old/socket.c ppp-2.4.7/pppd/plugins/dhcp/socket.c +--- ppp-2.4.7/pppd/plugins/dhcp.old/socket.c 2019-05-09 23:41:38.732319544 +0000 ++++ ppp-2.4.7/pppd/plugins/dhcp/socket.c 2019-05-09 23:42:33.566347764 +0000 +@@ -43,7 +43,7 @@ + + #include "debug.h" + +-int read_interface(char *interface, int *ifindex, u_int32_t *addr, unsigned char *arp) ++int read_interface(char *interface, int *ifindex, uint32_t *addr, unsigned char *arp) + { + int fd; + struct ifreq ifr; +diff -Naur ppp-2.4.7/pppd/plugins/dhcp.old/socket.h ppp-2.4.7/pppd/plugins/dhcp/socket.h +--- ppp-2.4.7/pppd/plugins/dhcp.old/socket.h 2002-08-23 13:06:28.000000000 +0000 ++++ ppp-2.4.7/pppd/plugins/dhcp/socket.h 2019-05-09 23:42:33.566347764 +0000 +@@ -2,7 +2,7 @@ + #ifndef _SOCKET_H + #define _SOCKET_H + +-int read_interface(char *interface, int *ifindex, u_int32_t *addr, unsigned char *arp); ++int read_interface(char *interface, int *ifindex, uint32_t *addr, unsigned char *arp); + int listen_socket(unsigned int ip, int port, char *inf); + int raw_socket(int ifindex); + +--- ppp-2.4.7/pppd/plugins/dhcp/Makefile.linux.old 2019-05-09 23:54:56.595427092 +0000 ++++ ppp-2.4.7/pppd/plugins/dhcp/Makefile.linux 2019-05-09 23:56:53.012746364 +0000 +@@ -1,6 +1,11 @@ + + PLUGIN=dhcpc.so + CFLAGS=$(COPTS) -I../.. -I../../../include -fPIC ++INSTALL = install ++DESTDIR = $(INSTROOT)/usr ++LIBDIR = $(DESTDIR)/lib/pppd/$(VERSION) ++ ++VERSION = $(shell awk -F '"' '/VERSION/ { print $$2; }' ../../patchlevel.h) + + all: $(PLUGIN) + diff --git a/user/ppp/install-path.patch b/user/ppp/install-path.patch new file mode 100644 index 000000000..845729fd5 --- /dev/null +++ b/user/ppp/install-path.patch @@ -0,0 +1,11 @@ +--- ppp-2.4.7/pppd/plugins/pppol2tp/Makefile.linux.old 2019-05-09 22:28:24.640793389 +0000 ++++ ppp-2.4.7/pppd/plugins/pppol2tp/Makefile.linux 2019-05-09 23:02:56.955142166 +0000 +@@ -4,7 +4,7 @@ + + #*********************************************************************** + +-DESTDIR = @DESTDIR@ ++DESTDIR = $(INSTROOT)@DESTDIR@ + LIBDIR = $(DESTDIR)/lib/pppd/$(VERSION) + + VERSION = $(shell awk -F '"' '/VERSION/ { print $$2; }' ../../patchlevel.h) diff --git a/user/ppp/musl-fix-headers.patch b/user/ppp/musl-fix-headers.patch new file mode 100644 index 000000000..d24f62896 --- /dev/null +++ b/user/ppp/musl-fix-headers.patch @@ -0,0 +1,137 @@ +diff --git a/include/net/ppp_defs.h b/include/net/ppp_defs.h +index b06eda5..dafa36c 100644 +--- a/include/net/ppp_defs.h ++++ b/include/net/ppp_defs.h +@@ -38,6 +38,8 @@ + #ifndef _PPP_DEFS_H_ + #define _PPP_DEFS_H_ + ++#include <sys/time.h> ++ + /* + * The basic PPP frame. + */ +diff --git a/pppd/Makefile.linux b/pppd/Makefile.linux +index a74c914..7acd2cf 100644 +--- a/pppd/Makefile.linux ++++ b/pppd/Makefile.linux +@@ -126,7 +126,7 @@ LIBS += -lcrypt + endif + + ifdef USE_LIBUTIL +-CFLAGS += -DHAVE_LOGWTMP=1 ++#CFLAGS += -DHAVE_LOGWTMP=1 + LIBS += -lutil + endif + +diff --git a/pppd/magic.h b/pppd/magic.h +index c81213b..305aece 100644 +--- a/pppd/magic.h ++++ b/pppd/magic.h +@@ -42,6 +42,8 @@ + * $Id: magic.h,v 1.5 2003/06/11 23:56:26 paulus Exp $ + */ + ++#include <sys/cdefs.h> ++ + void magic_init __P((void)); /* Initialize the magic number generator */ + u_int32_t magic __P((void)); /* Returns the next magic number */ + +diff --git a/pppd/plugins/rp-pppoe/if.c b/pppd/plugins/rp-pppoe/if.c +index 91e9a57..9c0fac3 100644 +--- a/pppd/plugins/rp-pppoe/if.c ++++ b/pppd/plugins/rp-pppoe/if.c +@@ -30,10 +30,6 @@ static char const RCSID[] = + #include <linux/if_packet.h> + #endif + +-#ifdef HAVE_NET_ETHERNET_H +-#include <net/ethernet.h> +-#endif +- + #ifdef HAVE_ASM_TYPES_H + #include <asm/types.h> + #endif +diff --git a/pppd/plugins/rp-pppoe/plugin.c b/pppd/plugins/rp-pppoe/plugin.c +index a8c2bb4..ca34d79 100644 +--- a/pppd/plugins/rp-pppoe/plugin.c ++++ b/pppd/plugins/rp-pppoe/plugin.c +@@ -46,7 +46,6 @@ static char const RCSID[] = + #include <unistd.h> + #include <fcntl.h> + #include <signal.h> +-#include <net/ethernet.h> + #include <net/if_arp.h> + #include <linux/ppp_defs.h> + #include <linux/if_pppox.h> +diff --git a/pppd/plugins/rp-pppoe/pppoe-discovery.c b/pppd/plugins/rp-pppoe/pppoe-discovery.c +index 3d3bf4e..b5f82d3 100644 +--- a/pppd/plugins/rp-pppoe/pppoe-discovery.c ++++ b/pppd/plugins/rp-pppoe/pppoe-discovery.c +@@ -27,10 +27,6 @@ + #include <linux/if_packet.h> + #endif + +-#ifdef HAVE_NET_ETHERNET_H +-#include <net/ethernet.h> +-#endif +- + #ifdef HAVE_ASM_TYPES_H + #include <asm/types.h> + #endif +@@ -55,6 +51,8 @@ void die(int status) + exit(status); + } + ++#define error(x...) fprintf(stderr, x) ++ + /* Initialize frame types to RFC 2516 values. Some broken peers apparently + use different frame types... sigh... */ + +diff --git a/pppd/plugins/rp-pppoe/pppoe.h b/pppd/plugins/rp-pppoe/pppoe.h +index 9ab2eee..4d68147 100644 +--- a/pppd/plugins/rp-pppoe/pppoe.h ++++ b/pppd/plugins/rp-pppoe/pppoe.h +@@ -86,18 +86,6 @@ typedef unsigned long UINT32_t; + + #include <netinet/in.h> + +-#ifdef HAVE_NETINET_IF_ETHER_H +-#include <sys/types.h> +- +-#ifdef HAVE_SYS_SOCKET_H +-#include <sys/socket.h> +-#endif +-#ifndef HAVE_SYS_DLPI_H +-#include <netinet/if_ether.h> +-#endif +-#endif +- +- + + /* Ethernet frame types according to RFC 2516 */ + #define ETH_PPPOE_DISCOVERY 0x8863 +diff --git a/pppd/sys-linux.c b/pppd/sys-linux.c +index 6d71530..86d224e 100644 +--- a/pppd/sys-linux.c ++++ b/pppd/sys-linux.c +@@ -102,19 +102,11 @@ + #define MAX_ADDR_LEN 7 + #endif + +-#if __GLIBC__ >= 2 + #include <asm/types.h> /* glibc 2 conflicts with linux/types.h */ + #include <net/if.h> + #include <net/if_arp.h> + #include <net/route.h> + #include <netinet/if_ether.h> +-#else +-#include <linux/types.h> +-#include <linux/if.h> +-#include <linux/if_arp.h> +-#include <linux/route.h> +-#include <linux/if_ether.h> +-#endif + #include <netinet/in.h> + #include <arpa/inet.h> + diff --git a/user/ppp/ppp.mod b/user/ppp/ppp.mod new file mode 100644 index 000000000..e936041c6 --- /dev/null +++ b/user/ppp/ppp.mod @@ -0,0 +1,10 @@ +alias char-major-108 ppp_generic +alias /dev/ppp ppp_generic +alias tty-ldisc-3 ppp_async +alias tty-ldisc-13 n_hdlc +alias tty-ldisc-14 ppp_synctty +alias ppp-compress-18 ppp_mppe +alias ppp-compress-21 bsd_comp +alias ppp-compress-24 ppp_deflate +alias ppp-compress-26 ppp_deflate +alias net-pf-24 pppoe diff --git a/user/ppp/ppp.pamd b/user/ppp/ppp.pamd new file mode 100644 index 000000000..ac86d9512 --- /dev/null +++ b/user/ppp/ppp.pamd @@ -0,0 +1,7 @@ +# Welcome to Adélie Linux. + +# This file ensures PPP uses the system-wide PAM configuration. + +auth include base-auth +account include base-account +session include base-session-noninteractive diff --git a/user/ppp/pppd.initd b/user/ppp/pppd.initd new file mode 100644 index 000000000..30bd641da --- /dev/null +++ b/user/ppp/pppd.initd @@ -0,0 +1,13 @@ +#!/sbin/openrc-run + +name="pppd" +command="/usr/sbin/${SVCNAME}" +command_args="nodetach ${PPPD_OPTS}" +pidfile="/var/run/$SVCNAME.pid" +command_background=true + +start_pre() { + checkpath --directory /var/run/ppp + modprobe pptp +} + diff --git a/user/ppp/utmpx.patch b/user/ppp/utmpx.patch new file mode 100644 index 000000000..2914bc4be --- /dev/null +++ b/user/ppp/utmpx.patch @@ -0,0 +1,142 @@ +--- ppp-2.4.7/pppd/utils.c.old 2014-08-09 12:31:39.000000000 +0000 ++++ ppp-2.4.7/pppd/utils.c 2019-05-09 22:13:47.546342436 +0000 +@@ -41,7 +41,7 @@ + #include <syslog.h> + #include <netdb.h> + #include <time.h> +-#include <utmp.h> ++#include <utmpx.h> + #include <pwd.h> + #include <sys/param.h> + #include <sys/types.h> +--- ppp-2.4.7/pppd/auth.c.old 2019-05-09 22:07:26.737835517 +0000 ++++ ppp-2.4.7/pppd/auth.c 2019-05-09 22:14:11.833696617 +0000 +@@ -81,7 +81,7 @@ + #include <sys/types.h> + #include <sys/stat.h> + #include <sys/socket.h> +-#include <utmp.h> ++#include <utmpx.h> + #include <fcntl.h> + #if defined(_PATH_LASTLOG) && defined(__linux__) + #include <lastlog.h> +--- ppp-2.4.7/pppd/sys-linux.c.old 2019-05-09 22:07:26.747834427 +0000 ++++ ppp-2.4.7/pppd/sys-linux.c 2019-05-09 22:15:20.616203578 +0000 +@@ -85,7 +85,7 @@ + #include <string.h> + #include <time.h> + #include <memory.h> +-#include <utmp.h> ++#include <utmpx.h> + #include <mntent.h> + #include <signal.h> + #include <fcntl.h> +@@ -2230,75 +2230,6 @@ + * Update the wtmp file with the appropriate user name and tty device. + */ + +-void logwtmp (const char *line, const char *name, const char *host) +-{ +- struct utmp ut, *utp; +- pid_t mypid = getpid(); +-#if __GLIBC__ < 2 +- int wtmp; +-#endif +- +-/* +- * Update the signon database for users. +- * Christoph Lameter: Copied from poeigl-1.36 Jan 3, 1996 +- */ +- utmpname(_PATH_UTMP); +- setutent(); +- while ((utp = getutent()) && (utp->ut_pid != mypid)) +- /* nothing */; +- +- if (utp) +- memcpy(&ut, utp, sizeof(ut)); +- else +- /* some gettys/telnetds don't initialize utmp... */ +- memset(&ut, 0, sizeof(ut)); +- +- if (ut.ut_id[0] == 0) +- strncpy(ut.ut_id, line + 3, sizeof(ut.ut_id)); +- +- strncpy(ut.ut_user, name, sizeof(ut.ut_user)); +- strncpy(ut.ut_line, line, sizeof(ut.ut_line)); +- +- time(&ut.ut_time); +- +- ut.ut_type = USER_PROCESS; +- ut.ut_pid = mypid; +- +- /* Insert the host name if one is supplied */ +- if (*host) +- strncpy (ut.ut_host, host, sizeof(ut.ut_host)); +- +- /* Insert the IP address of the remote system if IP is enabled */ +- if (ipcp_protent.enabled_flag && ipcp_hisoptions[0].neg_addr) +- memcpy(&ut.ut_addr, (char *) &ipcp_hisoptions[0].hisaddr, +- sizeof(ut.ut_addr)); +- +- /* CL: Makes sure that the logout works */ +- if (*host == 0 && *name==0) +- ut.ut_host[0]=0; +- +- pututline(&ut); +- endutent(); +-/* +- * Update the wtmp file. +- */ +-#if __GLIBC__ >= 2 +- updwtmp(_PATH_WTMP, &ut); +-#else +- wtmp = open(_PATH_WTMP, O_APPEND|O_WRONLY); +- if (wtmp >= 0) { +- flock(wtmp, LOCK_EX); +- +- if (write (wtmp, (char *)&ut, sizeof(ut)) != sizeof(ut)) +- warn("error writing %s: %m", _PATH_WTMP); +- +- flock(wtmp, LOCK_UN); +- +- close (wtmp); +- } +-#endif +-} +- + + /******************************************************************** + * +--- ppp-2.4.7/pppd/tty.c.old 2014-08-09 12:31:39.000000000 +0000 ++++ ppp-2.4.7/pppd/tty.c 2019-05-09 22:15:34.854652468 +0000 +@@ -81,7 +81,7 @@ + #include <fcntl.h> + #include <syslog.h> + #include <netdb.h> +-#include <utmp.h> ++#include <utmpx.h> + #include <pwd.h> + #include <setjmp.h> + #include <sys/param.h> +--- ppp-2.4.7/pppd/session.c.old 2014-08-09 12:31:39.000000000 +0000 ++++ ppp-2.4.7/pppd/session.c 2019-05-09 22:15:52.692709222 +0000 +@@ -77,7 +77,7 @@ + #include <shadow.h> + #endif + #include <time.h> +-#include <utmp.h> ++#include <utmpx.h> + #include <fcntl.h> + #include <unistd.h> + #include "pppd.h" +--- ppp-2.4.7/pppd/main.c.old 2019-05-09 22:07:26.717837696 +0000 ++++ ppp-2.4.7/pppd/main.c 2019-05-09 22:16:06.881163559 +0000 +@@ -78,7 +78,7 @@ + #include <fcntl.h> + #include <syslog.h> + #include <netdb.h> +-#include <utmp.h> ++#include <utmpx.h> + #include <pwd.h> + #include <setjmp.h> + #include <sys/param.h> diff --git a/user/protobuf/APKBUILD b/user/protobuf/APKBUILD index f8ff737a6..af46fd009 100644 --- a/user/protobuf/APKBUILD +++ b/user/protobuf/APKBUILD @@ -1,24 +1,23 @@ # 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 +pkgver=3.7.1 _tstver=1.8.0 pkgrel=0 pkgdesc="Library for extensible, efficient structure packing" url="https://github.com/google/protobuf" arch="all" +options="!check" # Broken everywhere. 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" +makedepends="$depends_dev autoconf automake libtool ruby ruby-dev ruby-rake + ruby-rake-compiler python3 python3-dev" +checkdepends="ruby-json ruby-test-unit" +subpackages="ruby-$_gemname:_ruby py3-$pkgname:_python $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" + googletest-$_tstver.tar.gz::https://github.com/google/googletest/archive/release-$_tstver.tar.gz" prepare() { default_prepare @@ -33,8 +32,8 @@ prepare() { } build() { + # Build Protobuf cd "$builddir" - CXXFLAGS="$CXXFLAGS -fno-delete-null-pointer-checks" LDFLAGS="$LDFLAGS -latomic" \ ./configure --prefix=/usr \ --sysconfdir=/etc \ @@ -43,11 +42,10 @@ build() { --localstatedir=/var make + # Build for Ruby cd "$builddir"/ruby - # Generate proto files for built-in protocols. rake genproto - gem build $_gemname.gemspec gem install --local \ --install-dir dist \ @@ -56,7 +54,12 @@ build() { --verbose \ $_gemname - # build test-suite + # Build for Python 3 + cd "$builddir"/python + export LD_LIBRARY_PATH=${builddir}/src/.libs + python3 setup.py build --cpp_implementation + + # Build test-suite local test; for test in googletest googlemock; do cd "$builddir/third_party/googletest/$test" autoreconf -vfi @@ -65,10 +68,13 @@ build() { done } -# TODO: Run tests for ruby gem. check() { cd "$builddir" make check + cd "$builddir"/ruby + rake test + cd "$builddir"/python + python3 setup.py test --cpp_implementation } package() { @@ -93,6 +99,14 @@ _ruby() { rm -r ext/ tests/ } +_python() { + pkgdesc="Python bindings to Google's data interchange format" + + cd "$builddir"/python + python3 setup.py install --prefix=/usr --root="$subpkgdir" \ + --cpp_implementation +} + vim() { pkgdesc="Vim syntax for $pkgname" depends="" @@ -102,7 +116,5 @@ 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" +sha512sums="7d4cfabd4bd55926336a3baafa0bc1f1f15380b1b2af945f70a2bb3ba24c6ac6567f49c492326d6d1c43a488166bff178f9266377758a05d8541d8b242f4f80f protobuf-3.7.1.tar.gz +1dbece324473e53a83a60601b02c92c089f5d314761351974e097b2cf4d24af4296f9eb8653b6b03b1e363d9c5f793897acae1f0c7ac40149216035c4d395d9d googletest-1.8.0.tar.gz" diff --git a/user/protobuf/musl-fix.patch b/user/protobuf/musl-fix.patch deleted file mode 100644 index 442ca20ed..000000000 --- a/user/protobuf/musl-fix.patch +++ /dev/null @@ -1,22 +0,0 @@ -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 deleted file mode 100644 index 7f53d7099..000000000 --- a/user/protobuf/trim-rakefile.patch +++ /dev/null @@ -1,72 +0,0 @@ -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/py3-alabaster/APKBUILD b/user/py3-alabaster/APKBUILD new file mode 100644 index 000000000..65356c103 --- /dev/null +++ b/user/py3-alabaster/APKBUILD @@ -0,0 +1,34 @@ +# Contributor: Brandon Bergren <git@bdragon.rtk0.net> +# Maintainer: Brandon Bergren <git@bdragon.rtk0.net> +pkgname=py3-alabaster +_pkgname=alabaster +pkgver=0.7.12 +pkgrel=0 +pkgdesc="Default theme for Sphinx Documentation Generator" +url="https://pypi.python.org/pypi/alabaster" +arch="noarch" +# Inexact match, due to being derived work of a theme. +license="BSD-3-Clause" +depends="python3 py3-pygments" +makedepends="python3-dev" +source="$pkgname-$pkgver.tar.gz::https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz" +builddir="$srcdir/$_pkgname-$pkgver" + +build() { + cd "$builddir" + python3 setup.py build +} + +check() { + cd "$builddir" + # Zero tests currently. + python3 setup.py test +} + +package() { + cd "$builddir" + python3 setup.py install --prefix=/usr --root="$pkgdir" + +} + +sha512sums="e3bfd0c92ce01f08d5e6d9dc1ef0967ca1f54827e08756f4a0ba7be8d3b8bec7f2e53a169b831ff5ce2d2548f7f52c6e518bcc513e49bb3e4c38274293aebbac py3-alabaster-0.7.12.tar.gz" diff --git a/user/py3-babel/APKBUILD b/user/py3-babel/APKBUILD new file mode 100644 index 000000000..b9ce036aa --- /dev/null +++ b/user/py3-babel/APKBUILD @@ -0,0 +1,33 @@ +# Contributor: Brandon Bergren <git@bdragon.rtk0.net> +# Maintainer: Brandon Bergren <git@bdragon.rtk0.net> +pkgname=py3-babel +_pkgname=Babel +pkgver=2.6.0 +pkgrel=0 +pkgdesc="Internationalization tools for Python" +url="https://pypi.python.org/pypi/Babel" +arch="noarch" +license="BSD-3-Clause" +depends="python3" +makedepends="python3-dev" +checkdepends="py3-pytest py3-freezegun py3-python-dateutil py3-tz" +source="$pkgname-$pkgver.tar.gz::https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz" +builddir="$srcdir/$_pkgname-$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="a87f26c25f1e48a64d1e7ee112bc0c325a6268e0e716a81cb6814a53f0add8f3d579babd2ba064f160298ebe3ac9711aa5d28f112582ee287767b6ed8427b6e0 py3-babel-2.6.0.tar.gz" diff --git a/user/py3-cffi/APKBUILD b/user/py3-cffi/APKBUILD index 9c7e1124c..4760f7521 100644 --- a/user/py3-cffi/APKBUILD +++ b/user/py3-cffi/APKBUILD @@ -1,7 +1,8 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=py3-cffi -pkgver=1.11.5 +_pkgname=cffi +pkgver=1.12.3 pkgrel=0 pkgdesc="Interface for Python to call in to C code" url="https://cffi.readthedocs.io/" @@ -11,22 +12,19 @@ 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" +source="$pkgname-$pkgver.tar.gz::https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz" +builddir="$srcdir/$_pkgname-$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" +sha512sums="9070f5cfe543c9261a79f995548899c3e7539ee20f562ba91a4a909887745bd28448b0e38241031d6b2ab87286fd0ec91768b8bf6577716427612d41b0ed3b93 py3-cffi-1.12.3.tar.gz" diff --git a/user/py3-commonmark/APKBUILD b/user/py3-commonmark/APKBUILD new file mode 100644 index 000000000..90bc7fe56 --- /dev/null +++ b/user/py3-commonmark/APKBUILD @@ -0,0 +1,29 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: A. Wilcox <awilfox@adelielinux.org> +pkgname=py3-commonmark +_pkgname=commonmark +pkgver=0.8.1 +pkgrel=0 +pkgdesc="Python parser for the CommonMark Markdown flavour" +url="https://pypi.org/project/CommonMark/" +arch="noarch" +license="BSD-3-Clause" +depends="python3" +makedepends="" +subpackages="" +source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz" +builddir="$srcdir/$_pkgname-$pkgver" + +build() { + python3 setup.py build +} + +check() { + PYTHONPATH=. python3 setup.py test +} + +package() { + python3 setup.py install --prefix=/usr --root="$pkgdir" +} + +sha512sums="dbab51d45c1973a8d0906148d785fb8ddc2b52177dfe0e69fe79bef2a5eb05a5a7ab8693852f4aaa8545af19d741569d04a24f06ea65171e6e80d9f66af47fdf commonmark-0.8.1.tar.gz" diff --git a/user/py3-freezegun/APKBUILD b/user/py3-freezegun/APKBUILD new file mode 100644 index 000000000..4148189a0 --- /dev/null +++ b/user/py3-freezegun/APKBUILD @@ -0,0 +1,34 @@ +# Contributor: Brandon Bergren <git@bdragon.rtk0.net> +# Maintainer: Brandon Bergren <git@bdragon.rtk0.net> +pkgname=py3-freezegun +_pkgname=freezegun +pkgver=0.3.11 +pkgrel=0 +pkgdesc="Let your Python tests travel through time" +url="https://pypi.python.org/pypi/freezegun" +arch="noarch" +options="!check" # Disabled until 0.3.12 due to dependency on obsolete nose library. See https://github.com/spulec/freezegun/issues/280 +license="Apache-2.0" +depends="python3 py3-six" +makedepends="python3-dev" +checkdepends="py3-python-dateutil py3-pytest py3-mock py3-pbr" +source="$pkgname-$pkgver.tar.gz::https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz" +builddir="$srcdir/$_pkgname-$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="e8b392176641d52f6ed795c9af5fbc0a62892aeedf32b42375b56ab44a9ad7a5ecd3bb81363ed0ae65204aff2ef894cd7f2e17f42be72f31d3409b2bffa59ab8 py3-freezegun-0.3.11.tar.gz" diff --git a/user/py3-html5lib/APKBUILD b/user/py3-html5lib/APKBUILD new file mode 100644 index 000000000..f65096fad --- /dev/null +++ b/user/py3-html5lib/APKBUILD @@ -0,0 +1,33 @@ +# Contributor: Brandon Bergren <git@bdragon.rtk0.net> +# Maintainer: Brandon Bergren <git@bdragon.rtk0.net> +pkgname=py3-html5lib +_pkgname=html5lib +pkgver=1.0.1 +pkgrel=0 +pkgdesc="HTML parser based on the WHATWG HTML specification" +url="https://pypi.python.org/pypi/html5lib" +arch="noarch" +license="MIT" +depends="python3 py3-six py3-webencodings" +makedepends="python3-dev" +checkdepends="py3-pytest py3-mock py3-pytest-expect" +source="$pkgname-$pkgver.tar.gz::https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz" +builddir="$srcdir/$_pkgname-$pkgver" + +build() { + cd "$builddir" + python3 setup.py build +} + +check() { + cd "$builddir" + pytest +} + +package() { + cd "$builddir" + python3 setup.py install --prefix=/usr --root="$pkgdir" + +} + +sha512sums="35939b4450893864da04e735ee5e0addacf1dd34bae6a6909c76572abf6bfded446a78a713dfde91c1485ba45867d7abeb6a45cf0545c16ea968707be7de5dd2 py3-html5lib-1.0.1.tar.gz" diff --git a/user/py3-hypothesis/APKBUILD b/user/py3-hypothesis/APKBUILD new file mode 100644 index 000000000..808a84296 --- /dev/null +++ b/user/py3-hypothesis/APKBUILD @@ -0,0 +1,34 @@ +# Contributor: Brandon Bergren <git@bdragon.rtk0.net> +# Maintainer: Brandon Bergren <git@bdragon.rtk0.net> +pkgname=py3-hypothesis +_pkgname=hypothesis +pkgver=4.14.3 +pkgrel=0 +pkgdesc="A library for property based testing" +url="https://pypi.python.org/pypi/hypothesis" +arch="noarch" +options="!check" # Tests are missing from release packages due to possible packaging bug? +license="MPL-2.0" +depends="python3" +makedepends="python3-dev" +checkdepends="py3-pytest py3-attrs" +source="$pkgname-$pkgver.tar.gz::https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz" +builddir="$srcdir/$_pkgname-$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="6cf0713a416c51286e4c707c6b32705b2dd53ff1a5c88ceab0cdd970e8932078c9e13436ac4aa66f94a5badf0a2f93a20e8221f77cf4fb0c8b42a707b52fb0f2 py3-hypothesis-4.14.3.tar.gz" diff --git a/user/py3-imagesize/APKBUILD b/user/py3-imagesize/APKBUILD new file mode 100644 index 000000000..c47afd26f --- /dev/null +++ b/user/py3-imagesize/APKBUILD @@ -0,0 +1,33 @@ +# Contributor: Brandon Bergren <git@bdragon.rtk0.net> +# Maintainer: Brandon Bergren <git@bdragon.rtk0.net> +pkgname=py3-imagesize +_pkgname=imagesize +pkgver=1.1.0 +pkgrel=0 +pkgdesc="Parse image file header and return image size" +url="https://pypi.python.org/pypi/imagesize" +arch="noarch" +license="MIT" +depends="python3" +makedepends="python3-dev" +#subpackages="$pkgname-doc" +source="$pkgname-$pkgver.tar.gz::https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz" +builddir="$srcdir/$_pkgname-$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="11af71a5120decb88450d1bc7609e25e560e448fcaef72c273690ffe3ad06856e6a172e20738a8dd5650efe1ba8d599e797692eb5cae2b7d74a71f1f55438a03 py3-imagesize-1.1.0.tar.gz" diff --git a/user/py3-jinja2/APKBUILD b/user/py3-jinja2/APKBUILD new file mode 100644 index 000000000..5f54488f5 --- /dev/null +++ b/user/py3-jinja2/APKBUILD @@ -0,0 +1,33 @@ +# Contributor: Brandon Bergren <git@bdragon.rtk0.net> +# Maintainer: Brandon Bergren <git@bdragon.rtk0.net> +pkgname=py3-jinja2 +_pkgname=Jinja2 +pkgver=2.10 +pkgrel=0 +pkgdesc="A small but fast and easy to use stand-alone template engine written in pure python." +url="https://pypi.python.org/pypi/Jinja2" +arch="noarch" +license="BSD-3-Clause" +depends="python3" +makedepends="python3-dev" +checkdepends="py3-pytest py3-markupsafe" +source="$pkgname-$pkgver.tar.gz::https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz" +builddir="$srcdir/$_pkgname-$pkgver" + +build() { + cd "$builddir" + python3 setup.py build +} + +check() { + cd "$builddir" + PYTHONPATH="$builddir:$PYTHONPATH" pytest +} + +package() { + cd "$builddir" + python3 setup.py install --prefix=/usr --root="$pkgdir" + +} + +sha512sums="0ea7371be67ffcf19e46dfd06523a45a0806e678a407d54f5f2f3e573982f0959cf82ec5d07b203670309928a62ef71109701ab16547a9bba2ebcdc178cb67f2 py3-jinja2-2.10.tar.gz" diff --git a/user/py3-lxml/APKBUILD b/user/py3-lxml/APKBUILD index 69e4721e7..fd522ca47 100644 --- a/user/py3-lxml/APKBUILD +++ b/user/py3-lxml/APKBUILD @@ -3,25 +3,24 @@ # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=py3-lxml _pkgname=lxml -pkgver=4.2.5 +pkgver=4.3.3 pkgrel=0 pkgdesc="Python LXML Library" url="https://lxml.de/" arch="all" -license="BSD-3-Clause" options="!check" # No test suite. +license="BSD-3-Clause" +depends="" makedepends="python3-dev libxml2-dev libxslt-dev" source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz" builddir="$srcdir/$_pkgname-$pkgver" build() { - cd "$builddir" python3 setup.py build } package() { - cd "$builddir" python3 setup.py install --prefix=/usr --root="$pkgdir" } -sha512sums="4cf336d3e1471e8a26492760a143881517d12eb1c2dad82f8786540471bfabd68f8c795d97b7362166418c2be3c7996816638fdbd5a594536b9981478b90fdfe lxml-4.2.5.tar.gz" +sha512sums="cbc1cd30bac4b9ac845d99949c8c231a7870398f942695df5a00586d70d0f6b6ebd457a1a9306806af7d0fd521a14c54d266902943263927a0d940abc3cdf5c0 lxml-4.3.3.tar.gz" diff --git a/user/py3-mako/APKBUILD b/user/py3-mako/APKBUILD index ac08c1f47..0f952f32d 100644 --- a/user/py3-mako/APKBUILD +++ b/user/py3-mako/APKBUILD @@ -2,7 +2,7 @@ # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=py3-mako _pkgname=Mako -pkgver=1.0.7 +pkgver=1.0.9 pkgrel=0 pkgdesc="Fast templating language for Python" url="http://www.makotemplates.org/" @@ -10,23 +10,21 @@ arch="noarch" license="MIT" depends="python3" makedepends="python3-dev" -checkdepends="py3-pluggy py3-py py3-pytest py3-six" +checkdepends="py3-markupsafe py3-mock py3-pbr py3-pluggy py3-py py3-pytest + py3-six" source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz" builddir="$srcdir"/$_pkgname-$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="d67af6788bf8603010361ce8b6d0355b0191657c07f3b5845f9d5e91653c3e349a7b35d5b36aa9c7f291973c83911ce94075e1cad78e6935d0ed4ee9c6e2a571 Mako-1.0.7.tar.gz" +sha512sums="2b40b96edba9f1ac0c2090e5677742c1f7578d5a55ab1c09aa4198493144e30c25d6179a7bdee2d3fa12410da6c3b1105d2d70af77d4265d679f577a7e711c63 Mako-1.0.9.tar.gz" diff --git a/user/py3-markupsafe/APKBUILD b/user/py3-markupsafe/APKBUILD new file mode 100644 index 000000000..9d2c46b51 --- /dev/null +++ b/user/py3-markupsafe/APKBUILD @@ -0,0 +1,33 @@ +# Contributor: Brandon Bergren <git@bdragon.rtk0.net> +# Maintainer: Brandon Bergren <git@bdragon.rtk0.net> +pkgname=py3-markupsafe +_pkgname=MarkupSafe +pkgver=1.1.1 +pkgrel=0 +pkgdesc="Safely add untrusted strings to HTML/XML markup." +url="https://pypi.python.org/pypi/MarkupSafe" +arch="all" +license="BSD-3-Clause" +depends="python3" +makedepends="python3-dev" +checkdepends="py3-pytest" +source="$pkgname-$pkgver.tar.gz::https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz" +builddir="$srcdir/$_pkgname-$pkgver" + +build() { + cd "$builddir" + python3 setup.py build +} + +check() { + cd "$builddir" + PYTHONPATH="$PYTHONPATH:$(echo build/lib.*)" pytest +} + +package() { + cd "$builddir" + python3 setup.py install --prefix=/usr --root="$pkgdir" + +} + +sha512sums="f3014e6131a3ab866914c5635b5397ef71906bffb1b6f8c5f2ed2acf167429ff7914236d38943e872683a57a9be9669f4c5aace6274f3307ab21ef25373db0b6 py3-markupsafe-1.1.1.tar.gz" diff --git a/user/py3-packaging/APKBUILD b/user/py3-packaging/APKBUILD new file mode 100644 index 000000000..08936d2a5 --- /dev/null +++ b/user/py3-packaging/APKBUILD @@ -0,0 +1,33 @@ +# Contributor: Brandon Bergren <git@bdragon.rtk0.net> +# Maintainer: Brandon Bergren <git@bdragon.rtk0.net> +pkgname=py3-packaging +_pkgname=packaging +pkgver=19.0 +pkgrel=0 +pkgdesc="Core utilities for Python packages" +url="https://pypi.python.org/pypi/packaging" +arch="noarch" +license="Apache-2.0 AND BSD-2-Clause" +depends="python3" +makedepends="python3-dev" +checkdepends="py3-pytest py3-pretend py3-pyparsing" +source="$pkgname-$pkgver.tar.gz::https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz" +builddir="$srcdir/$_pkgname-$pkgver" + +build() { + cd "$builddir" + python3 setup.py build +} + +check() { + cd "$builddir/tests" + python3 -m pytest +} + +package() { + cd "$builddir" + python3 setup.py install --prefix=/usr --root="$pkgdir" + +} + +sha512sums="aa55b6fbca764e7de2992e294b7be9dc90b25f88b64ba0cd2d1d93042402d4360b4c2cdc134a94b083da0c0bc83de8fa7185c0856bcc96fa25828c10a793fba7 py3-packaging-19.0.tar.gz" diff --git a/user/py3-pexpect/APKBUILD b/user/py3-pexpect/APKBUILD index 10978ca79..2394872d5 100644 --- a/user/py3-pexpect/APKBUILD +++ b/user/py3-pexpect/APKBUILD @@ -1,7 +1,8 @@ # Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> # Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> pkgname=py3-pexpect -pkgver=4.6.0 +_pkgname=${pkgname#*-} +pkgver=4.7.0 pkgrel=0 pkgdesc="Python library for managing console applications" url="https://pexpect.readthedocs.io/" @@ -9,8 +10,7 @@ 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" +source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz" builddir="$srcdir/pexpect-$pkgver" build() { @@ -28,3 +28,4 @@ package() { python3 setup.py install --prefix=/usr --root="$pkgdir" } +sha512sums="4cea4229332c1f3de26dfcad596877665b3c02e91d51ca3c45c1f9b44462adb7c82abc7b76eb09a73822c2d1ccc9d812574cf79bf6bc8fb0b7d2f1093962cc3f pexpect-4.7.0.tar.gz" diff --git a/user/py3-pretend/APKBUILD b/user/py3-pretend/APKBUILD new file mode 100644 index 000000000..7cf86f96f --- /dev/null +++ b/user/py3-pretend/APKBUILD @@ -0,0 +1,34 @@ +# Contributor: Brandon Bergren <git@bdragon.rtk0.net> +# Maintainer: Brandon Bergren <git@bdragon.rtk0.net> +pkgname=py3-pretend +_pkgname=pretend +pkgver=1.0.9 +pkgrel=0 +pkgdesc="A library for stubbing in Python" +url="https://pypi.python.org/pypi/pretend" +arch="noarch" +options="!check" # Test script missing from tarball +license="BSD-3-Clause" +depends="python3" +makedepends="python3-dev" +checkdepends="py3-pytest" +source="$pkgname-$pkgver.tar.gz::https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz" +builddir="$srcdir/$_pkgname-$pkgver" + +build() { + cd "$builddir" + python3 setup.py build +} + +check() { + cd "$builddir" + python3 test_pretend.py +} + +package() { + cd "$builddir" + python3 setup.py install --prefix=/usr --root="$pkgdir" + +} + +sha512sums="25dfbc4035f7ec7088be40846847620495656ddedbc8a0111ca36e6f6cbd59f14b974403d60827363db3f11bedd38a91e84f9d494f7715e6e8cdb0abfa690a87 py3-pretend-1.0.9.tar.gz" diff --git a/user/py3-pycairo/APKBUILD b/user/py3-pycairo/APKBUILD index 87de6f166..0b725ba6e 100644 --- a/user/py3-pycairo/APKBUILD +++ b/user/py3-pycairo/APKBUILD @@ -1,12 +1,13 @@ # Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> # Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> pkgname=py3-pycairo -pkgver=1.18.0 +pkgver=1.18.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)" +depends="" makedepends="python3-dev cairo-dev meson" subpackages="$pkgname-dev" source="https://files.pythonhosted.org/packages/source/p/pycairo/pycairo-$pkgver.tar.gz" @@ -33,4 +34,4 @@ package() { DESTDIR="$pkgdir" ninja -C output install } -sha512sums="29af1eff8fc3ca942c6d7fcda8e5e004f01d1bfdab911f4ebb34213520922cf35c12d07bd18fe74a2c6d3c7f5a1aefd7fb5fe9b7cd310e6707b7451d5d5e18b0 pycairo-1.18.0.tar.gz" +sha512sums="fef6b0d863d45a182a1ba671ddc4f6cb15745447cdaed3e1efeb05fad97f02aa0a56698517648a942bde263d74e06ad7781bcf487757aeb3b124ef64dc525024 pycairo-1.18.1.tar.gz" diff --git a/user/py3-pygments/APKBUILD b/user/py3-pygments/APKBUILD index 59055ed48..699de3ca5 100644 --- a/user/py3-pygments/APKBUILD +++ b/user/py3-pygments/APKBUILD @@ -1,6 +1,6 @@ # Contributor: Peter Bui <pnutzh4x0r@gmail.com> # Contributor: Matt Smith <mcs@darkregion.net> -# Maintainer: zlg <zlg+packages@zlg.space> +# Maintainer: zlg <zlg+adelie@zlg.space> pkgname=py3-pygments _pkgname=Pygments pkgver=2.2.0 diff --git a/user/py3-pygobject/APKBUILD b/user/py3-pygobject/APKBUILD index 972b0f957..24c486a07 100644 --- a/user/py3-pygobject/APKBUILD +++ b/user/py3-pygobject/APKBUILD @@ -1,16 +1,16 @@ # Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> # Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> pkgname=py3-pygobject -pkgver=3.30.4 +pkgver=3.32.1 pkgrel=0 pkgdesc="Python bindings for GObject libraries" -url="https://pygobject.readthedocs.io/" +url="https://wiki.gnome.org/Projects/PyGObject" 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" +source="https://ftp.gnome.org/pub/GNOME/sources/pygobject/3.32/pygobject-$pkgver.tar.xz" builddir="$srcdir/pygobject-$pkgver" build() { @@ -28,4 +28,4 @@ package() { python3 setup.py install --prefix=/usr --root="$pkgdir" } -sha512sums="8c86955033690b199d12e4e853443e4078fc0eb7c2c23599aba1e083b743ae3b6c9e2031c4277c6a1140ac787540639865e743e1504dd15bf160b977b4a8dee5 pygobject-3.30.4.tar.bz2" +sha512sums="5b325d0caf4f34f783fc2c664a795809f048eb1639d2f2e375fc147c852d6e29a8ab119438cac76786fb20220c72d5859cc06d6f70c29f976f6a5914e0169915 pygobject-3.32.1.tar.xz" diff --git a/user/py3-pyparsing/APKBUILD b/user/py3-pyparsing/APKBUILD new file mode 100644 index 000000000..f84545871 --- /dev/null +++ b/user/py3-pyparsing/APKBUILD @@ -0,0 +1,34 @@ +# Contributor: Brandon Bergren <git@bdragon.rtk0.net> +# Maintainer: Brandon Bergren <git@bdragon.rtk0.net> +pkgname=py3-pyparsing +_pkgname=pyparsing +pkgver=2.3.1 +pkgrel=0 +pkgdesc="Python parsing module" +url="https://pypi.python.org/pypi/pyparsing" +arch="noarch" +options="!check" # Multiple problems in tests. +license="MIT" +depends="python3" +makedepends="python3-dev" +checkdepends="py3-pytest" +source="$pkgname-$pkgver.tar.gz::https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz" +builddir="$srcdir/$_pkgname-$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="fc8342780c38fd08c07d0b885c4d6c77d59f38098aa13c3abd05a790ee6caf2065a0bdab33bc290a6e2da123f4ac7e38c049e389b740546499dc48eba7ae431f py3-pyparsing-2.3.1.tar.gz" diff --git a/user/py3-pytest-expect/APKBUILD b/user/py3-pytest-expect/APKBUILD new file mode 100644 index 000000000..a8fcfadcf --- /dev/null +++ b/user/py3-pytest-expect/APKBUILD @@ -0,0 +1,33 @@ +# Contributor: Brandon Bergren <git@bdragon.rtk0.net> +# Maintainer: Brandon Bergren <git@bdragon.rtk0.net> +pkgname=py3-pytest-expect +_pkgname=pytest-expect +pkgver=1.1.0 +pkgrel=0 +pkgdesc="py.test plugin to store test expectations and mark tests based on them" +url="https://pypi.python.org/pypi/pytest-expect" +arch="noarch" +license="MIT" +depends="python3 py3-pytest py3-u-msgpack-python" +makedepends="python3-dev" +source="$pkgname-$pkgver.tar.gz::https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz" +builddir="$srcdir/$_pkgname-$pkgver" + +build() { + cd "$builddir" + python3 setup.py build +} + +check() { + cd "$builddir" + # No tests available + python3 setup.py test +} + +package() { + cd "$builddir" + python3 setup.py install --prefix=/usr --root="$pkgdir" + +} + +sha512sums="41d2b296844e9dab9429f34eec37fe106a4e6c2039824c37067ed048dcc328b13e666b22d3482ccfc6153af4e44b5d895f3011ec45df55ffa07a98459e3caefd py3-pytest-expect-1.1.0.tar.gz" diff --git a/user/py3-python-dateutil/APKBUILD b/user/py3-python-dateutil/APKBUILD new file mode 100644 index 000000000..0e47c9ce1 --- /dev/null +++ b/user/py3-python-dateutil/APKBUILD @@ -0,0 +1,33 @@ +# Contributor: Brandon Bergren <git@bdragon.rtk0.net> +# Maintainer: Brandon Bergren <git@bdragon.rtk0.net> +pkgname=py3-python-dateutil +_pkgname=python-dateutil +pkgver=2.8.0 +pkgrel=0 +pkgdesc="Extensions to the standard Python datetime module" +url="https://pypi.python.org/pypi/python-dateutil" +arch="noarch" +license="Apache-2.0 AND BSD-3-Clause" +depends="python3" +makedepends="python3-dev" +checkdepends="py3-pytest py3-hypothesis py3-freezegun" +source="$pkgname-$pkgver.tar.gz::https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz" +builddir="$srcdir/$_pkgname-$pkgver" + +build() { + cd "$builddir" + python3 setup.py build +} + +check() { + cd "$builddir" + pytest +} + +package() { + cd "$builddir" + python3 setup.py install --prefix=/usr --root="$pkgdir" + +} + +sha512sums="ec7da86203572582f883a4686acf8a732a2de4f396d809057eb51b2c60dbca5623a7fa90c2c0618c281a2282c60841739bd837731a51cc876f4ff369297f2f81 py3-python-dateutil-2.8.0.tar.gz" diff --git a/user/py3-recommonmark/APKBUILD b/user/py3-recommonmark/APKBUILD new file mode 100644 index 000000000..2b0d6db68 --- /dev/null +++ b/user/py3-recommonmark/APKBUILD @@ -0,0 +1,31 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: A. Wilcox <awilfox@adelielinux.org> +pkgname=py3-recommonmark +_pkgname=recommonmark +pkgver=0.5.0 +pkgrel=0 +pkgdesc="Bridge between CommonMark and docutils" +url="https://pypi.org/project/recommonmark/" +arch="noarch" +options="!check" # Test data not shipped with tarball +license="MIT" +depends="python3 py3-commonmark py3-docutils py3-sphinx" +checkdepends="py3-future" +makedepends="" +subpackages="" +source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz" +builddir="$srcdir/$_pkgname-$pkgver" + +build() { + python3 setup.py build +} + +check() { + python3 setup.py test +} + +package() { + python3 setup.py install --prefix=/usr --root="$pkgdir" +} + +sha512sums="581b3492e082ab4f0a53e50df0c9cfa3badda7ba9ee28dadbea85c55de96304257790e6aa06ebc793fba1d9ac399ce470fe821492106150b3a0db10dc734ee4b recommonmark-0.5.0.tar.gz" diff --git a/user/py3-six/APKBUILD b/user/py3-six/APKBUILD index b1c4ffadd..94ece5835 100644 --- a/user/py3-six/APKBUILD +++ b/user/py3-six/APKBUILD @@ -2,8 +2,8 @@ # Maintainer: pkgname=py3-six _pkgname=six -pkgver=1.11.0 -pkgrel=1 +pkgver=1.12.0 +pkgrel=0 pkgdesc="Python 2 compatibility library" url="https://pypi.python.org/pypi/six" arch="noarch" @@ -30,4 +30,4 @@ package() { python3 setup.py install --prefix=/usr --root="$pkgdir" } -sha512sums="f301c6e3c159fc87c121a6b860e4a24fa77ca2d23c3beb29201f7ba0ef71188d683d103fd3f44f50bc774a0682183256ac119e20463d389ebe0f481e2c4711f9 py3-six-1.11.0.tar.gz" +sha512sums="67f218ec591411b4a460e4e2744083b7e128440a50d006433cd85a7485b3f4bbf37830bee4cfd3e24194e4873f9ad251a62900e2f5fce7429d647b3df14543c3 py3-six-1.12.0.tar.gz" diff --git a/user/py3-snowballstemmer/APKBUILD b/user/py3-snowballstemmer/APKBUILD new file mode 100644 index 000000000..5e24c7788 --- /dev/null +++ b/user/py3-snowballstemmer/APKBUILD @@ -0,0 +1,33 @@ +# Contributor: Brandon Bergren <git@bdragon.rtk0.net> +# Maintainer: Brandon Bergren <git@bdragon.rtk0.net> +pkgname=py3-snowballstemmer +_pkgname=snowballstemmer +pkgver=1.2.1 +pkgrel=0 +pkgdesc="This package provides 16 stemmer algorithms (15 + Poerter English stemmer) generated from Snowball algorithms." +url="https://pypi.python.org/pypi/snowballstemmer" +arch="noarch" +options="!check" # Test script nowhere to be found +license="BSD-2-Clause" +depends="python3" +makedepends="python3-dev" +source="$pkgname-$pkgver.tar.gz::https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz" +builddir="$srcdir/$_pkgname-$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="09f860f383d84d12a83c87ef6654fba4ac10bca07e8d2ce88dd428c72754110d56a4b698e125a18818699a289455bf61cf67ea68e349ee8a12d6dfff0a3fbed9 py3-snowballstemmer-1.2.1.tar.gz" diff --git a/user/py3-sphinx-rtd-theme/APKBUILD b/user/py3-sphinx-rtd-theme/APKBUILD new file mode 100644 index 000000000..58f55ff89 --- /dev/null +++ b/user/py3-sphinx-rtd-theme/APKBUILD @@ -0,0 +1,30 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: A. Wilcox <awilfox@adelielinux.org> +pkgname=py3-sphinx-rtd-theme +_pkgname=sphinx_rtd_theme +pkgver=0.4.3 +pkgrel=0 +pkgdesc="Sphinx documentation theme: Read the Docs" +url="https://pypi.org/project/sphinx-rtd-theme/" +arch="noarch" +license="MIT" +depends="python3 py3-sphinx" +checkdepends="py3-pytest" +makedepends="" +subpackages="" +source="https://files.pythonhosted.org/packages/source/s/sphinx-rtd-theme/$_pkgname-$pkgver.tar.gz" +builddir="$srcdir/$_pkgname-$pkgver" + +build() { + python3 setup.py build +} + +check() { + python3 setup.py test +} + +package() { + python3 setup.py install --prefix=/usr --root="$pkgdir" +} + +sha512sums="44b9309ddd041181542747c70b6e180c07aaf8cd7ee9e4c7eb9e3948685b8bd578e815c022bd991cc7f4bc7d02bb3c7a6d213e5d0c2e8214aa85d50b73e53853 sphinx_rtd_theme-0.4.3.tar.gz" diff --git a/user/py3-sphinx/APKBUILD b/user/py3-sphinx/APKBUILD new file mode 100644 index 000000000..8fe5a9944 --- /dev/null +++ b/user/py3-sphinx/APKBUILD @@ -0,0 +1,49 @@ +# Contributor: Brandon Bergren <git@bdragon.rtk0.net> +# Maintainer: Brandon Bergren <git@bdragon.rtk0.net> +pkgname=py3-sphinx +_pkgname=Sphinx +pkgver=2.0.0 +pkgrel=1 +pkgdesc="Sphinx Python Documentation Generator" +url="https://pypi.python.org/pypi/Sphinx" +arch="noarch" +options="!check" # Some latex tests failing on 2.0.0 due to translation bug, see https://github.com/sphinx-doc/sphinx/pull/6218 +# Main software is BSD-2-Clause. +license="BSD-2-Clause AND BSD-3-Clause AND MIT" +depends="python3 py3-alabaster py3-babel py3-pygments py3-docutils py3-imagesize py3-jinja2 py3-packaging py3-pyparsing py3-requests py3-snowballstemmer py3-tz py3-sphinxcontrib-applehelp py3-sphinxcontrib-devhelp py3-sphinxcontrib-htmlhelp py3-sphinxcontrib-jsmath py3-sphinxcontrib-qthelp py3-sphinxcontrib-serializinghtml imagemagick" +makedepends="python3-dev" +checkdepends="py3-pytest py3-docutils py3-html5lib" +source="$pkgname-$pkgver.tar.gz::https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz" +builddir="$srcdir/$_pkgname-$pkgver" + +build() { + cd "$builddir" + python3 setup.py build +} + +check() { + cd "$builddir" + # settings borrowed from tox.ini. + PYTHONPATH="build/lib:$PYTHONPATH" PYTHONWARNINGS="all,ignore::ImportWarning:pkgutil,ignore::ImportWarning:importlib._bootstrap,ignore::ImportWarning:importlib._bootstrap_external,ignore::ImportWarning:pytest_cov.plugin,ignore::DeprecationWarning:site,ignore::DeprecationWarning:_pytest.assertion.rewrite,ignore::DeprecationWarning:_pytest.fixtures,ignore::DeprecationWarning:distutils" pytest --durations 25 +} + +package() { + cd "$builddir" + python3 setup.py install --prefix=/usr --root="$pkgdir" +} + +doc() { + cd "$builddir" + + local docdir="$subpkgdir/usr/share/doc/$pkgname" + mkdir -p "$docdir" + cp -R docs/* "$docdir" + cp *.txt "$docdir" + + local licdir="$subpkgdir/usr/share/licenses/$pkgname" + mkdir -p "$licdir" + rm -f licenses/docutils.conf + cp licenses/* "$licdir" +} + +sha512sums="283e18514262366e0aebc23f1e48ce7fa3591e48572525c832f96ec4f943463e19904c67ab06a4b3244119750c63dc496d4a4142e1e4a55e0b4ebdc748cf6aa6 py3-sphinx-2.0.0.tar.gz" diff --git a/user/py3-sphinxcontrib-applehelp/APKBUILD b/user/py3-sphinxcontrib-applehelp/APKBUILD new file mode 100644 index 000000000..20e2a4430 --- /dev/null +++ b/user/py3-sphinxcontrib-applehelp/APKBUILD @@ -0,0 +1,34 @@ +# Contributor: Brandon Bergren <git@bdragon.rtk0.net> +# Maintainer: Brandon Bergren <git@bdragon.rtk0.net> +pkgname=py3-sphinxcontrib-applehelp +_pkgname=sphinxcontrib-applehelp +pkgver=1.0.1 +pkgrel=0 +pkgdesc="A Sphinx extension to output Apple help books" +url="https://pypi.python.org/pypi/sphinxcontrib-applehelp" +arch="noarch" +options="!check" # Cyclic dependency with sphinx +license="BSD-2-Clause" +depends="python3" +makedepends="python3-dev" +checkdepends="py3-sphinx py3-pytest" +source="$pkgname-$pkgver.tar.gz::https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz" +builddir="$srcdir/$_pkgname-$pkgver" + +build() { + cd "$builddir" + python3 setup.py build +} + +check() { + cd "$builddir" + PYTHONWARNINGS="all,ignore::DeprecationWarning:docutils.io" pytest --durations 25 +} + +package() { + cd "$builddir" + python3 setup.py install --prefix=/usr --root="$pkgdir" + +} + +sha512sums="a6500bc2899f25c0b04c8649e86a6f688823e573a3f58f2b786117768e8b415acffbe79b99cff8aeb6ae3c74dd244254de120b82b7432cf61c5fabdd38f21603 py3-sphinxcontrib-applehelp-1.0.1.tar.gz" diff --git a/user/py3-sphinxcontrib-devhelp/APKBUILD b/user/py3-sphinxcontrib-devhelp/APKBUILD new file mode 100644 index 000000000..01bfdf037 --- /dev/null +++ b/user/py3-sphinxcontrib-devhelp/APKBUILD @@ -0,0 +1,34 @@ +# Contributor: Brandon Bergren <git@bdragon.rtk0.net> +# Maintainer: Brandon Bergren <git@bdragon.rtk0.net> +pkgname=py3-sphinxcontrib-devhelp +_pkgname=sphinxcontrib-devhelp +pkgver=1.0.1 +pkgrel=0 +pkgdesc="A sphinx extension to output Devhelp documents" +url="https://pypi.python.org/pypi/sphinxcontrib-devhelp" +arch="noarch" +options="!check" # Cyclic dependency with sphinx +license="BSD-2-Clause" +depends="python3" +makedepends="python3-dev" +checkdepends="py3-sphinx py3-pytest" +source="$pkgname-$pkgver.tar.gz::https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz" +builddir="$srcdir/$_pkgname-$pkgver" + +build() { + cd "$builddir" + python3 setup.py build +} + +check() { + cd "$builddir" + PYTHONWARNINGS="all,ignore::DeprecationWarning:docutils.io" pytest --durations 25 +} + +package() { + cd "$builddir" + python3 setup.py install --prefix=/usr --root="$pkgdir" + +} + +sha512sums="135d6405e330cc245391646d4055988cf762d82f6473e58c64a76f3a88e7f33a66baba366e7f29e1378320bd0c374af92b0f972bceeec8c05ad0fe652a81e984 py3-sphinxcontrib-devhelp-1.0.1.tar.gz" diff --git a/user/py3-sphinxcontrib-htmlhelp/APKBUILD b/user/py3-sphinxcontrib-htmlhelp/APKBUILD new file mode 100644 index 000000000..66e2da105 --- /dev/null +++ b/user/py3-sphinxcontrib-htmlhelp/APKBUILD @@ -0,0 +1,34 @@ +# Contributor: Brandon Bergren <git@bdragon.rtk0.net> +# Maintainer: Brandon Bergren <git@bdragon.rtk0.net> +pkgname=py3-sphinxcontrib-htmlhelp +_pkgname=sphinxcontrib-htmlhelp +pkgver=1.0.1 +pkgrel=0 +pkgdesc="A sphinx extension to output HtmlHelp" +url="https://pypi.python.org/pypi/sphinxcontrib-htmlhelp" +arch="noarch" +options="!check" # Cyclic dependency with sphinx +license="BSD-2-Clause" +depends="python3" +makedepends="python3-dev" +checkdepends="py3-sphinx py3-pytest py3-html5lib" +source="$pkgname-$pkgver.tar.gz::https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz" +builddir="$srcdir/$_pkgname-$pkgver" + +build() { + cd "$builddir" + python3 setup.py build +} + +check() { + cd "$builddir" + PYTHONWARNINGS="all,ignore::DeprecationWarning:docutils.io" pytest --durations 25 +} + +package() { + cd "$builddir" + python3 setup.py install --prefix=/usr --root="$pkgdir" + +} + +sha512sums="a364a490e5043e767a8b498b5b621f3f3c64bf15f65847097489d3d2ba8620adea2045024d5189a68d97af6f68161f714f09a712cdd9fc6d06524ea818cf2e1a py3-sphinxcontrib-htmlhelp-1.0.1.tar.gz" diff --git a/user/py3-sphinxcontrib-jsmath/APKBUILD b/user/py3-sphinxcontrib-jsmath/APKBUILD new file mode 100644 index 000000000..0a760859f --- /dev/null +++ b/user/py3-sphinxcontrib-jsmath/APKBUILD @@ -0,0 +1,34 @@ +# Contributor: Brandon Bergren <git@bdragon.rtk0.net> +# Maintainer: Brandon Bergren <git@bdragon.rtk0.net> +pkgname=py3-sphinxcontrib-jsmath +_pkgname=sphinxcontrib-jsmath +pkgver=1.0.1 +pkgrel=0 +pkgdesc="A sphinx extension which renders display math in HTML via JavaScript" +url="https://pypi.python.org/pypi/sphinxcontrib-jsmath" +arch="noarch" +options="!check" # Cyclic dependency on sphinx +license="BSD-2-Clause" +depends="python3" +makedepends="python3-dev" +checkdepends="py3-sphinx py3-pytest" +source="$pkgname-$pkgver.tar.gz::https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz" +builddir="$srcdir/$_pkgname-$pkgver" + +build() { + cd "$builddir" + python3 setup.py build +} + +check() { + cd "$builddir" + PYTHONWARNINGS="all,ignore::DeprecationWarning:docutils.io" pytest --durations 25 +} + +package() { + cd "$builddir" + python3 setup.py install --prefix=/usr --root="$pkgdir" + +} + +sha512sums="c1e6488f5c0ca4567c27ec7c597c9db321ac32ce354c4ad62fea534b2ae1c0acb183a921f46216bbc3891f14acfaac05ddf324b8fdaf99828df07bc91aa7e5c7 py3-sphinxcontrib-jsmath-1.0.1.tar.gz" diff --git a/user/py3-sphinxcontrib-qthelp/APKBUILD b/user/py3-sphinxcontrib-qthelp/APKBUILD new file mode 100644 index 000000000..9feee1eae --- /dev/null +++ b/user/py3-sphinxcontrib-qthelp/APKBUILD @@ -0,0 +1,34 @@ +# Contributor: Brandon Bergren <git@bdragon.rtk0.net> +# Maintainer: Brandon Bergren <git@bdragon.rtk0.net> +pkgname=py3-sphinxcontrib-qthelp +_pkgname=sphinxcontrib-qthelp +pkgver=1.0.2 +pkgrel=0 +pkgdesc="A Sphinx extension to output QtHelp documents." +url="https://pypi.python.org/pypi/sphinxcontrib-qthelp" +arch="noarch" +options="!check" # Cyclic dependency with sphinx +license="BSD-2-Clause" +depends="python3" +makedepends="python3-dev" +checkdepends="py3-sphinx py3-pytest" +source="$pkgname-$pkgver.tar.gz::https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz" +builddir="$srcdir/$_pkgname-$pkgver" + +build() { + cd "$builddir" + python3 setup.py build +} + +check() { + cd "$builddir" + PYTHONWARNINGS="all,ignore::DeprecationWarning:docutils.io" pytest --durations 25 +} + +package() { + cd "$builddir" + python3 setup.py install --prefix=/usr --root="$pkgdir" + +} + +sha512sums="8fe840e011fabd596194f539d27a502b77ae8a6030ae1a7646b1af9f203d3578b7420ead655297b2a752f0cb0e6803247c7a79b2ccd2d4662ed9f58398947864 py3-sphinxcontrib-qthelp-1.0.2.tar.gz" diff --git a/user/py3-sphinxcontrib-serializinghtml/APKBUILD b/user/py3-sphinxcontrib-serializinghtml/APKBUILD new file mode 100644 index 000000000..d576f8de8 --- /dev/null +++ b/user/py3-sphinxcontrib-serializinghtml/APKBUILD @@ -0,0 +1,34 @@ +# Contributor: Brandon Bergren <git@bdragon.rtk0.net> +# Maintainer: Brandon Bergren <git@bdragon.rtk0.net> +pkgname=py3-sphinxcontrib-serializinghtml +_pkgname=sphinxcontrib-serializinghtml +pkgver=1.1.3 +pkgrel=0 +pkgdesc="A Sphinx extension to output serialized HTML (json and pickle)" +url="https://pypi.python.org/pypi/sphinxcontrib-serializinghtml" +arch="noarch" +options="!check" # Cyclic dependency with sphinx +license="BSD-2-Clause" +depends="python3 py3-markupsafe" +makedepends="python3-dev" +checkdepends="py3-sphinx py3-pytest" +source="$pkgname-$pkgver.tar.gz::https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz" +builddir="$srcdir/$_pkgname-$pkgver" + +build() { + cd "$builddir" + python3 setup.py build +} + +check() { + cd "$builddir" + PYTHONWARNINGS="all,ignore::DeprecationWarning:docutils.io" pytest --durations 25 +} + +package() { + cd "$builddir" + python3 setup.py install --prefix=/usr --root="$pkgdir" + +} + +sha512sums="984d1760c61886408fe16c717aa1daea6591721928291267d519ea9c6eeab65d8a46d018a7c57aa8508ca408c9e919b7094d2580d30141ce7bacf5a18504cb55 py3-sphinxcontrib-serializinghtml-1.1.3.tar.gz" diff --git a/user/py3-twisted/APKBUILD b/user/py3-twisted/APKBUILD index e9d38cf7a..4a397f16d 100644 --- a/user/py3-twisted/APKBUILD +++ b/user/py3-twisted/APKBUILD @@ -2,7 +2,7 @@ # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=py3-twisted _pkgname=Twisted -pkgver=18.9.0 +pkgver=19.2.0 pkgrel=0 pkgdesc="Asynchronous networking framework written in Python" url="https://twistedmatrix.com/" @@ -11,7 +11,7 @@ license="MIT" depends="py3-incremental" makedepends="python3-dev" subpackages="" -source="https://files.pythonhosted.org/packages/5d/0e/a72d85a55761c2c3ff1cb968143a2fd5f360220779ed90e0fadf4106d4f2/Twisted-$pkgver.tar.bz2" +source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.bz2" builddir="$srcdir/Twisted-$pkgver" build() { @@ -29,4 +29,4 @@ package() { python3 setup.py install --prefix=/usr --root="$pkgdir" } -sha512sums="a9878750f46207b8758f5407a0e4332d9e367bd3ed4e18001825982c3ba78c56372934e634f1866805b9b9bc452698ad36396285172b61cf84da0de5efa7cc29 Twisted-18.9.0.tar.bz2" +sha512sums="46f2645e71bb8eca65c915078c7b0e71c6ed0c09deb9d947765326986b7cb7d535f2e15af23a48579d86be98d208a110c848b72803a68340b7b31a22784a62f2 Twisted-19.2.0.tar.bz2" diff --git a/user/py3-u-msgpack-python/APKBUILD b/user/py3-u-msgpack-python/APKBUILD new file mode 100644 index 000000000..1f7f03e82 --- /dev/null +++ b/user/py3-u-msgpack-python/APKBUILD @@ -0,0 +1,33 @@ +# Contributor: Brandon Bergren <git@bdragon.rtk0.net> +# Maintainer: Brandon Bergren <git@bdragon.rtk0.net> +pkgname=py3-u-msgpack-python +_pkgname=u-msgpack-python +pkgver=2.5.1 +pkgrel=0 +pkgdesc="A portable, lightweight MessagePack serializer and deserializer written in pure Python." +url="https://pypi.python.org/pypi/u-msgpack-python" +arch="noarch" +license="MIT" +depends="python3" +makedepends="python3-dev" +checkdepends="py3-pytest" +source="$pkgname-$pkgver.tar.gz::https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz" +builddir="$srcdir/$_pkgname-$pkgver" + +build() { + cd "$builddir" + python3 setup.py build +} + +check() { + cd "$builddir" + pytest +} + +package() { + cd "$builddir" + python3 setup.py install --prefix=/usr --root="$pkgdir" + +} + +sha512sums="80c9c08dd3fc7451fc84c7ba7cebada608aa7db057bedaf7875dc9c1f6771f0cd1b15dba79b1e24510e2286f792c0878b4015ba03784a41ed520139e7f27d1a9 py3-u-msgpack-python-2.5.1.tar.gz" diff --git a/user/py3-webencodings/APKBUILD b/user/py3-webencodings/APKBUILD new file mode 100644 index 000000000..8802cc1eb --- /dev/null +++ b/user/py3-webencodings/APKBUILD @@ -0,0 +1,34 @@ +# Contributor: Brandon Bergren <git@bdragon.rtk0.net> +# Maintainer: Brandon Bergren <git@bdragon.rtk0.net> +pkgname=py3-webencodings +_pkgname=webencodings +pkgver=0.5.1 +pkgrel=0 +pkgdesc="Character encoding aliases for legacy web content" +url="https://pypi.python.org/pypi/webencodings" +arch="noarch" +# Packaging error, see https://github.com/gsnedders/python-webencodings/blob/master/LICENSE +license="BSD-3-Clause" +depends="python3" +makedepends="python3-dev" +checkdepends="py3-pytest" +source="$pkgname-$pkgver.tar.gz::https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz" +builddir="$srcdir/$_pkgname-$pkgver" + +build() { + cd "$builddir" + python3 setup.py build +} + +check() { + cd "$builddir" + PYTHONPATH="build/lib:$PYTHONPATH" pytest webencodings/tests.py +} + +package() { + cd "$builddir" + python3 setup.py install --prefix=/usr --root="$pkgdir" + +} + +sha512sums="b727b01bac6ec79bca517960d27b4c0668b295f25559471b9641c2c33dab55db6dac9c990952177964c6418382c22831b14d57df5e632d51d7abf97b61f24326 py3-webencodings-0.5.1.tar.gz" diff --git a/user/qca/APKBUILD b/user/qca/APKBUILD index 4eaf94630..cd0210d0b 100644 --- a/user/qca/APKBUILD +++ b/user/qca/APKBUILD @@ -1,8 +1,8 @@ # Contributor: William Pitcock <nenolod@dereferenced.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=qca -pkgver=2.1.3 -pkgrel=6 +pkgver=2.2.1 +pkgrel=0 pkgdesc="Qt cryptographic architecture" url="https://userbase.kde.org/QCA" arch="all" @@ -10,7 +10,7 @@ license="LGPL-2.1+" depends="" makedepends="cmake cyrus-sasl-dev qt5-qtbase-dev" subpackages="$pkgname-dev $pkgname-doc" -source="https://download.kde.org/stable/qca/$pkgver/src/qca-${pkgver}.tar.xz" +source="https://download.kde.org/stable/qca/$pkgver/qca-${pkgver}.tar.xz" build() { cd "$builddir" @@ -31,4 +31,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="0aec277e0695da2e45298f0a9006213829fe4c449a79969e472947db54f45000ba6e22361b782465bdc03f269b7301d318c843f5a83db459a118e58a03f3116a qca-2.1.3.tar.xz" +sha512sums="3a0e8aa7cf3ea9a7244facaf1d521ebca2753af37636e7bf5f21c57ae880ac9682ae7d6d9fa5ce41b73568ff9538214956b89cd41228c2cb828d9068c2031a9c qca-2.2.1.tar.xz" diff --git a/user/qpdf/APKBUILD b/user/qpdf/APKBUILD index 663813fcc..df20bbe25 100644 --- a/user/qpdf/APKBUILD +++ b/user/qpdf/APKBUILD @@ -1,6 +1,6 @@ # Maintainer: pkgname=qpdf -pkgver=8.4.0 +pkgver=8.4.2 pkgrel=0 pkgdesc="Command-line tools and library for transforming PDF files" url="http://qpdf.sourceforge.net" @@ -57,4 +57,4 @@ fix_qdf() { mv "$pkgdir"/usr/bin/fix-qdf "$subpkgdir"/usr/bin/ } -sha512sums="13225c6285311e8fe89970971b082b9613e70d474ee71dd5572f1ae268234d366c2c9c7bf427c4758a746a1a27ecc0127d31044ab501dbc08885c8aa0a514028 qpdf-8.4.0.tar.gz" +sha512sums="9cde046fb5e42dc331933294155583fb20408704a0cab3075cc3e97bd4643e3178e4162b8de7434aa2304097e7734f985fdc8e7b05cc028c37193dce91797f7a qpdf-8.4.2.tar.gz" diff --git a/user/qt-creator/APKBUILD b/user/qt-creator/APKBUILD index 1ef39bd3f..1c6203faf 100644 --- a/user/qt-creator/APKBUILD +++ b/user/qt-creator/APKBUILD @@ -2,7 +2,7 @@ # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=qt-creator pkgver=4.8.2 -pkgrel=0 +pkgrel=1 pkgdesc="Cross-platform multi-language programming IDE" url="https://doc.qt.io/qtcreator/index.html" arch="all" @@ -10,7 +10,7 @@ options="!check" # No test suite. license="LGPL-2.0 WITH Qt-LGPL-exception-1.1" depends="qt5-qtquickcontrols" makedepends="qt5-qtbase-dev qt5-qtdeclarative-dev qt5-qtserialport-dev - qt5-qtscript-dev qt5-qttools-dev clang-dev llvm7-dev python3 + qt5-qtscript-dev qt5-qttools-dev clang-dev llvm8-dev python3 libexecinfo-dev" subpackages="$pkgname-dev" source="https://download.qt.io/official_releases/qtcreator/${pkgver%.*}/$pkgver/qt-creator-opensource-src-$pkgver.tar.gz" @@ -21,7 +21,9 @@ build() { cd "$builddir" export LLVM_INSTALL_DIR=/usr qmake -r "QMAKE_CFLAGS += $CFLAGS" "QMAKE_CXXFLAGS += $CXXFLAGS" "QMAKE_LFLAGS += $LDFLAGS" "QMAKE_LIBS += -lexecinfo" - make + ln -s /usr/bin/python3 "$srcdir"/python + PATH="$PATH:$srcdir" make + rm "$srcdir"/python } package() { diff --git a/user/qt5ct/APKBUILD b/user/qt5ct/APKBUILD index faf9c6455..98328624a 100644 --- a/user/qt5ct/APKBUILD +++ b/user/qt5ct/APKBUILD @@ -1,7 +1,7 @@ # Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> # Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> pkgname=qt5ct -pkgver=0.37 +pkgver=0.39 pkgrel=0 pkgdesc="GUI utility for configuring Qt5" url="https://sourceforge.net/projects/qt5ct/" @@ -23,4 +23,4 @@ package() { make INSTALL_ROOT="$pkgdir" install } -sha512sums="685716b2e756ff433f5092cda981ef665ca5a44ad009745f51b38278c3d8eed6939fc52c6cf1f09046ab0a3910261892d7cf5250360874e2d7e4f12bff692da7 qt5ct-0.37.tar.bz2" +sha512sums="ea7a4f34bae5aac622bcf9171982a16a982c8318d8c218c97e452e9fa7f4ea39018d269b2c62467830642961f873d9464c5a93a88529562340f13582436bdf65 qt5ct-0.39.tar.bz2" diff --git a/user/quassel/APKBUILD b/user/quassel/APKBUILD index 695fd4e4b..f9f583de7 100644 --- a/user/quassel/APKBUILD +++ b/user/quassel/APKBUILD @@ -2,7 +2,7 @@ # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=quassel pkgver=0.13.1 -pkgrel=0 +pkgrel=1 pkgdesc="Modern, cross-platform IRC client" url="https://quassel-irc.org/" arch="all" @@ -14,7 +14,9 @@ makedepends="qt5-qtbase-dev qt5-qtmultimedia-dev libdbusmenu-qt-dev sonnet-dev kwidgetsaddons-dev qca-dev qt5-qttools-dev zlib-dev libexecinfo-dev" langdir="/usr/share/quassel/translations" subpackages="$pkgname-core $pkgname-client $pkgname-lang" -source="https://quassel-irc.org/pub/quassel-$pkgver.tar.bz2" +source="https://quassel-irc.org/pub/quassel-$pkgver.tar.bz2 + unterminated-mIRC-codes.patch + " # secfixes: # 0.12.5-r0: @@ -74,4 +76,5 @@ core() { mv "$pkgdir"/usr/bin/quasselcore "$subpkgdir"/usr/bin/ } -sha512sums="4ed55e81b1638c8851ddae5d9c9d23a1c2cea92f307e19f426873c2600d8e183898d3ed7c290f2ea5d1b8c5e1be7f9ffcc3e8c3c0193d080fc879b10cc3a962c quassel-0.13.1.tar.bz2" +sha512sums="4ed55e81b1638c8851ddae5d9c9d23a1c2cea92f307e19f426873c2600d8e183898d3ed7c290f2ea5d1b8c5e1be7f9ffcc3e8c3c0193d080fc879b10cc3a962c quassel-0.13.1.tar.bz2 +7f5ffa64d0620061ac2b6eab2e163d5862d43b16e3d7572415b5819f9ee19a5482791c3cee20c3b99722f05ffed3f1f3ba6c82e7f78b6bea9170037675dd3b4a unterminated-mIRC-codes.patch" diff --git a/user/quassel/unterminated-mIRC-codes.patch b/user/quassel/unterminated-mIRC-codes.patch new file mode 100644 index 000000000..8cedeb461 --- /dev/null +++ b/user/quassel/unterminated-mIRC-codes.patch @@ -0,0 +1,40 @@ +From 391cdf6c2595060ff3b2adb54f5b2fc8ebd7cc04 Mon Sep 17 00:00:00 2001 +From: "A. Wilcox" <AWilcox@Wilcox-Tech.com> +Date: Mon, 3 Jun 2019 00:16:30 -0500 +Subject: [PATCH] multilineedit: handle unterminated mIRC codes + +Currently, if an unterminated mIRC code is pasted into Quassel, trying to +go through input line history will cause a deadlock. This breaks the loop +at the cost of possibly mangling the formatting of the line somewhat. +This is seen as more acceptable than locking up, and the line is invalid +anyway. + +Reproducer: + +```sh +printf '\00303,08HONK' | xclip -selection clipboard +``` + +Paste into Quassel, send, press Up arrow key. +--- + src/uisupport/multilineedit.cpp | 4 ++++ + 1 file changed, 4 insertions(+) + +diff --git a/src/uisupport/multilineedit.cpp b/src/uisupport/multilineedit.cpp +index 133a2433..b13834c5 100644 +--- a/src/uisupport/multilineedit.cpp ++++ b/src/uisupport/multilineedit.cpp +@@ -645,6 +645,10 @@ QString MultiLineEdit::convertMircCodesToHtml(const QString &text) + } + + posRight = text.indexOf(mircCode.cap(), posRight + 1); ++ if (posRight == -1) { ++ words << text.mid(posLeft); ++ break; // unclosed color code; can't process ++ } + words << text.mid(posLeft, posRight + 1 - posLeft); + posLeft = posRight + 1; + } +-- +2.21.0 + diff --git a/user/quaternion/APKBUILD b/user/quaternion/APKBUILD index 363e30f5c..4b19bab1e 100644 --- a/user/quaternion/APKBUILD +++ b/user/quaternion/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=quaternion -pkgver=0.0.9.3 +pkgver=0.0.9.4a pkgrel=0 pkgdesc="Qt5-based Matrix chat client" url="https://matrix.org/docs/projects/client/quaternion.html" @@ -9,13 +9,12 @@ arch="all" license="GPL-3.0+" depends="qt5-qtquickcontrols" makedepends="cmake libqmatrixclient-dev qt5-qtbase-dev qt5-qtdeclarative-dev - qt5-qttools-dev" + qt5-qtmultimedia-dev qt5-qttools-dev" subpackages="" -source="quaternion-$pkgver.tar.gz::https://github.com/QMatrixClient/Quaternion/archive/v$pkgver.tar.gz" -builddir="$srcdir/Quaternion-$pkgver" +source="quaternion-$pkgver.tar.gz::https://github.com/QMatrixClient/Quaternion/archive/${pkgver/_/-}.tar.gz" +builddir="$srcdir/Quaternion-${pkgver/_/-}" build() { - cd "$builddir" if [ "$CBUILD" != "$CHOST" ]; then CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux" fi @@ -30,13 +29,11 @@ build() { } check() { - cd "$builddir" CTEST_OUTPUT_ON_FAILURE=TRUE ctest } package() { - cd "$builddir" make DESTDIR="$pkgdir" install } -sha512sums="3836338cddc674b3a8b6e7d8376f0136db5c548788a0e56f27023fe7b238e2c07d77bf5e5b50e49cdb011c61f05700818b6a22a394ee8d52015f5f32b3fe4d47 quaternion-0.0.9.3.tar.gz" +sha512sums="cb1cd10f34670e53c6e1bf749b647cae73f7f3c72615a71d865b0599da7d2b3cb233ce8ff7d32d92a605de4e087744b438abf19c16e0e320a5ec5463b29aa84b quaternion-0.0.9.4a.tar.gz" diff --git a/user/rc/APKBUILD b/user/rc/APKBUILD index fb05794e6..aef05b35a 100644 --- a/user/rc/APKBUILD +++ b/user/rc/APKBUILD @@ -4,7 +4,7 @@ pkgname=rc pkgver=1.7.4 pkgrel=0 pkgdesc="Reimplementation of the Plan 9 shell" -url="http://tobold.org/article/rc" +url="http://static.tobold.org/rc" arch="all" license="Zlib" depends="" @@ -13,7 +13,6 @@ subpackages="$pkgname-doc" source="http://static.tobold.org/$pkgname/$pkgname-$pkgver.tar.gz" build() { - cd "$builddir" ./configure \ --build=$CBUILD \ --host=$CHOST \ @@ -26,12 +25,10 @@ build() { } check() { - cd "$builddir" make check } package() { - cd "$builddir" make DESTDIR="$pkgdir" install mkdir ${pkgdir}/usr/share/man mv ${pkgdir}/usr/share/man1 ${pkgdir}/usr/share/man diff --git a/user/ristretto/APKBUILD b/user/ristretto/APKBUILD index 9fded5c45..1970f15af 100644 --- a/user/ristretto/APKBUILD +++ b/user/ristretto/APKBUILD @@ -1,7 +1,7 @@ # Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> # Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> pkgname=ristretto -pkgver=0.8.3 +pkgver=0.8.4 pkgrel=0 pkgdesc="Image viewer for the XFCE desktop environment" url="https://xfce.org" @@ -35,4 +35,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="c43b48dfdf9e8ed0ea3c5f2bbac1c837881aa6a467c78377b6f53dcce030b5a3b8134a7b8cbad1008ae758295953fde50a916c284e54e8c5490158e776554514 ristretto-0.8.3.tar.bz2" +sha512sums="c5479cde66e4f0903b9b8d9b1b8f4c7cde35ebfa334e414c8202e783c332bd4bfec650f85d308c7151d31fe84b27a13bb4048290b0a82ce7b8ba4baf3e4088b8 ristretto-0.8.4.tar.bz2" diff --git a/user/rocs/APKBUILD b/user/rocs/APKBUILD index f93856aa6..6370cb46c 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.12.3 +pkgver=19.04.1 pkgrel=0 pkgdesc="Graph theory IDE" url="https://www.kde.org/applications/education/rocs/" @@ -42,4 +42,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="66bc803ec316bad8f81849acebdc67c92ab175715404253a6e82cb2ab58738bc161bbbea33b15b3d212d853d2f45acf29348d351d957820b37a9fd943ef5b655 rocs-18.12.3.tar.xz" +sha512sums="ec4ca3fe066113099a7cd241fc421ce773e17c5f732717d327a1ff08f892a3b438fefc34b18fb87d065342193bff229c51bd5543e86e59f5ac4a257c5b47f909 rocs-19.04.1.tar.xz" diff --git a/user/rrdtool/APKBUILD b/user/rrdtool/APKBUILD index f61223adc..bec89b8ca 100644 --- a/user/rrdtool/APKBUILD +++ b/user/rrdtool/APKBUILD @@ -1,19 +1,20 @@ # Contributor: Valery Kartel <valery.kartel@gmail.com> # Maintainer: pkgname=rrdtool -pkgver=1.7.1 +pkgver=1.7.2 pkgrel=0 pkgdesc="Data logging and graphing application" url="https://oss.oetiker.ch/rrdtool/" arch="all" -options="!check" # Tests fail because of CET time zone begin date changing. license="GPL-2.0+" depends="font-sony-misc" +checkdepends="bc" makedepends="cairo-dev freetype-dev groff libart-lgpl-dev libpng-dev libxml2-dev pango-dev perl-dev" subpackages="$pkgname-dev $pkgname-doc $pkgname-lang perl-rrd:perl_rrd $pkgname-cached $pkgname-cgi $pkgname-utils librrd:libs" source="https://oss.oetiker.ch/$pkgname/pub/$pkgname-$pkgver.tar.gz + disable-rpn2.patch rrdcached.initd " @@ -33,7 +34,7 @@ build() { check() { cd "$builddir" - make check + LANG=C.UTF-8 LC_ALL=C.UTF-8 TZ=UTC make check } package() { @@ -86,5 +87,6 @@ utils() { "$subpkgdir"/usr/bin } -sha512sums="ee5c9ff234493442ccd9bfc7031700483011de3e05c01e026509b699cb0d7d3e286e2046357c5fff5807f3e709043c8f218b48b43f8b126a23e228a3927d7b14 rrdtool-1.7.1.tar.gz +sha512sums="453230efc68aeb4a12842d20a9d246ba478a79c2f6bfd9693a91837c1c1136abe8af177be64fe29aa40bf84ccfce7f2f15296aefe095e89b8b62aef5a7623e29 rrdtool-1.7.2.tar.gz +47fbfa1ee974d607c15d7a49b1007ccfb6dcd2764f82236f8741b96fe1c3cdec8535f570116a2b24767e09c018177bd5ace4f2ceb39342b2baf3baec01a35dc1 disable-rpn2.patch c0c27b2c2dfa8e7ec1cb1160d2bda8d7996bbea67f4ce7779da029f583c35e5e415cf46e2a1e5cb8ed2e63d2c58a68fd7471ee6bd820db4c0f4eeeb5c252f8a3 rrdcached.initd" diff --git a/user/rrdtool/disable-rpn2.patch b/user/rrdtool/disable-rpn2.patch new file mode 100644 index 000000000..1baed862c --- /dev/null +++ b/user/rrdtool/disable-rpn2.patch @@ -0,0 +1,35 @@ +https://github.com/oetiker/rrdtool-1.x/issues/1012 +--- rrdtool-1.7.2/tests/Makefile.in.old 2019-05-27 18:46:42.000000000 +0000 ++++ rrdtool-1.7.2/tests/Makefile.in 2019-06-04 06:27:36.143871636 +0000 +@@ -537,7 +537,7 @@ + top_builddir = @top_builddir@ + top_srcdir = @top_srcdir@ + TESTS = modify1 modify2 modify3 modify4 modify5 \ +- tune1 tune2 graph1 rpn1 rpn2 \ ++ tune1 tune2 graph1 rpn1 \ + rrdcreate \ + dump-restore \ + create-with-source-1 create-with-source-2 create-with-source-3 \ +@@ -555,7 +555,7 @@ + rrdcreate \ + tune1-testa-mod1.dump tune1-testa-mod2.dump tune1-testorg.dump \ + tune2-testa-mod1.dump tune2-testorg.dump \ +- valgrind-supressions dcounter1 dcounter1.output graph1.output vformatter1 rpn1.output rpn2.output \ ++ valgrind-supressions dcounter1 dcounter1.output graph1.output vformatter1 rpn1.output \ + xport1.json.output xport1.xml.output \ + pdp-calc1 pdp-calc1-1-avg-60.output pdp-calc1-1-avg-300.output pdp-calc1-1-max-300.output + +@@ -820,13 +820,6 @@ + $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ + --log-file $$b.log --trs-file $$b.trs \ + $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ +- "$$tst" $(AM_TESTS_FD_REDIRECT) +-rpn2.log: rpn2 +- @p='rpn2'; \ +- b='rpn2'; \ +- $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ +- --log-file $$b.log --trs-file $$b.trs \ +- $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ + "$$tst" $(AM_TESTS_FD_REDIRECT) + rrdcreate.log: rrdcreate + @p='rrdcreate'; \ diff --git a/user/rrdtool/no-posix-fallocate.patch b/user/rrdtool/no-posix-fallocate.patch deleted file mode 100644 index c34c5a187..000000000 --- a/user/rrdtool/no-posix-fallocate.patch +++ /dev/null @@ -1,12 +0,0 @@ ---- rrdtool-1.4.8.orig/configure.ac -+++ rrdtool-1.4.8/configure.ac -@@ -280,9 +280,6 @@ - #include <fcntl.h>]) - AC_CHECK_FUNCS(posix_fadvise) - --dnl can we use posix_fallocate --AC_CHECK_FUNCS(posix_fallocate) -- - CONFIGURE_PART(Libintl Processing) - - AM_GNU_GETTEXT_VERSION(0.17) diff --git a/user/rttr/APKBUILD b/user/rttr/APKBUILD new file mode 100644 index 000000000..bb9b5e7b0 --- /dev/null +++ b/user/rttr/APKBUILD @@ -0,0 +1,46 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: A. Wilcox <awilfox@adelielinux.org> +pkgname=rttr +pkgver=0.9.6 +pkgrel=0 +pkgdesc="C++ reflection library" +url=" " +arch="all" +license="MIT" +depends="" +makedepends="doxygen graphviz" +subpackages="$pkgname-dev $pkgname-doc" +source="https://github.com/rttrorg/rttr/releases/download/v$pkgver/rttr-$pkgver-src.tar.gz + arm64.patch + dlclose-doesnt-work.patch + install-doc.patch + permissions.patch + " + +build() { + 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 -Wno-error=class-memaccess -DNDEBUG" \ + ${CMAKE_CROSSOPTS} + make +} + +check() { + CTEST_OUTPUT_ON_FAILURE=TRUE ctest +} + +package() { + make DESTDIR="$pkgdir" install +} + +sha512sums="7e0d4fa87f83feda0b926d4d0e52aaf0f369f25fe7e23e5ffe86c0bba159e8353cef44eed37611a81e8ccc8d6facb36942f940d0d0b965f873177d7078f91cf4 rttr-0.9.6-src.tar.gz +559b4d55109b7021082cdd15663075312d80a896325db2b6bba43bf9d3ba17ecc2152aa30617f200be904351c7f8ba188b7e7a6b29a71612b42d48a5a0535aa7 arm64.patch +76efa45715d2a6459ae3cf5a6189de414775eed11a1f6780de563005765139ae6be86e30ead63b5ef8e9a5e84ba77a4ef2b7a75ded7506c6c8d81a696a887ff3 dlclose-doesnt-work.patch +825ca43fb35f6139db13f0b01818b49bb1556a1190ac2941c643e4d438c5b458883fa2ffb64d95625125c251632da7b3d8b703141335df8883b6e186f2e6a349 install-doc.patch +905e4c62093ee3877a8a15a1cbd4bc20499e04916ce869a495cf4ef9f47aa94d56aa5ac861d0ca8b6079f2a3b398f92237dc423e452130f7c40b9a170a8aa625 permissions.patch" diff --git a/user/rttr/arm64.patch b/user/rttr/arm64.patch new file mode 100644 index 000000000..012a30b3f --- /dev/null +++ b/user/rttr/arm64.patch @@ -0,0 +1,22 @@ +From fe98842255defe9f0b922f46b2dd1c067088a1f2 Mon Sep 17 00:00:00 2001 +From: Andreas Schwab <schwab@suse.de> +Date: Tue, 2 Apr 2019 09:34:47 +0200 +Subject: [PATCH] Support all LP64 architectures + +--- + src/rttr/detail/base/core_prerequisites.h | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/rttr/detail/base/core_prerequisites.h b/src/rttr/detail/base/core_prerequisites.h +index f60d91c3..6aa29d77 100644 +--- a/src/rttr/detail/base/core_prerequisites.h ++++ b/src/rttr/detail/base/core_prerequisites.h +@@ -89,7 +89,7 @@ namespace rttr + // Architecture + ///////////////////////////////////////////////////////////////////////////////////////// + #if defined(__x86_64__) || defined(_M_X64) || defined(__powerpc64__) || defined(__alpha__) ||\ +- defined(__ia64__) || defined(__s390__) || defined(__s390x__) ++ defined(__ia64__) || defined(__s390__) || defined(__s390x__) || defined(_LP64) || defined(__LP64__) + # define RTTR_ARCH_TYPE RTTR_ARCH_64 + #else + # define RTTR_ARCH_TYPE RTTR_ARCH_32 diff --git a/user/rttr/dlclose-doesnt-work.patch b/user/rttr/dlclose-doesnt-work.patch new file mode 100644 index 000000000..146f16944 --- /dev/null +++ b/user/rttr/dlclose-doesnt-work.patch @@ -0,0 +1,94 @@ +musl doesn't support dlclose, so don't test it. + +--- rttr-0.9.6/src/unit_tests/misc/library_test.cpp.old 2018-03-26 21:31:07.000000000 +0000 ++++ rttr-0.9.6/src/unit_tests/misc/library_test.cpp 2019-04-19 00:10:52.775313358 +0000 +@@ -71,7 +71,7 @@ + CHECK(lib.get_types().size() == 0); + CHECK(lib.get_global_properties().size() == 0); + CHECK(lib.get_global_methods().size() == 0); +- CHECK(does_plugin_type_exist() == false); ++ //CHECK(does_plugin_type_exist() == false); + } + + SECTION("negative test") +@@ -102,7 +102,7 @@ + #else + #error "Don't know library suffix on this plattform!" + #endif +- CHECK(does_plugin_type_exist() == false); ++ //CHECK(does_plugin_type_exist() == false); + CHECK(lib.load() == true); + REQUIRE(lib.get_error_string().empty() == true); + CHECK(does_plugin_type_exist() == true); +@@ -110,7 +110,7 @@ + CHECK(lib.get_error_string().empty() == true); + CHECK(lib.unload() == true); + +- CHECK(does_plugin_type_exist() == false); ++ //CHECK(does_plugin_type_exist() == false); + } + } + +@@ -122,19 +122,19 @@ + { + library lib(library_name); + +- CHECK(does_plugin_type_exist() == false); ++ //CHECK(does_plugin_type_exist() == false); + CHECK(lib.load() == true); + CHECK(lib.load() == true); + + REQUIRE(lib.get_error_string().empty() == true); + CHECK(does_plugin_type_exist() == true); + +- CHECK(lib.get_types().size() > 1); ++ //CHECK(lib.get_types().size() > 1); + CHECK(lib.get_global_properties().size() == 0); + CHECK(lib.get_global_methods().size() == 0); + + CHECK(lib.unload() == true); +- CHECK(does_plugin_type_exist() == false); ++ //CHECK(does_plugin_type_exist() == false); + } + + SECTION("load the same lib from different instance multiple times") +@@ -142,7 +142,7 @@ + library lib1(library_name); + library lib2(library_name); + +- CHECK(does_plugin_type_exist() == false); ++ //CHECK(does_plugin_type_exist() == false); + + CHECK(lib1.load() == true); + CHECK(lib2.load() == true); +@@ -156,26 +156,26 @@ + + CHECK(lib2.unload() == true); + +- CHECK(does_plugin_type_exist() == false); ++ //CHECK(does_plugin_type_exist() == false); + } + + SECTION("load the same lib multiple times 2xload() and 2xunload()") + { + library lib(library_name); + +- CHECK(does_plugin_type_exist() == false); ++ //CHECK(does_plugin_type_exist() == false); + + CHECK(lib.load() == true); + CHECK(does_plugin_type_exist() == true); + + CHECK(lib.unload() == true); +- CHECK(does_plugin_type_exist() == false); ++ //CHECK(does_plugin_type_exist() == false); + + CHECK(lib.load() == true); + CHECK(does_plugin_type_exist() == true); + + CHECK(lib.unload() == true); +- CHECK(does_plugin_type_exist() == false); ++ //CHECK(does_plugin_type_exist() == false); + } + } + diff --git a/user/rttr/install-doc.patch b/user/rttr/install-doc.patch new file mode 100644 index 000000000..ec33d2440 --- /dev/null +++ b/user/rttr/install-doc.patch @@ -0,0 +1,11 @@ +--- rttr-0.9.6/doc/CMakeLists.txt.old 2018-03-26 21:30:36.000000000 +0000 ++++ rttr-0.9.6/doc/CMakeLists.txt 2019-04-19 00:14:33.471673713 +0000 +@@ -33,7 +33,7 @@ + set(DOXYGEN_INPUT_DIRECTORY "${CMAKE_SOURCE_DIR}/src/rttr \\ + ${CMAKE_CURRENT_SOURCE_DIR}" ) + set(DOXYGEN_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/doc") +-set(DOXYGEN_DOC_INSTALL_DIR "doc") ++set(DOXYGEN_DOC_INSTALL_DIR "share/doc/rttr") + set(DOXYGEN_CONFIG_FILE_IN "DoxyFile.cfg.in") + set(DOXYGEN_LAYOUT_FILE_IN "doxygen-customization/layout/DoxygenLayout.xml.in") + set(DOXYGEN_EXCLUDE "") diff --git a/user/rttr/permissions.patch b/user/rttr/permissions.patch new file mode 100644 index 000000000..f572d9f23 --- /dev/null +++ b/user/rttr/permissions.patch @@ -0,0 +1,36 @@ +--- rttr-0.9.6/CMake/config.cmake.old 2018-03-26 21:30:35.000000000 +0000 ++++ rttr-0.9.6/CMake/config.cmake 2019-04-19 02:03:32.738933898 +0000 +@@ -172,5 +172,5 @@ + + install(FILES "${LICENSE_FILE}" "${README_FILE}" + DESTINATION ${RTTR_ADDITIONAL_FILES_INSTALL_DIR} +- PERMISSIONS OWNER_READ) ++ PERMISSIONS WORLD_READ) + endif() +--- rttr-0.9.6/CMake/utility.cmake.old 2018-03-26 21:30:35.000000000 +0000 ++++ rttr-0.9.6/CMake/utility.cmake 2019-04-19 02:03:40.268125422 +0000 +@@ -165,7 +165,7 @@ + getNameOfDir(CMAKE_CURRENT_SOURCE_DIR DIRNAME) + if (${shouldInstall}) + if (NOT ${FULL_HEADER_PATH} MATCHES ".*_p.h$") # we don't want to install header files which are marked as private +- install(FILES ${FULL_HEADER_PATH} DESTINATION "include/${DIRNAME}/${REL_PATH}" PERMISSIONS OWNER_READ) ++ install(FILES ${FULL_HEADER_PATH} DESTINATION "include/${DIRNAME}/${REL_PATH}" PERMISSIONS WORLD_READ) + endif() + endif() + endforeach() +--- rttr-0.9.6/doc/CMakeLists.txt.old 2018-03-26 21:30:36.000000000 +0000 ++++ rttr-0.9.6/doc/CMakeLists.txt 2019-04-19 02:04:09.075032169 +0000 +@@ -133,11 +133,11 @@ + install(DIRECTORY "${DOXYGEN_OUTPUT_DIRECTORY}/${DOXYGEN_CUSTOM_HTML_DIR}" + DESTINATION "${DOXYGEN_DOC_INSTALL_DIR}" + PATTERN "*.*" +- PERMISSIONS OWNER_READ) ++ PERMISSIONS WORLD_READ) + + install(FILES "${DOXYGEN_OUTPUT_DIRECTORY}/${DOXYGEN_INDEX_FILE}" + DESTINATION "${DOXYGEN_DOC_INSTALL_DIR}" +- PERMISSIONS OWNER_READ) ++ PERMISSIONS WORLD_READ) + + ######################################################################################### + diff --git a/user/ruby-diff-lcs/APKBUILD b/user/ruby-diff-lcs/APKBUILD new file mode 100644 index 000000000..c6f163ada --- /dev/null +++ b/user/ruby-diff-lcs/APKBUILD @@ -0,0 +1,50 @@ +# Contributor: Jakub Jirutka <jakub@jirutka.cz> +# Maintainer: Dan Theisen <djt@hxx.in> +pkgname=ruby-diff-lcs +_gemname=${pkgname#ruby-} +pkgver=1.3 +pkgrel=1 +pkgdesc="Generate difference sets between Ruby sequences" +url="http://halostatue.github.io/diff-lcs/" +arch="noarch" +options="!check" # to avoid cyclic dependency with rspec +license="MIT" +depends="ruby" +subpackages="$pkgname-tools" +source="$pkgname-$pkgver.tar.gz::https://github.com/halostatue/$_gemname/archive/v$pkgver.tar.gz" +builddir="$srcdir/$_gemname-$pkgver" + +build() { + cd "$builddir" + gem build $_gemname.gemspec +} + +package() { + local gemdir="$pkgdir/$(ruby -e 'puts Gem.default_dir')" + local geminstdir="$gemdir/gems/$_gemname-$pkgver" + + cd "$builddir" + gem install --local \ + --install-dir "$gemdir" \ + --bindir "$pkgdir/usr/bin" \ + --ignore-dependencies \ + --no-document \ + --verbose \ + $_gemname + + # Remove unnecessary files. + cd "$gemdir" + rm -r cache/ build_info/ doc/ + cd "$geminstdir" + rm -r autotest/ docs/ spec/ Rakefile *.md *.rdoc *.txt +} + +tools() { + pkgdesc="$pkgdesc (CLI tools)" + depends="$pkgname=$pkgver-r$pkgrel" + + mkdir -p "$subpkgdir"/usr/bin + mv "$pkgdir"/usr/bin/* "$subpkgdir"/usr/bin/ +} + +sha512sums="b455f86ab006cbb823c2f8ed7fcde16c432e3783b6408ec305e57b7f4d0cf98bad586786947414ec3dc27e885b1485e534d26df19eaa9972874d78a8829b501e ruby-diff-lcs-1.3.tar.gz" diff --git a/user/ruby-diff-lcs/gemspec.patch b/user/ruby-diff-lcs/gemspec.patch new file mode 100644 index 000000000..9c0b69ecd --- /dev/null +++ b/user/ruby-diff-lcs/gemspec.patch @@ -0,0 +1,16 @@ +--- a/rspec-core.gemspec ++++ b/rspec-core.gemspec +@@ -13,11 +13,10 @@ + s.summary = "rspec-core-#{RSpec::Core::Version::STRING}" + s.description = "BDD for Ruby. RSpec runner and example groups." + +- s.files = `git ls-files -- lib/*`.split("\n") +- s.files += %w[README.md LICENSE.md Changelog.md .yardopts .document] ++ s.files = Dir['lib/**/*'] + s.test_files = [] + s.bindir = 'exe' +- s.executables = `git ls-files -- exe/*`.split("\n").map{ |f| File.basename(f) } ++ s.executables = Dir['exe/*'].map{ |f| File.basename(f) } + s.rdoc_options = ["--charset=UTF-8"] + s.require_path = "lib" + diff --git a/user/ruby-rake-compiler/APKBUILD b/user/ruby-rake-compiler/APKBUILD new file mode 100644 index 000000000..a2254eea9 --- /dev/null +++ b/user/ruby-rake-compiler/APKBUILD @@ -0,0 +1,46 @@ +# Contributor: Jakub Jirutka <jakub@jirutka.cz> +# Maintainer: Dan Theisen <djt@hxx.in> +pkgname=ruby-rake-compiler +_gemname=${pkgname#ruby-} +pkgver=1.0.7 +pkgrel=0 +pkgdesc="Provide a standard and simplified way to build and package Ruby extensions" +url="https://github.com/rake-compiler/rake-compiler" +arch="noarch" +license="MIT" +depends="ruby ruby-rake" +checkdepends="ruby-rspec" +source="$pkgname-$pkgver.tar.gz::https://github.com/rake-compiler/$_gemname/archive/v$pkgver.tar.gz + gemfile-remove-unwanted-files.patch" +builddir="$srcdir/$_gemname-$pkgver" + +build() { + cd "$builddir" + gem build $_gemname.gemspec +} + +check() { + cd "$builddir" + rspec spec +} + +package() { + local gemdir="$pkgdir/$(ruby -e 'puts Gem.default_dir')" + + cd "$builddir" + + gem install --local \ + --install-dir "$gemdir" \ + --bindir "$pkgdir/usr/bin" \ + --ignore-dependencies \ + --no-document \ + --verbose \ + $_gemname + + # Remove unnecessary files and empty directories. + cd "$gemdir" + rm -r cache build_info doc +} + +sha512sums="fa901f5cc48891f07bd8d9a27cf4e745e87d5a667dbee0c9f4b43f9564fdfe3067b9c658f10ea8bcacd32ea7320a542ef0fca9373147057472f5572a4a4c5268 ruby-rake-compiler-1.0.7.tar.gz +e68672541d62898bc72fb7e40f16bc75ed1d46eabedd18da60a6f0673d67bf63d990e191fb41d6034e3f6361662807030cbd8f0c817223a5d03c46a3a664f855 gemfile-remove-unwanted-files.patch" diff --git a/user/ruby-rake-compiler/gemfile-remove-unwanted-files.patch b/user/ruby-rake-compiler/gemfile-remove-unwanted-files.patch new file mode 100644 index 000000000..3424cd912 --- /dev/null +++ b/user/ruby-rake-compiler/gemfile-remove-unwanted-files.patch @@ -0,0 +1,26 @@ +--- a/rake-compiler.gemspec ++++ b/rake-compiler.gemspec +@@ -22,14 +22,8 @@ + s.add_development_dependency 'cucumber', '~> 1.1.4' + + # components, files and paths +- s.files = Dir.glob("features/**/*.{feature,rb}") + s.files += ["bin/rake-compiler"] + s.files += Dir.glob("lib/**/*.rb") +- s.files += ["spec/spec.opts"] +- s.files += Dir.glob("spec/**/*.rb") +- s.files += Dir.glob("tasks/**/*.rake") +- s.files += ["Rakefile", "Gemfile"] +- s.files += Dir.glob("*.{rdoc,txt,yml}") + + s.bindir = 'bin' + s.executables = ['rake-compiler'] +@@ -38,8 +32,6 @@ + + # documentation + s.rdoc_options << '--main' << 'README.rdoc' << '--title' << 'rake-compiler -- Documentation' +- +- s.extra_rdoc_files = %w(README.rdoc LICENSE.txt History.txt) + + # project information + s.homepage = 'https://github.com/rake-compiler/rake-compiler' diff --git a/user/ruby-rspec-core/APKBUILD b/user/ruby-rspec-core/APKBUILD new file mode 100644 index 000000000..34deeb73d --- /dev/null +++ b/user/ruby-rspec-core/APKBUILD @@ -0,0 +1,41 @@ +# Contributor: Jakub Jirutka <jakub@jirutka.cz> +# Maintainer: Dan Theisen <djt@hxx.in> +pkgname=ruby-rspec-core +_gemname=${pkgname#ruby-} +pkgver=3.8.0 +pkgrel=0 +pkgdesc="RSpec runner and formatters" +url="https://relishapp.com/rspec/rspec-core/" +arch="noarch" +options="!check" # rspec's tests are written in rspec +license="MIT" +depends="ruby ruby-rspec-support~=${pkgver%.*}" +source="$pkgname-$pkgver.tar.gz::https://github.com/rspec/$_gemname/archive/v$pkgver.tar.gz + gemspec.patch" +builddir="$srcdir/$_gemname-$pkgver" + +build() { + cd "$builddir" + gem build $_gemname.gemspec +} + +package() { + local gemdir="$pkgdir/$(ruby -e 'puts Gem.default_dir')" + + cd "$builddir" + gem install --local \ + --install-dir "$gemdir" \ + --bindir "$pkgdir/usr/bin" \ + --ignore-dependencies \ + --no-document \ + --verbose \ + $_gemname + + # Clean-up... + rm -r "$gemdir"/cache \ + "$gemdir"/build_info \ + "$gemdir"/doc +} + +sha512sums="6d3f431a1f9485009f5029bea967f36cb789be8cf33722b36c40df44e12a2284674c6c8af333bfe8ba8825e032576569fd42c92f798988faad732ac3a720c5e6 ruby-rspec-core-3.8.0.tar.gz +e0cbcfddcc4c73d9b9673907e3b1a785b399c0b3b213761e9dbca9fadc55d50a88389eaf561f5603bd674eb94ce9f2ecf829d884eaa77df8ef1b565c0c7f25f2 gemspec.patch" diff --git a/user/ruby-rspec-core/gemspec.patch b/user/ruby-rspec-core/gemspec.patch new file mode 100644 index 000000000..0a6cad0d0 --- /dev/null +++ b/user/ruby-rspec-core/gemspec.patch @@ -0,0 +1,16 @@ +--- a/rspec-core.gemspec ++++ b/rspec-core.gemspec +@@ -13,11 +13,10 @@ + s.summary = "rspec-core-#{RSpec::Core::Version::STRING}" + s.description = "BDD for Ruby. RSpec runner and example groups." + +- s.files = `git ls-files -- lib/*`.split("\n") +- s.files += %w[README.md LICENSE.md Changelog.md .yardopts .document] ++ s.files = Dir["lib/**/*"] + s.test_files = [] + s.bindir = 'exe' +- s.executables = `git ls-files -- exe/*`.split("\n").map{ |f| File.basename(f) } ++ s.executables = Dir["exe/*"].map{ |f| File.basename(f) } + s.rdoc_options = ["--charset=UTF-8"] + s.require_path = "lib" + diff --git a/user/ruby-rspec-expectations/APKBUILD b/user/ruby-rspec-expectations/APKBUILD new file mode 100644 index 000000000..1cf7cf5cc --- /dev/null +++ b/user/ruby-rspec-expectations/APKBUILD @@ -0,0 +1,40 @@ +# Contributor: Jakub Jirutka <jakub@jirutka.cz> +# Maintainer: Dan Theisen <djt@hxx.in> +pkgname=ruby-rspec-expectations +_gemname=${pkgname#ruby-} +pkgver=3.8.3 +pkgrel=0 +pkgdesc="Provides a readable API to express expected outcomes of a code example in RSpec" +url="https://relishapp.com/rspec/rspec-expectations/" +arch="noarch" +options="!check" # rspec's tests are written in rspec +license="MIT" +depends="ruby ruby-diff-lcs ruby-rspec-support~=${pkgver%.*}" +source="$pkgname-$pkgver.tar.gz::https://github.com/rspec/$_gemname/archive/v$pkgver.tar.gz + gemspec.patch" +builddir="$srcdir/$_gemname-$pkgver" + +build() { + cd "$builddir" + gem build $_gemname.gemspec +} + +package() { + local gemdir="$pkgdir/$(ruby -e 'puts Gem.default_dir')" + + cd "$builddir" + gem install --local \ + --install-dir "$gemdir" \ + --ignore-dependencies \ + --no-document \ + --verbose \ + $_gemname + + # Clean-up... + rm -r "$gemdir"/cache \ + "$gemdir"/build_info \ + "$gemdir"/doc +} + +sha512sums="328b3403e7ac2864ed6ad1a196ca24df6693797e35525559f2082c7e1c161d60da7776ca1a68a82364a7ea55115ac2c12ebf6af8486ef88757a4818a9683ae80 ruby-rspec-expectations-3.8.3.tar.gz +1d477004521852e23d01b197187dbb434a2c7fd179e506c82a12e17f5d52470fe2a113112e7052b9479077eafa6759beb07c03301de1f8ea7f5c4643c92d8346 gemspec.patch" diff --git a/user/ruby-rspec-expectations/gemspec.patch b/user/ruby-rspec-expectations/gemspec.patch new file mode 100644 index 000000000..644aad1ad --- /dev/null +++ b/user/ruby-rspec-expectations/gemspec.patch @@ -0,0 +1,12 @@ +--- a/rspec-expectations.gemspec ++++ b/rspec-expectations.gemspec +@@ -13,8 +13,7 @@ + s.summary = "rspec-expectations-#{RSpec::Expectations::Version::STRING}" + s.description = "rspec-expectations provides a simple, readable API to express expected outcomes of a code example." + +- s.files = `git ls-files -- lib/*`.split("\n") +- s.files += %w[README.md LICENSE.md Changelog.md .yardopts .document] ++ s.files = Dir["lib/**/*"] + s.test_files = [] + s.rdoc_options = ["--charset=UTF-8"] + s.require_path = "lib" diff --git a/user/ruby-rspec-mocks/APKBUILD b/user/ruby-rspec-mocks/APKBUILD new file mode 100644 index 000000000..70a6b801c --- /dev/null +++ b/user/ruby-rspec-mocks/APKBUILD @@ -0,0 +1,40 @@ +# Contributor: Jakub Jirutka <jakub@jirutka.cz> +# Maintainer: Dan Theisen <djt@hxx.in> +pkgname=ruby-rspec-mocks +_gemname=${pkgname#ruby-} +pkgver=3.8.0 +pkgrel=0 +pkgdesc="RSpec's 'test double' framework, with support for stubbing and mocking" +url="https://relishapp.com/rspec/rspec-mocks/" +arch="noarch" +options="!check" # rspec's tests are written in rspec +license="MIT" +depends="ruby ruby-diff-lcs ruby-rspec-support~=${pkgver%.*}" +source="$pkgname-$pkgver.tar.gz::https://github.com/rspec/$_gemname/archive/v$pkgver.tar.gz + gemspec.patch" +builddir="$srcdir/$_gemname-$pkgver" + +build() { + cd "$builddir" + gem build $_gemname.gemspec +} + +package() { + local gemdir="$pkgdir/$(ruby -e 'puts Gem.default_dir')" + + cd "$builddir" + gem install --local \ + --install-dir "$gemdir" \ + --ignore-dependencies \ + --no-document \ + --verbose \ + $_gemname + + # Clean-up... + rm -r "$gemdir"/cache \ + "$gemdir"/build_info \ + "$gemdir"/doc +} + +sha512sums="0649c3722479013aa1a20f750b3a83a9b426e5f79cb0edff995b09d1e2fa674fb8e91c0c94e7f9513f338c3c2e9c5b824a9473e91955cf928542324b8b1463ba ruby-rspec-mocks-3.8.0.tar.gz +6fd7ab08b20a93f806a8d3c42da5da0a99162793079ecb1695341a04dff2a7cefdb12592d1798fb844dfbdf8ead6ad0b8729e461d3cd5af46d853b182d15228d gemspec.patch" diff --git a/user/ruby-rspec-mocks/gemspec.patch b/user/ruby-rspec-mocks/gemspec.patch new file mode 100644 index 000000000..5d4f6e775 --- /dev/null +++ b/user/ruby-rspec-mocks/gemspec.patch @@ -0,0 +1,12 @@ +--- a/rspec-mocks.gemspec ++++ b/rspec-mocks.gemspec +@@ -13,8 +13,7 @@ + s.summary = "rspec-mocks-#{RSpec::Mocks::Version::STRING}" + s.description = "RSpec's 'test double' framework, with support for stubbing and mocking" + +- s.files = `git ls-files -- lib/*`.split("\n") +- s.files += %w[README.md LICENSE.md Changelog.md .yardopts .document] ++ s.files = Dir["lib/**/*"] + s.test_files = [] + s.rdoc_options = ["--charset=UTF-8"] + s.require_path = "lib" diff --git a/user/ruby-rspec-support/APKBUILD b/user/ruby-rspec-support/APKBUILD new file mode 100644 index 000000000..ba2389e72 --- /dev/null +++ b/user/ruby-rspec-support/APKBUILD @@ -0,0 +1,40 @@ +# Contributor: Jakub Jirutka <jakub@jirutka.cz> +# Maintainer: Dan Theisen <djt@hxx.in> +pkgname=ruby-rspec-support +_gemname=${pkgname#ruby-} +pkgver=3.8.0 +pkgrel=0 +pkgdesc="Support utilities for RSpec gems" +url="https://relishapp.com/rspec/rspec-support/" +arch="noarch" +options="!check" # rspec's tests are written in rspec +license="MIT" +depends="ruby" +source="$pkgname-$pkgver.tar.gz::https://github.com/rspec/$_gemname/archive/v$pkgver.tar.gz + gemspec.patch" +builddir="$srcdir/$_gemname-$pkgver" + +build() { + cd "$builddir" + gem build $_gemname.gemspec +} + +package() { + local gemdir="$pkgdir/$(ruby -e 'puts Gem.default_dir')" + + cd "$builddir" + gem install --local \ + --install-dir "$gemdir" \ + --ignore-dependencies \ + --no-document \ + --verbose \ + $_gemname + + # Clean-up... + rm -r "$gemdir"/cache \ + "$gemdir"/build_info \ + "$gemdir"/doc +} + +sha512sums="e16cc7bcc3de797e78c4f6ed475b0e60d492d0442dc048b4b2769a4819b80d1fb4a12aefaee3cc6a35f08d35f5fea82e00cc0fcf04363e57e74a6f5ed73d0693 ruby-rspec-support-3.8.0.tar.gz +e9d611ea1789e835f742aa92f1e668840139e2621898edf158dc53e111db4119a324da65d2d28f5c6e737c82f261f4adb3beb8c244ee01d2f618778ed62d3731 gemspec.patch" diff --git a/user/ruby-rspec-support/gemspec.patch b/user/ruby-rspec-support/gemspec.patch new file mode 100644 index 000000000..069c93729 --- /dev/null +++ b/user/ruby-rspec-support/gemspec.patch @@ -0,0 +1,12 @@ +--- a/rspec-support.gemspec ++++ b/rspec-support.gemspec +@@ -13,8 +13,7 @@ + spec.description = "Support utilities for RSpec gems" + spec.license = "MIT" + +- spec.files = `git ls-files -- lib/*`.split("\n") +- spec.files += %w[README.md LICENSE.md Changelog.md] ++ spec.files = Dir["lib/**/*"] + spec.test_files = [] + spec.rdoc_options = ["--charset=UTF-8"] + spec.require_paths = ["lib"] diff --git a/user/ruby-rspec/APKBUILD b/user/ruby-rspec/APKBUILD new file mode 100644 index 000000000..7c6f5ef10 --- /dev/null +++ b/user/ruby-rspec/APKBUILD @@ -0,0 +1,43 @@ +# Contributor: Jakub Jirutka <jakub@jirutka.cz> +# Maintainer: Dan Theisen <djt@hxx.in> +pkgname=ruby-rspec +_gemname=${pkgname#ruby-} +pkgver=3.8.0 +pkgrel=0 +pkgdesc="Behaviour Driven Development for Ruby" +url="http://rspec.info/" +arch="noarch" +options="!check" # no tests provided +license="MIT" +depends="ruby + ruby-rspec-core~=${pkgver%.*} + ruby-rspec-expectations~=${pkgver%.*} + ruby-rspec-mocks~=${pkgver%.*}" +source="$pkgname-$pkgver.tar.gz::https://github.com/rspec/$_gemname/archive/v$pkgver.tar.gz + gemspec.patch" +builddir="$srcdir/$_gemname-$pkgver" + +build() { + cd "$builddir" + gem build $_gemname.gemspec +} + +package() { + local gemdir="$pkgdir/$(ruby -e 'puts Gem.default_dir')" + + cd "$builddir" + gem install --local \ + --install-dir "$gemdir" \ + --ignore-dependencies \ + --no-document \ + --verbose \ + $_gemname + + # Clean-up... + rm -r "$gemdir"/cache \ + "$gemdir"/build_info \ + "$gemdir"/doc +} + +sha512sums="0468bfab40de2acb622c772101aef7cc71364c3414344848e90a91376106ae7597d0abcdacebe3a9fad6140780008619d9450bc0842b6e5c9e95bafb9fccae9b ruby-rspec-3.8.0.tar.gz +f554eef881574e68532dd6c9edeb6b8ad172ac707f7518134378e1099a40ada959c6c770514aab13a6345343113594208be0e42044803c0c2cde3adde00c5520 gemspec.patch" diff --git a/user/ruby-rspec/gemspec.patch b/user/ruby-rspec/gemspec.patch new file mode 100644 index 000000000..1bd3937c3 --- /dev/null +++ b/user/ruby-rspec/gemspec.patch @@ -0,0 +1,14 @@ +--- a/rspec.gemspec ++++ b/rspec.gemspec +@@ -14,10 +14,7 @@ + s.summary = "rspec-#{RSpec::Version::STRING}" + s.description = "BDD for Ruby" + +- s.files = `git ls-files -- lib/*`.split("\n") +- s.files += ["LICENSE.md"] +- s.test_files = `git ls-files -- {spec,features}/*`.split("\n") +- s.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) } ++ s.files = Dir["lib/**/*"] + s.extra_rdoc_files = [ "README.md" ] + s.rdoc_options = ["--charset=UTF-8"] + s.require_path = "lib" diff --git a/user/rust/0001-Don-t-pass-CFLAGS-to-the-C-compiler.patch b/user/rust/0001-Don-t-pass-CFLAGS-to-the-C-compiler.patch index f56ceb7e8..f6a0ddb6b 100644 --- a/user/rust/0001-Don-t-pass-CFLAGS-to-the-C-compiler.patch +++ b/user/rust/0001-Don-t-pass-CFLAGS-to-the-C-compiler.patch @@ -1,36 +1,26 @@ -From 2a82e95d73d7e86bd420c15f712b09eb104a82c1 Mon Sep 17 00:00:00 2001 +From 600b7bb76d82d2ec180051318d811ad50fd68900 Mon Sep 17 00:00:00 2001 From: Samuel Holland <samuel@sholland.org> Date: Wed, 10 Jan 2018 13:36:41 -0600 -Subject: [PATCH 01/23] Don't pass CFLAGS to the C++ compiler +Subject: [PATCH 01/13] Don't pass CFLAGS to the C++ compiler --- - src/bootstrap/builder.rs | 6 ++---- - 1 file changed, 2 insertions(+), 4 deletions(-) + src/bootstrap/builder.rs | 3 +-- + 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/bootstrap/builder.rs b/src/bootstrap/builder.rs -index 02e9ca9250..7be38b1e8b 100644 +index 522466314d..86f059a202 100644 --- a/src/bootstrap/builder.rs +++ b/src/bootstrap/builder.rs -@@ -1041,7 +1041,7 @@ impl<'a> Builder<'a> { - let cflags = self.cflags(target, GitRepo::Rustc).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()); -@@ -1056,9 +1056,7 @@ impl<'a> Builder<'a> { +@@ -1098,8 +1098,7 @@ impl<'a> Builder<'a> { + if let Ok(cxx) = self.cxx(target) { 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); +- .env(format!("CXX_{}", target), &cxx) +- .env(format!("CXXFLAGS_{}", target), cflags); ++ .env(format!("CXX_{}", target), &cxx); } } -- -2.19.2 +2.21.0 diff --git a/user/rust/0002-Fix-LLVM-build.patch b/user/rust/0002-Fix-LLVM-build.patch index 6938e0faf..8b035a02d 100644 --- a/user/rust/0002-Fix-LLVM-build.patch +++ b/user/rust/0002-Fix-LLVM-build.patch @@ -1,26 +1,26 @@ -From d70cd5b6d304cc1b6d8f245460b27b8b0e0e6869 Mon Sep 17 00:00:00 2001 +From 1359f28a3d69943ff8bcd28d0dcca4c68200ff6a Mon Sep 17 00:00:00 2001 From: Samuel Holland <samuel@sholland.org> Date: Fri, 8 Sep 2017 00:04:29 -0500 -Subject: [PATCH 02/23] Fix LLVM build +Subject: [PATCH 02/13] 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 ab3d0b5137..30e84bc13f 100644 +index fb60b470a3..71ca61d97e 100644 --- a/src/bootstrap/lib.rs +++ b/src/bootstrap/lib.rs -@@ -785,7 +785,8 @@ impl Build { +@@ -783,7 +783,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<_>>(); + .collect::<Vec<String>>(); // If we're compiling on macOS then we add a few unconditional flags -- -2.19.2 +2.21.0 diff --git a/user/rust/0003-Allow-rustdoc-to-work-when-cross-compiling-on-musl.patch b/user/rust/0003-Allow-rustdoc-to-work-when-cross-compiling-on-musl.patch index 588c4df66..1d51af2d9 100644 --- a/user/rust/0003-Allow-rustdoc-to-work-when-cross-compiling-on-musl.patch +++ b/user/rust/0003-Allow-rustdoc-to-work-when-cross-compiling-on-musl.patch @@ -1,18 +1,18 @@ -From 0613fed83ccf58ce3305a1df35e31eda25ba409e Mon Sep 17 00:00:00 2001 +From d4b81fe2c052ddd6776da36b035dbe2c2564689b Mon Sep 17 00:00:00 2001 From: Samuel Holland <samuel@sholland.org> Date: Sat, 2 Dec 2017 17:25:44 -0600 -Subject: [PATCH 03/23] Allow rustdoc to work when cross-compiling on musl +Subject: [PATCH 03/13] 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(-) + src/bootstrap/bin/rustdoc.rs | 7 ++----- + 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/src/bootstrap/bin/rustdoc.rs b/src/bootstrap/bin/rustdoc.rs -index bb5a21e3e4..1b6b78b90a 100644 +index 1c9f6e1ab2..7e90be8d8c 100644 --- a/src/bootstrap/bin/rustdoc.rs +++ b/src/bootstrap/bin/rustdoc.rs -@@ -34,9 +34,6 @@ fn main() { +@@ -23,9 +23,6 @@ fn main() { Err(_) => 0, }; @@ -22,15 +22,24 @@ index bb5a21e3e4..1b6b78b90a 100644 //FIXME(misdreavus): once stdsimd uses cfg(rustdoc) instead of cfg(dox), remove the `--cfg dox` //arguments here let mut cmd = Command::new(rustdoc); -@@ -48,7 +45,7 @@ fn main() { +@@ -37,7 +34,7 @@ fn main() { .arg("--sysroot") - .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 +@@ -86,7 +83,7 @@ fn main() { + eprintln!( + "rustdoc command: {:?}={:?} {:?}", + bootstrap::util::dylib_path_var(), +- env::join_paths(&dylib_path).unwrap(), ++ PathBuf::from(libdir.clone()), + cmd, + ); + eprintln!("sysroot: {:?}", sysroot); -- -2.19.2 +2.21.0 diff --git a/user/rust/0004-Require-static-native-libraries-when-linking-static-.patch b/user/rust/0004-Require-static-native-libraries-when-linking-static-.patch index cd01e4153..a1ee6c661 100644 --- a/user/rust/0004-Require-static-native-libraries-when-linking-static-.patch +++ b/user/rust/0004-Require-static-native-libraries-when-linking-static-.patch @@ -1,42 +1,48 @@ -From 4e6debd6806faf62ba737c01bb74080a637b127a Mon Sep 17 00:00:00 2001 +From 7f7ea1cba86a15510de2410529c8460fc5b7018b Mon Sep 17 00:00:00 2001 From: Samuel Holland <samuel@sholland.org> Date: Fri, 8 Sep 2017 00:05:18 -0500 -Subject: [PATCH 04/23] Require static native libraries when linking static +Subject: [PATCH 04/13] Require static native libraries when linking static executables -gcc/ld will create a dynamically-linked executable without warning, even -when passed `-static`, when asked to link to a `.so`. Avoid this -confusing and unintended behavior by always using the static version of -libraries when trying to link static executables. +On ELF targets like Linux, gcc/ld will create a dynamically-linked +executable without warning, even when passed `-static`, when asked to +link to a `.so`. Avoid this confusing and unintended behavior by always +using the static version of libraries when trying to link static +executables. Fixes #54243 --- - src/librustc_codegen_llvm/back/link.rs | 13 ++++++++++--- - 1 file changed, 10 insertions(+), 3 deletions(-) + src/librustc_codegen_llvm/back/link.rs | 18 ++++++++++++++---- + 1 file changed, 14 insertions(+), 4 deletions(-) diff --git a/src/librustc_codegen_llvm/back/link.rs b/src/librustc_codegen_llvm/back/link.rs -index 86c6a5e65b..0e3ff6da07 100644 +index 19419a72b9..9d26dd0b35 100644 --- a/src/librustc_codegen_llvm/back/link.rs +++ b/src/librustc_codegen_llvm/back/link.rs -@@ -1588,8 +1588,8 @@ fn add_upstream_rust_crates(cmd: &mut dyn Linker, +@@ -1408,9 +1408,7 @@ 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: +-// dependencies. We've got two cases then: ++// Link in all of our upstream crates' native dependencies. We have two cases: // // 1. The upstream crate is an rlib. In this case we *must* link in the -@@ -1633,7 +1633,14 @@ fn add_upstream_native_libraries(cmd: &mut dyn Linker, + // native dependency because the rlib is just an archive. +@@ -1453,7 +1451,19 @@ 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::CrateType::Executable && sess.crt_static() { ++ // On some targets, like Linux, linking a static executable inhibits using ++ // dylibs at all. Force native libraries to be static, even if for example ++ // an upstream rlib was originally linked against a native shared library. ++ if crate_type == config::CrateType::Executable ++ && sess.crt_static() ++ && !sess.target.target.options.crt_static_allows_dylibs ++ { + cmd.link_staticlib(&name.as_str()) + } else { + cmd.link_dylib(&name.as_str()) @@ -46,5 +52,5 @@ index 86c6a5e65b..0e3ff6da07 100644 NativeLibraryKind::NativeStaticNobundle => { // Link "static-nobundle" native libs only if the crate they originate from -- -2.19.2 +2.21.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 index 4c0a8dee0..4d70e7084 100644 --- 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 @@ -1,28 +1,29 @@ -From c822b31f554ed2f930be8625973a401fd438c123 Mon Sep 17 00:00:00 2001 +From 121e89f649b1cfe3c18dc622279dc5a79873fcdb 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/23] Remove -nostdlib and musl_root from musl targets +Subject: [PATCH 05/13] 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 ---- + config.toml.example | 6 ---- + src/bootstrap/bin/rustc.rs | 10 ------- + src/bootstrap/cc_detect.rs | 27 ++---------------- + src/bootstrap/compile.rs | 21 +------------- + src/bootstrap/config.rs | 7 ----- + src/bootstrap/configure.py | 22 --------------- + src/bootstrap/lib.rs | 8 ------ + src/bootstrap/sanity.rs | 28 ------------------- + .../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(-) + src/ci/docker/test-various/Dockerfile | 1 - + src/librustc_target/spec/linux_musl_base.rs | 16 ----------- + 13 files changed, 4 insertions(+), 152 deletions(-) diff --git a/config.toml.example b/config.toml.example -index e8cb0cba6b..1971fea758 100644 +index 8b2153cd2e..b8145ce8d5 100644 --- a/config.toml.example +++ b/config.toml.example -@@ -452,12 +452,6 @@ +@@ -474,12 +474,6 @@ # only use static libraries. If unset, the target's default linkage is used. #crt-static = false @@ -32,42 +33,35 @@ index e8cb0cba6b..1971fea758 100644 -# 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 = "..." + # The root location of the `wasm32-unknown-wasi` sysroot. + #wasi-root = "..." + diff --git a/src/bootstrap/bin/rustc.rs b/src/bootstrap/bin/rustc.rs -index b6764c1aae..6fa60bd9a5 100644 +index a76584093f..8a534ab8e2 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() { +@@ -122,16 +122,6 @@ fn main() { cmd.arg("-Cprefer-dynamic"); } -- // Help the libc crate compile by assisting it in finding the MUSL -- // native libraries. +- // Help the libc crate compile by assisting it in finding various +- // sysroot 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); +- if target.contains("musl") { +- 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)); + if let Some(s) = env::var_os("WASI_ROOT") { + let mut root = OsString::from("native="); + root.push(&s); diff --git a/src/bootstrap/cc_detect.rs b/src/bootstrap/cc_detect.rs -index d5da0cabec..47cc31bded 100644 +index dfc243b705..848d1d4b2b 100644 --- a/src/bootstrap/cc_detect.rs +++ b/src/bootstrap/cc_detect.rs -@@ -95,7 +95,7 @@ pub fn find(build: &mut Build) { +@@ -84,7 +84,7 @@ pub fn find(build: &mut Build) { if let Some(cc) = config.and_then(|c| c.cc.as_ref()) { cfg.compiler(cc); } else { @@ -76,7 +70,7 @@ index d5da0cabec..47cc31bded 100644 } let compiler = cfg.get_compiler(); -@@ -124,7 +124,7 @@ pub fn find(build: &mut Build) { +@@ -113,7 +113,7 @@ pub fn find(build: &mut Build) { if let Some(cxx) = config.and_then(|c| c.cxx.as_ref()) { cfg.compiler(cxx); } else { @@ -85,7 +79,7 @@ index d5da0cabec..47cc31bded 100644 } let compiler = cfg.get_compiler(); build.verbose(&format!("CXX_{} = {:?}", host, compiler.path())); -@@ -135,8 +135,7 @@ pub fn find(build: &mut Build) { +@@ -124,8 +124,7 @@ pub fn find(build: &mut Build) { fn set_compiler(cfg: &mut cc::Build, compiler: Language, target: Interned<String>, @@ -95,7 +89,7 @@ index d5da0cabec..47cc31bded 100644 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, +@@ -165,26 +164,6 @@ fn set_compiler(cfg: &mut cc::Build, } } @@ -123,73 +117,49 @@ index d5da0cabec..47cc31bded 100644 } } diff --git a/src/bootstrap/compile.rs b/src/bootstrap/compile.rs -index 69d45acded..7bb38ac7ec 100644 +index 66443d472d..bbaa32a91c 100644 --- a/src/bootstrap/compile.rs +++ b/src/bootstrap/compile.rs -@@ -86,13 +86,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, -@@ -101,11 +94,6 @@ impl Step for Std { - return; - } +@@ -114,20 +114,7 @@ impl Step for Std { + fn copy_third_party_objects(builder: &Builder<'_>, compiler: &Compiler, target: Interned<String>) { + let libdir = builder.sysroot_libdir(*compiler, target); -- if target.contains("musl") { -- let libdir = builder.sysroot_libdir(compiler, target); -- copy_musl_third_party_objects(builder, target, &libdir); +- // 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. +- if target.contains("musl") { +- for &obj in &["crt1.o", "crti.o", "crtn.o"] { +- builder.copy( +- &builder.musl_root(target).unwrap().join("lib").join(obj), +- &libdir.join(obj), +- ); - } -- - let mut cargo = builder.cargo(compiler, Mode::Std, target, "build"); - std_cargo(builder, &compiler, target, &mut cargo); +- } else if target.ends_with("-wasi") { ++ if target.ends_with("-wasi") { + for &obj in &["crt1.o"] { + builder.copy( + &builder.wasi_root(target).unwrap().join("lib/wasm32-wasi").join(obj), +@@ -190,12 +177,6 @@ pub fn std_cargo(builder: &Builder<'_>, + .arg("--manifest-path") + .arg(builder.src.join("src/libstd/Cargo.toml")); -@@ -126,20 +114,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, -@@ -193,11 +167,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); - } - } - } - } - +- + if target.ends_with("-wasi") { + if let Some(p) = builder.wasi_root(target) { + cargo.env("WASI_ROOT", p); diff --git a/src/bootstrap/config.rs b/src/bootstrap/config.rs -index a9d330e06a..745785a8ae 100644 +index 0c31c41ced..b8c690fc41 100644 --- a/src/bootstrap/config.rs +++ b/src/bootstrap/config.rs -@@ -136,8 +136,6 @@ pub struct Config { +@@ -133,8 +133,6 @@ pub struct Config { pub print_step_timings: bool, pub missing_tools: bool, @@ -198,15 +168,15 @@ index a9d330e06a..745785a8ae 100644 pub prefix: Option<PathBuf>, pub sysconfdir: Option<PathBuf>, pub datadir: Option<PathBuf>, -@@ -173,7 +171,6 @@ pub struct Target { +@@ -169,7 +167,6 @@ pub struct Target { pub linker: Option<PathBuf>, pub ndk: Option<PathBuf>, pub crt_static: Option<bool>, - pub musl_root: Option<PathBuf>, + pub wasi_root: Option<PathBuf>, pub qemu_rootfs: Option<PathBuf>, pub no_std: bool, - } -@@ -305,7 +302,6 @@ struct Rust { +@@ -306,7 +303,6 @@ struct Rust { backtrace: Option<bool>, default_linker: Option<String>, channel: Option<String>, @@ -214,35 +184,35 @@ index a9d330e06a..745785a8ae 100644 rpath: Option<bool>, optimize_tests: Option<bool>, debuginfo_tests: Option<bool>, -@@ -343,7 +339,6 @@ struct TomlTarget { +@@ -346,7 +342,6 @@ struct TomlTarget { linker: Option<String>, android_ndk: Option<String>, crt_static: Option<bool>, - musl_root: Option<String>, + wasi_root: Option<String>, qemu_rootfs: Option<String>, } - -@@ -560,7 +555,6 @@ impl Config { +@@ -566,7 +561,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_parallel = rust.parallel_compiler.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); -@@ -604,7 +598,6 @@ impl Config { +@@ -609,7 +603,6 @@ impl Config { target.ranlib = cfg.ranlib.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.wasi_root = cfg.wasi_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 0cf84a6298..4845e93a0e 100755 +index ade8afee7c..f9ccf7aed5 100755 --- a/src/bootstrap/configure.py +++ b/src/bootstrap/configure.py -@@ -112,28 +112,6 @@ v("aarch64-linux-android-ndk", "target.aarch64-linux-android.android-ndk", +@@ -111,28 +111,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") @@ -272,7 +242,7 @@ index 0cf84a6298..4845e93a0e 100755 "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 30e84bc13f..cf6f410ccb 100644 +index 71ca61d97e..3b53029a79 100644 --- a/src/bootstrap/lib.rs +++ b/src/bootstrap/lib.rs @@ -861,14 +861,6 @@ impl Build { @@ -287,23 +257,14 @@ index 30e84bc13f..cf6f410ccb 100644 - .map(|p| &**p) - } - - /// Returns true if this is a no-std `target`, if defined - fn no_std(&self, target: Interned<String>) -> Option<bool> { + /// Returns the sysroot for the wasi target, if defined + fn wasi_root(&self, target: Interned<String>) -> Option<&Path> { self.config.target_config.get(&target) diff --git a/src/bootstrap/sanity.rs b/src/bootstrap/sanity.rs -index 724cb5841f..5af34e441c 100644 +index b9f456e910..792c975333 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) { +@@ -171,34 +171,6 @@ pub fn check(build: &mut Build) { } } @@ -352,12 +313,12 @@ index ba2d32a929..412c37fdd1 100644 --disable-docs diff --git a/src/ci/docker/dist-various-1/Dockerfile b/src/ci/docker/dist-various-1/Dockerfile -index e2484b7224..1855b7f3e5 100644 +index a722a41839..44e6728de7 100644 --- a/src/ci/docker/dist-various-1/Dockerfile +++ b/src/ci/docker/dist-various-1/Dockerfile -@@ -116,13 +116,6 @@ ENV CC_mipsel_unknown_linux_musl=mipsel-openwrt-linux-gcc \ - CC_armebv7r_none_eabi=arm-none-eabi-gcc - +@@ -132,13 +132,6 @@ ENV CC_mipsel_unknown_linux_musl=mipsel-openwrt-linux-gcc \ + CXX_thumbv7neon_unknown_linux_gnueabihf=arm-linux-gnueabihf-g++ + ENV RUST_CONFIGURE_ARGS \ - --musl-root-armv5te=/musl-armv5te \ - --musl-root-arm=/musl-arm \ @@ -370,22 +331,34 @@ index e2484b7224..1855b7f3e5 100644 --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 +index 21a9023a45..db7c9729d0 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/ +@@ -29,7 +29,6 @@ COPY scripts/sccache.sh /scripts/ RUN sh /scripts/sccache.sh ENV RUST_CONFIGURE_ARGS \ -- --musl-root-x86_64=/musl-x86_64 \ +- --musl-root-x86_64=/usr/local/x86_64-linux-musl \ --enable-extended \ --disable-docs +diff --git a/src/ci/docker/test-various/Dockerfile b/src/ci/docker/test-various/Dockerfile +index 611a24a69b..99c2b866b1 100644 +--- a/src/ci/docker/test-various/Dockerfile ++++ b/src/ci/docker/test-various/Dockerfile +@@ -31,7 +31,6 @@ COPY scripts/sccache.sh /scripts/ + RUN sh /scripts/sccache.sh + + ENV RUST_CONFIGURE_ARGS \ +- --musl-root-x86_64=/usr/local/x86_64-linux-musl \ + --set build.nodejs=/node-v9.2.0-linux-x64/bin/node \ + --set rust.lld + diff --git a/src/librustc_target/spec/linux_musl_base.rs b/src/librustc_target/spec/linux_musl_base.rs -index 7a3f3c2a51..32fe2f880a 100644 +index e294e63982..58ae91a96a 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}; +@@ -3,28 +3,12 @@ use crate::spec::{LinkerFlavor, TargetOptions}; pub fn opts() -> TargetOptions { let mut base = super::linux_base::opts(); @@ -400,31 +373,6 @@ index 7a3f3c2a51..32fe2f880a 100644 // 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 @@ -440,5 +388,5 @@ index 7a3f3c2a51..32fe2f880a 100644 base.crt_static_default = true; // These targets allow the user to choose between static and dynamic linking. -- -2.19.2 +2.21.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 index e3a4b47cf..38065f96c 100644 --- a/user/rust/0006-Prefer-libgcc_eh-over-libunwind-for-musl.patch +++ b/user/rust/0006-Prefer-libgcc_eh-over-libunwind-for-musl.patch @@ -1,17 +1,17 @@ -From 916ce9740ddd2e41a567f821f9c0e86faa3c8269 Mon Sep 17 00:00:00 2001 +From e74e7ab193b0d59302eac1edbab423f2e83e986d 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/23] Prefer libgcc_eh over libunwind for musl +Subject: [PATCH 06/13] 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 954eb9d6d0..a127aa5d96 100644 +index 0ccffea317..935175dd8d 100644 --- a/src/libunwind/lib.rs +++ b/src/libunwind/lib.rs -@@ -36,6 +36,6 @@ cfg_if! { +@@ -26,6 +26,6 @@ cfg_if! { } #[cfg(target_env = "musl")] @@ -20,5 +20,5 @@ index 954eb9d6d0..a127aa5d96 100644 #[link(name = "gcc_s", cfg(not(target_feature = "crt-static")))] extern {} -- -2.19.2 +2.21.0 diff --git a/user/rust/0007-Add-powerpc-unknown-linux-musl-target.patch b/user/rust/0007-Add-powerpc-unknown-linux-musl-target.patch deleted file mode 100644 index f186af55f..000000000 --- a/user/rust/0007-Add-powerpc-unknown-linux-musl-target.patch +++ /dev/null @@ -1,66 +0,0 @@ -From a69d4e607d3eda390fd5c6e97022d4ef20af5676 Mon Sep 17 00:00:00 2001 -From: Samuel Holland <samuel@sholland.org> -Date: Mon, 10 Sep 2018 01:35:35 +0000 -Subject: [PATCH 07/23] Add powerpc-unknown-linux-musl target - ---- - src/librustc_target/spec/mod.rs | 1 + - .../spec/powerpc_unknown_linux_musl.rs | 34 +++++++++++++++++++ - 2 files changed, 35 insertions(+) - create mode 100644 src/librustc_target/spec/powerpc_unknown_linux_musl.rs - -diff --git a/src/librustc_target/spec/mod.rs b/src/librustc_target/spec/mod.rs -index d43d45f64a..4b03f6141f 100644 ---- a/src/librustc_target/spec/mod.rs -+++ b/src/librustc_target/spec/mod.rs -@@ -297,6 +297,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, -+ }) -+} --- -2.19.2 - diff --git a/user/rust/0012-runtest-Fix-proc-macro-tests-on-musl-hosts.patch b/user/rust/0007-runtest-Fix-proc-macro-tests-on-musl-hosts.patch index c8b2529d8..b8fa40308 100644 --- a/user/rust/0012-runtest-Fix-proc-macro-tests-on-musl-hosts.patch +++ b/user/rust/0007-runtest-Fix-proc-macro-tests-on-musl-hosts.patch @@ -1,25 +1,25 @@ -From 050dfd0e91b92cb350ca52599266cefc6c765106 Mon Sep 17 00:00:00 2001 +From cd7484e89d44ad980a526eb993c5cbc2b7f0878a Mon Sep 17 00:00:00 2001 From: Samuel Holland <samuel@sholland.org> Date: Sun, 16 Sep 2018 16:40:04 +0000 -Subject: [PATCH 12/23] runtest: Fix proc-macro tests on musl hosts +Subject: [PATCH 07/13] 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 a80bbd401a..bbe0a6fb7a 100644 +index 2021dd513a..765353620b 100644 --- a/src/tools/compiletest/src/runtest.rs +++ b/src/tools/compiletest/src/runtest.rs -@@ -1582,7 +1582,6 @@ impl<'test> TestCx<'test> { +@@ -1605,7 +1605,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") + || self.config.target.contains("nvptx") { - // We primarily compile all auxiliary libraries as dynamic libraries -@@ -1590,10 +1589,8 @@ impl<'test> TestCx<'test> { +@@ -1614,10 +1613,8 @@ impl<'test> TestCx<'test> { // for the test suite (otherwise including libstd statically in all // executables takes up quite a bit of space). // @@ -33,5 +33,5 @@ index a80bbd401a..bbe0a6fb7a 100644 } else { Some("dylib") -- -2.19.2 +2.21.0 diff --git a/user/rust/0008-Fix-powerpc64-ELFv2-big-endian-struct-passing-ABI.patch b/user/rust/0008-Fix-powerpc64-ELFv2-big-endian-struct-passing-ABI.patch deleted file mode 100644 index 1c4c813fc..000000000 --- a/user/rust/0008-Fix-powerpc64-ELFv2-big-endian-struct-passing-ABI.patch +++ /dev/null @@ -1,79 +0,0 @@ -From 8a2c9af2ea8b21d38f5ff779fde29f612bb63575 Mon Sep 17 00:00:00 2001 -From: Samuel Holland <samuel@sholland.org> -Date: Sun, 16 Sep 2018 16:34:15 +0000 -Subject: [PATCH 08/23] 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 | 29 ++++++++++------------- - src/librustc_target/abi/mod.rs | 2 +- - 2 files changed, 13 insertions(+), 18 deletions(-) - -diff --git a/src/librustc_target/abi/call/powerpc64.rs b/src/librustc_target/abi/call/powerpc64.rs -index 0c5ec77a39..934d2b1138 100644 ---- a/src/librustc_target/abi/call/powerpc64.rs -+++ b/src/librustc_target/abi/call/powerpc64.rs -@@ -75,7 +75,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() -@@ -110,22 +112,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 { -diff --git a/src/librustc_target/abi/mod.rs b/src/librustc_target/abi/mod.rs -index 1a5d2801af..0ec2cc0d7b 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.19.2 - diff --git a/user/rust/0018-test-use-extern-for-plugins-Don-t-assume-multilib.patch b/user/rust/0008-test-use-extern-for-plugins-Don-t-assume-multilib.patch index 7d63cc1cc..0fefe38cc 100644 --- a/user/rust/0018-test-use-extern-for-plugins-Don-t-assume-multilib.patch +++ b/user/rust/0008-test-use-extern-for-plugins-Don-t-assume-multilib.patch @@ -1,19 +1,19 @@ -From 8fbb4ae754fff3f4daa82ad222b3743aace0aa97 Mon Sep 17 00:00:00 2001 +From 6ad7add8f7dee0f6dac64add5d64098667a5168d Mon Sep 17 00:00:00 2001 From: Samuel Holland <samuel@sholland.org> Date: Sat, 6 Oct 2018 04:01:48 +0000 -Subject: [PATCH 18/23] test/use-extern-for-plugins: Don't assume multilib +Subject: [PATCH 08/13] 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 +index 3976da3113..567a8d3157 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))) +@@ -5,12 +5,7 @@ + # ignore-bitrig + # ignore-sunos -HOST := $(shell $(RUSTC) -vV | grep 'host:' | sed 's/host: //') -ifeq ($(findstring i686,$(HOST)),i686) @@ -26,5 +26,5 @@ index cc7bc176f4..36553f1e44 100644 all: $(RUSTC) foo.rs -C extra-filename=-host -- -2.19.2 +2.21.0 diff --git a/user/rust/0009-Use-the-ELFv2-ABI-on-powerpc64-musl.patch b/user/rust/0009-Use-the-ELFv2-ABI-on-powerpc64-musl.patch deleted file mode 100644 index c6da310da..000000000 --- a/user/rust/0009-Use-the-ELFv2-ABI-on-powerpc64-musl.patch +++ /dev/null @@ -1,50 +0,0 @@ -From 44c55a243178d34d5a21e08abc38d103e6ddb0c8 Mon Sep 17 00:00:00 2001 -From: Samuel Holland <samuel@sholland.org> -Date: Wed, 8 Aug 2018 22:06:18 -0500 -Subject: [PATCH 09/23] Use the ELFv2 ABI on powerpc64 musl - ---- - src/librustc_target/abi/call/powerpc64.rs | 15 ++++++++++----- - 1 file changed, 10 insertions(+), 5 deletions(-) - -diff --git a/src/librustc_target/abi/call/powerpc64.rs b/src/librustc_target/abi/call/powerpc64.rs -index 934d2b1138..18d14495e2 100644 ---- a/src/librustc_target/abi/call/powerpc64.rs -+++ b/src/librustc_target/abi/call/powerpc64.rs -@@ -14,11 +14,12 @@ - - 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 { - 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::*; - -@@ -131,11 +132,15 @@ 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 = if cx.target_spec().target_env == "musl" { -+ ELFv2 -+ } else { -+ match cx.data_layout().endian { -+ Endian::Big => ELFv1, -+ Endian::Little => ELFv2 -+ } - }; - - if !fty.ret.is_ignore() { --- -2.19.2 - diff --git a/user/rust/0019-test-sysroot-crates-are-unstable-Fix-test-when-rpath.patch b/user/rust/0009-test-sysroot-crates-are-unstable-Fix-test-when-rpath.patch index 4f4b42a9c..3c0bc7c5e 100644 --- a/user/rust/0019-test-sysroot-crates-are-unstable-Fix-test-when-rpath.patch +++ b/user/rust/0009-test-sysroot-crates-are-unstable-Fix-test-when-rpath.patch @@ -1,7 +1,7 @@ -From 8d74dfc55bad7461bbbc26a83c4103cc419bbf50 Mon Sep 17 00:00:00 2001 +From fb4844f8b8a546873b909490b66bde24772e4cc7 Mon Sep 17 00:00:00 2001 From: Samuel Holland <samuel@sholland.org> Date: Mon, 17 Sep 2018 01:32:20 +0000 -Subject: [PATCH 19/23] test/sysroot-crates-are-unstable: Fix test when rpath +Subject: [PATCH 09/13] test/sysroot-crates-are-unstable: Fix test when rpath is disabled Without this environment var, the test can't run rustc to find @@ -21,5 +21,5 @@ index a35174b3c2..9e77070685 100644 - python2.7 test.py + env '$(HOST_RPATH_ENV)' python2.7 test.py -- -2.19.2 +2.21.0 diff --git a/user/rust/0010-Add-powerpc64-unknown-linux-musl-target.patch b/user/rust/0010-Add-powerpc64-unknown-linux-musl-target.patch deleted file mode 100644 index a575b1345..000000000 --- a/user/rust/0010-Add-powerpc64-unknown-linux-musl-target.patch +++ /dev/null @@ -1,67 +0,0 @@ -From c0d3804aa53dee33c03ebc8b64bd6f7a7b54044c Mon Sep 17 00:00:00 2001 -From: Samuel Holland <samuel@sholland.org> -Date: Tue, 7 Aug 2018 21:59:15 -0500 -Subject: [PATCH 10/23] Add powerpc64-unknown-linux-musl target - ---- - src/librustc_target/spec/mod.rs | 1 + - .../spec/powerpc64_unknown_linux_musl.rs | 35 +++++++++++++++++++ - 2 files changed, 36 insertions(+) - create mode 100644 src/librustc_target/spec/powerpc64_unknown_linux_musl.rs - -diff --git a/src/librustc_target/spec/mod.rs b/src/librustc_target/spec/mod.rs -index 4b03f6141f..f75c4940c6 100644 ---- a/src/librustc_target/spec/mod.rs -+++ b/src/librustc_target/spec/mod.rs -@@ -299,6 +299,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, -+ }) -+} --- -2.19.2 - diff --git a/user/rust/0010-Ignore-broken-and-non-applicable-tests.patch b/user/rust/0010-Ignore-broken-and-non-applicable-tests.patch new file mode 100644 index 000000000..f1349b906 --- /dev/null +++ b/user/rust/0010-Ignore-broken-and-non-applicable-tests.patch @@ -0,0 +1,104 @@ +From 44e9b61563be6a169575358107774109f910cb9d Mon Sep 17 00:00:00 2001 +From: Samuel Holland <samuel@sholland.org> +Date: Sun, 16 Sep 2018 16:38:48 +0000 +Subject: [PATCH 10/13] Ignore broken and non-applicable tests + +c-link-to-rust-va-list-fn: unstable feature, broken on aarch64, #56475 +env-funky-keys: can't handle LD_PRELOAD (e.g. sandbox) +long-linker-command-lines: takes >10 minutes to run (but still passes) +simd-intrinsic-generic-bitmask.rs: broken on BE, #59356 +simd-intrinsic-generic-select.rs: broken on BE, #59356 +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/c-link-to-rust-va-list-fn/Makefile | 2 ++ + src/test/run-make-fulldeps/long-linker-command-lines/Makefile | 2 ++ + src/test/run-make-fulldeps/sysroot-crates-are-unstable/Makefile | 2 ++ + src/test/run-pass/env-funky-keys.rs | 1 + + src/test/run-pass/simd/simd-intrinsic-generic-bitmask.rs | 2 ++ + src/test/run-pass/simd/simd-intrinsic-generic-select.rs | 2 ++ + 7 files changed, 12 insertions(+) + +diff --git a/src/test/codegen/sparc-struct-abi.rs b/src/test/codegen/sparc-struct-abi.rs +index 78e5b14a21..6f93e93286 100644 +--- a/src/test/codegen/sparc-struct-abi.rs ++++ b/src/test/codegen/sparc-struct-abi.rs +@@ -4,6 +4,7 @@ + + // only-sparc64 + // 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/c-link-to-rust-va-list-fn/Makefile b/src/test/run-make-fulldeps/c-link-to-rust-va-list-fn/Makefile +index f124ca2ab6..363b18f098 100644 +--- a/src/test/run-make-fulldeps/c-link-to-rust-va-list-fn/Makefile ++++ b/src/test/run-make-fulldeps/c-link-to-rust-va-list-fn/Makefile +@@ -1,3 +1,5 @@ ++# ignore-aarch64 ++ + -include ../tools.mk + + all: +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..5f167ece1a 100644 +--- a/src/test/run-make-fulldeps/long-linker-command-lines/Makefile ++++ b/src/test/run-make-fulldeps/long-linker-command-lines/Makefile +@@ -1,3 +1,5 @@ ++# ignore-test ++ + -include ../tools.mk + + all: +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..6d92ec5cec 100644 +--- a/src/test/run-make-fulldeps/sysroot-crates-are-unstable/Makefile ++++ b/src/test/run-make-fulldeps/sysroot-crates-are-unstable/Makefile +@@ -1,3 +1,5 @@ ++# ignore-test ++ + -include ../tools.mk + + all: +diff --git a/src/test/run-pass/env-funky-keys.rs b/src/test/run-pass/env-funky-keys.rs +index 79f32bd6c2..fc171687c9 100644 +--- a/src/test/run-pass/env-funky-keys.rs ++++ b/src/test/run-pass/env-funky-keys.rs +@@ -1,5 +1,6 @@ + // Ignore this test on Android, because it segfaults there. + ++// ignore-test + // ignore-android + // ignore-windows + // ignore-cloudabi no execve +diff --git a/src/test/run-pass/simd/simd-intrinsic-generic-bitmask.rs b/src/test/run-pass/simd/simd-intrinsic-generic-bitmask.rs +index b28f742a92..3ee4ccce73 100644 +--- a/src/test/run-pass/simd/simd-intrinsic-generic-bitmask.rs ++++ b/src/test/run-pass/simd/simd-intrinsic-generic-bitmask.rs +@@ -2,6 +2,8 @@ + #![allow(non_camel_case_types)] + + // ignore-emscripten ++// ignore-powerpc ++// ignore-powerpc64 + + // Test that the simd_bitmask intrinsic produces correct results. + +diff --git a/src/test/run-pass/simd/simd-intrinsic-generic-select.rs b/src/test/run-pass/simd/simd-intrinsic-generic-select.rs +index f79b140494..39080c8c90 100644 +--- a/src/test/run-pass/simd/simd-intrinsic-generic-select.rs ++++ b/src/test/run-pass/simd/simd-intrinsic-generic-select.rs +@@ -2,6 +2,8 @@ + #![allow(non_camel_case_types)] + + // ignore-emscripten ++// ignore-powerpc ++// ignore-powerpc64 + + // Test that the simd_select intrinsics produces correct results. + +-- +2.21.0 + diff --git a/user/rust/0021-Link-stage-2-tools-dynamically-to-libstd.patch b/user/rust/0011-Link-stage-2-tools-dynamically-to-libstd.patch index dfb43d9b7..e46aeac77 100644 --- a/user/rust/0021-Link-stage-2-tools-dynamically-to-libstd.patch +++ b/user/rust/0011-Link-stage-2-tools-dynamically-to-libstd.patch @@ -1,17 +1,17 @@ -From 0aac206a1c7af54f5974eb4043b0f821720f4bf7 Mon Sep 17 00:00:00 2001 +From 91549d8c4f37fd0756d2b95fffcb7055acb663d1 Mon Sep 17 00:00:00 2001 From: Samuel Holland <samuel@sholland.org> Date: Mon, 24 Sep 2018 23:42:23 +0000 -Subject: [PATCH 21/23] Link stage 2 tools dynamically to libstd +Subject: [PATCH 11/13] 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 6868a063ce..3a91b4fa07 100644 +index 23775a91e4..d79fede548 100644 --- a/src/bootstrap/tool.rs +++ b/src/bootstrap/tool.rs -@@ -217,7 +217,9 @@ pub fn prepare_tool_cargo( +@@ -208,7 +208,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. @@ -23,5 +23,5 @@ index 6868a063ce..3a91b4fa07 100644 if source_type == SourceType::Submodule { cargo.env("RUSTC_EXTERNAL_TOOL", "1"); -- -2.19.2 +2.21.0 diff --git a/user/rust/0011-rustc_data_structures-use-libc-types-constants-in-fl.patch b/user/rust/0011-rustc_data_structures-use-libc-types-constants-in-fl.patch deleted file mode 100644 index 9fb760bb1..000000000 --- a/user/rust/0011-rustc_data_structures-use-libc-types-constants-in-fl.patch +++ /dev/null @@ -1,209 +0,0 @@ -From c99b99efd9f9632ac4917e1c410bf34e3c2be78b Mon Sep 17 00:00:00 2001 -From: Samuel Holland <samuel@sholland.org> -Date: Tue, 9 Oct 2018 04:15:48 +0000 -Subject: [PATCH 11/23] rustc_data_structures: use libc types/constants in - flock - ---- - src/librustc_data_structures/flock.rs | 155 ++------------------------ - 1 file changed, 10 insertions(+), 145 deletions(-) - -diff --git a/src/librustc_data_structures/flock.rs b/src/librustc_data_structures/flock.rs -index 38ce331051..d5c38b9a39 100644 ---- a/src/librustc_data_structures/flock.rs -+++ b/src/librustc_data_structures/flock.rs -@@ -26,143 +26,6 @@ cfg_if! { - use std::os::unix::prelude::*; - use libc; - -- #[cfg(any(target_os = "linux", target_os = "android"))] -- mod os { -- use libc; -- -- #[repr(C)] -- pub struct flock { -- pub l_type: libc::c_short, -- pub l_whence: libc::c_short, -- pub l_start: libc::off_t, -- pub l_len: libc::off_t, -- pub l_pid: libc::pid_t, -- -- // not actually here, but brings in line with freebsd -- pub l_sysid: libc::c_int, -- } -- -- 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; -- } -- -- #[cfg(target_os = "freebsd")] -- mod os { -- use libc; -- -- #[repr(C)] -- pub struct flock { -- pub l_start: libc::off_t, -- pub l_len: libc::off_t, -- pub l_pid: libc::pid_t, -- pub l_type: libc::c_short, -- pub l_whence: libc::c_short, -- pub l_sysid: libc::c_int, -- } -- -- pub const F_RDLCK: libc::c_short = 1; -- pub const F_UNLCK: libc::c_short = 2; -- pub const F_WRLCK: libc::c_short = 3; -- pub const F_SETLK: libc::c_int = 12; -- pub const F_SETLKW: libc::c_int = 13; -- } -- -- #[cfg(any(target_os = "dragonfly", -- target_os = "bitrig", -- target_os = "netbsd", -- target_os = "openbsd"))] -- mod os { -- use libc; -- -- #[repr(C)] -- pub struct flock { -- pub l_start: libc::off_t, -- pub l_len: libc::off_t, -- pub l_pid: libc::pid_t, -- pub l_type: libc::c_short, -- pub l_whence: libc::c_short, -- -- // not actually here, but brings in line with freebsd -- pub l_sysid: libc::c_int, -- } -- -- pub const F_RDLCK: libc::c_short = 1; -- pub const F_UNLCK: libc::c_short = 2; -- pub const F_WRLCK: libc::c_short = 3; -- pub const F_SETLK: libc::c_int = 8; -- pub const F_SETLKW: libc::c_int = 9; -- } -- -- #[cfg(target_os = "haiku")] -- mod os { -- use libc; -- -- #[repr(C)] -- pub struct flock { -- pub l_type: libc::c_short, -- pub l_whence: libc::c_short, -- pub l_start: libc::off_t, -- pub l_len: libc::off_t, -- pub l_pid: libc::pid_t, -- -- // not actually here, but brings in line with freebsd -- pub l_sysid: libc::c_int, -- } -- -- pub const F_RDLCK: libc::c_short = 0x0040; -- pub const F_UNLCK: libc::c_short = 0x0200; -- pub const F_WRLCK: libc::c_short = 0x0400; -- pub const F_SETLK: libc::c_int = 0x0080; -- pub const F_SETLKW: libc::c_int = 0x0100; -- } -- -- #[cfg(any(target_os = "macos", target_os = "ios"))] -- mod os { -- use libc; -- -- #[repr(C)] -- pub struct flock { -- pub l_start: libc::off_t, -- pub l_len: libc::off_t, -- pub l_pid: libc::pid_t, -- pub l_type: libc::c_short, -- pub l_whence: libc::c_short, -- -- // not actually here, but brings in line with freebsd -- pub l_sysid: libc::c_int, -- } -- -- pub const F_RDLCK: libc::c_short = 1; -- pub const F_UNLCK: libc::c_short = 2; -- pub const F_WRLCK: libc::c_short = 3; -- pub const F_SETLK: libc::c_int = 8; -- pub const F_SETLKW: libc::c_int = 9; -- } -- -- #[cfg(target_os = "solaris")] -- mod os { -- use libc; -- -- #[repr(C)] -- pub struct flock { -- pub l_type: libc::c_short, -- pub l_whence: libc::c_short, -- pub l_start: libc::off_t, -- pub l_len: libc::off_t, -- pub l_sysid: libc::c_int, -- pub l_pid: libc::pid_t, -- } -- -- pub const F_RDLCK: libc::c_short = 1; -- pub const F_WRLCK: libc::c_short = 2; -- pub const F_UNLCK: libc::c_short = 3; -- pub const F_SETLK: libc::c_int = 6; -- pub const F_SETLKW: libc::c_int = 7; -- } -- - #[derive(Debug)] - pub struct Lock { - fd: libc::c_int, -@@ -192,20 +55,21 @@ cfg_if! { - } - - let lock_type = if exclusive { -- os::F_WRLCK -+ libc::F_WRLCK - } else { -- os::F_RDLCK -+ libc::F_RDLCK - }; - -- let flock = os::flock { -+ let flock = libc::flock { - l_start: 0, - l_len: 0, - l_pid: 0, - l_whence: libc::SEEK_SET as libc::c_short, -- l_type: lock_type, -+ l_type: lock_type as libc::c_short, -+ #[cfg(any(target_os = "freebsd", target_os = "solaris"))] - l_sysid: 0, - }; -- let cmd = if wait { os::F_SETLKW } else { os::F_SETLK }; -+ let cmd = if wait { libc::F_SETLKW } else { libc::F_SETLK }; - let ret = unsafe { - libc::fcntl(fd, cmd, &flock) - }; -@@ -221,16 +85,17 @@ cfg_if! { - - impl Drop for Lock { - fn drop(&mut self) { -- let flock = os::flock { -+ let flock = libc::flock { - l_start: 0, - l_len: 0, - l_pid: 0, - l_whence: libc::SEEK_SET as libc::c_short, -- l_type: os::F_UNLCK, -+ l_type: libc::F_UNLCK as libc::c_short, -+ #[cfg(any(target_os = "freebsd", target_os = "solaris"))] - l_sysid: 0, - }; - unsafe { -- libc::fcntl(self.fd, os::F_SETLK, &flock); -+ libc::fcntl(self.fd, libc::F_SETLK, &flock); - libc::close(self.fd); - } - } --- -2.19.2 - diff --git a/user/rust/0022-Move-debugger-scripts-to-usr-share-rust.patch b/user/rust/0012-Move-debugger-scripts-to-usr-share-rust.patch index a46ddcd45..449abc0cf 100644 --- a/user/rust/0022-Move-debugger-scripts-to-usr-share-rust.patch +++ b/user/rust/0012-Move-debugger-scripts-to-usr-share-rust.patch @@ -1,7 +1,7 @@ -From 347b144930e68e49dc27b3682751a1d4c13d81c5 Mon Sep 17 00:00:00 2001 +From 6ebe128c3440ee224fed5e0a2b8897df21ed55f2 Mon Sep 17 00:00:00 2001 From: Samuel Holland <samuel@sholland.org> Date: Mon, 17 Sep 2018 02:09:10 +0000 -Subject: [PATCH 22/23] Move debugger scripts to /usr/share/rust +Subject: [PATCH 12/13] Move debugger scripts to /usr/share/rust --- src/bootstrap/dist.rs | 2 +- @@ -10,11 +10,11 @@ Subject: [PATCH 22/23] Move debugger scripts to /usr/share/rust 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/bootstrap/dist.rs b/src/bootstrap/dist.rs -index fea6302d0a..e6ba249d28 100644 +index 61a7705bd6..920e0ad1f1 100644 --- a/src/bootstrap/dist.rs +++ b/src/bootstrap/dist.rs -@@ -591,7 +591,7 @@ impl Step for DebuggerScripts { - fn run(self, builder: &Builder) { +@@ -597,7 +597,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"); @@ -23,10 +23,10 @@ index fea6302d0a..e6ba249d28 100644 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 743952a5be..71694ddb87 100755 +index 23ba93da8e..dc51b16c57 100755 --- a/src/etc/rust-gdb +++ b/src/etc/rust-gdb -@@ -14,7 +14,7 @@ set -e +@@ -4,7 +4,7 @@ set -e # Find out where the pretty printer Python module is RUSTC_SYSROOT=`rustc --print=sysroot` @@ -36,10 +36,10 @@ index 743952a5be..71694ddb87 100755 # 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 6ed8210349..f115587ce1 100755 +index 424302d495..460e119210 100755 --- a/src/etc/rust-lldb +++ b/src/etc/rust-lldb -@@ -35,7 +35,7 @@ display the contents of local variables!" +@@ -26,7 +26,7 @@ display the contents of local variables!" fi # Prepare commands that will be loaded before any file on the command line has been loaded @@ -49,5 +49,5 @@ index 6ed8210349..f115587ce1 100755 category_enable="type category enable Rust" -- -2.19.2 +2.21.0 diff --git a/user/rust/0023-Add-foxkit-target-specs.patch b/user/rust/0013-Add-foxkit-target-specs.patch index 982326bc6..c0e8cd4a2 100644 --- a/user/rust/0023-Add-foxkit-target-specs.patch +++ b/user/rust/0013-Add-foxkit-target-specs.patch @@ -1,17 +1,17 @@ -From 8094b006c75c38ab0e5d44d9b5c12a973949e512 Mon Sep 17 00:00:00 2001 +From fcf56fefa4b75f24430f69477d8cca8ee758fa41 Mon Sep 17 00:00:00 2001 From: Samuel Holland <samuel@sholland.org> Date: Mon, 17 Sep 2018 02:29:06 +0000 -Subject: [PATCH 23/23] Add foxkit target specs +Subject: [PATCH 13/13] Add foxkit target specs --- - .../spec/aarch64_foxkit_linux_musl.rs | 21 +++++++++++++++++ - .../spec/armv7_foxkit_linux_musleabihf.rs | 21 +++++++++++++++++ - .../spec/i586_foxkit_linux_musl.rs | 23 +++++++++++++++++++ - src/librustc_target/spec/mod.rs | 7 ++++++ - .../spec/powerpc64_foxkit_linux_musl.rs | 21 +++++++++++++++++ - .../spec/powerpc_foxkit_linux_musl.rs | 23 +++++++++++++++++++ - .../spec/x86_64_foxkit_linux_musl.rs | 21 +++++++++++++++++ - 7 files changed, 137 insertions(+) + .../spec/aarch64_foxkit_linux_musl.rs | 11 +++++++++++ + .../spec/armv7_foxkit_linux_musleabihf.rs | 11 +++++++++++ + src/librustc_target/spec/i586_foxkit_linux_musl.rs | 13 +++++++++++++ + src/librustc_target/spec/mod.rs | 7 +++++++ + .../spec/powerpc64_foxkit_linux_musl.rs | 11 +++++++++++ + .../spec/powerpc_foxkit_linux_musl.rs | 13 +++++++++++++ + .../spec/x86_64_foxkit_linux_musl.rs | 11 +++++++++++ + 7 files changed, 77 insertions(+) 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 @@ -21,21 +21,11 @@ Subject: [PATCH 23/23] Add foxkit target specs 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 +index 0000000000..9ba8bc1deb --- /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; +@@ -0,0 +1,11 @@ ++use crate::spec::TargetResult; + +pub fn target() -> TargetResult { + let mut base = super::aarch64_unknown_linux_musl::target()?; @@ -48,21 +38,11 @@ index 0000000000..18ad2c2f31 +} 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 +index 0000000000..5a88f77896 --- /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; +@@ -0,0 +1,11 @@ ++use crate::spec::TargetResult; + +pub fn target() -> TargetResult { + let mut base = super::armv7_unknown_linux_musleabihf::target()?; @@ -75,21 +55,11 @@ index 0000000000..facfd5d363 +} 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..e0284d96e6 +index 0000000000..f0c4ffbf58 --- /dev/null +++ b/src/librustc_target/spec/i586_foxkit_linux_musl.rs -@@ -0,0 +1,23 @@ -+// 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, TargetResult}; +@@ -0,0 +1,13 @@ ++use crate::spec::{LinkerFlavor, TargetResult}; + +pub fn target() -> TargetResult { + let mut base = super::i586_unknown_linux_musl::target()?; @@ -103,40 +73,30 @@ index 0000000000..e0284d96e6 + Ok(base) +} diff --git a/src/librustc_target/spec/mod.rs b/src/librustc_target/spec/mod.rs -index f75c4940c6..d4e0f04144 100644 +index 46fefd78f4..7cdcb319c6 100644 --- a/src/librustc_target/spec/mod.rs +++ b/src/librustc_target/spec/mod.rs -@@ -414,6 +414,13 @@ supported_targets! { - ("riscv32imac-unknown-none-elf", riscv32imac_unknown_none_elf), +@@ -329,6 +329,13 @@ macro_rules! supported_targets { + } - ("aarch64-unknown-none", aarch64_unknown_none), -+ + supported_targets! { + ("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. ++ + ("x86_64-unknown-linux-gnu", x86_64_unknown_linux_gnu), + ("x86_64-unknown-linux-gnux32", x86_64_unknown_linux_gnux32), + ("i686-unknown-linux-gnu", i686_unknown_linux_gnu), 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 +index 0000000000..b105aa247e --- /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; +@@ -0,0 +1,11 @@ ++use crate::spec::TargetResult; + +pub fn target() -> TargetResult { + let mut base = super::powerpc64_unknown_linux_musl::target()?; @@ -149,21 +109,11 @@ index 0000000000..b7202ee0fc +} 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..34246a7e28 +index 0000000000..a425f472aa --- /dev/null +++ b/src/librustc_target/spec/powerpc_foxkit_linux_musl.rs -@@ -0,0 +1,23 @@ -+// 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, TargetResult}; +@@ -0,0 +1,13 @@ ++use crate::spec::{LinkerFlavor, TargetResult}; + +pub fn target() -> TargetResult { + let mut base = super::powerpc_unknown_linux_musl::target()?; @@ -178,21 +128,11 @@ index 0000000000..34246a7e28 +} 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 +index 0000000000..40adbd77b3 --- /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; +@@ -0,0 +1,11 @@ ++use crate::spec::TargetResult; + +pub fn target() -> TargetResult { + let mut base = super::x86_64_unknown_linux_musl::target()?; @@ -204,5 +144,5 @@ index 0000000000..801dd8d6f4 + Ok(base) +} -- -2.19.2 +2.21.0 diff --git a/user/rust/0013-Fix-double_check-tests-on-big-endian-targets.patch b/user/rust/0013-Fix-double_check-tests-on-big-endian-targets.patch deleted file mode 100644 index 546afbf20..000000000 --- a/user/rust/0013-Fix-double_check-tests-on-big-endian-targets.patch +++ /dev/null @@ -1,75 +0,0 @@ -From cdcbabdffce7f1b5379faf96db0dc12e4a5f1a36 Mon Sep 17 00:00:00 2001 -From: Samuel Holland <samuel@sholland.org> -Date: Sun, 16 Sep 2018 18:27:56 +0000 -Subject: [PATCH 13/23] 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/consts/const-eval/double_check.rs | 8 ++++---- - src/test/ui/consts/const-eval/double_check2.rs | 8 ++++---- - src/test/ui/consts/const-eval/double_check2.stderr | 4 ++-- - 3 files changed, 10 insertions(+), 10 deletions(-) - -diff --git a/src/test/ui/consts/const-eval/double_check.rs b/src/test/ui/consts/const-eval/double_check.rs -index 81f6e7ddd2..76f9276c05 100644 ---- a/src/test/ui/consts/const-eval/double_check.rs -+++ b/src/test/ui/consts/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/consts/const-eval/double_check2.rs b/src/test/ui/consts/const-eval/double_check2.rs -index b661ee9247..701632362c 100644 ---- a/src/test/ui/consts/const-eval/double_check2.rs -+++ b/src/test/ui/consts/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/consts/const-eval/double_check2.stderr b/src/test/ui/consts/const-eval/double_check2.stderr -index 2102587734..78a112304e 100644 ---- a/src/test/ui/consts/const-eval/double_check2.stderr -+++ b/src/test/ui/consts/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 invalid enum discriminant 5 at .1.<deref> - | --- -2.19.2 - diff --git a/user/rust/0014-test-invalid_const_promotion-Accept-SIGTRAP-as-a-val.patch b/user/rust/0014-test-invalid_const_promotion-Accept-SIGTRAP-as-a-val.patch deleted file mode 100644 index e892735a2..000000000 --- a/user/rust/0014-test-invalid_const_promotion-Accept-SIGTRAP-as-a-val.patch +++ /dev/null @@ -1,25 +0,0 @@ -From 52f262296db19bcb35410a05786e58a239216ba8 Mon Sep 17 00:00:00 2001 -From: Samuel Holland <samuel@sholland.org> -Date: Sun, 16 Sep 2018 16:37:09 +0000 -Subject: [PATCH 14/23] 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 ed8c499241..0f354e1aad 100644 ---- a/src/test/run-pass/invalid_const_promotion.rs -+++ b/src/test/run-pass/invalid_const_promotion.rs -@@ -39,6 +39,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.19.2 - diff --git a/user/rust/0015-test-linkage-visibility-Ensure-symbols-are-visible-t.patch b/user/rust/0015-test-linkage-visibility-Ensure-symbols-are-visible-t.patch deleted file mode 100644 index f4591af96..000000000 --- a/user/rust/0015-test-linkage-visibility-Ensure-symbols-are-visible-t.patch +++ /dev/null @@ -1,30 +0,0 @@ -From cc2e1f8ee1d28a772c0309b226e996359180124a Mon Sep 17 00:00:00 2001 -From: Samuel Holland <samuel@sholland.org> -Date: Sun, 16 Sep 2018 16:35:41 +0000 -Subject: [PATCH 15/23] test/linkage-visibility: Ensure symbols are visible to - dlsym - -DynamicLibrary uses libc's dlsym() function internally to find symbols. -Some implementations of dlsym(), like musl's, only look at dynamically- -exported symbols, as found in shared libraries. To also export symbols -from the main executable, pass --export-dynamic to the linker. ---- - 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 4ea3d0d0d0..b958e1a1fc 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.19.2 - diff --git a/user/rust/0016-x.py-Use-python3-instead-of-python.patch b/user/rust/0016-x.py-Use-python3-instead-of-python.patch deleted file mode 100644 index 37302b773..000000000 --- a/user/rust/0016-x.py-Use-python3-instead-of-python.patch +++ /dev/null @@ -1,22 +0,0 @@ -From 591dc52ab207945a5c1b488b88cbd1cfbb1c8c94 Mon Sep 17 00:00:00 2001 -From: Samuel Holland <samuel@sholland.org> -Date: Mon, 10 Sep 2018 01:36:00 +0000 -Subject: [PATCH 16/23] 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.19.2 - diff --git a/user/rust/0017-test-target-feature-gate-Only-run-on-relevant-target.patch b/user/rust/0017-test-target-feature-gate-Only-run-on-relevant-target.patch deleted file mode 100644 index 5e8c71668..000000000 --- a/user/rust/0017-test-target-feature-gate-Only-run-on-relevant-target.patch +++ /dev/null @@ -1,37 +0,0 @@ -From bc1a70133b259188ec4595eef8d11670cc8d64f5 Mon Sep 17 00:00:00 2001 -From: Samuel Holland <samuel@sholland.org> -Date: Sun, 16 Sep 2018 16:39:46 +0000 -Subject: [PATCH 17/23] 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 8a045884ca..5e90417fc3 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 - // ignore-mips -diff --git a/src/test/ui/target-feature-gate.stderr b/src/test/ui/target-feature-gate.stderr -index f18bebc0c2..5458953601 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:29:18 -+ --> $DIR/target-feature-gate.rs:31:18 - | - LL | #[target_feature(enable = "avx512bw")] - | ^^^^^^^^^^^^^^^^^^^ --- -2.19.2 - diff --git a/user/rust/0020-Ignore-broken-and-non-applicable-tests.patch b/user/rust/0020-Ignore-broken-and-non-applicable-tests.patch deleted file mode 100644 index 3305b52d0..000000000 --- a/user/rust/0020-Ignore-broken-and-non-applicable-tests.patch +++ /dev/null @@ -1,48 +0,0 @@ -From 5fd5ee6042170262f6832b65a90c54989f6a9847 Mon Sep 17 00:00:00 2001 -From: Samuel Holland <samuel@sholland.org> -Date: Sun, 16 Sep 2018 16:38:48 +0000 -Subject: [PATCH 20/23] 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 56c4364d59..9aebf8f002 100644 ---- a/src/test/codegen/sparc-struct-abi.rs -+++ b/src/test/codegen/sparc-struct-abi.rs -@@ -13,6 +13,7 @@ - - // only-sparc64 - // 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.19.2 - diff --git a/user/rust/0030-libc-linkage.patch b/user/rust/0030-libc-linkage.patch new file mode 100644 index 000000000..2454acdb3 --- /dev/null +++ b/user/rust/0030-libc-linkage.patch @@ -0,0 +1,33 @@ +--- rustc-1.35.0-src/vendor/libc/src/lib.rs ++++ rustc-1.35.0-src/vendor/libc/src/lib.rs +@@ -26,6 +26,7 @@ + #![deny(missing_copy_implementations, safe_packed_borrows)] + #![no_std] + #![cfg_attr(feature = "rustc-dep-of-std", no_core)] ++#![cfg_attr(feature = "rustc-dep-of-std", feature(static_nobundle))] + + #[macro_use] + mod macros; +--- rustc-1.35.0-src/vendor/libc/src/unix/mod.rs ++++ rustc-1.35.0-src/vendor/libc/src/unix/mod.rs +@@ -307,11 +307,11 @@ 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")] { ++ #[link(name = "c")] ++ extern {} + #[cfg_attr(feature = "rustc-dep-of-std", +- link(name = "c", kind = "static", ++ link(name = "gcc", kind = "static-nobundle", + cfg(target_feature = "crt-static")))] +- #[cfg_attr(feature = "rustc-dep-of-std", +- link(name = "c", cfg(not(target_feature = "crt-static"))))] + extern {} + } else if #[cfg(target_os = "emscripten")] { + #[link(name = "c")] +--- rustc-1.35.0-src/vendor/libc/.cargo-checksum.json ++++ rustc-1.35.0-src/vendor/libc/.cargo-checksum.json +@@ -1 +1 @@ +-{"files":{"CONTRIBUTING.md":"abc79e7f6c3eee37e21baca32847b6709c973f4995b32892e80deb56b73c9ac5","Cargo.toml":"c150fb3c5d9159cce669ff588684190f7b177d3aec39c543625a714d6630b9e5","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"6485b8ed310d3f0340bf1ad1f47645069ce4069dcc6bb46c7d5c6faf41de1fdb","README.md":"35582cfa483e7676b25ae4a07064a19443f4942f5e60e43b91632fcd6ae95156","build.rs":"e9b7364366a5b4caa9daa436ab8a3469532fe63d5fae4d3b2e5ff59d32ff3f3a","rustfmt.toml":"8a654d5787585ca8f2c20580737336fc327f411a07b0dbd4870adf6e9bdf624f","src/cloudabi/aarch64.rs":"b8550bf1fd7344972aa4db29441486f39f31482d0327534981dbb75959c29114","src/cloudabi/arm.rs":"c197e2781c2839808bd6fcef219a29705b27b992d3ef920e9cf6ac96e2022bbf","src/cloudabi/mod.rs":"037c1a3160ae3bc336f6f7135476704e7f5e834e4039fa02b37f03b507118945","src/cloudabi/x86.rs":"33eb97f272d2201f3838ae74d444583c7de8f67856852ca375293b20bbd05636","src/cloudabi/x86_64.rs":"400d85d4fe39e26cf2e6ece9ee31c75fe9e88c4bcf4d836ca9f765c05c9c5be3","src/fuchsia/aarch64.rs":"40dce617877e606e92353491e1913711b1ecfa510bb983156f4a8460f490419e","src/fuchsia/align.rs":"9ca6271f2cbb0e6ca3b48ff6898ecee31c89b3c8388ae20be63e457aabad13a5","src/fuchsia/mod.rs":"fcadc9203451d5c04c36044f8b4cda7f64815c180446e87dbd02fbf7e6fda0f2","src/fuchsia/no_align.rs":"56868534e4ed3f94a27ed39c42f01210c8ecfdbafd4e27679860fbc65a2ae8de","src/fuchsia/x86_64.rs":"911d1249370cf1b0b7b38960cae28af1276f0f614cfcbf5174dbaa38be3dff1d","src/hermit/aarch64.rs":"86048676e335944c37a63d0083d0f368ae10ceccefeed9debb3bbe08777fc682","src/hermit/mod.rs":"9d764e53df81416a5182b71a26402d2071fc0c15160103b6670b6b268fc356da","src/hermit/x86_64.rs":"ab832b7524e5fb15c49ff7431165ab1a37dc4667ae0b58e8306f4c539bfa110c","src/lib.rs":"b0d525e3da42b1fde74356f3856e9054254eaefb260c2da8a253b025754c8770","src/macros.rs":"8232e284068d34336713535595fad3c910093346be32e72bde3d3d03327ec6b8","src/redox/align.rs":"2cdc7c826ef7ae61f5171c5ae8c445a743d86f1a7f2d9d7e4ceeec56d6874f65","src/redox/mod.rs":"34f132e794dc25bbb0e3c08b7f87e4508ce62e0aac00acf39dcdb0f246d7dfc0","src/redox/net.rs":"351960c3a3ad9b296fe43533cac429434e0872c8cca5ad5047dce79d82e009ee","src/redox/no_align.rs":"c06e95373b9088266e0b14bba0954eef95f93fb2b01d951855e382d22de78e53","src/sgx.rs":"7ff2fbf3e5ad1c880014d68e012f4381a9b9140d13089193b9fba07a7f27c352","src/switch.rs":"fe1414ca053b73cf8a5f54448e807abe81c776c6ac0dfe47ea7772c8140f50b6","src/unix/align.rs":"2cdc7c826ef7ae61f5171c5ae8c445a743d86f1a7f2d9d7e4ceeec56d6874f65","src/unix/bsd/apple/b32.rs":"0095a17e49fa423cab8644c722a375b88f5c0cf56fa456b549738d98131bb2f9","src/unix/bsd/apple/b64.rs":"99fbd3e6d2c969080631e23f58deffa51cb3f42b7a08395b49556f19bb40d4e1","src/unix/bsd/apple/mod.rs":"e1959b482dc3c1703eb032b5d6e269c434326dc3eae9f99bb88d51c732cd3df0","src/unix/bsd/freebsdlike/dragonfly/mod.rs":"2cb0a5d10a3c5721d10209ad7ddc59f6756b2c1d4bc89450988053efad788eb6","src/unix/bsd/freebsdlike/freebsd/aarch64.rs":"4dcd712c0dd5470171746071a176391f937de7865dd0792173284992d9e3f2c7","src/unix/bsd/freebsdlike/freebsd/arm.rs":"84cf36223f0229cb383036563a4902731543e89b37e4dfe2f450cced566d8545","src/unix/bsd/freebsdlike/freebsd/mod.rs":"0752dc1097fd5e94aabfe7b6d4ead2b94e5c0540e2cd3c8efee883bba13e1a0c","src/unix/bsd/freebsdlike/freebsd/powerpc64.rs":"9873f41843cbf066f6ffab8eeb63115095f81ce9fa8f337b95ec871e40c6565d","src/unix/bsd/freebsdlike/freebsd/x86.rs":"716cb67cd0aea66d4a8e40470d32b55cbfafddf75edd34a90f70d518c8c75457","src/unix/bsd/freebsdlike/freebsd/x86_64.rs":"dd3d8a546730f09b1ef0dfeeb20244eef01d1b4028799b28b3a0c33ae05d5002","src/unix/bsd/freebsdlike/mod.rs":"2938bb8b0a0f1d66912bdb4bac3e59863bd90787fe49e1d3a522098acfdb2b7a","src/unix/bsd/mod.rs":"0e92970853a9efbb51a17b9cb8009eb4e9a04cbf12d0e315659d240812c1e760","src/unix/bsd/netbsdlike/mod.rs":"77b85ecd2187df55466663f6af624416d9c99922065c6fbd0438d5b7063db89c","src/unix/bsd/netbsdlike/netbsd/aarch64.rs":"b38fc046f9a40fea28bd26328b96629f4d5d63d7524936bd6af1865d401a8716","src/unix/bsd/netbsdlike/netbsd/arm.rs":"58cdbb70b0d6f536551f0f3bb3725d2d75c4690db12c26c034e7d6ec4a924452","src/unix/bsd/netbsdlike/netbsd/mod.rs":"75adb8d6ee202d50487913c245e1a880447582f45e1ef6339743305a13fb5719","src/unix/bsd/netbsdlike/netbsd/powerpc.rs":"ee7ff5d89d0ed22f531237b5059aa669df93a3b5c489fa641465ace8d405bf41","src/unix/bsd/netbsdlike/netbsd/sparc64.rs":"9489f4b3e4566f43bb12dfb92238960613dac7f6a45cc13068a8d152b902d7d9","src/unix/bsd/netbsdlike/netbsd/x86.rs":"20692320e36bfe028d1a34d16fe12ca77aa909cb02bda167376f98f1a09aefe7","src/unix/bsd/netbsdlike/netbsd/x86_64.rs":"135509edeaf3fb3f102d89d51ff1a8f82323497336a8dc7e1f0f23b5c2434b73","src/unix/bsd/netbsdlike/openbsdlike/bitrig/mod.rs":"51dd68ca3c3eab0f1fe496b0dc12ad8b85f8cf964af0c2c95ab9834ad03938a8","src/unix/bsd/netbsdlike/openbsdlike/bitrig/x86.rs":"bd251a102bed65d5cb3459275f6ec3310fe5803ff4c9651212115548f86256d0","src/unix/bsd/netbsdlike/openbsdlike/bitrig/x86_64.rs":"6e6f15e81597d85d83ca0eeb154e4f8b8e7f9cbb6a9cfa176601f78642ef94f9","src/unix/bsd/netbsdlike/openbsdlike/mod.rs":"c8d18b725c62c2f1a3c5e42d875e1a3b167c13a1bd6ae3d35f35a6ec29402f81","src/unix/bsd/netbsdlike/openbsdlike/openbsd/aarch64.rs":"ee0057fb97a5e16e46e0f8e4a215f6141b68ea75dd6cb5d53166bee2431082e2","src/unix/bsd/netbsdlike/openbsdlike/openbsd/mod.rs":"a3fb2cfc0e100c860dff1674a90693d57e66b7f12861155ceb42c2de372454bd","src/unix/bsd/netbsdlike/openbsdlike/openbsd/x86.rs":"1201371a662cb3515ebb42676cdca9199da7bf4d7c8f90b56f00db03a9fc61f7","src/unix/bsd/netbsdlike/openbsdlike/openbsd/x86_64.rs":"26ef6f50740fad5bb722e0f30025c369c287b2204489682319f7b24fce6de98d","src/unix/haiku/b32.rs":"69ae47fc52c6880e85416b4744500d5655c9ec6131cb737f3b649fceaadce15a","src/unix/haiku/b64.rs":"73e64db09275a8da8d50a13cce2cfa2b136036ddf3a930d2939f337fc995900b","src/unix/haiku/mod.rs":"b451e320e5c98d6b2e7fcb804e2be6669783510011ebd8dea27d64acbf955774","src/unix/hermit/aarch64.rs":"86048676e335944c37a63d0083d0f368ae10ceccefeed9debb3bbe08777fc682","src/unix/hermit/mod.rs":"d97797fe66dd43c61f6f895596f6a57145b4c9ef61edd93c8ff9b497a2d28411","src/unix/hermit/x86_64.rs":"ab832b7524e5fb15c49ff7431165ab1a37dc4667ae0b58e8306f4c539bfa110c","src/unix/mod.rs":"f9a63de7c9566cdaa970daeb3828887f7b2d8bf090da86be1a15c32288ae3da3","src/unix/newlib/aarch64/mod.rs":"c408a990f22fb4292a824f38367e9b517e6e6f8623328397ee631cc88b3d1f7d","src/unix/newlib/align.rs":"04e9b1ac6ca4af24fe5170385249fd64039ebf7f4817c5ceed3a303f3bc8a4aa","src/unix/newlib/arm/mod.rs":"2b6dba2e697ab9b4f4bc4dd5f28057249e9b596d1cb395a9322ec87605c4a5c4","src/unix/newlib/mod.rs":"e73d1b49662581382c91b3d4615d21812df58bf5477a3eba5c1df8a4c00a1c43","src/unix/newlib/no_align.rs":"7123dcec13604a11b7765c380ff3a4d0da19c39f4b03919de7857723c0cf1502","src/unix/no_align.rs":"c06e95373b9088266e0b14bba0954eef95f93fb2b01d951855e382d22de78e53","src/unix/notbsd/android/b32/arm.rs":"3625a32c7e58cfe683a53486fbe3d42d4e28f00bea31e19cb46ed2bb0b6a140b","src/unix/notbsd/android/b32/mod.rs":"05a714a785fa94a5131af3d59612ce1e9a5823b3327eb2a23de8ad0ce125c377","src/unix/notbsd/android/b32/x86.rs":"ae2b7f1d6278caddc007749bb1d09ca33f7593478a0fd7fe98b457dae86c7814","src/unix/notbsd/android/b64/aarch64.rs":"63d65629d79371814910f691672ef593d20244ee09be26f1ebe07ee6212d0163","src/unix/notbsd/android/b64/mod.rs":"d3bcb20e70d29a450577c09706bb520fab09d0cb3102755736867bf8a957319c","src/unix/notbsd/android/b64/x86_64.rs":"5547aef8dcbaa5a932559f34606fd8d89f6c9c15173d2b1412c12d39b3c1045f","src/unix/notbsd/android/mod.rs":"87dcb5bb8edf9ca2a7e7715f28c44c1330f15419d6d4f9422a81a61b6cf27a8c","src/unix/notbsd/emscripten/align.rs":"dee06bccb5f1a58bd498468f204b8f1d8f2c2a536c595d31e730330a79af7ea5","src/unix/notbsd/emscripten/mod.rs":"42947782f571b56cc1b1c1f4364bb35519bcc44ab8aca53bb13bfd46904de1e0","src/unix/notbsd/emscripten/no_align.rs":"f3960b1d6ede1f8f9d51407a3de5337d44dd5d954e1a4c2bf0ea11e76f2629da","src/unix/notbsd/linux/align.rs":"f2520d03b411519161eaaf043f1948b3279509a3f272b2958bca1d1aeda0434d","src/unix/notbsd/linux/mips/align.rs":"e4a3c27fe20a57b8d612c34cb05bc70646edb5cec7251957315afa53a7b9f936","src/unix/notbsd/linux/mips/mips32.rs":"96153abc38b10309e64cb49b1a1e4107be70dbc40bc54ba0372a4573b098b514","src/unix/notbsd/linux/mips/mips64.rs":"9bd96aa81cb0f536c3607d0a2906f4be7a44c3f89e40d5955a898835f04f0e15","src/unix/notbsd/linux/mips/mod.rs":"9a67a2f4043907a50a43569c06ffb4890aefa8db1c26a8737c6bb4bd3e39d90e","src/unix/notbsd/linux/mips/no_align.rs":"9cd223135de75315840ff9c3fd5441ba1cb632b96b5c85a76f8316c86653db25","src/unix/notbsd/linux/mod.rs":"895c6d0c1ee5436592e35b4dd87ea361ab81b750d45250b0ff850ac1cef4750d","src/unix/notbsd/linux/musl/b32/arm.rs":"fdf170e03812072785ec531f1ae810d0c4feb9b29d0c316681b9f7affe1262c0","src/unix/notbsd/linux/musl/b32/mips.rs":"afa4981d93f29b3fb0083a73ce1323f7dce1392f90d5cf1966b1fae10d510033","src/unix/notbsd/linux/musl/b32/mod.rs":"540928f168f145c136f9dd729ffa12b9d1838d9fe664fc642365d17d7fae648f","src/unix/notbsd/linux/musl/b32/powerpc.rs":"16c615770a96f155540511f58b5a8070c9c7a43e12bdfed83996690e7558bcb5","src/unix/notbsd/linux/musl/b32/x86.rs":"adf8bb67b47995760aab14f04ae671ebd8ecca5579e90314612f46cb79b30cc2","src/unix/notbsd/linux/musl/b64/aarch64.rs":"d98643408c2837387988f78adc95c90ad21196a6f8f879e3d33d7e8ccf612640","src/unix/notbsd/linux/musl/b64/mod.rs":"d9285cd705e2e92552a08c9aa69b810e7e1bd0e9da6edf069c678af285579661","src/unix/notbsd/linux/musl/b64/powerpc64.rs":"544d8a7f6d6d84143df8a4c3537c9a3a36bf3d338d7a1c15689b94492498d8d7","src/unix/notbsd/linux/musl/b64/x86_64.rs":"19197260a6d06ee521a5aa40a1860b7be33176d0f52bc92d56165fc42729cbd5","src/unix/notbsd/linux/musl/mod.rs":"13d766411fa206b987567e7c802dfe7585e6b7f002fe13ec0fbc810e522b7e2d","src/unix/notbsd/linux/no_align.rs":"7a1cc536b26c22019d7dab6b6db3a8c9edbb753d3f37a7985c30d8894c2c6b06","src/unix/notbsd/linux/other/align.rs":"e4a3c27fe20a57b8d612c34cb05bc70646edb5cec7251957315afa53a7b9f936","src/unix/notbsd/linux/other/b32/arm.rs":"d9892f7350b2978335f734f1cd2d7fed60f0f2e66aa05bee3f69549c031f8b14","src/unix/notbsd/linux/other/b32/mod.rs":"26211878c6481861e11393625620edaa0700cac41f55f0118c0f0bd42c1b7520","src/unix/notbsd/linux/other/b32/powerpc.rs":"253fcd2f9978525285be1903cc08f3fec2dc3b12d1660a33e2995b4f6b810d1c","src/unix/notbsd/linux/other/b32/x86.rs":"fea38039a1908ddeb90672b8ef246c743eec6758663a79aea401e21ef40a736d","src/unix/notbsd/linux/other/b64/aarch64.rs":"1124ab5e974718b94fa40ae0f1772fb1c537910ef3e018b7c6c94a38b83dd742","src/unix/notbsd/linux/other/b64/mod.rs":"63e1a3fdf5f4d1b9820934ab344c91aed5e458e7e05908535d2e942d51a08bf8","src/unix/notbsd/linux/other/b64/not_x32.rs":"fa8636fb93eab230ed53bdec0a06f5b81d6d982cc0800103563c8c1eefcdb2d9","src/unix/notbsd/linux/other/b64/powerpc64.rs":"a771d982ed8a9458e1f2f039f959b5075b22443159875ba5612eebba96661c24","src/unix/notbsd/linux/other/b64/sparc64.rs":"0caffe5924886f3aed187531dfe78189b3df40adb96782ec4b471647ff83e9b1","src/unix/notbsd/linux/other/b64/x32.rs":"06a26c5120ced30fc015c220799b67c4401be2f13fc6c7361bebd3d37ff4982d","src/unix/notbsd/linux/other/b64/x86_64.rs":"017cb7cf2810bc633e21879a8951a2c10031c500648e5eb4accc6c88b58ecaa3","src/unix/notbsd/linux/other/mod.rs":"a980e9e3853f8e24498d6cd185c38097710757654480ca460f6378ffeeddf5ef","src/unix/notbsd/linux/other/no_align.rs":"9cd223135de75315840ff9c3fd5441ba1cb632b96b5c85a76f8316c86653db25","src/unix/notbsd/linux/s390x/align.rs":"a7bdcb18a37a2d91e64d5fad83ea3edc78f5412adb28f77ab077dbb26dd08b2d","src/unix/notbsd/linux/s390x/mod.rs":"b01d158eefce4c31f377b63964d253f9934f7468af35a24474a163ad3725796a","src/unix/notbsd/linux/s390x/no_align.rs":"4a18e3875698c85229599225ac3401a2a40da87e77b2ad4ef47c6fcd5a24ed30","src/unix/notbsd/mod.rs":"5cfdcf78b70b4e4ef4a3733cac364a0bc2512dee798f897a8db7d78d4dd194a6","src/unix/solarish/compat.rs":"8db2a43eafbd3504e9eb9e8f18416c57d947798871bd45be3e2fb9946e292610","src/unix/solarish/mod.rs":"c6a740dac9af99321f48d5c9e86c6a4f5dcc611c413263881764f7121c1f7e9d","src/unix/uclibc/align.rs":"5607180357a9e3d87163e478116b45c7ece391d8366d65ff856cdf3e849452d7","src/unix/uclibc/arm/align.rs":"e4a3c27fe20a57b8d612c34cb05bc70646edb5cec7251957315afa53a7b9f936","src/unix/uclibc/arm/mod.rs":"66d54a7028a422fe331028441d1b1f18cf34bb2deff2a9e5220384b6e10dcc40","src/unix/uclibc/arm/no_align.rs":"9cd223135de75315840ff9c3fd5441ba1cb632b96b5c85a76f8316c86653db25","src/unix/uclibc/mips/mips32/align.rs":"e4a3c27fe20a57b8d612c34cb05bc70646edb5cec7251957315afa53a7b9f936","src/unix/uclibc/mips/mips32/mod.rs":"d1a1af63b583b170d5c94b46a04589a11b9d4f8dc658ab8c74302bae656d0e85","src/unix/uclibc/mips/mips32/no_align.rs":"9cd223135de75315840ff9c3fd5441ba1cb632b96b5c85a76f8316c86653db25","src/unix/uclibc/mips/mips64/align.rs":"a7bdcb18a37a2d91e64d5fad83ea3edc78f5412adb28f77ab077dbb26dd08b2d","src/unix/uclibc/mips/mips64/mod.rs":"03f3bad1c681e6fde4a8ed999ce1d38313166c17d35eded66bd6b4f8387efeb7","src/unix/uclibc/mips/mips64/no_align.rs":"bf11b59caa173a6d94d86f42a8de9c5682f798647fba3a17169214b59ab467fe","src/unix/uclibc/mips/mod.rs":"2d76e6cfeb2b7f7c59231a6e099f1aed811a45659e62153aaf00c220b9488a9d","src/unix/uclibc/mod.rs":"924f95073f77047b1f72de3d933852d1df13b19906a63c5974a64032f1bb772c","src/unix/uclibc/no_align.rs":"3f28637046524618adaa1012e26cb7ffe94b9396e6b518cccdc69d59f274d709","src/unix/uclibc/x86_64/align.rs":"26e48fc79dbdeee4408ae8e071aa90e1be34ccdf0c135689b805aa4abd568e5e","src/unix/uclibc/x86_64/l4re.rs":"bb31053d6403091e11f95ac2203982f279f8b984a19adf30796878c45fdd8c25","src/unix/uclibc/x86_64/mod.rs":"df78de7e0234192c0559b9820c0034a24d72a0820d361f9aad05a9eac36e80ff","src/unix/uclibc/x86_64/no_align.rs":"b308f7b110caf7405b57186882cfc4804caae49a8287f8ab612ec8548467f2f4","src/unix/uclibc/x86_64/other.rs":"42c3f71e58cabba373f6a55a623f3c31b85049eb64824c09c2b082b3b2d6a0a8","src/wasi.rs":"84e88b124249816db0976cda78515af3ee3eedacbcd69ae388dc2a6bc757dcd4","src/windows/gnu.rs":"4d9033162cc6f7d245256c7b165c1ec18a741771fd9b99a55b421e8d14978599","src/windows/mod.rs":"2761f3f80c8af5c04e685af8ac3a2bc8c7d6de91cbad9b96a3a6dae67457a891","src/windows/msvc.rs":"8f46cf66883c794175609a3b2bafaa094d0ba63eb6720ef1b84b175603f1074f"},"package":"bedcc7a809076656486ffe045abeeac163da1b558e963a31e29fbfbeba916917"} +\ No newline at end of file ++{"files":{"CONTRIBUTING.md":"abc79e7f6c3eee37e21baca32847b6709c973f4995b32892e80deb56b73c9ac5","Cargo.toml":"c150fb3c5d9159cce669ff588684190f7b177d3aec39c543625a714d6630b9e5","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"6485b8ed310d3f0340bf1ad1f47645069ce4069dcc6bb46c7d5c6faf41de1fdb","README.md":"35582cfa483e7676b25ae4a07064a19443f4942f5e60e43b91632fcd6ae95156","build.rs":"e9b7364366a5b4caa9daa436ab8a3469532fe63d5fae4d3b2e5ff59d32ff3f3a","rustfmt.toml":"8a654d5787585ca8f2c20580737336fc327f411a07b0dbd4870adf6e9bdf624f","src/cloudabi/aarch64.rs":"b8550bf1fd7344972aa4db29441486f39f31482d0327534981dbb75959c29114","src/cloudabi/arm.rs":"c197e2781c2839808bd6fcef219a29705b27b992d3ef920e9cf6ac96e2022bbf","src/cloudabi/mod.rs":"037c1a3160ae3bc336f6f7135476704e7f5e834e4039fa02b37f03b507118945","src/cloudabi/x86.rs":"33eb97f272d2201f3838ae74d444583c7de8f67856852ca375293b20bbd05636","src/cloudabi/x86_64.rs":"400d85d4fe39e26cf2e6ece9ee31c75fe9e88c4bcf4d836ca9f765c05c9c5be3","src/fuchsia/aarch64.rs":"40dce617877e606e92353491e1913711b1ecfa510bb983156f4a8460f490419e","src/fuchsia/align.rs":"9ca6271f2cbb0e6ca3b48ff6898ecee31c89b3c8388ae20be63e457aabad13a5","src/fuchsia/mod.rs":"fcadc9203451d5c04c36044f8b4cda7f64815c180446e87dbd02fbf7e6fda0f2","src/fuchsia/no_align.rs":"56868534e4ed3f94a27ed39c42f01210c8ecfdbafd4e27679860fbc65a2ae8de","src/fuchsia/x86_64.rs":"911d1249370cf1b0b7b38960cae28af1276f0f614cfcbf5174dbaa38be3dff1d","src/hermit/aarch64.rs":"86048676e335944c37a63d0083d0f368ae10ceccefeed9debb3bbe08777fc682","src/hermit/mod.rs":"9d764e53df81416a5182b71a26402d2071fc0c15160103b6670b6b268fc356da","src/hermit/x86_64.rs":"ab832b7524e5fb15c49ff7431165ab1a37dc4667ae0b58e8306f4c539bfa110c","src/lib.rs":"7e80726ac2e4fe5d1354950e93055120b5e3babc339f0315bf34bc7eb8f4c937","src/macros.rs":"8232e284068d34336713535595fad3c910093346be32e72bde3d3d03327ec6b8","src/redox/align.rs":"2cdc7c826ef7ae61f5171c5ae8c445a743d86f1a7f2d9d7e4ceeec56d6874f65","src/redox/mod.rs":"34f132e794dc25bbb0e3c08b7f87e4508ce62e0aac00acf39dcdb0f246d7dfc0","src/redox/net.rs":"351960c3a3ad9b296fe43533cac429434e0872c8cca5ad5047dce79d82e009ee","src/redox/no_align.rs":"c06e95373b9088266e0b14bba0954eef95f93fb2b01d951855e382d22de78e53","src/sgx.rs":"7ff2fbf3e5ad1c880014d68e012f4381a9b9140d13089193b9fba07a7f27c352","src/switch.rs":"fe1414ca053b73cf8a5f54448e807abe81c776c6ac0dfe47ea7772c8140f50b6","src/unix/align.rs":"2cdc7c826ef7ae61f5171c5ae8c445a743d86f1a7f2d9d7e4ceeec56d6874f65","src/unix/bsd/apple/b32.rs":"0095a17e49fa423cab8644c722a375b88f5c0cf56fa456b549738d98131bb2f9","src/unix/bsd/apple/b64.rs":"99fbd3e6d2c969080631e23f58deffa51cb3f42b7a08395b49556f19bb40d4e1","src/unix/bsd/apple/mod.rs":"e1959b482dc3c1703eb032b5d6e269c434326dc3eae9f99bb88d51c732cd3df0","src/unix/bsd/freebsdlike/dragonfly/mod.rs":"2cb0a5d10a3c5721d10209ad7ddc59f6756b2c1d4bc89450988053efad788eb6","src/unix/bsd/freebsdlike/freebsd/aarch64.rs":"4dcd712c0dd5470171746071a176391f937de7865dd0792173284992d9e3f2c7","src/unix/bsd/freebsdlike/freebsd/arm.rs":"84cf36223f0229cb383036563a4902731543e89b37e4dfe2f450cced566d8545","src/unix/bsd/freebsdlike/freebsd/mod.rs":"0752dc1097fd5e94aabfe7b6d4ead2b94e5c0540e2cd3c8efee883bba13e1a0c","src/unix/bsd/freebsdlike/freebsd/powerpc64.rs":"9873f41843cbf066f6ffab8eeb63115095f81ce9fa8f337b95ec871e40c6565d","src/unix/bsd/freebsdlike/freebsd/x86.rs":"716cb67cd0aea66d4a8e40470d32b55cbfafddf75edd34a90f70d518c8c75457","src/unix/bsd/freebsdlike/freebsd/x86_64.rs":"dd3d8a546730f09b1ef0dfeeb20244eef01d1b4028799b28b3a0c33ae05d5002","src/unix/bsd/freebsdlike/mod.rs":"2938bb8b0a0f1d66912bdb4bac3e59863bd90787fe49e1d3a522098acfdb2b7a","src/unix/bsd/mod.rs":"0e92970853a9efbb51a17b9cb8009eb4e9a04cbf12d0e315659d240812c1e760","src/unix/bsd/netbsdlike/mod.rs":"77b85ecd2187df55466663f6af624416d9c99922065c6fbd0438d5b7063db89c","src/unix/bsd/netbsdlike/netbsd/aarch64.rs":"b38fc046f9a40fea28bd26328b96629f4d5d63d7524936bd6af1865d401a8716","src/unix/bsd/netbsdlike/netbsd/arm.rs":"58cdbb70b0d6f536551f0f3bb3725d2d75c4690db12c26c034e7d6ec4a924452","src/unix/bsd/netbsdlike/netbsd/mod.rs":"75adb8d6ee202d50487913c245e1a880447582f45e1ef6339743305a13fb5719","src/unix/bsd/netbsdlike/netbsd/powerpc.rs":"ee7ff5d89d0ed22f531237b5059aa669df93a3b5c489fa641465ace8d405bf41","src/unix/bsd/netbsdlike/netbsd/sparc64.rs":"9489f4b3e4566f43bb12dfb92238960613dac7f6a45cc13068a8d152b902d7d9","src/unix/bsd/netbsdlike/netbsd/x86.rs":"20692320e36bfe028d1a34d16fe12ca77aa909cb02bda167376f98f1a09aefe7","src/unix/bsd/netbsdlike/netbsd/x86_64.rs":"135509edeaf3fb3f102d89d51ff1a8f82323497336a8dc7e1f0f23b5c2434b73","src/unix/bsd/netbsdlike/openbsdlike/bitrig/mod.rs":"51dd68ca3c3eab0f1fe496b0dc12ad8b85f8cf964af0c2c95ab9834ad03938a8","src/unix/bsd/netbsdlike/openbsdlike/bitrig/x86.rs":"bd251a102bed65d5cb3459275f6ec3310fe5803ff4c9651212115548f86256d0","src/unix/bsd/netbsdlike/openbsdlike/bitrig/x86_64.rs":"6e6f15e81597d85d83ca0eeb154e4f8b8e7f9cbb6a9cfa176601f78642ef94f9","src/unix/bsd/netbsdlike/openbsdlike/mod.rs":"c8d18b725c62c2f1a3c5e42d875e1a3b167c13a1bd6ae3d35f35a6ec29402f81","src/unix/bsd/netbsdlike/openbsdlike/openbsd/aarch64.rs":"ee0057fb97a5e16e46e0f8e4a215f6141b68ea75dd6cb5d53166bee2431082e2","src/unix/bsd/netbsdlike/openbsdlike/openbsd/mod.rs":"a3fb2cfc0e100c860dff1674a90693d57e66b7f12861155ceb42c2de372454bd","src/unix/bsd/netbsdlike/openbsdlike/openbsd/x86.rs":"1201371a662cb3515ebb42676cdca9199da7bf4d7c8f90b56f00db03a9fc61f7","src/unix/bsd/netbsdlike/openbsdlike/openbsd/x86_64.rs":"26ef6f50740fad5bb722e0f30025c369c287b2204489682319f7b24fce6de98d","src/unix/haiku/b32.rs":"69ae47fc52c6880e85416b4744500d5655c9ec6131cb737f3b649fceaadce15a","src/unix/haiku/b64.rs":"73e64db09275a8da8d50a13cce2cfa2b136036ddf3a930d2939f337fc995900b","src/unix/haiku/mod.rs":"b451e320e5c98d6b2e7fcb804e2be6669783510011ebd8dea27d64acbf955774","src/unix/hermit/aarch64.rs":"86048676e335944c37a63d0083d0f368ae10ceccefeed9debb3bbe08777fc682","src/unix/hermit/mod.rs":"d97797fe66dd43c61f6f895596f6a57145b4c9ef61edd93c8ff9b497a2d28411","src/unix/hermit/x86_64.rs":"ab832b7524e5fb15c49ff7431165ab1a37dc4667ae0b58e8306f4c539bfa110c","src/unix/mod.rs":"ca64d5483b17632ac0b1366edaa715f64b1aed696a7e038a7e49b726a22f871f","src/unix/newlib/aarch64/mod.rs":"c408a990f22fb4292a824f38367e9b517e6e6f8623328397ee631cc88b3d1f7d","src/unix/newlib/align.rs":"04e9b1ac6ca4af24fe5170385249fd64039ebf7f4817c5ceed3a303f3bc8a4aa","src/unix/newlib/arm/mod.rs":"2b6dba2e697ab9b4f4bc4dd5f28057249e9b596d1cb395a9322ec87605c4a5c4","src/unix/newlib/mod.rs":"e73d1b49662581382c91b3d4615d21812df58bf5477a3eba5c1df8a4c00a1c43","src/unix/newlib/no_align.rs":"7123dcec13604a11b7765c380ff3a4d0da19c39f4b03919de7857723c0cf1502","src/unix/no_align.rs":"c06e95373b9088266e0b14bba0954eef95f93fb2b01d951855e382d22de78e53","src/unix/notbsd/android/b32/arm.rs":"3625a32c7e58cfe683a53486fbe3d42d4e28f00bea31e19cb46ed2bb0b6a140b","src/unix/notbsd/android/b32/mod.rs":"05a714a785fa94a5131af3d59612ce1e9a5823b3327eb2a23de8ad0ce125c377","src/unix/notbsd/android/b32/x86.rs":"ae2b7f1d6278caddc007749bb1d09ca33f7593478a0fd7fe98b457dae86c7814","src/unix/notbsd/android/b64/aarch64.rs":"63d65629d79371814910f691672ef593d20244ee09be26f1ebe07ee6212d0163","src/unix/notbsd/android/b64/mod.rs":"d3bcb20e70d29a450577c09706bb520fab09d0cb3102755736867bf8a957319c","src/unix/notbsd/android/b64/x86_64.rs":"5547aef8dcbaa5a932559f34606fd8d89f6c9c15173d2b1412c12d39b3c1045f","src/unix/notbsd/android/mod.rs":"87dcb5bb8edf9ca2a7e7715f28c44c1330f15419d6d4f9422a81a61b6cf27a8c","src/unix/notbsd/emscripten/align.rs":"dee06bccb5f1a58bd498468f204b8f1d8f2c2a536c595d31e730330a79af7ea5","src/unix/notbsd/emscripten/mod.rs":"42947782f571b56cc1b1c1f4364bb35519bcc44ab8aca53bb13bfd46904de1e0","src/unix/notbsd/emscripten/no_align.rs":"f3960b1d6ede1f8f9d51407a3de5337d44dd5d954e1a4c2bf0ea11e76f2629da","src/unix/notbsd/linux/align.rs":"f2520d03b411519161eaaf043f1948b3279509a3f272b2958bca1d1aeda0434d","src/unix/notbsd/linux/mips/align.rs":"e4a3c27fe20a57b8d612c34cb05bc70646edb5cec7251957315afa53a7b9f936","src/unix/notbsd/linux/mips/mips32.rs":"96153abc38b10309e64cb49b1a1e4107be70dbc40bc54ba0372a4573b098b514","src/unix/notbsd/linux/mips/mips64.rs":"9bd96aa81cb0f536c3607d0a2906f4be7a44c3f89e40d5955a898835f04f0e15","src/unix/notbsd/linux/mips/mod.rs":"9a67a2f4043907a50a43569c06ffb4890aefa8db1c26a8737c6bb4bd3e39d90e","src/unix/notbsd/linux/mips/no_align.rs":"9cd223135de75315840ff9c3fd5441ba1cb632b96b5c85a76f8316c86653db25","src/unix/notbsd/linux/mod.rs":"895c6d0c1ee5436592e35b4dd87ea361ab81b750d45250b0ff850ac1cef4750d","src/unix/notbsd/linux/musl/b32/arm.rs":"fdf170e03812072785ec531f1ae810d0c4feb9b29d0c316681b9f7affe1262c0","src/unix/notbsd/linux/musl/b32/mips.rs":"afa4981d93f29b3fb0083a73ce1323f7dce1392f90d5cf1966b1fae10d510033","src/unix/notbsd/linux/musl/b32/mod.rs":"540928f168f145c136f9dd729ffa12b9d1838d9fe664fc642365d17d7fae648f","src/unix/notbsd/linux/musl/b32/powerpc.rs":"16c615770a96f155540511f58b5a8070c9c7a43e12bdfed83996690e7558bcb5","src/unix/notbsd/linux/musl/b32/x86.rs":"adf8bb67b47995760aab14f04ae671ebd8ecca5579e90314612f46cb79b30cc2","src/unix/notbsd/linux/musl/b64/aarch64.rs":"d98643408c2837387988f78adc95c90ad21196a6f8f879e3d33d7e8ccf612640","src/unix/notbsd/linux/musl/b64/mod.rs":"d9285cd705e2e92552a08c9aa69b810e7e1bd0e9da6edf069c678af285579661","src/unix/notbsd/linux/musl/b64/powerpc64.rs":"544d8a7f6d6d84143df8a4c3537c9a3a36bf3d338d7a1c15689b94492498d8d7","src/unix/notbsd/linux/musl/b64/x86_64.rs":"19197260a6d06ee521a5aa40a1860b7be33176d0f52bc92d56165fc42729cbd5","src/unix/notbsd/linux/musl/mod.rs":"13d766411fa206b987567e7c802dfe7585e6b7f002fe13ec0fbc810e522b7e2d","src/unix/notbsd/linux/no_align.rs":"7a1cc536b26c22019d7dab6b6db3a8c9edbb753d3f37a7985c30d8894c2c6b06","src/unix/notbsd/linux/other/align.rs":"e4a3c27fe20a57b8d612c34cb05bc70646edb5cec7251957315afa53a7b9f936","src/unix/notbsd/linux/other/b32/arm.rs":"d9892f7350b2978335f734f1cd2d7fed60f0f2e66aa05bee3f69549c031f8b14","src/unix/notbsd/linux/other/b32/mod.rs":"26211878c6481861e11393625620edaa0700cac41f55f0118c0f0bd42c1b7520","src/unix/notbsd/linux/other/b32/powerpc.rs":"253fcd2f9978525285be1903cc08f3fec2dc3b12d1660a33e2995b4f6b810d1c","src/unix/notbsd/linux/other/b32/x86.rs":"fea38039a1908ddeb90672b8ef246c743eec6758663a79aea401e21ef40a736d","src/unix/notbsd/linux/other/b64/aarch64.rs":"1124ab5e974718b94fa40ae0f1772fb1c537910ef3e018b7c6c94a38b83dd742","src/unix/notbsd/linux/other/b64/mod.rs":"63e1a3fdf5f4d1b9820934ab344c91aed5e458e7e05908535d2e942d51a08bf8","src/unix/notbsd/linux/other/b64/not_x32.rs":"fa8636fb93eab230ed53bdec0a06f5b81d6d982cc0800103563c8c1eefcdb2d9","src/unix/notbsd/linux/other/b64/powerpc64.rs":"a771d982ed8a9458e1f2f039f959b5075b22443159875ba5612eebba96661c24","src/unix/notbsd/linux/other/b64/sparc64.rs":"0caffe5924886f3aed187531dfe78189b3df40adb96782ec4b471647ff83e9b1","src/unix/notbsd/linux/other/b64/x32.rs":"06a26c5120ced30fc015c220799b67c4401be2f13fc6c7361bebd3d37ff4982d","src/unix/notbsd/linux/other/b64/x86_64.rs":"017cb7cf2810bc633e21879a8951a2c10031c500648e5eb4accc6c88b58ecaa3","src/unix/notbsd/linux/other/mod.rs":"a980e9e3853f8e24498d6cd185c38097710757654480ca460f6378ffeeddf5ef","src/unix/notbsd/linux/other/no_align.rs":"9cd223135de75315840ff9c3fd5441ba1cb632b96b5c85a76f8316c86653db25","src/unix/notbsd/linux/s390x/align.rs":"a7bdcb18a37a2d91e64d5fad83ea3edc78f5412adb28f77ab077dbb26dd08b2d","src/unix/notbsd/linux/s390x/mod.rs":"b01d158eefce4c31f377b63964d253f9934f7468af35a24474a163ad3725796a","src/unix/notbsd/linux/s390x/no_align.rs":"4a18e3875698c85229599225ac3401a2a40da87e77b2ad4ef47c6fcd5a24ed30","src/unix/notbsd/mod.rs":"5cfdcf78b70b4e4ef4a3733cac364a0bc2512dee798f897a8db7d78d4dd194a6","src/unix/solarish/compat.rs":"8db2a43eafbd3504e9eb9e8f18416c57d947798871bd45be3e2fb9946e292610","src/unix/solarish/mod.rs":"c6a740dac9af99321f48d5c9e86c6a4f5dcc611c413263881764f7121c1f7e9d","src/unix/uclibc/align.rs":"5607180357a9e3d87163e478116b45c7ece391d8366d65ff856cdf3e849452d7","src/unix/uclibc/arm/align.rs":"e4a3c27fe20a57b8d612c34cb05bc70646edb5cec7251957315afa53a7b9f936","src/unix/uclibc/arm/mod.rs":"66d54a7028a422fe331028441d1b1f18cf34bb2deff2a9e5220384b6e10dcc40","src/unix/uclibc/arm/no_align.rs":"9cd223135de75315840ff9c3fd5441ba1cb632b96b5c85a76f8316c86653db25","src/unix/uclibc/mips/mips32/align.rs":"e4a3c27fe20a57b8d612c34cb05bc70646edb5cec7251957315afa53a7b9f936","src/unix/uclibc/mips/mips32/mod.rs":"d1a1af63b583b170d5c94b46a04589a11b9d4f8dc658ab8c74302bae656d0e85","src/unix/uclibc/mips/mips32/no_align.rs":"9cd223135de75315840ff9c3fd5441ba1cb632b96b5c85a76f8316c86653db25","src/unix/uclibc/mips/mips64/align.rs":"a7bdcb18a37a2d91e64d5fad83ea3edc78f5412adb28f77ab077dbb26dd08b2d","src/unix/uclibc/mips/mips64/mod.rs":"03f3bad1c681e6fde4a8ed999ce1d38313166c17d35eded66bd6b4f8387efeb7","src/unix/uclibc/mips/mips64/no_align.rs":"bf11b59caa173a6d94d86f42a8de9c5682f798647fba3a17169214b59ab467fe","src/unix/uclibc/mips/mod.rs":"2d76e6cfeb2b7f7c59231a6e099f1aed811a45659e62153aaf00c220b9488a9d","src/unix/uclibc/mod.rs":"924f95073f77047b1f72de3d933852d1df13b19906a63c5974a64032f1bb772c","src/unix/uclibc/no_align.rs":"3f28637046524618adaa1012e26cb7ffe94b9396e6b518cccdc69d59f274d709","src/unix/uclibc/x86_64/align.rs":"26e48fc79dbdeee4408ae8e071aa90e1be34ccdf0c135689b805aa4abd568e5e","src/unix/uclibc/x86_64/l4re.rs":"bb31053d6403091e11f95ac2203982f279f8b984a19adf30796878c45fdd8c25","src/unix/uclibc/x86_64/mod.rs":"df78de7e0234192c0559b9820c0034a24d72a0820d361f9aad05a9eac36e80ff","src/unix/uclibc/x86_64/no_align.rs":"b308f7b110caf7405b57186882cfc4804caae49a8287f8ab612ec8548467f2f4","src/unix/uclibc/x86_64/other.rs":"42c3f71e58cabba373f6a55a623f3c31b85049eb64824c09c2b082b3b2d6a0a8","src/wasi.rs":"84e88b124249816db0976cda78515af3ee3eedacbcd69ae388dc2a6bc757dcd4","src/windows/gnu.rs":"4d9033162cc6f7d245256c7b165c1ec18a741771fd9b99a55b421e8d14978599","src/windows/mod.rs":"2761f3f80c8af5c04e685af8ac3a2bc8c7d6de91cbad9b96a3a6dae67457a891","src/windows/msvc.rs":"8f46cf66883c794175609a3b2bafaa094d0ba63eb6720ef1b84b175603f1074f"},"package":"bedcc7a809076656486ffe045abeeac163da1b558e963a31e29fbfbeba916917"} diff --git a/user/rust/0030-liblibc-linkage.patch b/user/rust/0030-liblibc-linkage.patch deleted file mode 100644 index 4daa0e48f..000000000 --- a/user/rust/0030-liblibc-linkage.patch +++ /dev/null @@ -1,17 +0,0 @@ -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-1b130d4c349d.patch b/user/rust/0031-liblibc-1b130d4c349d.patch deleted file mode 100644 index 29087689b..000000000 --- a/user/rust/0031-liblibc-1b130d4c349d.patch +++ /dev/null @@ -1,126 +0,0 @@ -From 1b130d4c349d35da9aeb07ce020cbf96755e8a6b Mon Sep 17 00:00:00 2001 -From: Samuel Holland <samuel@sholland.org> -Date: Thu, 1 Nov 2018 03:37:18 +0000 -Subject: [PATCH] Add F_RDLCK/F_WRLCK/F_UNLCK to several platforms - -These are used by the flock wrapper in rustc_data_structures. The -constants were already present in x86_64-linux-gnu and BSD (since -4928bd986907). ---- - src/unix/haiku/mod.rs | 4 ++++ - src/unix/notbsd/android/mod.rs | 4 ++++ - src/unix/notbsd/linux/musl/mod.rs | 4 ++++ - src/unix/notbsd/linux/other/b32/mod.rs | 4 ++++ - src/unix/notbsd/linux/other/b64/aarch64.rs | 4 ++++ - src/unix/notbsd/linux/other/b64/powerpc64.rs | 4 ++++ - src/unix/notbsd/linux/other/b64/sparc64.rs | 4 ++++ - 7 files changed, 28 insertions(+) - -diff --git a/src/liblibc/src/unix/haiku/mod.rs b/src/liblibc/src/unix/haiku/mod.rs -index 2ef36f8f3..307a5a40d 100644 ---- a/src/liblibc/src/unix/haiku/mod.rs -+++ b/src/liblibc/src/unix/haiku/mod.rs -@@ -351,6 +351,10 @@ pub const F_SETLK: ::c_int = 0x0080; - pub const F_SETLKW: ::c_int = 0x0100; - pub const F_DUPFD_CLOEXEC: ::c_int = 0x0200; - -+pub const F_RDLCK: ::c_int = 0x0040; -+pub const F_UNLCK: ::c_int = 0x0200; -+pub const F_WRLCK: ::c_int = 0x0400; -+ - pub const AT_FDCWD: ::c_int = -1; - pub const AT_SYMLINK_NOFOLLOW: ::c_int = 0x01; - pub const AT_SYMLINK_FOLLOW: ::c_int = 0x02; -diff --git a/src/liblibc/src/unix/notbsd/android/mod.rs b/src/liblibc/src/unix/notbsd/android/mod.rs -index 3e10acd50..5b750b2b1 100644 ---- a/src/liblibc/src/unix/notbsd/android/mod.rs -+++ b/src/liblibc/src/unix/notbsd/android/mod.rs -@@ -744,6 +744,10 @@ pub const F_SETOWN: ::c_int = 8; - pub const F_SETLK: ::c_int = 6; - pub const F_SETLKW: ::c_int = 7; - -+pub const F_RDLCK: ::c_int = 0; -+pub const F_WRLCK: ::c_int = 1; -+pub const F_UNLCK: ::c_int = 2; -+ - pub const TCGETS: ::c_int = 0x5401; - pub const TCSETS: ::c_int = 0x5402; - pub const TCSETSW: ::c_int = 0x5403; -diff --git a/src/liblibc/src/unix/notbsd/linux/musl/mod.rs b/src/liblibc/src/unix/notbsd/linux/musl/mod.rs -index 10d61ebeb..9c669d9b4 100644 ---- a/src/liblibc/src/unix/notbsd/linux/musl/mod.rs -+++ b/src/liblibc/src/unix/notbsd/linux/musl/mod.rs -@@ -121,6 +121,10 @@ pub const ECOMM: ::c_int = 70; - pub const EPROTO: ::c_int = 71; - pub const EDOTDOT: ::c_int = 73; - -+pub const F_RDLCK: ::c_int = 0; -+pub const F_WRLCK: ::c_int = 1; -+pub const F_UNLCK: ::c_int = 2; -+ - pub const SA_NODEFER: ::c_int = 0x40000000; - pub const SA_RESETHAND: ::c_int = 0x80000000; - pub const SA_RESTART: ::c_int = 0x10000000; -diff --git a/src/liblibc/src/unix/notbsd/linux/other/b32/mod.rs b/src/liblibc/src/unix/notbsd/linux/other/b32/mod.rs -index 5b0142ab8..d078f7537 100644 ---- a/src/liblibc/src/unix/notbsd/linux/other/b32/mod.rs -+++ b/src/liblibc/src/unix/notbsd/linux/other/b32/mod.rs -@@ -251,6 +251,10 @@ pub const F_SETOWN: ::c_int = 8; - pub const F_SETLK: ::c_int = 6; - pub const F_SETLKW: ::c_int = 7; - -+pub const F_RDLCK: ::c_int = 0; -+pub const F_WRLCK: ::c_int = 1; -+pub const F_UNLCK: ::c_int = 2; -+ - pub const SFD_NONBLOCK: ::c_int = 0x0800; - - pub const TIOCEXCL: ::c_ulong = 0x540C; -diff --git a/src/liblibc/src/unix/notbsd/linux/other/b64/aarch64.rs b/src/liblibc/src/unix/notbsd/linux/other/b64/aarch64.rs -index 2ba27a72b..171d904ca 100644 ---- a/src/liblibc/src/unix/notbsd/linux/other/b64/aarch64.rs -+++ b/src/liblibc/src/unix/notbsd/linux/other/b64/aarch64.rs -@@ -340,6 +340,10 @@ pub const F_SETOWN: ::c_int = 8; - pub const F_SETLK: ::c_int = 6; - pub const F_SETLKW: ::c_int = 7; - -+pub const F_RDLCK: ::c_int = 0; -+pub const F_WRLCK: ::c_int = 1; -+pub const F_UNLCK: ::c_int = 2; -+ - pub const SFD_NONBLOCK: ::c_int = 0x0800; - - pub const TIOCEXCL: ::c_ulong = 0x540C; -diff --git a/src/liblibc/src/unix/notbsd/linux/other/b64/powerpc64.rs b/src/liblibc/src/unix/notbsd/linux/other/b64/powerpc64.rs -index 9dd91f0fd..1813413b0 100644 ---- a/src/liblibc/src/unix/notbsd/linux/other/b64/powerpc64.rs -+++ b/src/liblibc/src/unix/notbsd/linux/other/b64/powerpc64.rs -@@ -327,6 +327,10 @@ pub const F_SETOWN: ::c_int = 8; - pub const F_SETLK: ::c_int = 6; - pub const F_SETLKW: ::c_int = 7; - -+pub const F_RDLCK: ::c_int = 0; -+pub const F_WRLCK: ::c_int = 1; -+pub const F_UNLCK: ::c_int = 2; -+ - pub const SFD_NONBLOCK: ::c_int = 0x0800; - - pub const TIOCEXCL: ::c_ulong = 0x540C; -diff --git a/src/liblibc/src/unix/notbsd/linux/other/b64/sparc64.rs b/src/liblibc/src/unix/notbsd/linux/other/b64/sparc64.rs -index 34438a735..a3251ec7b 100644 ---- a/src/liblibc/src/unix/notbsd/linux/other/b64/sparc64.rs -+++ b/src/liblibc/src/unix/notbsd/linux/other/b64/sparc64.rs -@@ -305,6 +305,10 @@ pub const F_SETOWN: ::c_int = 6; - pub const F_SETLK: ::c_int = 8; - pub const F_SETLKW: ::c_int = 9; - -+pub const F_RDLCK: ::c_int = 1; -+pub const F_WRLCK: ::c_int = 2; -+pub const F_UNLCK: ::c_int = 3; -+ - pub const SFD_NONBLOCK: ::c_int = 0x4000; - - pub const TIOCEXCL: ::c_ulong = 0x2000740d; --- -2.18.0 - diff --git a/user/rust/0031-typenum-pmmx.patch b/user/rust/0031-typenum-pmmx.patch new file mode 100644 index 000000000..6b3c5df57 --- /dev/null +++ b/user/rust/0031-typenum-pmmx.patch @@ -0,0 +1,33 @@ +From 0d5196feadafa77c727f517d747ffcf3fd0e8ba9 Mon Sep 17 00:00:00 2001 +From: Michael Hudson-Doyle <michael.hudson@canonical.com> +Date: Wed, 13 Mar 2019 15:55:30 +1300 +Subject: [PATCH] round result of (highest as f64).log(2.0) + +Even though (1024f64).log(2.0) has an exact, representable, value, with +rustc 1.32 on i386 it comes out as +9.999999999999999985 with +optimization enabled. And the rustc doesn't like having two defintions +for U1024 etc. + +--- + build/main.rs | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git rustc-1.35.0-src/vendor/typenum/build/main.rs rustc-1.35.0-src/vendor/typenum/build/main.rs +index 16b0ffe2f..b7939f993 100644 +--- rustc-1.35.0-src/vendor/typenum/build/main.rs ++++ rustc-1.35.0-src/vendor/typenum/build/main.rs +@@ -81,7 +81,7 @@ pub fn no_std() {} + fn main() { + let highest: u64 = 1024; + +- let first2: u32 = (highest as f64).log(2.0) as u32 + 1; ++ let first2: u32 = (highest as f64).log(2.0).round() as u32 + 1; + let first10: u32 = (highest as f64).log(10.0) as u32 + 1; + let uints = (0..(highest + 1)) + .chain((first2..64).map(|i| 2u64.pow(i))) +--- rustc-1.35.0-src/vendor/typenum/.cargo-checksum.json ++++ rustc-1.35.0-src/vendor/typenum/.cargo-checksum.json +@@ -1 +1 @@ +-{"files":{"CHANGELOG.md":"caf37574d41c38570e892c4fed38cbc2fd22794ec512949c1f0faad1d866fced","Cargo.toml":"58822547c70a09449e6a069e6c197423a9e471d993ebf4ea20101e042781edf7","LICENSE":"a825bd853ab71619a4923d7b4311221427848070ff44d990da39b0b274c1683f","README.md":"7a19a1fb2f219fbc270535e0fee2caa96968b976cd74d33d12e2f2ef436d0895","build/main.rs":"44d33ee79a76a90a769096547ba4c7a5d3822afffeed025dfbcc5bb755227d52","build/op.rs":"a393b6818384a50688db8cb923891f86ccce39a9dccbf7c684efb9bef83b4acf","build/tests.rs":"a04fd3185ea8b19c36cb939178e5fedf16b4b36c2df0a2e79593339d998bd1ce","src/array.rs":"7243dbe44f3818c852c67bd0c3af14d57473fb9c3efda2c0d98251b3fe8b4d57","src/bit.rs":"023f9f6768331ac17de72b6248c6a9d6a7b856842f56067c9c1e04b729ed9e04","src/int.rs":"de4c49717a7a40572e579fad2380f29698c5571844ff1462e368531072dba55e","src/lib.rs":"2a58ff8553851eb6b9d7fa70315d688431dd0573f8491e53cfe799a092347b96","src/marker_traits.rs":"abf73f3930b5129d01aaa64c51275c4ca4ce0ef8961f7a9e744ee731d6308200","src/operator_aliases.rs":"43eb6a29dc0387ec329df5d9af0b4479a1301b3a9b2304c3b7b7d8c03e01ff5d","src/private.rs":"48c572aa27bd444062eadb4bd3f5ca38c1e6efb66bc074f38555499b33f0dcaf","src/type_operators.rs":"df9ef3ae2a69d56258db41f8166342a65f6e4085581709140719d1b7e3916bb9","src/uint.rs":"df4fdad3110a7e08fdc21e49f7e82fd525d6a78fcf904a766729aa47c0200727","tests/test.rs":"1e559fadf0af1a38d7049caef26e3a162c58ea5e024aa637299376d776986549"},"package":"612d636f949607bdf9b123b4a6f6d966dedf3ff669f7f045890d3a4a73948169"} +\ No newline at end of file ++{"files":{"CHANGELOG.md":"caf37574d41c38570e892c4fed38cbc2fd22794ec512949c1f0faad1d866fced","Cargo.toml":"58822547c70a09449e6a069e6c197423a9e471d993ebf4ea20101e042781edf7","LICENSE":"a825bd853ab71619a4923d7b4311221427848070ff44d990da39b0b274c1683f","README.md":"7a19a1fb2f219fbc270535e0fee2caa96968b976cd74d33d12e2f2ef436d0895","build/main.rs":"38a90c85068bb6bba1d21e9d5976e693b9b868ed0c16b26986332d2ca1c01047","build/op.rs":"a393b6818384a50688db8cb923891f86ccce39a9dccbf7c684efb9bef83b4acf","build/tests.rs":"a04fd3185ea8b19c36cb939178e5fedf16b4b36c2df0a2e79593339d998bd1ce","src/array.rs":"7243dbe44f3818c852c67bd0c3af14d57473fb9c3efda2c0d98251b3fe8b4d57","src/bit.rs":"023f9f6768331ac17de72b6248c6a9d6a7b856842f56067c9c1e04b729ed9e04","src/int.rs":"de4c49717a7a40572e579fad2380f29698c5571844ff1462e368531072dba55e","src/lib.rs":"2a58ff8553851eb6b9d7fa70315d688431dd0573f8491e53cfe799a092347b96","src/marker_traits.rs":"abf73f3930b5129d01aaa64c51275c4ca4ce0ef8961f7a9e744ee731d6308200","src/operator_aliases.rs":"43eb6a29dc0387ec329df5d9af0b4479a1301b3a9b2304c3b7b7d8c03e01ff5d","src/private.rs":"48c572aa27bd444062eadb4bd3f5ca38c1e6efb66bc074f38555499b33f0dcaf","src/type_operators.rs":"df9ef3ae2a69d56258db41f8166342a65f6e4085581709140719d1b7e3916bb9","src/uint.rs":"df4fdad3110a7e08fdc21e49f7e82fd525d6a78fcf904a766729aa47c0200727","tests/test.rs":"1e559fadf0af1a38d7049caef26e3a162c58ea5e024aa637299376d776986549"},"package":"612d636f949607bdf9b123b4a6f6d966dedf3ff669f7f045890d3a4a73948169"} diff --git a/user/rust/0040-rls-atomics.patch b/user/rust/0040-rls-atomics.patch index 4dd813faa..d9aedb9af 100644 --- a/user/rust/0040-rls-atomics.patch +++ b/user/rust/0040-rls-atomics.patch @@ -1,17 +1,15 @@ -diff --git a/src/tools/rls/src/cmd.rs b/src/tools/rls/src/cmd.rs -index 64035aa..d9129d8 100644 ---- a/src/tools/rls/src/cmd.rs -+++ b/src/tools/rls/src/cmd.rs -@@ -17,7 +17,7 @@ use crate::config::Config; +--- rustc-1.35.0-src/src/tools/rls/rls/src/cmd.rs ++++ rustc-1.35.0-src/src/tools/rls/rls/src/cmd.rs +@@ -7,7 +7,7 @@ use crate::config::Config; use crate::server::{self, LsService, Notification, Request, RequestId}; use rls_analysis::{AnalysisHost, Target}; use rls_vfs::Vfs; -use std::sync::atomic::{AtomicU64, Ordering}; +use std::sync::atomic::{AtomicU32, Ordering}; - use languageserver_types::{ + use lsp_types::{ ClientCapabilities, CodeActionContext, CodeActionParams, CompletionItem, -@@ -424,8 +424,8 @@ fn url(file_name: &str) -> Url { +@@ -313,8 +313,8 @@ fn url(file_name: &str) -> Url { } fn next_id() -> RequestId { @@ -22,11 +20,9 @@ index 64035aa..d9129d8 100644 } // 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 7b93d4a..f3c5361 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}; +--- rustc-1.35.0-src/src/tools/rls/rls/src/server/io.rs ++++ rustc-1.35.0-src/src/tools/rls/rls/src/server/io.rs +@@ -7,7 +7,7 @@ use crate::lsp_data::{LSPNotification, LSPRequest}; use std::fmt; use std::io::{self, BufRead, Write}; @@ -35,7 +31,7 @@ index 7b93d4a..f3c5361 100644 use std::sync::Arc; use jsonrpc_core::{self as jsonrpc, response, version, Id}; -@@ -190,14 +190,14 @@ pub trait Output: Sync + Send + Clone + 'static { +@@ -171,13 +171,13 @@ pub trait Output: Sync + Send + Clone + 'static { /// An output that sends notifications and responses on `stdout`. #[derive(Clone)] pub(super) struct StdioOutput { @@ -44,15 +40,14 @@ index 7b93d4a..f3c5361 100644 } 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()), - } + /// Constructs a new `stdout` output. + pub(crate) fn new() -> StdioOutput { +- StdioOutput { next_id: Arc::new(AtomicU64::new(1)) } ++ StdioOutput { next_id: Arc::new(AtomicU32::new(1).into()) } } } -@@ -215,7 +215,7 @@ impl Output for StdioOutput { + +@@ -194,7 +194,7 @@ impl Output for StdioOutput { } fn provide_id(&self) -> RequestId { diff --git a/user/rust/APKBUILD b/user/rust/APKBUILD index 8534e1112..393f2ce98 100644 --- a/user/rust/APKBUILD +++ b/user/rust/APKBUILD @@ -3,10 +3,10 @@ # Contributor: Jeizsm <jeizsm@gmail.com> # Maintainer: Samuel Holland <samuel@sholland.org> pkgname=rust -pkgver=1.31.1 -_bootcargover=0.31.0 -_bootver=1.30.1 -_llvmver=6 +pkgver=1.35.0 +_bootcargover=0.35.0 +_bootver=1.34.2 +_llvmver=8 pkgrel=0 pkgdesc="The Rust Programming Language" url="https://www.rust-lang.org" @@ -50,25 +50,15 @@ source="https://static.rust-lang.org/dist/rustc-$pkgver-src.tar.xz 0004-Require-static-native-libraries-when-linking-static-.patch 0005-Remove-nostdlib-and-musl_root-from-musl-targets.patch 0006-Prefer-libgcc_eh-over-libunwind-for-musl.patch - 0007-Add-powerpc-unknown-linux-musl-target.patch - 0008-Fix-powerpc64-ELFv2-big-endian-struct-passing-ABI.patch - 0009-Use-the-ELFv2-ABI-on-powerpc64-musl.patch - 0010-Add-powerpc64-unknown-linux-musl-target.patch - 0011-rustc_data_structures-use-libc-types-constants-in-fl.patch - 0012-runtest-Fix-proc-macro-tests-on-musl-hosts.patch - 0013-Fix-double_check-tests-on-big-endian-targets.patch - 0014-test-invalid_const_promotion-Accept-SIGTRAP-as-a-val.patch - 0015-test-linkage-visibility-Ensure-symbols-are-visible-t.patch - 0016-x.py-Use-python3-instead-of-python.patch - 0017-test-target-feature-gate-Only-run-on-relevant-target.patch - 0018-test-use-extern-for-plugins-Don-t-assume-multilib.patch - 0019-test-sysroot-crates-are-unstable-Fix-test-when-rpath.patch - 0020-Ignore-broken-and-non-applicable-tests.patch - 0021-Link-stage-2-tools-dynamically-to-libstd.patch - 0022-Move-debugger-scripts-to-usr-share-rust.patch - 0023-Add-foxkit-target-specs.patch - 0030-liblibc-linkage.patch - 0031-liblibc-1b130d4c349d.patch + 0007-runtest-Fix-proc-macro-tests-on-musl-hosts.patch + 0008-test-use-extern-for-plugins-Don-t-assume-multilib.patch + 0009-test-sysroot-crates-are-unstable-Fix-test-when-rpath.patch + 0010-Ignore-broken-and-non-applicable-tests.patch + 0011-Link-stage-2-tools-dynamically-to-libstd.patch + 0012-Move-debugger-scripts-to-usr-share-rust.patch + 0013-Add-foxkit-target-specs.patch + 0030-libc-linkage.patch + 0031-typenum-pmmx.patch 0040-rls-atomics.patch " builddir="$srcdir/rustc-$pkgver-src" @@ -117,10 +107,10 @@ build() { debuginfo-lines = true debuginfo-only-std = true debuginfo-tools = true - use-jemalloc = false backtrace = true channel = "stable" rpath = false + jemalloc = false [target.$CTARGET] cc = "$CTARGET-gcc" cxx = "$CTARGET-g++" @@ -132,26 +122,22 @@ build() { LIBGIT2_SYS_USE_PKG_CONFIG=1 \ LLVM_LINK_SHARED=1 \ RUST_BACKTRACE=1 \ - ./x.py build -j ${JOBS:-2} + python3 x.py build -j ${JOBS:-2} } check() { cd "$builddir" RUST_BACKTRACE=1 \ - ./x.py test -j ${JOBS:-2} --no-doc --no-fail-fast \ + python3 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/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 \ @@ -165,7 +151,7 @@ check() { package() { cd "$builddir" - DESTDIR="$pkgdir" ./x.py install + DESTDIR="$pkgdir" python3 x.py install rm "$pkgdir"/usr/lib/*.so \ "$pkgdir"/usr/lib/rustlib/components \ @@ -200,6 +186,7 @@ gdb() { install_if="$pkgname=$pkgver-r$pkgrel gdb" _mv "$pkgdir"/usr/bin/rust-gdb "$subpkgdir"/usr/bin + _mv "$pkgdir"/usr/bin/rust-gdbgui "$subpkgdir"/usr/bin _mv "$pkgdir"/usr/share/rust/gdb_*.py "$subpkgdir"/usr/share/rust || true } @@ -301,33 +288,23 @@ _mv() { mkdir -p "$dest" mv "$@" } -sha512sums="d6688711452295c41468af214f036499074d82fbeedc3f03560275219c2fae910e623e38e3210176d86f78ba5533ea098da5ff21532c8ad1a5aac132bb74ee02 rustc-1.31.1-src.tar.xz -16596561ff87c66f64f4b40602184355d3695822b9b9e6e0e929f340664718698e6f5b378c9162b48f9cb180be5fd8e583e5e51a1c57c1cd55dcc80f468cb509 cargo-0.31.0-powerpc-foxkit-linux-musl.tar.xz -cdfc7a3d51d66338f31007daafab95570e4e465983add99db7a45f1a3e601588b19e1257fe3e7fcc6b7104ba445add2fa1cda71325a9ab6d196b4ad0dcef2fb5 rust-std-1.30.1-powerpc-foxkit-linux-musl.tar.xz -190ed9d84513a229f389fc5d1bf0b8e22202bd3b9802330ee2844c436ae13700bdaded091498be4f2c4c65b2f6ef55c1e2db41a918747ac60e8e11e331be2c29 rustc-1.30.1-powerpc-foxkit-linux-musl.tar.xz -acab7c5ffa73cd83cf3ae23e69d2c05ccc3ca03aa4d5a15179af76f2e75b7c5a1bc8d2969c0a9a4b5ad36a50a8cce283e62db878797be6d0da252b414de004cd 0001-Don-t-pass-CFLAGS-to-the-C-compiler.patch -f9773277e91e91d0bd6749890b8d332a86522927d90548af02892c6d01b8fbb3b234993eec8e5b8d6a3b6f1cec310a112e274f47f70d30829ca61a0da8d45bb5 0002-Fix-LLVM-build.patch -9e87964d41e14f70acc1961a0162bbf3ebca73f1c2b2842c3b1c8b65776466c9299d6974fc6b94a4e06547ae8ce638c28cdedf24eeb2616976f9dd727b989c13 0003-Allow-rustdoc-to-work-when-cross-compiling-on-musl.patch -b08e247785b6b94c24e9921665c0a80a21d6802cdcfb67cf381ff8c674388156fc6d88f8206c2d1eed152f4ad3333bf4a16cdd1c3376b97500f96c437e967ecb 0004-Require-static-native-libraries-when-linking-static-.patch -39c2f63aaf567e539ef803afa4e02d9f373df33167306dabb303044854c95bcc52a8b0fe02a2ff186d3d37fb25ac6ceee2bea25beddb0b8d0510b41dcbfb781a 0005-Remove-nostdlib-and-musl_root-from-musl-targets.patch -80a48ba90dce672bd47dba4358e705f0585b17af6a9236887c0bf79d229fe7250b6d5cf54c2630c132721be890cf6098376aac408ac2d3feb5fd8b5ec0678446 0006-Prefer-libgcc_eh-over-libunwind-for-musl.patch -71fc70a70ee42fed66ea7abcccffd46c02b877f716ccb366d68c8b252290366aa3d4819bdf6ce43cf8327088ff9ff0cac9444d9fab8b4d6645dfc1a018bd5285 0007-Add-powerpc-unknown-linux-musl-target.patch -54e7b24d3da6905d02252dbd3011a16c52c1fae6922997dcccf034b5230025e05bb0d029a5fe043c186a39f8908e8e44f9a857db943f1c49d804bcb97cca71b0 0008-Fix-powerpc64-ELFv2-big-endian-struct-passing-ABI.patch -088d509715de07000c815005fd513d4bb43c5a273dab1cec54c3617c1d342d1eff7d4d2edc48f20b80aec8b3e380f7480d7336b9c7dc4b89b78a31a88e04eb09 0009-Use-the-ELFv2-ABI-on-powerpc64-musl.patch -f39578109d1591759aff29cc1a4127f1456c60ed05993704574a9c1e2331243baa85e3f66ba4634f57efd964b1d11a4539a3ab3a1fdab9c3163d91c658e04bf2 0010-Add-powerpc64-unknown-linux-musl-target.patch -11ee5b81d354b36369eb5d7f57bcde04a350f1ca5e6034d04eae6c5064dad37b05a26ca44f99499f3f7664c11beba0aafbc1adb6807a21bcce878717659d04b3 0011-rustc_data_structures-use-libc-types-constants-in-fl.patch -8ff473da3fd668ee36826e206245c7b6d20c671b4016c9a9d5e1d22af05f8d4d724543942a53ab38dd9c7bb6e4c3eff33daec4a84b0ee333b25b007f610b4b49 0012-runtest-Fix-proc-macro-tests-on-musl-hosts.patch -1ce5797d0b9a0eb24d203a437b999ac9691cf741086645864b3a0dcf134f31c31e68e6e1618f44d3bd3c3743c067713c472e93c69f551d14f2e0233b6f10d2cd 0013-Fix-double_check-tests-on-big-endian-targets.patch -f72c803cd531e6c85c37993214a89a8e49d776a6f50405956d6b453cc9036e596eeac4da36c564fc9388908237fe37291dfc6a0d00ed1d5f83186371f8ad6c07 0014-test-invalid_const_promotion-Accept-SIGTRAP-as-a-val.patch -861402c0468438428aefdbcec13c82678ba280816f5482a5707805caa37ddabf8df95d894dd0ab99d3e0b09de3b0a602cb29e62afd479cedf6112950ed174f9a 0015-test-linkage-visibility-Ensure-symbols-are-visible-t.patch -1dec944575e8bb6fc7ad910e2dae4d694a2571b36652a27a9b7ee11c40018d39d41f89bf827d909a67ff4d16d0970d1c753b24dfd5dbd0362028dcf12f60dd61 0016-x.py-Use-python3-instead-of-python.patch -9633256006c28106d9b5e560e4cd4ee72de700a0f54d0c5fd1576760213e674f3c123b83a547bbdf9cdfde92ba6d10edf3cb598f3ad67db6e20b11d24fb49d54 0017-test-target-feature-gate-Only-run-on-relevant-target.patch -3ab705f45cc75507c5a8fbf7c8520c7231d7d1870e5dc5da3d822e50f28a6f242ba31e712f98f72ff96143010812212cdc99f8b1b197a680bbe249dfb9779d74 0018-test-use-extern-for-plugins-Don-t-assume-multilib.patch -572669f940c93b57b1f02161685bd3e35e2757bfd1f1d2e6ca5fd7d6e80c6733917a2c28205c4bc8741eae01bd790fe14996ba857884494a6084f4670819e43d 0019-test-sysroot-crates-are-unstable-Fix-test-when-rpath.patch -e1cd1bc3a363ce214e887c4c61e233d388c3b75155ae4a84e8381bdccee5897ddffc992bc22dcdb6316b64516236ae4b07d06ff331e9e031c524196b0e5c40d5 0020-Ignore-broken-and-non-applicable-tests.patch -b05ef2ddd53262e46a4a6148db25b0903347e531f94a1ec194aafd31e49b4559564edbe4842f82b457d9c700723474fa29119f57969c0208199d5f2126ce6509 0021-Link-stage-2-tools-dynamically-to-libstd.patch -34ce4f9227a0e58113e8871db78681d1a0180f4af9de08b17c7ba15d13f47d189e2b0c66cb203ddfee8ac29131b6e5bc7ba8fd699d63847ab2a55973503788bc 0022-Move-debugger-scripts-to-usr-share-rust.patch -6204dfc16ca27bda4c77a5f9a3805af9995e24c8b9cda6d45d0860c3625e937ec6e871a3ccec6357ab4cd52b0e73450897960102bb1e6f1ce80ae95780a8dbea 0023-Add-foxkit-target-specs.patch -f94abe390798b968bccfba1c908ab5895220ed0d167314b790a9c28b10cac81fb2e3b08760b4e8551ad5a5d02cd052d3d0d647ad8f8634e97f4d3b0470a21c42 0030-liblibc-linkage.patch -875f0b676c61c1ec67894fc7866233869ced8fc975960b8b99585bad370066f9a6bf591590a745c73a0bcc93b9f7fda74a703829c50d04b80846aecc92ae725a 0031-liblibc-1b130d4c349d.patch -41ab9d6f361ee2fba267c9836c1a382dc86101d1bfb59cd942be8e8fc526ad65d845c9395cba7f760808d345d107f32e75af9057d67c450b8fbdd8a73636fb2e 0040-rls-atomics.patch" +sha512sums="477c10b780bd54776be7ecbda0ab970416253e4a87c3e701825a7d07bcbcd91601b8e61129c5d04d4259e89c2e81e87cdbdee853375a8de5c9cf8372be2c9129 rustc-1.35.0-src.tar.xz +042b4c8a45cc803a202517dd376a2eb2daca50e1da43e96c32b07270afbdce4daa7091c3f11479f908e92d1031c1503a27ac37c007c1fa24743a82abcf765a29 cargo-0.35.0-powerpc-foxkit-linux-musl.tar.xz +a25de7843a512b79d214066cb2f01c4e414ae17c053314c103261e3ac805700dcb2ebc6aa28801cb74dcb6211cc57181d3c266d2b8988e2d8835df4b409929bb rust-std-1.34.2-powerpc-foxkit-linux-musl.tar.xz +9988037ebe219a30faf5740e479c34b464feabd37c192a2a37330f04d67dfed8f8a26439cdf8de4e255fa4fb17959bee7e78d5f6de040522131fdc70ccce8af1 rustc-1.34.2-powerpc-foxkit-linux-musl.tar.xz +dbc74b875e9fab4fdcb815dea4ef855a59361215c291ea11013587340f9e3cabece4b6cc94a0e118e862b47f9ee27447e385c2c524bcb8847a3d775ae2f76fb3 0001-Don-t-pass-CFLAGS-to-the-C-compiler.patch +456c247b50936a2594024b5cec493e8ddbc3159196ce2cc8ae5134f1c3ac2f0928ae3ffe4f3f4154fcc2bf596846b6b3b39005ad76d51076796a9d3988f1df62 0002-Fix-LLVM-build.patch +d20a03a06315c114c61eedfd1b536169d64bd428beb352a4d04abb0358f0b1a75a1c1108e2429c80f715536bd67ef16597f47bd61e75f0e1ddd9681b43197763 0003-Allow-rustdoc-to-work-when-cross-compiling-on-musl.patch +a6a413a0e2435697fb66b6a11e4d9da8365b2c2d51d10eccbcac32fba09579199dc8bcd13fff1fd74212d1724292db5607827b2c546d2c06122e6f1fb70d8c16 0004-Require-static-native-libraries-when-linking-static-.patch +2bf5696f493c8b11da77f27348498338ca0f094f69f357077d5507b1f96b6066fa86b711c5c30737d82f217a7eb1afc8a4ce9d25f0491830a800a034607e0c6a 0005-Remove-nostdlib-and-musl_root-from-musl-targets.patch +fedd9f54ae8d0780091dadac2364595abfc7ef13ac21a3489b91de5ad29efa477179f42ef59cb9a2e0264e15f88164f72843fc176180cd72e54052f3b305703c 0006-Prefer-libgcc_eh-over-libunwind-for-musl.patch +19e17358f738c982bb7a393e0b12173de8b79f905a677fdc5c183d54219b58a1618607e993cfe12d3eb69a2cb25a0b7b52313eb8e60a91ec9d37bb5b0c140b43 0007-runtest-Fix-proc-macro-tests-on-musl-hosts.patch +0c943ddb3fbacfa47adfa43e8ec41137d0e9c719e59af3ff1e3e1a2a6576c8eeed2b1db77f3f6f252eea273f9f1320c573ecde22e56800dbffac3e2ef18862f3 0008-test-use-extern-for-plugins-Don-t-assume-multilib.patch +22429c5dbbfda30cc2f08ed5591124fc8346d63d6ef200607be3d051e2524fdaf8a32264bef4e99f9186b22c05c805bf82e7c6d6d814a602dcefd9d4d8d708fd 0009-test-sysroot-crates-are-unstable-Fix-test-when-rpath.patch +ec851207a03d4b3bf2711e2db677170f520217f19de9f4f9817e62b5f9d10573eb468ced5e13c540bb5cda8c7006b259a0a0241cfa70e1f6f08386e656c86b79 0010-Ignore-broken-and-non-applicable-tests.patch +2a459b55386a4e3419b22efe1c5b5b37d75e2d1a11db4670ee5217ad5404df055eb6510378c74f5ff5662e940155c58d094f41b5738021f608c807f94a498e94 0011-Link-stage-2-tools-dynamically-to-libstd.patch +9e698d01cdb535beb364827d2a0bc87b543db65973c88a7fa64e8e19c671d1cf4cc4c8756018bff261a7581df102c8180599c434b347463a63c5ab2f575ad4c2 0012-Move-debugger-scripts-to-usr-share-rust.patch +a403a032180ee7d3c0d034d97b8de175426d8dd3368ebfcab5ad9c7202f9a0ca0197a72adc1eff13f422ecaed9c0a7e4cd22daf85061159ddaa12c335fd00914 0013-Add-foxkit-target-specs.patch +6c3aaa27adbe361cb354c9a7139b9da949f4acba81af6107e5972fa5c32fa47a972b5ad4567b9b54f4383650dbb3a3c590dfe6f23a5af16d7ff4ad3fb334e997 0030-libc-linkage.patch +0cb12e9165d198c1e04b258454dbaf5459e192ad24d64c9fa132ebe0f1bcd5da3550eae8dfdaa792fa809b505af62964ecf0219dc4373420ee8ad3e111539a09 0031-typenum-pmmx.patch +ab35bacf45ef5e46be110a8d27867fd4d5deb23cd5cbe8dc7f1da2177469945f9254f2a7915ee4fc430468a4421623429f0a01eb9eba14e047384efe3d3ec152 0040-rls-atomics.patch" diff --git a/user/sane/APKBUILD b/user/sane/APKBUILD index 1d7322866..941402502 100644 --- a/user/sane/APKBUILD +++ b/user/sane/APKBUILD @@ -4,7 +4,7 @@ pkgname=sane _pkgname=sane-backends pkgver=1.0.27 -pkgrel=4 +pkgrel=5 pkgdesc="Scanner access library" url="http://www.sane-project.org/" arch="all" @@ -35,8 +35,9 @@ for _backend in $_backends; do subpackages="$subpackages $pkgname-backend-$_backend:_backend" done subpackages="$pkgname-doc $pkgname-dev $subpackages $pkgname-utils saned - $pkgname-udev::noarch $_pkgname::noarch" -source="https://distfiles.gentoo.org/distfiles/$_pkgname-$pkgver.tar.gz + saned-openrc:openrc:noarch $pkgname-udev::noarch $_pkgname::noarch + $pkgname-lang" +source="http://distfiles.gentoo.org/distfiles/$_pkgname-$pkgver.tar.gz saned.initd include.patch network.patch @@ -81,6 +82,12 @@ saned() { mkdir -p "$subpkgdir"/etc/sane.d "$subpkgdir"/usr mv "$pkgdir"/etc/sane.d/saned.conf "$subpkgdir"/etc/sane.d mv "$pkgdir"/usr/sbin "$subpkgdir"/usr/ +} + +openrc() { + pkgdesc="Network scanner server (OpenRC runscripts)" + depends="saned" + install_if="saned=$pkgver-r$pkgrel openrc" install -Dm755 "$srcdir"/saned.initd "$subpkgdir"/etc/init.d/saned } @@ -101,7 +108,7 @@ udev() { backends() { local _backend; pkgdesc="$pkgdesc (metapackage)" - depends="$pkgname-utils $pkgname-saned" + depends="$pkgname-utils saned" for _backend in $_backends; do [ "$_backend" = "test" ] && continue depends="$depends $pkgname-backend-$_backend" diff --git a/user/scons/APKBUILD b/user/scons/APKBUILD index c3ebf5694..b2c55c08d 100644 --- a/user/scons/APKBUILD +++ b/user/scons/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=scons -pkgver=3.0.4 +pkgver=3.0.5 pkgrel=0 pkgdesc="Python-based software building system" url="https://scons.org/" @@ -15,19 +15,16 @@ source="https://prdownloads.sourceforge.net/scons/scons-$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="064a604939460fa85aa247776e5a2083ce98cac5f49f6035886d207f5cf167255756ee10cc00dd8228278d0d1efbed2afd8793bf3ca736a3ac970fabc3c4b627 scons-3.0.4.tar.gz +sha512sums="0477038b014674049f12899b64584d44a85283d521b2422561e42020a5ae296a5af005684087c3ff410ed3fcbdcc5ff61998bc429eb29513f2a864138ffc4945 scons-3.0.5.tar.gz cb8be26f0d8cae7974dffcb3008c67254e8904bb8bb91f9732dd01a9942e33d57527101ec4104a866061096b991a336d00b344da48cf835489fc5d26fb1f331e python3-bang.patch" diff --git a/user/sddm/APKBUILD b/user/sddm/APKBUILD index 954f978d8..6496110b7 100644 --- a/user/sddm/APKBUILD +++ b/user/sddm/APKBUILD @@ -1,8 +1,8 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=sddm -pkgver=0.18.0 -pkgrel=0 +pkgver=0.18.1 +pkgrel=1 pkgdesc="Simple Desktop Display Manager" url="https://github.com/sddm/sddm/" arch="all" @@ -11,7 +11,7 @@ depends="consolekit2" makedepends="cmake extra-cmake-modules qt5-qtbase-dev libxcb-dev upower-dev consolekit2-dev linux-pam-dev qt5-qtdeclarative-dev qt5-qttools-dev utmps-dev" -subpackages="$pkgname-lang $pkgname-xdm::noarch" +subpackages="$pkgname-lang $pkgname-openrc" install="sddm.post-install" langdir="/usr/share/sddm/translations" pkgusers="sddm" @@ -19,11 +19,11 @@ pkggroups="sddm" source="https://github.com/sddm/sddm/releases/download/v$pkgver/sddm-$pkgver.tar.xz ck2-support.patch pam-path-fix.patch + sddm.initd utmpx.patch - xdm.confd" + " build() { - cd "$builddir" if [ "$CBUILD" != "$CHOST" ]; then CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux" fi @@ -42,23 +42,21 @@ build() { } check() { - cd "$builddir" CTEST_OUTPUT_ON_FAILURE=TRUE ctest } package() { - cd "$builddir" make DESTDIR="$pkgdir" install + install -D -m755 "$srcdir"/sddm.initd "$pkgdir"/etc/init.d/sddm } -xdm() { - pkgdesc="Package to use SDDM as the system X display manager" - depends="sddm=$pkgver-r$pkgrel" - install -D -m644 "$srcdir"/xdm.confd "$subpkgdir"/etc/conf.d/xdm +openrc() { + default_openrc + depends="sddm xorg-server" } -sha512sums="359ea6060d02bcc1c810c8338b836f1c8e76d7e3ec132c4ed2327374f4e52b8a56884626dd2d0df87465137b275deba7b6c48b2e992aafed4375f0929fafda6f sddm-0.18.0.tar.xz +sha512sums="ff0637600cda2f4da1f643f047f8ee822bd9651ae4ccbb614b9804175c97360ada7af93e07a7b63832f014ef6e7d1b5380ab2b8959f8024ea520fa5ff17efd60 sddm-0.18.1.tar.xz 075e3baf24606cdea620737dbc00f7cf5c487ab6d88e37b23a581afcfbcf872c379753c89c80ad5c90c28fa27d3e5c5df64d4fd30764fdbfc0586e0f26666fe1 ck2-support.patch f0b4eb7ef0581701157f9decc637629156f36f6711b9a4bae517f94d7a1df614c81bbd891c918f07ac50e2a3d1519c43ccb9eefd80282c95dd79eca0e8d90904 pam-path-fix.patch -c42d8b3edbc0ae7e3d5ea7bb0080c5c50e0569f0ea947e1ba17bc794c8c0d67a214e62aad7eba0a51791c44b29a3017692bbe738250c63cb2219891bb1313422 utmpx.patch -5a03b3211e9d84ee762523631859a26b869aee2189f6845dc780c7a1e60a6658e2240e9ef9be05858708d2552ae77b594509dabe49794538f88d2ad6578d1fdf xdm.confd" +10cac48b821ff7ad39ece4cbc45a8e814d00251b0f8d02f9e42888ad97f465438320f078663be98c5b39630a0bbb26f4f0d76b44574c87a76b4871872add8b9f sddm.initd +c42d8b3edbc0ae7e3d5ea7bb0080c5c50e0569f0ea947e1ba17bc794c8c0d67a214e62aad7eba0a51791c44b29a3017692bbe738250c63cb2219891bb1313422 utmpx.patch" diff --git a/user/sddm/sddm.initd b/user/sddm/sddm.initd new file mode 100644 index 000000000..cf5c1af79 --- /dev/null +++ b/user/sddm/sddm.initd @@ -0,0 +1,17 @@ +#!/sbin/openrc-run + +depends() { + needs localmount + after bootmisc consolefont modules netmount keymaps + + use consolekit dbus +} + +description="Simple Desktop Display Manager" +command="/usr/bin/sddm" +command_args="${sddm_opts}" +start_stop_daemon_args="-m --background" +pidfile="/var/run/sddm.pid" + +# uses the openrc templates for start()/stop() + diff --git a/user/sddm/xdm.confd b/user/sddm/xdm.confd deleted file mode 100644 index 9a6cd65da..000000000 --- a/user/sddm/xdm.confd +++ /dev/null @@ -1 +0,0 @@ -DISPLAYMANAGER="sddm" diff --git a/user/shared-mime-info/APKBUILD b/user/shared-mime-info/APKBUILD index e28f8915f..3e132dee4 100644 --- a/user/shared-mime-info/APKBUILD +++ b/user/shared-mime-info/APKBUILD @@ -1,20 +1,19 @@ # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=shared-mime-info -pkgver=1.10 +pkgver=1.12 pkgrel=0 pkgdesc="MIME database for desktop software" url="https://freedesktop.org/wiki/Software/shared-mime-info" arch="all" license="GPL-2.0+" +depends="" makedepends="glib-dev intltool libxml2-dev libxml2-utils" -depends= +subpackages="$pkgname-doc $pkgname-lang" install="$pkgname.post-deinstall" triggers="$pkgname.trigger=/usr/share/mime" -subpackages="$pkgname-doc $pkgname-lang" -source="https://freedesktop.org/~hadess/$pkgname-$pkgver.tar.xz" +source="https://gitlab.freedesktop.org/xdg/shared-mime-info/uploads/80c7f1afbcad2769f38aeb9ba6317a51/$pkgname-$pkgver.tar.xz" build() { - cd "$builddir" ac_cv_func_fdatasync=no ./configure \ --build=$CBUILD \ --host=$CHOST \ @@ -25,13 +24,11 @@ build() { } check() { - cd "$builddir" make check } package() { - cd "$builddir" make -j1 DESTDIR="$pkgdir" install } -sha512sums="efc2b63cae11e6b0332f8607ba57a885dec68a23ac299bbda3eb6e2c7ed071c7c40dba73e9cf23ab675fcaa86ea3777fa931a9f25000a08ec6a748734c88beda shared-mime-info-1.10.tar.xz" +sha512sums="c9db138586fe4c789b5a89d3cdcf865d5b3258241accd254deecd7665e8b51fc538adeaeeda4fe332474f7d7ffa84f101cba26539a58e134201673d6d1495a2f shared-mime-info-1.12.tar.xz" diff --git a/user/slang/APKBUILD b/user/slang/APKBUILD new file mode 100644 index 000000000..12929ac2b --- /dev/null +++ b/user/slang/APKBUILD @@ -0,0 +1,34 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: A. Wilcox <awilfox@adelielinux.org> +pkgname=slang +pkgver=2.3.2 +pkgrel=0 +pkgdesc="Library for display and input management" +url="http://www.jedsoft.org/slang/" +arch="all" +license="GPL-2.0+ AND NTP" +depends="" +makedepends="pcre-dev" +subpackages="$pkgname-dev $pkgname-doc" +source="https://www.jedsoft.org/releases/slang/slang-$pkgver.tar.bz2" + +build() { + ./configure \ + --build=$CBUILD \ + --host=$CHOST \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --localstatedir=/var + make -j1 +} + +check() { + make check +} + +package() { + make DESTDIR="$pkgdir" -j1 install +} + +sha512sums="35cdfe8af66dac62ee89cca60fa87ddbd02cae63b30d5c0e3786e77b1893c45697ace4ac7e82d9832b8a9ac342560bc35997674846c5022341481013e76f74b5 slang-2.3.2.tar.bz2" diff --git a/user/smake/APKBUILD b/user/smake/APKBUILD deleted file mode 100644 index 809060c9b..000000000 --- a/user/smake/APKBUILD +++ /dev/null @@ -1,35 +0,0 @@ -# Contributor: A. Wilcox <awilfox@adelielinux.org> -# Maintainer: A. Wilcox <awilfox@adelielinux.org> -pkgname=smake -pkgver=1.2.5 -pkgrel=0 -pkgdesc="Highly portable Unix make implementation" -url="https://sourceforge.net/projects/s-make/" -arch="all" -options="!check" # No test suite. -license="CDDL-1.0 AND GPL-2.0-only" -depends="" -makedepends="" -subpackages="$pkgname-doc" -source="https://download.sourceforge.net/s-make/smake-$pkgver.tar.bz2" - -prepare() { - cd "$builddir" - default_prepare - sed -i -e "s|opt/schily|usr|" \ - $(find ./ -type f -name \*.[0-9ch] -exec grep -l 'opt/schily' '{}' '+') -} - -build() { - cd "$builddir" - export MAKEFLAGS="" - make INS_BASE=/usr -} - -package() { - cd "$builddir" - export MAKEFLAGS="" - make INS_BASE=/usr DESTDIR="$pkgdir" install -} - -sha512sums="15131f57942d6ea611602afa1f3d3d3d1892b0e7f0f6e5b1ace7f69f1acb7bd09403b8c70e380204cff75512f5824daef81d59205d758c93f2583b40caa873a8 smake-1.2.5.tar.bz2" diff --git a/user/smartmontools/APKBUILD b/user/smartmontools/APKBUILD index 25b6de93e..9125db241 100644 --- a/user/smartmontools/APKBUILD +++ b/user/smartmontools/APKBUILD @@ -1,8 +1,8 @@ # Contributor: Natanael Copa <ncopa@alpinelinux.org> # Maintainer: Dan Theisen <djt@hxx.in> pkgname=smartmontools -pkgver=6.6 -pkgrel=1 +pkgver=7.0 +pkgrel=0 pkgdesc="Control and monitor S.M.A.R.T. enabled hard drives" url="https://www.smartmontools.org/" arch="all" @@ -12,7 +12,6 @@ subpackages="$pkgname-doc $pkgname-openrc" source="http://downloads.sourceforge.net/sourceforge/$pkgname/$pkgname-$pkgver.tar.gz smartd.initd smartd.confd - musl-canonicalize_file_name.patch " build() { @@ -41,7 +40,6 @@ package() { install -Dm644 "$srcdir"/smartd.confd "$pkgdir"/etc/conf.d/smartd } -sha512sums="64bb533dac29f62ddd662a16a12c97df1af9cbac9ac526ce7af0b3bff9da49cf265a2030d91a7160452b56a67e80d7f34c9b4e45bbb320114f55695e2cb5cfaf smartmontools-6.6.tar.gz +sha512sums="96e18a201182579f699d541539ce393e7bc2191e027cfdf7f87455a63da3a14451574f8fe391232047ac941ace453a017193d0a4987a4edb8f7ed9d5007f0512 smartmontools-7.0.tar.gz 61cae548fc9f3a9fbea20d684502d3816e7b0b60fcf533ae4e1ab850725c208eb6ba5012ae154a46f0b7bb7285a9e63cbdecafed8db7fd63fda0ba59081260cc smartd.initd -ff45462944f01c0e7cac99443078b253dcbaed4f99ffab85052b12361d9eec4beec81cab334fbede9148b3dd503d5205add32ef4327a788f02a8b1e37f460437 smartd.confd -eff9a1ca8e10be5b05a4be609973065d6f02f12c9d511d3a7c87fa172934d3739594f00e5a61ed2d6dc65de5fd1ff23ec049b21078d5b1620c5dbafa56d78bbe musl-canonicalize_file_name.patch" +ff45462944f01c0e7cac99443078b253dcbaed4f99ffab85052b12361d9eec4beec81cab334fbede9148b3dd503d5205add32ef4327a788f02a8b1e37f460437 smartd.confd" diff --git a/user/smartmontools/musl-canonicalize_file_name.patch b/user/smartmontools/musl-canonicalize_file_name.patch deleted file mode 100644 index bdc7cc6f1..000000000 --- a/user/smartmontools/musl-canonicalize_file_name.patch +++ /dev/null @@ -1,12 +0,0 @@ -# Ticket: https://smartmontools.org/ticket/921#ticket ---- a/os_linux.cpp -+++ b/os_linux.cpp -@@ -3176,7 +3176,7 @@ - { - char path[128]; - snprintf(path, sizeof(path), "/sys/block/%s/device", name); -- char * syshostpath = canonicalize_file_name(path); -+ char * syshostpath = realpath(path, NULL); - if (!syshostpath) - return false; - diff --git a/user/socat/APKBUILD b/user/socat/APKBUILD index 93b519d45..e5257103e 100644 --- a/user/socat/APKBUILD +++ b/user/socat/APKBUILD @@ -1,7 +1,7 @@ # Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> # Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> pkgname=socat -pkgver=1.7.3.2 +pkgver=1.7.3.3 pkgrel=0 pkgdesc="Multipurpose network relay" url="http://www.dest-unreach.org/socat/" @@ -31,5 +31,5 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="540658b2a3d1b87673196282e5c62b97681bd0f1d1e4759ff9d72909d11060235ee9e9521a973603c1b00376436a9444248e5fbc0ffac65f8edb9c9bc28e7972 socat-1.7.3.2.tar.gz +sha512sums="b3ea4cb6081f7778a0281a3ec36ea7e5daf07dc19f2e0de08f767417112776e96e1bcac7962ebb6dd8b960ad91fc4a452f0da8327736d50e215e4ab43947ff78 socat-1.7.3.3.tar.gz 22a6e0c2317a9317997c98114daac258ebbcc3d8e58e49a6ebf24781b98967afed47c63807282582fa0909076fe349281f05e4462faacb90e7aabc853903d6e6 netdb-internal.patch" diff --git a/user/spectacle/APKBUILD b/user/spectacle/APKBUILD index d22aff8cb..738ca85f0 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.12.3 +pkgver=19.04.1 pkgrel=0 pkgdesc="Application for capturing desktop screenshots" url="https://www.kde.org/applications/graphics/spectacle/" @@ -14,7 +14,9 @@ makedepends="cmake extra-cmake-modules qt5-qtbase-dev qt5-qtdeclarative-dev kdoctools-dev kdeclarative-dev xcb-util-image-dev xcb-util-cursor-dev libxcb-dev xcb-util-renderutil-dev knewstuff-dev libkipi-dev" subpackages="$pkgname-doc $pkgname-lang" -source="https://download.kde.org/stable/applications/$pkgver/src/spectacle-$pkgver.tar.xz" +source="https://download.kde.org/stable/applications/$pkgver/src/spectacle-$pkgver.tar.xz + qt5.9.patch + " build() { cd "$builddir" @@ -42,4 +44,5 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="d239106f0d115e98ec0173862e6dee1b6fdab5846e65c47a4bbaa161cb2695503a58bdb369feb707b96121a0d1bb9acddafc5cfa748e3113bbd47d7da49ed50f spectacle-18.12.3.tar.xz" +sha512sums="33beadaa47b0f870727a0a70eea074435c98aca8858c791b5a34bbf82b91a1f0c4eb200a98f659feca6c80802af6190235d9ce2a302cf9ea0c1fd5dc60ea86ea spectacle-19.04.1.tar.xz +781e1611026a45232fa117b90a1520bed380e512ae2e0690785a960f897342284ce0c553d8fb22caf10fd34c3823ee7dacb770815c871808345c1bb05126b74f qt5.9.patch" diff --git a/user/spectacle/qt5.9.patch b/user/spectacle/qt5.9.patch new file mode 100644 index 000000000..aa830f86b --- /dev/null +++ b/user/spectacle/qt5.9.patch @@ -0,0 +1,23 @@ +--- spectacle-19.04.0/CMakeLists.txt.old 2019-04-12 00:06:23.000000000 +0000 ++++ spectacle-19.04.0/CMakeLists.txt 2019-04-18 22:57:10.598054362 +0000 +@@ -11,7 +11,7 @@ + # Spectacle project + project(Spectacle VERSION ${SPECTACLE_VERSION}) + +-set(QT_MIN_VERSION "5.10.0") ++set(QT_MIN_VERSION "5.9.0") + set(KF5_MIN_VERSION "5.53.0") + set(PLASMA_MIN_VERSION "5.12.0") + +--- spectacle-19.04.0/src/SpectacleCore.cpp.old 2019-04-11 07:37:14.000000000 +0000 ++++ spectacle-19.04.0/src/SpectacleCore.cpp 2019-04-18 22:57:46.694193923 +0000 +@@ -165,8 +165,7 @@ + break; + case Actions::StartNewInstance: + QProcess newInstance; +- newInstance.setProgram(QStringLiteral("spectacle")); +- newInstance.startDetached(); ++ newInstance.startDetached(QStringLiteral("spectacle")); + break; + } + } diff --git a/user/speech-dispatcher/APKBUILD b/user/speech-dispatcher/APKBUILD index b35da35bd..8c12dd18f 100644 --- a/user/speech-dispatcher/APKBUILD +++ b/user/speech-dispatcher/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=speech-dispatcher -pkgver=0.8.8 +pkgver=0.9.0 pkgrel=0 pkgdesc="High-level interface to speech synthesis libraries" url="https://freebsoft.org/speechd" @@ -11,10 +11,9 @@ depends="flite" makedepends="alsa-lib-dev dotconf-dev flite-dev glib-dev intltool libsndfile-dev pulseaudio-dev" subpackages="$pkgname-dev $pkgname-doc" -source="https://freebsoft.org/pub/projects/speechd/speech-dispatcher-$pkgver.tar.gz" +source="https://github.com/brailcom/speechd/releases/download/$pkgver/speech-dispatcher-$pkgver.tar.gz" build() { - cd "$builddir" LIBS="-lasound" ./configure \ --build=$CBUILD \ --host=$CHOST \ @@ -22,17 +21,18 @@ build() { --sysconfdir=/etc \ --mandir=/usr/share/man \ --localstatedir=/var + # gettext-tiny :( + cp src/api/python/speechd_config/speechd.desktop.in \ + src/api/python/speechd_config/speechd.desktop make } check() { - cd "$builddir" make check } package() { - cd "$builddir" make DESTDIR="$pkgdir" install } -sha512sums="7c7b9bf9b9ce541e790b5ae396cb614616c6b3883e75c0258603e91bf679850e3d63a6251daa3a1819b30d7518e3f552c83fe87b006274ffe1aa0f7e19c0b99b speech-dispatcher-0.8.8.tar.gz" +sha512sums="d72542531f58954e424d1cf956f6cb4fd42d585a1d4b955b13e8a426729a06407cf4085b2b4885eac110d36216c9a8403d37b401eca5c2398011786bdf041083 speech-dispatcher-0.9.0.tar.gz" diff --git a/user/spice-protocol/APKBUILD b/user/spice-protocol/APKBUILD index 33dd1bdb2..e31c8544a 100644 --- a/user/spice-protocol/APKBUILD +++ b/user/spice-protocol/APKBUILD @@ -1,7 +1,7 @@ # Contributor: Natanael Copa <ncopa@alpinelinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=spice-protocol -pkgver=0.12.14 +pkgver=0.14.0 pkgrel=0 pkgdesc="Spice protocol header files" url="https://www.spice-space.org/" @@ -9,11 +9,10 @@ arch="noarch" license="BSD-3-Clause AND LGPL-2.1+" depends="" makedepends="" -source="https://www.spice-space.org/download/releases/$pkgname-$pkgver.tar.bz2 - " +subpackages="" +source="https://www.spice-space.org/download/releases/$pkgname-$pkgver.tar.bz2" build() { - cd "$builddir" ./configure \ --build=$CBUILD \ --host=$CHOST \ @@ -22,13 +21,11 @@ build() { } check() { - cd "$builddir" make check } package() { - cd "$builddir" make pkgconfigdir=/usr/lib/pkgconfig DESTDIR="$pkgdir" install } -sha512sums="4266bcbef9f641a97a2ff72f1b01380a41e51f4b1a0dbb73fdf68baf552598a62d5cf0c526adf2997a55ee5d4fe9392927c3d7f4556827bfb2933f59bfab55bb spice-protocol-0.12.14.tar.bz2" +sha512sums="797df5f529731e9fd395b5946af2490ecf02c26982cc4a0aef24c1766887a35222f68525a996f8bc7459c2c4a25fde0c9a10c489ee6cab6eed7a68a9b5d90f76 spice-protocol-0.14.0.tar.bz2" diff --git a/user/spice/APKBUILD b/user/spice/APKBUILD index 4ca90937f..03b4f65f9 100644 --- a/user/spice/APKBUILD +++ b/user/spice/APKBUILD @@ -1,11 +1,12 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=spice -pkgver=0.14.1 +pkgver=0.14.2 pkgrel=0 pkgdesc="Solution for seamless access to virtual machines" url="https://www.spice-space.org/" arch="all" +options="!check" # Tests only pass on 64-bit architectures. license="LGPL-2.1+" depends="gst-plugins-base" makedepends="$depends_dev openssl-dev zlib-dev libjpeg-turbo-dev cyrus-sasl-dev @@ -41,4 +42,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="2c0b4fbcb68c76bc0404a807f28c9645a30c6b88e81d2bc574d63b036778a299cebc0ae12aa72f2e1496f66cbf414325125948d440541a40e1b9e53b8956542d spice-0.14.1.tar.bz2" +sha512sums="1093b618ea4a7ff31944429ce2903abecfc8d20c35f2d9c8c837a6e053ee429c0115e40665542637a717869209523ac05d15cdb5e77563102d5d3915e4aaaf76 spice-0.14.2.tar.bz2" diff --git a/user/sshfs/APKBUILD b/user/sshfs/APKBUILD index 32fcfbd7c..0bf08fdb1 100644 --- a/user/sshfs/APKBUILD +++ b/user/sshfs/APKBUILD @@ -1,7 +1,7 @@ # Contributor: Natanael Copa <ncopa@alpinelinux.org> # Maintainer: Max Rees <maxcrees@me.com> pkgname=sshfs -pkgver=3.5.0 +pkgver=3.5.2 pkgrel=0 pkgdesc="FUSE client based on the SSH File Transfer Protocol" url="https://github.com/libfuse/sshfs" @@ -15,7 +15,6 @@ 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 @@ -38,8 +37,7 @@ check() { } package() { - cd "$builddir" DESTDIR="$pkgdir" ninja -C output install } -sha512sums="6ba7be4bcad401d99fb864f105a6c8fc8b7c832d5b25f18cba27eee422fe65ee7bda8982466d624792a1fb21528c0cb078a59db48e93da4880a36aad7b506b0c sshfs-3.5.0.tar.xz" +sha512sums="52f874196eef2327dfb11c7f6a9771c1837a89a9208e6503dd7bb839e63d65b3f42d61c2d9140c8100041794923c1bea1f6917ff04b3c1d0236071ff4811c272 sshfs-3.5.2.tar.xz" diff --git a/user/step/APKBUILD b/user/step/APKBUILD index 1173268c3..64bf6c909 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.12.3 +pkgver=19.04.1 pkgrel=0 pkgdesc="Interactive physics simulation" url="https://www.kde.org/applications/education/step/" @@ -42,4 +42,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="5ac3ab33d48aa4d151ea7152a380aba95eabc7887400d20fe50392a6c18a5017b162208c47d8de6d019e8a462608a2f4da3bacaa64cbc966770971b6a55b1b82 step-18.12.3.tar.xz" +sha512sums="d3744c0c5cee20cae0b3f51ce68fcea5ae74091f55a02acea5009f1f70902f5666fbb67f20db1b17d1bbaeee6d6d8cdeea4c2d5a79239c3297febb3b7bc3fd7d step-19.04.1.tar.xz" diff --git a/user/subversion/APKBUILD b/user/subversion/APKBUILD index 3d9a96a68..1d034aff3 100644 --- a/user/subversion/APKBUILD +++ b/user/subversion/APKBUILD @@ -1,25 +1,37 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=subversion -pkgver=1.10.4 +pkgver=1.11.1 pkgrel=0 pkgdesc="Version control system from 2000" url="https://subversion.apache.org/" arch="all" +options="!check" # Test suite no longer works with Python 3: + # https://issues.apache.org/jira/browse/SVN-4811 license="Apache-2.0" depends="" depends_dev="apr-dev apr-util-dev linux-headers" makedepends="apr-dev apr-util-dev cyrus-sasl-dev db-dev dbus-dev file-dev kdelibs4support-dev kwallet-dev libsecret-dev lz4-dev openssl-dev - serf-dev sqlite-dev utf8proc-dev zlib-dev" + serf-dev sqlite-dev utf8proc-dev zlib-dev autoconf automake python3" subpackages="$pkgname-dev $pkgname-doc $pkgname-gnome $pkgname-kwallet $pkgname-lang" source="https://www-eu.apache.org/dist/subversion/subversion-$pkgver.tar.bz2 + apr-1.7.0.patch python3-bang.patch " build() { - cd "$builddir" + # this is only needed for autogen.sh + _PATH=$PATH + ln -s /usr/bin/python3 "$srcdir"/python + export PATH=$srcdir:$PATH + ./autogen.sh + rm "$srcdir"/python + export PATH=$_PATH + # this is needed to fix the apr issue as well as the patch + # https://issues.apache.org/jira/browse/SVN-4813 + export CPPFLAGS="$CPPFLAGS -P" ./configure \ --build=$CBUILD \ --host=$CHOST \ @@ -32,12 +44,10 @@ build() { } check() { - cd "$builddir" make check } package() { - cd "$builddir" make DESTDIR="$pkgdir" -j1 install } @@ -54,5 +64,6 @@ kwallet() { mv "$pkgdir"/usr/lib/libsvn_auth_kwallet* "$subpkgdir"/usr/lib/ } -sha512sums="c44a4a4a9533cd4f4cb6ddbc3ce98585a96da6c8e75497d087034b52f899797bb0972dfc0e79db99e81149e59e7fa765398c6ad35eba64f11f4ae9c3b3537434 subversion-1.10.4.tar.bz2 +sha512sums="2d082f715bf592ffc6a19311a9320dbae2ff0ee126b0472ce1c3f10e9aee670f43d894889430e6d093620f7b69c611e9a26773bc7a2f8b599ec37540ecd84a8d subversion-1.11.1.tar.bz2 +71b22f08a972a51347af00f979c4ec540c5795b44f3ced07ab2fcf8b1294b59add945983af4a63815d9f5d3b0ba88c24320cf2ec21189bf48c0ec46c7c0b48cf apr-1.7.0.patch 1b96b791f70c2f6e05da8dbc9d42ccadf4603f25392c6676c4e30ecdb142ce74dd9b8dc27dc68b1cb461f4409d79c4c2aeed1d39a5a442d9349079a819358f5a python3-bang.patch" diff --git a/user/subversion/apr-1.7.0.patch b/user/subversion/apr-1.7.0.patch new file mode 100644 index 000000000..a74e5e454 --- /dev/null +++ b/user/subversion/apr-1.7.0.patch @@ -0,0 +1,18 @@ +--- subversion-1.11.1/build/ac-macros/swig.m4 ++++ subversion-1.11.1/build/ac-macros/swig.m4 +@@ -137,13 +137,13 @@ + AC_CACHE_CHECK([for apr_int64_t Python/C API format string], + [svn_cv_pycfmt_apr_int64_t], [ + if test "x$svn_cv_pycfmt_apr_int64_t" = "x"; then +- AC_EGREP_CPP([MaTcHtHiS +\"lld\" +EnDeNd], ++ AC_EGREP_CPP([MaTcHtHiS +\"ll(\" *\")?d\" +EnDeNd], + [#include <apr.h> + MaTcHtHiS APR_INT64_T_FMT EnDeNd], + [svn_cv_pycfmt_apr_int64_t="L"]) + fi + if test "x$svn_cv_pycfmt_apr_int64_t" = "x"; then +- AC_EGREP_CPP([MaTcHtHiS +\"ld\" +EnDeNd],r ++ AC_EGREP_CPP([MaTcHtHiS +\"l(\" *\")?d\" +EnDeNd],r + [#include <apr.h> + MaTcHtHiS APR_INT64_T_FMT EnDeNd], + [svn_cv_pycfmt_apr_int64_t="l"]) diff --git a/user/talloc/APKBUILD b/user/talloc/APKBUILD index 82ba9d682..bf6cb12c8 100644 --- a/user/talloc/APKBUILD +++ b/user/talloc/APKBUILD @@ -1,7 +1,7 @@ # Contributor: William Pitcock <nenolod@dereferenced.org> # Maintainer: Max Rees <maxcrees@me.com> pkgname=talloc -pkgver=2.1.15 +pkgver=2.2.0 pkgrel=0 pkgdesc="Memory pool management library" url="https://talloc.samba.org" @@ -9,13 +9,11 @@ arch="all" license="LGPL-3.0+ AND GPL-3.0+ AND ISC AND LGPL-2.1+ AND BSD-3-Clause AND PostgreSQL" replaces="samba-common" depends="" -makedepends="docbook-xsl libxslt python3-dev" +makedepends="cmd:which docbook-xsl libxslt python3-dev" subpackages="$pkgname-dev py3-$pkgname:py3 $pkgname-doc" -source="https://samba.org/ftp/$pkgname/$pkgname-$pkgver.tar.gz - waf-location.patch" +source="https://samba.org/ftp/$pkgname/$pkgname-$pkgver.tar.gz" build() { - cd "$builddir" PYTHON=python3 ./configure \ --build=$CBUILD \ --host=$CHOST \ @@ -32,12 +30,10 @@ build() { } check() { - cd "$builddir" make check } package() { - cd "$builddir" make DESTDIR="$pkgdir" install } @@ -49,5 +45,4 @@ py3() { "$pkgdir"/usr/lib/python3* "$subpkgdir"/usr/lib/ } -sha512sums="41896f8877e9a52e70b9881c41667dc52d7c1b03c3b248020fd909b794a4c5a4addee3eb944aa80ecfa3b03e6e5e1f67a62b5f3a5dcdc412b3e975352057ff40 talloc-2.1.15.tar.gz -d19553fae679b5db10ab77a86f9fa0525ccba37a3ef30e530cd96245ee5fc94d4570079bbfe0271c32fbc84a3556c4bf86cc1cab6ffb61863cbce3f5a911efec waf-location.patch" +sha512sums="e762c6443ff2c0c35a9dbf7ac6e64a9182c04a218ad0f26fd67ac9620d9ae26d68b8dd2b21ff37e1df0e53748c84bece27890c5c4939eaeb61c502a698802388 talloc-2.2.0.tar.gz" diff --git a/user/talloc/waf-location.patch b/user/talloc/waf-location.patch deleted file mode 100644 index a5ca47f44..000000000 --- a/user/talloc/waf-location.patch +++ /dev/null @@ -1,10 +0,0 @@ ---- talloc-2.1.15/Makefile 2019-01-14 17:24:45.000000000 -0500 -+++ talloc-2.1.15/Makefile 2019-01-27 22:57:15.919981283 -0500 -@@ -1,6 +1,6 @@ - # simple makefile wrapper to run waf - --WAF_BINARY=$(PYTHON) ../../buildtools/bin/waf -+WAF_BINARY=$(PYTHON) buildtools/bin/waf - WAF=PYTHONHASHSEED=1 WAF_MAKE=1 $(WAF_BINARY) - - all: diff --git a/user/tellico/APKBUILD b/user/tellico/APKBUILD index 0e8d933fb..33cad700d 100644 --- a/user/tellico/APKBUILD +++ b/user/tellico/APKBUILD @@ -1,8 +1,8 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=tellico -pkgver=3.1.3 -pkgrel=1 +pkgver=3.1.4 +pkgrel=0 pkgdesc="Collection manager" url="http://tellico-project.org/" arch="all" @@ -22,7 +22,6 @@ source="http://tellico-project.org/files/tellico-$pkgver.tar.xz " build() { - cd "$builddir" if [ "$CBUILD" != "$CHOST" ]; then CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux" fi @@ -38,7 +37,6 @@ build() { } check() { - cd "$builddir" # imagejob: needs running X11 # htmlexporter: needs plasma desktop # filelisting: needs dbus @@ -47,9 +45,8 @@ check() { } package() { - cd "$builddir" make DESTDIR="$pkgdir" install } -sha512sums="9024f423f0685e834ed46e7038c5b95fab5b684aaac00d6298e23493fb4290daeda994faf36a0f04973093a477be5506591e6b0e7f57ef5591fb10953ad8ec5e tellico-3.1.3.tar.xz +sha512sums="d09183bee13ae9f7c6c5114b76eeeb959a184def559ae239bb880ef9be964e33878530e9c4c0d3baa6f872bf8db155dffb94592e3a857623ab131d2f28f1f139 tellico-3.1.4.tar.xz 4627e717d67340de6d88f7a21604a66ba236c651a0ae38d9d3569b76ad58c79f046cfd5686dd688de86d6acafc17ba3959902babdc7f00ab8e9d65717c4fab4a btparse-strcasecmp.patch" diff --git a/user/terminus-font/75-yes-terminus.conf b/user/terminus-font/75-yes-terminus.conf new file mode 100644 index 000000000..84b0a95a0 --- /dev/null +++ b/user/terminus-font/75-yes-terminus.conf @@ -0,0 +1,17 @@ +<?xml version="1.0"?> +<!DOCTYPE fontconfig SYSTEM "fonts.dtd"> +<fontconfig> +<!-- Accept terminus font --> + <selectfont> + <acceptfont> + <pattern> + <patelt name="family"><string>Terminus</string></patelt> + </pattern> + </acceptfont> + </selectfont> + <alias> + <family>xos4 Terminus</family> + <prefer><family>Terminus</family></prefer> + <default><family>fixed</family></default> + </alias> +</fontconfig> diff --git a/user/terminus-font/APKBUILD b/user/terminus-font/APKBUILD index 10ebdd481..c3fc0fd6f 100644 --- a/user/terminus-font/APKBUILD +++ b/user/terminus-font/APKBUILD @@ -1,8 +1,8 @@ # Contributor: Max Rees <maxcrees@me.com> # Maintainer: Max Rees <maxcrees@me.com> pkgname=terminus-font -pkgver=4.46 -pkgrel=1 +pkgver=4.47 +pkgrel=0 pkgdesc="Monospace bitmap font (for X11 and console)" url="http://terminus-font.sourceforge.net/" # No HTTPS arch="noarch" @@ -10,10 +10,10 @@ 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" +source="https://downloads.sourceforge.net/project/$pkgname/$pkgname-$pkgver/$pkgname-$pkgver.tar.gz + 75-yes-terminus.conf" build() { - cd "$builddir" ./configure \ --prefix=/usr \ --psfdir=/usr/share/consolefonts \ @@ -22,14 +22,16 @@ build() { } package() { - cd "$builddir" make DESTDIR="$pkgdir" install - install -Dm644 75-yes-terminus.conf \ + # Use custom fontconfig since the shipped one doesn't provide + # a correct alias + install -Dm644 "$srcdir"/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" +sha512sums="09455d107a09c422f4fedfcc70ae1483063c844fb01b0adfa3d2a0e28c9502e9ca922542b5ad735cbebb491d148c453d0213d61ebebf64c79f16cb582964fa47 terminus-font-4.47.tar.gz +ac7bdf367bbff1e5735b5bd65fc1bc06b55bcb72aaafeb08c7d8e969aabad863474b1104faa42ead7d838433c80cfc50f05578dad03c8081cd82cfda0af86a83 75-yes-terminus.conf" diff --git a/user/thunar-volman/APKBUILD b/user/thunar-volman/APKBUILD index 38c088160..b2f0fa449 100644 --- a/user/thunar-volman/APKBUILD +++ b/user/thunar-volman/APKBUILD @@ -1,7 +1,7 @@ # Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> # Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> pkgname=thunar-volman -pkgver=0.9.1 +pkgver=0.9.2 pkgrel=0 pkgdesc="Volume manager for Thunar" url="https://xfce.org" @@ -34,4 +34,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="73d9884dc667e4f8554d2b06f7116bbe25fa4e113300f0cd32bc2229c22001cc709333d5ac5618f7d5c8a35e58fb7a61e48ecafa634c7e239e9af329dc4149bc thunar-volman-0.9.1.tar.bz2" +sha512sums="808f3dfdf105911275b0c96705604bd1575cd9c5bddaaae96583949c995a3bc84a71ce154c05ed3ce395d4b4d78e4d67770f79b3226fd4a35c509f5e612de72f thunar-volman-0.9.2.tar.bz2" diff --git a/user/thunar/APKBUILD b/user/thunar/APKBUILD index 2cc4590c0..0f92f1070 100644 --- a/user/thunar/APKBUILD +++ b/user/thunar/APKBUILD @@ -1,7 +1,7 @@ # Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> # Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> pkgname=thunar -pkgver=1.8.4 +pkgver=1.8.6 pkgrel=0 pkgdesc="File manager for the XFCE desktop environment" url="https://xfce.org" @@ -37,4 +37,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="886c0789aa19c2ab2ef34892c4afd09c857585b4796140ea3c84ccb9e1e1ca2935cf7e3a760a6ca8d8c68a5866663412500b4779878c7f48c9365c3ac7bf0eec Thunar-1.8.4.tar.bz2" +sha512sums="086dc139627d8f11341b2db91358ef1831d2b8494d34abac49355dbaf850a21c30f979294f9adf2bc8548e5f817a4e165803a3db74cd989cd3867a4e228d74db Thunar-1.8.6.tar.bz2" diff --git a/user/tigervnc/0002-vncviewer-Ensure-buffer-always-has-0-termination.patch b/user/tigervnc/0002-vncviewer-Ensure-buffer-always-has-0-termination.patch deleted file mode 100644 index 3072ca020..000000000 --- a/user/tigervnc/0002-vncviewer-Ensure-buffer-always-has-0-termination.patch +++ /dev/null @@ -1,50 +0,0 @@ -From f01feaa6d235b40e659bf808ce66acc2b9a93da1 Mon Sep 17 00:00:00 2001 -From: "A. Wilcox" <AWilcox@Wilcox-Tech.com> -Date: Wed, 20 Mar 2019 13:28:36 -0500 -Subject: [PATCH 2/2] vncviewer: Ensure buffer always has \0 termination -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Building from the 1.9.0 tarball using GCC 8.3.0 on Linux yields the following: - -tigervnc-1.9.0/vncviewer/vncviewer.cxx: In function ‘int main(int, char**)’: -tigervnc-1.9.0/vncviewer/vncviewer.cxx:527:14: error: ‘char* strncpy(char*, const char*, size_t)’ specified bound 64 equals destination size [-Werror=stringop-truncation] - strncpy(defaultServerName, configServerName, VNCSERVERNAMELEN); - ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -In function ‘void potentiallyLoadConfigurationFile(char*)’, - inlined from ‘int main(int, char**)’ at tigervnc-1.9.0/vncviewer/vncviewer.cxx:557:35: -tigervnc-1.9.0/vncviewer/vncviewer.cxx:396:14: error: ‘char* strncpy(char*, const char*, size_t)’ specified bound 64 equals destination size [-Werror=stringop-truncation] - strncpy(vncServerName, newServerName, VNCSERVERNAMELEN); - ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -This commit ensures the buffer always has the null terminator. ---- - vncviewer/vncviewer.cxx | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/vncviewer/vncviewer.cxx b/vncviewer/vncviewer.cxx -index d2fe7e00..8ccfe563 100644 ---- a/vncviewer/vncviewer.cxx -+++ b/vncviewer/vncviewer.cxx -@@ -402,7 +402,7 @@ potentiallyLoadConfigurationFile(char *vncServerName) - newServerName = loadViewerParameters(vncServerName); - // This might be empty, but we still need to clear it so we - // don't try to connect to the filename -- strncpy(vncServerName, newServerName, VNCSERVERNAMELEN); -+ strncpy(vncServerName, newServerName, VNCSERVERNAMELEN-1); - } catch (rfb::Exception& e) { - vlog.error("%s", e.str()); - if (alertOnFatalError) -@@ -533,7 +533,7 @@ int main(int argc, char** argv) - const char* configServerName; - configServerName = loadViewerParameters(NULL); - if (configServerName != NULL) -- strncpy(defaultServerName, configServerName, VNCSERVERNAMELEN); -+ strncpy(defaultServerName, configServerName, VNCSERVERNAMELEN-1); - } catch (rfb::Exception& e) { - vlog.error("%s", e.str()); - if (alertOnFatalError) --- -2.19.2 - diff --git a/user/tigervnc/APKBUILD b/user/tigervnc/APKBUILD index 59da8dae1..3acea2e2d 100644 --- a/user/tigervnc/APKBUILD +++ b/user/tigervnc/APKBUILD @@ -2,7 +2,7 @@ # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=tigervnc pkgver=1.9.0 -pkgrel=2 +pkgrel=4 pkgdesc="High-performance, platform-neutral VNC remote desktop application" url="https://tigervnc.org/" arch="all" @@ -17,7 +17,9 @@ source="tigervnc-$pkgver.tar.gz::https://github.com/TigerVNC/tigervnc/archive/v$ use-intltool.patch endian.patch 0001-CSecurityTLS-Use-size_t-as-argument-for-new.patch - 0002-vncviewer-Ensure-buffer-always-has-0-termination.patch + null-termination.patch + initialise-var.patch + ensure-throw.patch " build() { @@ -45,4 +47,6 @@ sha512sums="333910f567e6b5e4a5a22d898b2d4c3f4b834cb4cc8fc13ff55d31401894c0d5122a 5c1cee98b7ba41c7cf121480fdfe16d5ef17c9562ff2ba3ea4e74235161fc63e2e3ed63e788c0aa999610b660b394c1269d6fdcc9716c5563651fd67d723f619 use-intltool.patch 189a51a542b368e4db22174d09f5b656848e94577bbf93b2388f54529f1c7c2d32e5b5283551b3fb067ba21f6464f60989e22d4cd11ed3d87d5c931301555b49 endian.patch f95328f6b669e6608b9971de3db25d5eb26a733fbe32f13291c309ed57eacba6c86461a516c3b8cdc12ff7482ee0249a45189864d473d52df81df0a3541d95b9 0001-CSecurityTLS-Use-size_t-as-argument-for-new.patch -f7282c7c12e51878540be7dd45b9a00ea5d54fa13fe0cfe90f003c1b36f410ce023dfa64c64d1fb3923955c6459d25e1afe7b504651b4e9e8a2f6f9ac9e51b83 0002-vncviewer-Ensure-buffer-always-has-0-termination.patch" +82566734e5288e899048b918ce47f5abc3b94196e88d54fa0b0ef68c20d1fcd9d5854f36a0043d28f81dc6213c9ee8cf55fb187aeeb8add5fc31765f6a5b23bb null-termination.patch +a7fb612d7e3625b66db66ffc7e3f28f2e47f79b858ff1fd9e403576ef2b8ff7bc8cf83a6f67439de6242e4a11a0144119d040f8f9e917e17a8af512b47067360 initialise-var.patch +4656a617dcb2bd28b653932fa034b7d46c49a08be4ba90501a9d1ddfad2130209664abf7bf5227f0afc926a568eb83e8e5f25e73887bf2561b2077fb1dab84c9 ensure-throw.patch" diff --git a/user/tigervnc/ensure-throw.patch b/user/tigervnc/ensure-throw.patch new file mode 100644 index 000000000..da873fe21 --- /dev/null +++ b/user/tigervnc/ensure-throw.patch @@ -0,0 +1,59 @@ +From 78bdd1700c4e42b492286a2af25bea0825848f99 Mon Sep 17 00:00:00 2001 +From: Pierre Ossman <ossman@cendio.se> +Date: Tue, 26 Mar 2019 11:10:28 +0100 +Subject: [PATCH] Add missing throws for exception + +It is not enough to create an exception object, you need to throw +it as well. +--- + common/rfb/CSecurityTLS.cxx | 10 +++++----- + win/rfb_win32/Registry.cxx | 2 +- + 2 files changed, 6 insertions(+), 6 deletions(-) + +diff --git a/common/rfb/CSecurityTLS.cxx b/common/rfb/CSecurityTLS.cxx +index c6d1e3103..aa1910909 100644 +--- a/common/rfb/CSecurityTLS.cxx ++++ b/common/rfb/CSecurityTLS.cxx +@@ -391,7 +391,7 @@ void CSecurityTLS::checkSession() + "authority:\n\n%s\n\nDo you want to save it and " + "continue?\n ", info.data); + if (len < 0) +- AuthFailureException("certificate decoding error"); ++ throw AuthFailureException("certificate decoding error"); + + vlog.debug("%s", info.data); + +@@ -417,16 +417,16 @@ void CSecurityTLS::checkSession() + + if (gnutls_x509_crt_export(crt, GNUTLS_X509_FMT_PEM, NULL, &out_size) + == GNUTLS_E_SHORT_MEMORY_BUFFER) +- AuthFailureException("Out of memory"); ++ throw AuthFailureException("Out of memory"); + + // Save cert + out_buf = new char[out_size]; + if (out_buf == NULL) +- AuthFailureException("Out of memory"); ++ throw AuthFailureException("Out of memory"); + + if (gnutls_x509_crt_export(crt, GNUTLS_X509_FMT_PEM, out_buf, &out_size) < 0) +- AuthFailureException("certificate issuer unknown, and certificate " +- "export failed"); ++ throw AuthFailureException("certificate issuer unknown, and certificate " ++ "export failed"); + + char *homeDir = NULL; + if (getvnchomedir(&homeDir) == -1) +diff --git a/win/rfb_win32/Registry.cxx b/win/rfb_win32/Registry.cxx +index 963a36a29..9cd501842 100644 +--- a/win/rfb_win32/Registry.cxx ++++ b/win/rfb_win32/Registry.cxx +@@ -254,7 +254,7 @@ TCHAR* RegKey::getRepresentation(const TCHAR* valname) const { + TCharArray result(required); + length = ExpandEnvironmentStrings(str.buf, result.buf, required); + if (required<length) +- rdr::Exception("unable to expand environment strings"); ++ throw rdr::Exception("unable to expand environment strings"); + return result.takeBuf(); + } else { + return tstrDup(_T("")); diff --git a/user/tigervnc/initialise-var.patch b/user/tigervnc/initialise-var.patch new file mode 100644 index 000000000..f58a4dadc --- /dev/null +++ b/user/tigervnc/initialise-var.patch @@ -0,0 +1,24 @@ +From 44cf1d64ecf80c061c0a2b0f0167094e58782102 Mon Sep 17 00:00:00 2001 +From: Pierre Ossman <ossman@cendio.se> +Date: Mon, 25 Mar 2019 16:14:49 +0100 +Subject: [PATCH] Don't use un-initialized stride to base constructor + +We can use a dummy value here as we set up the buffer and stride +further down in the constructor. +--- + vncviewer/PlatformPixelBuffer.cxx | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/vncviewer/PlatformPixelBuffer.cxx b/vncviewer/PlatformPixelBuffer.cxx +index 1e9803eb2..ff1935e74 100644 +--- a/vncviewer/PlatformPixelBuffer.cxx ++++ b/vncviewer/PlatformPixelBuffer.cxx +@@ -36,7 +36,7 @@ static rfb::LogWriter vlog("PlatformPixelBuffer"); + PlatformPixelBuffer::PlatformPixelBuffer(int width, int height) : + FullFramePixelBuffer(rfb::PixelFormat(32, 24, false, true, + 255, 255, 255, 16, 8, 0), +- width, height, 0, stride), ++ width, height, NULL, 0), + Surface(width, height) + #if !defined(WIN32) && !defined(__APPLE__) + , shminfo(NULL), xim(NULL) diff --git a/user/tigervnc/null-termination.patch b/user/tigervnc/null-termination.patch new file mode 100644 index 000000000..e80a4f62d --- /dev/null +++ b/user/tigervnc/null-termination.patch @@ -0,0 +1,39 @@ +From 7240f62ddc06643f982456c05c11d8afe5422069 Mon Sep 17 00:00:00 2001 +From: Pierre Ossman <ossman@cendio.se> +Date: Tue, 26 Mar 2019 11:11:20 +0100 +Subject: [PATCH] Handle server name overflow properly + +We need to make sure it is null terminated on truncation. We also +need to avoid giving a too large size argument or modern gcc will +complain. +--- + vncviewer/vncviewer.cxx | 9 ++++++--- + 1 file changed, 6 insertions(+), 3 deletions(-) + +diff --git a/vncviewer/vncviewer.cxx b/vncviewer/vncviewer.cxx +index d7cbd6e36..4a8370b95 100644 +--- a/vncviewer/vncviewer.cxx ++++ b/vncviewer/vncviewer.cxx +@@ -411,7 +411,8 @@ potentiallyLoadConfigurationFile(char *vncServerName) + newServerName = loadViewerParameters(vncServerName); + // This might be empty, but we still need to clear it so we + // don't try to connect to the filename +- strncpy(vncServerName, newServerName, VNCSERVERNAMELEN); ++ strncpy(vncServerName, newServerName, VNCSERVERNAMELEN-1); ++ vncServerName[VNCSERVERNAMELEN-1] = '\0'; + } catch (rfb::Exception& e) { + vlog.error("%s", e.str()); + if (alertOnFatalError) +@@ -541,8 +542,10 @@ int main(int argc, char** argv) + try { + const char* configServerName; + configServerName = loadViewerParameters(NULL); +- if (configServerName != NULL) +- strncpy(defaultServerName, configServerName, VNCSERVERNAMELEN); ++ if (configServerName != NULL) { ++ strncpy(defaultServerName, configServerName, VNCSERVERNAMELEN-1); ++ defaultServerName[VNCSERVERNAMELEN-1] = '\0'; ++ } + } catch (rfb::Exception& e) { + vlog.error("%s", e.str()); + if (alertOnFatalError) diff --git a/user/tinyxml2/APKBUILD b/user/tinyxml2/APKBUILD new file mode 100644 index 000000000..b210bfb7d --- /dev/null +++ b/user/tinyxml2/APKBUILD @@ -0,0 +1,38 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: A. Wilcox <awilfox@adelielinux.org> +pkgname=tinyxml2 +pkgver=7.0.1 +pkgrel=0 +pkgdesc="Small, efficient C++ XML parser" +url=" " +arch="all" +license="Zlib" +depends="" +makedepends="" +subpackages="$pkgname-dev" +source="tinyxml2-$pkgver.tar.gz::https://github.com/leethomason/tinyxml2/archive/$pkgver.tar.gz" + +build() { + 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() { + CTEST_OUTPUT_ON_FAILURE=TRUE ctest +} + +package() { + make DESTDIR="$pkgdir" install +} + +sha512sums="623cd7eff542d20b434a67111ac98110101c95a18767318bf906e5e56d8cc25622269f740f50477fe907a4c52d875b614cb6167f4760d42ab18dc55b9d4bf380 tinyxml2-7.0.1.tar.gz" diff --git a/user/tlp/APKBUILD b/user/tlp/APKBUILD index 54f478361..d1bdefb23 100644 --- a/user/tlp/APKBUILD +++ b/user/tlp/APKBUILD @@ -2,7 +2,7 @@ # Maintainer: Max Rees <maxcrees@me.com> pkgname=tlp _pkgname=TLP -pkgver=1.1 +pkgver=1.2.1 pkgrel=0 pkgdesc="Linux Advanced Power Management" url="https://linrunner.de/en/tlp/tlp.html" @@ -18,14 +18,11 @@ source="$pkgname-$pkgver.tar.gz::https://github.com/linrunner/$_pkgname/archive/ builddir="$srcdir/$_pkgname-$pkgver" build() { - cd "$builddir" make } package() { - cd "$builddir" - - make DESTDIR="$pkgdir" install-tlp install-man + make DESTDIR="$pkgdir" TLP_WITH_SYSTEMD=0 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 @@ -36,7 +33,7 @@ rdw() { depends="tlp" cd "$builddir" - make DESTDIR="$subpkgdir" install-rdw + make DESTDIR="$subpkgdir" TLP_WITH_SYSTEMD=0 install-rdw } bashcomp() { @@ -44,9 +41,12 @@ bashcomp() { depends="" install_if="$pkgname=$pkgver-r$pkgrel bash-completion" - mkdir -p "$subpkgdir"/usr/share - mv "$pkgdir"/usr/share/bash-completion "$subpkgdir"/usr/share + mkdir -p "$subpkgdir"/usr/share/bash-completion/completions + mv "$pkgdir"/usr/share/bash-completion/completions/* \ + "$subpkgdir"/usr/share/bash-completion/completions + mv "$pkgbasedir/$pkgname-rdw"/usr/share/bash-completion/completions/* \ + "$subpkgdir"/usr/share/bash-completion/completions } -sha512sums="3400f2b6c249fd2e1bbbc61f23e3450ff90fabb8dd74f2903ce1f0d07e7ce3d1e61b07295736138d4697235dbee9157d3f32a8d296a649c93f73e03e3555af1e tlp-1.1.tar.gz +sha512sums="c5cf2c9cb4d5e1e0ad693ab73f7971486671dab9b785a4e121b3550f5b096a8b028bd9d116851db6402ab7ccd9b3fe944d138fd35dc17d826482c59257f12c9f tlp-1.2.1.tar.gz e6de216b2540413812711b3304cdc29c8729d527080cfd747ba382db50166dd21c6c27ff467f9f2a967e92007c7a311b00e88262952c34a22f417578c66cf4e7 tlp.initd" diff --git a/user/trigger-rally/APKBUILD b/user/trigger-rally/APKBUILD index 3b1c6c29d..07e4de092 100644 --- a/user/trigger-rally/APKBUILD +++ b/user/trigger-rally/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=trigger-rally -pkgver=0.6.5 +pkgver=0.6.6.1 pkgrel=0 pkgdesc="Fast-paced rally racing game" url="http://trigger-rally.sourceforge.net/" @@ -10,7 +10,7 @@ options="!check" # No test suite. license="GPL-2.0-only" depends="" makedepends="freealut-dev glew-dev glu-dev openal-soft-dev physfs-dev sdl2-dev - sdl2_image-dev" + sdl2_image-dev tinyxml2-dev" subpackages="$pkgname-doc" source="https://downloads.sourceforge.net/trigger-rally/trigger-rally-$pkgver.tar.gz dont-strip.patch @@ -39,6 +39,6 @@ package() { "$pkgdir"/usr/share/icons/hicolor/scalable/apps/trigger.svg } -sha512sums="59f48c116b20e47559b4c07107fa4055a9ad516e9c147763e4ba5d2ead3a4a5101f7d690483a1ef0df847ca647c0f750937512ee579f4ae06908157d9eabf184 trigger-rally-0.6.5.tar.gz +sha512sums="feed805858ef63907bb10088761f1219b22fe55ead268511ef73b18aa0f18d79e87d4e2cbfb76361b1dec3949b59464af33efe31e81f06ae7e163430f3336669 trigger-rally-0.6.6.1.tar.gz a81781058177e012daaad58d72e4bdbdbc2730b1df76941ba03f06367545b213ba82a33bab46deba31570973deb1802a3d459704c3a963c38eec69ef82f228d5 dont-strip.patch -807f0c99cc148e34cfe29af13f62375ee7f79f079f29cfda3b90045e0ad8676944d9e8031ab7037429a93d7547da53740e8ce002c4d3c46d93c3d8c9eb2e4ae9 trigger-rally.desktop" +ddaf7d89353280f7952d6cffd06182ea28640473e18eff06809c48477349248f57922eaff9bf816261c32f8fdc167d933f345422f9885638041dd9f5e5ac0524 trigger-rally.desktop" diff --git a/user/trigger-rally/trigger-rally.desktop b/user/trigger-rally/trigger-rally.desktop index 74b67da0f..5802b2fee 100644 --- a/user/trigger-rally/trigger-rally.desktop +++ b/user/trigger-rally/trigger-rally.desktop @@ -5,4 +5,4 @@ Name=Trigger Comment=Fast-paced rally racing game Icon=trigger Exec=/usr/games/trigger-rally -Category=Game;Simlulation +Categories=Game;Simulation; diff --git a/user/ttc-iosevka/APKBUILD b/user/ttc-iosevka/APKBUILD index 65708fe74..4d0ea71b1 100644 --- a/user/ttc-iosevka/APKBUILD +++ b/user/ttc-iosevka/APKBUILD @@ -1,18 +1,18 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=ttc-iosevka -pkgver=2.0.2 +pkgver=2.2.1 pkgrel=0 pkgdesc="Monospace sans-serif typeface" -url="http://typeof.net/Iosevka/" +url="https://typeof.net/Iosevka/" arch="noarch" options="!check" # No test suite. license="OFL-1.1" depends="fontconfig" makedepends="" subpackages="" -source="https://github.com/be5invis/Iosevka/releases/download/v2.0.2/ttc-iosevka-$pkgver.zip - https://github.com/be5invis/Iosevka/releases/download/v2.0.2/ttc-iosevka-slab-$pkgver.zip" +source="https://github.com/be5invis/Iosevka/releases/download/v$pkgver/ttc-iosevka-$pkgver.zip + https://github.com/be5invis/Iosevka/releases/download/v$pkgver/ttc-iosevka-slab-$pkgver.zip" builddir="$srcdir" package() { @@ -20,5 +20,5 @@ package() { install -m644 -Dt "$pkgdir"/usr/share/fonts/X11/TTF *.ttc } -sha512sums="8dbb60b94ade9212a7dbcfaf3a4dfba3f7d148ad78cf6f658ec3d471a799b172815ff43a6fe4e3916e2d0790c9097d3d452e56ded052f7c9e1fd0d69af8c6bd4 ttc-iosevka-2.0.2.zip -92baa82979901b895d8038b020a47697b749e9600422236f02ad93381c8af8efb16978798bec38edeed0a8ad9a10f43f4879702936c885d8c21b700cd8f6e3cf ttc-iosevka-slab-2.0.2.zip" +sha512sums="61c43613f687edea1fe5b1cd2545c7b18a3a274b6106d6c6d083322ebd40f7da8f5a1f6ed84410108f099c55dab988b340c516e87476ee71567a5a034b988abb ttc-iosevka-2.2.1.zip +80aafe3b6e1d708abf5dd6922b3ce735c8f4b17afefbcd14bcc65e27f8463cff8392ea90bbb40f872369ee5f096fd391fcb4a1fafc166e96f689d59b56c909cb ttc-iosevka-slab-2.2.1.zip" diff --git a/user/ttf-alee/APKBUILD b/user/ttf-alee/APKBUILD index 658060518..ffbf879a2 100644 --- a/user/ttf-alee/APKBUILD +++ b/user/ttf-alee/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=ttf-alee -pkgver=13 +pkgver=13.3 pkgrel=0 pkgdesc="Hangul fonts" url=" " @@ -11,11 +11,12 @@ license="Artistic-1.0-cl8" depends="fontconfig" makedepends="" subpackages="" -source="http://turul.canonical.com/pool/main/t/ttf-alee/ttf-alee_$pkgver.tar.gz" +source="http://deb.debian.org/debian/pool/main/f/fonts-alee/fonts-alee_$pkgver.tar.xz" +builddir="$srcdir"/fonts-alee-$pkgver package() { cd "$builddir" install -m644 -Dt "$pkgdir"/usr/share/fonts/X11/TTF *.ttf } -sha512sums="2f72067ccb3264c5847639d9b9db4c820ad65bf2b2bfef710fbc42463e4b091dedc004281d05694a92680fde01c56edeb40ca78cd2a659533e22b17bd14b4b2c ttf-alee_13.tar.gz" +sha512sums="fc91a018c0757fce1b899ecf736260b96c7acc9c8ec626fb8d53f8e002d89ca23bdaf3a5712e747cfa63f53463c5471da292af715968a5612a17d7499222bc45 fonts-alee_13.3.tar.xz" diff --git a/user/ttf-liberation/APKBUILD b/user/ttf-liberation/APKBUILD index eb25558c8..8f32d7c31 100644 --- a/user/ttf-liberation/APKBUILD +++ b/user/ttf-liberation/APKBUILD @@ -1,6 +1,6 @@ # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=ttf-liberation -pkgver=2.00.4 +pkgver=2.00.5 # Note: 2.00.0 onward releases does not includes Liberation Sans Narrow font due to licensing problems. # we use narrowver to grab older release which does include narrow fonts _narrowver=1.07.4 @@ -14,7 +14,7 @@ depends="fontconfig" makedepends="" # added fontconfig configuration from: # https://github.com/bohoomil/fontconfig-ultimate/tree/master/fontconfig_patches/fonts-settings -source="https://github.com/liberationfonts/liberation-fonts/files/2012634/liberation-fonts-ttf-$pkgver.tar.gz +source="https://github.com/liberationfonts/liberation-fonts/files/2926169/liberation-fonts-ttf-$pkgver.tar.gz https://releases.pagure.org/liberation-fonts/liberation-fonts-ttf-$_narrowver.tar.gz 30-liberation-mono.conf 30-liberation-sans-narrow.conf @@ -29,7 +29,7 @@ package() { "$pkgdir"/etc/fonts/conf.d install -m644 "$srcdir"/liberation-fonts-ttf-$_narrowver/*.ttf \ "$pkgdir"/usr/share/fonts/$pkgname - install -m644 "$srcdir"/liberation-fonts-ttf-2.00.3/*.ttf \ + install -m644 "$srcdir"/liberation-fonts-ttf-$pkgver/*.ttf \ "$pkgdir"/usr/share/fonts/$pkgname for j in "$srcdir"/*.conf; do @@ -40,7 +40,7 @@ package() { done } -sha512sums="a83ab0c05bfa97ec30a946ff4b2d23dd1e29974999241b2a058f3c052879eb48e818e09a42a7fe27f04728fea56ddbbf67c60820b10e93e3b99f50892372565d liberation-fonts-ttf-2.00.4.tar.gz +sha512sums="fc00494842475d040c01029b6fb134fec9a37516a5e8e1b9ba945a2b38fe2ef3df6a0acfc00dc024cf2019f1106092d063c8322eece1be1cf8690db4ed8a653f liberation-fonts-ttf-2.00.5.tar.gz 0906151d111fd660c8cb90dfcb39e0a38805aa53cac162def5240ff3a75c40f6195e6876d09a2f7081913bfe732550b670d197f0e10598c463186fe3bc229b9f liberation-fonts-ttf-1.07.4.tar.gz 585b74555132098d1d89b118b92fb843471ae2882622dec16178f8e7690fe6b5d8bf46e27e59fc3324aebfbd52a4b511d2ad77a8ddf8ef319cbe89b1a2dac91a 30-liberation-mono.conf cf017383d4390d52bef7c79abb2f48fc4440880ca03ee4dc11647ced524e45a944c4c3e3b318837bef9632b5aa1445e8f29e87f2ea195a8a47899cdeef67aae7 30-liberation-sans-narrow.conf diff --git a/user/tumbler/APKBUILD b/user/tumbler/APKBUILD index fbf615688..5c400ece4 100644 --- a/user/tumbler/APKBUILD +++ b/user/tumbler/APKBUILD @@ -1,8 +1,8 @@ # Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> # Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> pkgname=tumbler -pkgver=0.2.3 -pkgrel=1 +pkgver=0.2.4 +pkgrel=0 pkgdesc="Thumbnail generation service for the XFCE desktop environment" url="https://xfce.org" arch="all" @@ -37,4 +37,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="aefe284c3baa1d8eaf79c9bdb3cfc044ee6a1f36be34efd67541e6310aa275b5235b29f68483b7b7b5a8df699a8b3db8dc75569ec2b90253756fd6285a2e3816 tumbler-0.2.3.tar.bz2" +sha512sums="cf1d9499ff293086176a0e5055181e5527d9ae39a7786d9fe15a47202e1b02218981c072229e736a7057e85bf0c6ceff34c1f55a12396b3df0b3ab9fda822d02 tumbler-0.2.4.tar.bz2" diff --git a/user/udisks2/APKBUILD b/user/udisks2/APKBUILD index 66af86bad..2374ff4ea 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.1 +pkgver=2.8.2 pkgrel=0 pkgdesc="A Disk Manager" url="https://www.freedesktop.org/wiki/Software/udisks" @@ -18,7 +18,6 @@ source="https://github.com/storaged-project/udisks/releases/download/udisks-$pkg builddir="$srcdir"/udisks-$pkgver build() { - cd "$builddir" ./configure \ --build=$CBUILD \ --host=$CHOST \ @@ -28,16 +27,16 @@ build() { --infodir=/usr/share/info \ --localstatedir=/var \ --enable-compile-warnings=minimum + cp "$builddir"/data/org.freedesktop.UDisks2.policy.in \ + "$builddir"/data/org.freedesktop.UDisks2.policy make } check() { - cd "$builddir" make check } package() { - cd "$builddir" make DESTDIR="$pkgdir" install } @@ -50,5 +49,5 @@ libs() { "$subpkgdir"/usr/lib/ } -sha512sums="a3c7d26cd1bbd9cce59b25d118076c34482a698d7dca9e0468b6f9c928f40c8dbdd0b1cb61cf288ae77151643dc4a3eacf31e22af2c7b35a2828e49ee335e70b udisks-2.8.1.tar.bz2 +sha512sums="dc0087ed2d3ab71dc66f63f868a6e2cd0e4e7578c40b2240739cecaffd6f50f5a2cecfc7ef7df9304e291d84ab12f59a940b9fb42b34a5a60d12061e6aaffc1a udisks-2.8.2.tar.bz2 269ba55cc755e2a484670258bc530790691b66c9fce9479a2a17d78cff5d52dd1be89290979efd44a0ba82be665f52a356a57f2cbb67951d91fe09d4e24c2a6a O_CLOEXEC.patch" diff --git a/user/umbrello/APKBUILD b/user/umbrello/APKBUILD index 33b82b783..6b2e8cfb0 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.12.3 +pkgver=19.04.1 pkgrel=0 pkgdesc="Software modelling tool and code generator" url="https://umbrello.kde.org/" @@ -44,5 +44,5 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="b7ba29b05e5997d9e7ef07c261198bc47910e75668bd619e1f14bb850d5e09fd07948e7d56e2604287384e1c331a882f40b4540c116e9a7b2cfa2078f57b4a90 umbrello-18.12.3.tar.xz +sha512sums="5efac3aa2a2ac6d135562503da7923c530cf74816f1c2fc4c580bf7f8b3f4cc0a50b76f1f64d3393e131ed47c5ab3fcef44f558cb056f83d0b75b38d5d5865c8 umbrello-19.04.1.tar.xz fcbe03a49d5420bf17383e5e6d4bac4377c1abfcafacea20ac37409457471537067efe3236647fb3570abfa410a4a3870b1638bb1ef880a24e6f60e2b189a562 hax.patch" diff --git a/user/unicode-data/APKBUILD b/user/unicode-data/APKBUILD new file mode 100644 index 000000000..5cbd55565 --- /dev/null +++ b/user/unicode-data/APKBUILD @@ -0,0 +1,38 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=unicode-data +pkgver=12.0.0 +pkgrel=0 +pkgdesc="Unicode data files" +url="https://unicode.org" +arch="noarch" +options="!check" # no testsuite +license="Unicode-TOU" +depends="" +makedepends="" +source="https://unicode.org/Public/$pkgver/ucd/Blocks.txt + https://unicode.org/Public/$pkgver/ucd/DerivedAge.txt + https://unicode.org/Public/$pkgver/ucd/NamesList.txt + https://unicode.org/Public/$pkgver/ucd/Scripts.txt + https://unicode.org/Public/$pkgver/ucd/UnicodeData.txt + https://unicode.org/Public/$pkgver/ucd/Unihan.zip + " + +package() { + cd "$srcdir" + mkdir -p "$pkgdir"/usr/share/unicode/$pkgver + install -m644 -t "$pkgdir"/usr/share/unicode/$pkgver \ + Blocks.txt \ + DerivedAge.txt \ + NamesList.txt \ + Scripts.txt \ + UnicodeData.txt \ + Unihan.zip +} + +sha512sums="e3ead1233c29a13d46ffcc4b1c8b685144444579fb9231189f2724d9161adcdba39e9dd468c2d791af32538aa6d3f39f1e3f19c6d73eab432ac006526dc6c3ae Blocks.txt +2cfe840bd5c72a7a47a15123e936cf96677ad66e2caecb7f580b98de83054a17cf49cd26b6470084979bdb3cf8818ea9799dab220108b7bf3a813f65bb1ed86e DerivedAge.txt +de087e89be129928de87ebb9370f95ab9964c491a41f306791884c6d0452407b8530b7d47804cb3f0442e29d4c98d84867c82c90b46f3fbc1a7ee3fb6ce97005 NamesList.txt +d25c87b58df3096d1dc26a81edc01eb1d08c62510b38854683ca91978a2a4df12ca0b29731c8d0211555387da604b5e8da7d5f5a5f9d57052f1bc502ecd2154e Scripts.txt +be1844662041d022c57c2f81b971d395a0ba3a5824de4a5c1c8076ed66955f590a9d624d8abc189a66b7d35ba7fa7d63be727e8bdd9c3dff01251a34f2b84729 UnicodeData.txt +7fdefad078284c14a9105655d1cb4d2b0dc1c89c56effe92ffcbd5a30b325559a56d97574b6077144d7a4ed02df6e6a402a2a5360e4abc0c84bae5c589044375 Unihan.zip" diff --git a/user/unifont/APKBUILD b/user/unifont/APKBUILD index fc71d4326..67e99c144 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.03 +pkgver=12.1.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="fd24e48630acb4bac5e3a05aa541c5c93cbdda95ce162f62e05bc860a686f025e67af3c2e577bf96991119b70b2e3a0d1ef170466af3b8037df5a7014d009982 unifont-11.0.03.tar.gz" +sha512sums="031336c5811957f211e442c9d3a3920cc3149f80681802a0f9e2a9c905ccce8f0434bf37f6000d30ff568aa5020d4017034906be2b38ead7ebb35b7dc8d47299 unifont-12.1.02.tar.gz" diff --git a/user/upower/APKBUILD b/user/upower/APKBUILD index 05c783cee..ea8652b3e 100644 --- a/user/upower/APKBUILD +++ b/user/upower/APKBUILD @@ -1,6 +1,6 @@ # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=upower -pkgver=0.99.9 +pkgver=0.99.10 pkgrel=0 pkgdesc="Power Management Services" url="https://upower.freedesktop.org" @@ -11,10 +11,9 @@ 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://gitlab.freedesktop.org/upower/upower/uploads/2282c7c0e53fb31816b824c9d1f547e8/upower-0.99.9.tar.xz" +source="https://gitlab.freedesktop.org/upower/upower/uploads/c438511024b9bc5a904f8775cfc8e4c4/upower-0.99.10.tar.xz" build() { - cd "$builddir" DATADIRNAME=share ./configure \ --build=$CBUILD \ --host=$CHOST \ @@ -28,13 +27,11 @@ build() { } check() { - cd "$builddir" make check } package() { - cd "$builddir" make DESTDIR="$pkgdir" install } -sha512sums="45eb587b0e5ffcce88bad8c56bc5efa30559748913016a55d58313280f5159378e5fbb4a9842c3a6409257bb97822d235f96b03704268b8471455c93eb05fe2f upower-0.99.9.tar.xz" +sha512sums="aefe1b2ff5a390f1ea9676fe7e753750bebc56034365a9183e946a8463904047da0a4ac71340eb2efedc16bce6f6d9ef4609ddca37dc1fc31b56bcdbfbbfa59d upower-0.99.10.tar.xz" diff --git a/user/utf8proc/APKBUILD b/user/utf8proc/APKBUILD index 8be033ef7..8b3234adb 100644 --- a/user/utf8proc/APKBUILD +++ b/user/utf8proc/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=utf8proc -pkgver=2.2.0 +pkgver=2.3.0 pkgrel=0 pkgdesc="C library for processing UTF-8 data" url=" " @@ -13,7 +13,6 @@ subpackages="$pkgname-dev" source="utf8proc-$pkgver.tar.gz::https://github.com/JuliaStrings/utf8proc/archive/v$pkgver.tar.gz" prepare() { - cd "$builddir" default_prepare mkdir build } @@ -43,4 +42,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="ae19287e33bc4807475063963557c4d1d2f7d95577d61882ba8df380883662860eeb868e7391ac1b8111614ca2c1855f631925ade6eaa827d07d28cc4cdbab9c utf8proc-2.2.0.tar.gz" +sha512sums="3935cd280e14ed570caa89a983b2d56a981e74da9298a1ea26064da78ece288ff48a73306446d3e1d777e6ecd8ea881f7a29169eaae2153cb015daefb8df8656 utf8proc-2.3.0.tar.gz" diff --git a/user/uwsgi/APKBUILD b/user/uwsgi/APKBUILD index 3ec869b6e..c009e1ff2 100644 --- a/user/uwsgi/APKBUILD +++ b/user/uwsgi/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=uwsgi -pkgver=2.0.17.1 +pkgver=2.0.18 pkgrel=0 pkgdesc="Web application server" url="https://projects.unbit.it/uwsgi" @@ -20,8 +20,6 @@ done source="https://projects.unbit.it/downloads/uwsgi-$pkgver.tar.gz" build() { - cd "$builddir" - echo 'plugin_dir = /usr/lib/uwsgi/plugins' >> buildconf/core.ini echo 'plugin_build_dir = .' >> buildconf/core.ini @@ -34,12 +32,10 @@ build() { } check() { - cd "$builddir" python3 uwsgiconfig.py --check } package() { - cd "$builddir" install -D -m755 "$builddir"/uwsgi "$pkgdir"/usr/bin/uwsgi } @@ -87,4 +83,4 @@ rack() { _plugpack rack "Ruby Rack" } -sha512sums="10d357961fde3a3f5f8e77986cc647313f95a33243e24c2afc482fce21df68a8ae48f90e7b5b76d7edc3cf8fd474d99823d6d60ef7477349abc65a319222f11b uwsgi-2.0.17.1.tar.gz" +sha512sums="6561703279bcc4a81311d033810ac066d0f113bab13b0942f3eef86cac29c584a6641b52476840d6895151aee5ed064ae2d03b18932cf7f47e62f4eeed76da61 uwsgi-2.0.18.tar.gz" diff --git a/user/v4l-utils/APKBUILD b/user/v4l-utils/APKBUILD index 389c4f9ad..bf53d6890 100644 --- a/user/v4l-utils/APKBUILD +++ b/user/v4l-utils/APKBUILD @@ -1,7 +1,7 @@ # Contributor: Leonardo Arena <rnalrd@alpinelinux.org> # Maintainer: pkgname=v4l-utils -pkgver=1.16.3 +pkgver=1.16.4 pkgrel=0 pkgdesc="Userspace tools and conversion library for Video 4 Linux" url="https://www.linuxtv.org/wiki/index.php/V4l-utils" @@ -76,7 +76,7 @@ ir_keytable() { "$subpkgdir"/etc } -sha512sums="404672d18d94861c6957ea3a15a6a48f238d3859940810952a5a8cc33b57f1a360d1a19af28405c01b073c0ece90c5995a71dbe6544b30bdb8eace7daeb4bc0b v4l-utils-1.16.3.tar.bz2 +sha512sums="451e3af203b43fcf9fc61e00a236c030c932eabc0b749269277fc42da05464a2b74581255e7d9bbbac35b43ece318b640c3fde8d074c71723a3594a27ee982ff v4l-utils-1.16.4.tar.bz2 bc18280046c15b19984103f7c2bb44a0aea79715803c64f0c64bc932499c09022c956914c3b15ae59499adc09f6fbff5378be45707fe851250f495a26b63d682 qv4l2.svg 6f74aa524b3de420eeb8de788ff3f717020732a3f1f6530caee50e63aae7eddbe5f551ffc50065c9f5d6078c13bace089948ecdcacf01f8b82c1a44960e06315 qv4l2.desktop 9a4f6d0a44d30bb7afe4db8b40074d362f240cae1f1b13feb0eb2b1b666479fc6f73ef27542f6f80fb1b922c9540feadc9ff8563890ff3041d3f7fc62e504e29 getsubopt.patch" diff --git a/user/vala/APKBUILD b/user/vala/APKBUILD index e8bbd399e..3e6b0d5b0 100644 --- a/user/vala/APKBUILD +++ b/user/vala/APKBUILD @@ -1,7 +1,7 @@ # Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> # Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> pkgname=vala -pkgver=0.44.0 +pkgver=0.44.3 pkgrel=0 pkgdesc="Compiler for the Vala programming language" url="https://wiki.gnome.org/Projects/Vala" @@ -30,4 +30,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="1c2e962e849fbf7f3a2be56cca3f26770f6f754f403f7ff7dc8a7ed28bba212d3b704313e02cce86a27432b9b3b918009f59155398ca3be26afc698cc3952b3d vala-0.44.0.tar.xz" +sha512sums="f074d537db94772565003a097c6a29e0dfcd58680baeb321ad04dec8ea056319eb8b7059117c259523b7570841651c2935feef06c03e3d82a11a94a293349b5a vala-0.44.3.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 index 5272406ec..5d7dbe29c 100644 --- a/user/valgrind/0001-Ensure-ELFv2-is-supported-on-PPC64.patch +++ b/user/valgrind/0001-Ensure-ELFv2-is-supported-on-PPC64.patch @@ -1,35 +1,35 @@ -From a5224eb31a4c8a680587e74cc402e5ed92ead216 Mon Sep 17 00:00:00 2001 +From 1278e5015f6925d86274d6363c4cedf2ce47bfcb 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 +Date: Tue, 14 May 2019 14:07:50 +0200 +Subject: [PATCH] [PATCH] Ensure ELFv2 is supported on PPC64 --- - coregrind/m_dispatch/dispatch-ppc64be-linux.S | 107 ++++++++++++++++-- - coregrind/m_initimg/initimg-linux.c | 5 +- + coregrind/m_dispatch/dispatch-ppc64be-linux.S | 101 ++++++++++++++++-- + coregrind/m_initimg/initimg-linux.c | 3 +- coregrind/m_libcsetjmp.c | 7 +- coregrind/m_machine.c | 3 +- - coregrind/m_main.c | 19 ++-- + coregrind/m_main.c | 21 ++-- coregrind/m_sigframe/sigframe-ppc64-linux.c | 3 +- coregrind/m_signals.c | 11 +- - coregrind/m_stacktrace.c | 12 +- + 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_translate.c | 26 ++--- coregrind/m_ume/elf.c | 8 +- - coregrind/pub_core_machine.h | 12 +- + 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(-) + 19 files changed, 205 insertions(+), 67 deletions(-) diff --git a/coregrind/m_dispatch/dispatch-ppc64be-linux.S b/coregrind/m_dispatch/dispatch-ppc64be-linux.S -index 91bd3b236..eb8026c7c 100644 +index c5592d4..292b236 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, +@@ -88,14 +88,26 @@ void VG_(disp_run_translations)( UWord* two_words, .section ".text" .align 2 .globl VG_(disp_run_translations) @@ -56,7 +56,7 @@ index 91bd3b236..eb8026c7c 100644 /* r3 holds two_words */ /* r4 holds guest_state */ /* r5 holds host_addr */ -@@ -231,6 +243,11 @@ VG_(disp_run_translations): +@@ -244,6 +256,11 @@ VG_(disp_run_translations): /* Set up the guest state ptr */ mr 31,4 /* r31 (generated code gsp) = r4 */ @@ -68,7 +68,7 @@ index 91bd3b236..eb8026c7c 100644 /* 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): +@@ -398,7 +415,9 @@ VG_(disp_run_translations): mtlr 0 addi 1,1,624 /* stack_size */ blr @@ -79,7 +79,7 @@ index 91bd3b236..eb8026c7c 100644 /*----------------------------------------------------*/ /*--- Continuation points ---*/ -@@ -395,15 +414,25 @@ VG_(disp_run_translations): +@@ -408,14 +427,24 @@ VG_(disp_run_translations): .section ".text" .align 2 .globl VG_(disp_cp_chain_me_to_slowEP) @@ -97,17 +97,15 @@ index 91bd3b236..eb8026c7c 100644 .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 + /* 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): +@@ -428,20 +457,33 @@ VG_(disp_cp_chain_me_to_slowEP): */ subi 7,7,20+4+4 b .postamble @@ -143,7 +141,7 @@ index 91bd3b236..eb8026c7c 100644 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): +@@ -453,19 +495,32 @@ VG_(disp_cp_chain_me_to_fastEP): */ subi 7,7,20+4+4 b .postamble @@ -155,12 +153,11 @@ index 91bd3b236..eb8026c7c 100644 .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" + .section ".opd","aw" .align 3 VG_(disp_cp_xindir): .quad .VG_(disp_cp_xindir),.TOC.@tocbase,0 @@ -169,27 +166,23 @@ index 91bd3b236..eb8026c7c 100644 .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 + /* Where are we going? */ + ld 20, OFFSET_ppc64_CIA(31) + +@@ -584,44 +639,72 @@ VG_(disp_cp_xindir): + li 7,0 + b .postamble + /*NOTREACHED*/ +#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): + /* ------ Assisted jump ------ */ .section ".text" .align 2 .globl VG_(disp_cp_xassisted) @@ -260,7 +253,7 @@ index 91bd3b236..eb8026c7c 100644 /* 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 +index 8a7f0d0..6891641 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 ) @@ -274,7 +267,7 @@ index 61cc458bc..19df79705 100644 #endif diff --git a/coregrind/m_libcsetjmp.c b/coregrind/m_libcsetjmp.c -index c73180640..ed96f4739 100644 +index 85ffc12..51273a0 100644 --- a/coregrind/m_libcsetjmp.c +++ b/coregrind/m_libcsetjmp.c @@ -35,6 +35,7 @@ @@ -306,10 +299,10 @@ index c73180640..ed96f4739 100644 ".section \".toc\",\"aw\"" "\n" diff --git a/coregrind/m_machine.c b/coregrind/m_machine.c -index 31b0e1b6b..eb3e6a4e1 100644 +index df842aa..de37070 100644 --- a/coregrind/m_machine.c +++ b/coregrind/m_machine.c -@@ -2035,7 +2035,8 @@ void* VG_(fnptr_to_fnentry)( void* f ) +@@ -2073,7 +2073,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) \ @@ -320,33 +313,38 @@ index 31b0e1b6b..eb3e6a4e1 100644 # 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 +index 21df679..855c933 100644 --- a/coregrind/m_main.c +++ b/coregrind/m_main.c -@@ -2274,7 +2274,7 @@ static void final_tidyup(ThreadId tid) +@@ -2303,7 +2303,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); + Addr r2 = VG_(get_tocptr)(VG_(current_DiEpoch)(), + 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) +@@ -2336,13 +2336,15 @@ static void final_tidyup(ThreadId tid) 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; + VG_TRACK(post_reg_write, Vg_CoreClientReq, tid, + offsetof(VexGuestPPC64State, guest_GPR2), + sizeof(VG_(threads)[tid].arch.vex.guest_GPR2)); -# elif defined(VGP_ppc64le_linux) +- /* setting GPR2 but not really needed, GPR12 is needed */ +# elif (defined(VGP_ppc64be_linux) || defined(VGP_ppc64le_linux)) \ + && !defined(VG_PLAT_USES_PPCTOC) - /* setting GPR2 but not really needed, GPR12 is needed */ ++ /* 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" + VG_TRACK(post_reg_write, Vg_CoreClientReq, tid, + offsetof(VexGuestPPC64State, guest_GPR2), +@@ -2657,9 +2659,10 @@ asm("\n" "\ttrap\n" ".previous\n" ); @@ -359,7 +357,7 @@ index bf4a71284..102235dca 100644 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" +@@ -2703,9 +2706,9 @@ asm("\n" "\tnop\n" "\ttrap\n" ); @@ -373,7 +371,7 @@ index bf4a71284..102235dca 100644 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 +index b16606c..cc65783 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, @@ -387,10 +385,10 @@ index b16606c22..cc657838f 100644 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 +index 7591eb3..51fce79 100644 --- a/coregrind/m_signals.c +++ b/coregrind/m_signals.c -@@ -889,7 +889,9 @@ extern void my_sigreturn(void); +@@ -897,7 +897,9 @@ extern void my_sigreturn(void); " sc\n" \ ".previous\n" @@ -401,7 +399,7 @@ index e572f17cc..52d939057 100644 # define _MY_SIGRETURN(name) \ ".align 2\n" \ ".globl my_sigreturn\n" \ -@@ -904,9 +906,10 @@ extern void my_sigreturn(void); +@@ -912,9 +914,10 @@ extern void my_sigreturn(void); " li 0, " #name "\n" \ " sc\n" @@ -416,7 +414,7 @@ index e572f17cc..52d939057 100644 # define _MY_SIGRETURN(name) \ ".align 2\n" \ diff --git a/coregrind/m_stacktrace.c b/coregrind/m_stacktrace.c -index 24f1409dd..9be4c6da9 100644 +index b3ac89f..5ff90ef 100644 --- a/coregrind/m_stacktrace.c +++ b/coregrind/m_stacktrace.c @@ -726,7 +726,8 @@ UInt VG_(get_StackTrace_wrk) ( ThreadId tid_if_known, @@ -460,7 +458,7 @@ index 24f1409dd..9be4c6da9 100644 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 +index 5948cec..c1cdfab 100644 --- a/coregrind/m_syscall.c +++ b/coregrind/m_syscall.c @@ -470,7 +470,8 @@ asm( @@ -493,7 +491,7 @@ index 5948cecf5..c1cdfab27 100644 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 +index 16e9ced..db0d8b4 100644 --- a/coregrind/m_syswrap/syscall-ppc64be-linux.S +++ b/coregrind/m_syswrap/syscall-ppc64be-linux.S @@ -76,11 +76,24 @@ @@ -534,7 +532,7 @@ index 16e9cedc0..db0d8b4aa 100644 /* 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 +index eada099..7186fe3 100644 --- a/coregrind/m_syswrap/syswrap-ppc64-linux.c +++ b/coregrind/m_syswrap/syswrap-ppc64-linux.c @@ -41,6 +41,7 @@ @@ -575,7 +573,7 @@ index 6549dd1b3..4ecbe38a6 100644 " .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 +index 0488b54..d00916a 100644 --- a/coregrind/m_trampoline.S +++ b/coregrind/m_trampoline.S @@ -469,11 +469,11 @@ VG_(ppctoc_magic_redirect_return_stub): @@ -593,7 +591,7 @@ index 0488b54bd..d00916aef 100644 .align 3 VG_(ppc64_linux_REDIR_FOR_strlen): diff --git a/coregrind/m_translate.c b/coregrind/m_translate.c -index 3602a4663..bdd1d50ee 100644 +index 3602a46..6dd2845 100644 --- a/coregrind/m_translate.c +++ b/coregrind/m_translate.c @@ -1006,7 +1006,8 @@ static IRExpr* mkU32 ( UInt n ) { @@ -606,7 +604,7 @@ index 3602a4663..bdd1d50ee 100644 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 ) +@@ -1234,7 +1235,8 @@ static void gen_push_and_set_LR_R2 ( IRSB* bb, Addr new_R2_value ) } #endif @@ -616,7 +614,7 @@ index 3602a4663..bdd1d50ee 100644 static void gen_pop_R2_LR_then_bLR ( IRSB* bb ) { -@@ -1263,7 +1264,8 @@ static void gen_pop_R2_LR_then_bLR ( IRSB* bb ) +@@ -1263,7 +1265,8 @@ static void gen_pop_R2_LR_then_bLR ( IRSB* bb ) } #endif @@ -626,7 +624,7 @@ index 3602a4663..bdd1d50ee 100644 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 ) +@@ -1285,7 +1288,7 @@ Bool mk_preamble__ppctoc_magic_return_stub ( void* closureV, IRSB* bb ) } #endif @@ -635,7 +633,7 @@ index 3602a4663..bdd1d50ee 100644 /* 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 ) +@@ -1366,9 +1369,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 ) ); } @@ -646,16 +644,17 @@ index 3602a4663..bdd1d50ee 100644 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 ) +@@ -1424,8 +1425,7 @@ Bool mk_preamble__set_NRADDR_to_nraddr ( void* closureV, IRSB* bb ) ); - gen_push_and_set_LR_R2 ( bb, VG_(get_tocptr)( closure->readdr ) ); + 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) /* 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, +@@ -1648,7 +1648,8 @@ Bool VG_(translate) ( ThreadId tid, preamble_fn = mk_preamble__set_NRADDR_to_nraddr; /* LE we setup the LR */ @@ -665,7 +664,7 @@ index 3602a4663..bdd1d50ee 100644 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, +@@ -1692,13 +1693,14 @@ Bool VG_(translate) ( ThreadId tid, vex_abiinfo.guest_ppc_zap_RZ_at_bl = NULL; # endif @@ -683,7 +682,7 @@ index 3602a4663..bdd1d50ee 100644 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 +index 21eb52b..f1e6b47 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) @@ -709,7 +708,7 @@ index 21eb52bcb..f1e6b4728 100644 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 +index d6af843..400148d 100644 --- a/coregrind/pub_core_machine.h +++ b/coregrind/pub_core_machine.h @@ -60,12 +60,20 @@ @@ -736,7 +735,7 @@ index d6af843df..400148d57 100644 # 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 +index ad03343..f300fbe 100644 --- a/coregrind/vg_preloaded.c +++ b/coregrind/vg_preloaded.c @@ -45,6 +45,7 @@ @@ -757,7 +756,7 @@ index ad033432a..f300fbe80 100644 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 +index cc8c2b8..3d30e7f 100644 --- a/include/valgrind.h +++ b/include/valgrind.h @@ -143,12 +143,20 @@ @@ -786,7 +785,7 @@ index 577c8f05e..99e058ccf 100644 # 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 +index 7822444..c239f5b 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) @@ -799,19 +798,19 @@ index 782244481..c239f5b10 100644 // 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 +index 4ce746e..e03ab33 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) +-# if defined(VGA_ppc64le) ++# if (defined(VGA_ppc64be) && (defined(_CALL_ELF) && _CALL_ELF == 2)) \ ++ || defined(VGA_ppc64le) Int ox = o; - #else + # else Int ox = sz == 8 ? o : (o - 4); -- -2.18.0 +2.21.0 diff --git a/user/valgrind/APKBUILD b/user/valgrind/APKBUILD index fc710b4b2..f676d18e8 100644 --- a/user/valgrind/APKBUILD +++ b/user/valgrind/APKBUILD @@ -1,7 +1,7 @@ # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=valgrind -pkgver=3.13.0 -pkgrel=5 +pkgver=3.15.0 +pkgrel=0 pkgdesc="A tool to help find memory-management problems in programs" url="http://valgrind.org/" arch="all" @@ -65,8 +65,8 @@ package() { fi } -sha512sums="34e1013cd3815d30a459b86220e871bb0a6209cc9e87af968f347083693779f022e986f211bdf1a5184ad7370cde12ff2cfca8099967ff94732970bd04a97009 valgrind-3.13.0.tar.bz2 -71afb12748f69f0976a299c65572818b70cbce5d04f230a49a50f114351d8083c59a9e197cefbcb9145806797ff4d1d54488f50342b680c9a2b76e4a7f7cf305 0001-Ensure-ELFv2-is-supported-on-PPC64.patch +sha512sums="5695d1355226fb63b0c80809ed43bb077b6eed4d427792d9d7ed944c38b557a84fe3c783517b921e32f161228e10e4625bea0550faa4685872bb4454450cfa7f valgrind-3.15.0.tar.bz2 +250177c3f50940560de9ad885cf5d9d7aa060ac832ced04875e1109b9114ec34e358a5c2309c8548f657e293cf50d980306d47b2cdf5e429aeabd10ffe666104 0001-Ensure-ELFv2-is-supported-on-PPC64.patch 9ee297d1b2b86891584443ad0caadc4977e1447979611ccf1cc55dbee61911b0b063bc4ad936d86c451cedae410cb3219b5a088b2ad0aa17df182d564fe36cfe arm.patch 57086a768f3876b26b0e507bc159a73f0955f03d5af8cc30e21103e348ca67f2e58b5555a5a97f299751c6602692ad43d8346bb68a80917d740fb4d65bba9665 realloc.patch d011b2769d35ca3206967e6dac9f3fb24a6496e5bbfdc73342382245c89375b09d6948b10ba3cf8aa0050c79c0dd13b75764aec0ec5c6ac479fa930941067747 suppressions.patch diff --git a/user/vlc/APKBUILD b/user/vlc/APKBUILD index a06e293ed..31a7b2975 100644 --- a/user/vlc/APKBUILD +++ b/user/vlc/APKBUILD @@ -3,7 +3,7 @@ # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=vlc pkgver=3.0.6 -pkgrel=1 +pkgrel=2 pkgdesc="Multi-platform MPEG, VCD/DVD, and DivX player" triggers="vlc-libs.trigger=/usr/lib/vlc/plugins" pkgusers="vlc" @@ -12,34 +12,9 @@ url="https://www.videolan.org/vlc/" arch="all" license="GPL-2.0+" options="!checkroot textrel" -subpackages="$pkgname-dev $pkgname-doc $pkgname-qt $pkgname-xorg - $pkgname-daemon::noarch $pkgname-libs $pkgname-plugins - $pkgname-lang - - $pkgname-plugins-access:plugins_access - $pkgname-plugins-access_output:plugins_access_output - $pkgname-plugins-audio_filter:plugins_audio_filter - $pkgname-plugins-audio_mixer:plugins_audio_mixer - $pkgname-plugins-audio_output:plugins_audio_output - $pkgname-plugins-codec:plugins_codec - $pkgname-plugins-control:plugins_control - $pkgname-plugins-demux:plugins_demux - $pkgname-plugins-gui:plugins_gui - $pkgname-plugins-lua:plugins_lua - $pkgname-plugins-meta_engine:plugins_meta_engine - $pkgname-plugins-misc:plugins_misc - $pkgname-plugins-mux:plugins_mux - $pkgname-plugins-notify:plugins_notify - $pkgname-plugins-packetizer:plugins_packetizer - $pkgname-plugins-services_discovery:plugins_services_discovery - $pkgname-plugins-stream_filter:plugins_stream_filter - $pkgname-plugins-stream_out:plugins_stream_out - $pkgname-plugins-text_renderer:plugins_text_renderer - $pkgname-plugins-video_chroma:plugins_video_chroma - $pkgname-plugins-video_filter:plugins_video_filter - $pkgname-plugins-video_output:plugins_video_output - $pkgname-plugins-visualization:plugins_visualization" -depends="ttf-dejavu $pkgname-plugins" +subpackages="$pkgname-dev $pkgname-doc $pkgname-qt $pkgname-pulse + $pkgname-daemon::noarch $pkgname-libs $pkgname-lang" +depends="ttf-dejavu xdg-utils" # Generic dependencies, then X11, then multimedia libraries makedepends="autoconf automake bison eudev-dev flex libarchive-dev libgcrypt-dev libtool libxml2-dev lua5.3-dev ncurses-dev sysfsutils-dev @@ -58,6 +33,7 @@ makedepends="autoconf automake bison eudev-dev flex libarchive-dev libraw1394-dev>=2.0.1 librsvg-dev libshout-dev libtheora-dev libva-dev libvdpau-dev libvorbis-dev live-media-dev opus-dev pulseaudio-dev speex-dev speexdsp-dev taglib-dev v4l-utils-dev x264-dev x265-dev" +replaces="vlc-plugins vlc-xorg" source="https://get.videolan.org/vlc/$pkgver/vlc-$pkgver.tar.xz check-headless.patch disable-sub-autodetect-fuzzy-1-test.patch @@ -165,43 +141,23 @@ check() { make check } -plugins() { - pkgdesc="$pkgname all plugins meta package" - depends="$pkgname-plugins-access - $pkgname-plugins-access_output - $pkgname-plugins-audio_filter - $pkgname-plugins-audio_mixer - $pkgname-plugins-audio_output - $pkgname-plugins-codec - $pkgname-plugins-control - $pkgname-plugins-demux - $pkgname-plugins-gui - $pkgname-plugins-lua - $pkgname-plugins-meta_engine - $pkgname-plugins-misc - $pkgname-plugins-mux - $pkgname-plugins-notify - $pkgname-plugins-packetizer - $pkgname-plugins-services_discovery - $pkgname-plugins-stream_filter - $pkgname-plugins-stream_out - $pkgname-plugins-text_renderer - $pkgname-plugins-video_chroma - $pkgname-plugins-video_filter - $pkgname-plugins-video_output - $pkgname-plugins-visualization" - mkdir -p "$subpkgdir" -} - _mv() { local dir=${1%/*} mkdir -p "$subpkgdir"/$dir mv "$1" "$subpkgdir"/$dir/ } +pulse() { + pkgdesc="PulseAudio support for VLC" + depends="" + install_if="vlc pulseaudio" + mkdir -p "$subpkgdir"/usr/lib/vlc + mv "$pkgdir"/usr/lib/vlc/libvlc_pulse* "$subpkgdir"/usr/lib/vlc/ +} + qt() { pkgdesc="Qt frontend for VLC" - depends="vlc-xorg=$pkgver-r$pkgrel" + depends="vlc=$pkgver-r$pkgrel" cd "$pkgdir" # scan for elf files that directly or indirectly depends on # libQt* libraries @@ -216,32 +172,6 @@ qt() { "$subpkgdir"/usr/bin/ } -xorg() { - pkgdesc="Video LAN X.org support" - depends="xdg-utils vlc=$pkgver-r$pkgrel" - - # scan for elf files that directly or indirectly depends on - # libX* libraries - cd "$pkgdir" - for i in $(find . -type f ); do - if ldd $i 2>/dev/null | grep -E -q "libX|x11|libxcb|libGL"; then - echo $i | grep libavcodec_plugin.so || _mv "$i" || return 1 - fi - done - - mkdir -p "$subpkgdir"/usr/bin - mv "$pkgdir"/usr/bin/svlc \ - "$subpkgdir"/usr/bin - - mkdir -p "$subpkgdir"/usr/share/vlc - mv "$pkgdir"/usr/share/applications \ - "$pkgdir"/usr/share/icons \ - "$subpkgdir"/usr/share/ - - mv "$pkgdir"/usr/share/vlc/skins2 \ - "$subpkgdir"/usr/share/vlc -} - daemon() { pkgdesc="Support for running VLC as a daemon" install="vlc-daemon.pre-install" @@ -262,39 +192,6 @@ libs() { default_libs } -_mv_plugins() { - local plugin=$1 - pkgdesc="$pkgname $plugin plugin" - depends= - mkdir -p "$subpkgdir"/usr/lib/vlc/plugins - mv "$pkgdir"/usr/lib/vlc/plugins/"$plugin" \ - "$subpkgdir"/usr/lib/vlc/plugins -} - -plugins_access() { _mv_plugins access; } -plugins_access_output() { _mv_plugins access_output; } -plugins_audio_filter() { _mv_plugins audio_filter; } -plugins_audio_mixer() { _mv_plugins audio_mixer; } -plugins_audio_output() { _mv_plugins audio_output; } -plugins_codec() { _mv_plugins codec; } -plugins_control() { _mv_plugins control; } -plugins_demux() { _mv_plugins demux; } -plugins_gui() { _mv_plugins gui; } -plugins_lua() { _mv_plugins lua; } -plugins_meta_engine() { _mv_plugins meta_engine; } -plugins_misc() { _mv_plugins misc; } -plugins_mux() { _mv_plugins mux; } -plugins_notify() { _mv_plugins notify; } -plugins_packetizer() { _mv_plugins packetizer; } -plugins_services_discovery() { _mv_plugins services_discovery; } -plugins_stream_filter() { _mv_plugins stream_filter; } -plugins_stream_out() { _mv_plugins stream_out; } -plugins_text_renderer() { _mv_plugins text_renderer; } -plugins_video_chroma() { _mv_plugins video_chroma; } -plugins_video_filter() { _mv_plugins video_filter; } -plugins_video_output() { _mv_plugins video_output; } -plugins_visualization() { _mv_plugins visualization; } - sha512sums="7c72e98f30ce5c5a94d74e097fa9960442f89240079b042a729f8a33dd7fedee2538c86c99738ccef2eb27f29055f0221d4c70316e3312c5ebba9565eaa15c52 vlc-3.0.6.tar.xz 22d80df599b8b65a5439cefbb7140af8e9530f326d54945da3769af65f37518b99ec2cc8647aafd2763324a0698280915afe043cc87e5720c4694881ed35bffa check-headless.patch e214b407235cb3afb8bec93f20c9b42957b57e6fd3960679d3d4235e77762e03e64d03c01f00ef63d589e7c85aaad02ce6abbeeccd66b1867bc92451a5b5e9b0 disable-sub-autodetect-fuzzy-1-test.patch diff --git a/user/vte/APKBUILD b/user/vte/APKBUILD index 0808c026e..bd9e7c4a5 100644 --- a/user/vte/APKBUILD +++ b/user/vte/APKBUILD @@ -1,8 +1,8 @@ # Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> # Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> pkgname=vte -pkgver=0.54.3 -pkgrel=1 +pkgver=0.56.2 +pkgrel=0 pkgdesc="Virtual terminal emulator library for Gnome" url="https://www.gnome.org" arch="all" @@ -10,9 +10,8 @@ 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 +source="https://download.gnome.org/sources/vte/${pkgver%.*}/vte-$pkgver.tar.xz exitcode.patch - vala.patch " build() { @@ -34,6 +33,5 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="dd7d2ac361ed9ac0550599bb3164a3bd6ba95535275c9b559c81ce0af1bbf4b3d150a7489f987b2e626b32d4a8adc82d1ff78e8c8640e5b1c036fe4076c5d8ce vte-0.54.3.tar.xz -4987254439a136f66a7b7be1300f5efbf85db74bdb64fdd8d0c9a555173a172b4fd519174f932e73d58a2618ef37273e82fe681bb129891f2792a414025f6c61 exitcode.patch -6f699507326dcef82ab2eb1b94eb0a21255e90053d27db24c38e0dd1ec389ed7710b8032b4c12374448b59ff5b73852bbdd5ce0f5e5cdd4c84be290c7203aafc vala.patch" +sha512sums="8327a77abdfd97d7feda358e767046054ee24f9302c9187f2979e22c0034d4a6e9bf271fc327b866a43b404d7fe50ac36d1a4aebd58340744bdde24ecaa415ad vte-0.56.2.tar.xz +4987254439a136f66a7b7be1300f5efbf85db74bdb64fdd8d0c9a555173a172b4fd519174f932e73d58a2618ef37273e82fe681bb129891f2792a414025f6c61 exitcode.patch" diff --git a/user/vte/vala.patch b/user/vte/vala.patch deleted file mode 100644 index fe07dbbf0..000000000 --- a/user/vte/vala.patch +++ /dev/null @@ -1,29 +0,0 @@ -From 53690d5cee51bdb7c3f7680d3c22b316b1086f2c Mon Sep 17 00:00:00 2001 -From: Rico Tzschichholz <ricotz@ubuntu.com> -Date: Sat, 1 Dec 2018 19:04:59 +0100 -Subject: [PATCH] vala: Fix build with vala 0.43+ git master due to empty - struct definition - -This should get a proper refactoring as the FIXME suggests. - -See https://gitlab.gnome.org/GNOME/vte/issues/76 ---- - bindings/vala/app.vala | 2 ++ - 1 file changed, 2 insertions(+) - -diff --git a/bindings/vala/app.vala b/bindings/vala/app.vala -index 8663d63c..a534e76b 100644 ---- a/bindings/vala/app.vala -+++ b/bindings/vala/app.vala -@@ -819,6 +819,8 @@ class App : Gtk.Application - - public struct Options - { -+ //FIXME Merge this struct into App class -+ public int dummy; - public static bool audible = false; - public static string? command = null; - private static string? cjk_ambiguous_width_string = null; --- -2.18.1 - diff --git a/user/wine/APKBUILD b/user/wine/APKBUILD index 99cf1f2dd..ea9384603 100644 --- a/user/wine/APKBUILD +++ b/user/wine/APKBUILD @@ -4,7 +4,7 @@ # Contributor: Martell Malone <martell@marinelayer.io> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=wine -pkgver=3.0.2 +pkgver=4.0.1 pkgrel=0 pkgdesc="A compatibility layer for running Windows programs" url="http://www.winehq.com" @@ -20,7 +20,7 @@ makedepends="fontconfig-dev openldap-dev libxslt-dev libxxf86dga-dev libxcomposite-dev libxrender-dev libxinerama-dev zlib-dev cups-dev alsa-lib-dev libxml2-dev dbus-dev libxi-dev gnutls-dev tiff-dev v4l-utils-dev udisks2-dev autoconf automake - openal-soft-dev pulseaudio-dev sane-dev eudev-dev + openal-soft-dev pulseaudio-dev sane-dev eudev-dev mpg123-dev " source="http://dl.winehq.org/$pkgname/source/${pkgver%.[1-9]}/$pkgname-$pkgver.tar.xz no-pie.patch @@ -53,6 +53,7 @@ build() { --with-fontconfig \ --with-freetype \ --with-jpeg \ + --with-mpg123 \ --with-openal \ --with-opengl \ --with-png \ @@ -64,7 +65,7 @@ build() { --with-xcomposite \ --with-xinerama \ --with-xslt \ - $_win64 + $_win64 make } @@ -129,6 +130,6 @@ libs() { done } -sha512sums="dbd0f242c5eace297ad16e314b8ad139e7d430de7eb8ca52b2006d0b80db4809e28a0e785d404a65ea1acdb56e7f06ebfc9a50071db1edaa6180c8835e7c4b13 wine-3.0.2.tar.xz -d853875f7d659617bdfba364704abd75b760d12977f1f13acc73acb3c8fefec0549677fb79a4f8955e073d64078b3071d63d97262522e22b7832a66d3d820a9c no-pie.patch +sha512sums="dd240525e389f841123a569fd2f9b8da698b7707bc0de408dfd60ae73c5e24d522abb42b76571c840df52c686fdeae56e0a9c69db2cd31f04cdb345feeacf1dc wine-4.0.1.tar.xz +a96b1e248447912ba522067b67fc920063f355f326eaf3fec760c79a1c6e46019fbdcfa8b95b9d389959a7e3d3ab794f9aaf78913ad6a73be32b5d34ca8a2267 no-pie.patch 522a94a31fc459e80ea7dd05f7aee64f6ae666ec05236d06614acde118d5c60002e0f253ae75edb5f02164f22937ca89578504b690d1a5611bd60f703c8f0c00 winhlp32-flex.patch" diff --git a/user/wine/no-pie.patch b/user/wine/no-pie.patch index 5fb5d87b6..2874e0af8 100644 --- a/user/wine/no-pie.patch +++ b/user/wine/no-pie.patch @@ -1,14 +1,11 @@ -diff --git a/loader/Makefile.in b/loader/Makefile.in -index 8190037..437d4d9 100644 ---- a/loader/Makefile.in -+++ b/loader/Makefile.in -@@ -26,7 +26,7 @@ wine64_DEPS = $(WINELOADER_DEPENDS) - wine64_LDFLAGS = $(LDEXECFLAGS) -lwine $(PTHREAD_LIBS) +--- wine-4.0.1/configure.ac ++++ wine-4.0.1/configure.ac +@@ -955,7 +955,7 @@ - wine_preloader_OBJS = preloader.o --wine_preloader_LDFLAGS = -static -nostartfiles -nodefaultlibs -Wl,-Ttext=0x7c400000 -+wine_preloader_LDFLAGS = -static -nostartfiles -nodefaultlibs -Wl,-Ttext=0x7c400000 -no-pie + WINE_TRY_CFLAGS([-fPIC -Wl,--export-dynamic], + [WINELOADER_LDFLAGS="-Wl,--export-dynamic"]) +- WINEPRELOADER_LDFLAGS="-static -nostartfiles -nodefaultlibs -Wl,-Ttext=0x7c400000" ++ WINEPRELOADER_LDFLAGS="-static -nostartfiles -nodefaultlibs -Wl,-Ttext=0x7c400000 -no-pie" - wine64_preloader_OBJS = preloader.o --wine64_preloader_LDFLAGS = -static -nostartfiles -nodefaultlibs -Wl,-Ttext=0x7c400000 -+wine64_preloader_LDFLAGS = -static -nostartfiles -nodefaultlibs -Wl,-Ttext=0x7c400000 -no-pie + WINE_TRY_CFLAGS([-fPIC -Wl,--rpath,\$ORIGIN/../lib], + [LDRPATH_INSTALL="-Wl,--rpath,\\\$\$ORIGIN/\`\$(MAKEDEP) -R \${bindir} \${libdir}\`" diff --git a/user/wine/nopie.patch b/user/wine/nopie.patch deleted file mode 100644 index 54eb141be..000000000 --- a/user/wine/nopie.patch +++ /dev/null @@ -1,10 +0,0 @@ -diff --git a/loader/Makefile.in b/loader/Makefile.in -index 8190037..b4f2902 100644 ---- a/loader/Makefile.in -+++ b/loader/Makefile.in -@@ -29,4 +29,4 @@ wine_preloader_OBJS = preloader.o - wine_preloader_LDFLAGS = -static -nostartfiles -nodefaultlibs -Wl,-Ttext=0x7c400000 - - wine64_preloader_OBJS = preloader.o --wine64_preloader_LDFLAGS = -static -nostartfiles -nodefaultlibs -Wl,-Ttext=0x7c400000 -+wine64_preloader_LDFLAGS = -static -nostartfiles -nodefaultlibs -Wl,-Ttext=0x7c400000 -no-pie diff --git a/user/wireguard-module-power8-64k/APKBUILD b/user/wireguard-module-power8-64k/APKBUILD index 0e08c993f..487d722c0 100644 --- a/user/wireguard-module-power8-64k/APKBUILD +++ b/user/wireguard-module-power8-64k/APKBUILD @@ -3,7 +3,7 @@ # KEEP THIS IN SYNC with the other wireguard-module packages. _kflavour="-power8-64k" _kver="4.14.88-mc13" -pkgver=0.0.20190227 +pkgver=0.0.20190601 pkgrel=0 _pkgname="wireguard-module$_kflavour" pkgname="$_pkgname-$_kver" @@ -29,4 +29,4 @@ package() { make -C src DEPMOD=true KERNELDIR="/usr/src/linux-$_kver$_kflavour" INSTALL_MOD_PATH="$pkgdir" module-install } -sha512sums="0c27353f27d7ae758cab84a02f63863681baa5eab2b64aa494be30c411b4dccc3af030b410dbfb72342fb5ea34be04f2d3b36ad0bb6a418d9f389ac34384eca3 WireGuard-0.0.20190227.tar.xz" +sha512sums="d667e42b90fbda85b005ae2966689dadc9975c1a53ca5ddfff44214ed55ad7d55d451008c225a4619c834bd7af598af1f127d76a8a3a86cf2e6d886ea0638cf3 WireGuard-0.0.20190601.tar.xz" diff --git a/user/wireguard-module-power8/APKBUILD b/user/wireguard-module-power8/APKBUILD index 6ea11b28c..da2e52d80 100644 --- a/user/wireguard-module-power8/APKBUILD +++ b/user/wireguard-module-power8/APKBUILD @@ -3,7 +3,7 @@ # KEEP THIS IN SYNC with the other wireguard-module packages. _kflavour="-power8" _kver="4.14.88-mc13" -pkgver=0.0.20190227 +pkgver=0.0.20190601 pkgrel=0 _pkgname="wireguard-module$_kflavour" pkgname="$_pkgname-$_kver" @@ -29,4 +29,4 @@ package() { make -C src DEPMOD=true KERNELDIR="/usr/src/linux-$_kver$_kflavour" INSTALL_MOD_PATH="$pkgdir" module-install } -sha512sums="0c27353f27d7ae758cab84a02f63863681baa5eab2b64aa494be30c411b4dccc3af030b410dbfb72342fb5ea34be04f2d3b36ad0bb6a418d9f389ac34384eca3 WireGuard-0.0.20190227.tar.xz" +sha512sums="d667e42b90fbda85b005ae2966689dadc9975c1a53ca5ddfff44214ed55ad7d55d451008c225a4619c834bd7af598af1f127d76a8a3a86cf2e6d886ea0638cf3 WireGuard-0.0.20190601.tar.xz" diff --git a/user/wireguard-module/APKBUILD b/user/wireguard-module/APKBUILD index b85581303..cb3bfaf98 100644 --- a/user/wireguard-module/APKBUILD +++ b/user/wireguard-module/APKBUILD @@ -3,7 +3,7 @@ # KEEP THIS IN SYNC with the other wireguard-module packages. _kflavour="" _kver="4.14.88-mc13" -pkgver=0.0.20190227 +pkgver=0.0.20190601 pkgrel=0 _pkgname="wireguard-module$_kflavour" pkgname="$_pkgname-$_kver" @@ -29,4 +29,4 @@ package() { make -C src DEPMOD=true KERNELDIR="/usr/src/linux-$_kver$_kflavour" INSTALL_MOD_PATH="$pkgdir" module-install } -sha512sums="0c27353f27d7ae758cab84a02f63863681baa5eab2b64aa494be30c411b4dccc3af030b410dbfb72342fb5ea34be04f2d3b36ad0bb6a418d9f389ac34384eca3 WireGuard-0.0.20190227.tar.xz" +sha512sums="d667e42b90fbda85b005ae2966689dadc9975c1a53ca5ddfff44214ed55ad7d55d451008c225a4619c834bd7af598af1f127d76a8a3a86cf2e6d886ea0638cf3 WireGuard-0.0.20190601.tar.xz" diff --git a/user/wireguard-tools/APKBUILD b/user/wireguard-tools/APKBUILD index c14471f7f..2ae8d845b 100644 --- a/user/wireguard-tools/APKBUILD +++ b/user/wireguard-tools/APKBUILD @@ -2,7 +2,7 @@ # Maintainer: Luis Ressel <aranea@aixah.de> pkgname=wireguard-tools _pkgreal=WireGuard -pkgver=0.0.20190227 +pkgver=0.0.20190601 pkgrel=0 pkgdesc="Userland tools for the WireGuard VPN" url="https://www.wireguard.com/" @@ -43,4 +43,4 @@ _patch() { } -sha512sums="0c27353f27d7ae758cab84a02f63863681baa5eab2b64aa494be30c411b4dccc3af030b410dbfb72342fb5ea34be04f2d3b36ad0bb6a418d9f389ac34384eca3 WireGuard-0.0.20190227.tar.xz" +sha512sums="d667e42b90fbda85b005ae2966689dadc9975c1a53ca5ddfff44214ed55ad7d55d451008c225a4619c834bd7af598af1f127d76a8a3a86cf2e6d886ea0638cf3 WireGuard-0.0.20190601.tar.xz" diff --git a/user/wireless-regdb/APKBUILD b/user/wireless-regdb/APKBUILD new file mode 100644 index 000000000..610629eb5 --- /dev/null +++ b/user/wireless-regdb/APKBUILD @@ -0,0 +1,22 @@ +# Contributor: Luis Ressel <aranea@aixah.de> +# Maintainer: Luis Ressel <aranea@aixah.de> +pkgname=wireless-regdb +pkgver=2019.06.03 +pkgrel=0 +pkgdesc="Database of regulatory radio restrictions" +url="https://wireless.wiki.kernel.org/en/developers/regulatory/wireless-regdb" +arch="noarch" +options="!check" # no test suite +license="ISC" +depends="" +makedepends="" +subpackages="$pkgname-doc" +source="https://kernel.org/pub/software/network/$pkgname/$pkgname-$pkgver.tar.xz" + +package() { + install -Dm644 -t "$pkgdir/lib/firmware" regulatory.db regulatory.db.p7s + install -Dm644 -t "$pkgdir/usr/share/man/man5" regulatory.bin.5 regulatory.db.5 + install -Dm644 -t "$pkgdir/usr/share/doc/$pkgname" db.txt +} + +sha512sums="73209ca28c59d6760349ffb713f550300e80db1592bae52b6d252ac9401fa2bb2ace7e6c30cf55df7541da9cef4c8587f3790f7aa34529552468e4b63a3d8fdb wireless-regdb-2019.06.03.tar.xz" diff --git a/user/wpa_supplicant/APKBUILD b/user/wpa_supplicant/APKBUILD index ba297f885..549bc4181 100644 --- a/user/wpa_supplicant/APKBUILD +++ b/user/wpa_supplicant/APKBUILD @@ -1,28 +1,20 @@ # Contributor: Sören Tempel <soeren+alpine@soeren-tempel.net> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=wpa_supplicant -pkgver=2.6 -pkgrel=11 +pkgver=2.8 +pkgrel=0 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)" options="!check" # No test suite -subpackages="$pkgname-doc $pkgname-openrc wpa_gui" -depends="dbus" +subpackages="$pkgname-dbus::noarch $pkgname-doc $pkgname-openrc wpa_gui" +depends="" makedepends="linux-headers openssl-dev dbus-dev libnl3-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 - rebased-v2.6-0003-Extend-protection-of-GTK-IGTK-reinstallation-of-WNM-.patch - rebased-v2.6-0004-Prevent-installation-of-an-all-zero-TK.patch - rebased-v2.6-0005-Fix-PTK-rekeying-to-generate-a-new-ANonce.patch - rebased-v2.6-0006-TDLS-Reject-TPK-TK-reconfiguration.patch - rebased-v2.6-0007-WNM-Ignore-WNM-Sleep-Mode-Response-without-pending-r.patch - rebased-v2.6-0008-FT-Do-not-allow-multiple-Reassociation-Response-fram.patch - +source="https://w1.fi/releases/$pkgname-$pkgver.tar.gz wpa_supplicant.initd wpa_supplicant.confd + dbus.patch eloop.patch config @@ -41,7 +33,6 @@ source="http://w1.fi/releases/$pkgname-$pkgver.tar.gz # - CVE-2017-13088 prepare() { - cd "$builddir" default_prepare # Copy our configuration file to the build directory @@ -72,15 +63,6 @@ package() { done install -Dm755 eapol_test "$pkgdir"/sbin/eapol_test - # dbus - cd dbus - install -d "$pkgdir"/etc/dbus-1/system.d - install -m644 dbus-wpa_supplicant.conf \ - "$pkgdir"/etc/dbus-1/system.d/wpa_supplicant.conf - install -d "$pkgdir"/usr/share/dbus-1/system-services - install fi.epitest.hostap.WPASupplicant.service \ - "$pkgdir"/usr/share/dbus-1/system-services - install -d "$pkgdir"/var/run/wpa_supplicant install -Dm755 "$srcdir"/wpa_supplicant.initd \ "$pkgdir"/etc/init.d/wpa_supplicant install -Dm644 "$srcdir"/wpa_supplicant.confd \ @@ -91,6 +73,20 @@ package() { ln -s ../sbin/wpa_cli "$pkgdir"/bin/wpa_cli } +dbus() { + pkgdesc="$pkgdesc (dbus services)" + depends="$pkgname dbus" + install_if="$pkgname=$pkgver-r$pkgrel dbus" + + cd "$builddir/wpa_supplicant/dbus" + install -d "$subpkgdir"/etc/dbus-1/system.d + install -m644 dbus-wpa_supplicant.conf \ + "$subpkgdir"/etc/dbus-1/system.d/wpa_supplicant.conf + install -d "$subpkgdir"/usr/share/dbus-1/system-services + install fi.w1.wpa_supplicant1.service \ + "$subpkgdir"/usr/share/dbus-1/system-services +} + wpa_gui() { pkgdesc="Graphical User Interface for wpa_supplicant" depends="$pkgname" @@ -99,17 +95,10 @@ wpa_gui() { 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 -a6382d8e84b4829be33c46bf2f4c6f3232c9d924a4547a21dfe023bf5be8ee1c635920295f52be285359efaae95bcc1f12b512659cfd1653b871dd0bea7e5ace rebased-v2.6-0003-Extend-protection-of-GTK-IGTK-reinstallation-of-WNM-.patch -51ed806f0d5b3f588e26d4db4dcfc6be2cfb12002e26893a6cedd62c7cad0d0de75aed4a666223c4877fc1854b08dce6ddf6f6c4cfd752a5d8d58ad4a968b553 rebased-v2.6-0004-Prevent-installation-of-an-all-zero-TK.patch -8707a123cd78149dfee9f5bd791761ee1eca605ef96580167044c2339c896920cf0e030b184a5afa9e310f5755afb30bef8ebd4522fc52753f3fbd6acead2cdf rebased-v2.6-0005-Fix-PTK-rekeying-to-generate-a-new-ANonce.patch -37d050b2e4a3598484912667d8b2705fbe84c5c562267f900d42b0c7b606fb1fed09ddca8b80e2131768baa8f3690aab6ba7a232dee6ff1e66150fdb8816c927 rebased-v2.6-0006-TDLS-Reject-TPK-TK-reconfiguration.patch -111e655cfbb3a86e3792040e0ea375490d31c42c9d43cbe911290d54df5f4db437e4c8ad0e937c51729dcefeb0db0989b8ab55b9523398683abd08ebfec18076 rebased-v2.6-0007-WNM-Ignore-WNM-Sleep-Mode-Response-without-pending-r.patch -fc84edd8b30305cc42053c872554098f3f077292ec980ed6a442f37884087ff2f055738fd55977ed792bef1887dcc8c4626586465d78dd0258edb83dcd50a65a rebased-v2.6-0008-FT-Do-not-allow-multiple-Reassociation-Response-fram.patch +sha512sums="b37d254d32a4b7a1f95fcb18ec1be0ffb9d025e0b21c42c53acc4cd839be355df1b125b32cc073f9fe09b746807321e23dbe25dc2fc8a7cafa1e71add69f245b wpa_supplicant-2.8.tar.gz 11eed22f6e793f40c788d586c715deecae03c421d11761b7b4a376660bce812c54cc6f353c7d4d5da9c455aeffd778baefb9e76d380027a729574a756e54ddcc wpa_supplicant.initd 29103161ec2b9631fca9e8d9a97fafd60ffac3fe78cf613b834395ddcaf8be1e253c22e060d7d9f9b974b2d7ce794caa932a2125e29f6494b75bce475f7b30e1 wpa_supplicant.confd +dac56bc505a51167042ebe548f0e81a20a5578f753af9bb7ec3335a542d799c6e8739681ef7c8f7747a9bc954f8aa6f1a147250eacba17fd7fff80c4e53638ed dbus.patch 2be055dd1f7da5a3d8e79c2f2c0220ddd31df309452da18f290144d2112d6dbde0fc633bb2ad02c386a39d7785323acaf5f70e5969995a1e8303a094eb5fe232 eloop.patch 221660fa0350442a7d8371686b2118861052a4613fb352b7f80079e3750b82f4e48efc378b9d617455007d1106552b695fdca506a3c338283986641f3848b202 config 45d3e70c47d0f7d6dc6730853af8cbcb40ed0713ee7b1069698f5a635939f273f66e72d4221e064c3c71a92154cf07841c8c0d4fc14d796dbb6fe0d92776ee2b wpa_cli.sh" diff --git a/user/wpa_supplicant/dbus.patch b/user/wpa_supplicant/dbus.patch new file mode 100644 index 000000000..0f340c956 --- /dev/null +++ b/user/wpa_supplicant/dbus.patch @@ -0,0 +1,13 @@ +diff --git a/wpa_supplicant/dbus/dbus_new_helpers.c b/wpa_supplicant/dbus/dbus_new_helpers.c +index 45623f3..0fc3d08 100644 +--- a/wpa_supplicant/dbus/dbus_new_helpers.c ++++ b/wpa_supplicant/dbus/dbus_new_helpers.c +@@ -847,7 +847,7 @@ void wpa_dbus_mark_property_changed(struct wpas_dbus_priv *iface, + const struct wpa_dbus_property_desc *dsc; + int i = 0; + +- if (iface == NULL) ++ if (iface == NULL || path == NULL) + return; + + dbus_connection_get_object_path_data(iface->con, path, diff --git a/user/wpa_supplicant/libressl.patch b/user/wpa_supplicant/libressl.patch deleted file mode 100644 index 56146eab5..000000000 --- a/user/wpa_supplicant/libressl.patch +++ /dev/null @@ -1,49 +0,0 @@ ---- a/src/crypto/crypto_openssl.c.orig -+++ b/src/crypto/crypto_openssl.c -@@ -611,7 +611,7 @@ - - void * dh5_init(struct wpabuf **priv, struct wpabuf **publ) - { --#if OPENSSL_VERSION_NUMBER < 0x10100000L -+#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) - DH *dh; - struct wpabuf *pubkey = NULL, *privkey = NULL; - size_t publen, privlen; -@@ -712,7 +712,7 @@ - - void * dh5_init_fixed(const struct wpabuf *priv, const struct wpabuf *publ) - { --#if OPENSSL_VERSION_NUMBER < 0x10100000L -+#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) - DH *dh; - - dh = DH_new(); ---- a/src/crypto/tls_openssl.c.orig -+++ b/src/crypto/tls_openssl.c -@@ -919,7 +919,7 @@ - } - #endif /* OPENSSL_FIPS */ - #endif /* CONFIG_FIPS */ --#if OPENSSL_VERSION_NUMBER < 0x10100000L -+#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) - SSL_load_error_strings(); - SSL_library_init(); - #ifndef OPENSSL_NO_SHA256 -@@ -1043,7 +1043,7 @@ - - tls_openssl_ref_count--; - if (tls_openssl_ref_count == 0) { --#if OPENSSL_VERSION_NUMBER < 0x10100000L -+#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) - #ifndef OPENSSL_NO_ENGINE - ENGINE_cleanup(); - #endif /* OPENSSL_NO_ENGINE */ -@@ -2334,7 +2334,7 @@ - return 0; - - #ifdef PKCS12_FUNCS --#if OPENSSL_VERSION_NUMBER < 0x10002000L -+#if OPENSSL_VERSION_NUMBER < 0x10002000L || defined(LIBRESSL_VERSION_NUMBER) - /* - * Clear previously set extra chain certificates, if any, from PKCS#12 - * processing in tls_parse_pkcs12() to allow OpenSSL to build a new diff --git a/user/wpa_supplicant/rebased-v2.6-0001-hostapd-Avoid-key-reinstallation-in-FT-handshake.patch b/user/wpa_supplicant/rebased-v2.6-0001-hostapd-Avoid-key-reinstallation-in-FT-handshake.patch deleted file mode 100644 index 727684865..000000000 --- a/user/wpa_supplicant/rebased-v2.6-0001-hostapd-Avoid-key-reinstallation-in-FT-handshake.patch +++ /dev/null @@ -1,174 +0,0 @@ -From cf4cab804c7afd5c45505528a8d16e46163243a2 Mon Sep 17 00:00:00 2001 -From: Mathy Vanhoef <Mathy.Vanhoef@cs.kuleuven.be> -Date: Fri, 14 Jul 2017 15:15:35 +0200 -Subject: [PATCH 1/8] hostapd: Avoid key reinstallation in FT handshake - -Do not reinstall TK to the driver during Reassociation Response frame -processing if the first attempt of setting the TK succeeded. This avoids -issues related to clearing the TX/RX PN that could result in reusing -same PN values for transmitted frames (e.g., due to CCM nonce reuse and -also hitting replay protection on the receiver) and accepting replayed -frames on RX side. - -This issue was introduced by the commit -0e84c25434e6a1f283c7b4e62e483729085b78d2 ('FT: Fix PTK configuration in -authenticator') which allowed wpa_ft_install_ptk() to be called multiple -times with the same PTK. While the second configuration attempt is -needed with some drivers, it must be done only if the first attempt -failed. - -Signed-off-by: Mathy Vanhoef <Mathy.Vanhoef@cs.kuleuven.be> ---- - src/ap/ieee802_11.c | 16 +++++++++++++--- - src/ap/wpa_auth.c | 11 +++++++++++ - src/ap/wpa_auth.h | 3 ++- - src/ap/wpa_auth_ft.c | 10 ++++++++++ - src/ap/wpa_auth_i.h | 1 + - 5 files changed, 37 insertions(+), 4 deletions(-) - -diff --git a/src/ap/ieee802_11.c b/src/ap/ieee802_11.c -index 4e04169..333035f 100644 ---- a/src/ap/ieee802_11.c -+++ b/src/ap/ieee802_11.c -@@ -1841,6 +1841,7 @@ static int add_associated_sta(struct hostapd_data *hapd, - { - struct ieee80211_ht_capabilities ht_cap; - struct ieee80211_vht_capabilities vht_cap; -+ int set = 1; - - /* - * Remove the STA entry to ensure the STA PS state gets cleared and -@@ -1848,9 +1849,18 @@ static int add_associated_sta(struct hostapd_data *hapd, - * FT-over-the-DS, where a station re-associates back to the same AP but - * skips the authentication flow, or if working with a driver that - * does not support full AP client state. -+ * -+ * Skip this if the STA has already completed FT reassociation and the -+ * TK has been configured since the TX/RX PN must not be reset to 0 for -+ * the same key. - */ -- if (!sta->added_unassoc) -+ if (!sta->added_unassoc && -+ (!(sta->flags & WLAN_STA_AUTHORIZED) || -+ !wpa_auth_sta_ft_tk_already_set(sta->wpa_sm))) { - hostapd_drv_sta_remove(hapd, sta->addr); -+ wpa_auth_sm_event(sta->wpa_sm, WPA_DRV_STA_REMOVED); -+ set = 0; -+ } - - #ifdef CONFIG_IEEE80211N - if (sta->flags & WLAN_STA_HT) -@@ -1873,11 +1883,11 @@ static int add_associated_sta(struct hostapd_data *hapd, - sta->flags & WLAN_STA_VHT ? &vht_cap : NULL, - sta->flags | WLAN_STA_ASSOC, sta->qosinfo, - sta->vht_opmode, sta->p2p_ie ? 1 : 0, -- sta->added_unassoc)) { -+ set)) { - hostapd_logger(hapd, sta->addr, - HOSTAPD_MODULE_IEEE80211, HOSTAPD_LEVEL_NOTICE, - "Could not %s STA to kernel driver", -- sta->added_unassoc ? "set" : "add"); -+ set ? "set" : "add"); - - if (sta->added_unassoc) { - hostapd_drv_sta_remove(hapd, sta->addr); -diff --git a/src/ap/wpa_auth.c b/src/ap/wpa_auth.c -index 3587086..707971d 100644 ---- a/src/ap/wpa_auth.c -+++ b/src/ap/wpa_auth.c -@@ -1745,6 +1745,9 @@ int wpa_auth_sm_event(struct wpa_state_machine *sm, enum wpa_event event) - #else /* CONFIG_IEEE80211R */ - break; - #endif /* CONFIG_IEEE80211R */ -+ case WPA_DRV_STA_REMOVED: -+ sm->tk_already_set = FALSE; -+ return 0; - } - - #ifdef CONFIG_IEEE80211R -@@ -3250,6 +3253,14 @@ int wpa_auth_sta_wpa_version(struct wpa_state_machine *sm) - } - - -+int wpa_auth_sta_ft_tk_already_set(struct wpa_state_machine *sm) -+{ -+ if (!sm || !wpa_key_mgmt_ft(sm->wpa_key_mgmt)) -+ return 0; -+ return sm->tk_already_set; -+} -+ -+ - int wpa_auth_sta_clear_pmksa(struct wpa_state_machine *sm, - struct rsn_pmksa_cache_entry *entry) - { -diff --git a/src/ap/wpa_auth.h b/src/ap/wpa_auth.h -index 0de8d97..97461b0 100644 ---- a/src/ap/wpa_auth.h -+++ b/src/ap/wpa_auth.h -@@ -267,7 +267,7 @@ void wpa_receive(struct wpa_authenticator *wpa_auth, - u8 *data, size_t data_len); - enum wpa_event { - WPA_AUTH, WPA_ASSOC, WPA_DISASSOC, WPA_DEAUTH, WPA_REAUTH, -- WPA_REAUTH_EAPOL, WPA_ASSOC_FT -+ WPA_REAUTH_EAPOL, WPA_ASSOC_FT, WPA_DRV_STA_REMOVED - }; - void wpa_remove_ptk(struct wpa_state_machine *sm); - int wpa_auth_sm_event(struct wpa_state_machine *sm, enum wpa_event event); -@@ -280,6 +280,7 @@ int wpa_auth_pairwise_set(struct wpa_state_machine *sm); - int wpa_auth_get_pairwise(struct wpa_state_machine *sm); - int wpa_auth_sta_key_mgmt(struct wpa_state_machine *sm); - int wpa_auth_sta_wpa_version(struct wpa_state_machine *sm); -+int wpa_auth_sta_ft_tk_already_set(struct wpa_state_machine *sm); - int wpa_auth_sta_clear_pmksa(struct wpa_state_machine *sm, - struct rsn_pmksa_cache_entry *entry); - struct rsn_pmksa_cache_entry * -diff --git a/src/ap/wpa_auth_ft.c b/src/ap/wpa_auth_ft.c -index 42242a5..e63b99a 100644 ---- a/src/ap/wpa_auth_ft.c -+++ b/src/ap/wpa_auth_ft.c -@@ -780,6 +780,14 @@ void wpa_ft_install_ptk(struct wpa_state_machine *sm) - return; - } - -+ if (sm->tk_already_set) { -+ /* Must avoid TK reconfiguration to prevent clearing of TX/RX -+ * PN in the driver */ -+ wpa_printf(MSG_DEBUG, -+ "FT: Do not re-install same PTK to the driver"); -+ return; -+ } -+ - /* FIX: add STA entry to kernel/driver here? The set_key will fail - * most likely without this.. At the moment, STA entry is added only - * after association has been completed. This function will be called -@@ -792,6 +800,7 @@ void wpa_ft_install_ptk(struct wpa_state_machine *sm) - - /* FIX: MLME-SetProtection.Request(TA, Tx_Rx) */ - sm->pairwise_set = TRUE; -+ sm->tk_already_set = TRUE; - } - - -@@ -898,6 +907,7 @@ static int wpa_ft_process_auth_req(struct wpa_state_machine *sm, - - sm->pairwise = pairwise; - sm->PTK_valid = TRUE; -+ sm->tk_already_set = FALSE; - wpa_ft_install_ptk(sm); - - buflen = 2 + sizeof(struct rsn_mdie) + 2 + sizeof(struct rsn_ftie) + -diff --git a/src/ap/wpa_auth_i.h b/src/ap/wpa_auth_i.h -index 72b7eb3..7fd8f05 100644 ---- a/src/ap/wpa_auth_i.h -+++ b/src/ap/wpa_auth_i.h -@@ -65,6 +65,7 @@ struct wpa_state_machine { - struct wpa_ptk PTK; - Boolean PTK_valid; - Boolean pairwise_set; -+ Boolean tk_already_set; - int keycount; - Boolean Pair; - struct wpa_key_replay_counter { --- -2.7.4 - diff --git a/user/wpa_supplicant/rebased-v2.6-0002-Prevent-reinstallation-of-an-already-in-use-group-ke.patch b/user/wpa_supplicant/rebased-v2.6-0002-Prevent-reinstallation-of-an-already-in-use-group-ke.patch deleted file mode 100644 index 1802d664a..000000000 --- a/user/wpa_supplicant/rebased-v2.6-0002-Prevent-reinstallation-of-an-already-in-use-group-ke.patch +++ /dev/null @@ -1,250 +0,0 @@ -From 927f891007c402fefd1ff384645b3f07597c3ede Mon Sep 17 00:00:00 2001 -From: Mathy Vanhoef <Mathy.Vanhoef@cs.kuleuven.be> -Date: Wed, 12 Jul 2017 16:03:24 +0200 -Subject: [PATCH 2/8] Prevent reinstallation of an already in-use group key - -Track the current GTK and IGTK that is in use and when receiving a -(possibly retransmitted) Group Message 1 or WNM-Sleep Mode Response, do -not install the given key if it is already in use. This prevents an -attacker from trying to trick the client into resetting or lowering the -sequence counter associated to the group key. - -Signed-off-by: Mathy Vanhoef <Mathy.Vanhoef@cs.kuleuven.be> ---- - src/common/wpa_common.h | 11 +++++ - src/rsn_supp/wpa.c | 116 ++++++++++++++++++++++++++++++------------------ - src/rsn_supp/wpa_i.h | 4 ++ - 3 files changed, 87 insertions(+), 44 deletions(-) - -diff --git a/src/common/wpa_common.h b/src/common/wpa_common.h -index af1d0f0..d200285 100644 ---- a/src/common/wpa_common.h -+++ b/src/common/wpa_common.h -@@ -217,6 +217,17 @@ struct wpa_ptk { - size_t tk_len; - }; - -+struct wpa_gtk { -+ u8 gtk[WPA_GTK_MAX_LEN]; -+ size_t gtk_len; -+}; -+ -+#ifdef CONFIG_IEEE80211W -+struct wpa_igtk { -+ u8 igtk[WPA_IGTK_MAX_LEN]; -+ size_t igtk_len; -+}; -+#endif /* CONFIG_IEEE80211W */ - - /* WPA IE version 1 - * 00-50-f2:1 (OUI:OUI type) -diff --git a/src/rsn_supp/wpa.c b/src/rsn_supp/wpa.c -index 3c47879..95bd7be 100644 ---- a/src/rsn_supp/wpa.c -+++ b/src/rsn_supp/wpa.c -@@ -714,6 +714,15 @@ static int wpa_supplicant_install_gtk(struct wpa_sm *sm, - const u8 *_gtk = gd->gtk; - u8 gtk_buf[32]; - -+ /* Detect possible key reinstallation */ -+ if (sm->gtk.gtk_len == (size_t) gd->gtk_len && -+ os_memcmp(sm->gtk.gtk, gd->gtk, sm->gtk.gtk_len) == 0) { -+ wpa_dbg(sm->ctx->msg_ctx, MSG_DEBUG, -+ "WPA: Not reinstalling already in-use GTK to the driver (keyidx=%d tx=%d len=%d)", -+ gd->keyidx, gd->tx, gd->gtk_len); -+ return 0; -+ } -+ - wpa_hexdump_key(MSG_DEBUG, "WPA: Group Key", gd->gtk, gd->gtk_len); - wpa_dbg(sm->ctx->msg_ctx, MSG_DEBUG, - "WPA: Installing GTK to the driver (keyidx=%d tx=%d len=%d)", -@@ -748,6 +757,9 @@ static int wpa_supplicant_install_gtk(struct wpa_sm *sm, - } - os_memset(gtk_buf, 0, sizeof(gtk_buf)); - -+ sm->gtk.gtk_len = gd->gtk_len; -+ os_memcpy(sm->gtk.gtk, gd->gtk, sm->gtk.gtk_len); -+ - return 0; - } - -@@ -854,6 +866,48 @@ static int wpa_supplicant_pairwise_gtk(struct wpa_sm *sm, - } - - -+#ifdef CONFIG_IEEE80211W -+static int wpa_supplicant_install_igtk(struct wpa_sm *sm, -+ const struct wpa_igtk_kde *igtk) -+{ -+ size_t len = wpa_cipher_key_len(sm->mgmt_group_cipher); -+ u16 keyidx = WPA_GET_LE16(igtk->keyid); -+ -+ /* Detect possible key reinstallation */ -+ if (sm->igtk.igtk_len == len && -+ os_memcmp(sm->igtk.igtk, igtk->igtk, sm->igtk.igtk_len) == 0) { -+ wpa_dbg(sm->ctx->msg_ctx, MSG_DEBUG, -+ "WPA: Not reinstalling already in-use IGTK to the driver (keyidx=%d)", -+ keyidx); -+ return 0; -+ } -+ -+ wpa_dbg(sm->ctx->msg_ctx, MSG_DEBUG, -+ "WPA: IGTK keyid %d pn %02x%02x%02x%02x%02x%02x", -+ keyidx, MAC2STR(igtk->pn)); -+ wpa_hexdump_key(MSG_DEBUG, "WPA: IGTK", igtk->igtk, len); -+ if (keyidx > 4095) { -+ wpa_msg(sm->ctx->msg_ctx, MSG_WARNING, -+ "WPA: Invalid IGTK KeyID %d", keyidx); -+ return -1; -+ } -+ if (wpa_sm_set_key(sm, wpa_cipher_to_alg(sm->mgmt_group_cipher), -+ broadcast_ether_addr, -+ keyidx, 0, igtk->pn, sizeof(igtk->pn), -+ igtk->igtk, len) < 0) { -+ wpa_msg(sm->ctx->msg_ctx, MSG_WARNING, -+ "WPA: Failed to configure IGTK to the driver"); -+ return -1; -+ } -+ -+ sm->igtk.igtk_len = len; -+ os_memcpy(sm->igtk.igtk, igtk->igtk, sm->igtk.igtk_len); -+ -+ return 0; -+} -+#endif /* CONFIG_IEEE80211W */ -+ -+ - static int ieee80211w_set_keys(struct wpa_sm *sm, - struct wpa_eapol_ie_parse *ie) - { -@@ -864,30 +918,14 @@ static int ieee80211w_set_keys(struct wpa_sm *sm, - if (ie->igtk) { - size_t len; - const struct wpa_igtk_kde *igtk; -- u16 keyidx; -+ - len = wpa_cipher_key_len(sm->mgmt_group_cipher); - if (ie->igtk_len != WPA_IGTK_KDE_PREFIX_LEN + len) - return -1; -+ - igtk = (const struct wpa_igtk_kde *) ie->igtk; -- keyidx = WPA_GET_LE16(igtk->keyid); -- wpa_dbg(sm->ctx->msg_ctx, MSG_DEBUG, "WPA: IGTK keyid %d " -- "pn %02x%02x%02x%02x%02x%02x", -- keyidx, MAC2STR(igtk->pn)); -- wpa_hexdump_key(MSG_DEBUG, "WPA: IGTK", -- igtk->igtk, len); -- if (keyidx > 4095) { -- wpa_msg(sm->ctx->msg_ctx, MSG_WARNING, -- "WPA: Invalid IGTK KeyID %d", keyidx); -- return -1; -- } -- if (wpa_sm_set_key(sm, wpa_cipher_to_alg(sm->mgmt_group_cipher), -- broadcast_ether_addr, -- keyidx, 0, igtk->pn, sizeof(igtk->pn), -- igtk->igtk, len) < 0) { -- wpa_msg(sm->ctx->msg_ctx, MSG_WARNING, -- "WPA: Failed to configure IGTK to the driver"); -+ if (wpa_supplicant_install_igtk(sm, igtk) < 0) - return -1; -- } - } - - return 0; -@@ -2307,7 +2345,7 @@ void wpa_sm_deinit(struct wpa_sm *sm) - */ - void wpa_sm_notify_assoc(struct wpa_sm *sm, const u8 *bssid) - { -- int clear_ptk = 1; -+ int clear_keys = 1; - - if (sm == NULL) - return; -@@ -2333,11 +2371,11 @@ void wpa_sm_notify_assoc(struct wpa_sm *sm, const u8 *bssid) - /* Prepare for the next transition */ - wpa_ft_prepare_auth_request(sm, NULL); - -- clear_ptk = 0; -+ clear_keys = 0; - } - #endif /* CONFIG_IEEE80211R */ - -- if (clear_ptk) { -+ if (clear_keys) { - /* - * IEEE 802.11, 8.4.10: Delete PTK SA on (re)association if - * this is not part of a Fast BSS Transition. -@@ -2347,6 +2385,10 @@ void wpa_sm_notify_assoc(struct wpa_sm *sm, const u8 *bssid) - os_memset(&sm->ptk, 0, sizeof(sm->ptk)); - sm->tptk_set = 0; - os_memset(&sm->tptk, 0, sizeof(sm->tptk)); -+ os_memset(&sm->gtk, 0, sizeof(sm->gtk)); -+#ifdef CONFIG_IEEE80211W -+ os_memset(&sm->igtk, 0, sizeof(sm->igtk)); -+#endif /* CONFIG_IEEE80211W */ - } - - #ifdef CONFIG_TDLS -@@ -2877,6 +2919,10 @@ void wpa_sm_drop_sa(struct wpa_sm *sm) - os_memset(sm->pmk, 0, sizeof(sm->pmk)); - os_memset(&sm->ptk, 0, sizeof(sm->ptk)); - os_memset(&sm->tptk, 0, sizeof(sm->tptk)); -+ os_memset(&sm->gtk, 0, sizeof(sm->gtk)); -+#ifdef CONFIG_IEEE80211W -+ os_memset(&sm->igtk, 0, sizeof(sm->igtk)); -+#endif /* CONFIG_IEEE80211W */ - #ifdef CONFIG_IEEE80211R - os_memset(sm->xxkey, 0, sizeof(sm->xxkey)); - os_memset(sm->pmk_r0, 0, sizeof(sm->pmk_r0)); -@@ -2949,29 +2995,11 @@ int wpa_wnmsleep_install_key(struct wpa_sm *sm, u8 subelem_id, u8 *buf) - os_memset(&gd, 0, sizeof(gd)); - #ifdef CONFIG_IEEE80211W - } else if (subelem_id == WNM_SLEEP_SUBELEM_IGTK) { -- struct wpa_igtk_kde igd; -- u16 keyidx; -- -- os_memset(&igd, 0, sizeof(igd)); -- keylen = wpa_cipher_key_len(sm->mgmt_group_cipher); -- os_memcpy(igd.keyid, buf + 2, 2); -- os_memcpy(igd.pn, buf + 4, 6); -- -- keyidx = WPA_GET_LE16(igd.keyid); -- os_memcpy(igd.igtk, buf + 10, keylen); -- -- wpa_hexdump_key(MSG_DEBUG, "Install IGTK (WNM SLEEP)", -- igd.igtk, keylen); -- if (wpa_sm_set_key(sm, wpa_cipher_to_alg(sm->mgmt_group_cipher), -- broadcast_ether_addr, -- keyidx, 0, igd.pn, sizeof(igd.pn), -- igd.igtk, keylen) < 0) { -- wpa_printf(MSG_DEBUG, "Failed to install the IGTK in " -- "WNM mode"); -- os_memset(&igd, 0, sizeof(igd)); -+ const struct wpa_igtk_kde *igtk; -+ -+ igtk = (const struct wpa_igtk_kde *) (buf + 2); -+ if (wpa_supplicant_install_igtk(sm, igtk) < 0) - return -1; -- } -- os_memset(&igd, 0, sizeof(igd)); - #endif /* CONFIG_IEEE80211W */ - } else { - wpa_printf(MSG_DEBUG, "Unknown element id"); -diff --git a/src/rsn_supp/wpa_i.h b/src/rsn_supp/wpa_i.h -index f653ba6..afc9e37 100644 ---- a/src/rsn_supp/wpa_i.h -+++ b/src/rsn_supp/wpa_i.h -@@ -31,6 +31,10 @@ struct wpa_sm { - u8 rx_replay_counter[WPA_REPLAY_COUNTER_LEN]; - int rx_replay_counter_set; - u8 request_counter[WPA_REPLAY_COUNTER_LEN]; -+ struct wpa_gtk gtk; -+#ifdef CONFIG_IEEE80211W -+ struct wpa_igtk igtk; -+#endif /* CONFIG_IEEE80211W */ - - struct eapol_sm *eapol; /* EAPOL state machine from upper level code */ - --- -2.7.4 - diff --git a/user/wpa_supplicant/rebased-v2.6-0003-Extend-protection-of-GTK-IGTK-reinstallation-of-WNM-.patch b/user/wpa_supplicant/rebased-v2.6-0003-Extend-protection-of-GTK-IGTK-reinstallation-of-WNM-.patch deleted file mode 100644 index e2937b851..000000000 --- a/user/wpa_supplicant/rebased-v2.6-0003-Extend-protection-of-GTK-IGTK-reinstallation-of-WNM-.patch +++ /dev/null @@ -1,184 +0,0 @@ -From 8280294e74846ea342389a0cd17215050fa5afe8 Mon Sep 17 00:00:00 2001 -From: Jouni Malinen <j@w1.fi> -Date: Sun, 1 Oct 2017 12:12:24 +0300 -Subject: [PATCH 3/8] Extend protection of GTK/IGTK reinstallation of WNM-Sleep - Mode cases - -This extends the protection to track last configured GTK/IGTK value -separately from EAPOL-Key frames and WNM-Sleep Mode frames to cover a -corner case where these two different mechanisms may get used when the -GTK/IGTK has changed and tracking a single value is not sufficient to -detect a possible key reconfiguration. - -Signed-off-by: Jouni Malinen <j@w1.fi> ---- - src/rsn_supp/wpa.c | 53 +++++++++++++++++++++++++++++++++++++--------------- - src/rsn_supp/wpa_i.h | 2 ++ - 2 files changed, 40 insertions(+), 15 deletions(-) - -diff --git a/src/rsn_supp/wpa.c b/src/rsn_supp/wpa.c -index 95bd7be..7a2c68d 100644 ---- a/src/rsn_supp/wpa.c -+++ b/src/rsn_supp/wpa.c -@@ -709,14 +709,17 @@ struct wpa_gtk_data { - - static int wpa_supplicant_install_gtk(struct wpa_sm *sm, - const struct wpa_gtk_data *gd, -- const u8 *key_rsc) -+ const u8 *key_rsc, int wnm_sleep) - { - const u8 *_gtk = gd->gtk; - u8 gtk_buf[32]; - - /* Detect possible key reinstallation */ -- if (sm->gtk.gtk_len == (size_t) gd->gtk_len && -- os_memcmp(sm->gtk.gtk, gd->gtk, sm->gtk.gtk_len) == 0) { -+ if ((sm->gtk.gtk_len == (size_t) gd->gtk_len && -+ os_memcmp(sm->gtk.gtk, gd->gtk, sm->gtk.gtk_len) == 0) || -+ (sm->gtk_wnm_sleep.gtk_len == (size_t) gd->gtk_len && -+ os_memcmp(sm->gtk_wnm_sleep.gtk, gd->gtk, -+ sm->gtk_wnm_sleep.gtk_len) == 0)) { - wpa_dbg(sm->ctx->msg_ctx, MSG_DEBUG, - "WPA: Not reinstalling already in-use GTK to the driver (keyidx=%d tx=%d len=%d)", - gd->keyidx, gd->tx, gd->gtk_len); -@@ -757,8 +760,14 @@ static int wpa_supplicant_install_gtk(struct wpa_sm *sm, - } - os_memset(gtk_buf, 0, sizeof(gtk_buf)); - -- sm->gtk.gtk_len = gd->gtk_len; -- os_memcpy(sm->gtk.gtk, gd->gtk, sm->gtk.gtk_len); -+ if (wnm_sleep) { -+ sm->gtk_wnm_sleep.gtk_len = gd->gtk_len; -+ os_memcpy(sm->gtk_wnm_sleep.gtk, gd->gtk, -+ sm->gtk_wnm_sleep.gtk_len); -+ } else { -+ sm->gtk.gtk_len = gd->gtk_len; -+ os_memcpy(sm->gtk.gtk, gd->gtk, sm->gtk.gtk_len); -+ } - - return 0; - } -@@ -852,7 +861,7 @@ static int wpa_supplicant_pairwise_gtk(struct wpa_sm *sm, - (wpa_supplicant_check_group_cipher(sm, sm->group_cipher, - gtk_len, gtk_len, - &gd.key_rsc_len, &gd.alg) || -- wpa_supplicant_install_gtk(sm, &gd, key_rsc))) { -+ wpa_supplicant_install_gtk(sm, &gd, key_rsc, 0))) { - wpa_dbg(sm->ctx->msg_ctx, MSG_DEBUG, - "RSN: Failed to install GTK"); - os_memset(&gd, 0, sizeof(gd)); -@@ -868,14 +877,18 @@ static int wpa_supplicant_pairwise_gtk(struct wpa_sm *sm, - - #ifdef CONFIG_IEEE80211W - static int wpa_supplicant_install_igtk(struct wpa_sm *sm, -- const struct wpa_igtk_kde *igtk) -+ const struct wpa_igtk_kde *igtk, -+ int wnm_sleep) - { - size_t len = wpa_cipher_key_len(sm->mgmt_group_cipher); - u16 keyidx = WPA_GET_LE16(igtk->keyid); - - /* Detect possible key reinstallation */ -- if (sm->igtk.igtk_len == len && -- os_memcmp(sm->igtk.igtk, igtk->igtk, sm->igtk.igtk_len) == 0) { -+ if ((sm->igtk.igtk_len == len && -+ os_memcmp(sm->igtk.igtk, igtk->igtk, sm->igtk.igtk_len) == 0) || -+ (sm->igtk_wnm_sleep.igtk_len == len && -+ os_memcmp(sm->igtk_wnm_sleep.igtk, igtk->igtk, -+ sm->igtk_wnm_sleep.igtk_len) == 0)) { - wpa_dbg(sm->ctx->msg_ctx, MSG_DEBUG, - "WPA: Not reinstalling already in-use IGTK to the driver (keyidx=%d)", - keyidx); -@@ -900,8 +913,14 @@ static int wpa_supplicant_install_igtk(struct wpa_sm *sm, - return -1; - } - -- sm->igtk.igtk_len = len; -- os_memcpy(sm->igtk.igtk, igtk->igtk, sm->igtk.igtk_len); -+ if (wnm_sleep) { -+ sm->igtk_wnm_sleep.igtk_len = len; -+ os_memcpy(sm->igtk_wnm_sleep.igtk, igtk->igtk, -+ sm->igtk_wnm_sleep.igtk_len); -+ } else { -+ sm->igtk.igtk_len = len; -+ os_memcpy(sm->igtk.igtk, igtk->igtk, sm->igtk.igtk_len); -+ } - - return 0; - } -@@ -924,7 +943,7 @@ static int ieee80211w_set_keys(struct wpa_sm *sm, - return -1; - - igtk = (const struct wpa_igtk_kde *) ie->igtk; -- if (wpa_supplicant_install_igtk(sm, igtk) < 0) -+ if (wpa_supplicant_install_igtk(sm, igtk, 0) < 0) - return -1; - } - -@@ -1574,7 +1593,7 @@ static void wpa_supplicant_process_1_of_2(struct wpa_sm *sm, - if (wpa_supplicant_rsc_relaxation(sm, key->key_rsc)) - key_rsc = null_rsc; - -- if (wpa_supplicant_install_gtk(sm, &gd, key_rsc) || -+ if (wpa_supplicant_install_gtk(sm, &gd, key_rsc, 0) || - wpa_supplicant_send_2_of_2(sm, key, ver, key_info) < 0) - goto failed; - os_memset(&gd, 0, sizeof(gd)); -@@ -2386,8 +2405,10 @@ void wpa_sm_notify_assoc(struct wpa_sm *sm, const u8 *bssid) - sm->tptk_set = 0; - os_memset(&sm->tptk, 0, sizeof(sm->tptk)); - os_memset(&sm->gtk, 0, sizeof(sm->gtk)); -+ os_memset(&sm->gtk_wnm_sleep, 0, sizeof(sm->gtk_wnm_sleep)); - #ifdef CONFIG_IEEE80211W - os_memset(&sm->igtk, 0, sizeof(sm->igtk)); -+ os_memset(&sm->igtk_wnm_sleep, 0, sizeof(sm->igtk_wnm_sleep)); - #endif /* CONFIG_IEEE80211W */ - } - -@@ -2920,8 +2941,10 @@ void wpa_sm_drop_sa(struct wpa_sm *sm) - os_memset(&sm->ptk, 0, sizeof(sm->ptk)); - os_memset(&sm->tptk, 0, sizeof(sm->tptk)); - os_memset(&sm->gtk, 0, sizeof(sm->gtk)); -+ os_memset(&sm->gtk_wnm_sleep, 0, sizeof(sm->gtk_wnm_sleep)); - #ifdef CONFIG_IEEE80211W - os_memset(&sm->igtk, 0, sizeof(sm->igtk)); -+ os_memset(&sm->igtk_wnm_sleep, 0, sizeof(sm->igtk_wnm_sleep)); - #endif /* CONFIG_IEEE80211W */ - #ifdef CONFIG_IEEE80211R - os_memset(sm->xxkey, 0, sizeof(sm->xxkey)); -@@ -2986,7 +3009,7 @@ int wpa_wnmsleep_install_key(struct wpa_sm *sm, u8 subelem_id, u8 *buf) - - wpa_hexdump_key(MSG_DEBUG, "Install GTK (WNM SLEEP)", - gd.gtk, gd.gtk_len); -- if (wpa_supplicant_install_gtk(sm, &gd, key_rsc)) { -+ if (wpa_supplicant_install_gtk(sm, &gd, key_rsc, 1)) { - os_memset(&gd, 0, sizeof(gd)); - wpa_printf(MSG_DEBUG, "Failed to install the GTK in " - "WNM mode"); -@@ -2998,7 +3021,7 @@ int wpa_wnmsleep_install_key(struct wpa_sm *sm, u8 subelem_id, u8 *buf) - const struct wpa_igtk_kde *igtk; - - igtk = (const struct wpa_igtk_kde *) (buf + 2); -- if (wpa_supplicant_install_igtk(sm, igtk) < 0) -+ if (wpa_supplicant_install_igtk(sm, igtk, 1) < 0) - return -1; - #endif /* CONFIG_IEEE80211W */ - } else { -diff --git a/src/rsn_supp/wpa_i.h b/src/rsn_supp/wpa_i.h -index afc9e37..9a54631 100644 ---- a/src/rsn_supp/wpa_i.h -+++ b/src/rsn_supp/wpa_i.h -@@ -32,8 +32,10 @@ struct wpa_sm { - int rx_replay_counter_set; - u8 request_counter[WPA_REPLAY_COUNTER_LEN]; - struct wpa_gtk gtk; -+ struct wpa_gtk gtk_wnm_sleep; - #ifdef CONFIG_IEEE80211W - struct wpa_igtk igtk; -+ struct wpa_igtk igtk_wnm_sleep; - #endif /* CONFIG_IEEE80211W */ - - struct eapol_sm *eapol; /* EAPOL state machine from upper level code */ --- -2.7.4 - diff --git a/user/wpa_supplicant/rebased-v2.6-0004-Prevent-installation-of-an-all-zero-TK.patch b/user/wpa_supplicant/rebased-v2.6-0004-Prevent-installation-of-an-all-zero-TK.patch deleted file mode 100644 index 22ee21794..000000000 --- a/user/wpa_supplicant/rebased-v2.6-0004-Prevent-installation-of-an-all-zero-TK.patch +++ /dev/null @@ -1,79 +0,0 @@ -From 8f82bc94e8697a9d47fa8774dfdaaede1084912c Mon Sep 17 00:00:00 2001 -From: Mathy Vanhoef <Mathy.Vanhoef@cs.kuleuven.be> -Date: Fri, 29 Sep 2017 04:22:51 +0200 -Subject: [PATCH 4/8] Prevent installation of an all-zero TK - -Properly track whether a PTK has already been installed to the driver -and the TK part cleared from memory. This prevents an attacker from -trying to trick the client into installing an all-zero TK. - -This fixes the earlier fix in commit -ad00d64e7d8827b3cebd665a0ceb08adabf15e1e ('Fix TK configuration to the -driver in EAPOL-Key 3/4 retry case') which did not take into account -possibility of an extra message 1/4 showing up between retries of -message 3/4. - -Signed-off-by: Mathy Vanhoef <Mathy.Vanhoef@cs.kuleuven.be> ---- - src/common/wpa_common.h | 1 + - src/rsn_supp/wpa.c | 5 ++--- - src/rsn_supp/wpa_i.h | 1 - - 3 files changed, 3 insertions(+), 4 deletions(-) - -diff --git a/src/common/wpa_common.h b/src/common/wpa_common.h -index d200285..1021ccb 100644 ---- a/src/common/wpa_common.h -+++ b/src/common/wpa_common.h -@@ -215,6 +215,7 @@ struct wpa_ptk { - size_t kck_len; - size_t kek_len; - size_t tk_len; -+ int installed; /* 1 if key has already been installed to driver */ - }; - - struct wpa_gtk { -diff --git a/src/rsn_supp/wpa.c b/src/rsn_supp/wpa.c -index 7a2c68d..0550a41 100644 ---- a/src/rsn_supp/wpa.c -+++ b/src/rsn_supp/wpa.c -@@ -510,7 +510,6 @@ static void wpa_supplicant_process_1_of_4(struct wpa_sm *sm, - os_memset(buf, 0, sizeof(buf)); - } - sm->tptk_set = 1; -- sm->tk_to_set = 1; - - kde = sm->assoc_wpa_ie; - kde_len = sm->assoc_wpa_ie_len; -@@ -615,7 +614,7 @@ static int wpa_supplicant_install_ptk(struct wpa_sm *sm, - enum wpa_alg alg; - const u8 *key_rsc; - -- if (!sm->tk_to_set) { -+ if (sm->ptk.installed) { - wpa_dbg(sm->ctx->msg_ctx, MSG_DEBUG, - "WPA: Do not re-install same PTK to the driver"); - return 0; -@@ -659,7 +658,7 @@ static int wpa_supplicant_install_ptk(struct wpa_sm *sm, - - /* TK is not needed anymore in supplicant */ - os_memset(sm->ptk.tk, 0, WPA_TK_MAX_LEN); -- sm->tk_to_set = 0; -+ sm->ptk.installed = 1; - - if (sm->wpa_ptk_rekey) { - eloop_cancel_timeout(wpa_sm_rekey_ptk, sm, NULL); -diff --git a/src/rsn_supp/wpa_i.h b/src/rsn_supp/wpa_i.h -index 9a54631..41f371f 100644 ---- a/src/rsn_supp/wpa_i.h -+++ b/src/rsn_supp/wpa_i.h -@@ -24,7 +24,6 @@ struct wpa_sm { - struct wpa_ptk ptk, tptk; - int ptk_set, tptk_set; - unsigned int msg_3_of_4_ok:1; -- unsigned int tk_to_set:1; - u8 snonce[WPA_NONCE_LEN]; - u8 anonce[WPA_NONCE_LEN]; /* ANonce from the last 1/4 msg */ - int renew_snonce; --- -2.7.4 - diff --git a/user/wpa_supplicant/rebased-v2.6-0005-Fix-PTK-rekeying-to-generate-a-new-ANonce.patch b/user/wpa_supplicant/rebased-v2.6-0005-Fix-PTK-rekeying-to-generate-a-new-ANonce.patch deleted file mode 100644 index c19c4c710..000000000 --- a/user/wpa_supplicant/rebased-v2.6-0005-Fix-PTK-rekeying-to-generate-a-new-ANonce.patch +++ /dev/null @@ -1,64 +0,0 @@ -From 12fac09b437a1dc8a0f253e265934a8aaf4d2f8b Mon Sep 17 00:00:00 2001 -From: Jouni Malinen <j@w1.fi> -Date: Sun, 1 Oct 2017 12:32:57 +0300 -Subject: [PATCH 5/8] Fix PTK rekeying to generate a new ANonce - -The Authenticator state machine path for PTK rekeying ended up bypassing -the AUTHENTICATION2 state where a new ANonce is generated when going -directly to the PTKSTART state since there is no need to try to -determine the PMK again in such a case. This is far from ideal since the -new PTK would depend on a new nonce only from the supplicant. - -Fix this by generating a new ANonce when moving to the PTKSTART state -for the purpose of starting new 4-way handshake to rekey PTK. - -Signed-off-by: Jouni Malinen <j@w1.fi> ---- - src/ap/wpa_auth.c | 24 +++++++++++++++++++++--- - 1 file changed, 21 insertions(+), 3 deletions(-) - -diff --git a/src/ap/wpa_auth.c b/src/ap/wpa_auth.c -index 707971d..bf10cc1 100644 ---- a/src/ap/wpa_auth.c -+++ b/src/ap/wpa_auth.c -@@ -1901,6 +1901,21 @@ SM_STATE(WPA_PTK, AUTHENTICATION2) - } - - -+static int wpa_auth_sm_ptk_update(struct wpa_state_machine *sm) -+{ -+ if (random_get_bytes(sm->ANonce, WPA_NONCE_LEN)) { -+ wpa_printf(MSG_ERROR, -+ "WPA: Failed to get random data for ANonce"); -+ sm->Disconnect = TRUE; -+ return -1; -+ } -+ wpa_hexdump(MSG_DEBUG, "WPA: Assign new ANonce", sm->ANonce, -+ WPA_NONCE_LEN); -+ sm->TimeoutCtr = 0; -+ return 0; -+} -+ -+ - SM_STATE(WPA_PTK, INITPMK) - { - u8 msk[2 * PMK_LEN]; -@@ -2458,9 +2473,12 @@ SM_STEP(WPA_PTK) - SM_ENTER(WPA_PTK, AUTHENTICATION); - else if (sm->ReAuthenticationRequest) - SM_ENTER(WPA_PTK, AUTHENTICATION2); -- else if (sm->PTKRequest) -- SM_ENTER(WPA_PTK, PTKSTART); -- else switch (sm->wpa_ptk_state) { -+ else if (sm->PTKRequest) { -+ if (wpa_auth_sm_ptk_update(sm) < 0) -+ SM_ENTER(WPA_PTK, DISCONNECTED); -+ else -+ SM_ENTER(WPA_PTK, PTKSTART); -+ } else switch (sm->wpa_ptk_state) { - case WPA_PTK_INITIALIZE: - break; - case WPA_PTK_DISCONNECT: --- -2.7.4 - diff --git a/user/wpa_supplicant/rebased-v2.6-0006-TDLS-Reject-TPK-TK-reconfiguration.patch b/user/wpa_supplicant/rebased-v2.6-0006-TDLS-Reject-TPK-TK-reconfiguration.patch deleted file mode 100644 index e1bd5a572..000000000 --- a/user/wpa_supplicant/rebased-v2.6-0006-TDLS-Reject-TPK-TK-reconfiguration.patch +++ /dev/null @@ -1,132 +0,0 @@ -From 6c4bed4f47d1960ec04981a9d50e5076aea5223d Mon Sep 17 00:00:00 2001 -From: Jouni Malinen <j@w1.fi> -Date: Fri, 22 Sep 2017 11:03:15 +0300 -Subject: [PATCH 6/8] TDLS: Reject TPK-TK reconfiguration - -Do not try to reconfigure the same TPK-TK to the driver after it has -been successfully configured. This is an explicit check to avoid issues -related to resetting the TX/RX packet number. There was already a check -for this for TPK M2 (retries of that message are ignored completely), so -that behavior does not get modified. - -For TPK M3, the TPK-TK could have been reconfigured, but that was -followed by immediate teardown of the link due to an issue in updating -the STA entry. Furthermore, for TDLS with any real security (i.e., -ignoring open/WEP), the TPK message exchange is protected on the AP path -and simple replay attacks are not feasible. - -As an additional corner case, make sure the local nonce gets updated if -the peer uses a very unlikely "random nonce" of all zeros. - -Signed-off-by: Jouni Malinen <j@w1.fi> ---- - src/rsn_supp/tdls.c | 38 ++++++++++++++++++++++++++++++++++++-- - 1 file changed, 36 insertions(+), 2 deletions(-) - -diff --git a/src/rsn_supp/tdls.c b/src/rsn_supp/tdls.c -index e424168..9eb9738 100644 ---- a/src/rsn_supp/tdls.c -+++ b/src/rsn_supp/tdls.c -@@ -112,6 +112,7 @@ struct wpa_tdls_peer { - u8 tk[16]; /* TPK-TK; assuming only CCMP will be used */ - } tpk; - int tpk_set; -+ int tk_set; /* TPK-TK configured to the driver */ - int tpk_success; - int tpk_in_progress; - -@@ -192,6 +193,20 @@ static int wpa_tdls_set_key(struct wpa_sm *sm, struct wpa_tdls_peer *peer) - u8 rsc[6]; - enum wpa_alg alg; - -+ if (peer->tk_set) { -+ /* -+ * This same TPK-TK has already been configured to the driver -+ * and this new configuration attempt (likely due to an -+ * unexpected retransmitted frame) would result in clearing -+ * the TX/RX sequence number which can break security, so must -+ * not allow that to happen. -+ */ -+ wpa_printf(MSG_INFO, "TDLS: TPK-TK for the peer " MACSTR -+ " has already been configured to the driver - do not reconfigure", -+ MAC2STR(peer->addr)); -+ return -1; -+ } -+ - os_memset(rsc, 0, 6); - - switch (peer->cipher) { -@@ -209,12 +224,15 @@ static int wpa_tdls_set_key(struct wpa_sm *sm, struct wpa_tdls_peer *peer) - return -1; - } - -+ wpa_printf(MSG_DEBUG, "TDLS: Configure pairwise key for peer " MACSTR, -+ MAC2STR(peer->addr)); - if (wpa_sm_set_key(sm, alg, peer->addr, -1, 1, - rsc, sizeof(rsc), peer->tpk.tk, key_len) < 0) { - wpa_printf(MSG_WARNING, "TDLS: Failed to set TPK to the " - "driver"); - return -1; - } -+ peer->tk_set = 1; - return 0; - } - -@@ -696,7 +714,7 @@ static void wpa_tdls_peer_clear(struct wpa_sm *sm, struct wpa_tdls_peer *peer) - peer->cipher = 0; - peer->qos_info = 0; - peer->wmm_capable = 0; -- peer->tpk_set = peer->tpk_success = 0; -+ peer->tk_set = peer->tpk_set = peer->tpk_success = 0; - peer->chan_switch_enabled = 0; - os_memset(&peer->tpk, 0, sizeof(peer->tpk)); - os_memset(peer->inonce, 0, WPA_NONCE_LEN); -@@ -1159,6 +1177,7 @@ skip_rsnie: - wpa_tdls_peer_free(sm, peer); - return -1; - } -+ peer->tk_set = 0; /* A new nonce results in a new TK */ - wpa_hexdump(MSG_DEBUG, "TDLS: Initiator Nonce for TPK handshake", - peer->inonce, WPA_NONCE_LEN); - os_memcpy(ftie->Snonce, peer->inonce, WPA_NONCE_LEN); -@@ -1751,6 +1770,19 @@ static int wpa_tdls_addset_peer(struct wpa_sm *sm, struct wpa_tdls_peer *peer, - } - - -+static int tdls_nonce_set(const u8 *nonce) -+{ -+ int i; -+ -+ for (i = 0; i < WPA_NONCE_LEN; i++) { -+ if (nonce[i]) -+ return 1; -+ } -+ -+ return 0; -+} -+ -+ - static int wpa_tdls_process_tpk_m1(struct wpa_sm *sm, const u8 *src_addr, - const u8 *buf, size_t len) - { -@@ -2004,7 +2036,8 @@ skip_rsn: - peer->rsnie_i_len = kde.rsn_ie_len; - peer->cipher = cipher; - -- if (os_memcmp(peer->inonce, ftie->Snonce, WPA_NONCE_LEN) != 0) { -+ if (os_memcmp(peer->inonce, ftie->Snonce, WPA_NONCE_LEN) != 0 || -+ !tdls_nonce_set(peer->inonce)) { - /* - * There is no point in updating the RNonce for every obtained - * TPK M1 frame (e.g., retransmission due to timeout) with the -@@ -2020,6 +2053,7 @@ skip_rsn: - "TDLS: Failed to get random data for responder nonce"); - goto error; - } -+ peer->tk_set = 0; /* A new nonce results in a new TK */ - } - - #if 0 --- -2.7.4 - diff --git a/user/wpa_supplicant/rebased-v2.6-0007-WNM-Ignore-WNM-Sleep-Mode-Response-without-pending-r.patch b/user/wpa_supplicant/rebased-v2.6-0007-WNM-Ignore-WNM-Sleep-Mode-Response-without-pending-r.patch deleted file mode 100644 index 85ea1d62b..000000000 --- a/user/wpa_supplicant/rebased-v2.6-0007-WNM-Ignore-WNM-Sleep-Mode-Response-without-pending-r.patch +++ /dev/null @@ -1,43 +0,0 @@ -From 53c5eb58e95004f86e65ee9fbfccbc291b139057 Mon Sep 17 00:00:00 2001 -From: Jouni Malinen <j@w1.fi> -Date: Fri, 22 Sep 2017 11:25:02 +0300 -Subject: [PATCH 7/8] WNM: Ignore WNM-Sleep Mode Response without pending - request - -Commit 03ed0a52393710be6bdae657d1b36efa146520e5 ('WNM: Ignore WNM-Sleep -Mode Response if WNM-Sleep Mode has not been used') started ignoring the -response when no WNM-Sleep Mode Request had been used during the -association. This can be made tighter by clearing the used flag when -successfully processing a response. This adds an additional layer of -protection against unexpected retransmissions of the response frame. - -Signed-off-by: Jouni Malinen <j@w1.fi> ---- - wpa_supplicant/wnm_sta.c | 4 +++- - 1 file changed, 3 insertions(+), 1 deletion(-) - -diff --git a/wpa_supplicant/wnm_sta.c b/wpa_supplicant/wnm_sta.c -index 1b3409c..67a07ff 100644 ---- a/wpa_supplicant/wnm_sta.c -+++ b/wpa_supplicant/wnm_sta.c -@@ -260,7 +260,7 @@ static void ieee802_11_rx_wnmsleep_resp(struct wpa_supplicant *wpa_s, - - if (!wpa_s->wnmsleep_used) { - wpa_printf(MSG_DEBUG, -- "WNM: Ignore WNM-Sleep Mode Response frame since WNM-Sleep Mode has not been used in this association"); -+ "WNM: Ignore WNM-Sleep Mode Response frame since WNM-Sleep Mode operation has not been requested"); - return; - } - -@@ -299,6 +299,8 @@ static void ieee802_11_rx_wnmsleep_resp(struct wpa_supplicant *wpa_s, - return; - } - -+ wpa_s->wnmsleep_used = 0; -+ - if (wnmsleep_ie->status == WNM_STATUS_SLEEP_ACCEPT || - wnmsleep_ie->status == WNM_STATUS_SLEEP_EXIT_ACCEPT_GTK_UPDATE) { - wpa_printf(MSG_DEBUG, "Successfully recv WNM-Sleep Response " --- -2.7.4 - diff --git a/user/wpa_supplicant/rebased-v2.6-0008-FT-Do-not-allow-multiple-Reassociation-Response-fram.patch b/user/wpa_supplicant/rebased-v2.6-0008-FT-Do-not-allow-multiple-Reassociation-Response-fram.patch deleted file mode 100644 index b9678f681..000000000 --- a/user/wpa_supplicant/rebased-v2.6-0008-FT-Do-not-allow-multiple-Reassociation-Response-fram.patch +++ /dev/null @@ -1,82 +0,0 @@ -From b372ab0b7daea719749194dc554b26e6367603f2 Mon Sep 17 00:00:00 2001 -From: Jouni Malinen <j@w1.fi> -Date: Fri, 22 Sep 2017 12:06:37 +0300 -Subject: [PATCH 8/8] FT: Do not allow multiple Reassociation Response frames - -The driver is expected to not report a second association event without -the station having explicitly request a new association. As such, this -case should not be reachable. However, since reconfiguring the same -pairwise or group keys to the driver could result in nonce reuse issues, -be extra careful here and do an additional state check to avoid this -even if the local driver ends up somehow accepting an unexpected -Reassociation Response frame. - -Signed-off-by: Jouni Malinen <j@w1.fi> ---- - src/rsn_supp/wpa.c | 3 +++ - src/rsn_supp/wpa_ft.c | 8 ++++++++ - src/rsn_supp/wpa_i.h | 1 + - 3 files changed, 12 insertions(+) - -diff --git a/src/rsn_supp/wpa.c b/src/rsn_supp/wpa.c -index 0550a41..2a53c6f 100644 ---- a/src/rsn_supp/wpa.c -+++ b/src/rsn_supp/wpa.c -@@ -2440,6 +2440,9 @@ void wpa_sm_notify_disassoc(struct wpa_sm *sm) - #ifdef CONFIG_TDLS - wpa_tdls_disassoc(sm); - #endif /* CONFIG_TDLS */ -+#ifdef CONFIG_IEEE80211R -+ sm->ft_reassoc_completed = 0; -+#endif /* CONFIG_IEEE80211R */ - - /* Keys are not needed in the WPA state machine anymore */ - wpa_sm_drop_sa(sm); -diff --git a/src/rsn_supp/wpa_ft.c b/src/rsn_supp/wpa_ft.c -index 205793e..d45bb45 100644 ---- a/src/rsn_supp/wpa_ft.c -+++ b/src/rsn_supp/wpa_ft.c -@@ -153,6 +153,7 @@ static u8 * wpa_ft_gen_req_ies(struct wpa_sm *sm, size_t *len, - u16 capab; - - sm->ft_completed = 0; -+ sm->ft_reassoc_completed = 0; - - buf_len = 2 + sizeof(struct rsn_mdie) + 2 + sizeof(struct rsn_ftie) + - 2 + sm->r0kh_id_len + ric_ies_len + 100; -@@ -681,6 +682,11 @@ int wpa_ft_validate_reassoc_resp(struct wpa_sm *sm, const u8 *ies, - return -1; - } - -+ if (sm->ft_reassoc_completed) { -+ wpa_printf(MSG_DEBUG, "FT: Reassociation has already been completed for this FT protocol instance - ignore unexpected retransmission"); -+ return 0; -+ } -+ - if (wpa_ft_parse_ies(ies, ies_len, &parse) < 0) { - wpa_printf(MSG_DEBUG, "FT: Failed to parse IEs"); - return -1; -@@ -781,6 +787,8 @@ int wpa_ft_validate_reassoc_resp(struct wpa_sm *sm, const u8 *ies, - return -1; - } - -+ sm->ft_reassoc_completed = 1; -+ - if (wpa_ft_process_gtk_subelem(sm, parse.gtk, parse.gtk_len) < 0) - return -1; - -diff --git a/src/rsn_supp/wpa_i.h b/src/rsn_supp/wpa_i.h -index 41f371f..56f88dc 100644 ---- a/src/rsn_supp/wpa_i.h -+++ b/src/rsn_supp/wpa_i.h -@@ -128,6 +128,7 @@ struct wpa_sm { - size_t r0kh_id_len; - u8 r1kh_id[FT_R1KH_ID_LEN]; - int ft_completed; -+ int ft_reassoc_completed; - int over_the_ds_in_progress; - u8 target_ap[ETH_ALEN]; /* over-the-DS target AP */ - int set_ptk_after_assoc; --- -2.7.4 - diff --git a/user/x11perf/APKBUILD b/user/x11perf/APKBUILD index 2c3d265bb..eb39a1193 100644 --- a/user/x11perf/APKBUILD +++ b/user/x11perf/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=x11perf -pkgver=1.6.0 +pkgver=1.6.1 pkgrel=0 pkgdesc="X11 server benchmarking utility" url="https://www.X.Org/" @@ -14,7 +14,6 @@ subpackages="$pkgname-doc" source="https://www.x.org/releases/individual/app/x11perf-$pkgver.tar.bz2" build() { - cd "$builddir" ./configure \ --build=$CBUILD \ --host=$CHOST \ @@ -26,13 +25,11 @@ build() { } check() { - cd "$builddir" make check } package() { - cd "$builddir" make DESTDIR="$pkgdir" install } -sha512sums="a9508c9dd6db2663b5bd30f5e1f5f80b1d22ce5221ae3dc292e746f8e554fda2d3130f7311f2545e20244dceb51e867fe80fec82c9ac5911dcdc90a73b231623 x11perf-1.6.0.tar.bz2" +sha512sums="b386151bfe3d7c04ab9953ae1882f3c5b627d6d1afb9a8cfe87c58236a88883fc11bbadb2226b9aa61df84b4fce625a1c9e3d146a124ac17e8d7d605b35d9c0b x11perf-1.6.1.tar.bz2" diff --git a/user/xcalc/APKBUILD b/user/xcalc/APKBUILD index d15d905fc..752b66ba9 100644 --- a/user/xcalc/APKBUILD +++ b/user/xcalc/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=xcalc -pkgver=1.0.6 +pkgver=1.0.7 pkgrel=0 pkgdesc="Graphical scientific calculator for X11" url="https://www.X.Org/" @@ -10,10 +10,9 @@ license="X11" depends="" makedepends="libx11-dev libxaw-dev libxt-dev util-macros xorgproto-dev" subpackages="$pkgname-doc" -source="https://www.x.org/releases/individual/app/xcalc-$pkgver.tar.bz2" +source="https://www.X.Org/releases/individual/app/xcalc-$pkgver.tar.bz2" build() { - cd "$builddir" ./configure \ --build=$CBUILD \ --host=$CHOST \ @@ -25,13 +24,11 @@ build() { } check() { - cd "$builddir" make check } package() { - cd "$builddir" make DESTDIR="$pkgdir" install } -sha512sums="61b921b6a3fefea20bd9e7ad0b308f589f2aeaafe9316df94cc739a005be6c180bdafc981b8957230f46c9fc1c0e266829a55b473ae26b1377c705796175c908 xcalc-1.0.6.tar.bz2" +sha512sums="890cb9399e3c55816318ab5f0152ddba05ee141cbae6032759a3b762742ab54df8fcf0394dacc539299f93f27cbbb17aee5cbda5dde8b169a7099f20a1a38388 xcalc-1.0.7.tar.bz2" diff --git a/user/xclock/APKBUILD b/user/xclock/APKBUILD index f8b9e4a22..e2f55308a 100644 --- a/user/xclock/APKBUILD +++ b/user/xclock/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=xclock -pkgver=1.0.7 +pkgver=1.0.8 pkgrel=0 pkgdesc="Clock applet for X11" url="https://www.X.Org/" @@ -11,10 +11,9 @@ depends="" makedepends="libx11-dev libxaw-dev libxkbfile-dev libxft-dev libxmu-dev libxrender-dev util-macros xorgproto-dev" subpackages="$pkgname-doc" -source="https://www.x.org/releases/individual/app/xclock-$pkgver.tar.bz2" +source="https://www.X.Org/releases/individual/app/xclock-$pkgver.tar.bz2" build() { - cd "$builddir" ./configure \ --build=$CBUILD \ --host=$CHOST \ @@ -26,13 +25,11 @@ build() { } check() { - cd "$builddir" make check } package() { - cd "$builddir" make DESTDIR="$pkgdir" install } -sha512sums="56689bdae6c83e9e1da5c4c48cf1136ca8b4f45b177f27bc1deeb24758e2c180035b639e8df72e3ebf32dc301bceb59118309fcce2ffab54e5abe9bfa645e607 xclock-1.0.7.tar.bz2" +sha512sums="1272221ace3657505bae1b22f181e9ecbf1710900c89a860c8ceae47ae31ca5e75b6557c37dc0a881a0a24c9597b9a07f46200926feb1013f1e2e995111a7646 xclock-1.0.8.tar.bz2" diff --git a/user/xcompmgr/APKBUILD b/user/xcompmgr/APKBUILD index 27c149441..6149de629 100644 --- a/user/xcompmgr/APKBUILD +++ b/user/xcompmgr/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=xcompmgr -pkgver=1.1.7 +pkgver=1.1.8 pkgrel=0 pkgdesc="Small compositing manager for X11" url="https://www.X.Org/" @@ -11,10 +11,9 @@ depends="" makedepends="libxcomposite-dev libxdamage-dev libxext-dev libxfixes-dev libxrender-dev util-macros" subpackages="$pkgname-doc" -source="https://www.x.org/releases/individual/app/xcompmgr-$pkgver.tar.bz2" +source="https://www.X.Org/releases/individual/app/xcompmgr-$pkgver.tar.bz2" build() { - cd "$builddir" ./configure \ --build=$CBUILD \ --host=$CHOST \ @@ -26,13 +25,11 @@ build() { } check() { - cd "$builddir" make check } package() { - cd "$builddir" make DESTDIR="$pkgdir" install } -sha512sums="f93a6be78169dd41ff08d71409e28746fd62902810a2f6930c0ac44f1415bc7391a8fb885b074fd40afedd7f1c1590aa7c67fc101c3b6488ddaa74495b42149c xcompmgr-1.1.7.tar.bz2" +sha512sums="ccf29426ffb0797a53653d1ce152de5eee0cec284811fed4b8e634ea0d948180531e4619d96f47e4f9594432c57322624fe0fdaee2c9200efac427fc0904953d xcompmgr-1.1.8.tar.bz2" diff --git a/user/xcursor-themes/APKBUILD b/user/xcursor-themes/APKBUILD index e61f4a537..72a65a9b9 100644 --- a/user/xcursor-themes/APKBUILD +++ b/user/xcursor-themes/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=xcursor-themes -pkgver=1.0.5 +pkgver=1.0.6 pkgrel=0 pkgdesc="Built-in cursor themes for X11" url="https://www.X.Org/" @@ -10,10 +10,9 @@ license="X11" depends="" makedepends="libxcursor-dev util-macros xcursorgen" subpackages="" -source="https://www.x.org/releases/individual/data/xcursor-themes-$pkgver.tar.bz2" +source="https://www.X.Org/releases/individual/data/xcursor-themes-$pkgver.tar.bz2" build() { - cd "$builddir" ./configure \ --build=$CBUILD \ --host=$CHOST \ @@ -25,13 +24,11 @@ build() { } check() { - cd "$builddir" make check } package() { - cd "$builddir" make DESTDIR="$pkgdir" install } -sha512sums="f41e1de0d5deafba33106dcad81576d1888fca052a962c202f2221104aa2d8236b066d8d8fc3dcfbdc166db63f84e60980dfc54059b20a26c7415de71ed07a5b xcursor-themes-1.0.5.tar.bz2" +sha512sums="2ad3586a5571a5ddc0001187362b54b839644916164834213af98e58698044aec4392dd6e1e42f1794fda85c8fedf259b09214a9636bd0e71a1629c710f198d3 xcursor-themes-1.0.6.tar.bz2" diff --git a/user/xcursorgen/APKBUILD b/user/xcursorgen/APKBUILD index 395dfb95b..7e00406e0 100644 --- a/user/xcursorgen/APKBUILD +++ b/user/xcursorgen/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=xcursorgen -pkgver=1.0.6 +pkgver=1.0.7 pkgrel=0 pkgdesc="Cursor generator for X11" url="https://www.X.Org/" @@ -10,10 +10,9 @@ license="MIT" depends="" makedepends="libpng-dev libx11-dev libxcursor-dev util-macros" subpackages="$pkgname-doc" -source="https://www.x.org/releases/individual/app/xcursorgen-$pkgver.tar.bz2" +source="https://www.X.Org/releases/individual/app/xcursorgen-$pkgver.tar.bz2" build() { - cd "$builddir" ./configure \ --build=$CBUILD \ --host=$CHOST \ @@ -25,13 +24,11 @@ build() { } check() { - cd "$builddir" make check } package() { - cd "$builddir" make DESTDIR="$pkgdir" install } -sha512sums="3b464b7be3cec8c6d2bf4538266108bdc09e1dae4053d573f7f38e004929b41be0d996aa54918490fa040655644e2b0d4fab1ec24cca014d77bdb91c41ab1db4 xcursorgen-1.0.6.tar.bz2" +sha512sums="bd13ad23691d3daa2d5dcdc5902cf62e3dcb97a0289aff362e6cd85866a1d8cafb64f98800a75bfb4cf1f3c76244ca20201847dff594543d136d0abaec7011d2 xcursorgen-1.0.7.tar.bz2" diff --git a/user/xditview/APKBUILD b/user/xditview/APKBUILD index 6902402e2..7de93902e 100644 --- a/user/xditview/APKBUILD +++ b/user/xditview/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=xditview -pkgver=1.0.4 +pkgver=1.0.5 pkgrel=0 pkgdesc="X11 ditroff viewer" url="https://www.X.Org/" @@ -10,10 +10,9 @@ license="X11" depends="" makedepends="libx11-dev libxaw-dev libxmu-dev libxt-dev util-macros" subpackages="$pkgname-doc" -source="https://www.x.org/releases/individual/app/xditview-$pkgver.tar.bz2" +source="https://www.X.Org/releases/individual/app/xditview-$pkgver.tar.bz2" build() { - cd "$builddir" ./configure \ --build=$CBUILD \ --host=$CHOST \ @@ -25,13 +24,11 @@ build() { } check() { - cd "$builddir" make check } package() { - cd "$builddir" make DESTDIR="$pkgdir" install } -sha512sums="7a0d023cd28ffc63c771814e028e79d20f8b56671a7a558c41ef062ef2d40079b5d37a5cf026b7ad3670da6866a087ae4888cea96d6d9e8a137e115174d637d2 xditview-1.0.4.tar.bz2" +sha512sums="e20c903f38394b496111267e142d84d11e69a3b89f91869652d1f2ee5c997a13f90bfa2966651b42cd3979a330b348a6e397cc6a74c45b1f3f91643e7c06765d xditview-1.0.5.tar.bz2" diff --git a/user/xev/APKBUILD b/user/xev/APKBUILD index 951fb10c4..ba8aafedd 100644 --- a/user/xev/APKBUILD +++ b/user/xev/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=xev -pkgver=1.2.2 +pkgver=1.2.3 pkgrel=0 pkgdesc="X11 input event monitor" url="https://www.X.Org/" @@ -10,10 +10,9 @@ license="X11" depends="" makedepends="libx11-dev libxrandr-dev util-macros xorgproto-dev" subpackages="$pkgname-doc" -source="https://www.x.org/releases/individual/app/xev-$pkgver.tar.bz2" +source="https://www.X.Org/releases/individual/app/xev-$pkgver.tar.bz2" build() { - cd "$builddir" ./configure \ --build=$CBUILD \ --host=$CHOST \ @@ -25,13 +24,11 @@ build() { } check() { - cd "$builddir" make check } package() { - cd "$builddir" make DESTDIR="$pkgdir" install } -sha512sums="453fc18072e4d4fd088a1b2e918f3772aaa2c56b36c082deb41ec4d434d1579de75f447fc4e0507086c170152e02d6db8b60dc7fd87ae18a2e817448bd628fca xev-1.2.2.tar.bz2" +sha512sums="47cc7ac096e77cfa4e687914d767263cf3e1dca5bffd0f68c7ba0fe751b248c8a16525bd2da4d6efa0ea8d637831c893d41c9687cace4aaa9c0909a45ef1943e xev-1.2.3.tar.bz2" diff --git a/user/xf86-input-libinput/APKBUILD b/user/xf86-input-libinput/APKBUILD index 655c9319f..4c168bea9 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.1 +pkgver=0.28.2 pkgrel=0 pkgdesc="X.Org generic input driver using libinput" url="https://www.X.Org/" @@ -14,7 +14,6 @@ subpackages="$pkgname-dev $pkgname-doc" source="https://www.X.Org/releases/individual/driver/$pkgname-$pkgver.tar.bz2" build() { - cd "$builddir" ./configure \ --build=$CBUILD \ --host=$CHOST \ @@ -26,14 +25,11 @@ build() { } check() { - cd "$builddir" make check } package() { - cd "$builddir" make DESTDIR="$pkgdir" install - install -Dm644 COPYING "$pkgdir"/usr/share/licenses/$pkgname/COPYING } -sha512sums="2b8cabfbc3490edbe928771ed9d62a0d4a423bc1373fc6cf9d3a6b5937e17ddc48ebb1b70f1191e507024e4b8220c137495cbba825292b51e50709daa7d31623 xf86-input-libinput-0.28.1.tar.bz2" +sha512sums="da6eb632180649853b3aa2fb88debd6aafe5ede24a5f4a04a21cf18fa97fd414d300b86cdf8a42027c98ac89f1b9f88034fc9e364ac3a02fa38872e57b542a84 xf86-input-libinput-0.28.2.tar.bz2" diff --git a/user/xf86-video-ati/APKBUILD b/user/xf86-video-ati/APKBUILD index d1a8d21c7..4212237c5 100644 --- a/user/xf86-video-ati/APKBUILD +++ b/user/xf86-video-ati/APKBUILD @@ -1,6 +1,6 @@ # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=xf86-video-ati -pkgver=18.1.0 +pkgver=19.0.1 pkgrel=0 pkgdesc="ATI video driver for X11" url="https://www.X.Org/" @@ -14,7 +14,6 @@ makedepends="eudev-dev libdrm-dev libxi-dev mesa-dev pixman-dev util-macros source="https://www.X.Org/releases/individual/driver/$pkgname-$pkgver.tar.bz2" build() { - cd "$builddir" export LDFLAGS="$LDFLAGS -Wl,-z,lazy" ./configure \ @@ -26,9 +25,7 @@ build() { } package() { - cd "$builddir" make DESTDIR="$pkgdir" install - install -Dm644 COPYING "$pkgdir"/usr/share/licenses/$pkgname/COPYING } -sha512sums="7a58c9a6cb4876bd2ff37d837372b4e360e81fec7de6a6c7a48d70a5338d62745f734f5d4207f30aa368ff2d9ef44f5f1ef36afd73802a618998c16fe395ed53 xf86-video-ati-18.1.0.tar.bz2" +sha512sums="e04c5395e3a49d81b8f7a4b0e11fe8c9ebd17af056a4eab4541873796dce05b103c93fb185f3a00873010df0655cd7311e6d27e177aeb7345c4c8017bbd1eb17 xf86-video-ati-19.0.1.tar.bz2" diff --git a/user/xf86-video-intel/APKBUILD b/user/xf86-video-intel/APKBUILD index d65be06d8..6727ce394 100644 --- a/user/xf86-video-intel/APKBUILD +++ b/user/xf86-video-intel/APKBUILD @@ -14,7 +14,9 @@ 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" +source="https://dev.sick.bike/$pkgname-$pkgver.tar.gz + pmmx.patch + " giturl="https://gitlab.freedesktop.org/xorg/driver/xf86-video-intel.git" reporev="3d395062ce73f85e8340218df01c2ebf4bc25023" @@ -44,4 +46,5 @@ package() { rm "$pkgdir"/usr/libexec/xf86-video-intel-backlight-helper } -sha512sums="a96e627ed1b3fb6b66f02caaafb0f94967df9a2409158aacc9d8958538ef47bd84176ce71a4785f21944beb764450b1560c6dc59eef435f75959e27704be41f1 xf86-video-intel-2.99.917_git20180803.tar.gz" +sha512sums="a96e627ed1b3fb6b66f02caaafb0f94967df9a2409158aacc9d8958538ef47bd84176ce71a4785f21944beb764450b1560c6dc59eef435f75959e27704be41f1 xf86-video-intel-2.99.917_git20180803.tar.gz +13694f8829ec59773f764817467052d5d4b93b5de16d8cdacc08ced48608b46008414be1f5f118e5f327c401541477c3418f510ada9cfb290a11ac2e5590b0f3 pmmx.patch" diff --git a/user/xf86-video-intel/pmmx.patch b/user/xf86-video-intel/pmmx.patch new file mode 100644 index 000000000..7edddfb96 --- /dev/null +++ b/user/xf86-video-intel/pmmx.patch @@ -0,0 +1,13 @@ +diff --git a/src/sna/compiler.h b/src/sna/compiler.h +index 0f3775ec..c4056913 100644 +--- a/src/sna/compiler.h ++++ b/src/sna/compiler.h +@@ -32,7 +32,7 @@ + #define likely(expr) (__builtin_expect (!!(expr), 1)) + #define unlikely(expr) (__builtin_expect (!!(expr), 0)) + #define noinline __attribute__((noinline)) +-#define force_inline inline __attribute__((always_inline)) ++#define force_inline inline + #define fastcall __attribute__((regparm(3))) + #define must_check __attribute__((warn_unused_result)) + #define constant __attribute__((const)) diff --git a/user/xf86-video-nouveau/APKBUILD b/user/xf86-video-nouveau/APKBUILD index dd6bd27cd..40c9b8f82 100644 --- a/user/xf86-video-nouveau/APKBUILD +++ b/user/xf86-video-nouveau/APKBUILD @@ -1,8 +1,8 @@ # 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 +pkgver=1.0.16 +pkgrel=0 pkgdesc="Libre Nvidia video driver for X11" url="https://nouveau.freedesktop.org/" arch="all" @@ -10,12 +10,9 @@ 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 - " +source="https://www.X.Org/archive/individual/driver/$pkgname-$pkgver.tar.bz2" build() { - cd "$builddir" export LDFLAGS="$LDFLAGS -Wl,-z,lazy" ./configure \ --build=$CBUILD \ @@ -28,14 +25,11 @@ build() { } 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" +sha512sums="41b7839c37372660968ab7da2bc3d9feef3cab4e994d05d4ba6e59071f0d1b1f8d7dcdbcb15a42a375a556d28dc067f9ffe45d73c1d121ad307d199107ade3e0 xf86-video-nouveau-1.0.16.tar.bz2" diff --git a/user/xf86-video-nouveau/dont-strcmp-null.patch b/user/xf86-video-nouveau/dont-strcmp-null.patch deleted file mode 100644 index 23c4fd216..000000000 --- a/user/xf86-video-nouveau/dont-strcmp-null.patch +++ /dev/null @@ -1,33 +0,0 @@ -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/xf86-video-tdfx/APKBUILD b/user/xf86-video-tdfx/APKBUILD index 62b9217cc..7f8252934 100644 --- a/user/xf86-video-tdfx/APKBUILD +++ b/user/xf86-video-tdfx/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=xf86-video-tdfx -pkgver=1.4.7 +pkgver=1.5.0 pkgrel=0 pkgdesc="3Dfx video driver for X11" url="https://www.X.Org/" @@ -10,10 +10,9 @@ license="MIT" depends="" makedepends="util-macros xorgproto-dev xorg-server-dev" subpackages="$pkgname-doc" -source="https://www.x.org/releases/individual/driver/xf86-video-tdfx-$pkgver.tar.bz2" +source="https://www.X.Org/releases/individual/driver/xf86-video-tdfx-$pkgver.tar.bz2" build() { - cd "$builddir" ./configure \ --build=$CBUILD \ --host=$CHOST \ @@ -25,13 +24,11 @@ build() { } check() { - cd "$builddir" make check } package() { - cd "$builddir" make DESTDIR="$pkgdir" install } -sha512sums="573eea7a6b05ed33a963f8e2f80ac1cb14632b7fd10d8d90da16c07db432e73641ced885ee979f68e4ead8429b39506b2f231ca4ac296a0780c9f6d223c3b405 xf86-video-tdfx-1.4.7.tar.bz2" +sha512sums="eca3359c7db56183a1cfcce7295e41ccc349005ee1cbcf75209f1e4e8e04e887ba511712ef35efc11c940713c8327b0b8ab8b6c86facf02062b3e84c0b1af5ff xf86-video-tdfx-1.5.0.tar.bz2" diff --git a/user/xfce4-appfinder/APKBUILD b/user/xfce4-appfinder/APKBUILD index 575436450..92a917018 100644 --- a/user/xfce4-appfinder/APKBUILD +++ b/user/xfce4-appfinder/APKBUILD @@ -1,7 +1,7 @@ # Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> # Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> pkgname=xfce4-appfinder -pkgver=4.13.2 +pkgver=4.13.3 pkgrel=0 pkgdesc="An application finder for the XFCE desktop environment" url="https://xfce.org" @@ -34,4 +34,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="96ac782c785649ddf75f8659f9cf10f42c37bab647824f0c76714baca0b61904fa8ba6d23dc1574aae5fdf2538201936d26b42ea6c0f5d5f0f9d71c8ba0a51b8 xfce4-appfinder-4.13.2.tar.bz2" +sha512sums="47f69e8daf6f963b8130c0380f2201cdb2d02212cfb8b5c05fedbebb78222d3bd35db0fd422418cf3f9d1f2b90e66ee4d143bed57881f5673aefca8bc58e059a xfce4-appfinder-4.13.3.tar.bz2" diff --git a/user/xfce4-notifyd/APKBUILD b/user/xfce4-notifyd/APKBUILD index 8f0240ab0..29a9bcee3 100644 --- a/user/xfce4-notifyd/APKBUILD +++ b/user/xfce4-notifyd/APKBUILD @@ -1,7 +1,7 @@ # Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> # Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> pkgname=xfce4-notifyd -pkgver=0.4.3 +pkgver=0.4.4 pkgrel=0 pkgdesc="Notification service for the XFCE desktop environment" url="https://xfce.org" @@ -35,4 +35,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="eed16d863dddfe29ce6dd1e34260ae64f558bc5ffe5af837e293a9492b728a400338b950116fb934f0b3d0a76ed8fd280aacd075d44524be614bb27257b99a9e xfce4-notifyd-0.4.3.tar.bz2" +sha512sums="546a5063673e36ef26bcdac624bfcef41a14918dbb496fb3d282613334f173b51669184b6bcfbee0f07a17863620898be2f464e487ca9755abe7285d6a43d8d5 xfce4-notifyd-0.4.4.tar.bz2" diff --git a/user/xfce4-panel/APKBUILD b/user/xfce4-panel/APKBUILD index 4e70ac9d3..9594fc9a8 100644 --- a/user/xfce4-panel/APKBUILD +++ b/user/xfce4-panel/APKBUILD @@ -1,7 +1,7 @@ # Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> # Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> pkgname=xfce4-panel -pkgver=4.13.4 +pkgver=4.13.5 pkgrel=0 pkgdesc="Panel for the XFCE desktop environment" url="https://xfce.org" @@ -35,4 +35,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="16a3680aa2ab7fa357ca9d477ea0e41ca159a2c626fe65454ccdca339bb501ff0979264f5a4ae4728e3c0efe24e193eb28e7b5d1e003fecad8ab36b8457203c8 xfce4-panel-4.13.4.tar.bz2" +sha512sums="3eb4034bd6eae38f8f533b8cd2cae4ec8b40cab5f0d6810639baad641b4adaf15d03254ec79cd49d04e3498d3a4752bd9e968a0383468e7337106b3665092c4e xfce4-panel-4.13.5.tar.bz2" diff --git a/user/xfce4-power-manager/APKBUILD b/user/xfce4-power-manager/APKBUILD index dc6232180..dd6dab858 100644 --- a/user/xfce4-power-manager/APKBUILD +++ b/user/xfce4-power-manager/APKBUILD @@ -1,7 +1,7 @@ # Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> # Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> pkgname=xfce4-power-manager -pkgver=1.6.1 +pkgver=1.6.2 pkgrel=0 pkgdesc="Power management support for the XFCE desktop environment" url="https://xfce.org" @@ -12,7 +12,6 @@ makedepends="intltool gtk+3.0-dev libxfce4ui-dev libice-dev libnotify-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" @@ -36,3 +35,4 @@ package() { make DESTDIR="$pkgdir" install } +sha512sums="d1c475ad3cf194c19a2ad1decc4c80a9f504d74b64dec71887c14c576cd5a2932799cd0068f6356a15590fa67c6d0434401ad36b7a2fa6a3b62d51290cd7b68c xfce4-power-manager-1.6.2.tar.bz2" diff --git a/user/xfce4-screenshooter/APKBUILD b/user/xfce4-screenshooter/APKBUILD index 47e3f889b..1443db9dd 100644 --- a/user/xfce4-screenshooter/APKBUILD +++ b/user/xfce4-screenshooter/APKBUILD @@ -1,7 +1,7 @@ # Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> # Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> pkgname=xfce4-screenshooter -pkgver=1.9.3 +pkgver=1.9.5 pkgrel=0 pkgdesc="Screenshot tool for the XFCE desktop environment" url="https://xfce.org" @@ -10,7 +10,6 @@ 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" @@ -34,3 +33,4 @@ package() { make DESTDIR="$pkgdir" install } +sha512sums="e5797a6defa4df94c552e8ff39b21f4203b6795669e8145ea5ef609fc7b29bcfa846b19b253b39b12ab0e6c130c7f9e67dd5aa628cefe9b063fb9f74dd2c3ee1 xfce4-screenshooter-1.9.5.tar.bz2" diff --git a/user/xfce4-session/APKBUILD b/user/xfce4-session/APKBUILD index 05c391a80..5b431f963 100644 --- a/user/xfce4-session/APKBUILD +++ b/user/xfce4-session/APKBUILD @@ -1,18 +1,18 @@ # Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> # Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> pkgname=xfce4-session -pkgver=4.13.1 +pkgver=4.13.2 pkgrel=0 pkgdesc="Session management for the XFCE desktop environment" url="https://xfce.org" arch="all" license="GPL-2.0+ AND LGPL-2.0+" +depends="iceauth cmd:which xdg-user-dirs" makedepends="intltool gtk+3.0-dev libice-dev libsm-dev libxfce4util-dev - libxfce4ui-dev libwnck-dev iceauth dbus-glib-dev" + libxfce4ui-dev libwnck-dev iceauth dbus-glib-dev polkit-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" +source="https://archive.xfce.org/src/xfce/xfce4-session/4.13/xfce4-session-$pkgver.tar.bz2" build() { cd "$builddir" @@ -36,3 +36,4 @@ package() { make DESTDIR="$pkgdir" install } +sha512sums="cb1e63a3df9c4ac3efcb0cce20cb5528f9d1a46731ad4b32634ad5f4a53711f05b40d98464bfd562b4e3d42b2555827ece03e63c6a433e879fa0f0a4ccda6a57 xfce4-session-4.13.2.tar.bz2" diff --git a/user/xfce4-settings/APKBUILD b/user/xfce4-settings/APKBUILD index 4b894e6ee..7fc818d88 100644 --- a/user/xfce4-settings/APKBUILD +++ b/user/xfce4-settings/APKBUILD @@ -1,7 +1,7 @@ # Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> # Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> pkgname=xfce4-settings -pkgver=4.13.5 +pkgver=4.13.6 pkgrel=0 pkgdesc="GUI settings application for the XFCE desktop environment" url="https://xfce.org" @@ -37,4 +37,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="5e7b13b25767091ab0b1a5683359f33e4a86151dd9321681fc4d896fcd9cc569effaebfbab70bc734e07041e9fbb1c3015f9a177146de8a128c4a539462dba5e xfce4-settings-4.13.5.tar.bz2" +sha512sums="7fe4655a5644dec8688eebc508e23bace7af76c6b8eeb3821fa9a4ec79862cde64cf59ee2ac70a27ff378ef887ce6d109ef1b1d9e5f7e98f96fdb43604e024b6 xfce4-settings-4.13.6.tar.bz2" diff --git a/user/xfce4-whiskermenu-plugin/APKBUILD b/user/xfce4-whiskermenu-plugin/APKBUILD index 726611224..b562d6126 100644 --- a/user/xfce4-whiskermenu-plugin/APKBUILD +++ b/user/xfce4-whiskermenu-plugin/APKBUILD @@ -1,7 +1,7 @@ # Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> # Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> pkgname=xfce4-whiskermenu-plugin -pkgver=2.3.1 +pkgver=2.3.2 _pkgmaj=${pkgver%.*} pkgrel=0 pkgdesc="Whisker menu plugin for the XFCE panel" @@ -34,4 +34,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="f09a3a496aec5c29e6604657c0eb6dbc1bab731b56b34067dfe2548670dd4837741c55ebbb9f98505c6569effee170936cdd48dd0d79947d50b17f85410a38ea xfce4-whiskermenu-plugin-2.3.1.tar.bz2" +sha512sums="2b9557b29d1b30b5d46df5f182d64562873defd59cd36e6444da4b73bbdf3835cfb17101f11a3ac6e9f875a9dc4d51e2301a420a888bfa1d7fdc6ae715d92443 xfce4-whiskermenu-plugin-2.3.2.tar.bz2" diff --git a/user/xfconf/APKBUILD b/user/xfconf/APKBUILD index 09144df61..74dd12c7d 100644 --- a/user/xfconf/APKBUILD +++ b/user/xfconf/APKBUILD @@ -1,7 +1,7 @@ # Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> # Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> pkgname=xfconf -pkgver=4.13.6 +pkgver=4.13.7 pkgrel=0 pkgdesc="Configuration framework for the XFCE desktop environment" url="https://xfce.org" @@ -43,4 +43,4 @@ perl() { mv "$pkgdir"/usr/lib/perl5 "$subpkgdir"/usr/lib } -sha512sums="0eaa1ad428be5bea97b891a6bf0488293064e31d4869b70389ded940a23f9d8cffd0801dd98932658a67e57d6a0da95998872202cf7756aa24caa8f9d2c5f755 xfconf-4.13.6.tar.bz2" +sha512sums="113fb22b449a318b0cca6521914eda6cfeb6b2056a1aad4d49a5e83c28661c843c9912bbf7eddb7d6cd1f172b532c73dd02259bf6fabe60a377024f9f8d5825d xfconf-4.13.7.tar.bz2" diff --git a/user/xfd/APKBUILD b/user/xfd/APKBUILD index 5011b28d4..ca4f5188d 100644 --- a/user/xfd/APKBUILD +++ b/user/xfd/APKBUILD @@ -1,20 +1,19 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=xfd -pkgver=1.1.2 +pkgver=1.1.3 pkgrel=0 pkgdesc="Display all characters in X11 fonts" url="https://www.X.Org/" arch="all" license="X11" depends="" -makedepends="fontconfig-dev libxaw-dev libxft-dev libxmu-dev libxrender-dev - util-macros xorgproto-dev" +makedepends="fontconfig-dev libxaw-dev libxft-dev libxkbfile-dev libxmu-dev + libxrender-dev util-macros xorgproto-dev" subpackages="$pkgname-doc" -source="https://www.x.org/releases/individual/app/xfd-$pkgver.tar.bz2" +source="https://www.X.Org/releases/individual/app/xfd-$pkgver.tar.bz2" build() { - cd "$builddir" ./configure \ --build=$CBUILD \ --host=$CHOST \ @@ -26,13 +25,11 @@ build() { } check() { - cd "$builddir" make check } package() { - cd "$builddir" make DESTDIR="$pkgdir" install } -sha512sums="3a158f697dd40c5b650b3d80ad1692d668d9d9bcf586a437fd3dcebf9e8fffb773855df290260995464d5f36cb22e768d1d71de8e61d7cca80eaa4d25c029745 xfd-1.1.2.tar.bz2" +sha512sums="68e2d4ce5e24215353b6f3231191d69639c4dd90a703e03ccf152bbfe4012da071c387ba289f918fb0336a3be9ee49dc05cbec7273fa85f5e476ead7e10795f0 xfd-1.1.3.tar.bz2" diff --git a/user/xfdesktop/APKBUILD b/user/xfdesktop/APKBUILD index b061e50ff..920f041d3 100644 --- a/user/xfdesktop/APKBUILD +++ b/user/xfdesktop/APKBUILD @@ -1,7 +1,7 @@ # Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> # Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> pkgname=xfdesktop -pkgver=4.13.2 +pkgver=4.13.4 pkgrel=0 pkgdesc="Desktop manager for the XFCE desktop environment" url="https://xfce.org" @@ -12,7 +12,6 @@ makedepends="intltool gtk+3.0-dev libxfce4util-dev libxfce4ui-dev libwnck-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" @@ -36,3 +35,4 @@ package() { make DESTDIR="$pkgdir" install } +sha512sums="3943fc2af3ca3996a38900fea4a03004e1d3f8728a8517c988bd59744607ed8e4ba3f135d6075833af206df3c35464633f47e374c26fcbb8a20f0f1ecfdb7da6 xfdesktop-4.13.4.tar.bz2" diff --git a/user/xfsinfo/APKBUILD b/user/xfsinfo/APKBUILD index 932c744c8..4c3805eff 100644 --- a/user/xfsinfo/APKBUILD +++ b/user/xfsinfo/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=xfsinfo -pkgver=1.0.5 +pkgver=1.0.6 pkgrel=0 pkgdesc="Display information about X11 font servers" url="https://www.X.Org/" @@ -10,10 +10,9 @@ license="X11 AND MIT" depends="" makedepends="libfs-dev util-macros xorgproto-dev" subpackages="$pkgname-doc" -source="https://www.x.org/releases/individual/app/xfsinfo-$pkgver.tar.bz2" +source="https://www.X.Org/releases/individual/app/xfsinfo-$pkgver.tar.bz2" build() { - cd "$builddir" ./configure \ --build=$CBUILD \ --host=$CHOST \ @@ -25,13 +24,11 @@ build() { } check() { - cd "$builddir" make check } package() { - cd "$builddir" make DESTDIR="$pkgdir" install } -sha512sums="49fcbe91ac121022ccecd4a2f0e55a9a5cce7ba12b713be78b3b7f2847e622631bca6f6647256a956910fda591a87b524b966d5c849b8b2526d6f1a1960fe57f xfsinfo-1.0.5.tar.bz2" +sha512sums="901fc3817d7c95f2ba75ed0c51de91abd8efa67bbb93ad6b7d66e56a2f721af9db364e92f9ef2e719835fd48e934a5ea7402e5565c0ccd9b6b82633e869dc57b xfsinfo-1.0.6.tar.bz2" diff --git a/user/xfwm4/APKBUILD b/user/xfwm4/APKBUILD index d560fff66..130fc60d9 100644 --- a/user/xfwm4/APKBUILD +++ b/user/xfwm4/APKBUILD @@ -1,8 +1,8 @@ # Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> # Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> pkgname=xfwm4 -pkgver=4.13.1 -pkgrel=1 +pkgver=4.13.2 +pkgrel=0 pkgdesc="Window manager for the XFCE desktop environment" url="https://xfce.org" arch="all" @@ -11,8 +11,7 @@ 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 - fix-mask-length.patch" +source="http://archive.xfce.org/src/xfce/xfwm4/4.13/xfwm4-$pkgver.tar.bz2" build() { cd "$builddir" @@ -36,5 +35,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="2ac5acdefff3a89b8525719b345dfeb2dc71104b4da341afe99d7c57c049753c4cdb81a512d1f344e5fb463c7143673e83316b63888777bdcf254c4a07ca8320 xfwm4-4.13.1.tar.bz2 -88733a4d69b58b0c98f2f46694ccc8bda4e5bc1b565d952123cee466b3f89f95d72fc28c8e9c173dcc0aee606c9f4b085d891004d769b74ad0c7084d8dec00a9 fix-mask-length.patch" +sha512sums="85440a377cd7034e986b317e35c25ac6d4723bd4c1ce1e6951d8545a44f3c47340952fd0211f55cf19411539be6d86f4c34fca7b2219b0873654a6d311c95055 xfwm4-4.13.2.tar.bz2" diff --git a/user/xfwm4/fix-mask-length.patch b/user/xfwm4/fix-mask-length.patch deleted file mode 100644 index dd050c8dc..000000000 --- a/user/xfwm4/fix-mask-length.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -ru xfwm4-4.13.1.orig/src/device.c xfwm4-4.13.1/src/device.c ---- xfwm4-4.13.1.orig/src/device.c 2018-07-29 16:08:54.000000000 +0300 -+++ xfwm4-4.13.1/src/device.c 2018-09-12 08:49:18.130254993 +0300 -@@ -301,7 +301,7 @@ - guint i; - - xievent_mask->deviceid = XIAllMasterDevices; -- xievent_mask->mask_len = sizeof (mask); -+ xievent_mask->mask_len = len; - xievent_mask->mask = mask; - - for (i = 0; i < G_N_ELEMENTS (core_to_xi2); i++) diff --git a/user/xhost/APKBUILD b/user/xhost/APKBUILD index f263a2a79..39be52023 100644 --- a/user/xhost/APKBUILD +++ b/user/xhost/APKBUILD @@ -1,8 +1,8 @@ # Contributor: Natanael Copa <ncopa@alpinelinux.org> # Maintainer: Max Rees <maxcrees@me.com> pkgname=xhost -pkgver=1.0.7 -pkgrel=1 +pkgver=1.0.8 +pkgrel=0 pkgdesc="Controls host and/or user access to a running X server" url="https://www.X.Org/" arch="all" @@ -14,7 +14,6 @@ makedepends="libx11-dev libxmu-dev libxau-dev util-macros" source="https://www.X.Org/releases/individual/app/$pkgname-$pkgver.tar.bz2" build() { - cd "$builddir" ./configure \ --build=$CBUILD \ --host=$CHOST \ @@ -24,8 +23,7 @@ build() { } package() { - cd "$builddir" make DESTDIR="$pkgdir" install } -sha512sums="670a8c97291565f6c36c94e135f7bd60a572bb42b4fca9d2460823db0d0576187c64f9b876ed60d348029d3f74a732862eea4ce889a6b6b9c97665746a38b1d7 xhost-1.0.7.tar.bz2" +sha512sums="55581f9bc45a70a73b13fe718ca83c4cb0a6116d26addc0f07659ebeb5bf7d2379e84cab5a1702ae77a298a66f42ae03f41ddc7d5acd61c6f18448e58ad7cb6b xhost-1.0.8.tar.bz2" diff --git a/user/xinit/APKBUILD b/user/xinit/APKBUILD index 0fd2879c0..37556cb27 100644 --- a/user/xinit/APKBUILD +++ b/user/xinit/APKBUILD @@ -1,6 +1,6 @@ # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=xinit -pkgver=1.4.0 +pkgver=1.4.1 pkgrel=0 pkgdesc="X.Org initialisation program" url="https://www.X.Org/" @@ -17,7 +17,6 @@ source="https://www.X.Org/releases/individual/app/xinit-$pkgver.tar.bz2 xserverrc" build() { - cd "$builddir" ./configure \ --build=$CBUILD \ --host=$CHOST \ @@ -30,12 +29,10 @@ build() { } check() { - cd "$builddir" make check } package() { - cd "$builddir" make DESTDIR="$pkgdir" install chmod +x "$pkgdir"/usr/bin/startx install -m755 -d "$pkgdir"/etc/skel @@ -46,7 +43,7 @@ package() { mkdir -p "$pkgdir"/etc/X11/xinit/xinitrc.d } -sha512sums="53a29081130c1e195eb441ee77ccaa044b18b4cca3d2d5da3a6d67aa421dfd9718fa18b6be6232a41e40cf260c8190064c4d8d9ab771177bd5cd12e77a8fa79e xinit-1.4.0.tar.bz2 +sha512sums="6cbc5d025a891c419f3f4493381b2fca57a67d78df866d2f16a83426f86bad6eca7f240fac12b25cbcc63df0fec41f625407184e044898602d66483715315340 xinit-1.4.1.tar.bz2 2296c10a5d74bff42d9642a4787dc3f2b77492fc81174af48dc88cd3c8fa49c7f70147b790d8c82c2df6c910d9d412965999e7a342ca28697a97b5d522669edd 06_move_serverauthfile_into_tmp.patch 1b19f800d1f64e49b533929ea6b9580d6dc24b680e1461edcc5784ba9fbb387fef57576b1e3d4bc67cb0ff2b248b670c148a3c7a350e1062bb9b95e9a2ba7805 xinitrc 448bc6c7987a4735b6584e307cd5c53092b1a338043293f5f110d11818dd1b80508401a3b6f09525c82a16a88f293b37011d8ca112460b0f95d26897e3e0619e xsession.skel diff --git a/user/xkeyboard-config/APKBUILD b/user/xkeyboard-config/APKBUILD index c884ad87b..9a49f7ffe 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.25 +pkgver=2.26 pkgrel=0 pkgdesc="Keyboard configuration files for X11" url="https://www.freedesktop.org/wiki/Software/XKeyboardConfig" @@ -12,8 +12,6 @@ subpackages="$pkgname-lang" source="https://www.X.Org/releases/individual/data/xkeyboard-config/xkeyboard-config-$pkgver.tar.bz2" build() { - cd "$builddir" - ./configure \ --build=$CBUILD \ --host=$CHOST \ @@ -25,16 +23,13 @@ build() { } check() { - cd "$builddir" make check } package() { - cd "$builddir" make DESTDIR="$pkgdir" install rm -f "$pkgdir"/usr/share/X11/xkb/compiled install -m755 -d "$pkgdir"/var/lib/xkb - install -Dm644 COPYING "$pkgdir"/usr/share/licenses/$pkgname/COPYING } -sha512sums="2d9d6bdd885edc8e03e5a2c136c3b29b4ea795122709fa210bf151c4e7416a44fa2928bb29137ee8c6691d8646c1f645748576dea3f940ce84c8d4d0f91e09eb xkeyboard-config-2.25.tar.bz2" +sha512sums="5c8a31f7a6ad5daed8a3fceb56230b2e2fc04a25f52a43b3b4ea81e4a6ab15c52869f749c4b747d855cd4b618c04bcbb40e85dec7eab31fbe3bd45e8c9b755ef xkeyboard-config-2.26.tar.bz2" diff --git a/user/xlogo/APKBUILD b/user/xlogo/APKBUILD index 6ed763de5..ff675f734 100644 --- a/user/xlogo/APKBUILD +++ b/user/xlogo/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=xlogo -pkgver=1.0.4 +pkgver=1.0.5 pkgrel=0 pkgdesc="Display the X11 logo" url="https://www.X.Org/" @@ -13,14 +13,7 @@ makedepends="libsm-dev libx11-dev libxaw-dev libxext-dev libxmu-dev libxt-dev subpackages="$pkgname-doc" source="https://www.x.org/releases/individual/app/xlogo-$pkgver.tar.bz2" -prepare() { - cd "$builddir" - default_prepare - update_config_sub -} - build() { - cd "$builddir" ./configure \ --build=$CBUILD \ --host=$CHOST \ @@ -32,13 +25,11 @@ build() { } check() { - cd "$builddir" make check } package() { - cd "$builddir" make DESTDIR="$pkgdir" install } -sha512sums="cbfcd48425e697950907ddeaec2f06e0607ebf2e93e6799bd263230f036b3021279c2f379de55fae15b403af5f18292caa79159ed544a4a3314b90c85ac9804d xlogo-1.0.4.tar.bz2" +sha512sums="0d78e269b0be3c5de71de7f362b896bfd9934ecd9d0361b3302399b1269e029c4a9f35418d792121a1edc34405d753f9d69c996cc3a69ac717f2b0d1f736406b xlogo-1.0.5.tar.bz2" diff --git a/user/xlsatoms/APKBUILD b/user/xlsatoms/APKBUILD index bc05dceb0..5e9ff64a0 100644 --- a/user/xlsatoms/APKBUILD +++ b/user/xlsatoms/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=xlsatoms -pkgver=1.1.2 +pkgver=1.1.3 pkgrel=0 pkgdesc="List interned atoms in an X11 server" url="https://www.X.Org/" @@ -10,10 +10,9 @@ license="X11" depends="" makedepends="libxcb-dev util-macros" subpackages="$pkgname-doc" -source="https://www.x.org/releases/individual/app/xlsatoms-$pkgver.tar.bz2" +source="https://www.X.Org/releases/individual/app/xlsatoms-$pkgver.tar.bz2" build() { - cd "$builddir" ./configure \ --build=$CBUILD \ --host=$CHOST \ @@ -25,13 +24,11 @@ build() { } check() { - cd "$builddir" make check } package() { - cd "$builddir" make DESTDIR="$pkgdir" install } -sha512sums="f29001de22818792212312f1b9daee1bf7afa2ef2ae945cd8c14bdc1a7bb40064d3878c5efea60458ac0bf515ab1ece16fa90cbd2b0a879a5f07f3aa3e6a0baa xlsatoms-1.1.2.tar.bz2" +sha512sums="c267ccfdc5a83e834bfb5c3b144e22642badcadef4eb146eeec2df6fe6f85e9379500ae4219912c70fa2e535036a1a96cf496381f5d814e79af075e03c975f30 xlsatoms-1.1.3.tar.bz2" diff --git a/user/xmlsec/APKBUILD b/user/xmlsec/APKBUILD index fb55ea436..171427b55 100644 --- a/user/xmlsec/APKBUILD +++ b/user/xmlsec/APKBUILD @@ -1,6 +1,7 @@ # Maintainer: Max Rees <maxcrees@me.com> pkgname=xmlsec -pkgver=1.2.27 +pkgver=1.2.28 +_pkgver=1_2_28 pkgrel=0 pkgdesc="C-based XML signature and encryption syntax and processing library" url="https://github.com/lsh123/$pkgname/" @@ -12,17 +13,15 @@ checkdepends="nss-tools" makedepends="$depends_dev libxml2-dev libxslt-dev nss-dev openssl-dev autoconf automake libtool" subpackages="$pkgname-nss $pkgname-dev $pkgname-doc" -source="$url/archive/$pkgname-${pkgver//./_}.tar.gz" -builddir="$srcdir/$pkgname-$pkgname-${pkgver//./_}" +source="$url/archive/$pkgname-$_pkgver.tar.gz" +builddir="$srcdir/$pkgname-$pkgname-$_pkgver" prepare() { - cd "$builddir" default_prepare ./autogen.sh } build() { - cd "$builddir" ./configure \ --build=$CBUILD \ --host=$CHOST \ @@ -37,12 +36,10 @@ build() { } check() { - cd "$builddir" make -k check } package() { - cd "$builddir" make DESTDIR="$pkgdir" install install -m755 -d "$pkgdir/usr/share/licenses/$pkgname" @@ -56,4 +53,4 @@ nss() { mv "$pkgdir"/usr/lib/libxmlsec1-nss.so* "$subpkgdir"/usr/lib/ } -sha512sums="261528086adc379942861b5950e5b34ffa52a49d0fedcb46bece50c920fd56af4f0472494419bfa5e3cb40abda335b3e9c11466c42273f125b50d204b4604798 xmlsec-1_2_27.tar.gz" +sha512sums="fb0c775f6455ce5a5579a69bb91d60fe90c023e538c32bdf2a70aa413a53b22ef938349a3ce6b42bb23f8f70b4e00f1b9917f877487bb1507c927ec70c3d95f5 xmlsec-1_2_28.tar.gz" diff --git a/user/xmodmap/APKBUILD b/user/xmodmap/APKBUILD index 58e14c998..abf6c45ba 100644 --- a/user/xmodmap/APKBUILD +++ b/user/xmodmap/APKBUILD @@ -1,8 +1,8 @@ # Contributor: Sören Tempel <soeren+alpine@soeren-tempel.net> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=xmodmap -pkgver=1.0.9 -pkgrel=3 +pkgver=1.0.10 +pkgrel=0 pkgdesc="Utility for modifying key and mouse button mappings in X11" url="https://www.X.Org/" arch="all" @@ -13,7 +13,6 @@ subpackages="$pkgname-doc" source="https://www.X.Org/releases/individual/app/$pkgname-$pkgver.tar.bz2" build () { - cd "$builddir" ./configure \ --build=$CBUILD \ --host=$CHOST \ @@ -25,14 +24,11 @@ build () { } check() { - cd "$builddir" make check } package() { - cd "$builddir" make DESTDIR="$pkgdir" install - install -Dm644 COPYING "$pkgdir"/usr/share/licenses/$pkgname/COPYING } -sha512sums="6e50f2ba072ec171bd3fc34f75b21c63f9834f3c0f1608c857f80a4b2c8a9696b03dde79f8342bf67504b759297bc24a64056a625d295a4f89dd31eb938400ac xmodmap-1.0.9.tar.bz2" +sha512sums="324c7dcef843186088f16b3bc47485eb3c9b4331e56ce43b692deb4bb3d4f4f27512480e91a379cceac8383df920dc5e37cd825246b50b6343291cec48134c04 xmodmap-1.0.10.tar.bz2" diff --git a/user/xmore/APKBUILD b/user/xmore/APKBUILD index bf2d861bd..75514d1f1 100644 --- a/user/xmore/APKBUILD +++ b/user/xmore/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=xmore -pkgver=1.0.2 +pkgver=1.0.3 pkgrel=0 pkgdesc="Display text files using X11" url="https://www.X.Org/" @@ -10,16 +10,9 @@ license="X11" depends="" makedepends="libxaw-dev util-macros" subpackages="$pkgname-doc" -source="https://www.x.org/releases/individual/app/xmore-$pkgver.tar.bz2" - -prepare() { - cd "$builddir" - default_prepare - update_config_sub -} +source="https://www.X.Org/releases/individual/app/xmore-$pkgver.tar.bz2" build() { - cd "$builddir" ./configure \ --build=$CBUILD \ --host=$CHOST \ @@ -31,13 +24,11 @@ build() { } check() { - cd "$builddir" make check } package() { - cd "$builddir" make DESTDIR="$pkgdir" install } -sha512sums="718ad254beaae57475cead3815fc7625692699c76749c64e3aeb722daf5e1cecbea9d1207e3427d6a5d0aa240a6aaf678ea1656d6731b9f47e1a8045d62c3efb xmore-1.0.2.tar.bz2" +sha512sums="e3e44831cd87a54bb585f80ef0d87f69dc35f6c834a73241aad9f6e2b0999b53c51a0a3f915a94ae4d6dc9bdfb9f60b6576f0bdcec441443abd98efa6c51b1d3 xmore-1.0.3.tar.bz2" diff --git a/user/xorg-gtest/APKBUILD b/user/xorg-gtest/APKBUILD new file mode 100644 index 000000000..572976147 --- /dev/null +++ b/user/xorg-gtest/APKBUILD @@ -0,0 +1,51 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=xorg-gtest +pkgver=0.7.1 +pkgrel=0 +pkgdesc="X extensions to googletest" +url="https://gitlab.freedesktop.org/xorg/test/xorg-gtest" +arch="noarch" +options="!check" # tests require X +license="MIT AND BSD-3-Clause" +depends="" +makedepends="libx11-dev libxi-dev util-macros xorg-server-dev xf86-video-dummy" +subpackages="$pkgname-dev" +source="https://gitlab.freedesktop.org/xorg/test/xorg-gtest/-/archive/xorg-gtest-$pkgver/xorg-gtest-xorg-gtest-$pkgver.tar.bz2 + remove-ridiculous-va_list-hacks.patch + " +builddir="$srcdir"/$pkgname-$pkgname-$pkgver + +prepare() { + cd "$builddir" + default_prepare + ./autogen.sh +} + +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" + DESTDIR="$pkgdir" make install + for i in gtest gtest-spi; do + rm "$pkgdir"/usr/include/gtest/"$i".h + done +} + +sha512sums="100746225dd6b24f030893da7b960c2f2562fa9f5d02ee7fca3eb99c40e3ae17d408d5e3c4e99e05e3767984d48648d5a42473a9922d699cf1281290af1eb86c xorg-gtest-xorg-gtest-0.7.1.tar.bz2 +14055ccca54d083d231084acda63b0769946d1d2d8243752842c1043db6638ac3e581021bb61e6e2b97566b075ed345a2949646886281e58a1e3679d949d2f34 remove-ridiculous-va_list-hacks.patch" diff --git a/user/xorg-gtest/remove-ridiculous-va_list-hacks.patch b/user/xorg-gtest/remove-ridiculous-va_list-hacks.patch new file mode 100644 index 000000000..b26d6a888 --- /dev/null +++ b/user/xorg-gtest/remove-ridiculous-va_list-hacks.patch @@ -0,0 +1,24 @@ +--- xorg-gtest-xorg-gtest-0.7.1/src/process.cpp.old 2013-02-24 22:15:08.000000000 +0000 ++++ xorg-gtest-xorg-gtest-0.7.1/src/process.cpp 2019-04-09 16:12:31.822094989 +0000 +@@ -126,15 +126,12 @@ + + void xorg::testing::Process::Start(const std::string& program, va_list args) { + std::vector<std::string> argv; +- +- if (args) { +- char *arg; +- do { +- arg = va_arg(args, char*); +- if (arg) +- argv.push_back(std::string(arg)); +- } while (arg); +- } ++ char *arg; ++ do { ++ arg = va_arg(args, char*); ++ if (arg) ++ argv.push_back(std::string(arg)); ++ } while (arg); + + Start(program, argv); + } diff --git a/user/xprop/APKBUILD b/user/xprop/APKBUILD index 6ea54cbb0..1339105a2 100644 --- a/user/xprop/APKBUILD +++ b/user/xprop/APKBUILD @@ -1,7 +1,7 @@ # Contributor: Natanael Copa <ncopa@alpinelinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=xprop -pkgver=1.2.3 +pkgver=1.2.4 pkgrel=0 pkgdesc="X11 property inspector" url="https://cgit.freedesktop.org/xorg/app/xprop/" @@ -13,7 +13,6 @@ subpackages="$pkgname-doc" source="https://www.X.Org/archive/individual/app/xprop-$pkgver.tar.bz2" build() { - cd "$builddir" ./configure \ --build=$CBUILD \ --host=$CHOST \ @@ -22,13 +21,11 @@ build() { } check() { - cd "$builddir" make check } package() { - cd "$builddir" make DESTDIR="$pkgdir" install } -sha512sums="ad7987fec11ae19b7adc3b0f683fc393e95155f3b6c753d1d8744aedcfb360452eee5735a4c380152b286905931515f3e1a28676b5531001eb8dd93b7249916a xprop-1.2.3.tar.bz2" +sha512sums="6e770cb89ba87ae057858cc9f0f5498979e78c3ef66ce86361b7c646cc0b70c41a18d76e55ed7225fe715b22b62bc07c56272519a2631b92832e9403ce260da7 xprop-1.2.4.tar.bz2" diff --git a/user/xrdb/APKBUILD b/user/xrdb/APKBUILD index cf528a143..b82a20f35 100644 --- a/user/xrdb/APKBUILD +++ b/user/xrdb/APKBUILD @@ -2,7 +2,7 @@ # Contributor: Natanael Copa <ncopa@alpinelinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=xrdb -pkgver=1.1.1 +pkgver=1.2.0 pkgrel=0 pkgdesc="Utility to manipulate the X11 server resources database" url="https://www.X.Org/" @@ -14,7 +14,6 @@ subpackages="$pkgname-doc" source="https://www.X.Org/releases/individual/app/$pkgname-$pkgver.tar.bz2" build() { - cd "$builddir" ./configure \ --build=$CBUILD \ --host=$CHOST \ @@ -27,13 +26,11 @@ build() { } check() { - cd "$builddir" make check } package() { - cd "$builddir" make DESTDIR="$pkgdir" install } -sha512sums="20c342004ef911fc4d3ef4ac3ac15d1c30bb946b8156f3a6916c242e470be0cb63261563462fd1e2e07b1a7cc527b8cacf5f913e31b02196629a95043cf8d13f xrdb-1.1.1.tar.bz2" +sha512sums="14e1cdfb2152fb28f1f4641b177ab236648d7e967a95b952bf4cfce8d3e1ef085e85385354e3381aaf644462e8888a1847f755ab4016ecb4cb4a715b001dd2ef xrdb-1.2.0.tar.bz2" diff --git a/user/xsane/APKBUILD b/user/xsane/APKBUILD index 77a83e2d8..05cf220e4 100644 --- a/user/xsane/APKBUILD +++ b/user/xsane/APKBUILD @@ -13,7 +13,7 @@ makedepends="gtk+2.0-dev lcms2-dev libjpeg-turbo-dev libpng-dev sane-dev tiff-dev" subpackages="$pkgname-doc $pkgname-lang" langdir="/usr/lib/locale" -source="https://distfiles.gentoo.org/distfiles/xsane-$pkgver.tar.gz +source="http://distfiles.gentoo.org/distfiles/xsane-$pkgver.tar.gz xsane-0.999-lcms2.patch xsane-0.999-libpng16.patch " diff --git a/user/xscreensaver/APKBUILD b/user/xscreensaver/APKBUILD new file mode 100644 index 000000000..06f648560 --- /dev/null +++ b/user/xscreensaver/APKBUILD @@ -0,0 +1,37 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=xscreensaver +pkgver=5.42 +pkgrel=0 +pkgdesc="X Screensaver suite" +url="https://www.jwz.org/xscreensaver/" +arch="all" +options="!check suid" # no tests +license="MIT" +depends="" +makedepends="bc gtk+2.0-dev intltool libglade-dev libice-dev libjpeg-turbo-dev + libx11-dev libxft-dev libxinerama-dev libxml2-dev libxml2-utils + libxrandr-dev libxt-dev linux-pam-dev mesa-dev mesa-glapi" +subpackages="$pkgname-doc $pkgname-lang" +source="https://www.jwz.org/xscreensaver/xscreensaver-$pkgver.tar.gz + xscreensaver-fixes.patch" + +build() { + cd "$builddir" + ./configure \ + --build=$CBUILD \ + --host=$CHOST \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --localstatedir=/var + make +} + +package() { + cd "$builddir" + make install_prefix="$pkgdir" install +} + +sha512sums="84cde9364c933de720acd51a0bf75eb4d0642d60f62b92de89d932233eb5abb51e1edb53cd413b2dc4801a02cb68652a28d7d1f83cdaa8d8cdd1fee7d651eefd xscreensaver-5.42.tar.gz +1df5d3a1456990eb0b2a9efb65fcd26ce576e470a0d6ee268e84e4b399dda930f5ed0960d185e55a7fdab10e5dc42fa2c90060b16443954ec2fce306c8855b54 xscreensaver-fixes.patch" diff --git a/user/xscreensaver/xscreensaver-fixes.patch b/user/xscreensaver/xscreensaver-fixes.patch new file mode 100644 index 000000000..0f5381902 --- /dev/null +++ b/user/xscreensaver/xscreensaver-fixes.patch @@ -0,0 +1,14 @@ +diff -Nurd xscreensaver-5.42/hacks/fontglide.c xscreensaver-5.42.new/hacks/fontglide.c +--- xscreensaver-5.42/hacks/fontglide.c 2018-09-02 17:56:45.000000000 -0500 ++++ xscreensaver-5.42.new/hacks/fontglide.c 2019-03-24 14:09:46.559263834 -0500 +@@ -2421,8 +2421,8 @@ + + textclient_close (s->tc); + +-// if (s->b && s->b != s->window) XFreePixmap (dpy, s->b); +-// if (s->ba && s->ba != s->b) XFreePixmap (dpy, s->ba); ++/* if (s->b && s->b != s->window) XFreePixmap (dpy, s->b); */ ++/* if (s->ba && s->ba != s->b) XFreePixmap (dpy, s->ba); */ + XFreeGC (dpy, s->bg_gc); + if (s->charset) free (s->charset); + if (s->font_override) free (s->font_override); diff --git a/user/xstdcmap/APKBUILD b/user/xstdcmap/APKBUILD index 5c2622cf3..076ac3256 100644 --- a/user/xstdcmap/APKBUILD +++ b/user/xstdcmap/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=xstdcmap -pkgver=1.0.3 +pkgver=1.0.4 pkgrel=0 pkgdesc="Define standard X11 colour map properties" url="https://www.X.Org/" @@ -10,17 +10,9 @@ license="X11" depends="" makedepends="libx11-dev libxmu-dev util-macros xorgproto-dev" subpackages="$pkgname-doc" -source="https://www.x.org/releases/individual/app/xstdcmap-$pkgver.tar.bz2" - -prepare() { - cd "$builddir" - default_prepare - chmod a+w config.sub - update_config_sub -} +source="https://www.X.Org/releases/individual/app/xstdcmap-$pkgver.tar.bz2" build() { - cd "$builddir" ./configure \ --build=$CBUILD \ --host=$CHOST \ @@ -32,13 +24,11 @@ build() { } check() { - cd "$builddir" make check } package() { - cd "$builddir" make DESTDIR="$pkgdir" install } -sha512sums="8037ddb9c6b8f3a65d35637a1fca2b1b6c7e76afce5c13b1947cf72c3ca87679aa2ed05caf308d90549432b7fe029a522a99f32701bd0087c140bf4fafdb4d49 xstdcmap-1.0.3.tar.bz2" +sha512sums="2adbb0aec1766341e04090efa962241ff6c9e32c612851b7221cec0ee16852107d406a08ec5251070f39df882c13e3c8c9edcd88f278187a9f373e1727643a8f xstdcmap-1.0.4.tar.bz2" diff --git a/user/xterm/APKBUILD b/user/xterm/APKBUILD index 5466d1c55..859f3ea61 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=344 +pkgver=346 pkgrel=0 pkgdesc="An X-based terminal emulator" url="https://invisible-island.net/xterm/" @@ -9,9 +9,10 @@ arch="all" options="!check" # no tests license="X11" makedepends="libx11-dev libsm-dev libice-dev libxt-dev utmps-dev libxaw-dev - libxext-dev freetype-dev ncurses-dev pcre-dev" + libxext-dev libxrender-dev libxft-dev freetype-dev ncurses-dev + pcre-dev" subpackages="$pkgname-doc" -source="ftp://ftp.invisible-island.net/xterm/xterm-$pkgver.tgz +source="https://invisible-mirror.net/archives/xterm/xterm-$pkgver.tgz posix-ptmx.patch " @@ -44,5 +45,5 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="872f69e13ad8e26de355f7611dabc7a66e2f6b00313b440b8054cc4fa0fbde936dd8d54ec09c892e8760080acaccbd8b7e72cdcbebb291dd92e01593eb14e91a xterm-344.tgz +sha512sums="ef0db8132a88b8bd980343007a61ca3c4c1b7ece23ef8e72245a17fa8305fa4dfed9cdf0613d8daf60da53fb8b03d41acd22aee04f2d51aeffb4a340268f51f7 xterm-346.tgz e29ef756243faa6f5ced3c74d6879b4fc8f9839501becae49af4f458d0f499bcda40a0eb66dada9cae8bf9789256daf3d1605ac1b5b4301654d8b5ac6eaca81d posix-ptmx.patch" diff --git a/user/xtrans/APKBUILD b/user/xtrans/APKBUILD index 7a3a74a93..a65dd7dc3 100644 --- a/user/xtrans/APKBUILD +++ b/user/xtrans/APKBUILD @@ -1,7 +1,7 @@ # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=xtrans -pkgver=1.3.5 -pkgrel=1 +pkgver=1.4.0 +pkgrel=0 pkgdesc="X transport library" url="https://www.X.Org/" arch="noarch" @@ -12,7 +12,6 @@ subpackages="$pkgname-doc" source="https://www.X.Org/releases/individual/lib/$pkgname-$pkgver.tar.bz2" build() { - cd "$builddir" ./configure \ --build=$CBUILD \ --host=$CHOST \ @@ -21,14 +20,11 @@ build() { } check() { - cd "$builddir" make check } package() { - cd "$builddir" make DESTDIR="$pkgdir" install - install -Dm644 COPYING "$pkgdir"/usr/share/licenses/$pkgname/COPYING } -sha512sums="049fb996313e8a1625b66e1645a5f56d8a26c5dd91afe5869269716fce05f6c97c84f8ce4a6df2057106b47982c8291cecc223bef241f694174434c981a7029b xtrans-1.3.5.tar.bz2" +sha512sums="4fea89a3455c0e13321cbefa43340016dbb59bdd0dbdb5b796c1a6d2a6b1fd63cf1327b769ab426286b9c54b32ec764a50cd2b46228e4e43b841bda6b94de214 xtrans-1.4.0.tar.bz2" diff --git a/user/xvinfo/APKBUILD b/user/xvinfo/APKBUILD index 82d0e29ad..311f48b01 100644 --- a/user/xvinfo/APKBUILD +++ b/user/xvinfo/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=xvinfo -pkgver=1.1.3 +pkgver=1.1.4 pkgrel=0 pkgdesc="View information about video adaptors attached to X11" url="https://www.X.Org/" @@ -10,10 +10,9 @@ license="X11" depends="" makedepends="libxv-dev" subpackages="$pkgname-doc" -source="https://www.x.org/releases/individual/app/xvinfo-$pkgver.tar.bz2" +source="https://www.X.Org/releases/individual/app/xvinfo-$pkgver.tar.bz2" build() { - cd "$builddir" ./configure \ --build=$CBUILD \ --host=$CHOST \ @@ -25,13 +24,11 @@ build() { } check() { - cd "$builddir" make check } package() { - cd "$builddir" make DESTDIR="$pkgdir" install } -sha512sums="df8356898390d2aec4fbd15cee1627bb86b57ff8af41a527d4f6f6703a81f399a3098da342b94af6d4cf4a817d9fda1946a206bfbe3995e87ceb9910bb8b51bc xvinfo-1.1.3.tar.bz2" +sha512sums="85e1f936c5c826f0fdde3670bd77d5cde8641c6e8e7849e42142e91b5aa01d7e0e60d2b064eb6fef4f5666321813ca2dc9f9656756ccbe6dcda37b119ee8a63e xvinfo-1.1.4.tar.bz2" diff --git a/user/youtube-dl/APKBUILD b/user/youtube-dl/APKBUILD index af5d02712..d7a2f6888 100644 --- a/user/youtube-dl/APKBUILD +++ b/user/youtube-dl/APKBUILD @@ -3,7 +3,7 @@ # Contributor: Timo Teräs <timo.teras@iki.fi> # Maintainer: Max Rees <maxcrees@me.com> pkgname=youtube-dl -pkgver=2018.11.23 +pkgver=2019.04.17 pkgrel=0 pkgdesc="Command-line program to download videos from YouTube and many other sites" url="https://youtube-dl.org" @@ -27,12 +27,10 @@ prepare() { } check() { - cd "$builddir" python3 -m unittest discover } package() { - cd "$builddir" python3 setup.py install --root="$pkgdir/" --optimize=1 } @@ -65,4 +63,4 @@ fishcomp() { "$subpkgdir/usr/share/fish/completions/" } -sha512sums="d4d2813657972c37d3493743a44055d7a776aeb5c5a97902e07caa317a3b2db30332507c37b56b3d8554e0bdc2a0ec6a9862977b449b363343a4de2df12bf059 youtube-dl-2018.11.23.tar.gz" +sha512sums="6277a96a6487d81be23e0772c8e6fa36337d5b2b90a50b9be328579334b92c6e1a6eb9634a66969435c0d47e734fb907e286578cbc2f693565055ed1111b8148 youtube-dl-2019.04.17.tar.gz" diff --git a/user/z3/APKBUILD b/user/z3/APKBUILD new file mode 100644 index 000000000..2864319ac --- /dev/null +++ b/user/z3/APKBUILD @@ -0,0 +1,40 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: A. Wilcox <awilfox@adelielinux.org> +pkgname=z3 +pkgver=4.8.4 +pkgrel=0 +pkgdesc="Mathematical theorem prover" +url=" " +arch="all" +license="MIT" +depends="" +makedepends="gmp-dev python3-dev cmd:which" +subpackages="$pkgname-dev py3-$pkgname:py3:noarch" +source="https://github.com/Z3Prover/z3/archive/z3-$pkgver.tar.gz" +builddir="$srcdir/z3-z3-$pkgver" + +build() { + PYTHON=python3 ./configure \ + --prefix=/usr \ + --gmp \ + --python + make -C build +} + +check() { + make -C build test-z3 + build/test-z3 /a +} + +package() { + make -C build DESTDIR="$pkgdir" install +} + +py3() { + pkgdesc="$pkgdesc (Python bindings)" + depends="python3" + mkdir -p "$subpkgdir"/usr/lib + mv "$pkgdir"/usr/lib/python3* "$subpkgdir"/usr/lib/ +} + +sha512sums="4660ba6ab33a6345b2e8396c332d4afcfc73eda66ceb2595a39f152df4d62a9ea0f349b0f9212389ba84ecba6bdae6ad9b62b376ba44dc4d9c74f80d7a818bf4 z3-4.8.4.tar.gz" diff --git a/user/zenity/APKBUILD b/user/zenity/APKBUILD new file mode 100644 index 000000000..234508b94 --- /dev/null +++ b/user/zenity/APKBUILD @@ -0,0 +1,37 @@ +# Contributor: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +# Maintainer: Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com> +pkgname=zenity +pkgver=3.32.0 +pkgrel=0 +pkgdesc="GTK-based dialog utility" +url="https://gnome.org" +arch="all" +license="GPL-2.0+" +depends="" +makedepends="gtk+3.0-dev itstool libxml2-utils" +subpackages="$pkgname-doc $pkgname-lang" +source="https://download.gnome.org/sources/zenity/${pkgver%.*}/zenity-$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="d057df25dbb2d780c6be184ec167b0f569eadf0ac1c460d63509843157f14dfdcebe46bb6f93b17c6069ef0208902ce9ecbb4025933f7dc7572323032ec34fda zenity-3.32.0.tar.xz" diff --git a/user/zstd/APKBUILD b/user/zstd/APKBUILD index b930a1a1e..e47eceb12 100644 --- a/user/zstd/APKBUILD +++ b/user/zstd/APKBUILD @@ -1,31 +1,27 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=zstd -pkgver=1.3.7 +pkgver=1.4.0 pkgrel=0 pkgdesc="Fast real-time compression algorithm" url="https://facebook.github.io/zstd/" arch="all" license="BSD-3-Clause AND GPL-2.0-only" depends="" -depends_dev="" -makedepends="$depends_dev lz4-dev xz-dev zlib-dev" +makedepends="lz4-dev xz-dev zlib-dev" subpackages="$pkgname-dev $pkgname-doc" source="https://github.com/facebook/zstd/releases/download/v$pkgver/zstd-$pkgver.tar.gz" build() { - cd "$builddir" make PREFIX="/usr" } check() { - cd "$builddir" make PREFIX="/usr" check } package() { - cd "$builddir" make PREFIX="/usr" DESTDIR="$pkgdir" install } -sha512sums="fb9ac61b79b22a628e602e68f7c59c85a00020f7f25b8653076895da7589ca1203adc7fe3d9b865f36648bc30d765b9630cf0955f970596253da74c089b97af1 zstd-1.3.7.tar.gz" +sha512sums="ef6d95639593fed3cfb9ff4f1527c4ba38658e42f16eb3369b2a4bbe150905751bb71c6e3fe9c8bbdfceee26a540ae3e41bd0f0bc692d36db444b7da65a6e304 zstd-1.4.0.tar.gz" |