customised ccache support: read the CCACHE_OUTFILES env variable and if exists, the names of all generated files are written to the filename specified in the env variable
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@10898 626c5289-ae23-0410-ae9c-e8d60b6d4f22
This commit is contained in:
parent
04a1d9182f
commit
6fb0f48935
27 changed files with 111 additions and 83 deletions
|
|
@ -92,12 +92,12 @@ DohEncoding(name, fn) Register a format encoding for Printf
|
|||
|
||||
Currently Available datatypes
|
||||
------------------------------
|
||||
NewString(char *initial) Strings
|
||||
NewHash() Hash
|
||||
NewList() List
|
||||
NewVoid(void *ptr, void (*del)(void *)) Void
|
||||
NewFile(char *file, char *mode) File
|
||||
NewCallable(DOH *(*func)(DOH *, DOH *)) Callable object
|
||||
NewString(char *initial) Strings
|
||||
NewHash() Hash
|
||||
NewList() List
|
||||
NewVoid(void *ptr, void (*del)(void *)) Void
|
||||
NewFile(char *filename, char *mode, List *newfiles) File
|
||||
NewCallable(DOH *(*func)(DOH *, DOH *)) Callable object
|
||||
|
||||
|
||||
Odds and ends:
|
||||
|
|
|
|||
|
|
@ -297,7 +297,7 @@ extern char *DohStrchr(const DOHString_or_char *s1, int ch);
|
|||
* Files
|
||||
* ----------------------------------------------------------------------------- */
|
||||
|
||||
extern DOHFile *DohNewFile(DOH *file, const char *mode);
|
||||
extern DOHFile *DohNewFile(DOH *filename, const char *mode, DOHList *outfiles);
|
||||
extern DOHFile *DohNewFileFromFile(FILE *f);
|
||||
extern DOHFile *DohNewFileFromFd(int fd);
|
||||
extern void DohFileErrorDisplay(DOHString * filename);
|
||||
|
|
|
|||
|
|
@ -228,15 +228,16 @@ static DohObjInfo DohFileType = {
|
|||
* NewFile()
|
||||
*
|
||||
* Create a new file from a given filename and mode.
|
||||
* If newfiles is non-zero, the filename is added to the list of new files.
|
||||
* ----------------------------------------------------------------------------- */
|
||||
|
||||
DOH *DohNewFile(DOH *fn, const char *mode) {
|
||||
DOH *DohNewFile(DOH *filename, const char *mode, DOHList *newfiles) {
|
||||
DohFile *f;
|
||||
FILE *file;
|
||||
char *filename;
|
||||
char *filen;
|
||||
|
||||
filename = Char(fn);
|
||||
file = fopen(filename, mode);
|
||||
filen = Char(filename);
|
||||
file = fopen(filen, mode);
|
||||
if (!file)
|
||||
return 0;
|
||||
|
||||
|
|
@ -245,6 +246,8 @@ DOH *DohNewFile(DOH *fn, const char *mode) {
|
|||
fclose(file);
|
||||
return 0;
|
||||
}
|
||||
if (newfiles)
|
||||
Append(newfiles, filename);
|
||||
f->filep = file;
|
||||
f->fd = 0;
|
||||
f->closeondel = 1;
|
||||
|
|
|
|||
|
|
@ -1590,7 +1590,7 @@ int ALLEGROCL::top(Node *n) {
|
|||
|
||||
Printf(cl_filename, "%s%s.cl", SWIG_output_directory(), module_name);
|
||||
|
||||
f_cl = NewFile(cl_filename, "w");
|
||||
f_cl = NewFile(cl_filename, "w", SWIG_output_files());
|
||||
if (!f_cl) {
|
||||
Printf(stderr, "Unable to open %s for writing\n", cl_filename);
|
||||
SWIG_exit(EXIT_FAILURE);
|
||||
|
|
@ -1599,7 +1599,7 @@ int ALLEGROCL::top(Node *n) {
|
|||
Generate_Wrapper = CPlusPlus || CWrap;
|
||||
|
||||
if (Generate_Wrapper) {
|
||||
f_cxx = NewFile(cxx_filename, "w");
|
||||
f_cxx = NewFile(cxx_filename, "w", SWIG_output_files());
|
||||
if (!f_cxx) {
|
||||
Close(f_cl);
|
||||
Delete(f_cl);
|
||||
|
|
|
|||
|
|
@ -119,15 +119,14 @@ int CFFI::top(Node *n) {
|
|||
|
||||
Printf(lisp_filename, "%s%s.lisp", SWIG_output_directory(), module);
|
||||
|
||||
File *f_lisp = NewFile(lisp_filename, "w");
|
||||
NewFile(lisp_filename, "w");
|
||||
File *f_lisp = NewFile(lisp_filename, "w", SWIG_output_files());
|
||||
if (!f_lisp) {
|
||||
FileErrorDisplay(lisp_filename);
|
||||
SWIG_exit(EXIT_FAILURE);
|
||||
}
|
||||
|
||||
if (CPlusPlus || CWrap) {
|
||||
f_cxx = NewFile(cxx_filename, "w");
|
||||
f_cxx = NewFile(cxx_filename, "w", SWIG_output_files());
|
||||
if (!f_cxx) {
|
||||
Close(f_lisp);
|
||||
Delete(f_lisp);
|
||||
|
|
@ -137,7 +136,7 @@ int CFFI::top(Node *n) {
|
|||
|
||||
String *clos_filename = NewString("");
|
||||
Printf(clos_filename, "%s%s-clos.lisp", SWIG_output_directory(), module);
|
||||
f_clos = NewFile(clos_filename, "w");
|
||||
f_clos = NewFile(clos_filename, "w", SWIG_output_files());
|
||||
if (!f_clos) {
|
||||
Close(f_lisp);
|
||||
Delete(f_lisp);
|
||||
|
|
|
|||
|
|
@ -188,7 +188,7 @@ int CHICKEN::top(Node *n) {
|
|||
/* Initialize all of the output files */
|
||||
String *outfile = Getattr(n, "outfile");
|
||||
|
||||
f_runtime = NewFile(outfile, "w");
|
||||
f_runtime = NewFile(outfile, "w", SWIG_output_files());
|
||||
if (!f_runtime) {
|
||||
FileErrorDisplay(outfile);
|
||||
SWIG_exit(EXIT_FAILURE);
|
||||
|
|
@ -251,7 +251,7 @@ int CHICKEN::top(Node *n) {
|
|||
Printf(f_init, "#endif\n");
|
||||
|
||||
Printf(chicken_filename, "%s%s.scm", SWIG_output_directory(), module);
|
||||
if ((f_scm = NewFile(chicken_filename, "w")) == 0) {
|
||||
if ((f_scm = NewFile(chicken_filename, "w", SWIG_output_files())) == 0) {
|
||||
FileErrorDisplay(chicken_filename);
|
||||
SWIG_exit(EXIT_FAILURE);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -79,7 +79,7 @@ int CLISP::top(Node *n) {
|
|||
Printf(output_filename, "%s%s.lisp", SWIG_output_directory(), module);
|
||||
}
|
||||
|
||||
f_cl = NewFile(output_filename, "w+");
|
||||
f_cl = NewFile(output_filename, "w+", SWIG_output_files());
|
||||
if (!f_cl) {
|
||||
FileErrorDisplay(output_filename);
|
||||
SWIG_exit(EXIT_FAILURE);
|
||||
|
|
|
|||
|
|
@ -286,7 +286,7 @@ public:
|
|||
SWIG_exit(EXIT_FAILURE);
|
||||
}
|
||||
|
||||
f_runtime = NewFile(outfile, "w");
|
||||
f_runtime = NewFile(outfile, "w", SWIG_output_files());
|
||||
if (!f_runtime) {
|
||||
FileErrorDisplay(outfile);
|
||||
SWIG_exit(EXIT_FAILURE);
|
||||
|
|
@ -297,7 +297,7 @@ public:
|
|||
Printf(stderr, "Unable to determine outfile_h\n");
|
||||
SWIG_exit(EXIT_FAILURE);
|
||||
}
|
||||
f_runtime_h = NewFile(outfile_h, "w");
|
||||
f_runtime_h = NewFile(outfile_h, "w", SWIG_output_files());
|
||||
if (!f_runtime_h) {
|
||||
FileErrorDisplay(outfile_h);
|
||||
SWIG_exit(EXIT_FAILURE);
|
||||
|
|
@ -396,7 +396,7 @@ public:
|
|||
// Generate the intermediary class
|
||||
{
|
||||
String *filen = NewStringf("%s%s.cs", SWIG_output_directory(), imclass_name);
|
||||
File *f_im = NewFile(filen, "w");
|
||||
File *f_im = NewFile(filen, "w", SWIG_output_files());
|
||||
if (!f_im) {
|
||||
FileErrorDisplay(filen);
|
||||
SWIG_exit(EXIT_FAILURE);
|
||||
|
|
@ -440,7 +440,7 @@ public:
|
|||
// Generate the C# module class
|
||||
{
|
||||
String *filen = NewStringf("%s%s.cs", SWIG_output_directory(), module_class_name);
|
||||
File *f_module = NewFile(filen, "w");
|
||||
File *f_module = NewFile(filen, "w", SWIG_output_files());
|
||||
if (!f_module) {
|
||||
FileErrorDisplay(filen);
|
||||
SWIG_exit(EXIT_FAILURE);
|
||||
|
|
@ -1155,7 +1155,7 @@ public:
|
|||
} else {
|
||||
// Global enums are defined in their own file
|
||||
String *filen = NewStringf("%s%s.cs", SWIG_output_directory(), symname);
|
||||
File *f_enum = NewFile(filen, "w");
|
||||
File *f_enum = NewFile(filen, "w", SWIG_output_files());
|
||||
if (!f_enum) {
|
||||
FileErrorDisplay(filen);
|
||||
SWIG_exit(EXIT_FAILURE);
|
||||
|
|
@ -1734,7 +1734,7 @@ public:
|
|||
}
|
||||
|
||||
String *filen = NewStringf("%s%s.cs", SWIG_output_directory(), proxy_class_name);
|
||||
f_proxy = NewFile(filen, "w");
|
||||
f_proxy = NewFile(filen, "w", SWIG_output_files());
|
||||
if (!f_proxy) {
|
||||
FileErrorDisplay(filen);
|
||||
SWIG_exit(EXIT_FAILURE);
|
||||
|
|
@ -2960,7 +2960,7 @@ public:
|
|||
void emitTypeWrapperClass(String *classname, SwigType *type) {
|
||||
String *swigtype = NewString("");
|
||||
String *filen = NewStringf("%s%s.cs", SWIG_output_directory(), classname);
|
||||
File *f_swigtype = NewFile(filen, "w");
|
||||
File *f_swigtype = NewFile(filen, "w", SWIG_output_files());
|
||||
if (!f_swigtype) {
|
||||
FileErrorDisplay(filen);
|
||||
SWIG_exit(EXIT_FAILURE);
|
||||
|
|
|
|||
|
|
@ -174,7 +174,7 @@ public:
|
|||
}
|
||||
} else if (strcmp(argv[i], "-procdoc") == 0) {
|
||||
if (argv[i + 1]) {
|
||||
procdoc = NewFile(argv[i + 1], (char *) "w");
|
||||
procdoc = NewFile(argv[i + 1], "w", SWIG_output_files());
|
||||
if (!procdoc) {
|
||||
FileErrorDisplay(argv[i + 1]);
|
||||
SWIG_exit(EXIT_FAILURE);
|
||||
|
|
@ -299,7 +299,7 @@ public:
|
|||
/* Initialize all of the output files */
|
||||
String *outfile = Getattr(n, "outfile");
|
||||
|
||||
f_runtime = NewFile(outfile, "w");
|
||||
f_runtime = NewFile(outfile, "w", SWIG_output_files());
|
||||
if (!f_runtime) {
|
||||
FileErrorDisplay(outfile);
|
||||
SWIG_exit(EXIT_FAILURE);
|
||||
|
|
@ -499,7 +499,7 @@ public:
|
|||
SWIG_output_directory(),
|
||||
primitive_name);
|
||||
Delete(primitive_name);
|
||||
File *scmstubfile = NewFile(fname, (char *) "w");
|
||||
File *scmstubfile = NewFile(fname, "w", SWIG_output_files());
|
||||
if (!scmstubfile) {
|
||||
FileErrorDisplay(fname);
|
||||
SWIG_exit(EXIT_FAILURE);
|
||||
|
|
@ -530,7 +530,7 @@ public:
|
|||
|
||||
String *fname = NewStringf("%s%s.scm", SWIG_output_directory(),
|
||||
module_name);
|
||||
File *goopsfile = NewFile(fname, (char *) "w");
|
||||
File *goopsfile = NewFile(fname, "w", SWIG_output_files());
|
||||
if (!goopsfile) {
|
||||
FileErrorDisplay(fname);
|
||||
SWIG_exit(EXIT_FAILURE);
|
||||
|
|
|
|||
|
|
@ -293,7 +293,7 @@ public:
|
|||
SWIG_exit(EXIT_FAILURE);
|
||||
}
|
||||
|
||||
f_runtime = NewFile(outfile, "w");
|
||||
f_runtime = NewFile(outfile, "w", SWIG_output_files());
|
||||
if (!f_runtime) {
|
||||
FileErrorDisplay(outfile);
|
||||
SWIG_exit(EXIT_FAILURE);
|
||||
|
|
@ -304,7 +304,7 @@ public:
|
|||
Printf(stderr, "Unable to determine outfile_h\n");
|
||||
SWIG_exit(EXIT_FAILURE);
|
||||
}
|
||||
f_runtime_h = NewFile(outfile_h, "w");
|
||||
f_runtime_h = NewFile(outfile_h, "w", SWIG_output_files());
|
||||
if (!f_runtime_h) {
|
||||
FileErrorDisplay(outfile_h);
|
||||
SWIG_exit(EXIT_FAILURE);
|
||||
|
|
@ -420,7 +420,7 @@ public:
|
|||
// Generate the intermediary class
|
||||
{
|
||||
String *filen = NewStringf("%s%s.java", SWIG_output_directory(), imclass_name);
|
||||
File *f_im = NewFile(filen, "w");
|
||||
File *f_im = NewFile(filen, "w", SWIG_output_files());
|
||||
if (!f_im) {
|
||||
FileErrorDisplay(filen);
|
||||
SWIG_exit(EXIT_FAILURE);
|
||||
|
|
@ -471,7 +471,7 @@ public:
|
|||
// Generate the Java module class
|
||||
{
|
||||
String *filen = NewStringf("%s%s.java", SWIG_output_directory(), module_class_name);
|
||||
File *f_module = NewFile(filen, "w");
|
||||
File *f_module = NewFile(filen, "w", SWIG_output_files());
|
||||
if (!f_module) {
|
||||
FileErrorDisplay(filen);
|
||||
SWIG_exit(EXIT_FAILURE);
|
||||
|
|
@ -523,7 +523,7 @@ public:
|
|||
// Generate the Java constants interface
|
||||
if (Len(module_class_constants_code) != 0) {
|
||||
String *filen = NewStringf("%s%sConstants.java", SWIG_output_directory(), module_class_name);
|
||||
File *f_module = NewFile(filen, "w");
|
||||
File *f_module = NewFile(filen, "w", SWIG_output_files());
|
||||
if (!f_module) {
|
||||
FileErrorDisplay(filen);
|
||||
SWIG_exit(EXIT_FAILURE);
|
||||
|
|
@ -1210,7 +1210,7 @@ public:
|
|||
} else {
|
||||
// Global enums are defined in their own file
|
||||
String *filen = NewStringf("%s%s.java", SWIG_output_directory(), symname);
|
||||
File *f_enum = NewFile(filen, "w");
|
||||
File *f_enum = NewFile(filen, "w", SWIG_output_files());
|
||||
if (!f_enum) {
|
||||
FileErrorDisplay(filen);
|
||||
SWIG_exit(EXIT_FAILURE);
|
||||
|
|
@ -1742,7 +1742,7 @@ public:
|
|||
}
|
||||
|
||||
String *filen = NewStringf("%s%s.java", SWIG_output_directory(), proxy_class_name);
|
||||
f_proxy = NewFile(filen, "w");
|
||||
f_proxy = NewFile(filen, "w", SWIG_output_files());
|
||||
if (!f_proxy) {
|
||||
FileErrorDisplay(filen);
|
||||
SWIG_exit(EXIT_FAILURE);
|
||||
|
|
@ -2798,7 +2798,7 @@ public:
|
|||
void emitTypeWrapperClass(String *classname, SwigType *type) {
|
||||
String *swigtype = NewString("");
|
||||
String *filen = NewStringf("%s%s.java", SWIG_output_directory(), classname);
|
||||
File *f_swigtype = NewFile(filen, "w");
|
||||
File *f_swigtype = NewFile(filen, "w", SWIG_output_files());
|
||||
if (!f_swigtype) {
|
||||
FileErrorDisplay(filen);
|
||||
SWIG_exit(EXIT_FAILURE);
|
||||
|
|
|
|||
|
|
@ -213,7 +213,7 @@ public:
|
|||
String *outfile = Getattr(n, "outfile");
|
||||
|
||||
/* Open the output file */
|
||||
f_runtime = NewFile(outfile, "w");
|
||||
f_runtime = NewFile(outfile, "w", SWIG_output_files());
|
||||
if (!f_runtime) {
|
||||
FileErrorDisplay(outfile);
|
||||
SWIG_exit(EXIT_FAILURE);
|
||||
|
|
|
|||
|
|
@ -180,6 +180,7 @@ static String *dependencies_target = 0;
|
|||
static int external_runtime = 0;
|
||||
static String *external_runtime_name = 0;
|
||||
enum { STAGE1=1, STAGE2=2, STAGE3=4, STAGE4=8, STAGEOVERFLOW=16 };
|
||||
static List *all_output_files = 0;
|
||||
|
||||
// -----------------------------------------------------------------------------
|
||||
// check_suffix(char *name)
|
||||
|
|
@ -300,6 +301,11 @@ void SWIG_config_cppext(const char *ext) {
|
|||
cpp_extension = (char *) ext;
|
||||
}
|
||||
|
||||
List *SWIG_output_files() {
|
||||
assert(all_output_files);
|
||||
return all_output_files;
|
||||
}
|
||||
|
||||
void SWIG_setfeature(const char *cfeature, const char *cvalue) {
|
||||
Hash *features_hash = Swig_cparse_features();
|
||||
String *name = NewString("");
|
||||
|
|
@ -363,7 +369,7 @@ static void SWIG_dump_runtime() {
|
|||
}
|
||||
}
|
||||
|
||||
runtime = NewFile(outfile, "w");
|
||||
runtime = NewFile(outfile, "w", SWIG_output_files());
|
||||
if (!runtime) {
|
||||
FileErrorDisplay(outfile);
|
||||
SWIG_exit(EXIT_FAILURE);
|
||||
|
|
@ -867,6 +873,7 @@ int SWIG_main(int argc, char *argv[], Language *l) {
|
|||
}
|
||||
|
||||
libfiles = NewList();
|
||||
all_output_files = NewList();
|
||||
|
||||
/* Check for SWIG_FEATURES environment variable */
|
||||
|
||||
|
|
@ -940,20 +947,21 @@ int SWIG_main(int argc, char *argv[], Language *l) {
|
|||
if (!s) {
|
||||
fprintf(stderr, "Unable to locate '%s' in the SWIG library.\n", input_file);
|
||||
} else {
|
||||
FILE *f = fopen(outfile, "r");
|
||||
FILE *f = Swig_open(outfile);
|
||||
if (f) {
|
||||
fclose(f);
|
||||
fprintf(stderr, "File '%s' already exists. Checkout aborted.\n", outfile);
|
||||
} else {
|
||||
f = fopen(outfile, "w");
|
||||
if (!f) {
|
||||
fprintf(stderr, "Unable to create file '%s'\n", outfile);
|
||||
} else {
|
||||
if (Verbose)
|
||||
fprintf(stdout, "'%s' checked out from the SWIG library.\n", input_file);
|
||||
fputs(Char(s), f);
|
||||
fclose(f);
|
||||
}
|
||||
File *f_outfile = NewFile(outfile, "w", SWIG_output_files());
|
||||
if (!f_outfile) {
|
||||
FileErrorDisplay(outfile);
|
||||
SWIG_exit(EXIT_FAILURE);
|
||||
} else {
|
||||
if (Verbose)
|
||||
fprintf(stdout, "'%s' checked out from the SWIG library.\n", outfile);
|
||||
Printv(f_outfile, s, NIL);
|
||||
Close(f_outfile);
|
||||
}
|
||||
}
|
||||
}
|
||||
} else {
|
||||
|
|
@ -1019,14 +1027,14 @@ int SWIG_main(int argc, char *argv[], Language *l) {
|
|||
outfile = NewString(outfile_name);
|
||||
}
|
||||
if (dependencies_file && Len(dependencies_file) != 0) {
|
||||
f_dependencies_file = NewFile(dependencies_file, "w");
|
||||
f_dependencies_file = NewFile(dependencies_file, "w", SWIG_output_files());
|
||||
if (!f_dependencies_file) {
|
||||
FileErrorDisplay(dependencies_file);
|
||||
SWIG_exit(EXIT_FAILURE);
|
||||
}
|
||||
} else if (!depend_only) {
|
||||
String *filename = NewStringf("%s_wrap.%s", Swig_file_basename(input_file), depends_extension);
|
||||
f_dependencies_file = NewFile(filename, "w");
|
||||
f_dependencies_file = NewFile(filename, "w", SWIG_output_files());
|
||||
if (!f_dependencies_file) {
|
||||
FileErrorDisplay(filename);
|
||||
SWIG_exit(EXIT_FAILURE);
|
||||
|
|
@ -1173,6 +1181,21 @@ int SWIG_main(int argc, char *argv[], Language *l) {
|
|||
if (memory_debug)
|
||||
DohMemoryDebug();
|
||||
|
||||
char *outfiles = getenv("CCACHE_OUTFILES");
|
||||
if (outfiles) {
|
||||
File *f_outfiles = NewFile(outfiles, "w", 0);
|
||||
if (!f_outfiles) {
|
||||
Printf(stderr, "Failed to write list of output files to the filename '%s' specified in CCACHE_OUTFILES environment variable - ", outfiles);
|
||||
FileErrorDisplay(f_outfiles);
|
||||
SWIG_exit(EXIT_FAILURE);
|
||||
} else {
|
||||
int i;
|
||||
for (i = 0; i < Len(all_output_files); i++)
|
||||
Printf(f_outfiles, "%s\n", Getitem(all_output_files, i));
|
||||
Close(f_outfiles);
|
||||
}
|
||||
}
|
||||
|
||||
// Deletes
|
||||
Delete(libfiles);
|
||||
Preprocessor_delete();
|
||||
|
|
|
|||
|
|
@ -542,7 +542,7 @@ MODULA3():
|
|||
* ----------------------------------------------------------------------------- */
|
||||
|
||||
File *openWriteFile(String *name) {
|
||||
File *file = NewFile(name, "w");
|
||||
File *file = NewFile(name, "w", SWIG_output_files());
|
||||
if (!file) {
|
||||
FileErrorDisplay(name);
|
||||
SWIG_exit(EXIT_FAILURE);
|
||||
|
|
@ -902,7 +902,7 @@ MODULA3():
|
|||
/* Initialize all of the output files */
|
||||
outfile = Getattr(n, "outfile");
|
||||
|
||||
f_runtime = NewFile(outfile, "w");
|
||||
f_runtime = NewFile(outfile, "w", SWIG_output_files());
|
||||
if (!f_runtime) {
|
||||
FileErrorDisplay(outfile);
|
||||
SWIG_exit(EXIT_FAILURE);
|
||||
|
|
@ -2382,7 +2382,7 @@ MODULA3():
|
|||
}
|
||||
|
||||
String *filen = NewStringf("%s%s.m3", Swig_file_dirname(outfile), proxy_class_name);
|
||||
f_proxy = NewFile(filen, "w");
|
||||
f_proxy = NewFile(filen, "w", SWIG_output_files());
|
||||
if (!f_proxy) {
|
||||
FileErrorDisplay(filen);
|
||||
SWIG_exit(EXIT_FAILURE);
|
||||
|
|
@ -3762,7 +3762,7 @@ MODULA3():
|
|||
|
||||
void emitTypeWrapperClass(String *classname, SwigType *type) {
|
||||
String *filen = NewStringf("%s%s.m3", Swig_file_dirname(outfile), classname);
|
||||
File *f_swigtype = NewFile(filen, "w");
|
||||
File *f_swigtype = NewFile(filen, "w", SWIG_output_files());
|
||||
if (!f_swigtype) {
|
||||
FileErrorDisplay(filen);
|
||||
SWIG_exit(EXIT_FAILURE);
|
||||
|
|
|
|||
|
|
@ -129,7 +129,7 @@ public:
|
|||
/* Initialize all of the output files */
|
||||
String *outfile = Getattr(n, "outfile");
|
||||
|
||||
f_runtime = NewFile(outfile, "w");
|
||||
f_runtime = NewFile(outfile, "w", SWIG_output_files());
|
||||
if (!f_runtime) {
|
||||
FileErrorDisplay(outfile);
|
||||
SWIG_exit(EXIT_FAILURE);
|
||||
|
|
|
|||
|
|
@ -214,7 +214,7 @@ public:
|
|||
/* Initialize all of the output files */
|
||||
String *outfile = Getattr(n, "outfile");
|
||||
|
||||
f_runtime = NewFile(outfile, "w");
|
||||
f_runtime = NewFile(outfile, "w", SWIG_output_files());
|
||||
if (!f_runtime) {
|
||||
FileErrorDisplay(outfile);
|
||||
SWIG_exit(EXIT_FAILURE);
|
||||
|
|
@ -293,12 +293,12 @@ public:
|
|||
Printv(mlifile, module, ".mli", NIL);
|
||||
|
||||
String *mlfilen = NewStringf("%s%s", SWIG_output_directory(), mlfile);
|
||||
if ((f_mlout = NewFile(mlfilen, "w")) == 0) {
|
||||
if ((f_mlout = NewFile(mlfilen, "w", SWIG_output_files())) == 0) {
|
||||
FileErrorDisplay(mlfilen);
|
||||
SWIG_exit(EXIT_FAILURE);
|
||||
}
|
||||
String *mlifilen = NewStringf("%s%s", SWIG_output_directory(), mlifile);
|
||||
if ((f_mliout = NewFile(mlifilen, "w")) == 0) {
|
||||
if ((f_mliout = NewFile(mlifilen, "w", SWIG_output_files())) == 0) {
|
||||
FileErrorDisplay(mlifilen);
|
||||
SWIG_exit(EXIT_FAILURE);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -87,7 +87,7 @@ public:
|
|||
|
||||
String *module = Getattr(n, "name");
|
||||
String *outfile = Getattr(n, "outfile");
|
||||
f_runtime = NewFile(outfile, "w");
|
||||
f_runtime = NewFile(outfile, "w", SWIG_output_files());
|
||||
if (!f_runtime) {
|
||||
FileErrorDisplay(outfile);
|
||||
SWIG_exit(EXIT_FAILURE);
|
||||
|
|
|
|||
|
|
@ -222,7 +222,7 @@ public:
|
|||
/* Initialize all of the output files */
|
||||
String *outfile = Getattr(n, "outfile");
|
||||
|
||||
f_runtime = NewFile(outfile, "w");
|
||||
f_runtime = NewFile(outfile, "w", SWIG_output_files());
|
||||
if (!f_runtime) {
|
||||
FileErrorDisplay(outfile);
|
||||
SWIG_exit(EXIT_FAILURE);
|
||||
|
|
@ -315,7 +315,7 @@ public:
|
|||
pmfile = NewStringf("%s.pm", m);
|
||||
}
|
||||
String *filen = NewStringf("%s%s", SWIG_output_directory(), pmfile);
|
||||
if ((f_pm = NewFile(filen, "w")) == 0) {
|
||||
if ((f_pm = NewFile(filen, "w", SWIG_output_files())) == 0) {
|
||||
FileErrorDisplay(filen);
|
||||
SWIG_exit(EXIT_FAILURE);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -258,7 +258,7 @@ public:
|
|||
String *outfile = Getattr(n, "outfile");
|
||||
|
||||
/* main output file */
|
||||
f_runtime = NewFile(outfile, "w");
|
||||
f_runtime = NewFile(outfile, "w", SWIG_output_files());
|
||||
if (!f_runtime) {
|
||||
FileErrorDisplay(outfile);
|
||||
SWIG_exit(EXIT_FAILURE);
|
||||
|
|
@ -302,7 +302,7 @@ public:
|
|||
Printv(filen, SWIG_output_directory(), module, ".php", NIL);
|
||||
phpfilename = NewString(filen);
|
||||
|
||||
f_phpcode = NewFile(filen, "w");
|
||||
f_phpcode = NewFile(filen, "w", SWIG_output_files());
|
||||
if (!f_phpcode) {
|
||||
FileErrorDisplay(filen);
|
||||
SWIG_exit(EXIT_FAILURE);
|
||||
|
|
@ -381,7 +381,7 @@ public:
|
|||
/* Create the .h file too */
|
||||
filen = NewStringEmpty();
|
||||
Printv(filen, SWIG_output_directory(), "php_", module, ".h", NIL);
|
||||
f_h = NewFile(filen, "w");
|
||||
f_h = NewFile(filen, "w", SWIG_output_files());
|
||||
if (!f_h) {
|
||||
FileErrorDisplay(filen);
|
||||
SWIG_exit(EXIT_FAILURE);
|
||||
|
|
|
|||
|
|
@ -123,7 +123,7 @@ public:
|
|||
String *outfile = Getattr(n, "outfile");
|
||||
|
||||
/* Open the output file */
|
||||
f_runtime = NewFile(outfile, "w");
|
||||
f_runtime = NewFile(outfile, "w", SWIG_output_files());
|
||||
if (!f_runtime) {
|
||||
FileErrorDisplay(outfile);
|
||||
SWIG_exit(EXIT_FAILURE);
|
||||
|
|
|
|||
|
|
@ -513,7 +513,7 @@ public:
|
|||
String *outfile = Getattr(n, "outfile");
|
||||
String *outfile_h = !no_header_file ? Getattr(n, "outfile_h") : 0;
|
||||
|
||||
f_runtime = NewFile(outfile, "w");
|
||||
f_runtime = NewFile(outfile, "w", SWIG_output_files());
|
||||
if (!f_runtime) {
|
||||
FileErrorDisplay(outfile);
|
||||
SWIG_exit(EXIT_FAILURE);
|
||||
|
|
@ -521,7 +521,7 @@ public:
|
|||
|
||||
if (directorsEnabled()) {
|
||||
if (!no_header_file) {
|
||||
f_runtime_h = NewFile(outfile_h, "w");
|
||||
f_runtime_h = NewFile(outfile_h, "w", SWIG_output_files());
|
||||
if (!f_runtime_h) {
|
||||
FileErrorDisplay(outfile_h);
|
||||
SWIG_exit(EXIT_FAILURE);
|
||||
|
|
@ -662,7 +662,7 @@ public:
|
|||
module = interface;
|
||||
else
|
||||
Insert(module, 0, "_");
|
||||
if ((f_shadow_py = NewFile(filen, "w")) == 0) {
|
||||
if ((f_shadow_py = NewFile(filen, "w", SWIG_output_files())) == 0) {
|
||||
FileErrorDisplay(filen);
|
||||
SWIG_exit(EXIT_FAILURE);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -878,7 +878,7 @@ int R::DumpCode(Node *n) {
|
|||
Printf(stderr, "Writing S code to %s\n", output_filename);
|
||||
#endif
|
||||
|
||||
File *scode = NewFile(output_filename, "w");
|
||||
File *scode = NewFile(output_filename, "w", SWIG_output_files());
|
||||
if (!scode) {
|
||||
FileErrorDisplay(output_filename);
|
||||
SWIG_exit(EXIT_FAILURE);
|
||||
|
|
@ -893,7 +893,7 @@ int R::DumpCode(Node *n) {
|
|||
Close(scode);
|
||||
// Delete(scode);
|
||||
String *outfile = Getattr(n,"outfile");
|
||||
File *runtime = NewFile(outfile,"w");
|
||||
File *runtime = NewFile(outfile,"w", SWIG_output_files());
|
||||
if (!runtime) {
|
||||
FileErrorDisplay(outfile);
|
||||
SWIG_exit(EXIT_FAILURE);
|
||||
|
|
@ -920,7 +920,7 @@ int R::DumpCode(Node *n) {
|
|||
if(outputNamespaceInfo) {
|
||||
output_filename = NewString("");
|
||||
Printf(output_filename, "%sNAMESPACE", SWIG_output_directory());
|
||||
File *ns = NewFile(output_filename, "w");
|
||||
File *ns = NewFile(output_filename, "w", SWIG_output_files());
|
||||
if (!ns) {
|
||||
FileErrorDisplay(output_filename);
|
||||
SWIG_exit(EXIT_FAILURE);
|
||||
|
|
|
|||
|
|
@ -992,7 +992,7 @@ public:
|
|||
SWIG_exit(EXIT_FAILURE);
|
||||
}
|
||||
|
||||
f_runtime = NewFile(outfile, "w");
|
||||
f_runtime = NewFile(outfile, "w", SWIG_output_files());
|
||||
if (!f_runtime) {
|
||||
FileErrorDisplay(outfile);
|
||||
SWIG_exit(EXIT_FAILURE);
|
||||
|
|
@ -1003,7 +1003,7 @@ public:
|
|||
Printf(stderr, "Unable to determine outfile_h\n");
|
||||
SWIG_exit(EXIT_FAILURE);
|
||||
}
|
||||
f_runtime_h = NewFile(outfile_h, "w");
|
||||
f_runtime_h = NewFile(outfile_h, "w", SWIG_output_files());
|
||||
if (!f_runtime_h) {
|
||||
FileErrorDisplay(outfile_h);
|
||||
SWIG_exit(EXIT_FAILURE);
|
||||
|
|
|
|||
|
|
@ -59,7 +59,7 @@ public:
|
|||
String *outfile = Getattr(n, "outfile");
|
||||
Replaceall(outfile, "_wrap.cxx", ".lisp");
|
||||
Replaceall(outfile, "_wrap.c", ".lisp");
|
||||
out = NewFile(outfile, "w");
|
||||
out = NewFile(outfile, "w", SWIG_output_files());
|
||||
if (!out) {
|
||||
FileErrorDisplay(outfile);
|
||||
SWIG_exit(EXIT_FAILURE);
|
||||
|
|
|
|||
|
|
@ -317,6 +317,9 @@ void SWIG_config_file(const String_or_char *);
|
|||
const String *SWIG_output_directory();
|
||||
void SWIG_config_cppext(const char *ext);
|
||||
|
||||
/* get the list of generated files */
|
||||
List *SWIG_output_files();
|
||||
|
||||
void SWIG_library_directory(const char *);
|
||||
int emit_num_arguments(ParmList *);
|
||||
int emit_num_required(ParmList *);
|
||||
|
|
|
|||
|
|
@ -136,7 +136,7 @@ public:
|
|||
/* Initialize all of the output files */
|
||||
String *outfile = Getattr(n, "outfile");
|
||||
|
||||
f_runtime = NewFile(outfile, "w");
|
||||
f_runtime = NewFile(outfile, "w", SWIG_output_files());
|
||||
if (!f_runtime) {
|
||||
FileErrorDisplay(outfile);
|
||||
SWIG_exit(EXIT_FAILURE);
|
||||
|
|
@ -177,7 +177,7 @@ public:
|
|||
|
||||
Insert(module, 0, "_");
|
||||
|
||||
if ((f_shadow = NewFile(filen, "w")) == 0) {
|
||||
if ((f_shadow = NewFile(filen, "w", SWIG_output_files())) == 0) {
|
||||
FileErrorDisplay(filen);
|
||||
SWIG_exit(EXIT_FAILURE);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -229,7 +229,7 @@ int UFFI::top(Node *n) {
|
|||
Printf(output_filename, "%s%s.cl", SWIG_output_directory(), module);
|
||||
|
||||
|
||||
f_cl = NewFile(output_filename, "w");
|
||||
f_cl = NewFile(output_filename, "w", SWIG_output_files());
|
||||
if (!f_cl) {
|
||||
FileErrorDisplay(output_filename);
|
||||
SWIG_exit(EXIT_FAILURE);
|
||||
|
|
|
|||
|
|
@ -47,7 +47,7 @@ public:
|
|||
iX++;
|
||||
Swig_mark_arg(iX);
|
||||
String *outfile = NewString(argv[iX]);
|
||||
out = NewFile(outfile, "w");
|
||||
out = NewFile(outfile, "w", SWIG_output_files());
|
||||
if (!out) {
|
||||
FileErrorDisplay(outfile);
|
||||
SWIG_exit(EXIT_FAILURE);
|
||||
|
|
@ -82,7 +82,7 @@ public:
|
|||
Replaceall(outfile, ".cxx", ".xml");
|
||||
Replaceall(outfile, ".cpp", ".xml");
|
||||
Replaceall(outfile, ".c", ".xml");
|
||||
out = NewFile(outfile, "w");
|
||||
out = NewFile(outfile, "w", SWIG_output_files());
|
||||
if (!out) {
|
||||
FileErrorDisplay(outfile);
|
||||
SWIG_exit(EXIT_FAILURE);
|
||||
|
|
@ -301,7 +301,7 @@ void Swig_print_xml(DOH *obj, String *filename) {
|
|||
if (!filename) {
|
||||
out = stdout;
|
||||
} else {
|
||||
out = NewFile(filename, "w");
|
||||
out = NewFile(filename, "w", SWIG_output_files());
|
||||
if (!out) {
|
||||
FileErrorDisplay(filename);
|
||||
SWIG_exit(EXIT_FAILURE);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue