# Automatically generated by make_makefiles; DO NOT EDIT!!

TOPSRCDIR = @top_srcdir@
TOPOBJDIR = ..
SRCDIR    = @srcdir@
VPATH     = @srcdir@

# special configure-dependent targets

GLU32FILES = glu32
OPENGLFILES = opengl32
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 \
	ctapi32 \
	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 \
	dpnlobby \
	dsound \
	dswave \
	dwmapi \
	dxdiagn \
	faultrep \
	gdi32 \
	gdiplus \
	gphoto2.ds \
	hal \
	hhctrl.ocx \
	hid \
	hlink \
	hnetcfg \
	iccvid \
	icmp \
	ifsmgr.vxd \
	imaadp32.acm \
	imagehlp \
	imm32 \
	inetcomm \
	infosoft \
	inkobj \
	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 \
	mscat32 \
	mscms \
	mscoree \
	msdmo \
	msftedit \
	msg711.acm \
	mshtml \
	mshtml.tlb \
	msi \
	msimg32 \
	msimtf \
	msisys.ocx \
	msnet32 \
	msrle32 \
	msvcirt \
	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 \
	olethk32 \
	pdh \
	powrprof \
	printui \
	psapi \
	pstorec \
	qcap \
	qmgr \
	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 \
	wined3d \
	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 \
	credui/tests \
	crypt32/tests \
	cryptnet/tests \
	d3d8/tests \
	d3d9/tests \
	d3drm/tests \
	d3dx8/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 \
	opengl32/tests \
	pdh/tests \
	psapi/tests \
	quartz/tests \
	riched20/tests \
	riched32/tests \
	rpcrt4/tests \
	rsabase/tests \
	rsaenh/tests \
	schannel/tests \
	secur32/tests \
	serialui/tests \
	setupapi/tests \
	shdocvw/tests \
	shell32/tests \
	shlwapi/tests \
	snmpapi/tests \
	spoolss/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 \
	winequartz.drv \
	winex11.drv

BUILDSUBDIRS   = $(BASEDIRS) $(EXTRADIRS) $(TESTSUBDIRS)
INSTALLSUBDIRS = $(BASEDIRS) $(EXTRADIRS) $(IMPLIBSUBDIRS)
DOCSUBDIRS     = $(BASEDIRS) $(EXTRADIRS)

# 16-bit dlls

WIN16_FILES = \
	avifile.dll16 \
	comm.drv16 \
	commdlg.dll16 \
	compobj.dll16 \
	ctl3d.dll16 \
	ctl3dv2.dll16 \
	ddeml.dll16 \
	dispdib.dll16 \
	display.drv16 \
	gdi.exe16 \
	imm.dll16 \
	keyboard.drv16 \
	krnl386.exe16 \
	lzexpand.dll16 \
	mmsystem.dll16 \
	mouse.drv16 \
	msacm.dll16 \
	msvideo.dll16 \
	ole2.dll16 \
	ole2conv.dll16 \
	ole2disp.dll16 \
	ole2nls.dll16 \
	ole2prox.dll16 \
	ole2thk.dll16 \
	olecli.dll16 \
	olesvr.dll16 \
	rasapi16.dll16 \
	setupx.dll16 \
	shell.dll16 \
	sound.drv16 \
	storage.dll16 \
	stress.dll16 \
	system.drv16 \
	toolhelp.dll16 \
	twain.dll16 \
	typelib.dll16 \
	user.exe16 \
	ver.dll16 \
	w32sys.dll16 \
	win32s16.dll16 \
	win87em.dll16 \
	winaspi.dll16 \
	windebug.dll16 \
	wineps16.drv16 \
	wing.dll16 \
	winnls.dll16 \
	winsock.dll16 \
	wintab.dll16 \
	wprocs.dll16

@MAKE_RULES@

# Main target

all: $(BUILDSUBDIRS) @WIN16_FILES@

# Placeholders for 16-bit libraries

avifile.dll16:
	echo "avifil32.dll" >$@

commdlg.dll16:
	echo "comdlg32.dll" >$@

ctl3d.dll16 ctl3dv2.dll16:
	echo "ctl3d32.dll" >$@

dispdib.dll16 gdi.exe16 wing.dll16:
	echo "gdi32.dll" >$@

imm.dll16:
	echo "imm32.dll" >$@

comm.drv16 krnl386.exe16 stress.dll16 system.drv16 toolhelp.dll16 win87em.dll16 windebug.dll16:
	echo "kernel32.dll" >$@

lzexpand.dll16:
	echo "lz32.dll" >$@

msacm.dll16:
	echo "msacm32.dll" >$@

msvideo.dll16:
	echo "msvfw32.dll" >$@

compobj.dll16 ole2.dll16 ole2conv.dll16 ole2nls.dll16 ole2prox.dll16 ole2thk.dll16 storage.dll16:
	echo "ole32.dll" >$@

ole2disp.dll16 typelib.dll16:
	echo "oleaut32.dll" >$@

olecli.dll16:
	echo "olecli32.dll" >$@

olesvr.dll16:
	echo "olesvr32.dll" >$@

rasapi16.dll16:
	echo "rasapi32.dll" >$@

setupx.dll16:
	echo "setupapi.dll" >$@

