mshtml: Remove no longer needed set_profile.
[wine] / dlls / Makefile.in
index 72b2e36..794905a 100644 (file)
@@ -5,317 +5,15 @@ TOPOBJDIR = ..
 SRCDIR    = @srcdir@
 VPATH     = @srcdir@
 
-# special configure-dependent targets
-
-GLU32FILES = glu32
-OPENGLFILES = opengl32 wined3d
-QUARTZFILES = winequartz.drv
-XFILES = winex11.drv
-EXTRADIRS = @GLU32FILES@ @OPENGLFILES@ @QUARTZFILES@ @XFILES@
-
-# Subdir list
-
-BASEDIRS = \
-       acledit \
-       activeds \
-       advapi32 \
-       advpack \
-       amstream \
-       atl \
-       avicap32 \
-       avifil32 \
-       browseui \
-       cabinet \
-       capi2032 \
-       cards \
-       cfgmgr32 \
-       clusapi \
-       comcat \
-       comctl32 \
-       comdlg32 \
-       compstui \
-       credui \
-       crtdll \
-       crypt32 \
-       cryptdll \
-       cryptnet \
-       ctl3d32 \
-       d3d10 \
-       d3d8 \
-       d3d9 \
-       d3dim \
-       d3drm \
-       d3dx8 \
-       d3dxof \
-       dbghelp \
-       dciman32 \
-       ddraw \
-       ddrawex \
-       devenum \
-       dinput \
-       dinput8 \
-       dmband \
-       dmcompos \
-       dmime \
-       dmloader \
-       dmscript \
-       dmstyle \
-       dmsynth \
-       dmusic \
-       dmusic32 \
-       dnsapi \
-       dplay \
-       dplayx \
-       dpnaddr \
-       dpnet \
-       dpnhpast \
-       dsound \
-       dswave \
-       dwmapi \
-       dxdiagn \
-       gdi32 \
-       gdiplus \
-       gphoto2.ds \
-       hal \
-       hhctrl.ocx \
-       hid \
-       hlink \
-       hnetcfg \
-       iccvid \
-       icmp \
-       ifsmgr.vxd \
-       imaadp32.acm \
-       imagehlp \
-       imm32 \
-       infosoft \
-       inseng \
-       iphlpapi \
-       itss \
-       kernel32 \
-       localspl \
-       localui \
-       lz32 \
-       mapi32 \
-       mciavi32 \
-       mcicda \
-       mciseq \
-       mciwave \
-       midimap \
-       mlang \
-       mmdevldr.vxd \
-       monodebg.vxd \
-       mpr \
-       mprapi \
-       msacm32 \
-       msacm32.drv \
-       msadp32.acm \
-       mscms \
-       mscoree \
-       msdmo \
-       msftedit \
-       msg711.acm \
-       mshtml \
-       mshtml.tlb \
-       msi \
-       msimg32 \
-       msisys.ocx \
-       msnet32 \
-       msrle32 \
-       msvcrt \
-       msvcrt20 \
-       msvcrt40 \
-       msvcrtd \
-       msvfw32 \
-       msvidc32 \
-       mswsock \
-       msxml3 \
-       nddeapi \
-       netapi32 \
-       newdev \
-       ntdll \
-       ntdsapi \
-       ntoskrnl.exe \
-       ntprint \
-       objsel \
-       odbc32 \
-       odbccp32 \
-       ole32 \
-       oleacc \
-       oleaut32 \
-       olecli32 \
-       oledlg \
-       olepro32 \
-       olesvr32 \
-       pdh \
-       powrprof \
-       printui \
-       psapi \
-       pstorec \
-       qcap \
-       quartz \
-       query \
-       rasapi32 \
-       resutils \
-       riched20 \
-       riched32 \
-       rpcrt4 \
-       rsabase \
-       rsaenh \
-       sane.ds \
-       schannel \
-       secur32 \
-       security \
-       sensapi \
-       serialui \
-       setupapi \
-       sfc \
-       sfc_os \
-       shdoclc \
-       shdocvw \
-       shell32 \
-       shfolder \
-       shlwapi \
-       snmpapi \
-       spoolss \
-       stdole2.tlb \
-       stdole32.tlb \
-       sti \
-       svrapi \
-       sxs \
-       tapi32 \
-       twain_32 \
-       unicows \
-       url \
-       urlmon \
-       user32 \
-       userenv \
-       usp10 \
-       uxtheme \
-       vdhcp.vxd \
-       vdmdbg \
-       version \
-       vmm.vxd \
-       vnbt.vxd \
-       vnetbios.vxd \
-       vtdapi.vxd \
-       vwin32.vxd \
-       w32skrnl \
-       winealsa.drv \
-       wineaudioio.drv \
-       winecoreaudio.drv \
-       winedos \
-       wineesd.drv \
-       winejack.drv \
-       winejoystick.drv \
-       winemp3.acm \
-       winenas.drv \
-       wineoss.drv \
-       wineps.drv \
-       wing32 \
-       winhttp \
-       wininet \
-       winmm \
-       winnls32 \
-       winscard \
-       winspool.drv \
-       wintab32 \
-       wintrust \
-       wldap32 \
-       wnaspi32 \
-       wow32 \
-       ws2_32 \
-       wsock32 \
-       wtsapi32
-
-IMPLIBSUBDIRS = \
-       dxerr8 \
-       dxerr9 \
-       dxguid \
-       strmiids \
-       uuid \
-       winecrt0
-
-TESTSUBDIRS = \
-       advapi32/tests \
-       advpack/tests \
-       browseui/tests \
-       cabinet/tests \
-       comcat/tests \
-       comctl32/tests \
-       comdlg32/tests \
-       crypt32/tests \
-       d3d8/tests \
-       d3d9/tests \
-       d3drm/tests \
-       ddraw/tests \
-       dinput/tests \
-       dnsapi/tests \
-       dplayx/tests \
-       dsound/tests \
-       gdi32/tests \
-       gdiplus/tests \
-       hlink/tests \
-       infosoft/tests \
-       iphlpapi/tests \
-       itss/tests \
-       kernel32/tests \
-       localspl/tests \
-       localui/tests \
-       lz32/tests \
-       mapi32/tests \
-       mlang/tests \
-       msacm32/tests \
-       mscms/tests \
-       mshtml/tests \
-       msi/tests \
-       msvcrt/tests \
-       msvcrtd/tests \
-       msxml3/tests \
-       netapi32/tests \
-       ntdll/tests \
-       ntprint/tests \
-       odbccp32/tests \
-       ole32/tests \
-       oleaut32/tests \
-       pdh/tests \
-       psapi/tests \
-       quartz/tests \
-       riched20/tests \
-       rpcrt4/tests \
-       rsabase/tests \
-       rsaenh/tests \
-       schannel/tests \
-       secur32/tests \
-       serialui/tests \
-       setupapi/tests \
-       shdocvw/tests \
-       shell32/tests \
-       shlwapi/tests \
-       snmpapi/tests \
-       urlmon/tests \
-       user32/tests \
-       usp10/tests \
-       uxtheme/tests \
-       version/tests \
-       wininet/tests \
-       winmm/tests \
-       winspool.drv/tests \
-       wintrust/tests \
-       ws2_32/tests
-
-SUBDIRS = \
-       $(BASEDIRS) \
-       $(IMPLIBSUBDIRS) \
-       $(TESTSUBDIRS) \
-       glu32 \
-       opengl32 \
-       wined3d \
-       winequartz.drv \
-       winex11.drv
-
-BUILDSUBDIRS   = $(BASEDIRS) $(EXTRADIRS) $(TESTSUBDIRS)
-INSTALLSUBDIRS = $(BASEDIRS) $(EXTRADIRS) $(IMPLIBSUBDIRS)
-DOCSUBDIRS     = $(BASEDIRS) $(EXTRADIRS)
+INSTALLDIRS = $(DESTDIR)$(dlldir)
+
+DLLSUBDIRS     = @ALL_DLL_DIRS@
+IMPLIBSUBDIRS  = @ALL_IMPLIB_DIRS@
+TESTSUBDIRS    = @ALL_TEST_DIRS@
+SUBDIRS        = $(DLLSUBDIRS) $(IMPLIBSUBDIRS) $(TESTSUBDIRS)
+BUILDSUBDIRS   = $(DLLSUBDIRS) $(TESTSUBDIRS)
+INSTALLSUBDIRS = $(DLLSUBDIRS) $(IMPLIBSUBDIRS)
+DOCSUBDIRS     = $(DLLSUBDIRS)
 
 # 16-bit dlls
 
@@ -365,7 +63,9 @@ WIN16_FILES = \
        windebug.dll16 \
        wineps16.drv16 \
        wing.dll16 \
+       winhelp.exe16 \
        winnls.dll16 \
+       winoldap.mod16 \
        winsock.dll16 \
        wintab.dll16 \
        wprocs.dll16
@@ -393,7 +93,7 @@ dispdib.dll16 gdi.exe16 wing.dll16:
 imm.dll16:
        echo "imm32.dll" >$@
 
-comm.drv16 krnl386.exe16 stress.dll16 system.drv16 toolhelp.dll16 win87em.dll16 windebug.dll16:
+comm.drv16 krnl386.exe16 stress.dll16 system.drv16 toolhelp.dll16 win87em.dll16 windebug.dll16 winhelp.exe16 winoldap.mod16:
        echo "kernel32.dll" >$@
 
 lzexpand.dll16:
@@ -464,10 +164,13 @@ winsock.dll16:
 STATIC_IMPLIBEXT = $(IMPLIBEXT:def=def.a)
 
 IMPORT_SYMLINKS = \
-       libwinspool.$(IMPLIBEXT)
+       libd3dx9.$(IMPLIBEXT) \
+       libwinspool.$(IMPLIBEXT) \
+       libxinput.$(IMPLIBEXT)
 
 IMPORT_LIBS = \
        $(IMPORT_SYMLINKS) \
+       adsiid/libadsiid.a \
        dxerr8/libdxerr8.a \
        dxerr9/libdxerr9.a \
        dxguid/libdxguid.a \
@@ -488,15 +191,21 @@ IMPORT_LIBS = \
        comctl32/libcomctl32.$(IMPLIBEXT) \
        comdlg32/libcomdlg32.$(IMPLIBEXT) \
        compstui/libcompstui.$(IMPLIBEXT) \
+       credui/libcredui.$(IMPLIBEXT) \
        crtdll/libcrtdll.$(IMPLIBEXT) \
        crypt32/libcrypt32.$(IMPLIBEXT) \
        cryptdll/libcryptdll.$(IMPLIBEXT) \
+       cryptnet/libcryptnet.$(IMPLIBEXT) \
+       cryptui/libcryptui.$(IMPLIBEXT) \
        ctl3d32/libctl3d32.$(IMPLIBEXT) \
+       d3d10/libd3d10.$(IMPLIBEXT) \
+       d3d10core/libd3d10core.$(IMPLIBEXT) \
        d3d8/libd3d8.$(IMPLIBEXT) \
        d3d9/libd3d9.$(IMPLIBEXT) \
        d3dim/libd3dim.$(IMPLIBEXT) \
        d3drm/libd3drm.$(IMPLIBEXT) \
        d3dx8/libd3dx8.$(IMPLIBEXT) \
+       d3dx9_36/libd3dx9.$(IMPLIBEXT) \
        d3dxof/libd3dxof.$(IMPLIBEXT) \
        dbghelp/libdbghelp.$(IMPLIBEXT) \
        dciman32/libdciman32.$(IMPLIBEXT) \
@@ -511,14 +220,15 @@ IMPORT_LIBS = \
        dpnet/libdpnet.$(IMPLIBEXT) \
        dsound/libdsound.$(IMPLIBEXT) \
        dwmapi/libdwmapi.$(IMPLIBEXT) \
+       dxgi/libdxgi.$(IMPLIBEXT) \
        gdi32/libgdi32.$(IMPLIBEXT) \
        gdiplus/libgdiplus.$(IMPLIBEXT) \
        glu32/libglu32.$(IMPLIBEXT) \
        hid/libhid.$(IMPLIBEXT) \
        hlink/libhlink.$(IMPLIBEXT) \
-       icmp/libicmp.$(IMPLIBEXT) \
        imagehlp/libimagehlp.$(IMPLIBEXT) \
        imm32/libimm32.$(IMPLIBEXT) \
+       inetcomm/libinetcomm.$(IMPLIBEXT) \
        iphlpapi/libiphlpapi.$(IMPLIBEXT) \
        kernel32/libkernel32.$(IMPLIBEXT) \
        lz32/liblz32.$(IMPLIBEXT) \
@@ -532,6 +242,7 @@ IMPORT_LIBS = \
        mshtml/libmshtml.$(IMPLIBEXT) \
        msi/libmsi.$(IMPLIBEXT) \
        msimg32/libmsimg32.$(IMPLIBEXT) \
+       msvcr71/libmsvcr71.$(IMPLIBEXT) \
        msvcrt/libmsvcrt.$(IMPLIBEXT) \
        msvcrt20/libmsvcrt20.$(IMPLIBEXT) \
        msvcrt40/libmsvcrt40.$(IMPLIBEXT) \
@@ -573,6 +284,7 @@ IMPORT_LIBS = \
        shell32/libshell32.$(IMPLIBEXT) \
        shfolder/libshfolder.$(IMPLIBEXT) \
        shlwapi/libshlwapi.$(IMPLIBEXT) \
+       slc/libslc.$(IMPLIBEXT) \
        snmpapi/libsnmpapi.$(IMPLIBEXT) \
        spoolss/libspoolss.$(IMPLIBEXT) \
        sti/libsti.$(IMPLIBEXT) \
@@ -581,12 +293,14 @@ IMPORT_LIBS = \
        url/liburl.$(IMPLIBEXT) \
        urlmon/liburlmon.$(IMPLIBEXT) \
        user32/libuser32.$(IMPLIBEXT) \
+       userenv/libuserenv.$(IMPLIBEXT) \
        usp10/libusp10.$(IMPLIBEXT) \
        uxtheme/libuxtheme.$(IMPLIBEXT) \
        vdmdbg/libvdmdbg.$(IMPLIBEXT) \
        version/libversion.$(IMPLIBEXT) \
        wined3d/libwined3d.$(IMPLIBEXT) \
        winedos/libwinedos.$(IMPLIBEXT) \
+       winhttp/libwinhttp.$(IMPLIBEXT) \
        wininet/libwininet.$(IMPLIBEXT) \
        winmm/libwinmm.$(IMPLIBEXT) \
        winnls32/libwinnls32.$(IMPLIBEXT) \
@@ -599,398 +313,596 @@ IMPORT_LIBS = \
        wow32/libwow32.$(IMPLIBEXT) \
        ws2_32/libws2_32.$(IMPLIBEXT) \
        wsock32/libwsock32.$(IMPLIBEXT) \
-       wtsapi32/libwtsapi32.$(IMPLIBEXT)
+       wtsapi32/libwtsapi32.$(IMPLIBEXT) \
+       xinput1_3/libxinput.$(IMPLIBEXT)
+
+CROSS_IMPLIBS = \
+       libd3dx9.a \
+       libwinspool.a \
+       libxinput.a \
+       activeds/libactiveds.a \
+       advapi32/libadvapi32.a \
+       advpack/libadvpack.a \
+       atl/libatl.a \
+       avicap32/libavicap32.a \
+       avifil32/libavifil32.a \
+       cabinet/libcabinet.a \
+       capi2032/libcapi2032.a \
+       cards/libcards.a \
+       cfgmgr32/libcfgmgr32.a \
+       clusapi/libclusapi.a \
+       comctl32/libcomctl32.a \
+       comdlg32/libcomdlg32.a \
+       compstui/libcompstui.a \
+       credui/libcredui.a \
+       crtdll/libcrtdll.a \
+       crypt32/libcrypt32.a \
+       cryptdll/libcryptdll.a \
+       cryptnet/libcryptnet.a \
+       cryptui/libcryptui.a \
+       ctl3d32/libctl3d32.a \
+       d3d10/libd3d10.a \
+       d3d10core/libd3d10core.a \
+       d3d8/libd3d8.a \
+       d3d9/libd3d9.a \
+       d3dim/libd3dim.a \
+       d3drm/libd3drm.a \
+       d3dx8/libd3dx8.a \
+       d3dx9_36/libd3dx9.a \
+       d3dxof/libd3dxof.a \
+       dbghelp/libdbghelp.a \
+       dciman32/libdciman32.a \
+       ddraw/libddraw.a \
+       dinput8/libdinput8.a \
+       dmusic32/libdmusic32.a \
+       dnsapi/libdnsapi.a \
+       dplay/libdplay.a \
+       dplayx/libdplayx.a \
+       dpnet/libdpnet.a \
+       dsound/libdsound.a \
+       dwmapi/libdwmapi.a \
+       dxgi/libdxgi.a \
+       gdi32/libgdi32.a \
+       gdiplus/libgdiplus.a \
+       glu32/libglu32.a \
+       hid/libhid.a \
+       hlink/libhlink.a \
+       imagehlp/libimagehlp.a \
+       imm32/libimm32.a \
+       inetcomm/libinetcomm.a \
+       iphlpapi/libiphlpapi.a \
+       kernel32/libkernel32.a \
+       lz32/liblz32.a \
+       mapi32/libmapi32.a \
+       mlang/libmlang.a \
+       mpr/libmpr.a \
+       mprapi/libmprapi.a \
+       msacm32/libmsacm32.a \
+       mscms/libmscms.a \
+       msdmo/libmsdmo.a \
+       mshtml/libmshtml.a \
+       msi/libmsi.a \
+       msimg32/libmsimg32.a \
+       msvcr71/libmsvcr71.a \
+       msvcrt/libmsvcrt.a \
+       msvcrt20/libmsvcrt20.a \
+       msvcrt40/libmsvcrt40.a \
+       msvcrtd/libmsvcrtd.a \
+       msvfw32/libmsvfw32.a \
+       mswsock/libmswsock.a \
+       nddeapi/libnddeapi.a \
+       netapi32/libnetapi32.a \
+       newdev/libnewdev.a \
+       ntdll/libntdll.a \
+       ntdsapi/libntdsapi.a \
+       ntoskrnl.exe/libntoskrnl.exe.a \
+       odbc32/libodbc32.a \
+       odbccp32/libodbccp32.a \
+       ole32/libole32.a \
+       oleacc/liboleacc.a \
+       oleaut32/liboleaut32.a \
+       olecli32/libolecli32.a \
+       oledlg/liboledlg.a \
+       olepro32/libolepro32.a \
+       olesvr32/libolesvr32.a \
+       opengl32/libopengl32.a \
+       pdh/libpdh.a \
+       powrprof/libpowrprof.a \
+       psapi/libpsapi.a \
+       quartz/libquartz.a \
+       rasapi32/librasapi32.a \
+       resutils/libresutils.a \
+       riched20/libriched20.a \
+       rpcrt4/librpcrt4.a \
+       rsaenh/librsaenh.a \
+       secur32/libsecur32.a \
+       sensapi/libsensapi.a \
+       serialui/libserialui.a \
+       setupapi/libsetupapi.a \
+       sfc/libsfc.a \
+       sfc_os/libsfc_os.a \
+       shdocvw/libshdocvw.a \
+       shell32/libshell32.a \
+       shfolder/libshfolder.a \
+       shlwapi/libshlwapi.a \
+       slc/libslc.a \
+       snmpapi/libsnmpapi.a \
+       spoolss/libspoolss.a \
+       sti/libsti.a \
+       tapi32/libtapi32.a \
+       unicows/libunicows.a \
+       url/liburl.a \
+       urlmon/liburlmon.a \
+       user32/libuser32.a \
+       userenv/libuserenv.a \
+       usp10/libusp10.a \
+       uxtheme/libuxtheme.a \
+       vdmdbg/libvdmdbg.a \
+       version/libversion.a \
+       wined3d/libwined3d.a \
+       winedos/libwinedos.a \
+       winhttp/libwinhttp.a \
+       wininet/libwininet.a \
+       winmm/libwinmm.a \
+       winnls32/libwinnls32.a \
+       winscard/libwinscard.a \
+       winspool.drv/libwinspool.a \
+       wintab32/libwintab32.a \
+       wintrust/libwintrust.a \
+       wldap32/libwldap32.a \
+       wnaspi32/libwnaspi32.a \
+       wow32/libwow32.a \
+       ws2_32/libws2_32.a \
+       wsock32/libwsock32.a \
+       wtsapi32/libwtsapi32.a \
+       xinput1_3/libxinput.a
+
+$(TESTSUBDIRS:%=%/__crosstest__): $(CROSS_IMPLIBS)
 
 implib: $(IMPORT_LIBS)
 
