Alexandre Julliard : winnls32: Make winnls. dll into a stand-alone 16-bit module.

Alexandre Julliard julliard at winehq.org
Tue Mar 24 09:01:55 CDT 2009


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

Author: Alexandre Julliard <julliard at winehq.org>
Date:   Tue Mar 24 09:31:03 2009 +0100

winnls32: Make winnls.dll into a stand-alone 16-bit module.

---

 .gitignore                                         |    1 -
 configure                                          |    9 ++++
 configure.ac                                       |    1 +
 dlls/Makefile.in                                   |    4 --
 dlls/winnls.dll16/Makefile.in                      |   15 +++++++
 dlls/winnls.dll16/winnls.c                         |   41 ++++++++++++++++++++
 .../winnls.spec => winnls.dll16/winnls.dll16.spec} |    0 
 dlls/winnls32/Makefile.in                          |    2 -
 dlls/winnls32/winnls.c                             |   19 ++-------
 dlls/winnls32/winnls32.spec                        |    4 +-
 10 files changed, 73 insertions(+), 23 deletions(-)

diff --git a/.gitignore b/.gitignore
index 3619da5..b2c44c2 100644
--- a/.gitignore
+++ b/.gitignore
@@ -96,7 +96,6 @@ dlls/w32sys.dll16
 dlls/win32s16.dll16
 dlls/wineps16.drv16
 dlls/wing.dll16
-dlls/winnls.dll16
 dlls/winsock.dll16
 dlls/wprocs.dll16
 include/activaut.h
diff --git a/configure b/configure
index 2b50abf..e11f83c 100755
--- a/configure
+++ b/configure
@@ -27656,6 +27656,14 @@ dlls/winmm/tests/Makefile: dlls/winmm/tests/Makefile.in dlls/Maketest.rules"
 ac_config_files="$ac_config_files dlls/winmm/tests/Makefile"
 
 ALL_MAKEFILES="$ALL_MAKEFILES \\
+	dlls/winnls.dll16/Makefile"
+test "x$enable_win16" != xno && ALL_DLL_DIRS="$ALL_DLL_DIRS \\
+	winnls.dll16"
+ALL_MAKEFILE_DEPENDS="$ALL_MAKEFILE_DEPENDS
+dlls/winnls.dll16/Makefile: dlls/winnls.dll16/Makefile.in dlls/Makedll.rules"
+ac_config_files="$ac_config_files dlls/winnls.dll16/Makefile"
+
+ALL_MAKEFILES="$ALL_MAKEFILES \\
 	dlls/winnls32/Makefile"
 test "x$enable_winnls32" != xno && ALL_DLL_DIRS="$ALL_DLL_DIRS \\
 	winnls32"
@@ -29448,6 +29456,7 @@ do
     "dlls/wininet/tests/Makefile") CONFIG_FILES="$CONFIG_FILES dlls/wininet/tests/Makefile" ;;
     "dlls/winmm/Makefile") CONFIG_FILES="$CONFIG_FILES dlls/winmm/Makefile" ;;
     "dlls/winmm/tests/Makefile") CONFIG_FILES="$CONFIG_FILES dlls/winmm/tests/Makefile" ;;
+    "dlls/winnls.dll16/Makefile") CONFIG_FILES="$CONFIG_FILES dlls/winnls.dll16/Makefile" ;;
     "dlls/winnls32/Makefile") CONFIG_FILES="$CONFIG_FILES dlls/winnls32/Makefile" ;;
     "dlls/winscard/Makefile") CONFIG_FILES="$CONFIG_FILES dlls/winscard/Makefile" ;;
     "dlls/winspool.drv/Makefile") CONFIG_FILES="$CONFIG_FILES dlls/winspool.drv/Makefile" ;;
diff --git a/configure.ac b/configure.ac
index c3f7008..9ee0e88 100644
--- a/configure.ac
+++ b/configure.ac
@@ -2271,6 +2271,7 @@ WINE_CONFIG_MAKEFILE([dlls/wininet/Makefile],[dlls/Makedll.rules],[dlls],[ALL_DL
 WINE_CONFIG_MAKEFILE([dlls/wininet/tests/Makefile],[dlls/Maketest.rules],[dlls],[ALL_TEST_DIRS],[enable_tests])
 WINE_CONFIG_MAKEFILE([dlls/winmm/Makefile],[dlls/Makedll.rules],[dlls],[ALL_DLL_DIRS])
 WINE_CONFIG_MAKEFILE([dlls/winmm/tests/Makefile],[dlls/Maketest.rules],[dlls],[ALL_TEST_DIRS],[enable_tests])
+WINE_CONFIG_MAKEFILE([dlls/winnls.dll16/Makefile],[dlls/Makedll.rules],[dlls],[ALL_DLL_DIRS],[enable_win16])
 WINE_CONFIG_MAKEFILE([dlls/winnls32/Makefile],[dlls/Makedll.rules],[dlls],[ALL_DLL_DIRS])
 WINE_CONFIG_MAKEFILE([dlls/winscard/Makefile],[dlls/Makedll.rules],[dlls],[ALL_DLL_DIRS])
 WINE_CONFIG_MAKEFILE([dlls/winspool.drv/Makefile],[dlls/Makedll.rules],[dlls],[ALL_DLL_DIRS])
diff --git a/dlls/Makefile.in b/dlls/Makefile.in
index bf7bcc0..2de197d 100644
--- a/dlls/Makefile.in
+++ b/dlls/Makefile.in
@@ -35,7 +35,6 @@ WIN16_FILES = \
 	win32s16.dll16 \
 	wineps16.drv16 \
 	wing.dll16 \
-	winnls.dll16 \
 	winsock.dll16 \
 	wprocs.dll16
 
@@ -86,9 +85,6 @@ wineps16.drv16:
 mmsystem.dll16:
 	echo "winmm.dll" >$@
 
-winnls.dll16:
-	echo "winnls32.dll" >$@
-
 winsock.dll16:
 	echo "ws2_32.dll" >$@
 
diff --git a/dlls/winnls.dll16/Makefile.in b/dlls/winnls.dll16/Makefile.in
new file mode 100644
index 0000000..0552321
--- /dev/null
+++ b/dlls/winnls.dll16/Makefile.in
@@ -0,0 +1,15 @@
+TOPSRCDIR = @top_srcdir@
+TOPOBJDIR = ../..
+SRCDIR    = @srcdir@
+VPATH     = @srcdir@
+MODULE    = winnls.dll16
+IMPORTS   = winnls32 kernel32
+EXTRADLLFLAGS = -Wb,--subsystem,win16,--main-module,winnls32.dll
+
+SPEC_SRCS = winnls.dll16.spec
+
+C_SRCS = winnls.c
+
+ at MAKE_DLL_RULES@
+
+ at DEPENDENCIES@  # everything below this line is overwritten by make depend
diff --git a/dlls/winnls.dll16/winnls.c b/dlls/winnls.dll16/winnls.c
new file mode 100644
index 0000000..778c254
--- /dev/null
+++ b/dlls/winnls.dll16/winnls.c
@@ -0,0 +1,41 @@
+/*
+ * Copyright 2001 Andreas Mohr
+ *
+ * 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
+ */
+
+#include <stdarg.h>
+
+#include "windef.h"
+#include "winbase.h"
+#include "winnls32.h"
+#include "wownt32.h"
+#include "wine/winuser16.h"
+
+/***********************************************************************
+ *		WINNLSEnableIME (WINNLS.16)
+ */
+BOOL WINAPI WINNLSEnableIME16( HWND16 hwnd, BOOL enable )
+{
+    return WINNLSEnableIME( HWND_32(hwnd), enable );
+}
+
+/***********************************************************************
+ *		WINNLSGetEnableStatus (WINNLS.18)
+ */
+BOOL WINAPI WINNLSGetEnableStatus16( HWND16 hwnd )
+{
+    return WINNLSGetEnableStatus( HWND_32(hwnd) );
+}
diff --git a/dlls/winnls32/winnls.spec b/dlls/winnls.dll16/winnls.dll16.spec
similarity index 100%
rename from dlls/winnls32/winnls.spec
rename to dlls/winnls.dll16/winnls.dll16.spec
diff --git a/dlls/winnls32/Makefile.in b/dlls/winnls32/Makefile.in
index ed062d8..ecdfc1c 100644
--- a/dlls/winnls32/Makefile.in
+++ b/dlls/winnls32/Makefile.in
@@ -9,8 +9,6 @@ IMPORTS   = kernel32
 C_SRCS = \
 	winnls.c
 
-SPEC_SRCS16 = winnls.spec
-
 @MAKE_DLL_RULES@
 
 @DEPENDENCIES@  # everything below this line is overwritten by make depend
diff --git a/dlls/winnls32/winnls.c b/dlls/winnls32/winnls.c
index 357b04e..2366815 100644
--- a/dlls/winnls32/winnls.c
+++ b/dlls/winnls32/winnls.c
@@ -20,7 +20,7 @@
 
 #include "windef.h"
 #include "winbase.h"
-#include "wine/winuser16.h"
+#include "winnls32.h"
 
 /***********************************************************************
  *		DllMain  (WINNLS.@)
@@ -39,26 +39,17 @@ BOOL WINAPI DllMain( HINSTANCE inst, DWORD reason, LPVOID reserved )
 }
 
 /***********************************************************************
- *		WINNLSEnableIME (WINNLS.16)
+ *		WINNLSGetEnableStatus (WINNLS32.2)
  */
-BOOL WINAPI WINNLSEnableIME16(HWND16 hWnd, BOOL fEnable)
-{
-    /* fake return of previous status. is this what this function should do ? */
-    return !fEnable;
-}
-
-/***********************************************************************
- *		WINNLSGetEnableStatus (WINNLS.18)
- */
-BOOL WINAPI WINNLSGetEnableStatus16(HWND16 hWnd)
+BOOL WINAPI WINNLSGetEnableStatus(HWND hWnd)
 {
     return FALSE;
 }
 
 /***********************************************************************
- *		WINNLS32EnableIME (WINNLS32.1)
+ *		WINNLSEnableIME (WINNLS32.1)
  */
-BOOL WINAPI WINNLS32EnableIME(HWND hWnd, BOOL fEnable)
+BOOL WINAPI WINNLSEnableIME(HWND hWnd, BOOL fEnable)
 {
     /* fake return of previous status. is this what this function should do ? */
     return !fEnable;
diff --git a/dlls/winnls32/winnls32.spec b/dlls/winnls32/winnls32.spec
index e2dfdee..18bffea 100644
--- a/dlls/winnls32/winnls32.spec
+++ b/dlls/winnls32/winnls32.spec
@@ -1,5 +1,5 @@
-1  stdcall WINNLS32EnableIME(long long)
-2  stub WINNLS32GetEnableStatus
+1  stdcall WINNLSEnableIME(long long)
+2  stdcall WINNLSGetEnableStatus(long)
 3  stub WINNLS32GetIMEHotKey
 21 stub IMP32GetIME
 22 stub IMP32QueryIME




More information about the wine-cvs mailing list