summaryrefslogtreecommitdiff
path: root/core
diff options
context:
space:
mode:
Diffstat (limited to 'core')
-rw-r--r--core/binutils/PKGBUILD14
-rw-r--r--core/binutils/binutils-2.21-strip-segfault.patch96
-rw-r--r--core/gcc/PKGBUILD20
-rw-r--r--core/gmp/PKGBUILD12
-rw-r--r--core/gmp/gmp.install2
-rw-r--r--core/kbd/PKGBUILD19
-rw-r--r--core/kbd/fix-es.po.patch11
-rw-r--r--core/util-linux/PKGBUILD12
-rw-r--r--core/util-linux/mount-segfault-2.19.1.patch84
9 files changed, 241 insertions, 29 deletions
diff --git a/core/binutils/PKGBUILD b/core/binutils/PKGBUILD
index 40416653c..0d1d6a0bc 100644
--- a/core/binutils/PKGBUILD
+++ b/core/binutils/PKGBUILD
@@ -1,11 +1,11 @@
-# $Id: PKGBUILD 121290 2011-04-30 08:22:29Z allan $
+# $Id: PKGBUILD 123424 2011-05-11 10:41:25Z allan $
# Maintainer: Allan McRae <allan@archlinux.org>
# toolchain build order: linux-api-headers->glibc->binutils->gcc->binutils->glibc
pkgname=binutils
pkgver=2.21
-pkgrel=7
+pkgrel=8
_date=20110430
pkgdesc="A set of programs to assemble and manipulate binary and object files"
arch=('i686' 'x86_64')
@@ -16,8 +16,10 @@ depends=('glibc>=2.13' 'zlib')
makedepends=('dejagnu')
options=('!libtool' '!distcc' '!ccache')
install=binutils.install
-source=(ftp://ftp.archlinux.org/other/${pkgname}/${pkgname}-${pkgver}_${_date}.tar.bz2)
-md5sums=('7b3e28fb35cb8bb371cc47291e1c6dec')
+source=(ftp://ftp.archlinux.org/other/${pkgname}/${pkgname}-${pkgver}_${_date}.tar.bz2
+ binutils-2.21-strip-segfault.patch)
+md5sums=('7b3e28fb35cb8bb371cc47291e1c6dec'
+ '98e8dfaf1c0ededa586823ebfb27825a')
mksource() {
mkdir ${pkgname}-${_date}
@@ -30,6 +32,10 @@ mksource() {
}
build() {
+ cd ${srcdir}/binutils
+ # http://sourceware.org/bugzilla/show_bug.cgi?id=12632
+ patch -Np1 -i $srcdir/binutils-2.21-strip-segfault.patch
+
cd ${srcdir}
mkdir binutils-build && cd binutils-build
diff --git a/core/binutils/binutils-2.21-strip-segfault.patch b/core/binutils/binutils-2.21-strip-segfault.patch
new file mode 100644
index 000000000..0133d879b
--- /dev/null
+++ b/core/binutils/binutils-2.21-strip-segfault.patch
@@ -0,0 +1,96 @@
+diff --git a/binutils/objcopy.c b/binutils/objcopy.c
+index 15c4f95..b64f3d0 100644
+--- a/binutils/objcopy.c
++++ b/binutils/objcopy.c
+@@ -1,6 +1,6 @@
+ /* objcopy.c -- copy object file from input to output, optionally massaging it.
+ Copyright 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
+- 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
++ 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011
+ Free Software Foundation, Inc.
+
+ This file is part of GNU Binutils.
+@@ -2024,6 +2024,7 @@ copy_archive (bfd *ibfd, bfd *obfd, const char *output_target,
+ struct stat buf;
+ int stat_status = 0;
+ bfd_boolean del = TRUE;
++ bfd_boolean ok_object;
+
+ /* Create an output file for this member. */
+ output_name = concat (dir, "/",
+@@ -2061,44 +2062,42 @@ copy_archive (bfd *ibfd, bfd *obfd, const char *output_target,
+ l->obfd = NULL;
+ list = l;
+
+- if (bfd_check_format (this_element, bfd_object))
++ ok_object = bfd_check_format (this_element, bfd_object);
++ if (!ok_object)
++ bfd_nonfatal_message (NULL, this_element, NULL,
++ _("Unable to recognise the format of file"));
++
++ /* PR binutils/3110: Cope with archives
++ containing multiple target types. */
++ if (force_output_target || !ok_object)
++ output_bfd = bfd_openw (output_name, output_target);
++ else
++ output_bfd = bfd_openw (output_name, bfd_get_target (this_element));
++
++ if (output_bfd == NULL)
+ {
+- /* PR binutils/3110: Cope with archives
+- containing multiple target types. */
+- if (force_output_target)
+- output_bfd = bfd_openw (output_name, output_target);
+- else
+- output_bfd = bfd_openw (output_name, bfd_get_target (this_element));
++ bfd_nonfatal_message (output_name, NULL, NULL, NULL);
++ status = 1;
++ return;
++ }
++
++ if (ok_object)
++ {
++ del = !copy_object (this_element, output_bfd, input_arch);
+
+- if (output_bfd == NULL)
++ if (del && bfd_get_arch (this_element) == bfd_arch_unknown)
++ /* Try again as an unknown object file. */
++ ok_object = FALSE;
++ else if (!bfd_close (output_bfd))
+ {
+ bfd_nonfatal_message (output_name, NULL, NULL, NULL);
++ /* Error in new object file. Don't change archive. */
+ status = 1;
+- return;
+ }
+-
+- del = ! copy_object (this_element, output_bfd, input_arch);
+-
+- if (! del
+- || bfd_get_arch (this_element) != bfd_arch_unknown)
+- {
+- if (!bfd_close (output_bfd))
+- {
+- bfd_nonfatal_message (output_name, NULL, NULL, NULL);
+- /* Error in new object file. Don't change archive. */
+- status = 1;
+- }
+- }
+- else
+- goto copy_unknown_element;
+ }
+- else
+- {
+- bfd_nonfatal_message (NULL, this_element, NULL,
+- _("Unable to recognise the format of file"));
+
+- output_bfd = bfd_openw (output_name, output_target);
+-copy_unknown_element:
++ if (!ok_object)
++ {
+ del = !copy_unknown_object (this_element, output_bfd);
+ if (!bfd_close_all_done (output_bfd))
+ {
+--
+1.6.5.GIT
+
diff --git a/core/gcc/PKGBUILD b/core/gcc/PKGBUILD
index 939c84053..fb8985344 100644
--- a/core/gcc/PKGBUILD
+++ b/core/gcc/PKGBUILD
@@ -1,4 +1,4 @@
-# $Id: PKGBUILD 121304 2011-04-30 13:23:58Z allan $
+# $Id: PKGBUILD 123891 2011-05-14 08:26:23Z allan $
# Maintainer: Allan McRae <allan@archlinux.org>
# toolchain build order: linux-api-headers->glibc->binutils->gcc->binutils->glibc
@@ -6,8 +6,8 @@
pkgname=('gcc' 'gcc-libs' 'gcc-fortran' 'gcc-objc' 'gcc-ada' 'gcc-go')
pkgver=4.6.0
-pkgrel=4
-_snapshot=4.6-20110429
+pkgrel=5
+_snapshot=4.6-20110513
_libstdcppmanver=20110201 # Note: check source directory name when updating this
pkgdesc="The GNU Compiler Collection"
arch=('i686' 'x86_64')
@@ -20,13 +20,13 @@ source=(#ftp://gcc.gnu.org/pub/gcc/releases/gcc-${pkgver}/gcc-{core,g++,fortran,
ftp://gcc.gnu.org/pub/gcc/libstdc++/doxygen/libstdc++-api.${_libstdcppmanver}.man.tar.bz2
gcc_pure64.patch
gcc-hash-style-both.patch)
-md5sums=('fa586a5634ae3b462c5fb2d55160b14f'
- '2591b1fad977f7bd6136c9ac1298ef04'
- '366f93c1867f35c8860b42965efde955'
- '21779792ef7e0ed7abef611160b0099c'
- 'cf518c56b968925a2eca3aa2b4cdbd7b'
- 'f66ef8597b99961eda7573df505ea354'
- '3d89dd233ceb6a837d14ee6b940a43ed'
+md5sums=('2be769db16ac02f30fb62423b4c50145'
+ 'a310d230945f4b3093dd3ca72839c649'
+ '361a10c5a5545c80fd271b18036dd00c'
+ 'f7db2f6ed34398361de62cb6b8eb53d2'
+ '9b69c1d8874e8496c1965ee3e32eaa6d'
+ '248e53b461078bf1c89528fb8e4ba051'
+ 'e15a01b0d02ff12e975e4c2649e71e55'
'1e9fd2eaf0ee47ea64e82c48998f1999'
'4030ee1c08dd1e843c0225b772360e76'
'4df25b623799b148a0703eaeec8fdf3f')
diff --git a/core/gmp/PKGBUILD b/core/gmp/PKGBUILD
index 234f18ad8..6092809d9 100644
--- a/core/gmp/PKGBUILD
+++ b/core/gmp/PKGBUILD
@@ -1,10 +1,10 @@
-# $Id: PKGBUILD 105599 2011-01-10 18:34:30Z stephane $
+# $Id: PKGBUILD 123886 2011-05-14 03:40:36Z allan $
# Maintainer: Allan McRae <allan@archlinux.org>
# Maintainer: Jan de Groot <jgc@archlinux.org>
pkgname=gmp
-pkgver=5.0.1
-pkgrel=2
+pkgver=5.0.2
+pkgrel=1
pkgdesc="A free library for arbitrary precision arithmetic"
arch=('i686' 'x86_64')
url="http://gmplib.org/"
@@ -13,7 +13,7 @@ license=('LGPL3')
options=(!libtool)
install=gmp.install
source=(ftp://ftp.gnu.org/gnu/gmp/gmp-${pkgver}.tar.bz2)
-md5sums=('6bac6df75c192a13419dfd71d19240a7')
+md5sums=('0bbaedc82fb30315b06b1588b9077cd3')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
@@ -22,6 +22,10 @@ build() {
--prefix=/usr --infodir=/usr/share/info \
--enable-cxx
make
+}
+
+check() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
make check
}
diff --git a/core/gmp/gmp.install b/core/gmp/gmp.install
index 1c31ab365..cad3354f9 100644
--- a/core/gmp/gmp.install
+++ b/core/gmp/gmp.install
@@ -1,4 +1,4 @@
-info_dir=/usr/share/info
+info_dir=usr/share/info
info_files=(gmp.info gmp.info-1 gmp.info-2)
post_install() {
diff --git a/core/kbd/PKGBUILD b/core/kbd/PKGBUILD
index c3be3a65b..c1643ec9a 100644
--- a/core/kbd/PKGBUILD
+++ b/core/kbd/PKGBUILD
@@ -1,20 +1,21 @@
-# $Id: PKGBUILD 82650 2010-06-15 05:16:19Z allan $
+# $Id: PKGBUILD 123997 2011-05-15 19:12:02Z tpowa $
# Maintainer: Tobias Powalowski <tpowa@archlinux.org>
pkgname=kbd
-pkgver=1.15.2
+pkgver=1.15.3
pkgrel=1
pkgdesc="Keytable files and keyboard utilities"
arch=('i686' 'x86_64')
url="ftp://ftp.altlinux.org/pub/people/legion/kbd/"
license=('GPL')
depends=('glibc')
-source=(ftp://ftp.altlinux.org/pub/people/legion/kbd/${pkgname}-${pkgver}.tar.gz)
-md5sums=('77d0b51454522bc6c170bbdc6e31202a')
+source=(ftp://ftp.altlinux.org/pub/people/legion/kbd/${pkgname}-${pkgver}.tar.gz
+ fix-es.po.patch)
+md5sums=('8143e179a0f3c25646ce5085e8777200')
build() {
cd ${srcdir}/${pkgname}-${pkgver}
-
+ patch -Np1 -i ../fix-es.po.patch
# rename keymap files with the same names
# this is needed because when only name of keymap is specified
# loadkeys loads the first keymap it can find, which is bad (see FS#13837)
@@ -26,7 +27,11 @@ build() {
mv data/keymaps/i386/fgGIod/trf{,-fgGIod}.map
./configure --prefix=/usr --datadir=/usr/share/kbd --mandir=/usr/share/man
- make KEYCODES_PROGS=yes RESIZECONS_PROGS=yes || return 1
+ make KEYCODES_PROGS=yes RESIZECONS_PROGS=yes
+}
+
+package() {
+ cd ${srcdir}/${pkgname}-${pkgver}
make KEYCODES_PROGS=yes RESIZECONS_PROGS=yes DESTDIR=${pkgdir} install
# this is needed because initscripts call /bin/loadkeys
@@ -35,3 +40,5 @@ build() {
mkdir ${pkgdir}/bin
ln -s /usr/bin/loadkeys ${pkgdir}/bin/loadkeys
}
+md5sums=('8143e179a0f3c25646ce5085e8777200'
+ '4ded3edb50fb7a3277bae6a870cee812')
diff --git a/core/kbd/fix-es.po.patch b/core/kbd/fix-es.po.patch
new file mode 100644
index 000000000..578f0a7b7
--- /dev/null
+++ b/core/kbd/fix-es.po.patch
@@ -0,0 +1,11 @@
+--- kbd-1.15.3/po/es.old 2011-05-14 23:12:49.000000000 +0200
++++ kbd-1.15.3/po/es.po 2011-05-15 21:07:02.120669404 +0200
+@@ -1363,7 +1363,7 @@
+ #: src/setfont.c:682
+ #, c-format
+ msgid "Saved %d-char %dx%d font file on %s\n"
+-msgstr "Se ha guardado el fichero de tipos %2$dx%3$d de %1$d caracteres en %s\n"
++msgstr "Se ha guardado el fichero de tipos %dx%d de %d caracteres en %s\n"
+
+ #: src/setkeycodes.c:21
+ #, c-format
diff --git a/core/util-linux/PKGBUILD b/core/util-linux/PKGBUILD
index 13140997a..877e0135a 100644
--- a/core/util-linux/PKGBUILD
+++ b/core/util-linux/PKGBUILD
@@ -1,10 +1,10 @@
-# $Id: PKGBUILD 123152 2011-05-09 00:21:36Z allan $
+# $Id: PKGBUILD 123897 2011-05-14 09:14:06Z tpowa $
# Maintainer:
# Contributor: judd <jvinet@zeroflux.org>
pkgname=util-linux
pkgver=2.19.1
-pkgrel=1
+pkgrel=2
pkgdesc="Miscellaneous system utilities for Linux"
url="http://userweb.kernel.org/~kzak/util-linux-ng/"
arch=('i686' 'x86_64')
@@ -15,12 +15,16 @@ conflicts=('linux32' 'util-linux-ng' 'e2fsprogs<1.41.8-2')
provides=('linux32' "util-linux-ng=${pkgver}")
license=('GPL2')
options=('!libtool')
-source=(ftp://ftp.kernel.org/pub/linux/utils/${pkgname}/v2.19/${pkgname}-${pkgver}.tar.bz2)
+source=(ftp://ftp.kernel.org/pub/linux/utils/${pkgname}/v2.19/${pkgname}-${pkgver}.tar.bz2
+ mount-segfault-2.19.1.patch)
optdepends=('perl: for chkdupexe support')
-md5sums=('3eab06f05163dfa65479c44e5231932c')
+md5sums=('3eab06f05163dfa65479c44e5231932c'
+ '3247b52f0e4b8044f23f2f7218e2fdea')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
+ # fix https://bugs.archlinux.org/task/24261
+ patch -Np1 -i ../mount-segfault-2.19.1.patch
# hardware clock
sed -e 's%etc/adjtime%var/lib/hwclock/adjtime%' -i hwclock/hwclock.c
./configure --enable-arch --enable-write --enable-raw --disable-wall --enable-partx
diff --git a/core/util-linux/mount-segfault-2.19.1.patch b/core/util-linux/mount-segfault-2.19.1.patch
new file mode 100644
index 000000000..7bcb3bc05
--- /dev/null
+++ b/core/util-linux/mount-segfault-2.19.1.patch
@@ -0,0 +1,84 @@
+From f53edda83ebcfd7015c3f35196d6cbd7bc2d8369 Mon Sep 17 00:00:00 2001
+From: Karel Zak <kzak@redhat.com>
+Date: Wed, 11 May 2011 16:57:27 +0200
+Subject: [PATCH] mount: -a segfaults when 4th field is omitted (mount
+ options)
+
+ # echo 'tmpd /tmp/x tmpfs' >> /etc/fstab
+ # mkdir /tmp/x
+ # mount -a
+ segfault
+
+Reported-by: Mike Frysinger <vapier@gentoo.org>
+Signed-off-by: Karel Zak <kzak@redhat.com>
+---
+ mount/mount.c | 8 +++++---
+ mount/mount_mntent.c | 5 +++--
+ mount/sundries.c | 2 ++
+ 3 files changed, 10 insertions(+), 5 deletions(-)
+
+diff --git a/mount/mount.c b/mount/mount.c
+index ba71149..29963c2 100644
+--- a/mount/mount.c
++++ b/mount/mount.c
+@@ -1163,7 +1163,9 @@ is_mounted_same_loopfile(const char *node0, const char *loopfile, unsigned long
+ res = loopfile_used_with((char *) mnt->m.mnt_fsname,
+ loopfile, offset);
+
+- else if ((p = strstr(mnt->m.mnt_opts, "loop="))) {
++ else if (mnt->m.mnt_opts &&
++ (p = strstr(mnt->m.mnt_opts, "loop=")))
++ {
+ char *dev = xstrdup(p+5);
+ if ((p = strchr(dev, ',')))
+ *p = '\0';
+@@ -2052,8 +2054,8 @@ is_fstab_entry_mounted(struct mntentchn *mc, int verbose)
+ goto yes;
+
+ /* extra care for loop devices */
+- if ((strstr(mc->m.mnt_opts, "loop=") ||
+- (stat(mc->m.mnt_fsname, &st) == 0 && S_ISREG(st.st_mode)))) {
++ if ((mc->m.mnt_opts && strstr(mc->m.mnt_opts, "loop=")) ||
++ (stat(mc->m.mnt_fsname, &st) == 0 && S_ISREG(st.st_mode))) {
+
+ char *p = get_option_value(mc->m.mnt_opts, "offset=");
+ uintmax_t offset = 0;
+diff --git a/mount/mount_mntent.c b/mount/mount_mntent.c
+index d90def3..f42c0ad 100644
+--- a/mount/mount_mntent.c
++++ b/mount/mount_mntent.c
+@@ -70,7 +70,7 @@ my_addmntent (mntFILE *mfp, struct my_mntent *mnt) {
+ m1 = mangle(mnt->mnt_fsname);
+ m2 = mangle(mnt->mnt_dir);
+ m3 = mangle(mnt->mnt_type);
+- m4 = mangle(mnt->mnt_opts);
++ m4 = mnt->mnt_opts ? mangle(mnt->mnt_opts) : "rw";
+
+ res = fprintf (mfp->mntent_fp, "%s %s %s %s %d %d\n",
+ m1, m2, m3, m4, mnt->mnt_freq, mnt->mnt_passno);
+@@ -78,7 +78,8 @@ my_addmntent (mntFILE *mfp, struct my_mntent *mnt) {
+ free(m1);
+ free(m2);
+ free(m3);
+- free(m4);
++ if (mnt->mnt_opts)
++ free(m4);
+ return (res < 0) ? 1 : 0;
+ }
+
+diff --git a/mount/sundries.c b/mount/sundries.c
+index ae4501a..2dec37f 100644
+--- a/mount/sundries.c
++++ b/mount/sundries.c
+@@ -217,6 +217,8 @@ matching_opts (const char *options, const char *test_opts) {
+
+ if (test_opts == NULL)
+ return 1;
++ if (options == NULL)
++ options = "";
+
+ len = strlen(test_opts);
+ q = alloca(len+1);
+--
+1.7.5.1
+