# $Id$
CC = wcc386 -bt=nt -q
CXX = wpp386 -bt=nt -q
LD = wlink

CFLAGS = -i=include -d_MILSKO -dUSE_GDI -dUSE_STB_IMAGE -dSTBI_NO_SIMD
CXXFLAGS = -i=include
LDFLAGS = system nt_dll
all: src/Mw.dll oosrc/MwOO.dll
clean: .SYMBOLIC
	%erase src/core.obj
	%erase src/draw.obj
	%erase src/default.obj
	%erase src/lowlevel.obj
	%erase src/error.obj
	%erase src/unicode.obj
	%erase src/font.obj
	%erase src/color.obj
	%erase src/messagebox.obj
	%erase src/boldfont.obj
	%erase src/external/ds.obj
	%erase src/external/image.obj
	%erase src/icon/info.obj
	%erase src/icon/note.obj
	%erase src/icon/warning.obj
	%erase src/icon/error.obj
	%erase src/icon/news.obj
	%erase src/icon/question.obj
	%erase src/cursor/default.obj
	%erase src/cursor/cross.obj
	%erase src/cursor/text.obj
	%erase src/widget/button.obj
	%erase src/widget/frame.obj
	%erase src/widget/opengl.obj
	%erase src/widget/window.obj
	%erase src/widget/menu.obj
	%erase src/widget/entry.obj
	%erase src/widget/submenu.obj
	%erase src/widget/image.obj
	%erase src/widget/scrollbar.obj
	%erase src/widget/checkbox.obj
	%erase src/widget/label.obj
	%erase src/widget/numberentry.obj
	%erase src/widget/viewport.obj
	%erase src/backend/gdi.obj
	%erase oosrc/base.obj
	%erase oosrc/widget/button.obj
	%erase oosrc/widget/frame.obj
	%erase oosrc/widget/image.obj
	%erase oosrc/widget/menu.obj
	%erase oosrc/widget/opengl.obj
	%erase oosrc/widget/scrollbar.obj
	%erase oosrc/widget/submenu.obj
	%erase oosrc/widget/window.obj
	%erase oosrc/widget/checkbox.obj
	%erase oosrc/widget/viewport.obj
	%erase oosrc/widget/label.obj
	%erase oosrc/widget/entry.obj
	%erase oosrc/widget/numberentry.obj
	%erase src/Mw.dll
	%erase oosrc/MwOO.dll

src/Mw.dll:  src/core.obj src/draw.obj src/default.obj src/lowlevel.obj src/error.obj src/unicode.obj src/font.obj src/color.obj src/messagebox.obj src/boldfont.obj src/external/ds.obj src/external/image.obj src/icon/info.obj src/icon/note.obj src/icon/warning.obj src/icon/error.obj src/icon/news.obj src/icon/question.obj src/cursor/default.obj src/cursor/cross.obj src/cursor/text.obj src/widget/button.obj src/widget/frame.obj src/widget/opengl.obj src/widget/window.obj src/widget/menu.obj src/widget/entry.obj src/widget/submenu.obj src/widget/image.obj src/widget/scrollbar.obj src/widget/checkbox.obj src/widget/label.obj src/widget/numberentry.obj src/widget/viewport.obj src/backend/gdi.obj
	$(LD) $(LDFLAGS) option implib=src/Mw.lib name $@  file src/core.obj file src/draw.obj file src/default.obj file src/lowlevel.obj file src/error.obj file src/unicode.obj file src/font.obj file src/color.obj file src/messagebox.obj file src/boldfont.obj file src/external/ds.obj file src/external/image.obj file src/icon/info.obj file src/icon/note.obj file src/icon/warning.obj file src/icon/error.obj file src/icon/news.obj file src/icon/question.obj file src/cursor/default.obj file src/cursor/cross.obj file src/cursor/text.obj file src/widget/button.obj file src/widget/frame.obj file src/widget/opengl.obj file src/widget/window.obj file src/widget/menu.obj file src/widget/entry.obj file src/widget/submenu.obj file src/widget/image.obj file src/widget/scrollbar.obj file src/widget/checkbox.obj file src/widget/label.obj file src/widget/numberentry.obj file src/widget/viewport.obj file src/backend/gdi.obj library clib3r.lib library gdi32.lib library user32.lib

oosrc/MwOO.dll:  oosrc/base.obj oosrc/widget/button.obj oosrc/widget/frame.obj oosrc/widget/image.obj oosrc/widget/menu.obj oosrc/widget/opengl.obj oosrc/widget/scrollbar.obj oosrc/widget/submenu.obj oosrc/widget/window.obj oosrc/widget/checkbox.obj oosrc/widget/viewport.obj oosrc/widget/label.obj oosrc/widget/entry.obj oosrc/widget/numberentry.obj
	$(LD) $(LDFLAGS) option implib=oosrc/MwOO.lib name $@  file oosrc/base.obj file oosrc/widget/button.obj file oosrc/widget/frame.obj file oosrc/widget/image.obj file oosrc/widget/menu.obj file oosrc/widget/opengl.obj file oosrc/widget/scrollbar.obj file oosrc/widget/submenu.obj file oosrc/widget/window.obj file oosrc/widget/checkbox.obj file oosrc/widget/viewport.obj file oosrc/widget/label.obj file oosrc/widget/entry.obj file oosrc/widget/numberentry.obj library clib3r.lib library src/Mw.lib


src/core.obj: src/core.c
	$(CC) $(CFLAGS) -fo=$@ $<
src/draw.obj: src/draw.c
	$(CC) $(CFLAGS) -fo=$@ $<
