Moved bulk of OLE implementation to dlls/ subdirectories.

diff --git a/Makefile.in b/Makefile.in
index 6d24463..8ca5a73 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -45,6 +45,11 @@
 	dlls/msnet32 \
 	dlls/msvideo \
 	dlls/ntdll \
+	dlls/ole32 \
+	dlls/oleaut32 \
+	dlls/olecli \
+	dlls/oledlg \
+	dlls/olesvr \
 	dlls/psapi \
 	dlls/rasapi32 \
 	dlls/shell32 \
@@ -137,6 +142,11 @@
 	dlls/msnet32/msnet32.o \
 	dlls/msvideo/msvideo.o \
 	dlls/ntdll/ntdll.o \
+	dlls/ole32/ole32.o \
+	dlls/oleaut32/oleaut32.o \
+	dlls/olecli/olecli.o \
+	dlls/oledlg/oledlg.o \
+	dlls/olesvr/olesvr.o \
 	dlls/psapi/psapi.o \
 	dlls/rasapi32/rasapi32.o \
 	dlls/shell32/shell32.o \
diff --git a/configure b/configure
index 34a3647..57d13bb 100755
--- a/configure
+++ b/configure
@@ -5590,6 +5590,11 @@
 dlls/msnet32/Makefile
 dlls/msvideo/Makefile
 dlls/ntdll/Makefile
+dlls/ole32/Makefile
+dlls/oleaut32/Makefile
+dlls/olecli/Makefile
+dlls/oledlg/Makefile
+dlls/olesvr/Makefile
 dlls/psapi/Makefile
 dlls/rasapi32/Makefile
 dlls/shell32/Makefile
@@ -5777,6 +5782,11 @@
 dlls/msnet32/Makefile
 dlls/msvideo/Makefile
 dlls/ntdll/Makefile
+dlls/ole32/Makefile
+dlls/oleaut32/Makefile
+dlls/olecli/Makefile
+dlls/oledlg/Makefile
+dlls/olesvr/Makefile
 dlls/psapi/Makefile
 dlls/rasapi32/Makefile
 dlls/shell32/Makefile
diff --git a/configure.in b/configure.in
index 56d2f7b..912c1fc 100644
--- a/configure.in
+++ b/configure.in
@@ -839,6 +839,11 @@
 dlls/msnet32/Makefile
 dlls/msvideo/Makefile
 dlls/ntdll/Makefile
+dlls/ole32/Makefile
+dlls/oleaut32/Makefile
+dlls/olecli/Makefile
+dlls/oledlg/Makefile
+dlls/olesvr/Makefile
 dlls/psapi/Makefile
 dlls/rasapi32/Makefile
 dlls/shell32/Makefile
diff --git a/dlls/Makefile.in b/dlls/Makefile.in
index 958eec2..f3e7733 100644
--- a/dlls/Makefile.in
+++ b/dlls/Makefile.in
@@ -14,6 +14,11 @@
 	msnet32 \
 	msvideo \
 	ntdll \
+	ole32 \
+	oleaut32 \
+	olecli \
+	oledlg \
+	olesvr \
 	psapi \
 	shell32 \
 	sound \