shell.dll16:
	echo "shell32.dll" >$@

twain.dll16:
	echo "twain_32.dll" >$@

ddeml.dll16 display.drv16 keyboard.drv16 mouse.drv16 user.exe16:
	echo "user32.dll" >$@

ver.dll16:
	echo "version.dll" >$@

w32sys.dll16 win32s16.dll16:
	echo "w32skrnl.dll" >$@

wprocs.dll16:
	echo "winedos.dll" >$@

wineps16.drv16:
	echo "wineps.drv" >$@

mmsystem.dll16 sound.drv16:
	echo "winmm.dll" >$@

winnls.dll16:
	echo "winnls32.dll" >$@

wintab.dll16:
	echo "wintab32.dll" >$@

winaspi.dll16:
	echo "wnaspi32.dll" >$@

winsock.dll16:
	echo "ws2_32.dll" >$@

# Import libraries

STATIC_IMPLIBEXT = $(IMPLIBEXT:def=def.a)

IMPORT_SYMLINKS = \
	libwinspool.$(IMPLIBEXT)

IMPORT_LIBS = \
	$(IMPORT_SYMLINKS) \
	dxerr8/libdxerr8.a \
	dxerr9/libdxerr9.a \
	dxguid/libdxguid.a \
	strmiids/libstrmiids.a \
	uuid/libuuid.a \
	winecrt0/libwinecrt0.a \
	activeds/libactiveds.$(IMPLIBEXT) \
	advapi32/libadvapi32.$(IMPLIBEXT) \
	advpack/libadvpack.$(IMPLIBEXT) \
	atl/libatl.$(IMPLIBEXT) \
	avicap32/libavicap32.$(IMPLIBEXT) \
	avifil32/libavifil32.$(IMPLIBEXT) \
	cabinet/libcabinet.$(IMPLIBEXT) \
	capi2032/libcapi2032.$(IMPLIBEXT) \
	cards/libcards.$(IMPLIBEXT) \
	cfgmgr32/libcfgmgr32.$(IMPLIBEXT) \
	clusapi/libclusapi.$(IMPLIBEXT) \
	comctl32/libcomctl32.$(IMPLIBEXT) \
	comdlg32/libcomdlg32.$(IMPLIBEXT) \
	compstui/libcompstui.$(IMPLIBEXT) \
	credui/libcredui.$(IMPLIBEXT) \
	crtdll/libcrtdll.$(IMPLIBEXT) \
	crypt32/libcrypt32.$(IMPLIBEXT) \
	cryptdll/libcryptdll.$(IMPLIBEXT) \
	cryptnet/libcryptnet.$(IMPLIBEXT) \
	ctl3d32/libctl3d32.$(IMPLIBEXT) \
	d3d8/libd3d8.$(IMPLIBEXT) \
	d3d9/libd3d9.$(IMPLIBEXT) \
	d3dim/libd3dim.$(IMPLIBEXT) \
	d3drm/libd3drm.$(IMPLIBEXT) \
	d3dx8/libd3dx8.$(IMPLIBEXT) \
	d3dxof/libd3dxof.$(IMPLIBEXT) \
	dbghelp/libdbghelp.$(IMPLIBEXT) \
	dciman32/libdciman32.$(IMPLIBEXT) \
	ddraw/libddraw.$(IMPLIBEXT) \
	dinput/libdinput.$(IMPLIBEXT) \
	dinput/libdinput.$(STATIC_IMPLIBEXT) \
	dinput8/libdinput8.$(IMPLIBEXT) \
	dmusic32/libdmusic32.$(IMPLIBEXT) \
	dnsapi/libdnsapi.$(IMPLIBEXT) \
	dplay/libdplay.$(IMPLIBEXT) \
	dplayx/libdplayx.$(IMPLIBEXT) \
	dpnet/libdpnet.$(IMPLIBEXT) \
	dsound/libdsound.$(IMPLIBEXT) \
	dwmapi/libdwmapi.$(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) \
	mapi32/libmapi32.$(IMPLIBEXT) \
	mlang/libmlang.$(IMPLIBEXT) \
	mpr/libmpr.$(IMPLIBEXT) \
	mprapi/libmprapi.$(IMPLIBEXT) \
	msacm32/libmsacm32.$(IMPLIBEXT) \
	mscms/libmscms.$(IMPLIBEXT) \
	msdmo/libmsdmo.$(IMPLIBEXT) \
	mshtml/libmshtml.$(IMPLIBEXT) \
	msi/libmsi.$(IMPLIBEXT) \
	msimg32/libmsimg32.$(IMPLIBEXT) \
	msvcrt/libmsvcrt.$(IMPLIBEXT) \
	msvcrt20/libmsvcrt20.$(IMPLIBEXT) \
	msvcrt40/libmsvcrt40.$(IMPLIBEXT) \
	msvcrtd/libmsvcrtd.$(IMPLIBEXT) \
	msvfw32/libmsvfw32.$(IMPLIBEXT) \
	mswsock/libmswsock.$(IMPLIBEXT) \
	nddeapi/libnddeapi.$(IMPLIBEXT) \
	netapi32/libnetapi32.$(IMPLIBEXT) \
	newdev/libnewdev.$(IMPLIBEXT) \
	ntdll/libntdll.$(IMPLIBEXT) \
	ntdsapi/libntdsapi.$(IMPLIBEXT) \
	ntoskrnl.exe/libntoskrnl.exe.$(IMPLIBEXT) \
	odbc32/libodbc32.$(IMPLIBEXT) \
	odbccp32/libodbccp32.$(IMPLIBEXT) \
	ole32/libole32.$(IMPLIBEXT) \
	oleacc/liboleacc.$(IMPLIBEXT) \
	oleaut32/liboleaut32.$(IMPLIBEXT) \
	olecli32/libolecli32.$(IMPLIBEXT) \
	oledlg/liboledlg.$(IMPLIBEXT) \
	olepro32/libolepro32.$(IMPLIBEXT) \
	olesvr32/libolesvr32.$(IMPLIBEXT) \
	opengl32/libopengl32.$(IMPLIBEXT) \
	pdh/libpdh.$(IMPLIBEXT) \
	powrprof/libpowrprof.$(IMPLIBEXT) \
	psapi/libpsapi.$(IMPLIBEXT) \
	quartz/libquartz.$(IMPLIBEXT) \
	rasapi32/librasapi32.$(IMPLIBEXT) \
	resutils/libresutils.$(IMPLIBEXT) \
	riched20/libriched20.$(IMPLIBEXT) \
	rpcrt4/librpcrt4.$(IMPLIBEXT) \
	rsaenh/librsaenh.$(IMPLIBEXT) \
	secur32/libsecur32.$(IMPLIBEXT) \
	sensapi/libsensapi.$(IMPLIBEXT) \
	serialui/libserialui.$(IMPLIBEXT) \
	setupapi/libsetupapi.$(IMPLIBEXT) \
	sfc/libsfc.$(IMPLIBEXT) \
	sfc_os/libsfc_os.$(IMPLIBEXT) \
	shdocvw/libshdocvw.$(IMPLIBEXT) \
	shell32/libshell32.$(IMPLIBEXT) \
	shfolder/libshfolder.$(IMPLIBEXT) \
	shlwapi/libshlwapi.$(IMPLIBEXT) \
	snmpapi/libsnmpapi.$(IMPLIBEXT) \
	spoolss/libspoolss.$(IMPLIBEXT) \
	sti/libsti.$(IMPLIBEXT) \
	tapi32/libtapi32.$(IMPLIBEXT) \
	unicows/libunicows.$(IMPLIBEXT) \
	url/liburl.$(IMPLIBEXT) \
	urlmon/liburlmon.$(IMPLIBEXT) \
	user32/libuser32.$(IMPLIBEXT) \
	usp10/libusp10.$(IMPLIBEXT) \
	uxtheme/libuxtheme.$(IMPLIBEXT) \
	vdmdbg/libvdmdbg.$(IMPLIBEXT) \
	version/libversion.$(IMPLIBEXT) \
	wined3d/libwined3d.$(IMPLIBEXT) \
	winedos/libwinedos.$(IMPLIBEXT) \
	wininet/libwininet.$(IMPLIBEXT) \
	winmm/libwinmm.$(IMPLIBEXT) \
	winnls32/libwinnls32.$(IMPLIBEXT) \
	winscard/libwinscard.$(IMPLIBEXT) \
	winspool.drv/libwinspool.$(IMPLIBEXT) \
	wintab32/libwintab32.$(IMPLIBEXT) \
	wintrust/libwintrust.$(IMPLIBEXT) \
	wldap32/libwldap32.$(IMPLIBEXT) \
	wnaspi32/libwnaspi32.$(IMPLIBEXT) \
	wow32/libwow32.$(IMPLIBEXT) \
	ws2_32/libws2_32.$(IMPLIBEXT) \
	wsock32/libwsock32.$(IMPLIBEXT) \
	wtsapi32/libwtsapi32.$(IMPLIBEXT)