src/default.obj: src/default.c
	$(CC) $(CFLAGS) -fo=$@ $<
src/lowlevel.obj: src/lowlevel.c
	$(CC) $(CFLAGS) -fo=$@ $<
src/error.obj: src/error.c
	$(CC) $(CFLAGS) -fo=$@ $<
src/unicode.obj: src/unicode.c
	$(CC) $(CFLAGS) -fo=$@ $<
src/font.obj: src/font.c
	$(CC) $(CFLAGS) -fo=$@ $<
src/color.obj: src/color.c
	$(CC) $(CFLAGS) -fo=$@ $<
src/messagebox.obj: src/messagebox.c
	$(CC) $(CFLAGS) -fo=$@ $<
src/boldfont.obj: src/boldfont.c
	$(CC) $(CFLAGS) -fo=$@ $<
src/external/ds.obj: src/external/ds.c
	$(CC) $(CFLAGS) -fo=$@ $<
src/external/image.obj: src/external/image.c
	$(CC) $(CFLAGS) -fo=$@ $<
src/icon/info.obj: src/icon/info.c
	$(CC) $(CFLAGS) -fo=$@ $<
src/icon/note.obj: src/icon/note.c
	$(CC) $(CFLAGS) -fo=$@ $<
src/icon/warning.obj: src/icon/warning.c
	$(CC) $(CFLAGS) -fo=$@ $<
src/icon/error.obj: src/icon/error.c
	$(CC) $(CFLAGS) -fo=$@ $<
src/icon/news.obj: src/icon/news.c
	$(CC) $(CFLAGS) -fo=$@ $<
src/icon/question.obj: src/icon/question.c
	$(CC) $(CFLAGS) -fo=$@ $<
src/cursor/default.obj: src/cursor/default.c
	$(CC) $(CFLAGS) -fo=$@ $<
src/cursor/cross.obj: src/cursor/cross.c
	$(CC) $(CFLAGS) -fo=$@ $<
src/cursor/text.obj: src/cursor/text.c
	$(CC) $(CFLAGS) -fo=$@ $<
src/widget/button.obj: src/widget/button.c
	$(CC) $(CFLAGS) -fo=$@ $<
src/widget/frame.obj: src/widget/frame.c
	$(CC) $(CFLAGS) -fo=$@ $<
src/widget/opengl.obj: src/widget/opengl.c
	$(CC) $(CFLAGS) -fo=$@ $<
src/widget/window.obj: src/widget/window.c
	$(CC) $(CFLAGS) -fo=$@ $<
src/widget/menu.obj: src/widget/menu.c
	$(CC) $(CFLAGS) -fo=$@ $<
src/widget/entry.obj: src/widget/entry.c
	$(CC) $(CFLAGS) -fo=$@ $<
src/widget/submenu.obj: src/widget/submenu.c
	$(CC) $(CFLAGS) -fo=$@ $<
src/widget/image.obj: src/widget/image.c
	$(CC) $(CFLAGS) -fo=$@ $<
src/widget/scrollbar.obj: src/widget/scrollbar.c
	$(CC) $(CFLAGS) -fo=$@ $<
src/widget/checkbox.obj: src/widget/checkbox.c
	$(CC) $(CFLAGS) -fo=$@ $<
src/widget/label.obj: src/widget/label.c
	$(CC) $(CFLAGS) -fo=$@ $<
src/widget/numberentry.obj: src/widget/numberentry.c
	$(CC) $(CFLAGS) -fo=$@ $<
src/widget/viewport.obj: src/widget/viewport.c
	$(CC) $(CFLAGS) -fo=$@ $<
src/backend/gdi.obj: src/backend/gdi.c
	$(CC) $(CFLAGS) -fo=$@ $<
oosrc/base.obj: oosrc/base.cc
	$(CXX) $(CXXFLAGS) -fo=$@ $<
oosrc/widget/button.obj: oosrc/widget/button.cc
	$(CXX) $(CXXFLAGS) -fo=$@ $<
oosrc/widget/frame.obj: oosrc/widget/frame.cc
	$(CXX) $(CXXFLAGS) -fo=$@ $<
oosrc/widget/image.obj: oosrc/widget/image.cc
	$(CXX) $(CXXFLAGS) -fo=$@ $<
oosrc/widget/menu.obj: oosrc/widget/menu.cc
	$(CXX) $(CXXFLAGS) -fo=$@ $<
oosrc/widget/opengl.obj: oosrc/widget/opengl.cc
	$(CXX) $(CXXFLAGS) -fo=$@ $<
oosrc/widget/scrollbar.obj: oosrc/widget/scrollbar.cc
	$(CXX) $(CXXFLAGS) -fo=$@ $<
oosrc/widget/submenu.obj: oosrc/widget/submenu.cc
	$(CXX) $(CXXFLAGS) -fo=$@ $<
oosrc/widget/window.obj: oosrc/widget/window.cc
	$(CXX) $(CXXFLAGS) -fo=$@ $<
oosrc/widget/checkbox.obj: oosrc/widget/checkbox.cc
	$(CXX) $(CXXFLAGS) -fo=$@ $<
oosrc/widget/viewport.obj: oosrc/widget/viewport.cc
	$(CXX) $(CXXFLAGS) -fo=$@ $<
oosrc/widget/label.obj: oosrc/widget/label.cc
	$(CXX) $(CXXFLAGS) -fo=$@ $<
oosrc/widget/entry.obj: oosrc/widget/entry.cc
	$(CXX) $(CXXFLAGS) -fo=$@ $<
oosrc/widget/numberentry.obj: oosrc/widget/numberentry.cc
	$(CXX) $(CXXFLAGS) -fo=$@ $<
