From 4a701d607c90ab5fdadbbe59b468df93e4293244 Mon Sep 17 00:00:00 2001 From: root Date: Fri, 17 Aug 2012 00:02:31 +0000 Subject: Fri Aug 17 00:02:30 UTC 2012 --- multilib/lib32-glibc/PKGBUILD | 10 +++- .../lib32-glibc/glibc-2.16-rpcgen-cpp-path.patch | 68 ++++++++++++++++++++++ 2 files changed, 76 insertions(+), 2 deletions(-) create mode 100644 multilib/lib32-glibc/glibc-2.16-rpcgen-cpp-path.patch (limited to 'multilib/lib32-glibc') diff --git a/multilib/lib32-glibc/PKGBUILD b/multilib/lib32-glibc/PKGBUILD index d741bae12..6fc66149f 100644 --- a/multilib/lib32-glibc/PKGBUILD +++ b/multilib/lib32-glibc/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 73695 2012-07-14 13:05:07Z allan $ +# $Id: PKGBUILD 75203 2012-08-16 01:54:21Z allan $ # Maintainer: Jan Alexander Steffens (heftig) # Contributor: Jan de Groot # Contributor: Allan McRae @@ -9,7 +9,7 @@ _pkgbasename=glibc pkgname=lib32-$_pkgbasename pkgver=2.16.0 -pkgrel=2 +pkgrel=3 pkgdesc="GNU C Library for multilib" arch=('x86_64') url="http://www.gnu.org/software/libc" @@ -19,11 +19,13 @@ options=('!strip' '!emptydirs') source=(http://ftp.gnu.org/gnu/libc/${_pkgbasename}-${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 lib32-glibc.conf) md5sums=('80b181b02ab249524ec92822c0174cf7' '2a1221a15575820751c325ef4d2fbb90' '31f415b41197d85d3bbee3d1eecd06a3' '0a0383d50d63f1c02919fe9943b82014' + 'ea6a43915474e8276e9361eed6a01280' '6e052f1cb693d5d3203f50f9d4e8c33b') build() { @@ -37,6 +39,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/multilib/lib32-glibc/glibc-2.16-rpcgen-cpp-path.patch b/multilib/lib32-glibc/glibc-2.16-rpcgen-cpp-path.patch new file mode 100644 index 000000000..822b57294 --- /dev/null +++ b/multilib/lib32-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"); -- cgit v1.2.3-54-g00ecf