implib: $(IMPORT_LIBS)

.PHONY: implib

activeds/libactiveds.$(IMPLIBEXT): activeds/activeds.spec $(WINEBUILD)
	@cd activeds && $(MAKE) libactiveds.$(IMPLIBEXT)

advapi32/libadvapi32.$(IMPLIBEXT): advapi32/advapi32.spec $(WINEBUILD)
	@cd advapi32 && $(MAKE) libadvapi32.$(IMPLIBEXT)

advpack/libadvpack.$(IMPLIBEXT): advpack/advpack.spec $(WINEBUILD)
	@cd advpack && $(MAKE) libadvpack.$(IMPLIBEXT)

atl/libatl.$(IMPLIBEXT): atl/atl.spec $(WINEBUILD)
	@cd atl && $(MAKE) libatl.$(IMPLIBEXT)

avicap32/libavicap32.$(IMPLIBEXT): avicap32/avicap32.spec $(WINEBUILD)
	@cd avicap32 && $(MAKE) libavicap32.$(IMPLIBEXT)

avifil32/libavifil32.$(IMPLIBEXT): avifil32/avifil32.spec $(WINEBUILD)
	@cd avifil32 && $(MAKE) libavifil32.$(IMPLIBEXT)

cabinet/libcabinet.$(IMPLIBEXT): cabinet/cabinet.spec $(WINEBUILD)
	@cd cabinet && $(MAKE) libcabinet.$(IMPLIBEXT)

