On 12/02/2014 07:39 AM, David Härdeman wrote: > rpcgen uses absolute paths (based on the input) when generating the > output files, thus breaking builds using a separate build directory. > I'm not sure this is the best (or even an acceptable) approach, but > it works for me...consider it an RFC :) I went ahead committed this as well... I didn't realized the internal rpcgen was being used... So if makes life easier for you... so be it! :-) steved. > --- > tools/rpcgen/rpc_main.c | 7 ++++--- > 1 file changed, 4 insertions(+), 3 deletions(-) > > diff --git a/tools/rpcgen/rpc_main.c b/tools/rpcgen/rpc_main.c > index 28aa60c..f81da47 100644 > --- a/tools/rpcgen/rpc_main.c > +++ b/tools/rpcgen/rpc_main.c > @@ -44,6 +44,7 @@ static char sccsid[] = "@(#)rpc_main.c 1.30 89/03/30 (C) 1987 SMI"; > #include <unistd.h> > #include <ctype.h> > #include <errno.h> > +#include <libgen.h> > #include "rpc_parse.h" > #include "rpc_util.h" > #include "rpc_scan.h" > @@ -389,7 +390,7 @@ c_output(char *infile, char *define, int extend, char *outfile) > open_output(infile, outfilename); > add_warning(); > if (infile && (include = extendfile(infile, ".h"))) { > - f_print(fout, "#include \"%s\"\n", include); > + f_print(fout, "#include \"%s\"\n", basename(include)); > free(include); > /* .h file already contains rpc/rpc.h */ > } else > @@ -523,7 +524,7 @@ s_output(int argc, char **argv, char *infile, char *define, int extend, > open_output(infile, outfilename); > add_warning(); > if (infile && (include = extendfile(infile, ".h"))) { > - f_print(fout, "#include \"%s\"\n", include); > + f_print(fout, "#include \"%s\"\n", basename(include)); > free(include); > } else > f_print(fout, "#include <rpc/rpc.h>\n"); > @@ -630,7 +631,7 @@ l_output(char *infile, char *define, int extend, char *outfile) > if (Cflag) > f_print (fout, "#include <memory.h> /* for memset */\n"); > if (infile && (include = extendfile(infile, ".h"))) { > - f_print(fout, "#include \"%s\"\n", include); > + f_print(fout, "#include \"%s\"\n", basename(include)); > free(include); > } else > f_print(fout, "#include <rpc/rpc.h>\n"); > > -- > To unsubscribe from this list: send the line "unsubscribe linux-nfs" in > the body of a message to majordomo@xxxxxxxxxxxxxxx > More majordomo info at http://vger.kernel.org/majordomo-info.html > -- To unsubscribe from this list: send the line "unsubscribe linux-nfs" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html