summaryrefslogtreecommitdiff
path: root/core/glibc
diff options
context:
space:
mode:
authorroot <root@rshg054.dnsready.net>2012-08-17 00:02:31 +0000
committerroot <root@rshg054.dnsready.net>2012-08-17 00:02:31 +0000
commit4a701d607c90ab5fdadbbe59b468df93e4293244 (patch)
tree57a9c0d8bbf45a06212aa95c3a4aef3a3e2bc346 /core/glibc
parent0fc1870f2eadde8cb06004be1cbe8d1a4333aa69 (diff)
Fri Aug 17 00:02:30 UTC 2012
Diffstat (limited to 'core/glibc')
-rw-r--r--core/glibc/PKGBUILD12
-rw-r--r--core/glibc/glibc-2.16-rpcgen-cpp-path.patch68
2 files changed, 77 insertions, 3 deletions
diff --git a/core/glibc/PKGBUILD b/core/glibc/PKGBUILD
index 93a075106..b96b4a1a9 100644
--- a/core/glibc/PKGBUILD
+++ b/core/glibc/PKGBUILD
@@ -1,4 +1,4 @@
-# $Id: PKGBUILD 163512 2012-07-14 13:07:15Z allan $
+# $Id: PKGBUILD 165343 2012-08-16 01:57:59Z allan $
# Maintainer: Allan McRae <allan@archlinux.org>
# toolchain build order: linux-api-headers->glibc->binutils->gcc->binutils->glibc
@@ -6,13 +6,13 @@
pkgname=glibc
pkgver=2.16.0
-pkgrel=2
+pkgrel=3
pkgdesc="GNU C Library"
arch=('i686' 'x86_64')
url="http://www.gnu.org/software/libc"
license=('GPL' 'LGPL')
groups=('base')
-depends=('linux-api-headers>=3.4' 'tzdata')
+depends=('linux-api-headers>=3.5' 'tzdata')
makedepends=('gcc>=4.7')
backup=(etc/gai.conf
etc/locale.gen
@@ -22,6 +22,7 @@ install=glibc.install
source=(http://ftp.gnu.org/gnu/libc/${pkgname}-${pkgver}.tar.xz{,.sig}
glibc-2.15-fix-res_query-assert.patch
glibc-2.15-revert-c5a0802a.patch
+ glibc-2.16-rpcgen-cpp-path.patch
nscd.rcd
nscd.service
nscd.tmpfiles
@@ -31,6 +32,7 @@ md5sums=('80b181b02ab249524ec92822c0174cf7'
'2a1221a15575820751c325ef4d2fbb90'
'31f415b41197d85d3bbee3d1eecd06a3'
'0a0383d50d63f1c02919fe9943b82014'
+ 'ea6a43915474e8276e9361eed6a01280'
'589d79041aa767a5179eaa4e2737dd3f'
'ad8a9af15ab7eeaa23dc7ee85024af9f'
'bccbe5619e75cf1d97312ec3681c605c'
@@ -48,6 +50,10 @@ build() {
# https://bugzilla.redhat.com/show_bug.cgi?id=552960
patch -p1 -i ${srcdir}/glibc-2.15-revert-c5a0802a.patch
+ # prevent need for /lib/cpp symlink
+ # http://sourceware.org/git/?p=glibc.git;a=commit;h=bf9b740a
+ patch -p1 -i ${srcdir}/glibc-2.16-rpcgen-cpp-path.patch
+
cd ${srcdir}
mkdir glibc-build
cd glibc-build
diff --git a/core/glibc/glibc-2.16-rpcgen-cpp-path.patch b/core/glibc/glibc-2.16-rpcgen-cpp-path.patch
new file mode 100644
index 000000000..822b57294
--- /dev/null
+++ b/core/glibc/glibc-2.16-rpcgen-cpp-path.patch
@@ -0,0 +1,68 @@
+diff --git a/sunrpc/rpc_main.c b/sunrpc/rpc_main.c
+index 06d951a..2103b10 100644
+--- a/sunrpc/rpc_main.c
++++ b/sunrpc/rpc_main.c
+@@ -75,12 +75,9 @@ struct commandline
+
+ static const char *cmdname;
+
+-#define SVR4_CPP "/usr/ccs/lib/cpp"
+-#define SUNOS_CPP "/lib/cpp"
+-
+ static const char *svcclosetime = "120";
+ static int cppDefined; /* explicit path for C preprocessor */
+-static const char *CPP = SUNOS_CPP;
++static const char *CPP = "/lib/cpp";
+ static const char CPPFLAGS[] = "-C";
+ static char *pathbuf;
+ static int cpp_pid;
+@@ -327,23 +324,17 @@ find_cpp (void)
+ {
+ struct stat buf;
+
+- if (stat (CPP, &buf) < 0)
+- { /* /lib/cpp or explicit cpp does not exist */
+- if (cppDefined)
+- {
+- fprintf (stderr, _ ("cannot find C preprocessor: %s \n"), CPP);
+- crash ();
+- }
+- else
+- { /* try the other one */
+- CPP = SVR4_CPP;
+- if (stat (CPP, &buf) < 0)
+- { /* can't find any cpp */
+- fputs (_ ("cannot find any C preprocessor (cpp)\n"), stdout);
+- crash ();
+- }
+- }
++ if (stat (CPP, &buf) == 0)
++ return;
++
++ if (cppDefined) /* user specified cpp but it does not exist */
++ {
++ fprintf (stderr, _ ("cannot find C preprocessor: %s\n"), CPP);
++ crash ();
+ }
++
++ /* fall back to system CPP */
++ CPP = "cpp";
+ }
+
+ /*
+@@ -374,8 +365,13 @@ open_input (const char *infile, const char *define)
+ close (1);
+ dup2 (pd[1], 1);
+ close (pd[0]);
+- execv (arglist[0], (char **) arglist);
+- perror ("execv");
++ execvp (arglist[0], (char **) arglist);
++ if (errno == ENOENT)
++ {
++ fprintf (stderr, _ ("cannot find C preprocessor: %s\n"), CPP);
++ exit (1);
++ }
++ perror ("execvp");
+ exit (1);
+ case -1:
+ perror ("fork");