Glibc 2.9: Have rpcgen(1) look for cpp(1) in $PATH.
svn path=/nixpkgs/branches/stdenv-updates/; revision=15244
This commit is contained in:
parent
a6b2ffd5f2
commit
26c3fe186f
@ -43,6 +43,9 @@ stdenv.mkDerivation rec {
|
||||
|
||||
/* Make it possible to override the locale-archive in NixOS. */
|
||||
./locale-override.patch
|
||||
|
||||
/* Have rpcgen(1) look for cpp(1) in $PATH. */
|
||||
./rpcgen-path.patch
|
||||
];
|
||||
|
||||
# `--with-tls --without-__thread' enables support for TLS but causes
|
||||
|
72
pkgs/development/libraries/glibc-2.9/rpcgen-path.patch
Normal file
72
pkgs/development/libraries/glibc-2.9/rpcgen-path.patch
Normal file
@ -0,0 +1,72 @@
|
||||
By default, rpcgen(1) looks for cpp(1) from a list of fixed absolute paths
|
||||
(`/lib/cpp', etc.), which may only be overrided with the `-Y' option. This
|
||||
patch makes it run any `cpp' command found in $PATH.
|
||||
|
||||
--- glibc-2.7/sunrpc/rpc_main.c 2006-11-10 21:54:46.000000000 +0100
|
||||
+++ glibc-2.7/sunrpc/rpc_main.c 2009-04-22 14:32:10.000000000 +0200
|
||||
@@ -79,7 +79,7 @@ static const char *cmdname;
|
||||
|
||||
static const char *svcclosetime = "120";
|
||||
static int cppDefined; /* explicit path for C preprocessor */
|
||||
-static const char *CPP = SUNOS_CPP;
|
||||
+static const char *CPP = "cpp";
|
||||
static const char CPPFLAGS[] = "-C";
|
||||
static char *pathbuf;
|
||||
static int cpp_pid;
|
||||
@@ -108,7 +108,6 @@ static char *extendfile (const char *fil
|
||||
static void open_output (const char *infile, const char *outfile);
|
||||
static void add_warning (void);
|
||||
static void clear_args (void);
|
||||
-static void find_cpp (void);
|
||||
static void open_input (const char *infile, const char *define);
|
||||
static int check_nettype (const char *name, const char *list_to_check[]);
|
||||
static void c_output (const char *infile, const char *define,
|
||||
@@ -327,31 +326,6 @@ clear_args (void)
|
||||
argcount = FIXEDARGS;
|
||||
}
|
||||
|
||||
-/* make sure that a CPP exists */
|
||||
-static void
|
||||
-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 ();
|
||||
- }
|
||||
- }
|
||||
- }
|
||||
-}
|
||||
-
|
||||
/*
|
||||
* Open input file with given define for C-preprocessor
|
||||
*/
|
||||
@@ -370,7 +344,6 @@ open_input (const char *infile, const ch
|
||||
switch (cpp_pid)
|
||||
{
|
||||
case 0:
|
||||
- find_cpp ();
|
||||
putarg (0, CPP);
|
||||
putarg (1, CPPFLAGS);
|
||||
addarg (define);
|
||||
@@ -380,7 +353,7 @@ open_input (const char *infile, const ch
|
||||
close (1);
|
||||
dup2 (pd[1], 1);
|
||||
close (pd[0]);
|
||||
- execv (arglist[0], (char **) arglist);
|
||||
+ execvp (arglist[0], (char **) arglist);
|
||||
perror ("execv");
|
||||
exit (1);
|
||||
case -1:
|
Loading…
Reference in New Issue
Block a user