diff options
author | Nicolás Reynolds <fauno@endefensadelsl.org> | 2014-02-15 03:33:23 +0000 |
---|---|---|
committer | Nicolás Reynolds <fauno@endefensadelsl.org> | 2014-02-15 03:33:23 +0000 |
commit | 34276794ce110cd2f9204e4b504aea41fb584145 (patch) | |
tree | 614343b8dd17e74468019c46daabd3861ef8dfbc | |
parent | 86a5624291a8a72d9a0a2c51fcc64bf6e221524b (diff) |
Sat Feb 15 03:31:19 UTC 2014
50 files changed, 458 insertions, 2647 deletions
diff --git a/community/argyllcms/PKGBUILD b/community/argyllcms/PKGBUILD index 21110bd41..4c7d808b3 100644 --- a/community/argyllcms/PKGBUILD +++ b/community/argyllcms/PKGBUILD @@ -1,21 +1,22 @@ -# $Id: PKGBUILD 102451 2013-12-11 14:31:37Z tredaelli $ +# $Id: PKGBUILD 105726 2014-02-14 14:17:13Z tredaelli $ # Maintainer: Timothy Redaelli <timothy.redaelli@gmail.com> # Contributor: Frank Ickstadt (frank dot ickstadt at gmail dot com) pkgname=argyllcms _pkgname=Argyll -pkgver=1.6.2 +pkgver=1.6.3 _pkgver="V${pkgver}" pkgrel=1 pkgdesc="An ICC compatible color management system with support for different colorimeter hardware" arch=(i686 x86_64) depends=('libxss' 'libxinerama' 'libxxf86vm' 'libxrandr') makedepends=('ftjam' 'zip' 'unzip') +# You need to fake an UserAgent or it doesn't download source=(http://www.argyllcms.com/${_pkgname}_${_pkgver}_src.zip) url="http://www.argyllcms.com/" license=("GPL" "AGPL") install=${pkgname}.install -sha256sums=('c21591d5615a584df438ecbfe7858fde571f6066e56da436c541d08ca899ac9f') +sha256sums=('188beaa03dd2459403415023f8f8f9aab362bf3062a9822b3622dde6902e4b84') build() { cd ${_pkgname}_${_pkgver} diff --git a/community/dart/PKGBUILD b/community/dart/PKGBUILD index cf803512e..f353194ca 100644 --- a/community/dart/PKGBUILD +++ b/community/dart/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 104347 2014-01-18 17:45:23Z arodseth $ +# $Id: PKGBUILD 105737 2014-02-14 17:58:11Z arodseth $ # Maintainer: Alexander Rødseth <rodseth@gmail.com> # Contributor: T. Jameson Little <t.jameson.little at gmail dot com> # Contributor: Usagi Ito <usagi@WonderRabbitProject.net> @@ -6,7 +6,7 @@ # Contributor: Julien Nicoulaud <julien.nicoulaud@gmail.com> pkgname=dart -pkgver=1.1.1 +pkgver=1.1.3 pkgrel=1 pkgdesc='The dart programming language SDK' arch=('x86_64' 'i686') @@ -19,13 +19,13 @@ options=('!strip') if [[ $CARCH == x86_64 ]]; then source=("$pkgname-$pkgver-64.zip::http://storage.googleapis.com/dart-archive/channels/stable/release/latest/sdk/dartsdk-linux-x64-release.zip" 'license.html::https://code.google.com/intl/no/google_bsd_license.html') - sha256sums=('baf8afd92642da97ec5b13d645e37226d1a20447cad7f2b06f8bb07417219d42' - 'de16a5ac94310b1bdfc27a2a6d620531172bb31af894caeced37af41fb8e2650') + sha256sums=('5019225dd58ffba9ae726f100993345e2801f7b59f6b49edbb5020ec3621e67a' + 'de16a5ac94310b1bdfc27a2a6d620531172bb31af894caeced37af41fb8e2650') else source=("$pkgname-$pkgver-32.zip::http://storage.googleapis.com/dart-archive/channels/stable/release/latest/sdk/dartsdk-linux-ia32-release.zip" 'license.html::https://code.google.com/intl/no/google_bsd_license.html') - sha256sums=('50863be94cff179588aca084a4f40ebd23514447cffd73679b5850e7c6fc768c' - 'de16a5ac94310b1bdfc27a2a6d620531172bb31af894caeced37af41fb8e2650') + sha256sums=('de33b20167727d50903c1cf33d86320472d728f93641ec37a541a233e377acc4' + 'de16a5ac94310b1bdfc27a2a6d620531172bb31af894caeced37af41fb8e2650') fi prepare() { diff --git a/community/dispcalgui/PKGBUILD b/community/dispcalgui/PKGBUILD index befa56d85..575707a27 100644 --- a/community/dispcalgui/PKGBUILD +++ b/community/dispcalgui/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 104543 2014-01-22 15:26:47Z tredaelli $ +# $Id: PKGBUILD 105728 2014-02-14 14:41:06Z tredaelli $ # Maintainer: Timothy Redaelli <timothy.redaelli@gmail.com> # Contributor: Cedric Girard <girard.cedric@gmail.com> # Contributor: foxbunny <bg.branko@gmail.com> pkgname=dispcalgui -pkgver=1.7.1.6 +pkgver=1.7.5.7 pkgrel=1 pkgdesc="A GUI frontend for several utilities from the open source color management system Argyll CMS" arch=('i686' 'x86_64') @@ -16,7 +16,7 @@ optdepends=('gksu: For running as root') install=${pkgname}.install source=("http://downloads.sourceforge.net/project/dispcalgui/release/${pkgver}/dispcalGUI-${pkgver}.tar.gz" dispcalGUI-1.5.3.1-wxgtk3.patch) -md5sums=('c51f5a6354b16342fd4ec3e0bb1bb4eb' +md5sums=('7a66051d244f1b734448a865b50fae01' 'b8001e5cbbb849f9ba95e0ef9fb1d073') prepare() { diff --git a/community/hostapd/PKGBUILD b/community/hostapd/PKGBUILD index 4eeec6596..828a36e47 100644 --- a/community/hostapd/PKGBUILD +++ b/community/hostapd/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 105315 2014-02-04 20:54:33Z spupykin $ +# $Id: PKGBUILD 105700 2014-02-14 09:18:44Z spupykin $ # Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> pkgname=hostapd pkgver=2.1 -pkgrel=1 +pkgrel=2 pkgdesc="IEEE 802.11 AP, IEEE 802.1X/WPA/WPA2/EAP/RADIUS Authenticator" arch=('i686' 'x86_64') url="http://w1.fi/hostapd/" @@ -24,7 +24,7 @@ source=(http://w1.fi/releases/$pkgname-$pkgver.tar.gz config hostapd.service) md5sums=('bb9c50e87c5af6f89f387e63911effac' - '5d7ee10b04e33f22c37be56a4c33dddb' + 'eab3ae853869f832965f59898bb04a52' 'a0a16879eed5e4e41ae6b225a4809955') build() { diff --git a/community/hostapd/config b/community/hostapd/config index a11ebd587..55c6ed257 100644 --- a/community/hostapd/config +++ b/community/hostapd/config @@ -90,3 +90,5 @@ CONFIG_DRIVER_NL80211=y CONFIG_IEEE80211N=y CONFIG_LIBNL32=y + +CONFIG_ACS=y diff --git a/community/hostapd/hostapd.install b/community/hostapd/hostapd.install index d838c6a47..072cde845 100644 --- a/community/hostapd/hostapd.install +++ b/community/hostapd/hostapd.install @@ -1,7 +1,3 @@ post_install() { echo "> More info: https://wiki.archlinux.org/index.php/Software_Access_Point" } - -post_upgrade() { - post_install -} diff --git a/community/libdivecomputer/PKGBUILD b/community/libdivecomputer/PKGBUILD index 501254b0d..128d186c5 100644 --- a/community/libdivecomputer/PKGBUILD +++ b/community/libdivecomputer/PKGBUILD @@ -1,10 +1,10 @@ -# $id$ +# $Id: PKGBUILD 105692 2014-02-14 05:51:19Z bisson $ # Contributor: Francois Boulogne <fboulogne at april dot org> # Maintainer: Gaetan Bisson <bisson@archlinux.org> pkgname=libdivecomputer pkgver=0.4.2 -pkgrel=1 +pkgrel=2 pkgdesc='Library for communication with dive computers' url='http://www.libdivecomputer.org/' license=('LGPL') @@ -14,7 +14,10 @@ sha1sums=('a57176ae6a7bd5e0ad4d19a39e5aebcfba818acc') build() { cd "${srcdir}/${pkgname}-${pkgver}" - ./configure --prefix=/usr + ./configure \ + --prefix=/usr \ + --program-prefix="${pkgname}-" \ + make } diff --git a/community/liblinebreak/PKGBUILD b/community/liblinebreak/PKGBUILD deleted file mode 100644 index d18340459..000000000 --- a/community/liblinebreak/PKGBUILD +++ /dev/null @@ -1,27 +0,0 @@ -# $Id: PKGBUILD 100200 2013-11-01 21:12:55Z spupykin $ -# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> -# Contributor: Orivej Desh <smpuj@bk.ru> - -pkgname=liblinebreak -pkgver=2.1 -pkgrel=2 -pkgdesc="An implementation of the line breaking algorithm as described in Unicode 5.2.0 Standard Annex 14, Revision 24" -arch=("i686" "x86_64") -url="http://vimgadgets.sourceforge.net/liblinebreak/" -license=("custom:zlib/libpng") -depends=("glibc") -source=("http://downloads.sourceforge.net/vimgadgets/liblinebreak-$pkgver.tar.gz") -md5sums=('9fe73b4b230434765be2305e50f8fe45') - -build() { - cd "$srcdir/liblinebreak-$pkgver" - ./configure --prefix=/usr - make -} - -package() { - cd "$srcdir/liblinebreak-$pkgver" - make DESTDIR="$pkgdir" install - install -Dm644 LICENCE "$pkgdir/usr/share/licenses/$pkgname/LICENSE" -} - diff --git a/community/libvirt/PKGBUILD b/community/libvirt/PKGBUILD index 13073ce0e..4c3579023 100644 --- a/community/libvirt/PKGBUILD +++ b/community/libvirt/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 105566 2014-02-10 12:00:31Z spupykin $ +# $Id: PKGBUILD 105708 2014-02-14 09:37:10Z spupykin $ # Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> # Contributor: Jonathan Wiersma <archaur at jonw dot org> pkgname=libvirt pkgver=1.2.1 -pkgrel=3 +pkgrel=4 pkgdesc="API for controlling virtualization engines (openvz,kvm,qemu,virtualbox,xen,etc)" arch=('i686' 'x86_64') url="http://libvirt.org/" @@ -23,11 +23,38 @@ optdepends=('bridge-utils: for briged networking (default)' 'ebtables' 'pm-utils: host power management') options=('emptydirs') -backup=('etc/conf.d/libvirtd' - 'etc/conf.d/libvirt-guests' - 'etc/libvirt/libvirtd.conf' +backup=('etc/conf.d/libvirt-guests' + 'etc/conf.d/libvirtd' 'etc/libvirt/libvirt.conf' + 'etc/libvirt/libvirtd.conf' + 'etc/libvirt/lxc.conf' + 'etc/libvirt/nwfilter/allow-arp.xml' + 'etc/libvirt/nwfilter/allow-dhcp-server.xml' + 'etc/libvirt/nwfilter/allow-dhcp.xml' + 'etc/libvirt/nwfilter/allow-incoming-ipv4.xml' + 'etc/libvirt/nwfilter/allow-ipv4.xml' + 'etc/libvirt/nwfilter/clean-traffic.xml' + 'etc/libvirt/nwfilter/no-arp-ip-spoofing.xml' + 'etc/libvirt/nwfilter/no-arp-mac-spoofing.xml' + 'etc/libvirt/nwfilter/no-arp-spoofing.xml' + 'etc/libvirt/nwfilter/no-ip-multicast.xml' + 'etc/libvirt/nwfilter/no-ip-spoofing.xml' + 'etc/libvirt/nwfilter/no-mac-broadcast.xml' + 'etc/libvirt/nwfilter/no-mac-spoofing.xml' + 'etc/libvirt/nwfilter/no-other-l2-traffic.xml' + 'etc/libvirt/nwfilter/no-other-rarp-traffic.xml' + 'etc/libvirt/nwfilter/qemu-announce-self-rarp.xml' + 'etc/libvirt/nwfilter/qemu-announce-self.xml' + 'etc/libvirt/qemu-lockd.conf' 'etc/libvirt/qemu.conf' + 'etc/libvirt/qemu/networks/autostart/default.xml' + 'etc/libvirt/qemu/networks/default.xml' + 'etc/libvirt/virt-login-shell.conf' + 'etc/libvirt/virtlockd.conf' + 'etc/logrotate.d/libvirtd' + 'etc/logrotate.d/libvirtd.lxc' + 'etc/logrotate.d/libvirtd.qemu' + 'etc/logrotate.d/libvirtd.uml' 'etc/sasl2/libvirt.conf') install="libvirt.install" source=("http://libvirt.org/sources/$pkgname-$pkgver.tar.gz" diff --git a/community/lightdm-gtk2-greeter/PKGBUILD b/community/lightdm-gtk2-greeter/PKGBUILD index 7e70ac084..0e0111c0f 100755 --- a/community/lightdm-gtk2-greeter/PKGBUILD +++ b/community/lightdm-gtk2-greeter/PKGBUILD @@ -1,30 +1,23 @@ -# $Id: PKGBUILD 105171 2014-02-02 11:07:34Z alucryd $ +# $Id: PKGBUILD 105741 2014-02-14 18:30:58Z alucryd $ # Maintainer: Maxime Gauduin <alucryd@gmail.com> # Contributor: Padfoot <padfoot@exemail.com.au> pkgname=lightdm-gtk2-greeter -pkgver=1.6.1 -pkgrel=2 +pkgver=1.8.1 +pkgrel=1 epoch=1 -pkgdesc="GTK+ greeter for LightDM" +pkgdesc='GTK+ greeter for LightDM' arch=('i686' 'x86_64') -url="https://launchpad.net/lightdm-gtk-greeter" +url='https://launchpad.net/lightdm-gtk-greeter' license=('GPL3' 'LGPL3') depends=('gtk2' 'lightdm') makedepends=('exo' 'gnome-doc-utils' 'gobject-introspection' 'intltool') provides=("${pkgname/2/}") conflicts=("${pkgname/2/3}") backup=('etc/lightdm/lightdm-gtk-greeter.conf') -source=("https://launchpad.net/${pkgname/2/}/1.6/${pkgver}/+download/${pkgname/2/}-${pkgver}.tar.gz" - 'fix-null-username.patch') -sha256sums=('1f0286ab093d50151f0efc46496aef3f8ed8c7306bbc81807a3fdcbcb2a468d9' - '27e1ec5f73f963ea5fbc69d4b380dbfa47a4066b35fa1a00341203568d9aa64d') - -prepare() { - cd ${pkgname/2/}-${pkgver} - - patch -Np0 -i ../fix-null-username.patch -} +install="${pkgname/2/}.install" +source=("https://launchpad.net/${pkgname/2/}/${pkgver%.?}/${pkgver}/+download/${pkgname/2/}-${pkgver}.tar.gz") +sha256sums=('dac5ce9ac54a6b3c1ef9f9cc056f13f01352c2a897c5bed11e52505132610bab') build() { cd ${pkgname/2/}-${pkgver} diff --git a/community/lightdm-gtk2-greeter/fix-null-username.patch b/community/lightdm-gtk2-greeter/fix-null-username.patch deleted file mode 100644 index 63cdf83c1..000000000 --- a/community/lightdm-gtk2-greeter/fix-null-username.patch +++ /dev/null @@ -1,83 +0,0 @@ -=== modified file 'src/lightdm-gtk-greeter.c' ---- src/lightdm-gtk-greeter.c 2014-01-07 11:02:12 +0000 -+++ src/lightdm-gtk-greeter.c 2014-01-08 00:21:56 +0000 -@@ -333,7 +333,7 @@ - gchar *s; - gboolean matched; - s = g_strdup(g_object_get_data (G_OBJECT (menu_iter->data), "session-key")); -- matched = strcmp (s, session) == 0; -+ matched = g_strcmp0 (s, session) == 0; - g_free (s); - if (matched) - { -@@ -402,7 +402,7 @@ - gchar *s; - gboolean matched; - s = g_strdup(g_object_get_data (G_OBJECT (menu_iter->data), "language-code")); -- matched = strcmp (s, language) == 0; -+ matched = g_strcmp0 (s, language) == 0; - g_free (s); - if (matched) - { -@@ -423,7 +423,7 @@ - static void - set_message_label (const gchar *text) - { -- gtk_widget_set_visible (GTK_WIDGET (info_bar), strcmp (text, "") != 0); -+ gtk_widget_set_visible (GTK_WIDGET (info_bar), g_strcmp0 (text, "") != 0); - gtk_label_set_text (message_label, text); - } - -@@ -633,13 +633,13 @@ - } - g_free (data); - -- if (strcmp (username, "*other") == 0) -+ if (g_strcmp0 (username, "*other") == 0) - { - gtk_widget_show (GTK_WIDGET (username_entry)); - gtk_widget_show (GTK_WIDGET (cancel_button)); - lightdm_greeter_authenticate (greeter, NULL); - } -- else if (strcmp (username, "*guest") == 0) -+ else if (g_strcmp0 (username, "*guest") == 0) - { - lightdm_greeter_authenticate_as_guest (greeter); - } -@@ -689,7 +689,7 @@ - gchar *user; - - gtk_tree_model_get (GTK_TREE_MODEL (model), &iter, 0, &user, -1); -- other = (strcmp (user, "*other") == 0); -+ other = (g_strcmp0 (user, "*other") == 0); - g_free (user); - } - -@@ -964,7 +964,7 @@ - - gtk_tree_model_get (GTK_TREE_MODEL (model), &iter, 0, &user, -1); - -- if (strcmp (user, "*other") == 0) -+ if (g_strcmp0 (user, "*other") == 0) - { - gtk_widget_show (GTK_WIDGET (username_entry)); - gtk_widget_show (GTK_WIDGET (cancel_button)); -@@ -1463,7 +1463,7 @@ - do - { - gtk_tree_model_get (model, &iter, 0, &name, -1); -- matched = strcmp (name, selected_user) == 0; -+ matched = g_strcmp0 (name, selected_user) == 0; - g_free (name); - if (matched) - { -@@ -1954,7 +1954,7 @@ - g_object_set (gtk_settings_get_default (), "gtk-xft-dpi", (int) (1024 * atof (value)), NULL); - value = g_key_file_get_value (config, "greeter", "xft-antialias", NULL); - if (value) -- g_object_set (gtk_settings_get_default (), "gtk-xft-antialias", strcmp (value, "true") == 0, NULL); -+ g_object_set (gtk_settings_get_default (), "gtk-xft-antialias", g_strcmp0 (value, "true") == 0, NULL); - g_free (value); - value = g_key_file_get_value (config, "greeter", "xft-hintstyle", NULL); - if (value) - diff --git a/community/lightdm-gtk2-greeter/lightdm-gtk-greeter.install b/community/lightdm-gtk2-greeter/lightdm-gtk-greeter.install new file mode 100644 index 000000000..b72f4439b --- /dev/null +++ b/community/lightdm-gtk2-greeter/lightdm-gtk-greeter.install @@ -0,0 +1,13 @@ +post_install() { + gtk-update-icon-cache -ftq usr/share/icons/hicolor +} + +post_update() { + post_install +} + +post_remove() { + post_install +} + +# vim: ts=2 sw=2 et: diff --git a/community/lightdm-gtk3-greeter/PKGBUILD b/community/lightdm-gtk3-greeter/PKGBUILD index 785711d1e..c084d4695 100755 --- a/community/lightdm-gtk3-greeter/PKGBUILD +++ b/community/lightdm-gtk3-greeter/PKGBUILD @@ -1,30 +1,23 @@ -# $Id: PKGBUILD 105173 2014-02-02 11:18:41Z alucryd $ +# $Id: PKGBUILD 105739 2014-02-14 18:25:52Z alucryd $ # Maintainer: Maxime Gauduin <alucryd@gmail.com> # Contributor: Padfoot <padfoot@exemail.com.au> pkgname=lightdm-gtk3-greeter -pkgver=1.6.1 -pkgrel=2 +pkgver=1.8.1 +pkgrel=1 epoch=1 -pkgdesc="GTK+ greeter for LightDM" +pkgdesc='GTK+ greeter for LightDM' arch=('i686' 'x86_64') -url="https://launchpad.net/lightdm-gtk-greeter" +url='https://launchpad.net/lightdm-gtk-greeter' license=('GPL3' 'LGPL3') depends=('gtk3' 'lightdm') makedepends=('exo' 'gnome-doc-utils' 'gobject-introspection' 'intltool') provides=("${pkgname/3/}") conflicts=("${pkgname/3/2}") backup=('etc/lightdm/lightdm-gtk-greeter.conf') -source=("https://launchpad.net/${pkgname/3/}/1.6/${pkgver}/+download/${pkgname/3/}-${pkgver}.tar.gz" - 'fix-null-username.patch') -sha256sums=('1f0286ab093d50151f0efc46496aef3f8ed8c7306bbc81807a3fdcbcb2a468d9' - '27e1ec5f73f963ea5fbc69d4b380dbfa47a4066b35fa1a00341203568d9aa64d') - -prepare() { - cd ${pkgname/3/}-${pkgver} - - patch -Np0 -i ../fix-null-username.patch -} +install="${pkgname/3/}.install" +source=("https://launchpad.net/${pkgname/3/}/${pkgver%.?}/${pkgver}/+download/${pkgname/3/}-${pkgver}.tar.gz") +sha256sums=('dac5ce9ac54a6b3c1ef9f9cc056f13f01352c2a897c5bed11e52505132610bab') build() { cd ${pkgname/3/}-${pkgver} diff --git a/community/lightdm-gtk3-greeter/fix-null-username.patch b/community/lightdm-gtk3-greeter/fix-null-username.patch deleted file mode 100644 index 63cdf83c1..000000000 --- a/community/lightdm-gtk3-greeter/fix-null-username.patch +++ /dev/null @@ -1,83 +0,0 @@ -=== modified file 'src/lightdm-gtk-greeter.c' ---- src/lightdm-gtk-greeter.c 2014-01-07 11:02:12 +0000 -+++ src/lightdm-gtk-greeter.c 2014-01-08 00:21:56 +0000 -@@ -333,7 +333,7 @@ - gchar *s; - gboolean matched; - s = g_strdup(g_object_get_data (G_OBJECT (menu_iter->data), "session-key")); -- matched = strcmp (s, session) == 0; -+ matched = g_strcmp0 (s, session) == 0; - g_free (s); - if (matched) - { -@@ -402,7 +402,7 @@ - gchar *s; - gboolean matched; - s = g_strdup(g_object_get_data (G_OBJECT (menu_iter->data), "language-code")); -- matched = strcmp (s, language) == 0; -+ matched = g_strcmp0 (s, language) == 0; - g_free (s); - if (matched) - { -@@ -423,7 +423,7 @@ - static void - set_message_label (const gchar *text) - { -- gtk_widget_set_visible (GTK_WIDGET (info_bar), strcmp (text, "") != 0); -+ gtk_widget_set_visible (GTK_WIDGET (info_bar), g_strcmp0 (text, "") != 0); - gtk_label_set_text (message_label, text); - } - -@@ -633,13 +633,13 @@ - } - g_free (data); - -- if (strcmp (username, "*other") == 0) -+ if (g_strcmp0 (username, "*other") == 0) - { - gtk_widget_show (GTK_WIDGET (username_entry)); - gtk_widget_show (GTK_WIDGET (cancel_button)); - lightdm_greeter_authenticate (greeter, NULL); - } -- else if (strcmp (username, "*guest") == 0) -+ else if (g_strcmp0 (username, "*guest") == 0) - { - lightdm_greeter_authenticate_as_guest (greeter); - } -@@ -689,7 +689,7 @@ - gchar *user; - - gtk_tree_model_get (GTK_TREE_MODEL (model), &iter, 0, &user, -1); -- other = (strcmp (user, "*other") == 0); -+ other = (g_strcmp0 (user, "*other") == 0); - g_free (user); - } - -@@ -964,7 +964,7 @@ - - gtk_tree_model_get (GTK_TREE_MODEL (model), &iter, 0, &user, -1); - -- if (strcmp (user, "*other") == 0) -+ if (g_strcmp0 (user, "*other") == 0) - { - gtk_widget_show (GTK_WIDGET (username_entry)); - gtk_widget_show (GTK_WIDGET (cancel_button)); -@@ -1463,7 +1463,7 @@ - do - { - gtk_tree_model_get (model, &iter, 0, &name, -1); -- matched = strcmp (name, selected_user) == 0; -+ matched = g_strcmp0 (name, selected_user) == 0; - g_free (name); - if (matched) - { -@@ -1954,7 +1954,7 @@ - g_object_set (gtk_settings_get_default (), "gtk-xft-dpi", (int) (1024 * atof (value)), NULL); - value = g_key_file_get_value (config, "greeter", "xft-antialias", NULL); - if (value) -- g_object_set (gtk_settings_get_default (), "gtk-xft-antialias", strcmp (value, "true") == 0, NULL); -+ g_object_set (gtk_settings_get_default (), "gtk-xft-antialias", g_strcmp0 (value, "true") == 0, NULL); - g_free (value); - value = g_key_file_get_value (config, "greeter", "xft-hintstyle", NULL); - if (value) - diff --git a/community/lightdm-gtk3-greeter/lightdm-gtk-greeter.install b/community/lightdm-gtk3-greeter/lightdm-gtk-greeter.install new file mode 100644 index 000000000..b72f4439b --- /dev/null +++ b/community/lightdm-gtk3-greeter/lightdm-gtk-greeter.install @@ -0,0 +1,13 @@ +post_install() { + gtk-update-icon-cache -ftq usr/share/icons/hicolor +} + +post_update() { + post_install +} + +post_remove() { + post_install +} + +# vim: ts=2 sw=2 et: diff --git a/community/lxc/PKGBUILD b/community/lxc/PKGBUILD index a357ac070..692a7fcd5 100644 --- a/community/lxc/PKGBUILD +++ b/community/lxc/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 103083 2013-12-26 10:01:37Z spupykin $ +# $Id: PKGBUILD 105711 2014-02-14 09:37:34Z spupykin $ # Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> # Contributor: Andrea Zucchelli <zukka77@gmail.com> # Contributor: Daniel Micay <danielmicay@gmail.com> @@ -8,7 +8,7 @@ pkgname=lxc pkgver=0.9.0 epoch=1 -pkgrel=5 +pkgrel=6 pkgdesc="Linux Containers" arch=('i686' 'x86_64') url="http://linuxcontainers.org" @@ -22,10 +22,11 @@ source=("http://linuxcontainers.org/downloads/$pkgname-${pkgver}.tar.gz" "lxc@.service") md5sums=('8552a4479090616f4bc04d8473765fc9' 'df94c9fb8a753011c86ee664e9f521ff' - '8003139e60ea66c05460660f31780706') + '32db4ef06b27f36e15ff4b67c049dfeb') prepare() { cd "$srcdir/$pkgname-${pkgver/_/-}" + sed -i 's|sbin/init none bind|sbin/init none ro,bind|' templates/lxc-sshd.in sed -i \ -e "s/for name in docbook2x-man db2x_docbook2man; do/for name in docbook2x-man db2x_docbook2man docbook2man; do/" \ -e "s|AM_INIT_AUTOMAKE.*|AM_INIT_AUTOMAKE([-Wall -Werror -Wno-portability subdir-objects])|" \ diff --git a/community/lxc/lxc@.service b/community/lxc/lxc@.service index 7bc87b5dd..4c0c34e3e 100644 --- a/community/lxc/lxc@.service +++ b/community/lxc/lxc@.service @@ -1,11 +1,11 @@ [Unit] -Description=%I LXC +Description=%i LXC After=network.target [Service] Type=forking -ExecStart=/usr/bin/lxc-start -d -n %I -ExecStop=/usr/bin/lxc-stop -n %I +ExecStart=/usr/bin/lxc-start -d -n %i +ExecStop=/usr/bin/lxc-stop -n %i [Install] WantedBy=multi-user.target diff --git a/community/miniupnpc/PKGBUILD b/community/miniupnpc/PKGBUILD index 5ace90fa7..ce97cf76b 100644 --- a/community/miniupnpc/PKGBUILD +++ b/community/miniupnpc/PKGBUILD @@ -1,8 +1,8 @@ -# $Id: PKGBUILD 104542 2014-01-22 15:26:03Z tredaelli $ +# $Id: PKGBUILD 105735 2014-02-14 15:45:18Z tredaelli $ # Maintainer: Timothy Redaelli <timothy.redaelli@gmail.com> # Contributor: Florian Loitsch <archlinux@florian.loitsch.com> pkgname=miniupnpc -pkgver=1.8.20131209 +pkgver=1.9 pkgrel=1 pkgdesc="A small UPnP client library/tool to access Internet Gateway Devices" arch=('i686' 'x86_64') @@ -10,7 +10,7 @@ url="http://miniupnp.free.fr" license=('BSD') depends=('sh') source=("http://miniupnp.free.fr/files/$pkgname-$pkgver.tar.gz") -sha256sums=('4fb429d74c9955d8c4a8c9b34ddd0fb8efce16266ee66200e7af135fedb998e7') +sha256sums=('2923e453e880bb949e3d4da9f83dd3cb6f08946d35de0b864d0339cf70934464') build() { cd "$srcdir/$pkgname-$pkgver" diff --git a/community/pidgin-lwqq/PKGBUILD b/community/pidgin-lwqq/PKGBUILD index 4df6f1f60..f324a8cc0 100644 --- a/community/pidgin-lwqq/PKGBUILD +++ b/community/pidgin-lwqq/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 102564 2013-12-15 04:07:26Z fyan $ +# $Id: PKGBUILD 105694 2014-02-14 06:29:13Z fyan $ # Maintainer: Felix Yan <felixonmars@gmail.com> pkgname=pidgin-lwqq -pkgver=0.2c.20131206 -_commit=41f92cb7d8b4cfb26e51eded734e8110f845cff3 +pkgver=0.2c.20140214 +_commit=de349f7a2d6b1728f4f03e374dd3bc000f4b1248 pkgrel=1 pkgdesc="A pidgin plugin based on lwqq, a excellent safe useful library for webqq protocol" arch=('i686' 'x86_64') @@ -20,21 +20,22 @@ source=("git://github.com/xiehuc/pidgin-lwqq.git#commit=$_commit" "git://github.com/xiehuc/lwqq.git") prepare() { - cd "$srcdir/$pkgname" + cd $pkgname git submodule init git config submodule."liblwqq".url "$srcdir/lwqq" git submodule update } build() { - cd "${srcdir}/$pkgname" - - cmake -DCMAKE_INSTALL_PREFIX=/usr . + cd $pkgname + + #Disable SSL as per upstream suggests + cmake -DCMAKE_INSTALL_PREFIX=/usr -DSSL=Off . make } package() { - cd "$srcdir/$pkgname" + cd $pkgname make DESTDIR="${pkgdir}" install } diff --git a/community/prosody/PKGBUILD b/community/prosody/PKGBUILD index 05faf0c3c..c1f4a60ff 100644 --- a/community/prosody/PKGBUILD +++ b/community/prosody/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 105597 2014-02-11 09:52:31Z spupykin $ +# $Id: PKGBUILD 105722 2014-02-14 11:30:55Z spupykin $ # Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> # Maintainer: Dwayne Bent <dbb@dbb.io> # Contributor: Paul-Sebastian Manole <brokenthorn@gmail.com> @@ -6,7 +6,7 @@ pkgname=prosody pkgver=0.9.3 -pkgrel=1 +pkgrel=2 pkgdesc="Lightweight and extensible Jabber/XMPP server written in Lua" arch=('i686' 'x86_64') url="http://prosody.im/" @@ -22,12 +22,6 @@ source=("http://prosody.im/downloads/source/${pkgname}-${pkgver}.tar.gz"{,.asc} 'fix-config.patch' 'prosody.tmpfile.d' 'prosody.service') -sha256sums=('a2df64d23b7853a9f03126750d33b98193c93b8331b2622d9ebf1fe54f8feb2d' - 'SKIP' - '5a2466b73bd069fb73be97a4e23b24e4c8dd1adb7db871cb8f5ab4094c1f967f' - 'db37b1b6bcd648f264164c5db5e754fc077671c74df6079c101384e146f4d6da' - '3f5cc5db2cfe74c4edf91f60e692e04c3504025e893d0880114d52728a2c4bc4' - '16fbfb54bf21bb73ce9d9acacb60d47f237c35e842c5a00f1153f72f0d2f7f6b') sha256sums=('22d2427fae4858d15b4f695348fb7781e4c65c04a24171837985024e76799ea0' 'SKIP' '5a2466b73bd069fb73be97a4e23b24e4c8dd1adb7db871cb8f5ab4094c1f967f' @@ -55,7 +49,7 @@ package() { make DESTDIR="${pkgdir}" install make DESTDIR="${pkgdir}" install -C tools/migration - install -Dm 0644 $srcdir/prosody.logrotated "${pkgdir}"/etc/logrotate.d/prosody +# install -Dm 0644 $srcdir/prosody.logrotated "${pkgdir}"/etc/logrotate.d/prosody install -Dm 0644 $srcdir/prosody.tmpfile.d "${pkgdir}"/usr/lib/tmpfiles.d/prosody.conf install -Dm 0644 $srcdir/prosody.service "${pkgdir}"/usr/lib/systemd/system/prosody.service @@ -64,7 +58,6 @@ package() { done install -Dm 0644 COPYING "${pkgdir}"/usr/share/licenses/${pkgname}/COPYING - install -dm 755 "${pkgdir}"/var/log/prosody rm "${pkgdir}"/etc/prosody/certs/* } diff --git a/community/prosody/prosody.install b/community/prosody/prosody.install index a77801d7b..dbd78bb62 100644 --- a/community/prosody/prosody.install +++ b/community/prosody/prosody.install @@ -7,7 +7,7 @@ post_install() { fi chown prosody:prosody var/lib/prosody - chown prosody:prosody var/log/prosody + [ -d var/log/prosody ] && chown prosody:prosody var/log/prosody echo ">> Documentation: http://wiki.archlinux.org/index.php/Prosody" diff --git a/community/pymol/PKGBUILD b/community/pymol/PKGBUILD index d09c49cbc..65a78d1a7 100644 --- a/community/pymol/PKGBUILD +++ b/community/pymol/PKGBUILD @@ -1,24 +1,26 @@ -# $Id: PKGBUILD 105152 2014-02-01 20:46:24Z arcanis $ -# Maintainer: Evgeniy Alekseev <arcanis dot arch at gmail dot com> +# $Id: PKGBUILD 105733 2014-02-14 15:40:11Z arcanis $ +# Maintainer: Evgeniy Alekseev <arcanis.arch at gmail dot com> # Contributor: graysky # Contributor: Tomasz Żok <tomasz dot zok at gmail dot com> pkgname=pymol pkgver=1.7.0.0 -pkgrel=1 +pkgrel=2 pkgdesc="Molecular visualization system on an Open Source foundation" arch=('i686' 'x86_64') url="http://pymol.org/" license=('custom') depends=('glew' 'glut' 'mesa' 'python2-numpy' 'python2-pmw' 'tcsh') makedepends=('desktop-file-utils' 'gendesk') -source=("http://downloads.sourceforge.net/project/pymol/pymol/1.7/pymol-v${pkgver}.tar.bz2") +source=("http://downloads.sourceforge.net/project/pymol/pymol/1.7/pymol-v${pkgver}.tar.bz2" + "${pkgname}-38899.patch") install="${pkgname}.install" -md5sums=('36fc735f6104e59802f109d0d25b6676') +md5sums=('36fc735f6104e59802f109d0d25b6676' + '1f8152c4604ba2939b24e25a022937ca') prepare() { # create desktop file - gendesk --pkgname "${pkgname}" --pkgdesc "${pkgdesc}" --name="PyMOL" --categories="Science;Chemistry" + gendesk -f --pkgname "${pkgname}" --pkgdesc "${pkgdesc}" --name="PyMOL" --categories="Science;Chemistry" # suppress non-zero exit code that breaks makepkg sed -i '/sys.exit/ s,2,0,' "${srcdir}/pymol/setup.py" @@ -27,6 +29,10 @@ prepare() { sed -i "s|python|python2|g" "${srcdir}/pymol/test/run" sed -i "s|python|python2|g" "${srcdir}/pymol/test/show" sed -i "s|python|python2|g" "${srcdir}/pymol/modules/pmg_tk/startup/apbs_tools.py" + + # fix FS#38899 + patch -p0 -i "${pkgname}-38899.patch" + mv "${srcdir}/${pkgname}/modules/web" "${srcdir}/${pkgname}/modules/pymolweb" } build() { diff --git a/community/pymol/pymol-38899.patch b/community/pymol/pymol-38899.patch new file mode 100644 index 000000000..8e4baf416 --- /dev/null +++ b/community/pymol/pymol-38899.patch @@ -0,0 +1,251 @@ +diff -ruN pymol.orig/modules/pymol/importing.py pymol/modules/pymol/importing.py +--- pymol.orig/modules/pymol/importing.py 2014-01-15 00:02:55.000000000 +0400 ++++ pymol/modules/pymol/importing.py 2014-02-14 10:19:11.275591741 +0400 +@@ -473,7 +473,7 @@ + def _processPWG(fname,_self=cmd): + r = DEFAULT_ERROR + try: +- from web.pymolhttpd import PymolHttpd ++ from pymolweb.pymolhttpd import PymolHttpd + browser_flag = 0 + launch_flag = 0 + report_url = None +diff -ruN pymol.orig/modules/web/examples/content/SOP.html pymol/modules/web/examples/content/SOP.html +--- pymol.orig/modules/web/examples/content/SOP.html 2014-01-15 00:02:58.000000000 +0400 ++++ pymol/modules/web/examples/content/SOP.html 2014-02-14 10:19:11.275591741 +0400 +@@ -49,7 +49,7 @@ + The first seven + <a href="../index.html#sample01" target="_blank"> sample applications</a> + are implemented like this, residing in folders at +-<code>$PYMOL_PATH/modules/web/examples/sample[0-7]</code> There ++<code>$PYMOL_PATH/modules/pymolweb/examples/sample[0-7]</code> There + may be future PyMOL web applications delivered with new versions of + PyMOL. Of course, you are free to write your own PyMOL web + applications and store them on each user's machine, or perhaps on a +diff -ruN pymol.orig/modules/web/examples/content/pwg.html pymol/modules/web/examples/content/pwg.html +--- pymol.orig/modules/web/examples/content/pwg.html 2014-01-15 00:02:58.000000000 +0400 ++++ pymol/modules/web/examples/content/pwg.html 2014-02-14 10:19:11.275591741 +0400 +@@ -58,13 +58,13 @@ + + <p>In contrast, the PWG file which launches the Sample 01 application is:</p> + <pre> +-root $PYMOL_PATH/modules/web/examples/sample01/htdocs ++root $PYMOL_PATH/modules/pymolweb/examples/sample01/htdocs + browser + </pre> + + <p>which tells PyMOL to (1) launch its internal web server on a + dynamically assigned port with a root content directory of +-$PYMOL_PATH/modules/web/examples/sample01/htdocs and (2) open ++$PYMOL_PATH/modules/pymolweb/examples/sample01/htdocs and (2) open + up a local browser window pointing at that server instance. The + assumption in this scenario is that this newly-opened web page will be + responsible for sending requests to the PyMOL server (and thus, will +diff -ruN pymol.orig/modules/web/examples/content/running.html pymol/modules/web/examples/content/running.html +--- pymol.orig/modules/web/examples/content/running.html 2014-01-15 00:02:58.000000000 +0400 ++++ pymol/modules/web/examples/content/running.html 2014-02-14 10:19:11.278925074 +0400 +@@ -36,7 +36,7 @@ + + <p>The main index file with sample application links is located at</p> + +-<pre>./modules/web/examples/index.html</pre> ++<pre>./modules/pymolweb/examples/index.html</pre> + + <p>If you are reading this file from within a browser, then you may + <a href="../index.html">return to it now</a> in order to try the sample +@@ -55,7 +55,7 @@ + + <pre># from within the PyMOL folder + +-cd ./modules/web/examples ++cd ./modules/pymolweb/examples + + # then + +diff -ruN pymol.orig/modules/web/examples/content/server.html pymol/modules/web/examples/content/server.html +--- pymol.orig/modules/web/examples/content/server.html 2014-01-15 00:02:58.000000000 +0400 ++++ pymol/modules/web/examples/content/server.html 2014-02-14 10:19:11.278925074 +0400 +@@ -18,7 +18,7 @@ + browser window).</p> + + <p>The source code is located at +-<code>$PYMOL_PATH/modules/web/pymolhttpd.py</code>, ++<code>$PYMOL_PATH/modules/pymolweb/pymolhttpd.py</code>, + and this file serves as a python module that can be imported by any + python script running inside of PyMOL. </p> + +@@ -33,7 +33,7 @@ + <p>Alternatively, pymolhttpd.py can be used as the start-up script + when you launch PyMOL.</p> + +-<pre>pymol $PYMOL_PATH/modules/web/pymolhttpd.py</pre> ++<pre>pymol $PYMOL_PATH/modules/pymolweb/pymolhttpd.py</pre> + + <p>This will cause PyMOL to start serving requests on the default port + (8080, assuming of course that the port is not already claimed by +@@ -44,7 +44,7 @@ + <p> + The PyMOL web server module can be imported into and launched using code like this. + <pre> +-from web import pymolhttpd ++from pymolweb import pymolhttpd + httpd = pymolhttpd.PymolHttpd("htdocs", 8080) + httpd.start() + </pre> +diff -ruN pymol.orig/modules/web/examples/index.html pymol/modules/web/examples/index.html +--- pymol.orig/modules/web/examples/index.html 2014-01-15 00:02:58.000000000 +0400 ++++ pymol/modules/web/examples/index.html 2014-02-14 10:19:11.288925075 +0400 +@@ -156,7 +156,7 @@ + services interface!</p> + + <p>The code for the applications above is located inside a series of folders located at: +-<pre>$PYMOL_PATH/modules/web/examples/sample*</pre></p> ++<pre>$PYMOL_PATH/modules/pymolweb/examples/sample*</pre></p> + + </body> + </html> +diff -ruN pymol.orig/modules/web/examples/sample01/htdocs/api.html pymol/modules/web/examples/sample01/htdocs/api.html +--- pymol.orig/modules/web/examples/sample01/htdocs/api.html 2014-01-15 00:02:56.000000000 +0400 ++++ pymol/modules/web/examples/sample01/htdocs/api.html 2014-02-14 10:19:11.288925075 +0400 +@@ -9,9 +9,9 @@ + </ul><hr><p>Please click the link(s) below before testing methods in this section (in order).</p><pre><a target="result" href="/apply/pymol.cmd.reinitialize">/apply/pymol.cmd.reinitialize</a></pre> + + <ul><li><p><font face="Courier" size="2"><b>load</b></font> +-<i>filename, object, state, format, finish, discrete, quiet, multiplex, zoom, partial</i><pre><a target="result" href="/apply/pymol.cmd.load?filename=$PYMOL_PATH/modules/web/examples/data/ref.pdb">/apply/pymol.cmd.load?filename=$PYMOL_PATH/modules/web/examples/data/ref.pdb</a></pre> ++<i>filename, object, state, format, finish, discrete, quiet, multiplex, zoom, partial</i><pre><a target="result" href="/apply/pymol.cmd.load?filename=$PYMOL_PATH/modules/pymolweb/examples/data/ref.pdb">/apply/pymol.cmd.load?filename=$PYMOL_PATH/modules/pymolweb/examples/data/ref.pdb</a></pre> + +-<pre><a target="result" href="/apply/pymol.cmd.load?filename=$PYMOL_PATH/modules/web/examples/data/map.ccp4">/apply/pymol.cmd.load?filename=$PYMOL_PATH/modules/web/examples/data/map.ccp4</a></pre> ++<pre><a target="result" href="/apply/pymol.cmd.load?filename=$PYMOL_PATH/modules/pymolweb/examples/data/map.ccp4">/apply/pymol.cmd.load?filename=$PYMOL_PATH/modules/pymolweb/examples/data/map.ccp4</a></pre> + + </p></li> + <li><p><font face="Courier" size="2"><b>enable</b></font> +@@ -38,7 +38,7 @@ + </p></li> + </ul><hr><p>Please click the link(s) below before testing methods in this section (in order).</p><pre><a target="result" href="/apply/pymol.cmd.reinitialize">/apply/pymol.cmd.reinitialize</a></pre> + +-<pre><a target="result" href="/apply/pymol.cmd.load?filename=$PYMOL_PATH/modules/web/examples/data/ref.pdb">/apply/pymol.cmd.load?filename=$PYMOL_PATH/modules/web/examples/data/ref.pdb</a></pre> ++<pre><a target="result" href="/apply/pymol.cmd.load?filename=$PYMOL_PATH/modules/pymolweb/examples/data/ref.pdb">/apply/pymol.cmd.load?filename=$PYMOL_PATH/modules/pymolweb/examples/data/ref.pdb</a></pre> + + <ul><li><p><font face="Courier" size="2"><b>color</b></font> + <i>color, selection, quiet, flags</i><pre><a target="result" href="/apply/pymol.cmd.color?color=yellow&selection=elem c">/apply/pymol.cmd.color?color=yellow&selection=elem c</a></pre> +@@ -118,9 +118,9 @@ + </p></li> + </ul><hr><p>Please click the link(s) below before testing methods in this section (in order).</p><pre><a target="result" href="/apply/pymol.cmd.reinitialize">/apply/pymol.cmd.reinitialize</a></pre> + +-<pre><a target="result" href="/apply/pymol.cmd.load?filename=$PYMOL_PATH/modules/web/examples/data/ref.pdb">/apply/pymol.cmd.load?filename=$PYMOL_PATH/modules/web/examples/data/ref.pdb</a></pre> ++<pre><a target="result" href="/apply/pymol.cmd.load?filename=$PYMOL_PATH/modules/pymolweb/examples/data/ref.pdb">/apply/pymol.cmd.load?filename=$PYMOL_PATH/modules/pymolweb/examples/data/ref.pdb</a></pre> + +-<pre><a target="result" href="/apply/pymol.cmd.load?filename=$PYMOL_PATH/modules/web/examples/data/map.ccp4">/apply/pymol.cmd.load?filename=$PYMOL_PATH/modules/web/examples/data/map.ccp4</a></pre> ++<pre><a target="result" href="/apply/pymol.cmd.load?filename=$PYMOL_PATH/modules/pymolweb/examples/data/map.ccp4">/apply/pymol.cmd.load?filename=$PYMOL_PATH/modules/pymolweb/examples/data/map.ccp4</a></pre> + + <ul><li><p><font face="Courier" size="2"><b>isomesh</b></font> + <i>name, map, level, selection, buffer, state, carve, source_state, quiet</i><pre><a target="result" href="/apply/pymol.cmd.isomesh?name=mesh&map=map&level=1.0">/apply/pymol.cmd.isomesh?name=mesh&map=map&level=1.0</a></pre> +@@ -142,7 +142,7 @@ + </p></li> + </ul><hr><p>Please click the link(s) below before testing methods in this section (in order).</p><pre><a target="result" href="/apply/pymol.cmd.reinitialize">/apply/pymol.cmd.reinitialize</a></pre> + +-<pre><a target="result" href="/apply/pymol.cmd.load?filename=$PYMOL_PATH/modules/web/examples/data/ref.pdb">/apply/pymol.cmd.load?filename=$PYMOL_PATH/modules/web/examples/data/ref.pdb</a></pre> ++<pre><a target="result" href="/apply/pymol.cmd.load?filename=$PYMOL_PATH/modules/pymolweb/examples/data/ref.pdb">/apply/pymol.cmd.load?filename=$PYMOL_PATH/modules/pymolweb/examples/data/ref.pdb</a></pre> + + <ul><li><p><font face="Courier" size="2"><b>show</b></font> + <i>representation, selection</i><pre><a target="result" href="/apply/pymol.cmd.show?representation=sticks">/apply/pymol.cmd.show?representation=sticks</a></pre> +@@ -174,7 +174,7 @@ + </p></li> + </ul><hr><p>Please click the link(s) below before testing methods in this section (in order).</p><pre><a target="result" href="/apply/pymol.cmd.reinitialize">/apply/pymol.cmd.reinitialize</a></pre> + +-<pre><a target="result" href="/apply/pymol.cmd.load?filename=$PYMOL_PATH/modules/web/examples/data/ref.pdb">/apply/pymol.cmd.load?filename=$PYMOL_PATH/modules/web/examples/data/ref.pdb</a></pre> ++<pre><a target="result" href="/apply/pymol.cmd.load?filename=$PYMOL_PATH/modules/pymolweb/examples/data/ref.pdb">/apply/pymol.cmd.load?filename=$PYMOL_PATH/modules/pymolweb/examples/data/ref.pdb</a></pre> + + <ul><li><p><font face="Courier" size="2"><b>show_as</b></font> + <i>representation, selection</i><pre><a target="result" href="/apply/pymol.cmd.show_as?representation=spheres">/apply/pymol.cmd.show_as?representation=spheres</a></pre> +@@ -224,7 +224,7 @@ + </p></li> + </ul><hr><p>Please click the link(s) below before testing methods in this section (in order).</p><pre><a target="result" href="/apply/pymol.cmd.reinitialize">/apply/pymol.cmd.reinitialize</a></pre> + +-<pre><a target="result" href="/apply/pymol.cmd.load?filename=$PYMOL_PATH/modules/web/examples/data/ref.pdb">/apply/pymol.cmd.load?filename=$PYMOL_PATH/modules/web/examples/data/ref.pdb</a></pre> ++<pre><a target="result" href="/apply/pymol.cmd.load?filename=$PYMOL_PATH/modules/pymolweb/examples/data/ref.pdb">/apply/pymol.cmd.load?filename=$PYMOL_PATH/modules/pymolweb/examples/data/ref.pdb</a></pre> + + <ul><li><p><font face="Courier" size="2"><b>super</b></font> + <i>mobile, target, cutoff, cycles, gap, extend, max_gap, object, matrix, mobile_state, target_state, quiet, max_skip, transform, reset, seq, radius, scale, base, coord, expect, window, ante</i><pre><a target="result" href="/apply/pymol.cmd.create?name=helix1&selection=polymer and 5-17/">/apply/pymol.cmd.create?name=helix1&selection=polymer and 5-17/</a></pre> +diff -ruN pymol.orig/modules/web/examples/sample01/start.pwg pymol/modules/web/examples/sample01/start.pwg +--- pymol.orig/modules/web/examples/sample01/start.pwg 2014-01-15 00:02:56.000000000 +0400 ++++ pymol/modules/web/examples/sample01/start.pwg 2014-02-14 10:19:11.288925075 +0400 +@@ -1,2 +1,2 @@ +-root $PYMOL_PATH/modules/web/examples/sample01/htdocs ++root $PYMOL_PATH/modules/pymolweb/examples/sample01/htdocs + browser +diff -ruN pymol.orig/modules/web/examples/sample02/start.pwg pymol/modules/web/examples/sample02/start.pwg +--- pymol.orig/modules/web/examples/sample02/start.pwg 2014-01-15 00:02:56.000000000 +0400 ++++ pymol/modules/web/examples/sample02/start.pwg 2014-02-14 10:19:11.292258408 +0400 +@@ -1,2 +1,2 @@ +-root $PYMOL_PATH/modules/web/examples/sample02/htdocs ++root $PYMOL_PATH/modules/pymolweb/examples/sample02/htdocs + browser +diff -ruN pymol.orig/modules/web/examples/sample03/start.pwg pymol/modules/web/examples/sample03/start.pwg +--- pymol.orig/modules/web/examples/sample03/start.pwg 2014-01-15 00:02:56.000000000 +0400 ++++ pymol/modules/web/examples/sample03/start.pwg 2014-02-14 10:19:11.292258408 +0400 +@@ -1,2 +1,2 @@ +-root $PYMOL_PATH/modules/web/examples/sample03/htdocs ++root $PYMOL_PATH/modules/pymolweb/examples/sample03/htdocs + browser +diff -ruN pymol.orig/modules/web/examples/sample04/htdocs/pdbshow.js pymol/modules/web/examples/sample04/htdocs/pdbshow.js +--- pymol.orig/modules/web/examples/sample04/htdocs/pdbshow.js 2014-01-15 00:02:56.000000000 +0400 ++++ pymol/modules/web/examples/sample04/htdocs/pdbshow.js 2014-02-14 10:19:11.292258408 +0400 +@@ -12,7 +12,7 @@ + function get_protein(a) { + // load protein, unless already loaded + if (load_state[a] == undefined) { +- load = "load?filename=$PYMOL_PATH/modules/web/examples/data/" + a + ".pdb.gz" + zoom; ++ load = "load?filename=$PYMOL_PATH/modules/pymolweb/examples/data/" + a + ".pdb.gz" + zoom; + cmd(load); + zoom = "&zoom=0"; // subsequent loads shold not zoom + cmd("orient?selection=bymol organic and elem n&animate=2"); +diff -ruN pymol.orig/modules/web/examples/sample04/start.pwg pymol/modules/web/examples/sample04/start.pwg +--- pymol.orig/modules/web/examples/sample04/start.pwg 2014-01-15 00:02:56.000000000 +0400 ++++ pymol/modules/web/examples/sample04/start.pwg 2014-02-14 10:19:11.292258408 +0400 +@@ -1,2 +1,2 @@ +-root $PYMOL_PATH/modules/web/examples/sample04/htdocs ++root $PYMOL_PATH/modules/pymolweb/examples/sample04/htdocs + browser +diff -ruN pymol.orig/modules/web/examples/sample05/htdocs/index.html pymol/modules/web/examples/sample05/htdocs/index.html +--- pymol.orig/modules/web/examples/sample05/htdocs/index.html 2014-01-15 00:02:57.000000000 +0400 ++++ pymol/modules/web/examples/sample05/htdocs/index.html 2014-02-14 10:19:11.292258408 +0400 +@@ -108,7 +108,7 @@ + + function loadPDB(code) + { +- return cmd('load?filename=$PYMOL_PATH/modules/web/examples/data/'+code+'.pdb'); ++ return cmd('load?filename=$PYMOL_PATH/modules/pymolweb/examples/data/'+code+'.pdb'); + } + + </script> +diff -ruN pymol.orig/modules/web/examples/sample05/start.pwg pymol/modules/web/examples/sample05/start.pwg +--- pymol.orig/modules/web/examples/sample05/start.pwg 2014-01-15 00:02:57.000000000 +0400 ++++ pymol/modules/web/examples/sample05/start.pwg 2014-02-14 10:19:11.292258408 +0400 +@@ -1,2 +1,2 @@ +-root $PYMOL_PATH/modules/web/examples/sample05/htdocs ++root $PYMOL_PATH/modules/pymolweb/examples/sample05/htdocs + browser +diff -ruN pymol.orig/modules/web/examples/sample06/start.pwg pymol/modules/web/examples/sample06/start.pwg +--- pymol.orig/modules/web/examples/sample06/start.pwg 2014-01-15 00:02:57.000000000 +0400 ++++ pymol/modules/web/examples/sample06/start.pwg 2014-02-14 10:19:11.292258408 +0400 +@@ -1,3 +1,3 @@ +-root $PYMOL_PATH/modules/web/examples/sample06/htdocs ++root $PYMOL_PATH/modules/pymolweb/examples/sample06/htdocs + browser + logging 0 +diff -ruN pymol.orig/modules/web/examples/sample07/start.pwg pymol/modules/web/examples/sample07/start.pwg +--- pymol.orig/modules/web/examples/sample07/start.pwg 2014-01-15 00:02:57.000000000 +0400 ++++ pymol/modules/web/examples/sample07/start.pwg 2014-02-14 10:19:11.295591741 +0400 +@@ -1,2 +1,2 @@ +-root $PYMOL_PATH/modules/web/examples/sample07/htdocs ++root $PYMOL_PATH/modules/pymolweb/examples/sample07/htdocs + browser +diff -ruN pymol.orig/modules/web/examples/sample08/start.pwg pymol/modules/web/examples/sample08/start.pwg +--- pymol.orig/modules/web/examples/sample08/start.pwg 2014-01-15 00:02:57.000000000 +0400 ++++ pymol/modules/web/examples/sample08/start.pwg 2014-02-14 10:19:11.295591741 +0400 +@@ -1,3 +1,3 @@ +-root $PYMOL_PATH/modules/web/examples/sample08/htdocs ++root $PYMOL_PATH/modules/pymolweb/examples/sample08/htdocs + browser + logging 0
\ No newline at end of file diff --git a/core/file/PKGBUILD b/core/file/PKGBUILD index 495d6b860..818a8f0f2 100644 --- a/core/file/PKGBUILD +++ b/core/file/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 201433 2013-12-11 15:08:39Z allan $ +# $Id: PKGBUILD 205932 2014-02-14 08:16:42Z allan $ # Maintainer: Allan McRae <allan@archlinux.org> # Contributor: Andreas Radke <andyrtr@archlinux.org> pkgname=file -pkgver=5.16 +pkgver=5.17 pkgrel=1 pkgdesc="File type identification utility" arch=('i686' 'x86_64') @@ -12,7 +12,7 @@ groups=('base' 'base-devel') url="http://www.darwinsys.com/file/" depends=('glibc' 'zlib') source=(ftp://ftp.astron.com/pub/${pkgname}/${pkgname}-${pkgver}.tar.gz) -md5sums=('359c0cf41c3d438d17b4d293f3b950dc') +md5sums=('e19c47e069ced7b01ccb4db402cc01d3') build() { cd "${srcdir}/${pkgname}-${pkgver}" diff --git a/core/flex/PKGBUILD b/core/flex/PKGBUILD index 1fbcaf1c8..8f52d3fc6 100644 --- a/core/flex/PKGBUILD +++ b/core/flex/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 196829 2013-10-20 11:50:22Z allan $ +# $Id: PKGBUILD 205933 2014-02-14 08:16:43Z allan $ # Maintainer: Allan McRae <allan@archlinux.org> # Contributor: judd <jvinet@zeroflux.org> pkgname=flex -pkgver=2.5.37 +pkgver=2.5.38 pkgrel=1 pkgdesc="A tool for generating text-scanning programs" arch=('i686' 'x86_64') @@ -11,12 +11,9 @@ url="http://flex.sourceforge.net" license=('custom') groups=('base-devel') depends=('glibc' 'm4' 'sh') -options=('staticlibs') install=flex.install -source=(http://downloads.sourceforge.net/sourceforge/flex/flex-$pkgver.tar.bz2 - lex.sh) -md5sums=('c75940e1fc25108f2a7b3ef42abdae06' - 'f725259ec23a9e87ee29e2ef82eda9a5') +source=(http://downloads.sourceforge.net/sourceforge/flex/flex-$pkgver.tar.bz2) +md5sums=('b230c88e65996ff74994d08a2a2e0f27') build() { cd $srcdir/$pkgname-$pkgver @@ -27,7 +24,7 @@ build() { check() { cd $srcdir/$pkgname-$pkgver - # these tests used features removed in bison-2.6 + # these tests are incompatible with latest bison sed -i -e '/test-bison-yylloc/d' -e '/test-bison-yylval/d' tests/Makefile.in make check @@ -37,7 +34,7 @@ package() { cd $srcdir/$pkgname-$pkgver make DESTDIR=$pkgdir install - install -Dm755 $srcdir/lex.sh $pkgdir/usr/bin/lex + ln -s flex ${pkgdir}/usr/bin/lex install -Dm644 COPYING \ $pkgdir/usr/share/licenses/$pkgname/license.txt diff --git a/core/flex/lex.sh b/core/flex/lex.sh deleted file mode 100644 index 13e7de692..000000000 --- a/core/flex/lex.sh +++ /dev/null @@ -1,3 +0,0 @@ -#!/bin/sh - -exec /usr/bin/flex -l "$@" diff --git a/core/glibc/PKGBUILD b/core/glibc/PKGBUILD index 0e220e455..92dc67073 100644 --- a/core/glibc/PKGBUILD +++ b/core/glibc/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 205613 2014-02-10 03:07:48Z allan $ +# $Id: PKGBUILD 205934 2014-02-14 08:16:44Z allan $ # Maintainer: Allan McRae <allan@archlinux.org> # toolchain build order: linux-api-headers->glibc->binutils->gcc->binutils->glibc @@ -8,7 +8,7 @@ pkgname=glibc pkgver=2.19 -pkgrel=1 +pkgrel=2 pkgdesc="GNU C Library" arch=('i686' 'x86_64') url="http://www.gnu.org/software/libc" @@ -29,7 +29,7 @@ md5sums=('e26b8cc666b162f999404b03970f14e4' 'SKIP' '7ca96c68a37f2a4ab91792bfa0160a24' '07ac979b6ab5eeb778d55f041529d623' - 'b5fd017036fb91199ee76f670da8c15b') + '476e9113489f93b348b21e144b6a8fcf') prepare() { cd ${srcdir}/${pkgname}-${pkgver} diff --git a/core/glibc/glibc-2.18-getaddrinfo-CVE-2013-4458.patch b/core/glibc/glibc-2.18-getaddrinfo-CVE-2013-4458.patch deleted file mode 100644 index a7bc67c6f..000000000 --- a/core/glibc/glibc-2.18-getaddrinfo-CVE-2013-4458.patch +++ /dev/null @@ -1,41 +0,0 @@ -diff --git a/sysdeps/posix/getaddrinfo.c b/sysdeps/posix/getaddrinfo.c -index e6ce4cf..8ff74b4 100644 ---- a/sysdeps/posix/getaddrinfo.c -+++ b/sysdeps/posix/getaddrinfo.c -@@ -197,7 +197,22 @@ gaih_inet_serv (const char *servicename, const struct gaih_typeproto *tp, - &rc, &herrno, NULL, &localcanon)); \ - if (rc != ERANGE || herrno != NETDB_INTERNAL) \ - break; \ -- tmpbuf = extend_alloca (tmpbuf, tmpbuflen, 2 * tmpbuflen); \ -+ if (!malloc_tmpbuf && __libc_use_alloca (alloca_used + 2 * tmpbuflen)) \ -+ tmpbuf = extend_alloca_account (tmpbuf, tmpbuflen, 2 * tmpbuflen, \ -+ alloca_used); \ -+ else \ -+ { \ -+ char *newp = realloc (malloc_tmpbuf ? tmpbuf : NULL, \ -+ 2 * tmpbuflen); \ -+ if (newp == NULL) \ -+ { \ -+ result = -EAI_MEMORY; \ -+ goto free_and_return; \ -+ } \ -+ tmpbuf = newp; \ -+ malloc_tmpbuf = true; \ -+ tmpbuflen = 2 * tmpbuflen; \ -+ } \ - } \ - if (status == NSS_STATUS_SUCCESS && rc == 0) \ - h = &th; \ -@@ -209,7 +224,8 @@ gaih_inet_serv (const char *servicename, const struct gaih_typeproto *tp, - { \ - __set_h_errno (herrno); \ - _res.options |= old_res_options & RES_USE_INET6; \ -- return -EAI_SYSTEM; \ -+ result = -EAI_SYSTEM; \ -+ goto free_and_return; \ - } \ - if (herrno == TRY_AGAIN) \ - no_data = EAI_AGAIN; \ --- -1.8.4.1 - diff --git a/core/glibc/glibc-2.18-getaddrinfo-assertion.patch b/core/glibc/glibc-2.18-getaddrinfo-assertion.patch deleted file mode 100644 index 2f1f7c694..000000000 --- a/core/glibc/glibc-2.18-getaddrinfo-assertion.patch +++ /dev/null @@ -1,39 +0,0 @@ -diff --git a/sysdeps/posix/getaddrinfo.c b/sysdeps/posix/getaddrinfo.c -index 0f4b885..e6ce4cf 100644 ---- a/sysdeps/posix/getaddrinfo.c -+++ b/sysdeps/posix/getaddrinfo.c -@@ -1666,13 +1666,13 @@ rfc3484_sort (const void *p1, const void *p2, void *arg) - - /* Fill in the results in all the records. */ - for (int i = 0; i < src->nresults; ++i) -- if (src->results[i].index == a1_index) -+ if (a1_index != -1 && src->results[i].index == a1_index) - { - assert (src->results[i].native == -1 - || src->results[i].native == a1_native); - src->results[i].native = a1_native; - } -- else if (src->results[i].index == a2_index) -+ else if (a2_index != -1 && src->results[i].index == a2_index) - { - assert (src->results[i].native == -1 - || src->results[i].native == a2_native); -@@ -2532,7 +2532,14 @@ getaddrinfo (const char *name, const char *service, - tmp.addr[0] = 0; - tmp.addr[1] = 0; - tmp.addr[2] = htonl (0xffff); -- tmp.addr[3] = sinp->sin_addr.s_addr; -+ /* Special case for lo interface, the source address -+ being possibly different than the interface -+ address. */ -+ if ((ntohl(sinp->sin_addr.s_addr) & 0xff000000) -+ == 0x7f000000) -+ tmp.addr[3] = htonl(0x7f000001); -+ else -+ tmp.addr[3] = sinp->sin_addr.s_addr; - } - else - { --- -1.8.4.1 - diff --git a/core/glibc/glibc-2.18-make-4.patch b/core/glibc/glibc-2.18-make-4.patch deleted file mode 100644 index 374933464..000000000 --- a/core/glibc/glibc-2.18-make-4.patch +++ /dev/null @@ -1,45 +0,0 @@ -From dc76f0c32dae689a08aa21a1d206d4cd62adb278 Mon Sep 17 00:00:00 2001 -From: Marc-Antoine Perennou <Marc-Antoine@Perennou.com> -Date: Thu, 10 Oct 2013 14:26:12 +0900 -Subject: [PATCH] configure: allow building with GNU Make 4 - -Currently, configure errors telling make 4 is too old -since it does not match our regexp. - -configure.in: allow GNU Make 4.* - -Signed-off-by: Marc-Antoine Perennou <Marc-Antoine@Perennou.com> ---- - configure | 2 +- - configure.in | 2 +- - 2 files changed, 2 insertions(+), 2 deletions(-) - -diff --git a/configure b/configure -index 5e2f4d0..e139bf0 100755 ---- a/configure -+++ b/configure -@@ -4761,7 +4761,7 @@ $as_echo_n "checking version of $MAKE... " >&6; } - ac_prog_version=`$MAKE --version 2>&1 | sed -n 's/^.*GNU Make[^0-9]*\([0-9][0-9.]*\).*$/\1/p'` - case $ac_prog_version in - '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;; -- 3.79* | 3.[89]*) -+ 3.79* | 3.[89]* | 4.*) - ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;; - *) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;; - -diff --git a/configure.in b/configure.in -index a7f9881..95c36b6 100644 ---- a/configure.in -+++ b/configure.in -@@ -984,7 +984,7 @@ AC_CHECK_PROG_VER(CC, ${ac_tool_prefix}gcc ${ac_tool_prefix}cc, -v, - critic_missing="$critic_missing gcc") - AC_CHECK_PROG_VER(MAKE, gnumake gmake make, --version, - [GNU Make[^0-9]*\([0-9][0-9.]*\)], -- [3.79* | 3.[89]*], critic_missing="$critic_missing make") -+ [3.79* | 3.[89]* | 4.*], critic_missing="$critic_missing make") - - AC_CHECK_PROG_VER(MSGFMT, gnumsgfmt gmsgfmt msgfmt, --version, - [GNU gettext.* \([0-9]*\.[0-9.]*\)], --- -1.8.4.1 - diff --git a/core/glibc/glibc-2.18-malloc-corrupt-CVE-2013-4332.patch b/core/glibc/glibc-2.18-malloc-corrupt-CVE-2013-4332.patch deleted file mode 100644 index 093db86c9..000000000 --- a/core/glibc/glibc-2.18-malloc-corrupt-CVE-2013-4332.patch +++ /dev/null @@ -1,54 +0,0 @@ -diff --git a/malloc/malloc.c b/malloc/malloc.c -index dd295f5..7f43ba3 100644 ---- a/malloc/malloc.c -+++ b/malloc/malloc.c -@@ -3082,6 +3082,13 @@ __libc_pvalloc(size_t bytes) - size_t page_mask = GLRO(dl_pagesize) - 1; - size_t rounded_bytes = (bytes + page_mask) & ~(page_mask); - -+ /* Check for overflow. */ -+ if (bytes > SIZE_MAX - 2*pagesz - MINSIZE) -+ { -+ __set_errno (ENOMEM); -+ return 0; -+ } -+ - void *(*hook) (size_t, size_t, const void *) = - force_reg (__memalign_hook); - if (__builtin_expect (hook != NULL, 0)) -diff --git a/malloc/malloc.c b/malloc/malloc.c -index 7f43ba3..3148c5f 100644 ---- a/malloc/malloc.c -+++ b/malloc/malloc.c -@@ -3046,6 +3046,13 @@ __libc_valloc(size_t bytes) - - size_t pagesz = GLRO(dl_pagesize); - -+ /* Check for overflow. */ -+ if (bytes > SIZE_MAX - pagesz - MINSIZE) -+ { -+ __set_errno (ENOMEM); -+ return 0; -+ } -+ - void *(*hook) (size_t, size_t, const void *) = - force_reg (__memalign_hook); - if (__builtin_expect (hook != NULL, 0)) -diff --git a/malloc/malloc.c b/malloc/malloc.c -index 3148c5f..f7718a9 100644 ---- a/malloc/malloc.c -+++ b/malloc/malloc.c -@@ -3015,6 +3015,13 @@ __libc_memalign(size_t alignment, size_t bytes) - /* Otherwise, ensure that it is at least a minimum chunk size */ - if (alignment < MINSIZE) alignment = MINSIZE; - -+ /* Check for overflow. */ -+ if (bytes > SIZE_MAX - alignment - MINSIZE) -+ { -+ __set_errno (ENOMEM); -+ return 0; -+ } -+ - arena_get(ar_ptr, bytes + alignment + MINSIZE); - if(!ar_ptr) - return 0; diff --git a/core/glibc/glibc-2.18-ptr-mangle-CVE-2013-4788.patch b/core/glibc/glibc-2.18-ptr-mangle-CVE-2013-4788.patch deleted file mode 100644 index 09a439440..000000000 --- a/core/glibc/glibc-2.18-ptr-mangle-CVE-2013-4788.patch +++ /dev/null @@ -1,485 +0,0 @@ -diff --git a/csu/libc-start.c b/csu/libc-start.c -index e5da3ef..c898d06 100644 ---- a/csu/libc-start.c -+++ b/csu/libc-start.c -@@ -37,6 +37,12 @@ extern void __pthread_initialize_minimal (void); - in thread local area. */ - uintptr_t __stack_chk_guard attribute_relro; - # endif -+# ifndef THREAD_SET_POINTER_GUARD -+/* Only exported for architectures that don't store the pointer guard -+ value in thread local area. */ -+uintptr_t __pointer_chk_guard_local -+ attribute_relro attribute_hidden __attribute__ ((nocommon)); -+# endif - #endif - - #ifdef HAVE_PTR_NTHREADS -@@ -195,6 +201,16 @@ LIBC_START_MAIN (int (*main) (int, char **, char ** MAIN_AUXVEC_DECL), - # else - __stack_chk_guard = stack_chk_guard; - # endif -+ -+ /* Set up the pointer guard value. */ -+ uintptr_t pointer_chk_guard = _dl_setup_pointer_guard (_dl_random, -+ stack_chk_guard); -+# ifdef THREAD_SET_POINTER_GUARD -+ THREAD_SET_POINTER_GUARD (pointer_chk_guard); -+# else -+ __pointer_chk_guard_local = pointer_chk_guard; -+# endif -+ - #endif - - /* Register the destructor of the dynamic linker if there is any. */ -diff --git a/elf/Makefile b/elf/Makefile -index aaa9534..cb8da93 100644 ---- a/elf/Makefile -+++ b/elf/Makefile -@@ -121,7 +121,8 @@ endif - tests = tst-tls1 tst-tls2 tst-tls9 tst-leaks1 \ - tst-array1 tst-array2 tst-array3 tst-array4 tst-array5 - tests-static = tst-tls1-static tst-tls2-static tst-stackguard1-static \ -- tst-leaks1-static tst-array1-static tst-array5-static -+ tst-leaks1-static tst-array1-static tst-array5-static \ -+ tst-ptrguard1-static - ifeq (yes,$(build-shared)) - tests-static += tst-tls9-static - tst-tls9-static-ENV = \ -@@ -145,7 +146,8 @@ tests += loadtest restest1 preloadtest loadfail multiload origtest resolvfail \ - tst-audit1 tst-audit2 tst-audit8 \ - tst-stackguard1 tst-addr1 tst-thrlock \ - tst-unique1 tst-unique2 tst-unique3 tst-unique4 \ -- tst-initorder tst-initorder2 tst-relsort1 tst-null-argv -+ tst-initorder tst-initorder2 tst-relsort1 tst-null-argv \ -+ tst-ptrguard1 - # reldep9 - test-srcs = tst-pathopt - selinux-enabled := $(shell cat /selinux/enforce 2> /dev/null) -@@ -1016,6 +1018,9 @@ LDFLAGS-order2mod2.so = $(no-as-needed) - tst-stackguard1-ARGS = --command "$(host-test-program-cmd) --child" - tst-stackguard1-static-ARGS = --command "$(objpfx)tst-stackguard1-static --child" - -+tst-ptrguard1-ARGS = --command "$(host-test-program-cmd) --child" -+tst-ptrguard1-static-ARGS = --command "$(objpfx)tst-ptrguard1-static --child" -+ - $(objpfx)tst-leaks1: $(libdl) - $(objpfx)tst-leaks1-mem: $(objpfx)tst-leaks1.out - $(common-objpfx)malloc/mtrace $(objpfx)tst-leaks1.mtrace > $@ -diff --git a/elf/tst-ptrguard1-static.c b/elf/tst-ptrguard1-static.c -new file mode 100644 -index 0000000..7aff3b7 ---- /dev/null -+++ b/elf/tst-ptrguard1-static.c -@@ -0,0 +1 @@ -+#include "tst-ptrguard1.c" -diff --git a/elf/tst-ptrguard1.c b/elf/tst-ptrguard1.c -new file mode 100644 -index 0000000..c344a04 ---- /dev/null -+++ b/elf/tst-ptrguard1.c -@@ -0,0 +1,202 @@ -+/* Copyright (C) 2013 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C 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. -+ -+ The GNU C 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 the GNU C Library; if not, see -+ <http://www.gnu.org/licenses/>. */ -+ -+#include <errno.h> -+#include <stdbool.h> -+#include <stdio.h> -+#include <stdlib.h> -+#include <string.h> -+#include <sys/wait.h> -+#include <stackguard-macros.h> -+#include <tls.h> -+#include <unistd.h> -+ -+#ifndef POINTER_CHK_GUARD -+extern uintptr_t __pointer_chk_guard; -+# define POINTER_CHK_GUARD __pointer_chk_guard -+#endif -+ -+static const char *command; -+static bool child; -+static uintptr_t ptr_chk_guard_copy; -+static bool ptr_chk_guard_copy_set; -+static int fds[2]; -+ -+static void __attribute__ ((constructor)) -+con (void) -+{ -+ ptr_chk_guard_copy = POINTER_CHK_GUARD; -+ ptr_chk_guard_copy_set = true; -+} -+ -+static int -+uintptr_t_cmp (const void *a, const void *b) -+{ -+ if (*(uintptr_t *) a < *(uintptr_t *) b) -+ return 1; -+ if (*(uintptr_t *) a > *(uintptr_t *) b) -+ return -1; -+ return 0; -+} -+ -+static int -+do_test (void) -+{ -+ if (!ptr_chk_guard_copy_set) -+ { -+ puts ("constructor has not been run"); -+ return 1; -+ } -+ -+ if (ptr_chk_guard_copy != POINTER_CHK_GUARD) -+ { -+ puts ("POINTER_CHK_GUARD changed between constructor and do_test"); -+ return 1; -+ } -+ -+ if (child) -+ { -+ write (2, &ptr_chk_guard_copy, sizeof (ptr_chk_guard_copy)); -+ return 0; -+ } -+ -+ if (command == NULL) -+ { -+ puts ("missing --command or --child argument"); -+ return 1; -+ } -+ -+#define N 16 -+ uintptr_t child_ptr_chk_guards[N + 1]; -+ child_ptr_chk_guards[N] = ptr_chk_guard_copy; -+ int i; -+ for (i = 0; i < N; ++i) -+ { -+ if (pipe (fds) < 0) -+ { -+ printf ("couldn't create pipe: %m\n"); -+ return 1; -+ } -+ -+ pid_t pid = fork (); -+ if (pid < 0) -+ { -+ printf ("fork failed: %m\n"); -+ return 1; -+ } -+ -+ if (!pid) -+ { -+ if (ptr_chk_guard_copy != POINTER_CHK_GUARD) -+ { -+ puts ("POINTER_CHK_GUARD changed after fork"); -+ exit (1); -+ } -+ -+ close (fds[0]); -+ close (2); -+ dup2 (fds[1], 2); -+ close (fds[1]); -+ -+ system (command); -+ exit (0); -+ } -+ -+ close (fds[1]); -+ -+ if (TEMP_FAILURE_RETRY (read (fds[0], &child_ptr_chk_guards[i], -+ sizeof (uintptr_t))) != sizeof (uintptr_t)) -+ { -+ puts ("could not read ptr_chk_guard value from child"); -+ return 1; -+ } -+ -+ close (fds[0]); -+ -+ pid_t termpid; -+ int status; -+ termpid = TEMP_FAILURE_RETRY (waitpid (pid, &status, 0)); -+ if (termpid == -1) -+ { -+ printf ("waitpid failed: %m\n"); -+ return 1; -+ } -+ else if (termpid != pid) -+ { -+ printf ("waitpid returned %ld != %ld\n", -+ (long int) termpid, (long int) pid); -+ return 1; -+ } -+ else if (!WIFEXITED (status) || WEXITSTATUS (status)) -+ { -+ puts ("child hasn't exited with exit status 0"); -+ return 1; -+ } -+ } -+ -+ qsort (child_ptr_chk_guards, N + 1, sizeof (uintptr_t), uintptr_t_cmp); -+ -+ /* The default pointer guard is the same as the default stack guard. -+ They are only set to default if dl_random is NULL. */ -+ uintptr_t default_guard = 0; -+ unsigned char *p = (unsigned char *) &default_guard; -+ p[sizeof (uintptr_t) - 1] = 255; -+ p[sizeof (uintptr_t) - 2] = '\n'; -+ p[0] = 0; -+ -+ /* Test if the pointer guard canaries are either randomized, -+ or equal to the default pointer guard value. -+ Even with randomized pointer guards it might happen -+ that the random number generator generates the same -+ values, but if that happens in more than half from -+ the 16 runs, something is very wrong. */ -+ int ndifferences = 0; -+ int ndefaults = 0; -+ for (i = 0; i < N; ++i) -+ { -+ if (child_ptr_chk_guards[i] != child_ptr_chk_guards[i+1]) -+ ndifferences++; -+ else if (child_ptr_chk_guards[i] == default_guard) -+ ndefaults++; -+ } -+ -+ printf ("differences %d defaults %d\n", ndifferences, ndefaults); -+ -+ if (ndifferences < N / 2 && ndefaults < N / 2) -+ { -+ puts ("pointer guard values are not randomized enough"); -+ puts ("nor equal to the default value"); -+ return 1; -+ } -+ -+ return 0; -+} -+ -+#define OPT_COMMAND 10000 -+#define OPT_CHILD 10001 -+#define CMDLINE_OPTIONS \ -+ { "command", required_argument, NULL, OPT_COMMAND }, \ -+ { "child", no_argument, NULL, OPT_CHILD }, -+#define CMDLINE_PROCESS \ -+ case OPT_COMMAND: \ -+ command = optarg; \ -+ break; \ -+ case OPT_CHILD: \ -+ child = true; \ -+ break; -+#define TEST_FUNCTION do_test () -+#include "../test-skeleton.c" -diff --git a/ports/sysdeps/ia64/stackguard-macros.h b/ports/sysdeps/ia64/stackguard-macros.h -index dc683c2..3907293 100644 ---- a/ports/sysdeps/ia64/stackguard-macros.h -+++ b/ports/sysdeps/ia64/stackguard-macros.h -@@ -2,3 +2,6 @@ - - #define STACK_CHK_GUARD \ - ({ uintptr_t x; asm ("adds %0 = -8, r13;; ld8 %0 = [%0]" : "=r" (x)); x; }) -+ -+#define POINTER_CHK_GUARD \ -+ ({ uintptr_t x; asm ("adds %0 = -16, r13;; ld8 %0 = [%0]" : "=r" (x)); x; }) -diff --git a/ports/sysdeps/tile/stackguard-macros.h b/ports/sysdeps/tile/stackguard-macros.h -index 589ea2b..f2e041b 100644 ---- a/ports/sysdeps/tile/stackguard-macros.h -+++ b/ports/sysdeps/tile/stackguard-macros.h -@@ -4,11 +4,17 @@ - # if __WORDSIZE == 64 - # define STACK_CHK_GUARD \ - ({ uintptr_t x; asm ("addi %0, tp, -16; ld %0, %0" : "=r" (x)); x; }) -+# define POINTER_CHK_GUARD \ -+ ({ uintptr_t x; asm ("addi %0, tp, -24; ld %0, %0" : "=r" (x)); x; }) - # else - # define STACK_CHK_GUARD \ - ({ uintptr_t x; asm ("addi %0, tp, -8; ld4s %0, %0" : "=r" (x)); x; }) -+# define POINTER_CHK_GUARD \ -+ ({ uintptr_t x; asm ("addi %0, tp, -12; ld4s %0, %0" : "=r" (x)); x; }) - # endif - #else - # define STACK_CHK_GUARD \ - ({ uintptr_t x; asm ("addi %0, tp, -8; lw %0, %0" : "=r" (x)); x; }) -+# define POINTER_CHK_GUARD \ -+ ({ uintptr_t x; asm ("addi %0, tp, -12; lw %0, %0" : "=r" (x)); x; }) - #endif -diff --git a/sysdeps/generic/stackguard-macros.h b/sysdeps/generic/stackguard-macros.h -index ababf65..4fa3d96 100644 ---- a/sysdeps/generic/stackguard-macros.h -+++ b/sysdeps/generic/stackguard-macros.h -@@ -2,3 +2,6 @@ - - extern uintptr_t __stack_chk_guard; - #define STACK_CHK_GUARD __stack_chk_guard -+ -+extern uintptr_t __pointer_chk_guard_local; -+#define POINTER_CHK_GUARD __pointer_chk_guard_local -diff --git a/sysdeps/i386/stackguard-macros.h b/sysdeps/i386/stackguard-macros.h -index 8c31e19..0397629 100644 ---- a/sysdeps/i386/stackguard-macros.h -+++ b/sysdeps/i386/stackguard-macros.h -@@ -2,3 +2,11 @@ - - #define STACK_CHK_GUARD \ - ({ uintptr_t x; asm ("movl %%gs:0x14, %0" : "=r" (x)); x; }) -+ -+#define POINTER_CHK_GUARD \ -+ ({ \ -+ uintptr_t x; \ -+ asm ("movl %%gs:%c1, %0" : "=r" (x) \ -+ : "i" (offsetof (tcbhead_t, pointer_guard))); \ -+ x; \ -+ }) -diff --git a/sysdeps/powerpc/powerpc32/stackguard-macros.h b/sysdeps/powerpc/powerpc32/stackguard-macros.h -index 839f6a4..b3d0af8 100644 ---- a/sysdeps/powerpc/powerpc32/stackguard-macros.h -+++ b/sysdeps/powerpc/powerpc32/stackguard-macros.h -@@ -2,3 +2,13 @@ - - #define STACK_CHK_GUARD \ - ({ uintptr_t x; asm ("lwz %0,-28680(2)" : "=r" (x)); x; }) -+ -+#define POINTER_CHK_GUARD \ -+ ({ \ -+ uintptr_t x; \ -+ asm ("lwz %0,%1(2)" \ -+ : "=r" (x) \ -+ : "i" (offsetof (tcbhead_t, pointer_guard) - TLS_TCB_OFFSET - sizeof (tcbhead_t)) \ -+ ); \ -+ x; \ -+ }) -diff --git a/sysdeps/powerpc/powerpc64/stackguard-macros.h b/sysdeps/powerpc/powerpc64/stackguard-macros.h -index 9da879c..4620f96 100644 ---- a/sysdeps/powerpc/powerpc64/stackguard-macros.h -+++ b/sysdeps/powerpc/powerpc64/stackguard-macros.h -@@ -2,3 +2,13 @@ - - #define STACK_CHK_GUARD \ - ({ uintptr_t x; asm ("ld %0,-28688(13)" : "=r" (x)); x; }) -+ -+#define POINTER_CHK_GUARD \ -+ ({ \ -+ uintptr_t x; \ -+ asm ("ld %0,%1(2)" \ -+ : "=r" (x) \ -+ : "i" (offsetof (tcbhead_t, pointer_guard) - TLS_TCB_OFFSET - sizeof (tcbhead_t)) \ -+ ); \ -+ x; \ -+ }) -diff --git a/sysdeps/s390/s390-32/stackguard-macros.h b/sysdeps/s390/s390-32/stackguard-macros.h -index b74c579..449e8d4 100644 ---- a/sysdeps/s390/s390-32/stackguard-macros.h -+++ b/sysdeps/s390/s390-32/stackguard-macros.h -@@ -2,3 +2,14 @@ - - #define STACK_CHK_GUARD \ - ({ uintptr_t x; asm ("ear %0,%%a0; l %0,0x14(%0)" : "=a" (x)); x; }) -+ -+/* On s390/s390x there is no unique pointer guard, instead we use the -+ same value as the stack guard. */ -+#define POINTER_CHK_GUARD \ -+ ({ \ -+ uintptr_t x; \ -+ asm ("ear %0,%%a0; l %0,%1(%0)" \ -+ : "=a" (x) \ -+ : "i" (offsetof (tcbhead_t, stack_guard))); \ -+ x; \ -+ }) -diff --git a/sysdeps/s390/s390-64/stackguard-macros.h b/sysdeps/s390/s390-64/stackguard-macros.h -index 0cebb5f..c8270fb 100644 ---- a/sysdeps/s390/s390-64/stackguard-macros.h -+++ b/sysdeps/s390/s390-64/stackguard-macros.h -@@ -2,3 +2,17 @@ - - #define STACK_CHK_GUARD \ - ({ uintptr_t x; asm ("ear %0,%%a0; sllg %0,%0,32; ear %0,%%a1; lg %0,0x28(%0)" : "=a" (x)); x; }) -+ -+/* On s390/s390x there is no unique pointer guard, instead we use the -+ same value as the stack guard. */ -+#define POINTER_CHK_GUARD \ -+ ({ \ -+ uintptr_t x; \ -+ asm ("ear %0,%%a0;" \ -+ "sllg %0,%0,32;" \ -+ "ear %0,%%a1;" \ -+ "lg %0,%1(%0)" \ -+ : "=a" (x) \ -+ : "i" (offsetof (tcbhead_t, stack_guard))); \ -+ x; \ -+ }) -diff --git a/sysdeps/sparc/sparc32/stackguard-macros.h b/sysdeps/sparc/sparc32/stackguard-macros.h -index c0b02b0..1eef0f1 100644 ---- a/sysdeps/sparc/sparc32/stackguard-macros.h -+++ b/sysdeps/sparc/sparc32/stackguard-macros.h -@@ -2,3 +2,6 @@ - - #define STACK_CHK_GUARD \ - ({ uintptr_t x; asm ("ld [%%g7+0x14], %0" : "=r" (x)); x; }) -+ -+#define POINTER_CHK_GUARD \ -+ ({ uintptr_t x; asm ("ld [%%g7+0x18], %0" : "=r" (x)); x; }) -diff --git a/sysdeps/sparc/sparc64/stackguard-macros.h b/sysdeps/sparc/sparc64/stackguard-macros.h -index 80f0635..cc0c12c 100644 ---- a/sysdeps/sparc/sparc64/stackguard-macros.h -+++ b/sysdeps/sparc/sparc64/stackguard-macros.h -@@ -2,3 +2,6 @@ - - #define STACK_CHK_GUARD \ - ({ uintptr_t x; asm ("ldx [%%g7+0x28], %0" : "=r" (x)); x; }) -+ -+#define POINTER_CHK_GUARD \ -+ ({ uintptr_t x; asm ("ldx [%%g7+0x30], %0" : "=r" (x)); x; }) -diff --git a/sysdeps/x86_64/stackguard-macros.h b/sysdeps/x86_64/stackguard-macros.h -index d7fedb3..1948800 100644 ---- a/sysdeps/x86_64/stackguard-macros.h -+++ b/sysdeps/x86_64/stackguard-macros.h -@@ -4,3 +4,8 @@ - ({ uintptr_t x; \ - asm ("mov %%fs:%c1, %0" : "=r" (x) \ - : "i" (offsetof (tcbhead_t, stack_guard))); x; }) -+ -+#define POINTER_CHK_GUARD \ -+ ({ uintptr_t x; \ -+ asm ("mov %%fs:%c1, %0" : "=r" (x) \ -+ : "i" (offsetof (tcbhead_t, pointer_guard))); x; }) -diff --git a/elf/Makefile b/elf/Makefile -index cb8da93..27d249b 100644 ---- a/elf/Makefile -+++ b/elf/Makefile -@@ -1019,6 +1019,9 @@ tst-stackguard1-ARGS = --command "$(host-test-program-cmd) --child" - tst-stackguard1-static-ARGS = --command "$(objpfx)tst-stackguard1-static --child" - - tst-ptrguard1-ARGS = --command "$(host-test-program-cmd) --child" -+# When built statically, the pointer guard interface uses -+# __pointer_chk_guard_local. -+CFLAGS-tst-ptrguard1-static.c = -DPTRGUARD_LOCAL - tst-ptrguard1-static-ARGS = --command "$(objpfx)tst-ptrguard1-static --child" - - $(objpfx)tst-leaks1: $(libdl) -diff --git a/sysdeps/generic/stackguard-macros.h b/sysdeps/generic/stackguard-macros.h -index 4fa3d96..b4a6b23 100644 ---- a/sysdeps/generic/stackguard-macros.h -+++ b/sysdeps/generic/stackguard-macros.h -@@ -3,5 +3,10 @@ - extern uintptr_t __stack_chk_guard; - #define STACK_CHK_GUARD __stack_chk_guard - -+#ifdef PTRGUARD_LOCAL - extern uintptr_t __pointer_chk_guard_local; --#define POINTER_CHK_GUARD __pointer_chk_guard_local -+# define POINTER_CHK_GUARD __pointer_chk_guard_local -+#else -+extern uintptr_t __pointer_chk_guard; -+# define POINTER_CHK_GUARD __pointer_chk_guard -+#endif diff --git a/core/glibc/glibc-2.18-readdir_r-CVE-2013-4237.patch b/core/glibc/glibc-2.18-readdir_r-CVE-2013-4237.patch deleted file mode 100644 index 7277ca229..000000000 --- a/core/glibc/glibc-2.18-readdir_r-CVE-2013-4237.patch +++ /dev/null @@ -1,281 +0,0 @@ -diff --git a/manual/conf.texi b/manual/conf.texi -index 7eb8b36..c720063 100644 ---- a/manual/conf.texi -+++ b/manual/conf.texi -@@ -1149,6 +1149,9 @@ typed ahead as input. @xref{I/O Queues}. - @deftypevr Macro int NAME_MAX - The uniform system limit (if any) for the length of a file name component, not - including the terminating null character. -+ -+@strong{Portability Note:} On some systems, @theglibc{} defines -+@code{NAME_MAX}, but does not actually enforce this limit. - @end deftypevr - - @comment limits.h -@@ -1157,6 +1160,9 @@ including the terminating null character. - The uniform system limit (if any) for the length of an entire file name (that - is, the argument given to system calls such as @code{open}), including the - terminating null character. -+ -+@strong{Portability Note:} @Theglibc{} does not enforce this limit -+even if @code{PATH_MAX} is defined. - @end deftypevr - - @cindex limits, pipe buffer size -@@ -1476,6 +1482,9 @@ Inquire about the value of @code{POSIX_REC_MIN_XFER_SIZE}. - Inquire about the value of @code{POSIX_REC_XFER_ALIGN}. - @end table - -+@strong{Portability Note:} On some systems, @theglibc{} does not -+enforce @code{_PC_NAME_MAX} or @code{_PC_PATH_MAX} limits. -+ - @node Utility Limits - @section Utility Program Capacity Limits - -diff --git a/manual/filesys.texi b/manual/filesys.texi -index 1df9cf2..814c210 100644 ---- a/manual/filesys.texi -+++ b/manual/filesys.texi -@@ -444,9 +444,9 @@ symbols are declared in the header file @file{dirent.h}. - @comment POSIX.1 - @deftypefun {struct dirent *} readdir (DIR *@var{dirstream}) - This function reads the next entry from the directory. It normally --returns a pointer to a structure containing information about the file. --This structure is statically allocated and can be rewritten by a --subsequent call. -+returns a pointer to a structure containing information about the -+file. This structure is associated with the @var{dirstream} handle -+and can be rewritten by a subsequent call. - - @strong{Portability Note:} On some systems @code{readdir} may not - return entries for @file{.} and @file{..}, even though these are always -@@ -461,19 +461,61 @@ conditions are defined for this function: - The @var{dirstream} argument is not valid. - @end table - --@code{readdir} is not thread safe. Multiple threads using --@code{readdir} on the same @var{dirstream} may overwrite the return --value. Use @code{readdir_r} when this is critical. -+To distinguish between an end-of-directory condition or an error, you -+must set @code{errno} to zero before calling @code{readdir}. To avoid -+entering an infinite loop, you should stop reading from the directory -+after the first error. -+ -+In POSIX.1-2008, @code{readdir} is not thread-safe. In @theglibc{} -+implementation, it is safe to call @code{readdir} concurrently on -+different @var{dirstream}s, but multiple threads accessing the same -+@var{dirstream} result in undefined behavior. @code{readdir_r} is a -+fully thread-safe alternative, but suffers from poor portability (see -+below). It is recommended that you use @code{readdir}, with external -+locking if multiple threads access the same @var{dirstream}. - @end deftypefun - - @comment dirent.h - @comment GNU - @deftypefun int readdir_r (DIR *@var{dirstream}, struct dirent *@var{entry}, struct dirent **@var{result}) --This function is the reentrant version of @code{readdir}. Like --@code{readdir} it returns the next entry from the directory. But to --prevent conflicts between simultaneously running threads the result is --not stored in statically allocated memory. Instead the argument --@var{entry} points to a place to store the result. -+This function is a version of @code{readdir} which performs internal -+locking. Like @code{readdir} it returns the next entry from the -+directory. To prevent conflicts between simultaneously running -+threads the result is stored inside the @var{entry} object. -+ -+@strong{Portability Note:} It is recommended to use @code{readdir} -+instead of @code{readdir_r} for the following reasons: -+ -+@itemize @bullet -+@item -+On systems which do not define @code{NAME_MAX}, it may not be possible -+to use @code{readdir_r} safely because the caller does not specify the -+length of the buffer for the directory entry. -+ -+@item -+On some systems, @code{readdir_r} cannot read directory entries with -+very long names. If such a name is encountered, @theglibc{} -+implementation of @code{readdir_r} returns with an error code of -+@code{ENAMETOOLONG} after the final directory entry has been read. On -+other systems, @code{readdir_r} may return successfully, but the -+@code{d_name} member may not be NUL-terminated or may be truncated. -+ -+@item -+POSIX-1.2008 does not guarantee that @code{readdir} is thread-safe, -+even when access to the same @var{dirstream} is serialized. But in -+current implementations (including @theglibc{}), it is safe to call -+@code{readdir} concurrently on different @var{dirstream}s, so there is -+no need to use @code{readdir_r} in most multi-threaded programs. In -+the rare case that multiple threads need to read from the same -+@var{dirstream}, it is still better to use @code{readdir} and external -+synchronization. -+ -+@item -+It is expected that future versions of POSIX will obsolete -+@code{readdir_r} and mandate the level of thread safety for -+@code{readdir} which is provided by @theglibc{} and other -+implementations today. -+@end itemize - - Normally @code{readdir_r} returns zero and sets @code{*@var{result}} - to @var{entry}. If there are no more entries in the directory or an -@@ -481,15 +523,6 @@ error is detected, @code{readdir_r} sets @code{*@var{result}} to a - null pointer and returns a nonzero error code, also stored in - @code{errno}, as described for @code{readdir}. - --@strong{Portability Note:} On some systems @code{readdir_r} may not --return a NUL terminated string for the file name, even when there is no --@code{d_reclen} field in @code{struct dirent} and the file --name is the maximum allowed size. Modern systems all have the --@code{d_reclen} field, and on old systems multi-threading is not --critical. In any case there is no such problem with the @code{readdir} --function, so that even on systems without the @code{d_reclen} member one --could use multiple threads by using external locking. -- - It is also important to look at the definition of the @code{struct - dirent} type. Simply passing a pointer to an object of this type for - the second parameter of @code{readdir_r} might not be enough. Some -diff --git a/sysdeps/posix/dirstream.h b/sysdeps/posix/dirstream.h -index a7a074d..8e8570d 100644 ---- a/sysdeps/posix/dirstream.h -+++ b/sysdeps/posix/dirstream.h -@@ -39,6 +39,8 @@ struct __dirstream - - off_t filepos; /* Position of next entry to read. */ - -+ int errcode; /* Delayed error code. */ -+ - /* Directory block. */ - char data[0] __attribute__ ((aligned (__alignof__ (void*)))); - }; -diff --git a/sysdeps/posix/opendir.c b/sysdeps/posix/opendir.c -index ddfc3a7..fc05b0f 100644 ---- a/sysdeps/posix/opendir.c -+++ b/sysdeps/posix/opendir.c -@@ -231,6 +231,7 @@ __alloc_dir (int fd, bool close_fd, int flags, const struct stat64 *statp) - dirp->size = 0; - dirp->offset = 0; - dirp->filepos = 0; -+ dirp->errcode = 0; - - return dirp; - } -diff --git a/sysdeps/posix/readdir_r.c b/sysdeps/posix/readdir_r.c -index b5a8e2e..8ed5c3f 100644 ---- a/sysdeps/posix/readdir_r.c -+++ b/sysdeps/posix/readdir_r.c -@@ -40,6 +40,7 @@ __READDIR_R (DIR *dirp, DIRENT_TYPE *entry, DIRENT_TYPE **result) - DIRENT_TYPE *dp; - size_t reclen; - const int saved_errno = errno; -+ int ret; - - __libc_lock_lock (dirp->lock); - -@@ -70,10 +71,10 @@ __READDIR_R (DIR *dirp, DIRENT_TYPE *entry, DIRENT_TYPE **result) - bytes = 0; - __set_errno (saved_errno); - } -+ if (bytes < 0) -+ dirp->errcode = errno; - - dp = NULL; -- /* Reclen != 0 signals that an error occurred. */ -- reclen = bytes != 0; - break; - } - dirp->size = (size_t) bytes; -@@ -106,29 +107,46 @@ __READDIR_R (DIR *dirp, DIRENT_TYPE *entry, DIRENT_TYPE **result) - dirp->filepos += reclen; - #endif - -- /* Skip deleted files. */ -+#ifdef NAME_MAX -+ if (reclen > offsetof (DIRENT_TYPE, d_name) + NAME_MAX + 1) -+ { -+ /* The record is very long. It could still fit into the -+ caller-supplied buffer if we can skip padding at the -+ end. */ -+ size_t namelen = _D_EXACT_NAMLEN (dp); -+ if (namelen <= NAME_MAX) -+ reclen = offsetof (DIRENT_TYPE, d_name) + namelen + 1; -+ else -+ { -+ /* The name is too long. Ignore this file. */ -+ dirp->errcode = ENAMETOOLONG; -+ dp->d_ino = 0; -+ continue; -+ } -+ } -+#endif -+ -+ /* Skip deleted and ignored files. */ - } - while (dp->d_ino == 0); - - if (dp != NULL) - { --#ifdef GETDENTS_64BIT_ALIGNED -- /* The d_reclen value might include padding which is not part of -- the DIRENT_TYPE data structure. */ -- reclen = MIN (reclen, -- offsetof (DIRENT_TYPE, d_name) + sizeof (dp->d_name)); --#endif - *result = memcpy (entry, dp, reclen); --#ifdef GETDENTS_64BIT_ALIGNED -+#ifdef _DIRENT_HAVE_D_RECLEN - entry->d_reclen = reclen; - #endif -+ ret = 0; - } - else -- *result = NULL; -+ { -+ *result = NULL; -+ ret = dirp->errcode; -+ } - - __libc_lock_unlock (dirp->lock); - -- return dp != NULL ? 0 : reclen ? errno : 0; -+ return ret; - } - - #ifdef __READDIR_R_ALIAS -diff --git a/sysdeps/posix/rewinddir.c b/sysdeps/posix/rewinddir.c -index 2935a8e..d4991ad 100644 ---- a/sysdeps/posix/rewinddir.c -+++ b/sysdeps/posix/rewinddir.c -@@ -33,6 +33,7 @@ rewinddir (dirp) - dirp->filepos = 0; - dirp->offset = 0; - dirp->size = 0; -+ dirp->errcode = 0; - #ifndef NOT_IN_libc - __libc_lock_unlock (dirp->lock); - #endif -diff --git a/sysdeps/unix/sysv/linux/i386/readdir64_r.c b/sysdeps/unix/sysv/linux/i386/readdir64_r.c -index 8ebbcfd..a7d114e 100644 ---- a/sysdeps/unix/sysv/linux/i386/readdir64_r.c -+++ b/sysdeps/unix/sysv/linux/i386/readdir64_r.c -@@ -18,7 +18,6 @@ - #define __READDIR_R __readdir64_r - #define __GETDENTS __getdents64 - #define DIRENT_TYPE struct dirent64 --#define GETDENTS_64BIT_ALIGNED 1 - - #include <sysdeps/posix/readdir_r.c> - -diff --git a/sysdeps/unix/sysv/linux/wordsize-64/readdir_r.c b/sysdeps/unix/sysv/linux/wordsize-64/readdir_r.c -index 5ed8e95..290f2c8 100644 ---- a/sysdeps/unix/sysv/linux/wordsize-64/readdir_r.c -+++ b/sysdeps/unix/sysv/linux/wordsize-64/readdir_r.c -@@ -1,5 +1,4 @@ - #define readdir64_r __no_readdir64_r_decl --#define GETDENTS_64BIT_ALIGNED 1 - #include <sysdeps/posix/readdir_r.c> - #undef readdir64_r - weak_alias (__readdir_r, readdir64_r) --- -1.8.3.4 - diff --git a/core/glibc/glibc-2.18-scanf-parse-0e-0.patch b/core/glibc/glibc-2.18-scanf-parse-0e-0.patch deleted file mode 100644 index 651e56590..000000000 --- a/core/glibc/glibc-2.18-scanf-parse-0e-0.patch +++ /dev/null @@ -1,67 +0,0 @@ -diff --git a/stdio-common/tst-sscanf.c b/stdio-common/tst-sscanf.c -index 1edb227..3c34f58 100644 ---- a/stdio-common/tst-sscanf.c -+++ b/stdio-common/tst-sscanf.c -@@ -109,6 +109,19 @@ struct test double_tests[] = - { L("-inf"), L("%g"), 1 } - }; - -+struct test2 -+{ -+ const CHAR *str; -+ const CHAR *fmt; -+ int retval; -+ char residual; -+} double_tests2[] = -+{ -+ { L("0e+0"), L("%g%c"), 1, 0 }, -+ { L("0xe+0"), L("%g%c"), 2, '+' }, -+ { L("0x.e+0"), L("%g%c"), 2, '+' }, -+}; -+ - int - main (void) - { -@@ -196,5 +209,26 @@ main (void) - } - } - -+ for (i = 0; i < sizeof (double_tests2) / sizeof (double_tests2[0]); ++i) -+ { -+ double dummy; -+ int ret; -+ char c = 0; -+ -+ if ((ret = SSCANF (double_tests2[i].str, double_tests2[i].fmt, -+ &dummy, &c)) != double_tests2[i].retval) -+ { -+ printf ("double_tests2[%d] returned %d != %d\n", -+ i, ret, double_tests2[i].retval); -+ result = 1; -+ } -+ else if (ret == 2 && c != double_tests2[i].residual) -+ { -+ printf ("double_tests2[%d] stopped at '%c' != '%c'\n", -+ i, c, double_tests2[i].residual); -+ result = 1; -+ } -+ } -+ - return result; - } -diff --git a/stdio-common/vfscanf.c b/stdio-common/vfscanf.c -index 78dc2fc..e6fa8f3 100644 ---- a/stdio-common/vfscanf.c -+++ b/stdio-common/vfscanf.c -@@ -1966,6 +1966,8 @@ _IO_vfscanf_internal (_IO_FILE *s, const char *format, _IO_va_list argptr, - if (width > 0) - --width; - } -+ else -+ got_digit = 1; - } - - while (1) --- -1.8.4.2 - diff --git a/core/glibc/glibc-2.18-strcoll-CVE-2012-4412+4424.patch b/core/glibc/glibc-2.18-strcoll-CVE-2012-4412+4424.patch deleted file mode 100644 index 5558c1fe9..000000000 --- a/core/glibc/glibc-2.18-strcoll-CVE-2012-4412+4424.patch +++ /dev/null @@ -1,1004 +0,0 @@ -diff --git a/string/strcoll_l.c b/string/strcoll_l.c -index ecda08f..bb34a72 100644 ---- a/string/strcoll_l.c -+++ b/string/strcoll_l.c -@@ -41,11 +41,434 @@ - - #include "../locale/localeinfo.h" - -+/* Track status while looking for sequences in a string. */ -+typedef struct -+{ -+ int len; /* Length of the current sequence. */ -+ size_t val; /* Position of the sequence relative to the -+ previous non-ignored sequence. */ -+ size_t idxnow; /* Current index in sequences. */ -+ size_t idxmax; /* Maximum index in sequences. */ -+ size_t idxcnt; /* Current count of indices. */ -+ size_t backw; /* Current Backward sequence index. */ -+ size_t backw_stop; /* Index where the backward sequences stop. */ -+ const USTRING_TYPE *us; /* The string. */ -+ int32_t *idxarr; /* Array to cache weight indices. */ -+ unsigned char *rulearr; /* Array to cache rules. */ -+ unsigned char rule; /* Saved rule for the first sequence. */ -+ int32_t idx; /* Index to weight of the current sequence. */ -+ int32_t save_idx; /* Save looked up index of a forward -+ sequence after the last backward -+ sequence. */ -+ const USTRING_TYPE *back_us; /* Beginning of the backward sequence. */ -+} coll_seq; -+ -+/* Get next sequence. The weight indices are cached, so we don't need to -+ traverse the string. */ -+static void -+get_next_seq_cached (coll_seq *seq, int nrules, int pass, -+ const unsigned char *rulesets, -+ const USTRING_TYPE *weights) -+{ -+ size_t val = seq->val = 0; -+ int len = seq->len; -+ size_t backw_stop = seq->backw_stop; -+ size_t backw = seq->backw; -+ size_t idxcnt = seq->idxcnt; -+ size_t idxmax = seq->idxmax; -+ size_t idxnow = seq->idxnow; -+ unsigned char *rulearr = seq->rulearr; -+ int32_t *idxarr = seq->idxarr; -+ -+ while (len == 0) -+ { -+ ++val; -+ if (backw_stop != ~0ul) -+ { -+ /* There is something pushed. */ -+ if (backw == backw_stop) -+ { -+ /* The last pushed character was handled. Continue -+ with forward characters. */ -+ if (idxcnt < idxmax) -+ { -+ idxnow = idxcnt; -+ backw_stop = ~0ul; -+ } -+ else -+ { -+ /* Nothing any more. The backward sequence -+ ended with the last sequence in the string. */ -+ idxnow = ~0ul; -+ break; -+ } -+ } -+ else -+ idxnow = --backw; -+ } -+ else -+ { -+ backw_stop = idxcnt; -+ -+ while (idxcnt < idxmax) -+ { -+ if ((rulesets[rulearr[idxcnt] * nrules + pass] -+ & sort_backward) == 0) -+ /* No more backward characters to push. */ -+ break; -+ ++idxcnt; -+ } -+ -+ if (backw_stop == idxcnt) -+ { -+ /* No sequence at all or just one. */ -+ if (idxcnt == idxmax) -+ /* Note that LEN is still zero. */ -+ break; -+ -+ backw_stop = ~0ul; -+ idxnow = idxcnt++; -+ } -+ else -+ /* We pushed backward sequences. */ -+ idxnow = backw = idxcnt - 1; -+ } -+ len = weights[idxarr[idxnow]++]; -+ } -+ -+ /* Update the structure. */ -+ seq->val = val; -+ seq->len = len; -+ seq->backw_stop = backw_stop; -+ seq->backw = backw; -+ seq->idxcnt = idxcnt; -+ seq->idxnow = idxnow; -+} -+ -+/* Get next sequence. Traverse the string as required. */ -+static void -+get_next_seq (coll_seq *seq, int nrules, const unsigned char *rulesets, -+ const USTRING_TYPE *weights, const int32_t *table, -+ const USTRING_TYPE *extra, const int32_t *indirect) -+{ -+#include WEIGHT_H -+ size_t val = seq->val = 0; -+ int len = seq->len; -+ size_t backw_stop = seq->backw_stop; -+ size_t backw = seq->backw; -+ size_t idxcnt = seq->idxcnt; -+ size_t idxmax = seq->idxmax; -+ size_t idxnow = seq->idxnow; -+ unsigned char *rulearr = seq->rulearr; -+ int32_t *idxarr = seq->idxarr; -+ const USTRING_TYPE *us = seq->us; -+ -+ while (len == 0) -+ { -+ ++val; -+ if (backw_stop != ~0ul) -+ { -+ /* There is something pushed. */ -+ if (backw == backw_stop) -+ { -+ /* The last pushed character was handled. Continue -+ with forward characters. */ -+ if (idxcnt < idxmax) -+ { -+ idxnow = idxcnt; -+ backw_stop = ~0ul; -+ } -+ else -+ /* Nothing any more. The backward sequence ended with -+ the last sequence in the string. Note that LEN -+ is still zero. */ -+ break; -+ } -+ else -+ idxnow = --backw; -+ } -+ else -+ { -+ backw_stop = idxmax; -+ -+ while (*us != L('\0')) -+ { -+ int32_t tmp = findidx (&us, -1); -+ rulearr[idxmax] = tmp >> 24; -+ idxarr[idxmax] = tmp & 0xffffff; -+ idxcnt = idxmax++; -+ -+ if ((rulesets[rulearr[idxcnt] * nrules] -+ & sort_backward) == 0) -+ /* No more backward characters to push. */ -+ break; -+ ++idxcnt; -+ } -+ -+ if (backw_stop >= idxcnt) -+ { -+ /* No sequence at all or just one. */ -+ if (idxcnt == idxmax || backw_stop > idxcnt) -+ /* Note that LEN is still zero. */ -+ break; -+ -+ backw_stop = ~0ul; -+ idxnow = idxcnt; -+ } -+ else -+ /* We pushed backward sequences. */ -+ idxnow = backw = idxcnt - 1; -+ } -+ len = weights[idxarr[idxnow]++]; -+ } -+ -+ /* Update the structure. */ -+ seq->val = val; -+ seq->len = len; -+ seq->backw_stop = backw_stop; -+ seq->backw = backw; -+ seq->idxcnt = idxcnt; -+ seq->idxmax = idxmax; -+ seq->idxnow = idxnow; -+ seq->us = us; -+} -+ -+/* Get next sequence. Traverse the string as required. This function does not -+ set or use any index or rule cache. */ -+static void -+get_next_seq_nocache (coll_seq *seq, int nrules, const unsigned char *rulesets, -+ const USTRING_TYPE *weights, const int32_t *table, -+ const USTRING_TYPE *extra, const int32_t *indirect, -+ int pass) -+{ -+#include WEIGHT_H -+ size_t val = seq->val = 0; -+ int len = seq->len; -+ size_t backw_stop = seq->backw_stop; -+ size_t backw = seq->backw; -+ size_t idxcnt = seq->idxcnt; -+ size_t idxmax = seq->idxmax; -+ int32_t idx = seq->idx; -+ const USTRING_TYPE *us = seq->us; -+ -+ while (len == 0) -+ { -+ ++val; -+ if (backw_stop != ~0ul) -+ { -+ /* There is something pushed. */ -+ if (backw == backw_stop) -+ { -+ /* The last pushed character was handled. Continue -+ with forward characters. */ -+ if (idxcnt < idxmax) -+ { -+ idx = seq->save_idx; -+ backw_stop = ~0ul; -+ } -+ else -+ { -+ /* Nothing anymore. The backward sequence ended with -+ the last sequence in the string. Note that len is -+ still zero. */ -+ idx = 0; -+ break; -+ } -+ } -+ else -+ { -+ /* XXX Traverse BACKW sequences from the beginning of -+ BACKW_STOP to get the next sequence. Is ther a quicker way -+ to do this? */ -+ size_t i = backw_stop; -+ us = seq->back_us; -+ while (i < backw) -+ { -+ int32_t tmp = findidx (&us, -1); -+ idx = tmp & 0xffffff; -+ i++; -+ } -+ --backw; -+ us = seq->us; -+ } -+ } -+ else -+ { -+ backw_stop = idxmax; -+ int32_t prev_idx = idx; -+ -+ while (*us != L('\0')) -+ { -+ int32_t tmp = findidx (&us, -1); -+ unsigned char rule = tmp >> 24; -+ prev_idx = idx; -+ idx = tmp & 0xffffff; -+ idxcnt = idxmax++; -+ -+ /* Save the rule for the first sequence. */ -+ if (__glibc_unlikely (idxcnt == 0)) -+ seq->rule = rule; -+ -+ if ((rulesets[rule * nrules + pass] -+ & sort_backward) == 0) -+ /* No more backward characters to push. */ -+ break; -+ ++idxcnt; -+ } -+ -+ if (backw_stop >= idxcnt) -+ { -+ /* No sequence at all or just one. */ -+ if (idxcnt == idxmax || backw_stop > idxcnt) -+ /* Note that len is still zero. */ -+ break; -+ -+ backw_stop = ~0ul; -+ } -+ else -+ { -+ /* We pushed backward sequences. If the stream ended with the -+ backward sequence, then we process the last sequence we -+ found. Otherwise we process the sequence before the last -+ one since the last one was a forward sequence. */ -+ seq->back_us = seq->us; -+ seq->us = us; -+ backw = idxcnt; -+ if (idxmax > idxcnt) -+ { -+ backw--; -+ seq->save_idx = idx; -+ idx = prev_idx; -+ } -+ if (backw > backw_stop) -+ backw--; -+ } -+ } -+ -+ len = weights[idx++]; -+ /* Skip over indices of previous levels. */ -+ for (int i = 0; i < pass; i++) -+ { -+ idx += len; -+ len = weights[idx]; -+ idx++; -+ } -+ } -+ -+ /* Update the structure. */ -+ seq->val = val; -+ seq->len = len; -+ seq->backw_stop = backw_stop; -+ seq->backw = backw; -+ seq->idxcnt = idxcnt; -+ seq->idxmax = idxmax; -+ seq->us = us; -+ seq->idx = idx; -+} -+ -+/* Compare two sequences. This version does not use the index and rules -+ cache. */ -+static int -+do_compare_nocache (coll_seq *seq1, coll_seq *seq2, int position, -+ const USTRING_TYPE *weights) -+{ -+ int seq1len = seq1->len; -+ int seq2len = seq2->len; -+ size_t val1 = seq1->val; -+ size_t val2 = seq2->val; -+ int idx1 = seq1->idx; -+ int idx2 = seq2->idx; -+ int result = 0; -+ -+ /* Test for position if necessary. */ -+ if (position && val1 != val2) -+ { -+ result = val1 > val2 ? 1 : -1; -+ goto out; -+ } -+ -+ /* Compare the two sequences. */ -+ do -+ { -+ if (weights[idx1] != weights[idx2]) -+ { -+ /* The sequences differ. */ -+ result = weights[idx1] - weights[idx2]; -+ goto out; -+ } -+ -+ /* Increment the offsets. */ -+ ++idx1; -+ ++idx2; -+ -+ --seq1len; -+ --seq2len; -+ } -+ while (seq1len > 0 && seq2len > 0); -+ -+ if (position && seq1len != seq2len) -+ result = seq1len - seq2len; -+ -+out: -+ seq1->len = seq1len; -+ seq2->len = seq2len; -+ seq1->idx = idx1; -+ seq2->idx = idx2; -+ return result; -+} -+ -+/* Compare two sequences using the index cache. */ -+static int -+do_compare (coll_seq *seq1, coll_seq *seq2, int position, -+ const USTRING_TYPE *weights) -+{ -+ int seq1len = seq1->len; -+ int seq2len = seq2->len; -+ size_t val1 = seq1->val; -+ size_t val2 = seq2->val; -+ int32_t *idx1arr = seq1->idxarr; -+ int32_t *idx2arr = seq2->idxarr; -+ int idx1now = seq1->idxnow; -+ int idx2now = seq2->idxnow; -+ int result = 0; -+ -+ /* Test for position if necessary. */ -+ if (position && val1 != val2) -+ { -+ result = val1 > val2 ? 1 : -1; -+ goto out; -+ } -+ -+ /* Compare the two sequences. */ -+ do -+ { -+ if (weights[idx1arr[idx1now]] != weights[idx2arr[idx2now]]) -+ { -+ /* The sequences differ. */ -+ result = weights[idx1arr[idx1now]] - weights[idx2arr[idx2now]]; -+ goto out; -+ } -+ -+ /* Increment the offsets. */ -+ ++idx1arr[idx1now]; -+ ++idx2arr[idx2now]; -+ -+ --seq1len; -+ --seq2len; -+ } -+ while (seq1len > 0 && seq2len > 0); -+ -+ if (position && seq1len != seq2len) -+ result = seq1len - seq2len; -+ -+out: -+ seq1->len = seq1len; -+ seq2->len = seq2len; -+ return result; -+} -+ - int --STRCOLL (s1, s2, l) -- const STRING_TYPE *s1; -- const STRING_TYPE *s2; -- __locale_t l; -+STRCOLL (const STRING_TYPE *s1, const STRING_TYPE *s2, __locale_t l) - { - struct __locale_data *current = l->__locales[LC_COLLATE]; - uint_fast32_t nrules = current->values[_NL_ITEM_INDEX (_NL_COLLATE_NRULES)].word; -@@ -56,34 +479,6 @@ STRCOLL (s1, s2, l) - const USTRING_TYPE *weights; - const USTRING_TYPE *extra; - const int32_t *indirect; -- uint_fast32_t pass; -- int result = 0; -- const USTRING_TYPE *us1; -- const USTRING_TYPE *us2; -- size_t s1len; -- size_t s2len; -- int32_t *idx1arr; -- int32_t *idx2arr; -- unsigned char *rule1arr; -- unsigned char *rule2arr; -- size_t idx1max; -- size_t idx2max; -- size_t idx1cnt; -- size_t idx2cnt; -- size_t idx1now; -- size_t idx2now; -- size_t backw1_stop; -- size_t backw2_stop; -- size_t backw1; -- size_t backw2; -- int val1; -- int val2; -- int position; -- int seq1len; -- int seq2len; -- int use_malloc; -- --#include WEIGHT_H - - if (nrules == 0) - return STRCMP (s1, s2); -@@ -98,7 +493,6 @@ STRCOLL (s1, s2, l) - current->values[_NL_ITEM_INDEX (CONCAT(_NL_COLLATE_EXTRA,SUFFIX))].string; - indirect = (const int32_t *) - current->values[_NL_ITEM_INDEX (CONCAT(_NL_COLLATE_INDIRECT,SUFFIX))].string; -- use_malloc = 0; - - assert (((uintptr_t) table) % __alignof__ (table[0]) == 0); - assert (((uintptr_t) weights) % __alignof__ (weights[0]) == 0); -@@ -106,18 +500,13 @@ STRCOLL (s1, s2, l) - assert (((uintptr_t) indirect) % __alignof__ (indirect[0]) == 0); - - /* We need this a few times. */ -- s1len = STRLEN (s1); -- s2len = STRLEN (s2); -+ size_t s1len = STRLEN (s1); -+ size_t s2len = STRLEN (s2); - - /* Catch empty strings. */ -- if (__builtin_expect (s1len == 0, 0) || __builtin_expect (s2len == 0, 0)) -+ if (__glibc_unlikely (s1len == 0) || __glibc_unlikely (s2len == 0)) - return (s1len != 0) - (s2len != 0); - -- /* We need the elements of the strings as unsigned values since they -- are used as indeces. */ -- us1 = (const USTRING_TYPE *) s1; -- us2 = (const USTRING_TYPE *) s2; -- - /* Perform the first pass over the string and while doing this find - and store the weights for each character. Since we want this to - be as fast as possible we are using `alloca' to store the temporary -@@ -127,411 +516,124 @@ STRCOLL (s1, s2, l) - - Please note that the localedef programs makes sure that `position' - is not used at the first level. */ -- if (! __libc_use_alloca ((s1len + s2len) * (sizeof (int32_t) + 1))) -- { -- idx1arr = (int32_t *) malloc ((s1len + s2len) * (sizeof (int32_t) + 1)); -- idx2arr = &idx1arr[s1len]; -- rule1arr = (unsigned char *) &idx2arr[s2len]; -- rule2arr = &rule1arr[s1len]; -- -- if (idx1arr == NULL) -- /* No memory. Well, go with the stack then. -- -- XXX Once this implementation is stable we will handle this -- differently. Instead of precomputing the indeces we will -- do this in time. This means, though, that this happens for -- every pass again. */ -- goto try_stack; -- use_malloc = 1; -- } -- else -- { -- try_stack: -- idx1arr = (int32_t *) alloca (s1len * sizeof (int32_t)); -- idx2arr = (int32_t *) alloca (s2len * sizeof (int32_t)); -- rule1arr = (unsigned char *) alloca (s1len); -- rule2arr = (unsigned char *) alloca (s2len); -- } - -- idx1cnt = 0; -- idx2cnt = 0; -- idx1max = 0; -- idx2max = 0; -- idx1now = 0; -- idx2now = 0; -- backw1_stop = ~0ul; -- backw2_stop = ~0ul; -- backw1 = ~0ul; -- backw2 = ~0ul; -- seq1len = 0; -- seq2len = 0; -- position = rulesets[0] & sort_position; -- while (1) -- { -- val1 = 0; -- val2 = 0; -- -- /* Get the next non-IGNOREd element for string `s1'. */ -- if (seq1len == 0) -- do -- { -- ++val1; -- -- if (backw1_stop != ~0ul) -- { -- /* The is something pushed. */ -- if (backw1 == backw1_stop) -- { -- /* The last pushed character was handled. Continue -- with forward characters. */ -- if (idx1cnt < idx1max) -- { -- idx1now = idx1cnt; -- backw1_stop = ~0ul; -- } -- else -- /* Nothing anymore. The backward sequence ended with -- the last sequence in the string. Note that seq1len -- is still zero. */ -- break; -- } -- else -- idx1now = --backw1; -- } -- else -- { -- backw1_stop = idx1max; -- -- while (*us1 != L('\0')) -- { -- int32_t tmp = findidx (&us1, -1); -- rule1arr[idx1max] = tmp >> 24; -- idx1arr[idx1max] = tmp & 0xffffff; -- idx1cnt = idx1max++; -- -- if ((rulesets[rule1arr[idx1cnt] * nrules] -- & sort_backward) == 0) -- /* No more backward characters to push. */ -- break; -- ++idx1cnt; -- } -- -- if (backw1_stop >= idx1cnt) -- { -- /* No sequence at all or just one. */ -- if (idx1cnt == idx1max || backw1_stop > idx1cnt) -- /* Note that seq1len is still zero. */ -- break; -- -- backw1_stop = ~0ul; -- idx1now = idx1cnt; -- } -- else -- /* We pushed backward sequences. */ -- idx1now = backw1 = idx1cnt - 1; -- } -- } -- while ((seq1len = weights[idx1arr[idx1now]++]) == 0); -- -- /* And the same for string `s2'. */ -- if (seq2len == 0) -- do -- { -- ++val2; -- -- if (backw2_stop != ~0ul) -- { -- /* The is something pushed. */ -- if (backw2 == backw2_stop) -- { -- /* The last pushed character was handled. Continue -- with forward characters. */ -- if (idx2cnt < idx2max) -- { -- idx2now = idx2cnt; -- backw2_stop = ~0ul; -- } -- else -- /* Nothing anymore. The backward sequence ended with -- the last sequence in the string. Note that seq2len -- is still zero. */ -- break; -- } -- else -- idx2now = --backw2; -- } -- else -- { -- backw2_stop = idx2max; -- -- while (*us2 != L('\0')) -- { -- int32_t tmp = findidx (&us2, -1); -- rule2arr[idx2max] = tmp >> 24; -- idx2arr[idx2max] = tmp & 0xffffff; -- idx2cnt = idx2max++; -- -- if ((rulesets[rule2arr[idx2cnt] * nrules] -- & sort_backward) == 0) -- /* No more backward characters to push. */ -- break; -- ++idx2cnt; -- } -- -- if (backw2_stop >= idx2cnt) -- { -- /* No sequence at all or just one. */ -- if (idx2cnt == idx2max || backw2_stop > idx2cnt) -- /* Note that seq1len is still zero. */ -- break; -- -- backw2_stop = ~0ul; -- idx2now = idx2cnt; -- } -- else -- /* We pushed backward sequences. */ -- idx2now = backw2 = idx2cnt - 1; -- } -- } -- while ((seq2len = weights[idx2arr[idx2now]++]) == 0); -- -- /* See whether any or both strings are empty. */ -- if (seq1len == 0 || seq2len == 0) -- { -- if (seq1len == seq2len) -- /* Both ended. So far so good, both strings are equal at the -- first level. */ -- break; -- -- /* This means one string is shorter than the other. Find out -- which one and return an appropriate value. */ -- result = seq1len == 0 ? -1 : 1; -- goto free_and_return; -- } -+ coll_seq seq1, seq2; -+ bool use_malloc = false; -+ int result = 0; - -- /* Test for position if necessary. */ -- if (position && val1 != val2) -- { -- result = val1 - val2; -- goto free_and_return; -- } -+ memset (&seq1, 0, sizeof (seq1)); -+ seq2 = seq1; - -- /* Compare the two sequences. */ -- do -- { -- if (weights[idx1arr[idx1now]] != weights[idx2arr[idx2now]]) -- { -- /* The sequences differ. */ -- result = weights[idx1arr[idx1now]] - weights[idx2arr[idx2now]]; -- goto free_and_return; -- } -+ size_t size_max = SIZE_MAX / (sizeof (int32_t) + 1); - -- /* Increment the offsets. */ -- ++idx1arr[idx1now]; -- ++idx2arr[idx2now]; -+ /* If the strings are long enough to cause overflow in the size request, then -+ skip the allocation and proceed with the non-cached routines. */ -+ if (MIN (s1len, s2len) > size_max -+ || MAX (s1len, s2len) > size_max - MIN (s1len, s2len)) -+ goto begin_collate; - -- --seq1len; -- --seq2len; -- } -- while (seq1len > 0 && seq2len > 0); -+ if (! __libc_use_alloca ((s1len + s2len) * (sizeof (int32_t) + 1))) -+ { -+ seq1.idxarr = (int32_t *) malloc ((s1len + s2len) * (sizeof (int32_t) + 1)); - -- if (position && seq1len != seq2len) -+ /* If we failed to allocate memory, we leave everything as NULL so that -+ we use the nocache version of traversal and comparison functions. */ -+ if (seq1.idxarr != NULL) - { -- result = seq1len - seq2len; -- goto free_and_return; -+ seq2.idxarr = &seq1.idxarr[s1len]; -+ seq1.rulearr = (unsigned char *) &seq2.idxarr[s2len]; -+ seq2.rulearr = &seq1.rulearr[s1len]; -+ use_malloc = true; - } - } -+ else -+ { -+ seq1.idxarr = (int32_t *) alloca (s1len * sizeof (int32_t)); -+ seq2.idxarr = (int32_t *) alloca (s2len * sizeof (int32_t)); -+ seq1.rulearr = (unsigned char *) alloca (s1len); -+ seq2.rulearr = (unsigned char *) alloca (s2len); -+ } - -- /* Now the remaining passes over the weights. We now use the -- indeces we found before. */ -- for (pass = 1; pass < nrules; ++pass) -+ int rule; -+ -+ begin_collate: -+ rule = 0; -+ /* Cache values in the first pass and if needed, use them in subsequent -+ passes. */ -+ for (int pass = 0; pass < nrules; ++pass) - { -+ seq1.idxcnt = 0; -+ seq1.idx = 0; -+ seq2.idx = 0; -+ seq1.backw_stop = ~0ul; -+ seq1.backw = ~0ul; -+ seq2.idxcnt = 0; -+ seq2.backw_stop = ~0ul; -+ seq2.backw = ~0ul; -+ -+ /* We need the elements of the strings as unsigned values since they -+ are used as indices. */ -+ seq1.us = (const USTRING_TYPE *) s1; -+ seq2.us = (const USTRING_TYPE *) s2; -+ - /* We assume that if a rule has defined `position' in one section - this is true for all of them. */ -- idx1cnt = 0; -- idx2cnt = 0; -- backw1_stop = ~0ul; -- backw2_stop = ~0ul; -- backw1 = ~0ul; -- backw2 = ~0ul; -- position = rulesets[rule1arr[0] * nrules + pass] & sort_position; -+ int position = rulesets[rule * nrules + pass] & sort_position; - - while (1) - { -- val1 = 0; -- val2 = 0; -- -- /* Get the next non-IGNOREd element for string `s1'. */ -- if (seq1len == 0) -- do -- { -- ++val1; -- -- if (backw1_stop != ~0ul) -- { -- /* The is something pushed. */ -- if (backw1 == backw1_stop) -- { -- /* The last pushed character was handled. Continue -- with forward characters. */ -- if (idx1cnt < idx1max) -- { -- idx1now = idx1cnt; -- backw1_stop = ~0ul; -- } -- else -- { -- /* Nothing anymore. The backward sequence -- ended with the last sequence in the string. */ -- idx1now = ~0ul; -- break; -- } -- } -- else -- idx1now = --backw1; -- } -- else -- { -- backw1_stop = idx1cnt; -- -- while (idx1cnt < idx1max) -- { -- if ((rulesets[rule1arr[idx1cnt] * nrules + pass] -- & sort_backward) == 0) -- /* No more backward characters to push. */ -- break; -- ++idx1cnt; -- } -- -- if (backw1_stop == idx1cnt) -- { -- /* No sequence at all or just one. */ -- if (idx1cnt == idx1max) -- /* Note that seq1len is still zero. */ -- break; -- -- backw1_stop = ~0ul; -- idx1now = idx1cnt++; -- } -- else -- /* We pushed backward sequences. */ -- idx1now = backw1 = idx1cnt - 1; -- } -- } -- while ((seq1len = weights[idx1arr[idx1now]++]) == 0); -- -- /* And the same for string `s2'. */ -- if (seq2len == 0) -- do -- { -- ++val2; -- -- if (backw2_stop != ~0ul) -- { -- /* The is something pushed. */ -- if (backw2 == backw2_stop) -- { -- /* The last pushed character was handled. Continue -- with forward characters. */ -- if (idx2cnt < idx2max) -- { -- idx2now = idx2cnt; -- backw2_stop = ~0ul; -- } -- else -- { -- /* Nothing anymore. The backward sequence -- ended with the last sequence in the string. */ -- idx2now = ~0ul; -- break; -- } -- } -- else -- idx2now = --backw2; -- } -- else -- { -- backw2_stop = idx2cnt; -- -- while (idx2cnt < idx2max) -- { -- if ((rulesets[rule2arr[idx2cnt] * nrules + pass] -- & sort_backward) == 0) -- /* No more backward characters to push. */ -- break; -- ++idx2cnt; -- } -- -- if (backw2_stop == idx2cnt) -- { -- /* No sequence at all or just one. */ -- if (idx2cnt == idx2max) -- /* Note that seq2len is still zero. */ -- break; -- -- backw2_stop = ~0ul; -- idx2now = idx2cnt++; -- } -- else -- /* We pushed backward sequences. */ -- idx2now = backw2 = idx2cnt - 1; -- } -- } -- while ((seq2len = weights[idx2arr[idx2now]++]) == 0); -+ if (__glibc_unlikely (seq1.idxarr == NULL)) -+ { -+ get_next_seq_nocache (&seq1, nrules, rulesets, weights, table, -+ extra, indirect, pass); -+ get_next_seq_nocache (&seq2, nrules, rulesets, weights, table, -+ extra, indirect, pass); -+ } -+ else if (pass == 0) -+ { -+ get_next_seq (&seq1, nrules, rulesets, weights, table, extra, -+ indirect); -+ get_next_seq (&seq2, nrules, rulesets, weights, table, extra, -+ indirect); -+ } -+ else -+ { -+ get_next_seq_cached (&seq1, nrules, pass, rulesets, weights); -+ get_next_seq_cached (&seq2, nrules, pass, rulesets, weights); -+ } - - /* See whether any or both strings are empty. */ -- if (seq1len == 0 || seq2len == 0) -+ if (seq1.len == 0 || seq2.len == 0) - { -- if (seq1len == seq2len) -+ if (seq1.len == seq2.len) - /* Both ended. So far so good, both strings are equal - at this level. */ - break; - - /* This means one string is shorter than the other. Find out - which one and return an appropriate value. */ -- result = seq1len == 0 ? -1 : 1; -+ result = seq1.len == 0 ? -1 : 1; - goto free_and_return; - } - -- /* Test for position if necessary. */ -- if (position && val1 != val2) -- { -- result = val1 - val2; -- goto free_and_return; -- } -- -- /* Compare the two sequences. */ -- do -- { -- if (weights[idx1arr[idx1now]] != weights[idx2arr[idx2now]]) -- { -- /* The sequences differ. */ -- result = (weights[idx1arr[idx1now]] -- - weights[idx2arr[idx2now]]); -- goto free_and_return; -- } -- -- /* Increment the offsets. */ -- ++idx1arr[idx1now]; -- ++idx2arr[idx2now]; -- -- --seq1len; -- --seq2len; -- } -- while (seq1len > 0 && seq2len > 0); -- -- if (position && seq1len != seq2len) -- { -- result = seq1len - seq2len; -- goto free_and_return; -- } -+ if (__glibc_unlikely (seq1.idxarr == NULL)) -+ result = do_compare_nocache (&seq1, &seq2, position, weights); -+ else -+ result = do_compare (&seq1, &seq2, position, weights); -+ if (result != 0) -+ goto free_and_return; - } -+ -+ if (__glibc_likely (seq1.rulearr != NULL)) -+ rule = seq1.rulearr[0]; -+ else -+ rule = seq1.rule; - } - - /* Free the memory if needed. */ - free_and_return: - if (use_malloc) -- free (idx1arr); -+ free (seq1.idxarr); - - return result; - } diff --git a/core/glibc/glibc-2.18-strstr-hackfix.patch b/core/glibc/glibc-2.18-strstr-hackfix.patch deleted file mode 100644 index 6149f88bc..000000000 --- a/core/glibc/glibc-2.18-strstr-hackfix.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/sysdeps/x86_64/multiarch/strstr.c b/sysdeps/x86_64/multiarch/strstr.c -index cd63b68..03d8b9a 100644 ---- a/sysdeps/x86_64/multiarch/strstr.c -+++ b/sysdeps/x86_64/multiarch/strstr.c -@@ -86,7 +86,7 @@ - /* Simple replacement of movdqu to address 4KB boundary cross issue. - If EOS occurs within less than 16B before 4KB boundary, we don't - cross to next page. */ --static __m128i -+static inline __m128i - __m128i_strloadu (const unsigned char * p, __m128i zero) - { - if (__builtin_expect ((int) ((size_t) p & 0xfff) > 0xff0, 0)) diff --git a/core/glibc/glibc.install b/core/glibc/glibc.install index 749838c16..31ce3dae2 100644 --- a/core/glibc/glibc.install +++ b/core/glibc/glibc.install @@ -4,7 +4,7 @@ filelist=(libc.info{,-1,-2,-3,-4,-5,-6,-7,-8,-9,-10,-11}) post_upgrade() { ldconfig -r . - if [[ $(vercmp 2.19 $2) = 1 ]]; then + if [[ $(vercmp 2.19-2 $2) = 1 ]]; then locale-gen fi diff --git a/core/glibc/locale-gen b/core/glibc/locale-gen index 51191f810..5aff344c4 100755 --- a/core/glibc/locale-gen +++ b/core/glibc/locale-gen @@ -4,53 +4,39 @@ set -e LOCALEGEN=/etc/locale.gen LOCALES=/usr/share/i18n/locales -unset POSIXLY_CORRECT +if [ -n "$POSIXLY_CORRECT" ]; then + unset POSIXLY_CORRECT +fi -[ -s "$LOCALEGEN" ] || exit 0 + +[ -f $LOCALEGEN -a -s $LOCALEGEN ] || exit 0; # Remove all old locale dir and locale-archive before generating new # locale data. -rm -rf /usr/lib/locale/* +rm -rf /usr/lib/locale/* || true umask 022 -gen() { - local locale=$1 - local charset=$2 - local input= - - if [ -z "$locale" ] || [ -z "$charset" ]; then - echo "error: Bad entry '$locale $charset'" - return - fi - - printf ' %s.%s\n' "$(echo "$locale" | sed 's/\([^.\@]*\).*/\1/')" "$charset" - - if [ -f "$LOCALES/$locale" ]; then - input=$locale - else - input=$(echo $locale | sed 's/\([^.]*\)[^@]*\(.*\)/\1\2/') - fi - - localedef -i "$input" -c -f "$charset" -A /usr/share/locale/locale.alias "$locale" +is_entry_ok() { + if [ -n "$locale" -a -n "$charset" ] ; then + true + else + echo "error: Bad entry '$locale $charset'" + false + fi } -maxjobs=$(grep -c processor /proc/cpuinfo 2>/dev/null || echo 1) echo "Generating locales..." while read locale charset; do \ - case $locale in - \#*|'') - continue - ;; - esac - gen "$locale" "$charset" & - - # keep no more than $maxjobs jobs in flight - while [ $(jobs | wc -l) -ge $maxjobs ]; do - sleep 0.25 - jobs >/dev/null - done + case $locale in \#*) continue;; "") continue;; esac; \ + is_entry_ok || continue + echo -n " `echo $locale | sed 's/\([^.\@]*\).*/\1/'`"; \ + echo -n ".$charset"; \ + echo -n `echo $locale | sed 's/\([^\@]*\)\(\@.*\)*/\2/'`; \ + echo -n '...'; \ + if [ -f $LOCALES/$locale ]; then input=$locale; else \ + input=`echo $locale | sed 's/\([^.]*\)[^@]*\(.*\)/\1\2/'`; fi; \ + localedef -i $input -c -f $charset -A /usr/share/locale/locale.alias $locale; \ + echo ' done'; \ done < $LOCALEGEN -wait - echo "Generation complete." diff --git a/extra/git/PKGBUILD b/extra/git/PKGBUILD index cbfc30fc8..78fb3a1fe 100644 --- a/extra/git/PKGBUILD +++ b/extra/git/PKGBUILD @@ -1,8 +1,8 @@ -# $Id: PKGBUILD 205529 2014-02-06 18:45:30Z dan $ +# $Id: PKGBUILD 205952 2014-02-14 19:41:05Z dan $ # Maintainer: Dan McGee <dan@archlinux.org> pkgname=git -pkgver=1.8.5.4 +pkgver=1.8.5.5 pkgrel=1 pkgdesc="the fast distributed version control system" arch=(i686 x86_64) @@ -107,6 +107,6 @@ package() { install -D -m 644 "$srcdir"/git-daemon.socket "$pkgdir"/usr/lib/systemd/system/git-daemon.socket } -md5sums=('25965b5973aae43848a4ba5ca91b6a52' +md5sums=('55c3b57b9d168facbc681d9f7b9a0803' '042524f942785772d7bd52a1f02fe5ae' 'f67869315c2cc112e076f0c73f248002') diff --git a/extra/maxima/PKGBUILD b/extra/maxima/PKGBUILD index 4d233049c..28a98b68e 100644 --- a/extra/maxima/PKGBUILD +++ b/extra/maxima/PKGBUILD @@ -1,15 +1,15 @@ -# $Id: PKGBUILD 204865 2014-01-29 18:43:38Z ronald $ +# $Id: PKGBUILD 205937 2014-02-14 10:21:00Z juergen $ # Maintainer: Ronald van Haren <ronald.archlinux.org> # Contributor: Damir Perisa <damir@archlinux.org> pkgname=maxima pkgver=5.32.1 -pkgrel=1 +pkgrel=2 pkgdesc="A sophisticated computer algebra system" arch=('i686' 'x86_64') license=('GPL') url="http://maxima.sourceforge.net" -depends=('sbcl=1.1.14' 'texinfo' 'sh') +depends=('sbcl=1.1.15' 'texinfo' 'sh') makedepends=('python2') optdepends=('gnuplot: plotting capabilities' 'rlwrap: readline support via /usr/bin/rmaxima' 'tk: graphical xmaxima interface') # needs rebuild when bash changes version diff --git a/extra/perl-net-dns/PKGBUILD b/extra/perl-net-dns/PKGBUILD index 331387a24..7cf976226 100644 --- a/extra/perl-net-dns/PKGBUILD +++ b/extra/perl-net-dns/PKGBUILD @@ -1,11 +1,10 @@ -# $Id: PKGBUILD 201329 2013-12-09 00:20:22Z eric $ -# Maintainer: kevin <kevin@archlinux.org> -# Contributor: Manolis Tzanidakis +# $Id: PKGBUILD 205927 2014-02-14 03:29:23Z eric $ +# Maintainer: pkgname=perl-net-dns -pkgver=0.73 +pkgver=0.74 pkgrel=1 -pkgdesc="Perl Module: Interface to the DNS resolver." +pkgdesc="Perl Module: Interface to the DNS resolver" arch=('i686' 'x86_64') license=('PerlArtistic') url="http://search.cpan.org/dist/Net-DNS/" @@ -13,7 +12,7 @@ depends=('perl-digest-hmac' 'perl-net-ip' 'perl') checkdepends=('perl-test-pod') options=('!emptydirs') source=(http://www.cpan.org/authors/id/N/NL/NLNETLABS/Net-DNS-$pkgver.tar.gz) -sha1sums=('03c02d04c4346e4a3f52e28885d870b6be96feda') +sha1sums=('1b183448d22ea49bca0c4b85c365af527101a2ae') build() { cd Net-DNS-${pkgver} diff --git a/extra/perl-net-ssleay/PKGBUILD b/extra/perl-net-ssleay/PKGBUILD index 0beb2d676..a6ab0f3be 100644 --- a/extra/perl-net-ssleay/PKGBUILD +++ b/extra/perl-net-ssleay/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 203472 2014-01-11 10:10:43Z giovanni $ +# $Id: PKGBUILD 205947 2014-02-14 13:56:11Z giovanni $ # Maintainer: Giovanni Scafora <giovanni@archlinux.org> # Contributor: Manolis Tzanidakis pkgname=perl-net-ssleay _cpanname=Net-SSLeay -pkgver=1.56 +pkgver=1.58 pkgrel=1 pkgdesc="Perl extension for using OpenSSL" arch=('i686' 'x86_64') @@ -15,7 +15,7 @@ options=(!emptydirs) replaces=('net-ssleay') provides=('net-ssleay') source=("http://www.cpan.org/authors/id/M/MI/MIKEM/${_cpanname}-${pkgver}.tar.gz") -md5sums=('1a5258167ad0ac6a2b695a6fdc0c6e60') +md5sums=('fdd09b065e46aa3482f80d7ed7044e38') prepare() { cd ${srcdir}/${_cpanname}-${pkgver} diff --git a/extra/perl-netaddr-ip/PKGBUILD b/extra/perl-netaddr-ip/PKGBUILD index 68d3e06bc..b1a1798cc 100644 --- a/extra/perl-netaddr-ip/PKGBUILD +++ b/extra/perl-netaddr-ip/PKGBUILD @@ -1,10 +1,8 @@ -# $Id: PKGBUILD 197740 2013-10-29 02:03:08Z eric $ +# $Id: PKGBUILD 205925 2014-02-14 03:22:35Z eric $ # Maintainer: -# Contributor: Dale Blount <dale@archlinux.org> -# Contributor: Francois Charette <francois.archlinux.org> pkgname=perl-netaddr-ip -pkgver=4.071 +pkgver=4.072 pkgrel=1 pkgdesc="Perl module to manage IP addresses and subnets" arch=('i686' 'x86_64') @@ -13,7 +11,7 @@ license=('PerlArtistic' 'GPL') depends=('perl') options=('!emptydirs') source=(http://search.cpan.org/CPAN/authors/id/M/MI/MIKER/NetAddr-IP-${pkgver}.tar.gz) -md5sums=('f0da45422022fdf1ccfa90b8068d782b') +md5sums=('7764bf54881cd014880c0b77161f16aa') build() { cd NetAddr-IP-${pkgver} diff --git a/extra/perl-socket6/PKGBUILD b/extra/perl-socket6/PKGBUILD index 31370ad40..12fd57c58 100644 --- a/extra/perl-socket6/PKGBUILD +++ b/extra/perl-socket6/PKGBUILD @@ -1,48 +1,30 @@ -# $Id: PKGBUILD 186415 2013-05-26 09:25:40Z bluewind $ +# $Id: PKGBUILD 205929 2014-02-14 03:40:45Z eric $ # Maintainer: Florian Pritz <bluewind@xinu.at> -# Generator : CPANPLUS::Dist::Arch 1.18 -pkgname='perl-socket6' -pkgver='0.23' -pkgrel='3' -pkgdesc="getaddrinfo/getnameinfo support module" +pkgname=perl-socket6 +pkgver=0.25 +pkgrel=1 +pkgdesc="A getaddrinfo/getnameinfo support module" arch=('i686' 'x86_64') +url='http://search.cpan.org/dist/Socket6' license=('PerlArtistic' 'GPL') -options=('!emptydirs') depends=('perl') -makedepends=() -url='http://search.cpan.org/dist/Socket6' -source=('http://search.cpan.org/CPAN/authors/id/U/UM/UMEMOTO/Socket6-0.23.tar.gz') -md5sums=('2c02adb13c449d48d232bb704ddbd492') -sha512sums=('39ced223ecdef89e6fa241031019bb5a73e63d2dfdaf3edb55bfea0cb81b91bea09f1cc26b2d15fa28d32227cc13cdb093c70f0ba346c9bdb523359de53d96f9') +options=('!emptydirs') +source=(http://search.cpan.org/CPAN/authors/id/U/UM/UMEMOTO/Socket6-$pkgver.tar.gz) +sha1sums=('4499bd5b5150bd44be79238df348d89ea228f5a6') build() { - ( export PERL_MM_USE_DEFAULT=1 PERL5LIB="" \ - PERL_AUTOINSTALL=--skipdeps \ - PERL_MM_OPT="INSTALLDIRS=vendor" \ - PERL_MB_OPT="--installdirs vendor" \ - MODULEBUILDRC=/dev/null - - cd "${srcdir}/Socket6-0.23" - /usr/bin/perl Makefile.PL - make - ) + cd Socket6-$pkgver + perl Makefile.PL INSTALLDIRS=vendor + make } check() { - cd "${srcdir}/Socket6-0.23" - ( export PERL_MM_USE_DEFAULT=1 PERL5LIB="" - make test - ) + cd Socket6-$pkgver + make test } package() { - cd "${srcdir}/Socket6-0.23" + cd Socket6-$pkgver make DESTDIR="$pkgdir" install } - -# Local Variables: -# mode: shell-script -# sh-basic-offset: 2 -# End: -# vim:set ts=2 sw=2 et: diff --git a/extra/python/PKGBUILD b/extra/python/PKGBUILD index 988381ca6..5654b4db8 100644 --- a/extra/python/PKGBUILD +++ b/extra/python/PKGBUILD @@ -1,11 +1,11 @@ -# $Id: PKGBUILD 200587 2013-11-29 15:17:24Z angvp $ +# $Id: PKGBUILD 205909 2014-02-13 23:29:34Z angvp $ # Maintainer: Angel Velasquez <angvp@archlinux.org> # Contributor: Stéphane Gaudreault <stephane@archlinux.org> # Contributor: Allan McRae <allan@archlinux.org> # Contributor: Jason Chu <jason@archlinux.org> pkgname=python -pkgver=3.3.3 +pkgver=3.3.4 pkgrel=1 _pybasever=3.3 pkgdesc="Next generation of the python high-level scripting language" @@ -19,7 +19,7 @@ options=('!makeflags') provides=('python3') replaces=('python3') source=(http://www.python.org/ftp/python/${pkgver%rc*}/Python-${pkgver}.tar.xz) -sha1sums=('af4e75a34bd538c79b9871227c2e7f56569ac107') +sha1sums=('2c9586eeb4b6e45e9ebc28372c0856c709d9a522') prepare() { cd "${srcdir}/Python-${pkgver}" diff --git a/extra/sbcl/PKGBUILD b/extra/sbcl/PKGBUILD index 27f2778b9..2c86feaaf 100644 --- a/extra/sbcl/PKGBUILD +++ b/extra/sbcl/PKGBUILD @@ -1,11 +1,11 @@ -# $Id: PKGBUILD 202769 2013-12-27 14:21:30Z juergen $ +# $Id: PKGBUILD 205938 2014-02-14 10:21:14Z juergen $ # Contributor: John Proctor <jproctor@prium.net> # Contributor: Daniel White <daniel@whitehouse.id.au> # Maintainer: Juergen Hoetzel <juergen@archlinux.org> # Contributor: Leslie Polzer (skypher) pkgname=sbcl -pkgver=1.1.14 +pkgver=1.1.15 pkgrel=1 pkgdesc="Steel Bank Common Lisp" url="http://www.sbcl.org/" @@ -17,7 +17,7 @@ makedepends=('sbcl') install=sbcl.install source=("http://downloads.sourceforge.net/project/sbcl/sbcl/$pkgver/$pkgname-$pkgver-source.tar.bz2" "arch-fixes.lisp") -md5sums=('e3f933f7cb0053c3438d86e90f5bd73b' +md5sums=('54a1527aea0a32df972c0330b45a26dd' '7ac0c1936547f4278198b8bf7725204d') diff --git a/libre/mesa-libcl/PKGBUILD b/libre/mesa-libcl/PKGBUILD deleted file mode 100644 index 88c817dcd..000000000 --- a/libre/mesa-libcl/PKGBUILD +++ /dev/null @@ -1,51 +0,0 @@ -# Maintainer: Márcio Silva <coadde@lavabit.com> - -pkgbase=mesa -_pkgname=libcl -pkgname=$pkgbase-$_pkgname -_pkgflag=libre -pkgver=10.0.2 -pkgrel=1 -pkgdesc='Mesa 3-D OpenCL library' -url=http://${pkgbase}3d.sourceforge.net -license=(MIT Khronos LGPL) -arch=(mips64el x86_64 i686) -depends=( - libclc - $pkgbase -) -optdepends='opencl-headers: headers necessary for OpenCL development' -makedepends=( - clang - dri2proto - glproto - imake - libxml2 - python2 -) -provides=($_pkgname-$_pkgflag $_pkgname opencl-nvidia opencl-nvidia-304xx) -conflicts=($_pkgname-$_pkgflag $_pkgname opencl-nvidia opencl-nvidia-304xx) -replaces=($_pkgname-$_pkgflag $_pkgname opencl-nvidia opencl-nvidia-304xx) -source=ftp://ftp.freedesktop.org/pub/$pkgbase/${pkgver%.0}/${pkgbase^}Lib-$pkgver.tar.bz2 -sha512sums=15741b916e6338645a28961fb7a731f8c2a33afe11e91c0bd144f9d9afca96837c9caf7fb2fd769aedbeba2b8b12443e7a7eb8ab6cd2270024308ca11e88ff24 - -build() { - cd $srcdir/${pkgbase^}-$pkgver - autoreconf -vfi - ./configure --prefix=/usr\ - --enable-opencl\ - --enable-gallium-llvm\ - --enable-r600-llvm-compiler\ - --with-clang-libdir=/usr/lib\ - --with-llvm-shared-libs\ - --with-gallium-drivers=i915,nouveau,r300,r600,radeonsi,svga,swrast - make V=0 -} - -package() { - cd $srcdir/${pkgbase^}-$pkgver - make -C src/gallium/targets/opencl DESTDIR=$pkgdir install - install -vdm755 $pkgdir/usr/share/licenses/$pkgname - install -vm644 docs/COPYING $pkgdir/usr/share/licenses/$pkgname - install -vm644 docs/license.html $pkgdir/usr/share/licenses/$pkgname/LICENSE -} diff --git a/libre/pcsx2-libre/PKGBUILD b/libre/pcsx2-libre/PKGBUILD deleted file mode 100644 index 9331100aa..000000000 --- a/libre/pcsx2-libre/PKGBUILD +++ /dev/null @@ -1,57 +0,0 @@ -# $Id: PKGBUILD 103474 2014-01-06 14:09:29Z alucryd $ -# Maintainer: Maxime Gauduin <alucryd@gmail.com> -# Contributor: josephgbr <rafael.f.f1@gmail.com> -# Contributor: vEX <vex@niechift.com> - -_pkgname=pcsx2 -pkgname=$_pkgname-libre -pkgver=1.1.0.r5797 -pkgrel=1 -pkgdesc='A Sony PlayStation 2 emulator, without nonfree nvidia-cg-toolkit support' -arch=('i686' 'x86_64') -url='http://www.pcsx2.net' -license=('GPL') -makedepends=('cmake' 'sparsehash' 'svn') -if [[ $CARCH == "i686" ]]; then - depends=('glew' 'libaio' 'libcanberra' 'libjpeg-turbo' 'portaudio' 'sdl2' 'soundtouch' 'wxgtk2.8') -elif [[ $CARCH == "x86_64" ]]; then - makedepends+=('gcc-multilib' 'lib32-glew' 'lib32-libaio' 'lib32-libcanberra' 'lib32-libjpeg-turbo' 'lib32-mesa-libgl' 'lib32-portaudio' 'lib32-sdl2' 'lib32-soundtouch' 'lib32-wxgtk2.8') -fi -provides=("$_pkgname=$pkgver") -conflicts=("$_pkgname") -replaces=("$_pkgname") -options=('!emptydirs') -source=("${_pkgname}::svn+http://pcsx2.googlecode.com/svn/trunk/#revision=${pkgver#*r}") -sha256sums=('SKIP') - -build() { - cd ${_pkgname} - - if [[ -d build ]]; then - rm -rf build - fi - mkdir build && cd build - - if [[ $CARCH == "i686" ]]; then - cmake .. -DCMAKE_INSTALL_PREFIX='/usr' -DCMAKE_BUILD_TYPE='Release' -D{GLSL_API,PACKAGE_MODE,REBUILD_SHADER,SDL2_API,XDG_STD}=TRUE -DPLUGIN_DIR='/usr/lib/pcsx2' -DGAMEINDEX_DIR='/usr/share/pcsx2' -DwxWidgets_CONFIG_EXECUTABLE='/usr/bin/wx-config-2.8' -DwxWidgets_wxrc_EXECUTABLE='/usr/bin/wxrc-2.8' - elif [[ $CARCH == "x86_64" ]]; then - export CC='gcc -m32' - export CXX='g++ -m32' - export PKG_CONFIG_PATH='/usr/lib32/pkgconfig' - cmake .. -DCMAKE_INSTALL_PREFIX='/usr' -DCMAKE_BUILD_TYPE='Release' -D{GLSL_API,PACKAGE_MODE,REBUILD_SHADER,SDL2_API,XDG_STD}=TRUE -DPLUGIN_DIR='/usr/lib32/pcsx2' -DGAMEINDEX_DIR='/usr/share/pcsx2' -DwxWidgets_CONFIG_EXECUTABLE='/usr/bin/wx-config32-2.8' -DwxWidgets_wxrc_EXECUTABLE='/usr/bin/wxrc32-2.8' -DCMAKE_LIBRARY_PATH='/usr/lib32' - fi - - make -} - -package() { - cd ${_pkgname}/build - - if [[ $CARCH == "x86_64" ]]; then - depends=('lib32-glew' 'lib32-libaio' 'lib32-libcanberra' 'lib32-libjpeg-turbo' 'lib32-portaudio' 'lib32-sdl2' 'lib32-soundtouch' 'lib32-wxgtk2.8') - fi - - make DESTDIR="${pkgdir}" install -} - -# vim: ts=2 sw=2 et: diff --git a/nonprism/bitlbee-libre-nonprism/PKGBUILD b/nonprism/bitlbee-libre-nonprism/PKGBUILD deleted file mode 100644 index ef3705757..000000000 --- a/nonprism/bitlbee-libre-nonprism/PKGBUILD +++ /dev/null @@ -1,70 +0,0 @@ -# $Id: PKGBUILD 202378 2013-12-21 14:01:44Z andyrtr $ - -# Contributor: FUBAR <mrfubar@gmail.com> -# Contributor: simo <simo@archlinux.org> -# Contributor: Jeff 'codemac' Mickey <jeff@archlinux.org> -# Contributor: Daniel J Griffiths <ghost1227@archlinux.us> -# Contributor: Gaetan Bisson <bisson@archlinux.org> -# Maintainer: Dave Reisner <dreisner@archlinux.org> -# Maintainer (Parabola): Márcio Silva <coadde@lavabit.com> - -_pkgname=bitlbee -pkgname=bitlbee-libre-nonprism -pkgver=3.2.1 -pkgrel=2 -pkgdesc='Brings XMPP to IRC, without support for unsafe and dangerous for privacy protocols' -url='http://www.bitlbee.org/' -license=('GPL') -arch=('i686' 'x86_64' 'mips64el') -depends=('gnutls' 'glib2') -makedepends=('asciidoc' 'libotr3') -optdepends=('libotr3: for OTR encryption support' - 'xinetd: to run bitlbee through xinetd') -provides=$_pkgname=$pkgver -conflicts=$_pkgname -replaces=("$_pkgname" "$_pkgname-libre" "$_pkgname-coherence") -source=("http://get.bitlbee.org/src/${_pkgname}-${pkgver}.tar.gz" - 'xinetd' - 'bitlbee.tmpfiles') -sha1sums=('954471ab87206826c072f31b3def40a1be5a78f5' - '5e0af27ba9cc4fe455e3381c75fc49a9326e2f17' - '3695ed2fe22436c4d0fc3ead829f7d1f89bc491c') -backup=('etc/bitlbee/bitlbee.conf' - 'etc/bitlbee/motd.txt' - 'etc/xinetd.d/bitlbee') -install=bitlbee.install - -build() { - cd "$_pkgname-$pkgver" - - ./configure \ - --prefix=/usr \ - --etcdir=/etc/bitlbee \ - --sbindir=/usr/bin \ - --pidfile=/run/bitlbee/bitlbee.pid \ - --ipcsocket=/run/bitlbee/bitlbee.sock \ - --systemdsystemunitdir=/usr/lib/systemd/system \ - --jabber=1 \ - --msn=0 \ - --oscar=0 \ - --yahoo=0 \ - --twitter=0 \ - --ssl=gnutls \ - --strip=0 \ - --otr=plugin \ - --skype=0 - - # hacky: build against libotr3 - sed -i 's,^OTRFLAGS=.*,OTRFLAGS=-lotr3,' Makefile.settings - sed -i 's,#include.*libotr,&3,' otr.h - - make -} - -package() { - make -C "$_pkgname-$pkgver" DESTDIR="$pkgdir" install{,-etc,-dev} - - install -o65 -g65 -dm770 "$pkgdir/var/lib/bitlbee" - install -Dm644 "$srcdir/xinetd" "$pkgdir/etc/xinetd.d/bitlbee" - install -Dm644 "$srcdir/bitlbee.tmpfiles" "$pkgdir/usr/lib/tmpfiles.d/bitlbee.conf" -} diff --git a/nonprism/grilo-plugins-nonprism/PKGBUILD b/nonprism/grilo-plugins-nonprism/PKGBUILD deleted file mode 100644 index b27e9ac91..000000000 --- a/nonprism/grilo-plugins-nonprism/PKGBUILD +++ /dev/null @@ -1,41 +0,0 @@ -# $Id: PKGBUILD 201648 2013-12-17 11:32:11Z heftig $ -# Maintainer: Jan Alexander Steffens (heftig) <jan.steffens@gmail.com> -# Maintainer (Parabola): André Silva <emulatorman@parabola.nu> - -_pkgname=grilo-plugins -pkgname=grilo-plugins-nonprism -pkgver=0.2.9 -pkgrel=3 -pkgdesc="Plugins for Grilo, without libgdata support" -url="http://www.gnome.org" -arch=(i686 x86_64) -license=(LGPL) -depends=(grilo sqlite libgcrypt) -makedepends=(gupnp-av gmime rest libtracker-sparql totem-plparser libdmapsharing - json-glib intltool) -optdepends=('gupnp-av: uPnP plugin' - 'gmime: Podcasts plugin' - 'rest: Blip.tv plugin' - 'libtracker-sparql: Tracker plugin' - 'totem-plparser: Youtube plugin, Vimeo plugin, Optical media plugin' - 'libdmapsharing: DMAP sharing plugin' - 'json-glib: TMDb plugin') -options=('!emptydirs') -groups=('gnome') -replaces=$_pkgname -conflicts=$_pkgname -provides=$_pkgname=$pkgver -source=(http://ftp.gnome.org/pub/gnome/sources/${_pkgname}/${pkgver%.*}/${_pkgname}-${pkgver}.tar.xz) -sha256sums=('902b839bd1cdc27613d9e44af2afe00d1ef3b7471ae72c66c622560007e1023e') - -build() { - cd $_pkgname-$pkgver - ./configure --prefix=/usr --sysconfdir=/etc --disable-static \ - --enable-shoutcast - make -} - -package() { - cd $_pkgname-$pkgver - make DESTDIR="$pkgdir" install -} |