capi2032/libcapi2032.$(IMPLIBEXT): capi2032/capi2032.spec $(WINEBUILD)
	@cd capi2032 && $(MAKE) libcapi2032.$(IMPLIBEXT)

cards/libcards.$(IMPLIBEXT): cards/cards.spec $(WINEBUILD)
	@cd cards && $(MAKE) libcards.$(IMPLIBEXT)

cfgmgr32/libcfgmgr32.$(IMPLIBEXT): cfgmgr32/cfgmgr32.spec $(WINEBUILD)
	@cd cfgmgr32 && $(MAKE) libcfgmgr32.$(IMPLIBEXT)

clusapi/libclusapi.$(IMPLIBEXT): clusapi/clusapi.spec $(WINEBUILD)
	@cd clusapi && $(MAKE) libclusapi.$(IMPLIBEXT)

comctl32/libcomctl32.$(IMPLIBEXT): comctl32/comctl32.spec $(WINEBUILD)
	@cd comctl32 && $(MAKE) libcomctl32.$(IMPLIBEXT)

comdlg32/libcomdlg32.$(IMPLIBEXT): comdlg32/comdlg32.spec $(WINEBUILD)
	@cd comdlg32 && $(MAKE) libcomdlg32.$(IMPLIBEXT)

compstui/libcompstui.$(IMPLIBEXT): compstui/compstui.spec $(WINEBUILD)
	@cd compstui && $(MAKE) libcompstui.$(IMPLIBEXT)

credui/libcredui.$(IMPLIBEXT): credui/credui.spec $(WINEBUILD)
	@cd credui && $(MAKE) libcredui.$(IMPLIBEXT)

crtdll/libcrtdll.$(IMPLIBEXT): crtdll/crtdll.spec $(WINEBUILD)
	@cd crtdll && $(MAKE) libcrtdll.$(IMPLIBEXT)

crypt32/libcrypt32.$(IMPLIBEXT): crypt32/crypt32.spec $(WINEBUILD)
	@cd crypt32 && $(MAKE) libcrypt32.$(IMPLIBEXT)

cryptdll/libcryptdll.$(IMPLIBEXT): cryptdll/cryptdll.spec $(WINEBUILD)
	@cd cryptdll && $(MAKE) libcryptdll.$(IMPLIBEXT)

cryptnet/libcryptnet.$(IMPLIBEXT): cryptnet/cryptnet.spec $(WINEBUILD)
	@cd cryptnet && $(MAKE) libcryptnet.$(IMPLIBEXT)

ctl3d32/libctl3d32.$(IMPLIBEXT): ctl3d32/ctl3d32.spec $(WINEBUILD)
	@cd ctl3d32 && $(MAKE) libctl3d32.$(IMPLIBEXT)

d3d8/libd3d8.$(IMPLIBEXT): d3d8/d3d8.spec $(WINEBUILD)
	@cd d3d8 && $(MAKE) libd3d8.$(IMPLIBEXT)

d3d9/libd3d9.$(IMPLIBEXT): d3d9/d3d9.spec $(WINEBUILD)
	@cd d3d9 && $(MAKE) libd3d9.$(IMPLIBEXT)

d3dim/libd3dim.$(IMPLIBEXT): d3dim/d3dim.spec $(WINEBUILD)
	@cd d3dim && $(MAKE) libd3dim.$(IMPLIBEXT)

d3drm/libd3drm.$(IMPLIBEXT): d3drm/d3drm.spec $(WINEBUILD)
	@cd d3drm && $(MAKE) libd3drm.$(IMPLIBEXT)

d3dx8/libd3dx8.$(IMPLIBEXT): d3dx8/d3dx8.spec $(WINEBUILD)
	@cd d3dx8 && $(MAKE) libd3dx8.$(IMPLIBEXT)

d3dxof/libd3dxof.$(IMPLIBEXT): d3dxof/d3dxof.spec $(WINEBUILD)
	@cd d3dxof && $(MAKE) libd3dxof.$(IMPLIBEXT)

dbghelp/libdbghelp.$(IMPLIBEXT): dbghelp/dbghelp.spec $(WINEBUILD)
	@cd dbghelp && $(MAKE) libdbghelp.$(IMPLIBEXT)

dciman32/libdciman32.$(IMPLIBEXT): dciman32/dciman32.spec $(WINEBUILD)
	@cd dciman32 && $(MAKE) libdciman32.$(IMPLIBEXT)

ddraw/libddraw.$(IMPLIBEXT): ddraw/ddraw.spec $(WINEBUILD)
	@cd ddraw && $(MAKE) libddraw.$(IMPLIBEXT)

dinput/libdinput.$(IMPLIBEXT): dinput/dinput.spec $(WINEBUILD)
	@cd dinput && $(MAKE) libdinput.$(IMPLIBEXT)

dinput/libdinput.$(STATIC_IMPLIBEXT): dummy
	@cd dinput && $(MAKE) libdinput.$(STATIC_IMPLIBEXT)

dinput8/libdinput8.$(IMPLIBEXT): dinput8/dinput8.spec $(WINEBUILD)
	@cd dinput8 && $(MAKE) libdinput8.$(IMPLIBEXT)

