diff options
author | Jose <jose@zeroc.com> | 2015-04-13 14:58:28 +0200 |
---|---|---|
committer | Jose <jose@zeroc.com> | 2015-04-13 14:58:28 +0200 |
commit | 8cff2a828400acb3769b7b05452ac267725086eb (patch) | |
tree | 3735ea75f8890fcec71909b0ce4cc616bd14d30a /cpp/src/slice2java | |
parent | ICE-6445 Remove .NET CF support (diff) | |
download | ice-8cff2a828400acb3769b7b05452ac267725086eb.tar.bz2 ice-8cff2a828400acb3769b7b05452ac267725086eb.tar.xz ice-8cff2a828400acb3769b7b05452ac267725086eb.zip |
Add --depend-file/--depend-xml optinos to all Slice compilers
Diffstat (limited to 'cpp/src/slice2java')
-rw-r--r-- | cpp/src/slice2java/Main.cpp | 18 | ||||
-rw-r--r-- | cpp/src/slice2java/Makefile | 2 | ||||
-rw-r--r-- | cpp/src/slice2java/Makefile.mak | 2 |
3 files changed, 15 insertions, 7 deletions
diff --git a/cpp/src/slice2java/Main.cpp b/cpp/src/slice2java/Main.cpp index a334113a7af..fe93c7d59a3 100644 --- a/cpp/src/slice2java/Main.cpp +++ b/cpp/src/slice2java/Main.cpp @@ -73,6 +73,7 @@ usage(const char* n) "--impl-tie Generate sample TIE implementations.\n" "--depend Generate Makefile dependencies.\n" "--depend-xml Generate dependencies in XML format.\n" + "--depend-file FILE Write dependencies to FILE instead of standard output.\n" "--list-generated Emit list of generated files in XML format.\n" "-d, --debug Print debug messages.\n" "--ice Permit `Ice' prefix (for building Ice source code only).\n" @@ -99,6 +100,7 @@ compile(int argc, char* argv[]) opts.addOpt("", "impl-tie"); opts.addOpt("", "depend"); opts.addOpt("", "depend-xml"); + opts.addOpt("", "depend-file", IceUtilInternal::Options::NeedArg, ""); opts.addOpt("", "list-generated"); opts.addOpt("d", "debug"); opts.addOpt("", "ice"); @@ -162,6 +164,7 @@ compile(int argc, char* argv[]) bool depend = opts.isSet("depend"); bool dependxml = opts.isSet("depend-xml"); + string dependFile = opts.optArg("depend-file"); bool debug = opts.isSet("debug"); @@ -200,9 +203,10 @@ compile(int argc, char* argv[]) IceUtil::CtrlCHandler ctrlCHandler; ctrlCHandler.setCallback(interruptedCallback); + DependOutputUtil out(dependFile); if(dependxml) { - cout << "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<dependencies>" << endl; + out.os() << "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<dependencies>" << endl; } for(vector<string>::const_iterator i = args.begin(); i != args.end(); ++i) @@ -223,6 +227,7 @@ compile(int argc, char* argv[]) if(cppHandle == 0) { + out.cleanup(); return EXIT_FAILURE; } @@ -232,18 +237,20 @@ compile(int argc, char* argv[]) if(parseStatus == EXIT_FAILURE) { + out.cleanup(); return EXIT_FAILURE; } - if(!icecpp->printMakefileDependencies(depend ? Preprocessor::Java : Preprocessor::JavaXML, includePaths, - "-D__SLICE2JAVA__" - )) + if(!icecpp->printMakefileDependencies(out.os(), depend ? Preprocessor::Java : Preprocessor::SliceXML, includePaths, + "-D__SLICE2JAVA__")) { + out.cleanup(); return EXIT_FAILURE; } if(!icecpp->close()) { + out.cleanup(); return EXIT_FAILURE; } } @@ -361,6 +368,7 @@ compile(int argc, char* argv[]) if(interrupted) { + out.cleanup(); // // If the translator was interrupted then cleanup any files we've already created. // @@ -372,7 +380,7 @@ compile(int argc, char* argv[]) if(dependxml) { - cout << "</dependencies>\n"; + out.os() << "</dependencies>\n"; } if(status == EXIT_SUCCESS && !checksumClass.empty() && !dependxml) diff --git a/cpp/src/slice2java/Makefile b/cpp/src/slice2java/Makefile index 0d6c152f9f7..5b6afcbc512 100644 --- a/cpp/src/slice2java/Makefile +++ b/cpp/src/slice2java/Makefile @@ -20,7 +20,7 @@ RPATH_DIR = $(LOADER_PATH)/../$(libsubdir) include $(top_srcdir)/config/Make.rules -CPPFLAGS := -I. $(CPPFLAGS) +CPPFLAGS := -I. -I.. $(CPPFLAGS) $(NAME): $(OBJS) rm -f $@ diff --git a/cpp/src/slice2java/Makefile.mak b/cpp/src/slice2java/Makefile.mak index fa1eafda57b..7e1b2b88a58 100644 --- a/cpp/src/slice2java/Makefile.mak +++ b/cpp/src/slice2java/Makefile.mak @@ -18,7 +18,7 @@ OBJS = .\Gen.obj \ !include $(top_srcdir)/config/Make.rules.mak -CPPFLAGS = -I. $(CPPFLAGS) -DWIN32_LEAN_AND_MEAN +CPPFLAGS = -I. -I.. $(CPPFLAGS) -DWIN32_LEAN_AND_MEAN !if "$(GENERATE_PDB)" == "yes" PDBFLAGS = /pdb:$(NAME:.exe=.pdb) |