-.PHONY: implib
+testsubdirs: $(TESTSUBDIRS)
+
+.PHONY: implib testsubdirs
+
+activeds/libactiveds.def activeds/libactiveds.a: activeds/activeds.spec $(WINEBUILD)
+       @cd activeds && $(MAKE) `basename $@`
+
+advapi32/libadvapi32.def advapi32/libadvapi32.a: advapi32/advapi32.spec $(WINEBUILD)
+       @cd advapi32 && $(MAKE) `basename $@`
+
+advpack/libadvpack.def advpack/libadvpack.a: advpack/advpack.spec $(WINEBUILD)
+       @cd advpack && $(MAKE) `basename $@`
+
+atl/libatl.def atl/libatl.a: atl/atl.spec $(WINEBUILD)
+       @cd atl && $(MAKE) `basename $@`
 
-activeds/libactiveds.$(IMPLIBEXT): activeds/activeds.spec $(WINEBUILD)
-       @cd activeds && $(MAKE) libactiveds.$(IMPLIBEXT)
+avicap32/libavicap32.def avicap32/libavicap32.a: avicap32/avicap32.spec $(WINEBUILD)
+       @cd avicap32 && $(MAKE) `basename $@`
 
-advapi32/libadvapi32.$(IMPLIBEXT): advapi32/advapi32.spec $(WINEBUILD)
-       @cd advapi32 && $(MAKE) libadvapi32.$(IMPLIBEXT)
+avifil32/libavifil32.def avifil32/libavifil32.a: avifil32/avifil32.spec $(WINEBUILD)
+       @cd avifil32 && $(MAKE) `basename $@`
 
-advpack/libadvpack.$(IMPLIBEXT): advpack/advpack.spec $(WINEBUILD)
-       @cd advpack && $(MAKE) libadvpack.$(IMPLIBEXT)
+cabinet/libcabinet.def cabinet/libcabinet.a: cabinet/cabinet.spec $(WINEBUILD)
+       @cd cabinet && $(MAKE) `basename $@`
 
-atl/libatl.$(IMPLIBEXT): atl/atl.spec $(WINEBUILD)
-       @cd atl && $(MAKE) libatl.$(IMPLIBEXT)
+capi2032/libcapi2032.def capi2032/libcapi2032.a: capi2032/capi2032.spec $(WINEBUILD)
+       @cd capi2032 && $(MAKE) `basename $@`
 
-avicap32/libavicap32.$(IMPLIBEXT): avicap32/avicap32.spec $(WINEBUILD)
-       @cd avicap32 && $(MAKE) libavicap32.$(IMPLIBEXT)
+cards/libcards.def cards/libcards.a: cards/cards.spec $(WINEBUILD)
+       @cd cards && $(MAKE) `basename $@`
 
-avifil32/libavifil32.$(IMPLIBEXT): avifil32/avifil32.spec $(WINEBUILD)
-       @cd avifil32 && $(MAKE) libavifil32.$(IMPLIBEXT)
+cfgmgr32/libcfgmgr32.def cfgmgr32/libcfgmgr32.a: cfgmgr32/cfgmgr32.spec $(WINEBUILD)
+       @cd cfgmgr32 && $(MAKE) `basename $@`
 
-cabinet/libcabinet.$(IMPLIBEXT): cabinet/cabinet.spec $(WINEBUILD)
-       @cd cabinet && $(MAKE) libcabinet.$(IMPLIBEXT)
+clusapi/libclusapi.def clusapi/libclusapi.a: clusapi/clusapi.spec $(WINEBUILD)
+       @cd clusapi && $(MAKE) `basename $@`
 
-capi2032/libcapi2032.$(IMPLIBEXT): capi2032/capi2032.spec $(WINEBUILD)
-       @cd capi2032 && $(MAKE) libcapi2032.$(IMPLIBEXT)
+comctl32/libcomctl32.def comctl32/libcomctl32.a: comctl32/comctl32.spec $(WINEBUILD)
+       @cd comctl32 && $(MAKE) `basename $@`
 
-cards/libcards.$(IMPLIBEXT): cards/cards.spec $(WINEBUILD)
-       @cd cards && $(MAKE) libcards.$(IMPLIBEXT)
+comdlg32/libcomdlg32.def comdlg32/libcomdlg32.a: comdlg32/comdlg32.spec $(WINEBUILD)
+       @cd comdlg32 && $(MAKE) `basename $@`
 
-cfgmgr32/libcfgmgr32.$(IMPLIBEXT): cfgmgr32/cfgmgr32.spec $(WINEBUILD)
-       @cd cfgmgr32 && $(MAKE) libcfgmgr32.$(IMPLIBEXT)
+compstui/libcompstui.def compstui/libcompstui.a: compstui/compstui.spec $(WINEBUILD)
+       @cd compstui && $(MAKE) `basename $@`
 
-clusapi/libclusapi.$(IMPLIBEXT): clusapi/clusapi.spec $(WINEBUILD)
-       @cd clusapi && $(MAKE) libclusapi.$(IMPLIBEXT)
+credui/libcredui.def credui/libcredui.a: credui/credui.spec $(WINEBUILD)
+       @cd credui && $(MAKE) `basename $@`
 
-comctl32/libcomctl32.$(IMPLIBEXT): comctl32/comctl32.spec $(WINEBUILD)
-       @cd comctl32 && $(MAKE) libcomctl32.$(IMPLIBEXT)
+crtdll/libcrtdll.def crtdll/libcrtdll.a: crtdll/crtdll.spec $(WINEBUILD)
+       @cd crtdll && $(MAKE) `basename $@`
 
-comdlg32/libcomdlg32.$(IMPLIBEXT): comdlg32/comdlg32.spec $(WINEBUILD)
-       @cd comdlg32 && $(MAKE) libcomdlg32.$(IMPLIBEXT)
+crypt32/libcrypt32.def crypt32/libcrypt32.a: crypt32/crypt32.spec $(WINEBUILD)
+       @cd crypt32 && $(MAKE) `basename $@`
 
-compstui/libcompstui.$(IMPLIBEXT): compstui/compstui.spec $(WINEBUILD)
-       @cd compstui && $(MAKE) libcompstui.$(IMPLIBEXT)
+cryptdll/libcryptdll.def cryptdll/libcryptdll.a: cryptdll/cryptdll.spec $(WINEBUILD)
+       @cd cryptdll && $(MAKE) `basename $@`
 
-crtdll/libcrtdll.$(IMPLIBEXT): crtdll/crtdll.spec $(WINEBUILD)
-       @cd crtdll && $(MAKE) libcrtdll.$(IMPLIBEXT)
+cryptnet/libcryptnet.def cryptnet/libcryptnet.a: cryptnet/cryptnet.spec $(WINEBUILD)
+       @cd cryptnet && $(MAKE) `basename $@`
 
-crypt32/libcrypt32.$(IMPLIBEXT): crypt32/crypt32.spec $(WINEBUILD)
-       @cd crypt32 && $(MAKE) libcrypt32.$(IMPLIBEXT)
+cryptui/libcryptui.def cryptui/libcryptui.a: cryptui/cryptui.spec $(WINEBUILD)
+       @cd cryptui && $(MAKE) `basename $@`
 
-cryptdll/libcryptdll.$(IMPLIBEXT): cryptdll/cryptdll.spec $(WINEBUILD)
-       @cd cryptdll && $(MAKE) libcryptdll.$(IMPLIBEXT)
+ctl3d32/libctl3d32.def ctl3d32/libctl3d32.a: ctl3d32/ctl3d32.spec $(WINEBUILD)
+       @cd ctl3d32 && $(MAKE) `basename $@`
 