dmusic32/libdmusic32.$(IMPLIBEXT): dmusic32/dmusic32.spec $(WINEBUILD)
	@cd dmusic32 && $(MAKE) libdmusic32.$(IMPLIBEXT)

dnsapi/libdnsapi.$(IMPLIBEXT): dnsapi/dnsapi.spec $(WINEBUILD)
	@cd dnsapi && $(MAKE) libdnsapi.$(IMPLIBEXT)

dplay/libdplay.$(IMPLIBEXT): dplay/dplay.spec $(WINEBUILD)
	@cd dplay && $(MAKE) libdplay.$(IMPLIBEXT)

dplayx/libdplayx.$(IMPLIBEXT): dplayx/dplayx.spec $(WINEBUILD)
	@cd dplayx && $(MAKE) libdplayx.$(IMPLIBEXT)

dpnet/libdpnet.$(IMPLIBEXT): dpnet/dpnet.spec $(WINEBUILD)
	@cd dpnet && $(MAKE) libdpnet.$(IMPLIBEXT)

dsound/libdsound.$(IMPLIBEXT): dsound/dsound.spec $(WINEBUILD)
	@cd dsound && $(MAKE) libdsound.$(IMPLIBEXT)

dwmapi/libdwmapi.$(IMPLIBEXT): dwmapi/dwmapi.spec $(WINEBUILD)
	@cd dwmapi && $(MAKE) libdwmapi.$(IMPLIBEXT)

gdi32/libgdi32.$(IMPLIBEXT): gdi32/gdi32.spec $(WINEBUILD)
	@cd gdi32 && $(MAKE) libgdi32.$(IMPLIBEXT)

gdiplus/libgdiplus.$(IMPLIBEXT): gdiplus/gdiplus.spec $(WINEBUILD)
	@cd gdiplus && $(MAKE) libgdiplus.$(IMPLIBEXT)

glu32/libglu32.$(IMPLIBEXT): glu32/glu32.spec $(WINEBUILD)
	@cd glu32 && $(MAKE) libglu32.$(IMPLIBEXT)

hid/libhid.$(IMPLIBEXT): hid/hid.spec $(WINEBUILD)
	@cd hid && $(MAKE) libhid.$(IMPLIBEXT)

hlink/libhlink.$(IMPLIBEXT): hlink/hlink.spec $(WINEBUILD)
	@cd hlink && $(MAKE) libhlink.$(IMPLIBEXT)

icmp/libicmp.$(IMPLIBEXT): icmp/icmp.spec $(WINEBUILD)
	@cd icmp && $(MAKE) libicmp.$(IMPLIBEXT)

imagehlp/libimagehlp.$(IMPLIBEXT): imagehlp/imagehlp.spec $(WINEBUILD)
	@cd imagehlp && $(MAKE) libimagehlp.$(IMPLIBEXT)

imm32/libimm32.$(IMPLIBEXT): imm32/imm32.spec $(WINEBUILD)
	@cd imm32 && $(MAKE) libimm32.$(IMPLIBEXT)

inetcomm/libinetcomm.$(IMPLIBEXT): inetcomm/inetcomm.spec $(WINEBUILD)
	@cd inetcomm && $(MAKE) libinetcomm.$(IMPLIBEXT)

iphlpapi/libiphlpapi.$(IMPLIBEXT): iphlpapi/iphlpapi.spec $(WINEBUILD)
	@cd iphlpapi && $(MAKE) libiphlpapi.$(IMPLIBEXT)

kernel32/libkernel32.$(IMPLIBEXT): kernel32/kernel32.spec $(WINEBUILD)
	@cd kernel32 && $(MAKE) libkernel32.$(IMPLIBEXT)

lz32/liblz32.$(IMPLIBEXT): lz32/lz32.spec $(WINEBUILD)
	@cd lz32 && $(MAKE) liblz32.$(IMPLIBEXT)

mapi32/libmapi32.$(IMPLIBEXT): mapi32/mapi32.spec $(WINEBUILD)
	@cd mapi32 && $(MAKE) libmapi32.$(IMPLIBEXT)

mlang/libmlang.$(IMPLIBEXT): mlang/mlang.spec $(WINEBUILD)
	@cd mlang && $(MAKE) libmlang.$(IMPLIBEXT)

mpr/libmpr.$(IMPLIBEXT): mpr/mpr.spec $(WINEBUILD)
	@cd mpr && $(MAKE) libmpr.$(IMPLIBEXT)

mprapi/libmprapi.$(IMPLIBEXT): mprapi/mprapi.spec $(WINEBUILD)
	@cd mprapi && $(MAKE) libmprapi.$(IMPLIBEXT)

msacm32/libmsacm32.$(IMPLIBEXT): msacm32/msacm32.spec $(WINEBUILD)
	@cd msacm32 && $(MAKE) libmsacm32.$(IMPLIBEXT)

mscms/libmscms.$(IMPLIBEXT): mscms/mscms.spec $(WINEBUILD)
	@cd mscms && $(MAKE) libmscms.$(IMPLIBEXT)

msdmo/libmsdmo.$(IMPLIBEXT): msdmo/msdmo.spec $(WINEBUILD)
	@cd msdmo && $(MAKE) libmsdmo.$(IMPLIBEXT)

mshtml/libmshtml.$(IMPLIBEXT): mshtml/mshtml.spec $(WINEBUILD)
	@cd mshtml && $(MAKE) libmshtml.$(IMPLIBEXT)

msi/libmsi.$(IMPLIBEXT): msi/msi.spec $(WINEBUILD)
	@cd msi && $(MAKE) libmsi.$(IMPLIBEXT)

msimg32/libmsimg32.$(IMPLIBEXT): msimg32/msimg32.spec $(WINEBUILD)
	@cd msimg32 && $(MAKE) libmsimg32.$(IMPLIBEXT)

msvcrt/libmsvcrt.$(IMPLIBEXT): msvcrt/msvcrt.spec $(WINEBUILD)
	@cd msvcrt && $(MAKE) libmsvcrt.$(IMPLIBEXT)

msvcrt20/libmsvcrt20.$(IMPLIBEXT): msvcrt20/msvcrt20.spec $(WINEBUILD)
	@cd msvcrt20 && $(MAKE) libmsvcrt20.$(IMPLIBEXT)

msvcrt40/libmsvcrt40.$(IMPLIBEXT): msvcrt40/msvcrt40.spec $(WINEBUILD)
	@cd msvcrt40 && $(MAKE) libmsvcrt40.$(IMPLIBEXT)

msvcrtd/libmsvcrtd.$(IMPLIBEXT): msvcrtd/msvcrtd.spec $(WINEBUILD)
	@cd msvcrtd && $(MAKE) libmsvcrtd.$(IMPLIBEXT)

msvfw32/libmsvfw32.$(IMPLIBEXT): msvfw32/msvfw32.spec $(WINEBUILD)
	@cd msvfw32 && $(MAKE) libmsvfw32.$(IMPLIBEXT)

mswsock/libmswsock.$(IMPLIBEXT): mswsock/mswsock.spec $(WINEBUILD)
	@cd mswsock && $(MAKE) libmswsock.$(IMPLIBEXT)

nddeapi/libnddeapi.$(IMPLIBEXT): nddeapi/nddeapi.spec $(WINEBUILD)
	@cd nddeapi && $(MAKE) libnddeapi.$(IMPLIBEXT)

netapi32/libnetapi32.$(IMPLIBEXT): netapi32/netapi32.spec $(WINEBUILD)
	@cd netapi32 && $(MAKE) libnetapi32.$(IMPLIBEXT)

newdev/libnewdev.$(IMPLIBEXT): newdev/newdev.spec $(WINEBUILD)
	@cd newdev && $(MAKE) libnewdev.$(IMPLIBEXT)

ntdll/libntdll.$(IMPLIBEXT): ntdll/ntdll.spec $(WINEBUILD)
	@cd ntdll && $(MAKE) libntdll.$(IMPLIBEXT)

ntdsapi/libntdsapi.$(IMPLIBEXT): ntdsapi/ntdsapi.spec $(WINEBUILD)
	@cd ntdsapi && $(MAKE) libntdsapi.$(IMPLIBEXT)

ntoskrnl.exe/libntoskrnl.exe.$(IMPLIBEXT): ntoskrnl.exe/ntoskrnl.exe.spec $(WINEBUILD)
	@cd ntoskrnl.exe && $(MAKE) libntoskrnl.exe.$(IMPLIBEXT)

odbc32/libodbc32.$(IMPLIBEXT): odbc32/odbc32.spec $(WINEBUILD)
	@cd odbc32 && $(MAKE) libodbc32.$(IMPLIBEXT)

odbccp32/libodbccp32.$(IMPLIBEXT): odbccp32/odbccp32.spec $(WINEBUILD)
	@cd odbccp32 && $(MAKE) libodbccp32.$(IMPLIBEXT)

ole32/libole32.$(IMPLIBEXT): ole32/ole32.spec $(WINEBUILD)
	@cd ole32 && $(MAKE) libole32.$(IMPLIBEXT)

oleacc/liboleacc.$(IMPLIBEXT): oleacc/oleacc.spec $(WINEBUILD)
	@cd oleacc && $(MAKE) liboleacc.$(IMPLIBEXT)

oleaut32/liboleaut32.$(IMPLIBEXT): oleaut32/oleaut32.spec $(WINEBUILD)
	@cd oleaut32 && $(MAKE) liboleaut32.$(IMPLIBEXT)

olecli32/libolecli32.$(IMPLIBEXT): olecli32/olecli32.spec $(WINEBUILD)
	@cd olecli32 && $(MAKE) libolecli32.$(IMPLIBEXT)

oledlg/liboledlg.$(IMPLIBEXT): oledlg/oledlg.spec $(WINEBUILD)
	@cd oledlg && $(MAKE) liboledlg.$(IMPLIBEXT)

olepro32/libolepro32.$(IMPLIBEXT): olepro32/olepro32.spec $(WINEBUILD)
	@cd olepro32 && $(MAKE) libolepro32.$(IMPLIBEXT)

olesvr32/libolesvr32.$(IMPLIBEXT): olesvr32/olesvr32.spec $(WINEBUILD)
	@cd olesvr32 && $(MAKE) libolesvr32.$(IMPLIBEXT)

opengl32/libopengl32.$(IMPLIBEXT): opengl32/opengl32.spec $(WINEBUILD)
	@cd opengl32 && $(MAKE) libopengl32.$(IMPLIBEXT)

pdh/libpdh.$(IMPLIBEXT): pdh/pdh.spec $(WINEBUILD)
	@cd pdh && $(MAKE) libpdh.$(IMPLIBEXT)

powrprof/libpowrprof.$(IMPLIBEXT): powrprof/powrprof.spec $(WINEBUILD)
	@cd powrprof && $(MAKE) libpowrprof.$(IMPLIBEXT)

psapi/libpsapi.$(IMPLIBEXT): psapi/psapi.spec $(WINEBUILD)
	@cd psapi && $(MAKE) libpsapi.$(IMPLIBEXT)

quartz/libquartz.$(IMPLIBEXT): quartz/quartz.spec $(WINEBUILD)
	@cd quartz && $(MAKE) libquartz.$(IMPLIBEXT)

rasapi32/librasapi32.$(IMPLIBEXT): rasapi32/rasapi32.spec $(WINEBUILD)
	@cd rasapi32 && $(MAKE) librasapi32.$(IMPLIBEXT)

resutils/libresutils.$(IMPLIBEXT): resutils/resutils.spec $(WINEBUILD)
	@cd resutils && $(MAKE) libresutils.$(IMPLIBEXT)

riched20/libriched20.$(IMPLIBEXT): riched20/riched20.spec $(WINEBUILD)
	@cd riched20 && $(MAKE) libriched20.$(IMPLIBEXT)

rpcrt4/librpcrt4.$(IMPLIBEXT): rpcrt4/rpcrt4.spec $(WINEBUILD)
	@cd rpcrt4 && $(MAKE) librpcrt4.$(IMPLIBEXT)

rsaenh/librsaenh.$(IMPLIBEXT): rsaenh/rsaenh.spec $(WINEBUILD)
	@cd rsaenh && $(MAKE) librsaenh.$(IMPLIBEXT)

secur32/libsecur32.$(IMPLIBEXT): secur32/secur32.spec $(WINEBUILD)
	@cd secur32 && $(MAKE) libsecur32.$(IMPLIBEXT)

sensapi/libsensapi.$(IMPLIBEXT): sensapi/sensapi.spec $(WINEBUILD)
	@cd sensapi && $(MAKE) libsensapi.$(IMPLIBEXT)

serialui/libserialui.$(IMPLIBEXT): serialui/serialui.spec $(WINEBUILD)
	@cd serialui && $(MAKE) libserialui.$(IMPLIBEXT)

setupapi/libsetupapi.$(IMPLIBEXT): setupapi/setupapi.spec $(WINEBUILD)
	@cd setupapi && $(MAKE) libsetupapi.$(IMPLIBEXT)

sfc/libsfc.$(IMPLIBEXT): sfc/sfc.spec $(WINEBUILD)
	@cd sfc && $(MAKE) libsfc.$(IMPLIBEXT)

sfc_os/libsfc_os.$(IMPLIBEXT): sfc_os/sfc_os.spec $(WINEBUILD)
	@cd sfc_os && $(MAKE) libsfc_os.$(IMPLIBEXT)

shdocvw/libshdocvw.$(IMPLIBEXT): shdocvw/shdocvw.spec $(WINEBUILD)
	@cd shdocvw && $(MAKE) libshdocvw.$(IMPLIBEXT)

shell32/libshell32.$(IMPLIBEXT): shell32/shell32.spec $(WINEBUILD)
	@cd shell32 && $(MAKE) libshell32.$(IMPLIBEXT)

shfolder/libshfolder.$(IMPLIBEXT): shfolder/shfolder.spec $(WINEBUILD)
	@cd shfolder && $(MAKE) libshfolder.$(IMPLIBEXT)

shlwapi/libshlwapi.$(IMPLIBEXT): shlwapi/shlwapi.spec $(WINEBUILD)
	@cd shlwapi && $(MAKE) libshlwapi.$(IMPLIBEXT)

snmpapi/libsnmpapi.$(IMPLIBEXT): snmpapi/snmpapi.spec $(WINEBUILD)
	@cd snmpapi && $(MAKE) libsnmpapi.$(IMPLIBEXT)

spoolss/libspoolss.$(IMPLIBEXT): spoolss/spoolss.spec $(WINEBUILD)
	@cd spoolss && $(MAKE) libspoolss.$(IMPLIBEXT)

sti/libsti.$(IMPLIBEXT): sti/sti.spec $(WINEBUILD)
	@cd sti && $(MAKE) libsti.$(IMPLIBEXT)

tapi32/libtapi32.$(IMPLIBEXT): tapi32/tapi32.spec $(WINEBUILD)
	@cd tapi32 && $(MAKE) libtapi32.$(IMPLIBEXT)

unicows/libunicows.$(IMPLIBEXT): unicows/unicows.spec $(WINEBUILD)
	@cd unicows && $(MAKE) libunicows.$(IMPLIBEXT)

url/liburl.$(IMPLIBEXT): url/url.spec $(WINEBUILD)
	@cd url && $(MAKE) liburl.$(IMPLIBEXT)

urlmon/liburlmon.$(IMPLIBEXT): urlmon/urlmon.spec $(WINEBUILD)
	@cd urlmon && $(MAKE) liburlmon.$(IMPLIBEXT)

user32/libuser32.$(IMPLIBEXT): user32/user32.spec $(WINEBUILD)
	@cd user32 && $(MAKE) libuser32.$(IMPLIBEXT)

usp10/libusp10.$(IMPLIBEXT): usp10/usp10.spec $(WINEBUILD)
	@cd usp10 && $(MAKE) libusp10.$(IMPLIBEXT)

uxtheme/libuxtheme.$(IMPLIBEXT): uxtheme/uxtheme.spec $(WINEBUILD)
	@cd uxtheme && $(MAKE) libuxtheme.$(IMPLIBEXT)

vdmdbg/libvdmdbg.$(IMPLIBEXT): vdmdbg/vdmdbg.spec $(WINEBUILD)
	@cd vdmdbg && $(MAKE) libvdmdbg.$(IMPLIBEXT)

version/libversion.$(IMPLIBEXT): version/version.spec $(WINEBUILD)
	@cd version && $(MAKE) libversion.$(IMPLIBEXT)

wined3d/libwined3d.$(IMPLIBEXT): wined3d/wined3d.spec $(WINEBUILD)
	@cd wined3d && $(MAKE) libwined3d.$(IMPLIBEXT)

winedos/libwinedos.$(IMPLIBEXT): winedos/winedos.spec $(WINEBUILD)
	@cd winedos && $(MAKE) libwinedos.$(IMPLIBEXT)

wininet/libwininet.$(IMPLIBEXT): wininet/wininet.spec $(WINEBUILD)
	@cd wininet && $(MAKE) libwininet.$(IMPLIBEXT)

winmm/libwinmm.$(IMPLIBEXT): winmm/winmm.spec $(WINEBUILD)
	@cd winmm && $(MAKE) libwinmm.$(IMPLIBEXT)

winnls32/libwinnls32.$(IMPLIBEXT): winnls32/winnls32.spec $(WINEBUILD)
	@cd winnls32 && $(MAKE) libwinnls32.$(IMPLIBEXT)

winscard/libwinscard.$(IMPLIBEXT): winscard/winscard.spec $(WINEBUILD)
	@cd winscard && $(MAKE) libwinscard.$(IMPLIBEXT)

winspool.drv/libwinspool.$(IMPLIBEXT): winspool.drv/winspool.drv.spec $(WINEBUILD)
	@cd winspool.drv && $(MAKE) libwinspool.$(IMPLIBEXT)

wintab32/libwintab32.$(IMPLIBEXT): wintab32/wintab32.spec $(WINEBUILD)
	@cd wintab32 && $(MAKE) libwintab32.$(IMPLIBEXT)

wintrust/libwintrust.$(IMPLIBEXT): wintrust/wintrust.spec $(WINEBUILD)
	@cd wintrust && $(MAKE) libwintrust.$(IMPLIBEXT)

wldap32/libwldap32.$(IMPLIBEXT): wldap32/wldap32.spec $(WINEBUILD)
	@cd wldap32 && $(MAKE) libwldap32.$(IMPLIBEXT)

wnaspi32/libwnaspi32.$(IMPLIBEXT): wnaspi32/wnaspi32.spec $(WINEBUILD)
	@cd wnaspi32 && $(MAKE) libwnaspi32.$(IMPLIBEXT)

wow32/libwow32.$(IMPLIBEXT): wow32/wow32.spec $(WINEBUILD)
	@cd wow32 && $(MAKE) libwow32.$(IMPLIBEXT)

ws2_32/libws2_32.$(IMPLIBEXT): ws2_32/ws2_32.spec $(WINEBUILD)
	@cd ws2_32 && $(MAKE) libws2_32.$(IMPLIBEXT)

wsock32/libwsock32.$(IMPLIBEXT): wsock32/wsock32.spec $(WINEBUILD)
	@cd wsock32 && $(MAKE) libwsock32.$(IMPLIBEXT)

wtsapi32/libwtsapi32.$(IMPLIBEXT): wtsapi32/wtsapi32.spec $(WINEBUILD)
	@cd wtsapi32 && $(MAKE) libwtsapi32.$(IMPLIBEXT)

libwinspool.$(IMPLIBEXT): winspool.drv/libwinspool.$(IMPLIBEXT)
	$(RM) $@ && $(LN_S) winspool.drv/libwinspool.$(IMPLIBEXT) $@

$(BUILDSUBDIRS): $(IMPORT_LIBS)
$(INSTALLSUBDIRS:%=%/__install__) $(INSTALLSUBDIRS:%=%/__install-lib__): $(IMPORT_LIBS)

# Map library name to the corresponding directory

dxerr8/libdxerr8.a: dxerr8
dxerr9/libdxerr9.a: dxerr9
dxguid/libdxguid.a: dxguid
strmiids/libstrmiids.a: strmiids
uuid/libuuid.a: uuid
winecrt0/libwinecrt0.a: winecrt0

# Misc rules

install-lib:: $(INSTALLSUBDIRS:%=%/__install-lib__)

install-dev:: $(INSTALLSUBDIRS:%=%/__install-dev__)

uninstall::
	-rmdir $(DESTDIR)$(dlldir)

clean::
	$(RM) $(IMPORT_SYMLINKS) $(WIN16_FILES)