diff --git a/dlls/ole32/.cvsignore b/dlls/ole32/.cvsignore
new file mode 100644
index 0000000..5deb470
--- /dev/null
+++ b/dlls/ole32/.cvsignore
@@ -0,0 +1,5 @@
+Makefile
+ole32.spec.c
+ole2.spec.c
+storage.spec.c
+compobj.spec.c
diff --git a/dlls/ole32/Makefile.in b/dlls/ole32/Makefile.in
new file mode 100644
index 0000000..8247deb
--- /dev/null
+++ b/dlls/ole32/Makefile.in
@@ -0,0 +1,37 @@
+DEFS      = @DLLFLAGS@ -D__WINE__
+TOPSRCDIR = @top_srcdir@
+TOPOBJDIR = ../..
+SRCDIR    = @srcdir@
+VPATH     = @srcdir@
+MODULE    = ole32
+
+SPEC_SRCS = ole32.spec ole2.spec storage.spec compobj.spec
+
+C_SRCS = \
+	antimoniker.c \
+	bindctx.c \
+	clipboard.c \
+	compobj.c \
+	compositemoniker.c \
+	datacache.c \
+	defaulthandler.c \
+	filemoniker.c \
+	hglobalstream.c \
+	ifs.c \
+	itemmoniker.c \
+	memlockbytes.c \
+	moniker.c \
+	ole2.c \
+	ole2stubs.c \
+	oleobj.c \
+	stg_bigblockfile.c \
+	stg_stream.c \
+	storage.c \
+	storage32.c
+
+all: $(MODULE).o
+
+@MAKE_RULES@
+
+### Dependencies:
+
diff --git a/ole/antimoniker.c b/dlls/ole32/antimoniker.c
similarity index 100%
rename from ole/antimoniker.c
rename to dlls/ole32/antimoniker.c
diff --git a/ole/bindctx.c b/dlls/ole32/bindctx.c
similarity index 100%
rename from ole/bindctx.c
rename to dlls/ole32/bindctx.c
diff --git a/ole/clipboard.c b/dlls/ole32/clipboard.c
similarity index 100%
rename from ole/clipboard.c
rename to dlls/ole32/clipboard.c
diff --git a/ole/compobj.c b/dlls/ole32/compobj.c
similarity index 100%
rename from ole/compobj.c
rename to dlls/ole32/compobj.c
diff --git a/if1632/compobj.spec b/dlls/ole32/compobj.spec
similarity index 100%
rename from if1632/compobj.spec
rename to dlls/ole32/compobj.spec
diff --git a/ole/compositemoniker.c b/dlls/ole32/compositemoniker.c
similarity index 100%
rename from ole/compositemoniker.c
rename to dlls/ole32/compositemoniker.c
diff --git a/ole/datacache.c b/dlls/ole32/datacache.c
similarity index 100%
rename from ole/datacache.c
rename to dlls/ole32/datacache.c
diff --git a/ole/defaulthandler.c b/dlls/ole32/defaulthandler.c
similarity index 100%
rename from ole/defaulthandler.c
rename to dlls/ole32/defaulthandler.c
diff --git a/ole/filemoniker.c b/dlls/ole32/filemoniker.c
similarity index 100%
rename from ole/filemoniker.c
rename to dlls/ole32/filemoniker.c
diff --git a/ole/hglobalstream.c b/dlls/ole32/hglobalstream.c
similarity index 100%
rename from ole/hglobalstream.c
rename to dlls/ole32/hglobalstream.c
diff --git a/ole/ifs.c b/dlls/ole32/ifs.c
similarity index 100%
rename from ole/ifs.c
rename to dlls/ole32/ifs.c
diff --git a/ole/ifs.h b/dlls/ole32/ifs.h
similarity index 100%
rename from ole/ifs.h
rename to dlls/ole32/ifs.h
diff --git a/ole/itemmoniker.c b/dlls/ole32/itemmoniker.c
similarity index 100%
rename from ole/itemmoniker.c
rename to dlls/ole32/itemmoniker.c
diff --git a/ole/memlockbytes.c b/dlls/ole32/memlockbytes.c
similarity index 100%
rename from ole/memlockbytes.c
rename to dlls/ole32/memlockbytes.c
diff --git a/ole/moniker.c b/dlls/ole32/moniker.c
similarity index 100%
rename from ole/moniker.c
rename to dlls/ole32/moniker.c
diff --git a/ole/ole2.c b/dlls/ole32/ole2.c
similarity index 100%
rename from ole/ole2.c
rename to dlls/ole32/ole2.c
diff --git a/if1632/ole2.spec b/dlls/ole32/ole2.spec
similarity index 100%
rename from if1632/ole2.spec
rename to dlls/ole32/ole2.spec
diff --git a/ole/ole2stubs.c b/dlls/ole32/ole2stubs.c
similarity index 100%
rename from ole/ole2stubs.c
rename to dlls/ole32/ole2stubs.c
diff --git a/relay32/ole32.spec b/dlls/ole32/ole32.spec
similarity index 100%
rename from relay32/ole32.spec
rename to dlls/ole32/ole32.spec
diff --git a/ole/oleobj.c b/dlls/ole32/oleobj.c
similarity index 100%
rename from ole/oleobj.c
rename to dlls/ole32/oleobj.c
diff --git a/ole/stg_bigblockfile.c b/dlls/ole32/stg_bigblockfile.c
similarity index 100%
rename from ole/stg_bigblockfile.c
rename to dlls/ole32/stg_bigblockfile.c
diff --git a/ole/stg_stream.c b/dlls/ole32/stg_stream.c
similarity index 100%
rename from ole/stg_stream.c
rename to dlls/ole32/stg_stream.c
diff --git a/ole/storage.c b/dlls/ole32/storage.c
similarity index 100%
rename from ole/storage.c
rename to dlls/ole32/storage.c
diff --git a/if1632/storage.spec b/dlls/ole32/storage.spec
similarity index 100%
rename from if1632/storage.spec
rename to dlls/ole32/storage.spec
diff --git a/ole/storage32.c b/dlls/ole32/storage32.c
similarity index 100%
rename from ole/storage32.c
rename to dlls/ole32/storage32.c
diff --git a/ole/storage32.h b/dlls/ole32/storage32.h
similarity index 100%
rename from ole/storage32.h
rename to dlls/ole32/storage32.h
diff --git a/dlls/oleaut32/.cvsignore b/dlls/oleaut32/.cvsignore
new file mode 100644
index 0000000..5bcfaf3
--- /dev/null
+++ b/dlls/oleaut32/.cvsignore
@@ -0,0 +1,4 @@
+Makefile
+oleaut32.spec.c
+ole2disp.spec.c
+typelib.spec.c
diff --git a/dlls/oleaut32/Makefile.in b/dlls/oleaut32/Makefile.in
new file mode 100644
index 0000000..3da313f
--- /dev/null
+++ b/dlls/oleaut32/Makefile.in
@@ -0,0 +1,24 @@
+DEFS      = @DLLFLAGS@ -D__WINE__
+TOPSRCDIR = @top_srcdir@
+TOPOBJDIR = ../..
+SRCDIR    = @srcdir@
+VPATH     = @srcdir@
+MODULE    = oleaut32
+
+SPEC_SRCS = oleaut32.spec ole2disp.spec typelib.spec
+
+C_SRCS = \
+	ole2disp.c \
+	oleaut.c \
+	olefont.c \
+	parsedt.c \
+	safearray.c \
+	typelib.c \
+	variant.c
+
+all: $(MODULE).o
+
+@MAKE_RULES@
+
+### Dependencies:
+
diff --git a/ole/ole2disp.c b/dlls/oleaut32/ole2disp.c
similarity index 100%
rename from ole/ole2disp.c
rename to dlls/oleaut32/ole2disp.c
diff --git a/if1632/ole2disp.spec b/dlls/oleaut32/ole2disp.spec
similarity index 100%
rename from if1632/ole2disp.spec
rename to dlls/oleaut32/ole2disp.spec
diff --git a/ole/oleaut32.c b/dlls/oleaut32/oleaut.c
similarity index 100%
rename from ole/oleaut32.c
rename to dlls/oleaut32/oleaut.c
diff --git a/relay32/oleaut32.spec b/dlls/oleaut32/oleaut32.spec
similarity index 100%
rename from relay32/oleaut32.spec
rename to dlls/oleaut32/oleaut32.spec
diff --git a/ole/olefont.c b/dlls/oleaut32/olefont.c
similarity index 100%
rename from ole/olefont.c
rename to dlls/oleaut32/olefont.c
diff --git a/ole/parsedt.c b/dlls/oleaut32/parsedt.c
similarity index 100%
rename from ole/parsedt.c
rename to dlls/oleaut32/parsedt.c
diff --git a/ole/parsedt.h b/dlls/oleaut32/parsedt.h
similarity index 100%
rename from ole/parsedt.h
rename to dlls/oleaut32/parsedt.h
diff --git a/ole/safearray.c b/dlls/oleaut32/safearray.c
similarity index 100%
rename from ole/safearray.c
rename to dlls/oleaut32/safearray.c
diff --git a/ole/typelib.c b/dlls/oleaut32/typelib.c
similarity index 100%
rename from ole/typelib.c
rename to dlls/oleaut32/typelib.c
diff --git a/ole/typelib.h b/dlls/oleaut32/typelib.h
similarity index 100%
rename from ole/typelib.h
rename to dlls/oleaut32/typelib.h
diff --git a/if1632/typelib.spec b/dlls/oleaut32/typelib.spec
similarity index 100%
rename from if1632/typelib.spec
rename to dlls/oleaut32/typelib.spec
diff --git a/ole/variant.c b/dlls/oleaut32/variant.c
similarity index 100%
rename from ole/variant.c
rename to dlls/oleaut32/variant.c
diff --git a/dlls/olecli/.cvsignore b/dlls/olecli/.cvsignore
new file mode 100644
index 0000000..d22ff25
--- /dev/null
+++ b/dlls/olecli/.cvsignore
@@ -0,0 +1,3 @@
+Makefile
+olecli32.spec.c
+olecli.spec.c
diff --git a/dlls/olecli/Makefile.in b/dlls/olecli/Makefile.in
new file mode 100644
index 0000000..e2cc793
--- /dev/null
+++ b/dlls/olecli/Makefile.in
@@ -0,0 +1,18 @@
+DEFS      = @DLLFLAGS@ -D__WINE__
+TOPSRCDIR = @top_srcdir@
+TOPOBJDIR = ../..
+SRCDIR    = @srcdir@
+VPATH     = @srcdir@
+MODULE    = olecli
+
+SPEC_SRCS = olecli32.spec olecli.spec
+
+C_SRCS = \
+	olecli_main.c
+
+all: $(MODULE).o
+
+@MAKE_RULES@
+
+### Dependencies:
+
diff --git a/if1632/olecli.spec b/dlls/olecli/olecli.spec
similarity index 100%
rename from if1632/olecli.spec
rename to dlls/olecli/olecli.spec
diff --git a/relay32/olecli32.spec b/dlls/olecli/olecli32.spec
similarity index 100%
rename from relay32/olecli32.spec
rename to dlls/olecli/olecli32.spec
diff --git a/ole/olecli.c b/dlls/olecli/olecli_main.c
similarity index 100%
rename from ole/olecli.c
rename to dlls/olecli/olecli_main.c
diff --git a/dlls/oledlg/.cvsignore b/dlls/oledlg/.cvsignore
new file mode 100644
index 0000000..704ceaa
--- /dev/null
+++ b/dlls/oledlg/.cvsignore
@@ -0,0 +1,2 @@
+Makefile
+oledlg.spec.c
diff --git a/dlls/oledlg/Makefile.in b/dlls/oledlg/Makefile.in
new file mode 100644
index 0000000..30cf519
--- /dev/null
+++ b/dlls/oledlg/Makefile.in
@@ -0,0 +1,18 @@
+DEFS      = @DLLFLAGS@ -D__WINE__
+TOPSRCDIR = @top_srcdir@
+TOPOBJDIR = ../..
+SRCDIR    = @srcdir@
+VPATH     = @srcdir@
+MODULE    = oledlg
+
+SPEC_SRCS = oledlg.spec
+
+C_SRCS = \
+	oledlg_main.c
+
+all: $(MODULE).o
+
+@MAKE_RULES@
+
+### Dependencies:
+
diff --git a/relay32/oledlg.spec b/dlls/oledlg/oledlg.spec
similarity index 100%
rename from relay32/oledlg.spec
rename to dlls/oledlg/oledlg.spec
diff --git a/ole/oledlg.c b/dlls/oledlg/oledlg_main.c
similarity index 100%
rename from ole/oledlg.c
rename to dlls/oledlg/oledlg_main.c
diff --git a/dlls/olesvr/.cvsignore b/dlls/olesvr/.cvsignore
new file mode 100644
index 0000000..e982e86
--- /dev/null
+++ b/dlls/olesvr/.cvsignore
@@ -0,0 +1,3 @@
+Makefile
+olesvr32.spec.c
+olesvr.spec.c
diff --git a/dlls/olesvr/Makefile.in b/dlls/olesvr/Makefile.in
new file mode 100644
index 0000000..866e045
--- /dev/null
+++ b/dlls/olesvr/Makefile.in
@@ -0,0 +1,18 @@
+DEFS      = @DLLFLAGS@ -D__WINE__
+TOPSRCDIR = @top_srcdir@
+TOPOBJDIR = ../..
+SRCDIR    = @srcdir@
+VPATH     = @srcdir@
+MODULE    = olesvr
+
+SPEC_SRCS = olesvr32.spec olesvr.spec
+
+C_SRCS = \
+	olesvr_main.c
+
+all: $(MODULE).o
+
+@MAKE_RULES@
+
+### Dependencies:
+
diff --git a/if1632/olesvr.spec b/dlls/olesvr/olesvr.spec
similarity index 100%
rename from if1632/olesvr.spec
rename to dlls/olesvr/olesvr.spec
diff --git a/relay32/olesvr32.spec b/dlls/olesvr/olesvr32.spec
similarity index 100%
rename from relay32/olesvr32.spec
rename to dlls/olesvr/olesvr32.spec
diff --git a/ole/olesvr.c b/dlls/olesvr/olesvr_main.c
similarity index 100%
rename from ole/olesvr.c
rename to dlls/olesvr/olesvr_main.c
diff --git a/if1632/.cvsignore b/if1632/.cvsignore
index 0c69adc..68d2ec9 100644
--- a/if1632/.cvsignore
+++ b/if1632/.cvsignore
@@ -1,9 +1,6 @@
 Makefile
 call16.s