-ctl3d32/libctl3d32.$(IMPLIBEXT): ctl3d32/ctl3d32.spec $(WINEBUILD)
-       @cd ctl3d32 && $(MAKE) libctl3d32.$(IMPLIBEXT)
+d3d10/libd3d10.def d3d10/libd3d10.a: d3d10/d3d10.spec $(WINEBUILD)
+       @cd d3d10 && $(MAKE) `basename $@`
 
-d3d8/libd3d8.$(IMPLIBEXT): d3d8/d3d8.spec $(WINEBUILD)
-       @cd d3d8 && $(MAKE) libd3d8.$(IMPLIBEXT)
+d3d10core/libd3d10core.def d3d10core/libd3d10core.a: d3d10core/d3d10core.spec $(WINEBUILD)
+       @cd d3d10core && $(MAKE) `basename $@`
 
-d3d9/libd3d9.$(IMPLIBEXT): d3d9/d3d9.spec $(WINEBUILD)
-       @cd d3d9 && $(MAKE) libd3d9.$(IMPLIBEXT)
+d3d8/libd3d8.def d3d8/libd3d8.a: d3d8/d3d8.spec $(WINEBUILD)
+       @cd d3d8 && $(MAKE) `basename $@`
 
-d3dim/libd3dim.$(IMPLIBEXT): d3dim/d3dim.spec $(WINEBUILD)
-       @cd d3dim && $(MAKE) libd3dim.$(IMPLIBEXT)
+d3d9/libd3d9.def d3d9/libd3d9.a: d3d9/d3d9.spec $(WINEBUILD)
+       @cd d3d9 && $(MAKE) `basename $@`
 
-d3drm/libd3drm.$(IMPLIBEXT): d3drm/d3drm.spec $(WINEBUILD)
-       @cd d3drm && $(MAKE) libd3drm.$(IMPLIBEXT)
+d3dim/libd3dim.def d3dim/libd3dim.a: d3dim/d3dim.spec $(WINEBUILD)
+       @cd d3dim && $(MAKE) `basename $@`
 
-d3dx8/libd3dx8.$(IMPLIBEXT): d3dx8/d3dx8.spec $(WINEBUILD)
-       @cd d3dx8 && $(MAKE) libd3dx8.$(IMPLIBEXT)
+d3drm/libd3drm.def d3drm/libd3drm.a: d3drm/d3drm.spec $(WINEBUILD)
+       @cd d3drm && $(MAKE) `basename $@`
 
-d3dxof/libd3dxof.$(IMPLIBEXT): d3dxof/d3dxof.spec $(WINEBUILD)
-       @cd d3dxof && $(MAKE) libd3dxof.$(IMPLIBEXT)
+d3dx8/libd3dx8.def d3dx8/libd3dx8.a: d3dx8/d3dx8.spec $(WINEBUILD)
+       @cd d3dx8 && $(MAKE) `basename $@`
 
-dbghelp/libdbghelp.$(IMPLIBEXT): dbghelp/dbghelp.spec $(WINEBUILD)
-       @cd dbghelp && $(MAKE) libdbghelp.$(IMPLIBEXT)
+d3dx9_36/libd3dx9.def d3dx9_36/libd3dx9.a: d3dx9_36/d3dx9_36.spec $(WINEBUILD)
+       @cd d3dx9_36 && $(MAKE) `basename $@`
 
-dciman32/libdciman32.$(IMPLIBEXT): dciman32/dciman32.spec $(WINEBUILD)
-       @cd dciman32 && $(MAKE) libdciman32.$(IMPLIBEXT)
+d3dxof/libd3dxof.def d3dxof/libd3dxof.a: d3dxof/d3dxof.spec $(WINEBUILD)
+       @cd d3dxof && $(MAKE) `basename $@`
 
-ddraw/libddraw.$(IMPLIBEXT): ddraw/ddraw.spec $(WINEBUILD)
-       @cd ddraw && $(MAKE) libddraw.$(IMPLIBEXT)
+dbghelp/libdbghelp.def dbghelp/libdbghelp.a: dbghelp/dbghelp.spec $(WINEBUILD)
+       @cd dbghelp && $(MAKE) `basename $@`
 
-dinput/libdinput.$(IMPLIBEXT): dinput/dinput.spec $(WINEBUILD)
-       @cd dinput && $(MAKE) libdinput.$(IMPLIBEXT)
+dciman32/libdciman32.def dciman32/libdciman32.a: dciman32/dciman32.spec $(WINEBUILD)
+       @cd dciman32 && $(MAKE) `basename $@`
+
+ddraw/libddraw.def ddraw/libddraw.a: ddraw/ddraw.spec $(WINEBUILD)
+       @cd ddraw && $(MAKE) `basename $@`
+
+dinput/libdinput.def: dinput/dinput.spec $(WINEBUILD)
+       @cd dinput && $(MAKE) libdinput.def
 
 dinput/libdinput.$(STATIC_IMPLIBEXT): dummy
        @cd dinput && $(MAKE) libdinput.$(STATIC_IMPLIBEXT)
 
-dinput8/libdinput8.$(IMPLIBEXT): dinput8/dinput8.spec $(WINEBUILD)
-       @cd dinput8 && $(MAKE) libdinput8.$(IMPLIBEXT)
+dinput8/libdinput8.def dinput8/libdinput8.a: dinput8/dinput8.spec $(WINEBUILD)
+       @cd dinput8 && $(MAKE) `basename $@`
+
+dmusic32/libdmusic32.def dmusic32/libdmusic32.a: dmusic32/dmusic32.spec $(WINEBUILD)
+       @cd dmusic32 && $(MAKE) `basename $@`
+
+dnsapi/libdnsapi.def dnsapi/libdnsapi.a: dnsapi/dnsapi.spec $(WINEBUILD)
+       @cd dnsapi && $(MAKE) `basename $@`
+
+dplay/libdplay.def dplay/libdplay.a: dplay/dplay.spec $(WINEBUILD)
+       @cd dplay && $(MAKE) `basename $@`
 
-dmusic32/libdmusic32.$(IMPLIBEXT): dmusic32/dmusic32.spec $(WINEBUILD)
-       @cd dmusic32 && $(MAKE) libdmusic32.$(IMPLIBEXT)
+dplayx/libdplayx.def dplayx/libdplayx.a: dplayx/dplayx.spec $(WINEBUILD)
+       @cd dplayx && $(MAKE) `basename $@`
 
-dnsapi/libdnsapi.$(IMPLIBEXT): dnsapi/dnsapi.spec $(WINEBUILD)
-       @cd dnsapi && $(MAKE) libdnsapi.$(IMPLIBEXT)
+dpnet/libdpnet.def dpnet/libdpnet.a: dpnet/dpnet.spec $(WINEBUILD)
+       @cd dpnet && $(MAKE) `basename $@`
 
-dplay/libdplay.$(IMPLIBEXT): dplay/dplay.spec $(WINEBUILD)
-       @cd dplay && $(MAKE) libdplay.$(IMPLIBEXT)
+dsound/libdsound.def dsound/libdsound.a: dsound/dsound.spec $(WINEBUILD)
+       @cd dsound && $(MAKE) `basename $@`
 
-dplayx/libdplayx.$(IMPLIBEXT): dplayx/dplayx.spec $(WINEBUILD)
-       @cd dplayx && $(MAKE) libdplayx.$(IMPLIBEXT)
+dwmapi/libdwmapi.def dwmapi/libdwmapi.a: dwmapi/dwmapi.spec $(WINEBUILD)
+       @cd dwmapi && $(MAKE) `basename $@`
 
-dpnet/libdpnet.$(IMPLIBEXT): dpnet/dpnet.spec $(WINEBUILD)
-       @cd dpnet && $(MAKE) libdpnet.$(IMPLIBEXT)
+dxgi/libdxgi.def dxgi/libdxgi.a: dxgi/dxgi.spec $(WINEBUILD)
+       @cd dxgi && $(MAKE) `basename $@`
 
-dsound/libdsound.$(IMPLIBEXT): dsound/dsound.spec $(WINEBUILD)
-       @cd dsound && $(MAKE) libdsound.$(IMPLIBEXT)
+gdi32/libgdi32.def gdi32/libgdi32.a: gdi32/gdi32.spec $(WINEBUILD)
+       @cd gdi32 && $(MAKE) `basename $@`
 
-dwmapi/libdwmapi.$(IMPLIBEXT): dwmapi/dwmapi.spec $(WINEBUILD)
-       @cd dwmapi && $(MAKE) libdwmapi.$(IMPLIBEXT)
+gdiplus/libgdiplus.def gdiplus/libgdiplus.a: gdiplus/gdiplus.spec $(WINEBUILD)
+       @cd gdiplus && $(MAKE) `basename $@`
 
-gdi32/libgdi32.$(IMPLIBEXT): gdi32/gdi32.spec $(WINEBUILD)
-       @cd gdi32 && $(MAKE) libgdi32.$(IMPLIBEXT)
+glu32/libglu32.def glu32/libglu32.a: glu32/glu32.spec $(WINEBUILD)
+       @cd glu32 && $(MAKE) `basename $@`
 
