Dll separation question

Martin Wilck Martin.Wilck at Fujitsu-Siemens.com
Thu Dec 5 08:15:25 CST 2002


Am Mit, 2002-12-04 um 19.55 schrieb Alexandre Julliard:

> The rules are that you can only call exported functions, and that you
> can't add dll imports that would create a circular dependency. You can
> find the list of existing dependencies near the end of dlls/Makefile.in.

I propose the following patch to clarify this issue once and for all.

Index: DEVELOPERS-HINTS
===================================================================
RCS file: /home/wine/wine/DEVELOPERS-HINTS,v
retrieving revision 1.14
diff -u -r1.14 DEVELOPERS-HINTS
--- DEVELOPERS-HINTS	18 Sep 2002 23:11:19 -0000	1.14
+++ DEVELOPERS-HINTS	5 Dec 2002 14:10:00 -0000
@@ -456,6 +456,28 @@
   module boundaries.
 

+DLL SEPARATION
+--------------
+
+This issue is closely related to the naming conventions discussed above.
+
+The rules to preserve Dll separation are
+- Do not call a non-exported function from a different Module/Dll.
+- When calling exported functions of another Dll, make sure the Dll
+  you are working on imports that other Dll (look at the IMPORTS variable
+  in the Dll's Makefile.in). DO NOT USE functions of non-imported Dlls.
+- In principle, it is legal to add more IMPORTS to a Dll, but you should
+  have really good reasons to do so. You must make sure that the new imports do
+  not cause a circular Dll dependency (we say if Dll A imports Dll B, 
+  A depends on B). Dll Dependencies are specified in the individual
+  Dll's Makefile.in through the IMPORTS variable, and in the file
+  dlls/Makefile.in in the "Inter-Dll dependencies" section.
+
+Dll separation is a goal of current Wine development, it is not achieved
+yet. However, it is important that you adhere to these rules NOW, so that
+clean Dll separation can be reached more easily later. 
+
+
 DEBUG MESSAGES
 ==============
 

-- 
Martin Wilck                Phone: +49 5251 8 15113
Fujitsu Siemens Computers   Fax:   +49 5251 8 20409
Heinz-Nixdorf-Ring 1	    mailto:Martin.Wilck at Fujitsu-Siemens.com
D-33106 Paderborn           http://www.fujitsu-siemens.com/primergy








More information about the wine-patches mailing list