diff options
author | Fantix King | 2012-09-20 15:23:55 +0800 |
---|---|---|
committer | Fantix King | 2015-11-13 01:19:06 +0800 |
commit | 5bcdaf6e549ef232c3d8da771a47ecc473841ea4 (patch) | |
tree | 65901485c23aa3b5e60213850f021475474f0355 /glibc-2.16-rpcgen-cpp-path.patch | |
parent | 462e8fb70a0b3a4e9bd76f3c9026ce0fd76bbadc (diff) | |
download | aur-5bcdaf6e549ef232c3d8da771a47ecc473841ea4.tar.gz |
2.16.0-3.1
Diffstat (limited to 'glibc-2.16-rpcgen-cpp-path.patch')
-rw-r--r-- | glibc-2.16-rpcgen-cpp-path.patch | 68 |
1 files changed, 68 insertions, 0 deletions
diff --git a/glibc-2.16-rpcgen-cpp-path.patch b/glibc-2.16-rpcgen-cpp-path.patch new file mode 100644 index 000000000000..822b57294b3a --- /dev/null +++ b/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"); |