-callfrom16.spec.c
-callto16.spec.c
 comm.spec.c
-compobj.spec.c
 ddeml.spec.c
 dispdib.spec.c
 display.spec.c
@@ -12,19 +9,13 @@
 keyboard.spec.c
 mmsystem.spec.c
 mouse.spec.c
-ole2.spec.c
 ole2conv.spec.c
-ole2disp.spec.c
 ole2nls.spec.c
 ole2prox.spec.c
 ole2thk.spec.c
-olecli.spec.c
-olesvr.spec.c
-storage.spec.c
 system.spec.c
 thunk.glue.c
 toolhelp.spec.c
-typelib.spec.c
 user.spec.c
 wineps.spec.c
 winsock.spec.c
diff --git a/if1632/Makefile.in b/if1632/Makefile.in
index ab0cfb6..6016c9a 100644
--- a/if1632/Makefile.in
+++ b/if1632/Makefile.in
@@ -7,7 +7,6 @@
 
 SPEC_SRCS = \
 	comm.spec \
-	compobj.spec \
 	ddeml.spec \
 	dispdib.spec \
 	display.spec \
@@ -16,18 +15,12 @@
 	keyboard.spec \
 	mmsystem.spec \
 	mouse.spec \
-	ole2.spec \
 	ole2conv.spec \