-gdiplus/libgdiplus.$(IMPLIBEXT): gdiplus/gdiplus.spec $(WINEBUILD)
-       @cd gdiplus && $(MAKE) libgdiplus.$(IMPLIBEXT)
+hid/libhid.def hid/libhid.a: hid/hid.spec $(WINEBUILD)
+       @cd hid && $(MAKE) `basename $@`
 
-glu32/libglu32.$(IMPLIBEXT): glu32/glu32.spec $(WINEBUILD)
-       @cd glu32 && $(MAKE) libglu32.$(IMPLIBEXT)
+hlink/libhlink.def hlink/libhlink.a: hlink/hlink.spec $(WINEBUILD)
+       @cd hlink && $(MAKE) `basename $@`
 
-hid/libhid.$(IMPLIBEXT): hid/hid.spec $(WINEBUILD)
-       @cd hid && $(MAKE) libhid.$(IMPLIBEXT)
+imagehlp/libimagehlp.def imagehlp/libimagehlp.a: imagehlp/imagehlp.spec $(WINEBUILD)
+       @cd imagehlp && $(MAKE) `basename $@`
 
-hlink/libhlink.$(IMPLIBEXT): hlink/hlink.spec $(WINEBUILD)
-       @cd hlink && $(MAKE) libhlink.$(IMPLIBEXT)
+imm32/libimm32.def imm32/libimm32.a: imm32/imm32.spec $(WINEBUILD)
+       @cd imm32 && $(MAKE) `basename $@`
 
-icmp/libicmp.$(IMPLIBEXT): icmp/icmp.spec $(WINEBUILD)
-       @cd icmp && $(MAKE) libicmp.$(IMPLIBEXT)
+inetcomm/libinetcomm.def inetcomm/libinetcomm.a: inetcomm/inetcomm.spec $(WINEBUILD)
+       @cd inetcomm && $(MAKE) `basename $@`
 
-imagehlp/libimagehlp.$(IMPLIBEXT): imagehlp/imagehlp.spec $(WINEBUILD)
-       @cd imagehlp && $(MAKE) libimagehlp.$(IMPLIBEXT)
+iphlpapi/libiphlpapi.def iphlpapi/libiphlpapi.a: iphlpapi/iphlpapi.spec $(WINEBUILD)
+       @cd iphlpapi && $(MAKE) `basename $@`
 
-imm32/libimm32.$(IMPLIBEXT): imm32/imm32.spec $(WINEBUILD)
-       @cd imm32 && $(MAKE) libimm32.$(IMPLIBEXT)
+kernel32/libkernel32.def kernel32/libkernel32.a: kernel32/kernel32.spec $(WINEBUILD)
+       @cd kernel32 && $(MAKE) `basename $@`
 
-iphlpapi/libiphlpapi.$(IMPLIBEXT): iphlpapi/iphlpapi.spec $(WINEBUILD)
-       @cd iphlpapi && $(MAKE) libiphlpapi.$(IMPLIBEXT)
+lz32/liblz32.def lz32/liblz32.a: lz32/lz32.spec $(WINEBUILD)
+       @cd lz32 && $(MAKE) `basename $@`
 
-kernel32/libkernel32.$(IMPLIBEXT): kernel32/kernel32.spec $(WINEBUILD)
-       @cd kernel32 && $(MAKE) libkernel32.$(IMPLIBEXT)
+mapi32/libmapi32.def mapi32/libmapi32.a: mapi32/mapi32.spec $(WINEBUILD)
+       @cd mapi32 && $(MAKE) `basename $@`
 
-lz32/liblz32.$(IMPLIBEXT): lz32/lz32.spec $(WINEBUILD)
-       @cd lz32 && $(MAKE) liblz32.$(IMPLIBEXT)
+mlang/libmlang.def mlang/libmlang.a: mlang/mlang.spec $(WINEBUILD)
+       @cd mlang && $(MAKE) `basename $@`
 
-mapi32/libmapi32.$(IMPLIBEXT): mapi32/mapi32.spec $(WINEBUILD)
-       @cd mapi32 && $(MAKE) libmapi32.$(IMPLIBEXT)
+mpr/libmpr.def mpr/libmpr.a: mpr/mpr.spec $(WINEBUILD)
+       @cd mpr && $(MAKE) `basename $@`
 
-mlang/libmlang.$(IMPLIBEXT): mlang/mlang.spec $(WINEBUILD)
-       @cd mlang && $(MAKE) libmlang.$(IMPLIBEXT)
+mprapi/libmprapi.def mprapi/libmprapi.a: mprapi/mprapi.spec $(WINEBUILD)
+       @cd mprapi && $(MAKE) `basename $@`
 
-mpr/libmpr.$(IMPLIBEXT): mpr/mpr.spec $(WINEBUILD)
-       @cd mpr && $(MAKE) libmpr.$(IMPLIBEXT)
+msacm32/libmsacm32.def msacm32/libmsacm32.a: msacm32/msacm32.spec $(WINEBUILD)
+       @cd msacm32 && $(MAKE) `basename $@`
 
-mprapi/libmprapi.$(IMPLIBEXT): mprapi/mprapi.spec $(WINEBUILD)
-       @cd mprapi && $(MAKE) libmprapi.$(IMPLIBEXT)
+mscms/libmscms.def mscms/libmscms.a: mscms/mscms.spec $(WINEBUILD)
+       @cd mscms && $(MAKE) `basename $@`
 
-msacm32/libmsacm32.$(IMPLIBEXT): msacm32/msacm32.spec $(WINEBUILD)
-       @cd msacm32 && $(MAKE) libmsacm32.$(IMPLIBEXT)
+msdmo/libmsdmo.def msdmo/libmsdmo.a: msdmo/msdmo.spec $(WINEBUILD)
+       @cd msdmo && $(MAKE) `basename $@`
 
-mscms/libmscms.$(IMPLIBEXT): mscms/mscms.spec $(WINEBUILD)
-       @cd mscms && $(MAKE) libmscms.$(IMPLIBEXT)
+mshtml/libmshtml.def mshtml/libmshtml.a: mshtml/mshtml.spec $(WINEBUILD)
+       @cd mshtml && $(MAKE) `basename $@`
 
-msdmo/libmsdmo.$(IMPLIBEXT): msdmo/msdmo.spec $(WINEBUILD)
-       @cd msdmo && $(MAKE) libmsdmo.$(IMPLIBEXT)
+msi/libmsi.def msi/libmsi.a: msi/msi.spec $(WINEBUILD)
+       @cd msi && $(MAKE) `basename $@`
 
-mshtml/libmshtml.$(IMPLIBEXT): mshtml/mshtml.spec $(WINEBUILD)
-       @cd mshtml && $(MAKE) libmshtml.$(IMPLIBEXT)
+msimg32/libmsimg32.def msimg32/libmsimg32.a: msimg32/msimg32.spec $(WINEBUILD)
+       @cd msimg32 && $(MAKE) `basename $@`
 
-msi/libmsi.$(IMPLIBEXT): msi/msi.spec $(WINEBUILD)
-       @cd msi && $(MAKE) libmsi.$(IMPLIBEXT)
+msvcr71/libmsvcr71.def msvcr71/libmsvcr71.a: msvcr71/msvcr71.spec $(WINEBUILD)
+       @cd msvcr71 && $(MAKE) `basename $@`
 
-msimg32/libmsimg32.$(IMPLIBEXT): msimg32/msimg32.spec $(WINEBUILD)
-       @cd msimg32 && $(MAKE) libmsimg32.$(IMPLIBEXT)
+msvcrt/libmsvcrt.def msvcrt/libmsvcrt.a: msvcrt/msvcrt.spec $(WINEBUILD)
+       @cd msvcrt && $(MAKE) `basename $@`
 
-msvcrt/libmsvcrt.$(IMPLIBEXT): msvcrt/msvcrt.spec $(WINEBUILD)
-       @cd msvcrt && $(MAKE) libmsvcrt.$(IMPLIBEXT)
+msvcrt20/libmsvcrt20.def msvcrt20/libmsvcrt20.a: msvcrt20/msvcrt20.spec $(WINEBUILD)
+       @cd msvcrt20 && $(MAKE) `basename $@`
 
-msvcrt20/libmsvcrt20.$(IMPLIBEXT): msvcrt20/msvcrt20.spec $(WINEBUILD)
-       @cd msvcrt20 && $(MAKE) libmsvcrt20.$(IMPLIBEXT)
+msvcrt40/libmsvcrt40.def msvcrt40/libmsvcrt40.a: msvcrt40/msvcrt40.spec $(WINEBUILD)
+       @cd msvcrt40 && $(MAKE) `basename $@`
 
-msvcrt40/libmsvcrt40.$(IMPLIBEXT): msvcrt40/msvcrt40.spec $(WINEBUILD)
-       @cd msvcrt40 && $(MAKE) libmsvcrt40.$(IMPLIBEXT)
+msvcrtd/libmsvcrtd.def msvcrtd/libmsvcrtd.a: msvcrtd/msvcrtd.spec $(WINEBUILD)
+       @cd msvcrtd && $(MAKE) `basename $@`
 
-msvcrtd/libmsvcrtd.$(IMPLIBEXT): msvcrtd/msvcrtd.spec $(WINEBUILD)
-       @cd msvcrtd && $(MAKE) libmsvcrtd.$(IMPLIBEXT)
+msvfw32/libmsvfw32.def msvfw32/libmsvfw32.a: msvfw32/msvfw32.spec $(WINEBUILD)
+       @cd msvfw32 && $(MAKE) `basename $@`
 
