Prepare cmd for testing
Modified: trunk/reactos/subsys/system/cmd/cmd.c
Modified: trunk/reactos/subsys/system/cmd/cmd.xml
Added: trunk/reactos/subsys/system/cmd/main.c
Added: trunk/reactos/subsys/system/cmd/tests/
Added: trunk/reactos/subsys/system/cmd/tests/cmd_test.xml
Added: trunk/reactos/subsys/system/cmd/tests/setup.c
Added: trunk/reactos/subsys/system/cmd/tests/stubs.xml

Modified: trunk/reactos/subsys/system/cmd/cmd.c
--- trunk/reactos/subsys/system/cmd/cmd.c	2005-07-17 10:40:43 UTC (rev 16607)
+++ trunk/reactos/subsys/system/cmd/cmd.c	2005-07-17 10:57:38 UTC (rev 16608)
@@ -1528,9 +1528,9 @@
  * main function
  */
 #ifdef _UNICODE
-int main(void)
+int _main(void)
 #else
-int main (int argc, char *argv[])
+int _main (int argc, char *argv[])
 #endif
 {
   CONSOLE_SCREEN_BUFFER_INFO Info;

Modified: trunk/reactos/subsys/system/cmd/cmd.xml
--- trunk/reactos/subsys/system/cmd/cmd.xml	2005-07-17 10:40:43 UTC (rev 16607)
+++ trunk/reactos/subsys/system/cmd/cmd.xml	2005-07-17 10:57:38 UTC (rev 16608)
@@ -1,10 +1,9 @@
-<module name="cmd" type="win32cui" installbase="system32" installname="cmd.exe" usewrc="false">
+<module name="cmd_base" type="objectlibrary">
 	<include base="ReactOS">include/wine</include>
-	<include base="cmd">.</include>
+	<include base="cmd_base">.</include>
 	<define name="__USE_W32API" />
 	<define name="ANONYMOUSUNIONS" />
 	<define name="_WIN32_WINNT">0x0501</define>
-	<library>kernel32</library>
 	<pch>precomp.h</pch>
 	<file>alias.c</file>
 	<file>attrib.c</file>
@@ -59,5 +58,18 @@
 	<file>vol.c</file>
 	<file>where.c</file>
 	<file>window.c</file>
+</module>
+<module name="cmd" type="win32cui" installbase="system32" installname="cmd.exe" usewrc="false">
+	<include base="ReactOS">include/wine</include>
+	<include base="cmd">.</include>
+	<define name="__USE_W32API" />
+	<define name="ANONYMOUSUNIONS" />
+	<define name="_WIN32_WINNT">0x0501</define>
+	<library>kernel32</library>
+	<library>cmd_base</library>
+	<file>main.c</file>
 	<file>cmd.rc</file>
 </module>
+<directory name="tests">
+	<xi:include href="tests/cmd_test.xml" />
+</directory>

Added: trunk/reactos/subsys/system/cmd/main.c
--- trunk/reactos/subsys/system/cmd/main.c	2005-07-17 10:40:43 UTC (rev 16607)
+++ trunk/reactos/subsys/system/cmd/main.c	2005-07-17 10:57:38 UTC (rev 16608)
@@ -0,0 +1,26 @@
+#include <precomp.h>
+#include "resource.h"
+
+#ifdef _UNICODE
+extern int _main (void);
+#else
+extern int _main (int argc, char *argv[]);
+#endif
+
+/*
+ * main function
+ */
+#ifdef _UNICODE
+int main(void)
+#else
+int main (int argc, char *argv[])
+#endif
+{
+#ifdef _UNICODE
+  return _main(void);
+#else
+  return _main(argc, argv);
+#endif
+}
+
+/* EOF */
Property changes on: trunk/reactos/subsys/system/cmd/main.c
___________________________________________________________________
Name: svn:eol-style
   + native

Added: trunk/reactos/subsys/system/cmd/tests/cmd_test.xml
--- trunk/reactos/subsys/system/cmd/tests/cmd_test.xml	2005-07-17 10:40:43 UTC (rev 16607)
+++ trunk/reactos/subsys/system/cmd/tests/cmd_test.xml	2005-07-17 10:57:38 UTC (rev 16608)
@@ -0,0 +1,15 @@
+<module name="cmd_test" type="test">
+	<include base="rtshared">.</include>
+	<include base="ReactOS">include/wine</include>
+	<include base="cmd">.</include>
+	<define name="__USE_W32API" />
+	<define name="ANONYMOUSUNIONS" />
+	<define name="_WIN32_WINNT">0x0501</define>
+	<library>rtshared</library>
+	<library>regtests</library>
+	<library>cmd_base</library>
+	<library>pseh</library>
+	<library>ntdll</library>
+	<file>setup.c</file>
+	<xi:include href="stubs.xml" />
+</module>
Property changes on: trunk/reactos/subsys/system/cmd/tests/cmd_test.xml
___________________________________________________________________
Name: svn:eol-style
   + native

Added: trunk/reactos/subsys/system/cmd/tests/setup.c
--- trunk/reactos/subsys/system/cmd/tests/setup.c	2005-07-17 10:40:43 UTC (rev 16607)
+++ trunk/reactos/subsys/system/cmd/tests/setup.c	2005-07-17 10:57:38 UTC (rev 16608)
@@ -0,0 +1,23 @@
+/*
+ * Copyright (C) 2005 Casper S. Hornstrup
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program 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 General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+ */
+#include <windows.h>
+#include "regtests.h"
+
+_SetupOnce()
+{
+}
Property changes on: trunk/reactos/subsys/system/cmd/tests/setup.c
___________________________________________________________________
Name: svn:eol-style
   + native

Added: trunk/reactos/subsys/system/cmd/tests/stubs.xml
--- trunk/reactos/subsys/system/cmd/tests/stubs.xml	2005-07-17 10:40:43 UTC (rev 16607)
+++ trunk/reactos/subsys/system/cmd/tests/stubs.xml	2005-07-17 10:57:38 UTC (rev 16608)
@@ -0,0 +1,84 @@
+<component name="kernel32.dll">
+	<symbol>FindFirstFileA@8</symbol>
+	<symbol>GetLastError@0</symbol>
+	<symbol>FindNextFileA@8</symbol>
+	<symbol>FindClose@4</symbol>
+	<symbol>GetFileAttributesA@4</symbol>
+	<symbol>GetCurrentDirectoryA@8</symbol>
+	<symbol>GetFullPathNameA@16</symbol>
+	<symbol>CloseHandle@4</symbol>
+	<symbol>CreateFileA@28</symbol>
+	<symbol>Beep@8</symbol>
+	<symbol>LoadStringA@16</symbol>
+	<symbol>SetConsoleCP@4</symbol>
+	<symbol>SetConsoleOutputCP@4</symbol>
+	<symbol>WaitForSingleObject@8</symbol>
+	<symbol>ReadConsoleInputA@16</symbol>
+	<symbol>GetTickCount@0</symbol>
+	<symbol>GetConsoleScreenBufferInfo@8</symbol>
+	<symbol>FillConsoleOutputAttribute@20</symbol>
+	<symbol>FillConsoleOutputCharacterA@20</symbol>
+	<symbol>SetConsoleCursorPosition@8</symbol>
+	<symbol>LoadLibraryA@4</symbol>
+	<symbol>GetProcAddress@8</symbol>
+	<symbol>SetCurrentDirectoryA@4</symbol>
+	<symbol>SetConsoleMode@8</symbol>
+	<symbol>CreateProcessA@40</symbol>
+	<symbol>GetExitCodeProcess@8</symbol>
+	<symbol>GetConsoleOutputCP@0</symbol>
+	<symbol>GetTempPathA@8</symbol>
+	<symbol>GetTempFileNameA@16</symbol>
+	<symbol>GetCurrentProcess@0</symbol>
+	<symbol>DuplicateHandle@28</symbol>
+	<symbol>GetFileType@4</symbol>
+	<symbol>SetFilePointer@16</symbol>
+	<symbol>GetTimeFormatA@24</symbol>
+	<symbol>GetDateFormatA@24</symbol>
+	<symbol>GetEnvironmentVariableA@12</symbol>
+	<symbol>GenerateConsoleCtrlEvent@8</symbol>
+	<symbol>SetConsoleCtrlHandler@8</symbol>
+	<symbol>GetVersionExA@4</symbol>
+	<symbol>ExitProcess@4</symbol>
+	<symbol>GetModuleFileNameA@12</symbol>
+	<symbol>SetEnvironmentVariableA@8</symbol>
+	<symbol>SetConsoleTextAttribute@8</symbol>
+	<symbol>FlushConsoleInputBuffer@4</symbol>
+	<symbol>WriteFile@20</symbol>
+	<symbol>FormatMessageA@28</symbol>
+	<symbol>LocalFree@4</symbol>
+	<symbol>GetConsoleCP@0</symbol>
+	<symbol>GetStdHandle@4</symbol>
+	<symbol>FreeLibrary@4</symbol>
+	<symbol>SetLastError@4</symbol>
+	<symbol>SetStdHandle@8</symbol>
+	<symbol>DeleteFileA@4</symbol>
+	<symbol>FileTimeToLocalFileTime@8</symbol>
+	<symbol>GetVolumeInformationA@32</symbol>
+	<symbol>RemoveDirectoryA@4</symbol>
+	<symbol>CreateDirectoryA@8</symbol>
+	<symbol>GetLocaleInfoA@16</symbol>
+	<symbol>GlobalMemoryStatus@4</symbol>
+	<symbol>GetEnvironmentStrings@0</symbol>
+	<symbol>FreeEnvironmentStringsA@4</symbol>
+	<symbol>LocalFree</symbol>
+	<symbol>SetLocalTime@4</symbol>
+	<symbol>GetLocalTime@4</symbol>
+	<symbol>SetFileAttributesA@8</symbol>
+	<symbol>SetFileApisToOEM@0</symbol>
+	<symbol>GetConsoleMode@8</symbol>
+	<symbol>SetConsoleCursorInfo@8</symbol>
+	<symbol>ReadFile@20</symbol>
+	<symbol>SetFileTime@16</symbol>
+	<symbol>FileTimeToSystemTime@8</symbol>
+	<symbol>GetDiskFreeSpaceA@20</symbol>
+	<symbol>SetVolumeLabelA@8</symbol>
+	<symbol>SetConsoleTitleA@4</symbol>
+	<symbol>MoveFileExA@12</symbol>
+	<symbol>GetFileTime@16</symbol>
+	<symbol>Sleep@4</symbol>
+	<symbol>MoveFileA@8</symbol>
+	<symbol>CreateSemaphoreA@16</symbol>
+	<symbol>InterlockedIncrement@4</symbol>
+	<symbol>InterlockedDecrement@4</symbol>
+	<symbol>ReleaseSemaphore@12</symbol>
+</component>
Property changes on: trunk/reactos/subsys/system/cmd/tests/stubs.xml
___________________________________________________________________
Name: svn:eol-style
   + native