Certain usage patterns simply can not be accomodate by 'winegcc -E' (such as preprocessing of .rc files). ChangeLog Dimitrie O. Paun <dpaun@rogers.com> Add support for masquarading as the C preprocessor. Index: tools/winegcc/Makefile.in =================================================================== RCS file: /var/cvs/wine/tools/winegcc/Makefile.in,v retrieving revision 1.1 diff -u -r1.1 Makefile.in --- tools/winegcc/Makefile.in 11 Sep 2003 21:27:58 -0000 1.1 +++ tools/winegcc/Makefile.in 11 Sep 2003 21:37:51 -0000 @@ -28,8 +28,10 @@ $(INSTALL_PROGRAM) winegcc $(bindir)/winegcc $(INSTALL_PROGRAM) winewrap $(bindir)/winewrap cd $(bindir) && $(RM) wineg++ && $(LN_S) winegcc wineg++ + cd $(bindir) && $(RM) winecpp && $(LN_S) winegcc winecpp uninstall:: - $(RM) $(bindir)/winegcc $(bindir)/wineg++ $(bindir)/winewrap + $(RM) $(bindir)/winegcc $(bindir)/wineg++ \ + $(bindir)/winecpp $(bindir)/winewrap ### Dependencies: Index: tools/winegcc/winegcc.c =================================================================== RCS file: /var/cvs/wine/tools/winegcc/winegcc.c,v retrieving revision 1.1 diff -u -r1.1 winegcc.c --- tools/winegcc/winegcc.c 11 Sep 2003 21:27:58 -0000 1.1 +++ tools/winegcc/winegcc.c 11 Sep 2003 18:39:13 -0000 @@ -150,12 +150,13 @@ { char **gcc_argv; int i, j; - int linking = 1, cpp = 0, use_static_linking = 0; + int linking = 1, cpp = 0, preprocessor = 0, use_static_linking = 0; int use_stdinc = 1, use_stdlib = 1, use_msvcrt = 0, gui_app = 0; atexit(clean_temp_files); - if (strendswith(argv[0], "++")) cpp = 1; + if (strendswith(argv[0], "winecpp")) preprocessor = 1; + else if (strendswith(argv[0], "++")) cpp = 1; for ( i = 1 ; i < argc ; i++ ) { @@ -208,6 +209,7 @@ } } + if (preprocessor) linking = 0; if (use_static_linking) error("Static linking is not supported."); gcc_argv = malloc(sizeof(char*) * (argc + 20)); @@ -283,10 +285,13 @@ } else { - gcc_argv[i++] = cpp ? "g++" : "gcc"; + gcc_argv[i++] = preprocessor ? "cpp" : cpp ? "g++" : "gcc"; - gcc_argv[i++] = "-fshort-wchar"; - gcc_argv[i++] = "-fPIC"; + if (!preprocessor) + { + gcc_argv[i++] = "-fshort-wchar"; + gcc_argv[i++] = "-fPIC"; + } if (use_stdinc) { if (use_msvcrt) -- Dimi.