-	ole2disp.spec \
 	ole2nls.spec \
 	ole2prox.spec \
 	ole2thk.spec \
-	olecli.spec \
-	olesvr.spec \
-	storage.spec \
 	system.spec \
 	toolhelp.spec \
-	typelib.spec \
 	user.spec \
 	wineps.spec \
 	winsock.spec \
diff --git a/ole/Makefile.in b/ole/Makefile.in
index 31388b2..9b01d4f 100644
--- a/ole/Makefile.in
+++ b/ole/Makefile.in
@@ -6,38 +6,8 @@
 MODULE    = ole
 
 C_SRCS = \
-	antimoniker.c \
-	bindctx.c \
-	clipboard.c\
-	compobj.c \
-	compositemoniker.c \
-	datacache.c \
-	defaulthandler.c \
-	filemoniker.c \
 	guid.c \
-	hglobalstream.c \
-	ifs.c \
-	itemmoniker.c \
-	memlockbytes.c \
-	moniker.c \
-	ole2.c \
-	ole2disp.c \
-	ole2nls.c \
-	ole2stubs.c \
-	oleaut32.c \
-	olecli.c \
-	oledlg.c \
-	olefont.c \
-	oleobj.c \
-	olesvr.c \
-	parsedt.c \
-	safearray.c \
-	stg_bigblockfile.c \
-	stg_stream.c \
-	storage.c \
-	storage32.c \
-	typelib.c \
-	variant.c
+	ole2nls.c 
 
 all: $(MODULE).o
 
diff --git a/relay32/.cvsignore b/relay32/.cvsignore
index 31de066..63c0ec2 100644
--- a/relay32/.cvsignore
+++ b/relay32/.cvsignore
@@ -12,11 +12,6 @@
 mcicda.spec.c
 mciseq.spec.c
 mciwave.spec.c
-ole32.spec.c
-oleaut32.spec.c
-olecli32.spec.c
-oledlg.spec.c
-olesvr32.spec.c
 user32.spec.c
 winmm.spec.c
 wow32.spec.c
diff --git a/relay32/Makefile.in b/relay32/Makefile.in
index a754e26..2005ff4 100644
--- a/relay32/Makefile.in
+++ b/relay32/Makefile.in
@@ -18,11 +18,6 @@
 	mcicda.spec \
 	mciseq.spec \
 	mciwave.spec \
-	ole32.spec \
-	oleaut32.spec \
-	olecli32.spec \
-	oledlg.spec \
-	olesvr32.spec \
 	user32.spec \
 	winmm.spec \
 	wow32.spec \