Jacek Caban : cscript: Share sources with wscript.

Alexandre Julliard julliard at winehq.org
Mon Apr 14 14:18:56 CDT 2014


Module: wine
Branch: master
Commit: e9aae93a6b16acd784126c86565aa8997185259c
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=e9aae93a6b16acd784126c86565aa8997185259c

Author: Jacek Caban <jacek at codeweavers.com>
Date:   Mon Apr 14 13:15:02 2014 +0200

cscript: Share sources with wscript.

---

 programs/cscript/Makefile.in |    7 +++++
 programs/cscript/main.c      |   61 ------------------------------------------
 programs/wscript/host.c      |    8 +++++-
 tools/make_makefiles         |    1 +
 4 files changed, 15 insertions(+), 62 deletions(-)

diff --git a/programs/cscript/Makefile.in b/programs/cscript/Makefile.in
index 9608ee6..0a47509 100644
--- a/programs/cscript/Makefile.in
+++ b/programs/cscript/Makefile.in
@@ -1,5 +1,12 @@
 MODULE    = cscript.exe
 APPMODE   = -mwindows -municode
+IMPORTS   = uuid shell32 oleaut32 ole32 advapi32
+EXTRADEFS = -DCSCRIPT_BUILD
+PARENTSRC = ../wscript
 
 C_SRCS = \
+	arguments.c \
+	host.c \
 	main.c
+
+IDL_SRCS = ihost.idl
diff --git a/programs/cscript/main.c b/programs/cscript/main.c
deleted file mode 100644
index 04ee272..0000000
--- a/programs/cscript/main.c
+++ /dev/null
@@ -1,61 +0,0 @@
-/*
- * CSCRIPT Implementation
- *
- * Copyright 2011 André Hentschel
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
- */
-
-#define WIN32_LEAN_AND_MEAN
-#include <stdio.h>
-#include <windows.h>
-#include <winbase.h>
-
-#include <wine/debug.h>
-#include <wine/unicode.h>
-
-WINE_DEFAULT_DEBUG_CHANNEL(cscript);
-
-int WINAPI wWinMain(HINSTANCE hInst, HINSTANCE hPrevInst, LPWSTR cmdline, int cmdshow)
-{
-    static const WCHAR wscriptW[] = {'\\','w','s','c','r','i','p','t','.','e','x','e',0};
-    static const WCHAR parbW[] = {' ','/','B',' ',0};
-    WCHAR app[MAX_PATH];
-    WCHAR cmd[MAX_PATH];
-    PROCESS_INFORMATION pi;
-    BOOL ret;
-    DWORD exitcode;
-    STARTUPINFOW si = { sizeof(si) };
-
-    WINE_FIXME("(%p %p %s %x) forwarding to wscript\n", hInst, hPrevInst, wine_dbgstr_w(cmdline), cmdshow);
-
-    GetSystemDirectoryW(app, MAX_PATH);
-    strcatW(app, wscriptW);
-    strcpyW(cmd, app);
-    strcatW(cmd, parbW);
-    strcatW(cmd, cmdline);
-
-    if (!CreateProcessW(app, cmd, NULL, NULL, FALSE, 0, NULL, NULL, &si, &pi)) return 1;
-    WaitForSingleObject( pi.hProcess, INFINITE );
-
-    ret = GetExitCodeProcess(pi.hProcess, &exitcode);
-    CloseHandle( pi.hProcess );
-    CloseHandle( pi.hThread );
-
-    if (ret)
-        return exitcode;
-    else
-        return 1;
-}
diff --git a/programs/wscript/host.c b/programs/wscript/host.c
index b7b94a2..2a47ed8 100644
--- a/programs/wscript/host.c
+++ b/programs/wscript/host.c
@@ -34,7 +34,13 @@
 
 static const WCHAR wshNameW[] = {'W','i','n','d','o','w','s',' ','S','c','r','i','p','t',' ','H','o','s','t',0};
 static const WCHAR wshVersionW[] = {'5','.','8'};
-VARIANT_BOOL wshInteractive = VARIANT_TRUE;
+
+VARIANT_BOOL wshInteractive =
+#ifndef CSCRIPT_BUILD
+    VARIANT_TRUE;
+#else
+    VARIANT_FALSE;
+#endif
 
 WINE_DEFAULT_DEBUG_CHANNEL(wscript);
 
diff --git a/tools/make_makefiles b/tools/make_makefiles
index 7643dd4..861023a 100755
--- a/tools/make_makefiles
+++ b/tools/make_makefiles
@@ -448,6 +448,7 @@ sub assign_sources_to_makefiles(@)
         my $parent = get_parent_makefile( $file );
         next unless $parent;
         preserve_shared_source_files( $makefiles{$file}, $makefiles{$parent}, "C_SRCS" );
+        preserve_shared_source_files( $makefiles{$file}, $makefiles{$parent}, "IDL_SRCS" );
         preserve_shared_source_files( $makefiles{$file}, $makefiles{$parent}, "LEX_SRCS" );
         preserve_shared_source_files( $makefiles{$file}, $makefiles{$parent}, "BISON_SRCS" );
     }




More information about the wine-cvs mailing list