-msvfw32/libmsvfw32.$(IMPLIBEXT): msvfw32/msvfw32.spec $(WINEBUILD)
-       @cd msvfw32 && $(MAKE) libmsvfw32.$(IMPLIBEXT)
+mswsock/libmswsock.def mswsock/libmswsock.a: mswsock/mswsock.spec $(WINEBUILD)
+       @cd mswsock && $(MAKE) `basename $@`
 
-mswsock/libmswsock.$(IMPLIBEXT): mswsock/mswsock.spec $(WINEBUILD)
-       @cd mswsock && $(MAKE) libmswsock.$(IMPLIBEXT)
+nddeapi/libnddeapi.def nddeapi/libnddeapi.a: nddeapi/nddeapi.spec $(WINEBUILD)
+       @cd nddeapi && $(MAKE) `basename $@`
 
-nddeapi/libnddeapi.$(IMPLIBEXT): nddeapi/nddeapi.spec $(WINEBUILD)
-       @cd nddeapi && $(MAKE) libnddeapi.$(IMPLIBEXT)
+netapi32/libnetapi32.def netapi32/libnetapi32.a: netapi32/netapi32.spec $(WINEBUILD)
+       @cd netapi32 && $(MAKE) `basename $@`
 
-netapi32/libnetapi32.$(IMPLIBEXT): netapi32/netapi32.spec $(WINEBUILD)
-       @cd netapi32 && $(MAKE) libnetapi32.$(IMPLIBEXT)
+newdev/libnewdev.def newdev/libnewdev.a: newdev/newdev.spec $(WINEBUILD)
+       @cd newdev && $(MAKE) `basename $@`
 
-newdev/libnewdev.$(IMPLIBEXT): newdev/newdev.spec $(WINEBUILD)
-       @cd newdev && $(MAKE) libnewdev.$(IMPLIBEXT)
+ntdll/libntdll.def ntdll/libntdll.a: ntdll/ntdll.spec $(WINEBUILD)
+       @cd ntdll && $(MAKE) `basename $@`
 
-ntdll/libntdll.$(IMPLIBEXT): ntdll/ntdll.spec $(WINEBUILD)
-       @cd ntdll && $(MAKE) libntdll.$(IMPLIBEXT)
+ntdsapi/libntdsapi.def ntdsapi/libntdsapi.a: ntdsapi/ntdsapi.spec $(WINEBUILD)
+       @cd ntdsapi && $(MAKE) `basename $@`
 
-ntdsapi/libntdsapi.$(IMPLIBEXT): ntdsapi/ntdsapi.spec $(WINEBUILD)
-       @cd ntdsapi && $(MAKE) libntdsapi.$(IMPLIBEXT)
+ntoskrnl.exe/libntoskrnl.exe.def ntoskrnl.exe/libntoskrnl.exe.a: ntoskrnl.exe/ntoskrnl.exe.spec $(WINEBUILD)
+       @cd ntoskrnl.exe && $(MAKE) `basename $@`
 
-ntoskrnl.exe/libntoskrnl.exe.$(IMPLIBEXT): ntoskrnl.exe/ntoskrnl.exe.spec $(WINEBUILD)
-       @cd ntoskrnl.exe && $(MAKE) libntoskrnl.exe.$(IMPLIBEXT)
+odbc32/libodbc32.def odbc32/libodbc32.a: odbc32/odbc32.spec $(WINEBUILD)
+       @cd odbc32 && $(MAKE) `basename $@`
 
-odbc32/libodbc32.$(IMPLIBEXT): odbc32/odbc32.spec $(WINEBUILD)
-       @cd odbc32 && $(MAKE) libodbc32.$(IMPLIBEXT)
+odbccp32/libodbccp32.def odbccp32/libodbccp32.a: odbccp32/odbccp32.spec $(WINEBUILD)
+       @cd odbccp32 && $(MAKE) `basename $@`
 
-odbccp32/libodbccp32.$(IMPLIBEXT): odbccp32/odbccp32.spec $(WINEBUILD)
-       @cd odbccp32 && $(MAKE) libodbccp32.$(IMPLIBEXT)
+ole32/libole32.def ole32/libole32.a: ole32/ole32.spec $(WINEBUILD)
+       @cd ole32 && $(MAKE) `basename $@`
 
-ole32/libole32.$(IMPLIBEXT): ole32/ole32.spec $(WINEBUILD)
-       @cd ole32 && $(MAKE) libole32.$(IMPLIBEXT)
+oleacc/liboleacc.def oleacc/liboleacc.a: oleacc/oleacc.spec $(WINEBUILD)
+       @cd oleacc && $(MAKE) `basename $@`
 
-oleacc/liboleacc.$(IMPLIBEXT): oleacc/oleacc.spec $(WINEBUILD)
-       @cd oleacc && $(MAKE) liboleacc.$(IMPLIBEXT)
+oleaut32/liboleaut32.def oleaut32/liboleaut32.a: oleaut32/oleaut32.spec $(WINEBUILD)
+       @cd oleaut32 && $(MAKE) `basename $@`
 
-oleaut32/liboleaut32.$(IMPLIBEXT): oleaut32/oleaut32.spec $(WINEBUILD)
-       @cd oleaut32 && $(MAKE) liboleaut32.$(IMPLIBEXT)
+olecli32/libolecli32.def olecli32/libolecli32.a: olecli32/olecli32.spec $(WINEBUILD)
+       @cd olecli32 && $(MAKE) `basename $@`
 
-olecli32/libolecli32.$(IMPLIBEXT): olecli32/olecli32.spec $(WINEBUILD)
-       @cd olecli32 && $(MAKE) libolecli32.$(IMPLIBEXT)
+oledlg/liboledlg.def oledlg/liboledlg.a: oledlg/oledlg.spec $(WINEBUILD)
+       @cd oledlg && $(MAKE) `basename $@`
 
-oledlg/liboledlg.$(IMPLIBEXT): oledlg/oledlg.spec $(WINEBUILD)
-       @cd oledlg && $(MAKE) liboledlg.$(IMPLIBEXT)
+olepro32/libolepro32.def olepro32/libolepro32.a: olepro32/olepro32.spec $(WINEBUILD)
+       @cd olepro32 && $(MAKE) `basename $@`
 
-olepro32/libolepro32.$(IMPLIBEXT): olepro32/olepro32.spec $(WINEBUILD)
-       @cd olepro32 && $(MAKE) libolepro32.$(IMPLIBEXT)
+olesvr32/libolesvr32.def olesvr32/libolesvr32.a: olesvr32/olesvr32.spec $(WINEBUILD)
+       @cd olesvr32 && $(MAKE) `basename $@`
 
-olesvr32/libolesvr32.$(IMPLIBEXT): olesvr32/olesvr32.spec $(WINEBUILD)
-       @cd olesvr32 && $(MAKE) libolesvr32.$(IMPLIBEXT)
+opengl32/libopengl32.def opengl32/libopengl32.a: opengl32/opengl32.spec $(WINEBUILD)
+       @cd opengl32 && $(MAKE) `basename $@`
 
-opengl32/libopengl32.$(IMPLIBEXT): opengl32/opengl32.spec $(WINEBUILD)
-       @cd opengl32 && $(MAKE) libopengl32.$(IMPLIBEXT)
+pdh/libpdh.def pdh/libpdh.a: pdh/pdh.spec $(WINEBUILD)
+       @cd pdh && $(MAKE) `basename $@`
 
-pdh/libpdh.$(IMPLIBEXT): pdh/pdh.spec $(WINEBUILD)
-       @cd pdh && $(MAKE) libpdh.$(IMPLIBEXT)
+powrprof/libpowrprof.def powrprof/libpowrprof.a: powrprof/powrprof.spec $(WINEBUILD)
+       @cd powrprof && $(MAKE) `basename $@`
 
-powrprof/libpowrprof.$(IMPLIBEXT): powrprof/powrprof.spec $(WINEBUILD)
-       @cd powrprof && $(MAKE) libpowrprof.$(IMPLIBEXT)
+psapi/libpsapi.def psapi/libpsapi.a: psapi/psapi.spec $(WINEBUILD)
+       @cd psapi && $(MAKE) `basename $@`
 
-psapi/libpsapi.$(IMPLIBEXT): psapi/psapi.spec $(WINEBUILD)
-       @cd psapi && $(MAKE) libpsapi.$(IMPLIBEXT)
+quartz/libquartz.def quartz/libquartz.a: quartz/quartz.spec $(WINEBUILD)
+       @cd quartz && $(MAKE) `basename $@`
 
-quartz/libquartz.$(IMPLIBEXT): quartz/quartz.spec $(WINEBUILD)
-       @cd quartz && $(MAKE) libquartz.$(IMPLIBEXT)
+rasapi32/librasapi32.def rasapi32/librasapi32.a: rasapi32/rasapi32.spec $(WINEBUILD)
+       @cd rasapi32 && $(MAKE) `basename $@`
 
-rasapi32/librasapi32.$(IMPLIBEXT): rasapi32/rasapi32.spec $(WINEBUILD)
-       @cd rasapi32 && $(MAKE) librasapi32.$(IMPLIBEXT)
+resutils/libresutils.def resutils/libresutils.a: resutils/resutils.spec $(WINEBUILD)
+       @cd resutils && $(MAKE) `basename $@`
 
-resutils/libresutils.$(IMPLIBEXT): resutils/resutils.spec $(WINEBUILD)
-       @cd resutils && $(MAKE) libresutils.$(IMPLIBEXT)
+riched20/libriched20.def riched20/libriched20.a: riched20/riched20.spec $(WINEBUILD)
+       @cd riched20 && $(MAKE) `basename $@`
 
-riched20/libriched20.$(IMPLIBEXT): riched20/riched20.spec $(WINEBUILD)
-       @cd riched20 && $(MAKE) libriched20.$(IMPLIBEXT)
+rpcrt4/librpcrt4.def rpcrt4/librpcrt4.a: rpcrt4/rpcrt4.spec $(WINEBUILD)
+       @cd rpcrt4 && $(MAKE) `basename $@`
 
-rpcrt4/librpcrt4.$(IMPLIBEXT): rpcrt4/rpcrt4.spec $(WINEBUILD)
-       @cd rpcrt4 && $(MAKE) librpcrt4.$(IMPLIBEXT)
+rsaenh/librsaenh.def rsaenh/librsaenh.a: rsaenh/rsaenh.spec $(WINEBUILD)
+       @cd rsaenh && $(MAKE) `basename $@`
 
-rsaenh/librsaenh.$(IMPLIBEXT): rsaenh/rsaenh.spec $(WINEBUILD)
-       @cd rsaenh && $(MAKE) librsaenh.$(IMPLIBEXT)
+secur32/libsecur32.def secur32/libsecur32.a: secur32/secur32.spec $(WINEBUILD)
+       @cd secur32 && $(MAKE) `basename $@`
 
-secur32/libsecur32.$(IMPLIBEXT): secur32/secur32.spec $(WINEBUILD)
-       @cd secur32 && $(MAKE) libsecur32.$(IMPLIBEXT)
+sensapi/libsensapi.def sensapi/libsensapi.a: sensapi/sensapi.spec $(WINEBUILD)
+       @cd sensapi && $(MAKE) `basename $@`
 
-sensapi/libsensapi.$(IMPLIBEXT): sensapi/sensapi.spec $(WINEBUILD)
-       @cd sensapi && $(MAKE) libsensapi.$(IMPLIBEXT)
+serialui/libserialui.def serialui/libserialui.a: serialui/serialui.spec $(WINEBUILD)
+       @cd serialui && $(MAKE) `basename $@`
 
-serialui/libserialui.$(IMPLIBEXT): serialui/serialui.spec $(WINEBUILD)
-       @cd serialui && $(MAKE) libserialui.$(IMPLIBEXT)
+setupapi/libsetupapi.def setupapi/libsetupapi.a: setupapi/setupapi.spec $(WINEBUILD)
+       @cd setupapi && $(MAKE) `basename $@`
 
-setupapi/libsetupapi.$(IMPLIBEXT): setupapi/setupapi.spec $(WINEBUILD)
-       @cd setupapi && $(MAKE) libsetupapi.$(IMPLIBEXT)
+sfc/libsfc.def sfc/libsfc.a: sfc/sfc.spec $(WINEBUILD)
+       @cd sfc && $(MAKE) `basename $@`
 
-sfc/libsfc.$(IMPLIBEXT): sfc/sfc.spec $(WINEBUILD)
-       @cd sfc && $(MAKE) libsfc.$(IMPLIBEXT)
+sfc_os/libsfc_os.def sfc_os/libsfc_os.a: sfc_os/sfc_os.spec $(WINEBUILD)
+       @cd sfc_os && $(MAKE) `basename $@`
 
-sfc_os/libsfc_os.$(IMPLIBEXT): sfc_os/sfc_os.spec $(WINEBUILD)
-       @cd sfc_os && $(MAKE) libsfc_os.$(IMPLIBEXT)
+shdocvw/libshdocvw.def shdocvw/libshdocvw.a: shdocvw/shdocvw.spec $(WINEBUILD)
+       @cd shdocvw && $(MAKE) `basename $@`
 
-shdocvw/libshdocvw.$(IMPLIBEXT): shdocvw/shdocvw.spec $(WINEBUILD)
-       @cd shdocvw && $(MAKE) libshdocvw.$(IMPLIBEXT)
+shell32/libshell32.def shell32/libshell32.a: shell32/shell32.spec $(WINEBUILD)
+       @cd shell32 && $(MAKE) `basename $@`
 
-shell32/libshell32.$(IMPLIBEXT): shell32/shell32.spec $(WINEBUILD)
-       @cd shell32 && $(MAKE) libshell32.$(IMPLIBEXT)
+shfolder/libshfolder.def shfolder/libshfolder.a: shfolder/shfolder.spec $(WINEBUILD)
+       @cd shfolder && $(MAKE) `basename $@`
 
-shfolder/libshfolder.$(IMPLIBEXT): shfolder/shfolder.spec $(WINEBUILD)
-       @cd shfolder && $(MAKE) libshfolder.$(IMPLIBEXT)
+shlwapi/libshlwapi.def shlwapi/libshlwapi.a: shlwapi/shlwapi.spec $(WINEBUILD)
+       @cd shlwapi && $(MAKE) `basename $@`
 
-shlwapi/libshlwapi.$(IMPLIBEXT): shlwapi/shlwapi.spec $(WINEBUILD)
-       @cd shlwapi && $(MAKE) libshlwapi.$(IMPLIBEXT)
+slc/libslc.def slc/libslc.a: slc/slc.spec $(WINEBUILD)
+       @cd slc && $(MAKE) `basename $@`
 
-snmpapi/libsnmpapi.$(IMPLIBEXT): snmpapi/snmpapi.spec $(WINEBUILD)
-       @cd snmpapi && $(MAKE) libsnmpapi.$(IMPLIBEXT)
+snmpapi/libsnmpapi.def snmpapi/libsnmpapi.a: snmpapi/snmpapi.spec $(WINEBUILD)
+       @cd snmpapi && $(MAKE) `basename $@`
 
-spoolss/libspoolss.$(IMPLIBEXT): spoolss/spoolss.spec $(WINEBUILD)
-       @cd spoolss && $(MAKE) libspoolss.$(IMPLIBEXT)
+spoolss/libspoolss.def spoolss/libspoolss.a: spoolss/spoolss.spec $(WINEBUILD)
+       @cd spoolss && $(MAKE) `basename $@`
 
-sti/libsti.$(IMPLIBEXT): sti/sti.spec $(WINEBUILD)
-       @cd sti && $(MAKE) libsti.$(IMPLIBEXT)
+sti/libsti.def sti/libsti.a: sti/sti.spec $(WINEBUILD)
+       @cd sti && $(MAKE) `basename $@`
 
-tapi32/libtapi32.$(IMPLIBEXT): tapi32/tapi32.spec $(WINEBUILD)
-       @cd tapi32 && $(MAKE) libtapi32.$(IMPLIBEXT)
+tapi32/libtapi32.def tapi32/libtapi32.a: tapi32/tapi32.spec $(WINEBUILD)
+       @cd tapi32 && $(MAKE) `basename $@`
 
-unicows/libunicows.$(IMPLIBEXT): unicows/unicows.spec $(WINEBUILD)
-       @cd unicows && $(MAKE) libunicows.$(IMPLIBEXT)
+unicows/libunicows.def unicows/libunicows.a: unicows/unicows.spec $(WINEBUILD)
+       @cd unicows && $(MAKE) `basename $@`
 
-url/liburl.$(IMPLIBEXT): url/url.spec $(WINEBUILD)
-       @cd url && $(MAKE) liburl.$(IMPLIBEXT)
+url/liburl.def url/liburl.a: url/url.spec $(WINEBUILD)
+       @cd url && $(MAKE) `basename $@`
 
-urlmon/liburlmon.$(IMPLIBEXT): urlmon/urlmon.spec $(WINEBUILD)
-       @cd urlmon && $(MAKE) liburlmon.$(IMPLIBEXT)
+urlmon/liburlmon.def urlmon/liburlmon.a: urlmon/urlmon.spec $(WINEBUILD)
+       @cd urlmon && $(MAKE) `basename $@`
 
-user32/libuser32.$(IMPLIBEXT): user32/user32.spec $(WINEBUILD)
-       @cd user32 && $(MAKE) libuser32.$(IMPLIBEXT)
+user32/libuser32.def user32/libuser32.a: user32/user32.spec $(WINEBUILD)
+       @cd user32 && $(MAKE) `basename $@`
 
-usp10/libusp10.$(IMPLIBEXT): usp10/usp10.spec $(WINEBUILD)
-       @cd usp10 && $(MAKE) libusp10.$(IMPLIBEXT)
+userenv/libuserenv.def userenv/libuserenv.a: userenv/userenv.spec $(WINEBUILD)
+       @cd userenv && $(MAKE) `basename $@`
 
-uxtheme/libuxtheme.$(IMPLIBEXT): uxtheme/uxtheme.spec $(WINEBUILD)
-       @cd uxtheme && $(MAKE) libuxtheme.$(IMPLIBEXT)
+usp10/libusp10.def usp10/libusp10.a: usp10/usp10.spec $(WINEBUILD)
+       @cd usp10 && $(MAKE) `basename $@`
 
-vdmdbg/libvdmdbg.$(IMPLIBEXT): vdmdbg/vdmdbg.spec $(WINEBUILD)
-       @cd vdmdbg && $(MAKE) libvdmdbg.$(IMPLIBEXT)
+uxtheme/libuxtheme.def uxtheme/libuxtheme.a: uxtheme/uxtheme.spec $(WINEBUILD)
+       @cd uxtheme && $(MAKE) `basename $@`
 
-version/libversion.$(IMPLIBEXT): version/version.spec $(WINEBUILD)
-       @cd version && $(MAKE) libversion.$(IMPLIBEXT)
+vdmdbg/libvdmdbg.def vdmdbg/libvdmdbg.a: vdmdbg/vdmdbg.spec $(WINEBUILD)
+       @cd vdmdbg && $(MAKE) `basename $@`
 
-wined3d/libwined3d.$(IMPLIBEXT): wined3d/wined3d.spec $(WINEBUILD)
-       @cd wined3d && $(MAKE) libwined3d.$(IMPLIBEXT)
+version/libversion.def version/libversion.a: version/version.spec $(WINEBUILD)
+       @cd version && $(MAKE) `basename $@`
 
-winedos/libwinedos.$(IMPLIBEXT): winedos/winedos.spec $(WINEBUILD)
-       @cd winedos && $(MAKE) libwinedos.$(IMPLIBEXT)
+wined3d/libwined3d.def wined3d/libwined3d.a: wined3d/wined3d.spec $(WINEBUILD)
+       @cd wined3d && $(MAKE) `basename $@`
 
-wininet/libwininet.$(IMPLIBEXT): wininet/wininet.spec $(WINEBUILD)
-       @cd wininet && $(MAKE) libwininet.$(IMPLIBEXT)
+winedos/libwinedos.def winedos/libwinedos.a: winedos/winedos.spec $(WINEBUILD)
+       @cd winedos && $(MAKE) `basename $@`
 
-winmm/libwinmm.$(IMPLIBEXT): winmm/winmm.spec $(WINEBUILD)
-       @cd winmm && $(MAKE) libwinmm.$(IMPLIBEXT)
+winhttp/libwinhttp.def winhttp/libwinhttp.a: winhttp/winhttp.spec $(WINEBUILD)
+       @cd winhttp && $(MAKE) `basename $@`
 
-winnls32/libwinnls32.$(IMPLIBEXT): winnls32/winnls32.spec $(WINEBUILD)
-       @cd winnls32 && $(MAKE) libwinnls32.$(IMPLIBEXT)
+wininet/libwininet.def wininet/libwininet.a: wininet/wininet.spec $(WINEBUILD)
+       @cd wininet && $(MAKE) `basename $@`
 
-winscard/libwinscard.$(IMPLIBEXT): winscard/winscard.spec $(WINEBUILD)
-       @cd winscard && $(MAKE) libwinscard.$(IMPLIBEXT)
+winmm/libwinmm.def winmm/libwinmm.a: winmm/winmm.spec $(WINEBUILD)
+       @cd winmm && $(MAKE) `basename $@`
 
-winspool.drv/libwinspool.$(IMPLIBEXT): winspool.drv/winspool.drv.spec $(WINEBUILD)
-       @cd winspool.drv && $(MAKE) libwinspool.$(IMPLIBEXT)
+winnls32/libwinnls32.def winnls32/libwinnls32.a: winnls32/winnls32.spec $(WINEBUILD)
+       @cd winnls32 && $(MAKE) `basename $@`
 
-wintab32/libwintab32.$(IMPLIBEXT): wintab32/wintab32.spec $(WINEBUILD)
-       @cd wintab32 && $(MAKE) libwintab32.$(IMPLIBEXT)
+winscard/libwinscard.def winscard/libwinscard.a: winscard/winscard.spec $(WINEBUILD)
+       @cd winscard && $(MAKE) `basename $@`
 
-wintrust/libwintrust.$(IMPLIBEXT): wintrust/wintrust.spec $(WINEBUILD)
-       @cd wintrust && $(MAKE) libwintrust.$(IMPLIBEXT)
+winspool.drv/libwinspool.def winspool.drv/libwinspool.a: winspool.drv/winspool.drv.spec $(WINEBUILD)
+       @cd winspool.drv && $(MAKE) `basename $@`
 
-wldap32/libwldap32.$(IMPLIBEXT): wldap32/wldap32.spec $(WINEBUILD)
-       @cd wldap32 && $(MAKE) libwldap32.$(IMPLIBEXT)
+wintab32/libwintab32.def wintab32/libwintab32.a: wintab32/wintab32.spec $(WINEBUILD)
+       @cd wintab32 && $(MAKE) `basename $@`
 
-wnaspi32/libwnaspi32.$(IMPLIBEXT): wnaspi32/wnaspi32.spec $(WINEBUILD)
-       @cd wnaspi32 && $(MAKE) libwnaspi32.$(IMPLIBEXT)
+wintrust/libwintrust.def wintrust/libwintrust.a: wintrust/wintrust.spec $(WINEBUILD)
+       @cd wintrust && $(MAKE) `basename $@`
 
-wow32/libwow32.$(IMPLIBEXT): wow32/wow32.spec $(WINEBUILD)
-       @cd wow32 && $(MAKE) libwow32.$(IMPLIBEXT)
+wldap32/libwldap32.def wldap32/libwldap32.a: wldap32/wldap32.spec $(WINEBUILD)
+       @cd wldap32 && $(MAKE) `basename $@`
 
-ws2_32/libws2_32.$(IMPLIBEXT): ws2_32/ws2_32.spec $(WINEBUILD)
-       @cd ws2_32 && $(MAKE) libws2_32.$(IMPLIBEXT)
+wnaspi32/libwnaspi32.def wnaspi32/libwnaspi32.a: wnaspi32/wnaspi32.spec $(WINEBUILD)
+       @cd wnaspi32 && $(MAKE) `basename $@`
 
-wsock32/libwsock32.$(IMPLIBEXT): wsock32/wsock32.spec $(WINEBUILD)
-       @cd wsock32 && $(MAKE) libwsock32.$(IMPLIBEXT)
+wow32/libwow32.def wow32/libwow32.a: wow32/wow32.spec $(WINEBUILD)
+       @cd wow32 && $(MAKE) `basename $@`
 
-wtsapi32/libwtsapi32.$(IMPLIBEXT): wtsapi32/wtsapi32.spec $(WINEBUILD)
-       @cd wtsapi32 && $(MAKE) libwtsapi32.$(IMPLIBEXT)
+ws2_32/libws2_32.def ws2_32/libws2_32.a: ws2_32/ws2_32.spec $(WINEBUILD)
+       @cd ws2_32 && $(MAKE) `basename $@`
 
-libwinspool.$(IMPLIBEXT): winspool.drv/libwinspool.$(IMPLIBEXT)
-       $(RM) $@ && $(LN_S) winspool.drv/libwinspool.$(IMPLIBEXT) $@
+wsock32/libwsock32.def wsock32/libwsock32.a: wsock32/wsock32.spec $(WINEBUILD)
+       @cd wsock32 && $(MAKE) `basename $@`
+
+wtsapi32/libwtsapi32.def wtsapi32/libwtsapi32.a: wtsapi32/wtsapi32.spec $(WINEBUILD)
+       @cd wtsapi32 && $(MAKE) `basename $@`
+
+xinput1_3/libxinput.def xinput1_3/libxinput.a: xinput1_3/xinput1_3.spec $(WINEBUILD)
+       @cd xinput1_3 && $(MAKE) `basename $@`
+
+libd3dx9.a: d3dx9_36/libd3dx9.a
+       $(RM) $@ && $(LN_S) d3dx9_36/libd3dx9.a $@
+
+libd3dx9.def: d3dx9_36/libd3dx9.def
+       $(RM) $@ && $(LN_S) d3dx9_36/libd3dx9.def $@
+
+libwinspool.a: winspool.drv/libwinspool.a
+       $(RM) $@ && $(LN_S) winspool.drv/libwinspool.a $@
+
+libwinspool.def: winspool.drv/libwinspool.def
+       $(RM) $@ && $(LN_S) winspool.drv/libwinspool.def $@
+
+libxinput.a: xinput1_3/libxinput.a
+       $(RM) $@ && $(LN_S) xinput1_3/libxinput.a $@
+
+libxinput.def: xinput1_3/libxinput.def
+       $(RM) $@ && $(LN_S) xinput1_3/libxinput.def $@
 
 $(BUILDSUBDIRS): $(IMPORT_LIBS)
 $(INSTALLSUBDIRS:%=%/__install__) $(INSTALLSUBDIRS:%=%/__install-lib__): $(IMPORT_LIBS)
 
 # Map library name to the corresponding directory
 
+adsiid/libadsiid.a: adsiid
 dxerr8/libdxerr8.a: dxerr8
 dxerr9/libdxerr9.a: dxerr9
 dxguid/libdxguid.a: dxguid
@@ -1000,11 +912,17 @@ winecrt0/libwinecrt0.a: winecrt0
 
 # Misc rules
 
-install-lib:: $(INSTALLSUBDIRS:%=%/__install-lib__)
+.PHONY: $(WIN16_FILES:%=__install__/%)
+
+WIN16_INSTALL = $(WIN16_FILES:%=__install__/%)
+
+$(WIN16_FILES:%=__install__/%): $(WIN16_FILES) $(DESTDIR)$(dlldir) dummy
+       $(INSTALL_DATA) `basename $@` $(DESTDIR)$(dlldir)/`basename $@`
 
-install-dev:: $(INSTALLSUBDIRS:%=%/__install-dev__)
+install install-lib:: @WIN16_INSTALL@
 
 uninstall::
+       -cd $(DESTDIR)$(dlldir) && $(RM) $(WIN16_FILES)
        -rmdir $(DESTDIR)$(dlldir)
 
 clean::