1 # ReactOS WINE porting guide for 0.3
2 # Update this file when you port a dll/program from WINE.
4 The ReactOS Project shares quite a bit of code with the WINE project.
5 This document should provide a compleate reference for all of the
6 locations in the ReactOS source tree where code is shared between the
7 two projects. If you find something is missing from this documentation
10 If you find that a function in ReactOS that is not implemented properly
11 and is based on WINE sources, check the latest Winehq CVS and see if
12 it has been fixed there. If so, please submit a patch to
13 ros-kernel@reactos.com. Otherwise please send a patch to both
14 wine-patches@winehq.com and ros-kernel@reactos.com
16 When porting a dll from WINE to ReactOS please take a look at how
17 comctl32 has been imported. We start by creating a makefile that has
18 a target defined like so:
22 This will cause the reactos build system to look for a file called
23 makefile.ros-template. This file contains all of the information needed
24 for the ReactOS build system to make use of the WINE Makefile.in.
25 This will allow you to use the WINE tools and librarys with very little
26 work to import a new dll.
28 The following build tools are derived from Wine.
29 reactos/tools/makedep # fast dependancy tool
30 reactos/tools/bin2res # Resource to binary converter
31 reactos/tools/winebuild # Wine Build tool for Creating *.def files
32 reactos/tools/wmc # Wine Message Compiler
35 The following shared libraries are a 100% port from Winehq sources.
37 reactos/lib/cabinet # Synced to Wine-20050111
38 reactos/lib/comctl32 # Synced to Wine-20050111
39 reactos/lib/comdlg32 # Synced to Wine-20050111
40 reactos/lib/dinput # Synced to Wine-20050111
41 reactos/lib/dinput8 # Synced to Wine-20050111
42 reactos/lib/icmp # Synced to Wine-20050111
43 reactos/lib/iphlpapi # Out of sync
44 reactos/lib/imagehlp # Patches for BindImage need review and submission to winehq.
45 reactos/lib/msvcrt20 # Out of sync
46 reactos/lib/mpr # Synced to Wine-20050111
47 reactos/lib/msacm # Out of sync
48 reactos/lib/msi # Synced to Wine-20050111
49 reactos/lib/msvideo # Out of sync
50 reactos/lib/netapi32 # Out of sync
51 reactos/lib/odbc32 # In sync. Depends on port of Linux ODBC.
52 reactos/lib/ole32 # Synced to Wine-20050111
53 reactos/lib/oleaut32 # Synced to Wine-20050111
54 reactos/lib/oledlg # Synced to Wine-20050111
55 reactos/lib/olepro32 # Synced to Wine-20050111
56 reactos/lib/richedit # Synced to Wine-20050111
57 reactos/lib/rpcrt4 # Synced to Wine-20050111
58 reactos/lib/setupapi # Synced to Wine-20050125 # CVS
59 reactos/lib/shell32 # Synced to Wine-20050111
60 reactos/lib/shdocvw # Synced to Wine-20050111
61 reactos/lib/shlwapi # Synced to Wine-20050111
62 reactos/lib/twain # Out of sync
63 reactos/lib/unicode # Dependancy on this lib needs to be removed. Synced to Wine-20050111
64 reactos/lib/urlmon # Synced to Wine-20050111
65 reactos/lib/version # Out of sync
66 reactos/lib/wininet # Out of sync
67 reactos/lib/winmm # Synced to Wine-20050111
68 reactos/lib/winmm/midimap # Synced to Wine-20050111
69 reactos/lib/winmm/wavemap # Synced to Wine-20050111
71 ReactOS shares the following programs with Winehq.
72 reactos/subsys/system/regedit # Out of sync
73 reactos/subsys/system/expand # Out of sync
75 In addition the following libs, dlls and source files are mostly based on code ported
76 from Winehq CVS. If you are looking to update something in these files
77 check Wine current souces first as it may already be fixed.
83 reactos/lib/advapi32/crypyto/*.c # Synced to Wine-20041201
86 reactos/lib/gdi32/objects/linedda.c # Out of sync
89 reactos/lib/kernel32/misc/errormsg.c # Out of sync
90 reactos/lib/kernel32/misc/profile.c # Out of sync
91 reactos/lib/kernel32/misc/lcformat.c # Out of sync
94 reactos/lib/msvcrt/wine/*.c # Out of sync
97 reactos/lib/user32/controls/button.c # Out of sync
98 reactos/lib/user32/controls/edit.c # Out of sync
99 reactos/lib/user32/controls/static.c # Out of sync
100 reactos/lib/user32/misc/wsprintf.c # Out of sync
101 reactos/lib/user32/windows/mdi.c # Out of sync