TOPSRCDIR = @top_srcdir@
TOPOBJDIR = ../..
SRCDIR    = @srcdir@
VPATH     = @srcdir@
MODULE    = mshtml.dll
IMPORTLIB = mshtml
IMPORTS   = urlmon shlwapi ole32 oleaut32 user32 gdi32 advapi32 kernel32
EXTRALIBS = -lstrmiids -luuid
EXTRADEFS = -DCOM_NO_WINDOWS_H

C_SRCS = \
	conpoint.c \
	editor.c \
	hlink.c \
	htmlanchor.c \
	htmlbody.c \
	htmldoc.c \
	htmldoc3.c \
	htmldoc5.c \
	htmlelem.c \
	htmlelem2.c \
	htmlinput.c \
	htmllocation.c \
	htmlnode.c \
	htmloption.c \
	htmlscript.c \
	htmlselect.c \
	htmlstyle.c \
	htmlstylesheet.c \
	htmltable.c \
	htmltextcont.c \
	htmltextarea.c \
	htmlwindow.c \
	install.c \
	loadopts.c \
	main.c \
	navigate.c \
	nsembed.c \
	nsevents.c \
	nsio.c \
	nsservice.c \
	olecmd.c \
	oleobj.c \
	olewnd.c \
	persist.c \
	protocol.c \
	script.c \
	selection.c \
	service.c \
	task.c \
	txtrange.c \
	view.c

RC_SRCS = rsrc.rc

IDL_H_SRCS = nsiface.idl

@MAKE_DLL_RULES@

@DEPENDENCIES@  # everything below this line is overwritten by make depend
