Commit c3eac438 authored by Alexandre Julliard's avatar Alexandre Julliard

Moved libuuid to the dlls directory, and moved the DirectX GUIDs into

a separate libdxguid library.
parent 16dc166d
......@@ -78,7 +78,7 @@ DLLDIR = $(TOPOBJDIR)/dlls
LIBDIR = $(TOPOBJDIR)/libs
LIBPORT = -L$(TOPOBJDIR)/libs/port -lwine_port
LIBUNICODE = -L$(TOPOBJDIR)/libs/unicode -lwine_unicode
LIBUUID = -L$(TOPOBJDIR)/libs/uuid -lwine_uuid
LIBUUID = -luuid -ldxguid
LIBWINE = -L$(TOPOBJDIR)/libs/wine -lwine
@SET_MAKE@
......
......@@ -1473,7 +1473,6 @@ dlls/commdlg/Makefile
dlls/crtdll/Makefile
dlls/crypt32/Makefile
dlls/ctl3d/Makefile
dlls/wined3d/Makefile
dlls/d3d8/Makefile
dlls/d3d9/Makefile
dlls/d3dim/Makefile
......@@ -1499,6 +1498,7 @@ dlls/dpnhpast/Makefile
dlls/dsound/Makefile
dlls/dsound/tests/Makefile
dlls/dswave/Makefile
dlls/dxguid/Makefile
dlls/gdi/Makefile
dlls/gdi/tests/Makefile
dlls/glu32/Makefile
......@@ -1575,10 +1575,12 @@ dlls/urlmon/Makefile
dlls/urlmon/tests/Makefile
dlls/user/Makefile
dlls/user/tests/Makefile
dlls/uuid/Makefile
dlls/uxtheme/Makefile
dlls/version/Makefile
dlls/win32s/Makefile
dlls/winaspi/Makefile
dlls/wined3d/Makefile
dlls/winedos/Makefile
dlls/wineps/Makefile
dlls/wininet/Makefile
......@@ -1596,8 +1598,8 @@ dlls/winmm/wavemap/Makefile
dlls/winmm/winealsa/Makefile
dlls/winmm/winearts/Makefile
dlls/winmm/wineaudioio/Makefile
dlls/winmm/winenas/Makefile
dlls/winmm/winejack/Makefile
dlls/winmm/winenas/Makefile
dlls/winmm/wineoss/Makefile
dlls/winnls/Makefile
dlls/winsock/Makefile
......@@ -1614,7 +1616,6 @@ include/Makefile
libs/Makefile
libs/port/Makefile
libs/unicode/Makefile
libs/uuid/Makefile
libs/wine/Makefile
libs/wpp/Makefile
loader/Makefile
......
......@@ -29,7 +29,7 @@ $(MAINSPEC).c: $(MAINSPEC) $(RC_SRCS:.rc=.res) $(ALL_OBJS) $(IMPORTLIBS) $(WINEB
$(WINEBUILD) $(DEFS) $(DLLFLAGS) -o $@ --spec $(SRCDIR)/$(MAINSPEC) $(RC_SRCS:.rc=.res) $(ALL_OBJS) -L$(DLLDIR) $(DELAYIMPORTS:%=-d%) $(IMPORTS:%=-l%)
$(MODULE).so: $(MAINSPEC).o $(ALL_OBJS) Makefile.in
$(LDDLL) $(MAINSPEC).o $(ALL_OBJS) -o $@ $(ALL_LIBS) -lc
$(LDDLL) $(MAINSPEC).o $(ALL_OBJS) -o $@ -L$(DLLDIR) $(ALL_LIBS) -lc
# Rules for .dll files
......@@ -45,7 +45,7 @@ $(SPEC_DEF): $(WINEBUILD)
$(WIN16_FILES:%=__checklink16__%): checklink16
checklink16:: $(MAINSPEC).o $(OBJS) $(MODULE).dbg.o dummy
$(CC) -o checklink -Wl,-rpath,$(TOPOBJDIR)/libs $(TOPSRCDIR)/dlls/checklink.c $(MAINSPEC).o $(OBJS) $(MODULE).dbg.o $(ALL_LIBS) && $(RM) checklink
$(CC) -o checklink -Wl,-rpath,$(TOPOBJDIR)/libs $(TOPSRCDIR)/dlls/checklink.c $(MAINSPEC).o $(OBJS) $(MODULE).dbg.o -L$(DLLDIR) $(ALL_LIBS) && $(RM) checklink
checklink:: $(WIN16_FILES:%=__checklink16__%)
......
......@@ -144,9 +144,11 @@ SUBDIRS = \
d3d9 \
d3dx8 \
ddraw \
dxguid \
glu32 \
glut32 \
opengl32 \
uuid \
wined3d \
x11drv
......@@ -251,6 +253,8 @@ SYMLINKS = \
iphlpapi.dll$(DLLEXT) \
joystick.drv$(DLLEXT) \
kernel32.dll$(DLLEXT) \
libdxguid.a \
libuuid.a \
lz32.dll$(DLLEXT) \
mapi32.dll$(DLLEXT) \
mcianim.drv$(DLLEXT) \
......@@ -812,6 +816,12 @@ wsock32.dll$(DLLEXT): wsock32/wsock32.dll$(DLLEXT)
x11drv.dll$(DLLEXT): x11drv/x11drv.dll$(DLLEXT)
$(RM) $@ && $(LN_S) x11drv/x11drv.dll$(DLLEXT) $@
libdxguid.a: dxguid/libdxguid.a
$(RM) $@ && $(LN_S) dxguid/libdxguid.a $@
libuuid.a: uuid/libuuid.a
$(RM) $@ && $(LN_S) uuid/libuuid.a $@
# Import libraries
......@@ -928,6 +938,11 @@ IMPORT_LIBS = \
libwsock32 \
libx11drv
ALL_IMPORT_LIBS = \
$(IMPORT_LIBS:%=%.$(IMPLIBEXT)) \
libdxguid.a \
libuuid.a
libadvapi32.def: advapi32/advapi32.spec.def
$(RM) $@ && $(LN_S) advapi32/advapi32.spec.def $@
libadvapi32.a: advapi32/advapi32.spec.def
......@@ -1595,9 +1610,8 @@ winsock/ws2_32.spec.def: $(WINEBUILD)
wsock32/wsock32.spec.def: $(WINEBUILD)
x11drv/x11drv.spec.def: $(WINEBUILD)
$(SUBDIRS): $(IMPORT_LIBS:%=%.$(IMPLIBEXT))
$(SUBDIRS:%=%/__install__): $(IMPORT_LIBS:%=%.$(IMPLIBEXT))
$(SUBDIRS:%=%/__crosstest__): $(IMPORT_LIBS:%=%.a)
$(BUILDSUBDIRS): $(ALL_IMPORT_LIBS)
$(INSTALLSUBDIRS:%=%/__install__): $(ALL_IMPORT_LIBS)
# Map library name to the corresponding directory
......@@ -1731,6 +1745,9 @@ wow32/wow32.dll$(DLLEXT): wow32
winsock/ws2_32.dll$(DLLEXT): winsock
wsock32/wsock32.dll$(DLLEXT): wsock32
x11drv/x11drv.dll$(DLLEXT): x11drv
dxguid/libdxguid.a: dxguid
uuid/libuuid.a: uuid
# Rules for auto documentation
$(SUBDIRS:%=%/__man__): dummy
......@@ -1752,20 +1769,20 @@ doc-sgml: $(SUBDIRS:%=%/__doc_sgml__)
# Misc rules
install install-dev:: $(IMPORT_LIBS:%=%.$(IMPLIBEXT))
install install-dev:: $(ALL_IMPORT_LIBS)
$(MKINSTALLDIRS) $(dlldir)
for f in $(IMPORT_LIBS:%=%.$(IMPLIBEXT)); do $(INSTALL_DATA) $$f $(dlldir)/$$f; done
for f in $(ALL_IMPORT_LIBS); do $(INSTALL_DATA) $$f $(dlldir)/$$f; done
install install-lib:: $(INSTALLSUBDIRS:%=%/__install__)
uninstall::
$(RM) $(IMPORT_LIBS:%=$(dlldir)/%.$(IMPLIBEXT))
$(RM) $(ALL_IMPORT_LIBS:%=$(dlldir)/%)
-rmdir $(dlldir)
implib: $(IMPORT_LIBS:%=%.$(IMPLIBEXT))
implib: $(ALL_IMPORT_LIBS)
clean::
$(RM) $(IMPORT_LIBS:%=%.a) $(IMPORT_LIBS:%=%.def) $(SYMLINKS)
$(RM) $(ALL_IMPORT_LIBS) $(SYMLINKS)
check test:: $(BUILDSUBDIRS:%=%/__test__)
......
......@@ -41,12 +41,12 @@ $(MODULE).spec.c: $(RC_SRCS:.rc=.res) $(OBJS) $(IMPORTLIBS) $(WINEBUILD)
# Rules for .so main module
$(MODULE).so: $(MODULE).spec.o $(OBJS) Makefile.in
$(LDDLL) $(MODULE).spec.o $(OBJS) -o $@ $(ALL_LIBS) -lc
$(LDDLL) $(MODULE).spec.o $(OBJS) -o $@ -L$(DLLDIR) $(ALL_LIBS) -lc
# Rules for .exe main module
$(MODULE): $(OBJS) $(RCOBJS) $(IMPORTLIBS) Makefile.in
$(CC) $(OBJS) $(RCOBJS) -o $@ -L$(DLLDIR) $(IMPORTS:%=-l%) $(ALL_LIBS)
$(MODULE): $(OBJS) $(RCOBJS) Makefile.in
$(CC) $(OBJS) $(RCOBJS) -o $@ $(IMPORTS:%=-l%) $(EXTRALIBS) $(LDFLAGS) $(LIBS)
# Rules for building test list
......@@ -74,7 +74,7 @@ $(TESTRESULTS): $(MODULE)$(DLLEXT) $(DLLDIR)/$(TESTDLL)$(DLLEXT)
crosstest:: @CROSSTEST@
$(CROSSTEST): $(CROSSOBJS) Makefile.in
$(CROSSCC) $(CROSSOBJS) -o $@ $(IMPORTS:%=-l%) $(LIBS)
$(CROSSCC) $(CROSSOBJS) -o $@ $(IMPORTS:%=-l%) $(EXTRALIBS) $(LDFLAGS) $(LIBS)
# Rules for cleaning
......
......@@ -4,13 +4,12 @@ TOPSRCDIR = @top_srcdir@
TOPOBJDIR = ../..
SRCDIR = @srcdir@
VPATH = @srcdir@
MODULE = libwine_uuid.a
MODULE = libdxguid.a
C_SRCS = \
dx8guid.c \
dx9guid.c \
dxguid.c \
uuid.c
dxguid.c
all: $(MODULE)
......@@ -21,11 +20,4 @@ $(MODULE): $(OBJS) Makefile.in
$(AR) $@ $(OBJS)
$(RANLIB) $@
install install-dev:: libwine_uuid.a
$(MKINSTALLDIRS) $(libdir)
$(INSTALL_DATA) libwine_uuid.a $(libdir)/libwine_uuid.a
uninstall::
$(RM) $(libdir)/libwine_uuid.a
### Dependencies:
......@@ -24,8 +24,8 @@ use strict;
my $makefiles = `find . -name Makefile.in -print`;
my %imports = ();
my %directories = ();
my %implib_dirs = ();
my %altnames = ();
# list of special dlls that can be switched on or off by configure
......@@ -61,8 +61,14 @@ foreach my $i (split(/\s/,$makefiles))
if (/^MODULE\s*=\s*([a-zA-Z0-9_.]+)/)
{
$module = $1;
$imports{$module} = [ ];
($directories{$module} = $i) =~ s/^\.\/(.*)\/[^\/]+$/$1/;
if ($module =~ /^lib.*\.a$/)
{
($implib_dirs{$module} = $i) =~ s/^\.\/(.*)\/[^\/]+$/$1/;
}
else
{
($directories{$module} = $i) =~ s/^\.\/(.*)\/[^\/]+$/$1/;
}
next;
}
if (/^ALTNAMES\s*=\s*(.*)/)
......@@ -71,15 +77,8 @@ foreach my $i (split(/\s/,$makefiles))
$altnames{$module} = \@list;
next;
}
if (/^(DELAYIMPORTS|IMPORTS)\s*=\s*(.*)/)
{
my @list = map { /\./ ? $_ : $_ . ".dll"; } split(/\s/,$2);
push @{$imports{$module}}, @list;
next;
}
}
close MAKE;
push @{$imports{$module}}, "kernel32.dll" unless !defined($module) || @{$imports{$module}} || $module eq "ntdll.dll";
}
open NEWMAKE,">Makefile.in.new" or die "cannot create Makefile.in.new";
......@@ -126,7 +125,7 @@ foreach my $dir (sort values %directories)
}
printf NEWMAKE "\n\nSUBDIRS = \\\n\t\$(BASEDIRS)";
foreach my $dir (sort keys %special_dlls)
foreach my $dir (sort (keys %special_dlls, values %implib_dirs))
{
printf NEWMAKE " \\\n\t%s", $dir;
}
......@@ -146,13 +145,15 @@ my %targets16 = ();
foreach my $mod (sort keys %directories)
{
next if defined($special_dlls{$directories{$mod}}); # skip special dlls
$targets{sprintf("%s\$(DLLEXT)",$mod)} = 1;
$targets{$mod . "\$(DLLEXT)"} = 1;
next unless defined $altnames{$mod};
foreach my $i (sort @{$altnames{$mod}})
{
$targets16{sprintf("%s\$(DLLEXT)",$i)} = 1;
}
}
foreach my $mod (sort keys %implib_dirs) { $targets{$mod} = 1; }
print NEWMAKE <<EOF;
\@MAKE_RULES\@
......@@ -204,7 +205,11 @@ foreach my $mod (sort keys %directories)
printf NEWMAKE "\t\$(RM) \$@ && \$(LN_S) %s\$(DLLEXT) \$@\n\n", $mod;
}
}
foreach my $mod (sort keys %implib_dirs)
{
printf NEWMAKE "%s: %s/%s\n", $mod, $implib_dirs{$mod}, $mod;
printf NEWMAKE "\t\$(RM) \$@ && \$(LN_S) %s/%s \$@\n\n", $implib_dirs{$mod}, $mod;
}
################################################################
# output the import libraries rules
......@@ -219,6 +224,11 @@ foreach my $mod (sort @implibs)
$def =~ s/\.(dll|drv)$//;
printf NEWMAKE " \\\n\tlib%s", $def;
}
print NEWMAKE "\n\nALL_IMPORT_LIBS = \\\n\t\$(IMPORT_LIBS:%=%.\$(IMPLIBEXT))";
foreach my $mod (sort keys %implib_dirs)
{
printf NEWMAKE " \\\n\t%s", $mod;
}
print NEWMAKE "\n\n";
foreach my $mod (sort @implibs)
......@@ -244,9 +254,8 @@ foreach my $mod (sort @implibs)
print NEWMAKE <<EOF;
\$(SUBDIRS): \$(IMPORT_LIBS:%=%.\$(IMPLIBEXT))
\$(SUBDIRS:%=%/__install__): \$(IMPORT_LIBS:%=%.\$(IMPLIBEXT))
\$(SUBDIRS:%=%/__crosstest__): \$(IMPORT_LIBS:%=%.a)
\$(BUILDSUBDIRS): \$(ALL_IMPORT_LIBS)
\$(INSTALLSUBDIRS:%=%/__install__): \$(ALL_IMPORT_LIBS)
EOF
......@@ -259,11 +268,16 @@ foreach my $mod (sort keys %directories)
{
printf NEWMAKE "%s/%s\$(DLLEXT): %s\n", $directories{$mod}, $mod, $directories{$mod};
}
foreach my $mod (sort keys %implib_dirs)
{
printf NEWMAKE "%s/%s: %s\n", $implib_dirs{$mod}, $mod, $implib_dirs{$mod};
}
################################################################
# makefile trailer
print NEWMAKE <<EOF;
# Rules for auto documentation
\$(SUBDIRS:%=%/__man__): dummy
......@@ -285,20 +299,20 @@ doc-sgml: \$(SUBDIRS:%=%/__doc_sgml__)
# Misc rules
install install-dev:: \$(IMPORT_LIBS:%=%.\$(IMPLIBEXT))
install install-dev:: \$(ALL_IMPORT_LIBS)
\$(MKINSTALLDIRS) \$(dlldir)
for f in \$(IMPORT_LIBS:%=%.\$(IMPLIBEXT)); do \$(INSTALL_DATA) \$\$f \$(dlldir)/\$\$f; done
for f in \$(ALL_IMPORT_LIBS); do \$(INSTALL_DATA) \$\$f \$(dlldir)/\$\$f; done
install install-lib:: \$(INSTALLSUBDIRS:%=%/__install__)
uninstall::
\$(RM) \$(IMPORT_LIBS:%=\$(dlldir)/%.\$(IMPLIBEXT))
\$(RM) \$(ALL_IMPORT_LIBS:%=\$(dlldir)/%)
-rmdir \$(dlldir)
implib: \$(IMPORT_LIBS:%=%.\$(IMPLIBEXT))
implib: \$(ALL_IMPORT_LIBS)
clean::
\$(RM) \$(IMPORT_LIBS:%=%.a) \$(IMPORT_LIBS:%=%.def) \$(SYMLINKS)
\$(RM) \$(ALL_IMPORT_LIBS) \$(SYMLINKS)
check test:: \$(BUILDSUBDIRS:%=%/__test__)
......
DEFS = -D__WINESRC__
DLLFLAGS = @DLLFLAGS@
TOPSRCDIR = @top_srcdir@
TOPOBJDIR = ../..
SRCDIR = @srcdir@
VPATH = @srcdir@
MODULE = libuuid.a
C_SRCS = \
uuid.c
all: $(MODULE)
@MAKE_RULES@
$(MODULE): $(OBJS) Makefile.in
$(RM) $@
$(AR) $@ $(OBJS)
$(RANLIB) $@
### Dependencies:
......@@ -7,20 +7,17 @@ MODULE = none
SUBDIRS = \
port \
unicode \
uuid \
wine \
wpp
INSTALLSUBDIRS = \
unicode \
uuid \
wine
SYMLINKS = \
libwine.$(LIBEXT) \
libwine_port.a \
libwine_unicode.$(LIBEXT) \
libwine_uuid.a \
libwpp.a
@MAKE_RULES@
......@@ -46,9 +43,6 @@ libwine_unicode.so libwine_unicode.so.1 libwine_unicode.dll libwine_unicode.a: u
libwine_port.a: port/libwine_port.a
$(RM) $@ && $(LN_S) port/$@ $@
libwine_uuid.a: uuid/libwine_uuid.a
$(RM) $@ && $(LN_S) uuid/$@ $@
libwpp.a: wpp/libwpp.a
$(RM) $@ && $(LN_S) wpp/$@ $@
......@@ -57,7 +51,6 @@ libwpp.a: wpp/libwpp.a
wine/libwine.$(LIBEXT): wine
unicode/libwine_unicode.$(LIBEXT): unicode
port/libwine_port.a: port
uuid/libwine_uuid.a: uuid
wpp/libwpp.a: wpp
wine wine/__install__ wine/__install-lib__: libwine_port.a
......
......@@ -29,7 +29,7 @@ $(MODULE).spec.c: $(RC_SRCS:.rc=.res) $(ALL_OBJS) $(WINEBUILD)
# Rules for .so main module
$(MODULE).so: $(MODULE).spec.o $(ALL_OBJS) Makefile.in
$(LDDLL) $(MODULE).spec.o $(ALL_OBJS) -o $@ $(ALL_LIBS) -lc
$(LDDLL) $(MODULE).spec.o $(ALL_OBJS) -o $@ -L$(DLLDIR) $(ALL_LIBS) -lc
$(BASEMODULE): $(WINEWRAPPER)
$(RM) $@ && $(LN_S) $(WINEWRAPPER) $@
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment