diff --git a/BorMakefile b/BorMakefile index 19cb9d5..3297b59 100644 --- a/BorMakefile +++ b/BorMakefile @@ -1,10 +1,12 @@ CC = bcc32 -c LD = bcc32 -CFLAGS = -Iinclude -Iexternal\libz\include -D_MILSKO -DUSE_GDI -DUSE_STB_TRUETYPE -DUSE_STB_IMAGE -DSTBI_NO_SIMD -LDFLAGS = -tWD +MW_CFLAGS = -Iinclude -Iexternal\libz\include -D_MILSKO -DUSE_GDI -DUSE_STB_TRUETYPE -DUSE_STB_IMAGE -DSTBI_NO_SIMD +MW_LDFLAGS = -tWD +EXE_CFLAGS = -Iinclude +EXE_LDFLAGS = .SUFFIXES: .obj .c -all: src\Mw.dll +all: src\Mw.dll examples\basic\box.exe examples\basic\calculator.exe examples\basic\checkbox.exe examples\basic\clipboard.exe examples\basic\colorpicker.exe examples\basic\combobox.exe examples\basic\example.exe examples\basic\filechooser.exe examples\basic\image.exe examples\basic\listbox.exe examples\basic\messagebox.exe examples\basic\periodic.exe examples\basic\progressbar.exe examples\basic\radiobox.exe examples\basic\rotate.exe examples\basic\scrollbar.exe examples\basic\sevensegment.exe examples\basic\subwindow.exe examples\basic\treeview.exe examples\basic\viewport.exe clean: del /f /q external\libz\src\adler32.obj del /f /q external\libz\src\compress.obj @@ -72,6 +74,7 @@ clean: del /f /q src\unicode.obj del /f /q src\widget\box.obj del /f /q src\widget\button.obj + del /f /q src\widget\calendar.obj del /f /q src\widget\checkbox.obj del /f /q src\widget\combobox.obj del /f /q src\widget\entry.obj @@ -93,10 +96,171 @@ clean: del /f /q src\widget\window.obj del /f /q src\Mw.dll del /f /q src\Mw.lib + del /f /q examples\basic\box.obj + del /f /q examples\basic\calculator.obj + del /f /q examples\basic\checkbox.obj + del /f /q examples\basic\clipboard.obj + del /f /q examples\basic\colorpicker.obj + del /f /q examples\basic\combobox.obj + del /f /q examples\basic\example.obj + del /f /q examples\basic\filechooser.obj + del /f /q examples\basic\image.obj + del /f /q examples\basic\listbox.obj + del /f /q examples\basic\messagebox.obj + del /f /q examples\basic\periodic.obj + del /f /q examples\basic\progressbar.obj + del /f /q examples\basic\radiobox.obj + del /f /q examples\basic\rotate.obj + del /f /q examples\basic\scrollbar.obj + del /f /q examples\basic\sevensegment.obj + del /f /q examples\basic\subwindow.obj + del /f /q examples\basic\treeview.obj + del /f /q examples\basic\viewport.obj + del /f /q examples\basic\box.exe + del /f /q examples\basic\calculator.exe + del /f /q examples\basic\checkbox.exe + del /f /q examples\basic\clipboard.exe + del /f /q examples\basic\colorpicker.exe + del /f /q examples\basic\combobox.exe + del /f /q examples\basic\example.exe + del /f /q examples\basic\filechooser.exe + del /f /q examples\basic\image.exe + del /f /q examples\basic\listbox.exe + del /f /q examples\basic\messagebox.exe + del /f /q examples\basic\periodic.exe + del /f /q examples\basic\progressbar.exe + del /f /q examples\basic\radiobox.exe + del /f /q examples\basic\rotate.exe + del /f /q examples\basic\scrollbar.exe + del /f /q examples\basic\sevensegment.exe + del /f /q examples\basic\subwindow.exe + del /f /q examples\basic\treeview.exe + del /f /q examples\basic\viewport.exe -src\Mw.dll: external\libz\src\adler32.obj external\libz\src\compress.obj external\libz\src\crc32.obj external\libz\src\deflate.obj external\libz\src\gzclose.obj external\libz\src\gzlib.obj external\libz\src\gzread.obj external\libz\src\gzwrite.obj external\libz\src\infback.obj external\libz\src\inffast.obj external\libz\src\inflate.obj external\libz\src\inftrees.obj external\libz\src\trees.obj external\libz\src\uncompr.obj external\libz\src\zutil.obj external\stb_ds.obj external\stb_image.obj external\stb_truetype.obj src\abstract\charset.obj src\abstract\directory.obj src\abstract\dynamic.obj src\abstract\time.obj src\backend\gdi.obj src\color.obj src\core.obj src\cursor\arrow.obj src\cursor\cross.obj src\cursor\default.obj src\cursor\hidden.obj src\cursor\text.obj src\default.obj src\dialog\colorpicker.obj src\dialog\directorychooser.obj src\dialog\filechooser.obj src\dialog\messagebox.obj src\draw.obj src\icon\back.obj src\icon\clock.obj src\icon\computer.obj src\icon\directory.obj src\icon\down.obj src\icon\error.obj src\icon\file.obj src\icon\forward.obj src\icon\info.obj src\icon\left.obj src\icon\news.obj src\icon\note.obj src\icon\right.obj src\icon\search.obj src\icon\up.obj src\icon\warning.obj src\lowlevel.obj src\string.obj src\text\font\boldfont.obj src\text\font\boldmonottf.obj src\text\font\boldttf.obj src\text\font\font.obj src\text\font\monottf.obj src\text\font\ttf.obj src\text\ft2.obj src\text\stbtt.obj src\text\text.obj src\unicode.obj src\widget\box.obj src\widget\button.obj src\widget\checkbox.obj src\widget\combobox.obj src\widget\entry.obj src\widget\frame.obj src\widget\image.obj src\widget\label.obj src\widget\listbox.obj src\widget\menu.obj src\widget\numberentry.obj src\widget\opengl.obj src\widget\progressbar.obj src\widget\radiobox.obj src\widget\scrollbar.obj src\widget\separator.obj src\widget\submenu.obj src\widget\subwindow.obj src\widget\treeview.obj src\widget\viewport.obj src\widget\window.obj - $(LD) $(LDFLAGS) -e$@ external\libz\src\adler32.obj external\libz\src\compress.obj external\libz\src\crc32.obj external\libz\src\deflate.obj external\libz\src\gzclose.obj external\libz\src\gzlib.obj external\libz\src\gzread.obj external\libz\src\gzwrite.obj external\libz\src\infback.obj external\libz\src\inffast.obj external\libz\src\inflate.obj external\libz\src\inftrees.obj external\libz\src\trees.obj external\libz\src\uncompr.obj external\libz\src\zutil.obj external\stb_ds.obj external\stb_image.obj external\stb_truetype.obj src\abstract\charset.obj src\abstract\directory.obj src\abstract\dynamic.obj src\abstract\time.obj src\backend\gdi.obj src\color.obj src\core.obj src\cursor\arrow.obj src\cursor\cross.obj src\cursor\default.obj src\cursor\hidden.obj src\cursor\text.obj src\default.obj src\dialog\colorpicker.obj src\dialog\directorychooser.obj src\dialog\filechooser.obj src\dialog\messagebox.obj src\draw.obj src\icon\back.obj src\icon\clock.obj src\icon\computer.obj src\icon\directory.obj src\icon\down.obj src\icon\error.obj src\icon\file.obj src\icon\forward.obj src\icon\info.obj src\icon\left.obj src\icon\news.obj src\icon\note.obj src\icon\right.obj src\icon\search.obj src\icon\up.obj src\icon\warning.obj src\lowlevel.obj src\string.obj src\text\font\boldfont.obj src\text\font\boldmonottf.obj src\text\font\boldttf.obj src\text\font\font.obj src\text\font\monottf.obj src\text\font\ttf.obj src\text\ft2.obj src\text\stbtt.obj src\text\text.obj src\unicode.obj src\widget\box.obj src\widget\button.obj src\widget\checkbox.obj src\widget\combobox.obj src\widget\entry.obj src\widget\frame.obj src\widget\image.obj src\widget\label.obj src\widget\listbox.obj src\widget\menu.obj src\widget\numberentry.obj src\widget\opengl.obj src\widget\progressbar.obj src\widget\radiobox.obj src\widget\scrollbar.obj src\widget\separator.obj src\widget\submenu.obj src\widget\subwindow.obj src\widget\treeview.obj src\widget\viewport.obj src\widget\window.obj -lopengl32.lib -lgdi32.lib -luser32.lib -ladvapi32.lib +examples\basic\box.exe: examples\basic\box.obj src\Mw.dll + $(LD) $(EXE_LDFLAGS) -e$@ examples\basic\box.obj -lsrc\Mw.lib + +examples\basic\box.obj: examples/basic/box.c + $(CC) $(EXE_CFLAGS) -o$@ examples/basic/box.c + +examples\basic\calculator.exe: examples\basic\calculator.obj src\Mw.dll + $(LD) $(EXE_LDFLAGS) -e$@ examples\basic\calculator.obj -lsrc\Mw.lib + +examples\basic\calculator.obj: examples/basic/calculator.c + $(CC) $(EXE_CFLAGS) -o$@ examples/basic/calculator.c + +examples\basic\checkbox.exe: examples\basic\checkbox.obj src\Mw.dll + $(LD) $(EXE_LDFLAGS) -e$@ examples\basic\checkbox.obj -lsrc\Mw.lib + +examples\basic\checkbox.obj: examples/basic/checkbox.c + $(CC) $(EXE_CFLAGS) -o$@ examples/basic/checkbox.c + +examples\basic\clipboard.exe: examples\basic\clipboard.obj src\Mw.dll + $(LD) $(EXE_LDFLAGS) -e$@ examples\basic\clipboard.obj -lsrc\Mw.lib + +examples\basic\clipboard.obj: examples/basic/clipboard.c + $(CC) $(EXE_CFLAGS) -o$@ examples/basic/clipboard.c + +examples\basic\colorpicker.exe: examples\basic\colorpicker.obj src\Mw.dll + $(LD) $(EXE_LDFLAGS) -e$@ examples\basic\colorpicker.obj -lsrc\Mw.lib + +examples\basic\colorpicker.obj: examples/basic/colorpicker.c + $(CC) $(EXE_CFLAGS) -o$@ examples/basic/colorpicker.c + +examples\basic\combobox.exe: examples\basic\combobox.obj src\Mw.dll + $(LD) $(EXE_LDFLAGS) -e$@ examples\basic\combobox.obj -lsrc\Mw.lib + +examples\basic\combobox.obj: examples/basic/combobox.c + $(CC) $(EXE_CFLAGS) -o$@ examples/basic/combobox.c + +examples\basic\example.exe: examples\basic\example.obj src\Mw.dll + $(LD) $(EXE_LDFLAGS) -e$@ examples\basic\example.obj -lsrc\Mw.lib + +examples\basic\example.obj: examples/basic/example.c + $(CC) $(EXE_CFLAGS) -o$@ examples/basic/example.c + +examples\basic\filechooser.exe: examples\basic\filechooser.obj src\Mw.dll + $(LD) $(EXE_LDFLAGS) -e$@ examples\basic\filechooser.obj -lsrc\Mw.lib + +examples\basic\filechooser.obj: examples/basic/filechooser.c + $(CC) $(EXE_CFLAGS) -o$@ examples/basic/filechooser.c + +examples\basic\image.exe: examples\basic\image.obj src\Mw.dll + $(LD) $(EXE_LDFLAGS) -e$@ examples\basic\image.obj -lsrc\Mw.lib + +examples\basic\image.obj: examples/basic/image.c + $(CC) $(EXE_CFLAGS) -o$@ examples/basic/image.c + +examples\basic\listbox.exe: examples\basic\listbox.obj src\Mw.dll + $(LD) $(EXE_LDFLAGS) -e$@ examples\basic\listbox.obj -lsrc\Mw.lib + +examples\basic\listbox.obj: examples/basic/listbox.c + $(CC) $(EXE_CFLAGS) -o$@ examples/basic/listbox.c + +examples\basic\messagebox.exe: examples\basic\messagebox.obj src\Mw.dll + $(LD) $(EXE_LDFLAGS) -e$@ examples\basic\messagebox.obj -lsrc\Mw.lib + +examples\basic\messagebox.obj: examples/basic/messagebox.c + $(CC) $(EXE_CFLAGS) -o$@ examples/basic/messagebox.c + +examples\basic\periodic.exe: examples\basic\periodic.obj src\Mw.dll + $(LD) $(EXE_LDFLAGS) -e$@ examples\basic\periodic.obj -lsrc\Mw.lib + +examples\basic\periodic.obj: examples/basic/periodic.c + $(CC) $(EXE_CFLAGS) -o$@ examples/basic/periodic.c + +examples\basic\progressbar.exe: examples\basic\progressbar.obj src\Mw.dll + $(LD) $(EXE_LDFLAGS) -e$@ examples\basic\progressbar.obj -lsrc\Mw.lib + +examples\basic\progressbar.obj: examples/basic/progressbar.c + $(CC) $(EXE_CFLAGS) -o$@ examples/basic/progressbar.c + +examples\basic\radiobox.exe: examples\basic\radiobox.obj src\Mw.dll + $(LD) $(EXE_LDFLAGS) -e$@ examples\basic\radiobox.obj -lsrc\Mw.lib + +examples\basic\radiobox.obj: examples/basic/radiobox.c + $(CC) $(EXE_CFLAGS) -o$@ examples/basic/radiobox.c + +examples\basic\rotate.exe: examples\basic\rotate.obj src\Mw.dll + $(LD) $(EXE_LDFLAGS) -e$@ examples\basic\rotate.obj -lsrc\Mw.lib + +examples\basic\rotate.obj: examples/basic/rotate.c + $(CC) $(EXE_CFLAGS) -o$@ examples/basic/rotate.c + +examples\basic\scrollbar.exe: examples\basic\scrollbar.obj src\Mw.dll + $(LD) $(EXE_LDFLAGS) -e$@ examples\basic\scrollbar.obj -lsrc\Mw.lib + +examples\basic\scrollbar.obj: examples/basic/scrollbar.c + $(CC) $(EXE_CFLAGS) -o$@ examples/basic/scrollbar.c + +examples\basic\sevensegment.exe: examples\basic\sevensegment.obj src\Mw.dll + $(LD) $(EXE_LDFLAGS) -e$@ examples\basic\sevensegment.obj -lsrc\Mw.lib + +examples\basic\sevensegment.obj: examples/basic/sevensegment.c + $(CC) $(EXE_CFLAGS) -o$@ examples/basic/sevensegment.c + +examples\basic\subwindow.exe: examples\basic\subwindow.obj src\Mw.dll + $(LD) $(EXE_LDFLAGS) -e$@ examples\basic\subwindow.obj -lsrc\Mw.lib + +examples\basic\subwindow.obj: examples/basic/subwindow.c + $(CC) $(EXE_CFLAGS) -o$@ examples/basic/subwindow.c + +examples\basic\treeview.exe: examples\basic\treeview.obj src\Mw.dll + $(LD) $(EXE_LDFLAGS) -e$@ examples\basic\treeview.obj -lsrc\Mw.lib + +examples\basic\treeview.obj: examples/basic/treeview.c + $(CC) $(EXE_CFLAGS) -o$@ examples/basic/treeview.c + +examples\basic\viewport.exe: examples\basic\viewport.obj src\Mw.dll + $(LD) $(EXE_LDFLAGS) -e$@ examples\basic\viewport.obj -lsrc\Mw.lib + +examples\basic\viewport.obj: examples/basic/viewport.c + $(CC) $(EXE_CFLAGS) -o$@ examples/basic/viewport.c + + +src\Mw.dll: external\libz\src\adler32.obj external\libz\src\compress.obj external\libz\src\crc32.obj external\libz\src\deflate.obj external\libz\src\gzclose.obj external\libz\src\gzlib.obj external\libz\src\gzread.obj external\libz\src\gzwrite.obj external\libz\src\infback.obj external\libz\src\inffast.obj external\libz\src\inflate.obj external\libz\src\inftrees.obj external\libz\src\trees.obj external\libz\src\uncompr.obj external\libz\src\zutil.obj external\stb_ds.obj external\stb_image.obj external\stb_truetype.obj src\abstract\charset.obj src\abstract\directory.obj src\abstract\dynamic.obj src\abstract\time.obj src\backend\gdi.obj src\color.obj src\core.obj src\cursor\arrow.obj src\cursor\cross.obj src\cursor\default.obj src\cursor\hidden.obj src\cursor\text.obj src\default.obj src\dialog\colorpicker.obj src\dialog\directorychooser.obj src\dialog\filechooser.obj src\dialog\messagebox.obj src\draw.obj src\icon\back.obj src\icon\clock.obj src\icon\computer.obj src\icon\directory.obj src\icon\down.obj src\icon\error.obj src\icon\file.obj src\icon\forward.obj src\icon\info.obj src\icon\left.obj src\icon\news.obj src\icon\note.obj src\icon\right.obj src\icon\search.obj src\icon\up.obj src\icon\warning.obj src\lowlevel.obj src\string.obj src\text\font\boldfont.obj src\text\font\boldmonottf.obj src\text\font\boldttf.obj src\text\font\font.obj src\text\font\monottf.obj src\text\font\ttf.obj src\text\ft2.obj src\text\stbtt.obj src\text\text.obj src\unicode.obj src\widget\box.obj src\widget\button.obj src\widget\calendar.obj src\widget\checkbox.obj src\widget\combobox.obj src\widget\entry.obj src\widget\frame.obj src\widget\image.obj src\widget\label.obj src\widget\listbox.obj src\widget\menu.obj src\widget\numberentry.obj src\widget\opengl.obj src\widget\progressbar.obj src\widget\radiobox.obj src\widget\scrollbar.obj src\widget\separator.obj src\widget\submenu.obj src\widget\subwindow.obj src\widget\treeview.obj src\widget\viewport.obj src\widget\window.obj + $(LD) $(MW_LDFLAGS) -e$@ external\libz\src\adler32.obj external\libz\src\compress.obj external\libz\src\crc32.obj external\libz\src\deflate.obj external\libz\src\gzclose.obj external\libz\src\gzlib.obj external\libz\src\gzread.obj external\libz\src\gzwrite.obj external\libz\src\infback.obj external\libz\src\inffast.obj external\libz\src\inflate.obj external\libz\src\inftrees.obj external\libz\src\trees.obj external\libz\src\uncompr.obj external\libz\src\zutil.obj external\stb_ds.obj external\stb_image.obj external\stb_truetype.obj src\abstract\charset.obj src\abstract\directory.obj src\abstract\dynamic.obj src\abstract\time.obj src\backend\gdi.obj src\color.obj src\core.obj src\cursor\arrow.obj src\cursor\cross.obj src\cursor\default.obj src\cursor\hidden.obj src\cursor\text.obj src\default.obj src\dialog\colorpicker.obj src\dialog\directorychooser.obj src\dialog\filechooser.obj src\dialog\messagebox.obj src\draw.obj src\icon\back.obj src\icon\clock.obj src\icon\computer.obj src\icon\directory.obj src\icon\down.obj src\icon\error.obj src\icon\file.obj src\icon\forward.obj src\icon\info.obj src\icon\left.obj src\icon\news.obj src\icon\note.obj src\icon\right.obj src\icon\search.obj src\icon\up.obj src\icon\warning.obj src\lowlevel.obj src\string.obj src\text\font\boldfont.obj src\text\font\boldmonottf.obj src\text\font\boldttf.obj src\text\font\font.obj src\text\font\monottf.obj src\text\font\ttf.obj src\text\ft2.obj src\text\stbtt.obj src\text\text.obj src\unicode.obj src\widget\box.obj src\widget\button.obj src\widget\calendar.obj src\widget\checkbox.obj src\widget\combobox.obj src\widget\entry.obj src\widget\frame.obj src\widget\image.obj src\widget\label.obj src\widget\listbox.obj src\widget\menu.obj src\widget\numberentry.obj src\widget\opengl.obj src\widget\progressbar.obj src\widget\radiobox.obj src\widget\scrollbar.obj src\widget\separator.obj src\widget\submenu.obj src\widget\subwindow.obj src\widget\treeview.obj src\widget\viewport.obj src\widget\window.obj -lopengl32.lib -lgdi32.lib -luser32.lib -ladvapi32.lib implib src\Mw.lib src\Mw.dll .c.obj: - $(CC) $(CFLAGS) -o$@ $< + $(CC) $(MW_CFLAGS) -o$@ $< diff --git a/NTMakefile b/NTMakefile index ead72f4..eef2b50 100644 --- a/NTMakefile +++ b/NTMakefile @@ -1,10 +1,12 @@ CC = cl /TC /c /nologo LD = link /nologo -CFLAGS = /Iinclude /Iexternal\libz\include /D_MILSKO /DUSE_GDI /DUSE_STB_TRUETYPE /DUSE_STB_IMAGE /DSTBI_NO_SIMD -LDFLAGS = /DLL +MW_CFLAGS = /Iinclude /Iexternal\libz\include /D_MILSKO /DUSE_GDI /DUSE_STB_TRUETYPE /DUSE_STB_IMAGE /DSTBI_NO_SIMD +MW_LDFLAGS = /DLL +EXE_CFLAGS = /Iinclude +EXE_LDFLAGS = .SUFFIXES: .obj .c -all: src\Mw.dll +all: src\Mw.dll examples\basic\box.exe examples\basic\calculator.exe examples\basic\checkbox.exe examples\basic\clipboard.exe examples\basic\colorpicker.exe examples\basic\combobox.exe examples\basic\example.exe examples\basic\filechooser.exe examples\basic\image.exe examples\basic\listbox.exe examples\basic\messagebox.exe examples\basic\periodic.exe examples\basic\progressbar.exe examples\basic\radiobox.exe examples\basic\rotate.exe examples\basic\scrollbar.exe examples\basic\sevensegment.exe examples\basic\subwindow.exe examples\basic\treeview.exe examples\basic\viewport.exe clean: del /f /q external\libz\src\adler32.obj del /f /q external\libz\src\compress.obj @@ -72,6 +74,7 @@ clean: del /f /q src\unicode.obj del /f /q src\widget\box.obj del /f /q src\widget\button.obj + del /f /q src\widget\calendar.obj del /f /q src\widget\checkbox.obj del /f /q src\widget\combobox.obj del /f /q src\widget\entry.obj @@ -93,10 +96,171 @@ clean: del /f /q src\widget\window.obj del /f /q src\Mw.dll del /f /q src\Mw.lib + del /f /q examples\basic\box.obj + del /f /q examples\basic\calculator.obj + del /f /q examples\basic\checkbox.obj + del /f /q examples\basic\clipboard.obj + del /f /q examples\basic\colorpicker.obj + del /f /q examples\basic\combobox.obj + del /f /q examples\basic\example.obj + del /f /q examples\basic\filechooser.obj + del /f /q examples\basic\image.obj + del /f /q examples\basic\listbox.obj + del /f /q examples\basic\messagebox.obj + del /f /q examples\basic\periodic.obj + del /f /q examples\basic\progressbar.obj + del /f /q examples\basic\radiobox.obj + del /f /q examples\basic\rotate.obj + del /f /q examples\basic\scrollbar.obj + del /f /q examples\basic\sevensegment.obj + del /f /q examples\basic\subwindow.obj + del /f /q examples\basic\treeview.obj + del /f /q examples\basic\viewport.obj + del /f /q examples\basic\box.exe + del /f /q examples\basic\calculator.exe + del /f /q examples\basic\checkbox.exe + del /f /q examples\basic\clipboard.exe + del /f /q examples\basic\colorpicker.exe + del /f /q examples\basic\combobox.exe + del /f /q examples\basic\example.exe + del /f /q examples\basic\filechooser.exe + del /f /q examples\basic\image.exe + del /f /q examples\basic\listbox.exe + del /f /q examples\basic\messagebox.exe + del /f /q examples\basic\periodic.exe + del /f /q examples\basic\progressbar.exe + del /f /q examples\basic\radiobox.exe + del /f /q examples\basic\rotate.exe + del /f /q examples\basic\scrollbar.exe + del /f /q examples\basic\sevensegment.exe + del /f /q examples\basic\subwindow.exe + del /f /q examples\basic\treeview.exe + del /f /q examples\basic\viewport.exe -src\Mw.dll: external\libz\src\adler32.obj external\libz\src\compress.obj external\libz\src\crc32.obj external\libz\src\deflate.obj external\libz\src\gzclose.obj external\libz\src\gzlib.obj external\libz\src\gzread.obj external\libz\src\gzwrite.obj external\libz\src\infback.obj external\libz\src\inffast.obj external\libz\src\inflate.obj external\libz\src\inftrees.obj external\libz\src\trees.obj external\libz\src\uncompr.obj external\libz\src\zutil.obj external\stb_ds.obj external\stb_image.obj external\stb_truetype.obj src\abstract\charset.obj src\abstract\directory.obj src\abstract\dynamic.obj src\abstract\time.obj src\backend\gdi.obj src\color.obj src\core.obj src\cursor\arrow.obj src\cursor\cross.obj src\cursor\default.obj src\cursor\hidden.obj src\cursor\text.obj src\default.obj src\dialog\colorpicker.obj src\dialog\directorychooser.obj src\dialog\filechooser.obj src\dialog\messagebox.obj src\draw.obj src\icon\back.obj src\icon\clock.obj src\icon\computer.obj src\icon\directory.obj src\icon\down.obj src\icon\error.obj src\icon\file.obj src\icon\forward.obj src\icon\info.obj src\icon\left.obj src\icon\news.obj src\icon\note.obj src\icon\right.obj src\icon\search.obj src\icon\up.obj src\icon\warning.obj src\lowlevel.obj src\string.obj src\text\font\boldfont.obj src\text\font\boldmonottf.obj src\text\font\boldttf.obj src\text\font\font.obj src\text\font\monottf.obj src\text\font\ttf.obj src\text\ft2.obj src\text\stbtt.obj src\text\text.obj src\unicode.obj src\widget\box.obj src\widget\button.obj src\widget\checkbox.obj src\widget\combobox.obj src\widget\entry.obj src\widget\frame.obj src\widget\image.obj src\widget\label.obj src\widget\listbox.obj src\widget\menu.obj src\widget\numberentry.obj src\widget\opengl.obj src\widget\progressbar.obj src\widget\radiobox.obj src\widget\scrollbar.obj src\widget\separator.obj src\widget\submenu.obj src\widget\subwindow.obj src\widget\treeview.obj src\widget\viewport.obj src\widget\window.obj - $(LD) $(LDFLAGS) /OUT:$@ external\libz\src\adler32.obj external\libz\src\compress.obj external\libz\src\crc32.obj external\libz\src\deflate.obj external\libz\src\gzclose.obj external\libz\src\gzlib.obj external\libz\src\gzread.obj external\libz\src\gzwrite.obj external\libz\src\infback.obj external\libz\src\inffast.obj external\libz\src\inflate.obj external\libz\src\inftrees.obj external\libz\src\trees.obj external\libz\src\uncompr.obj external\libz\src\zutil.obj external\stb_ds.obj external\stb_image.obj external\stb_truetype.obj src\abstract\charset.obj src\abstract\directory.obj src\abstract\dynamic.obj src\abstract\time.obj src\backend\gdi.obj src\color.obj src\core.obj src\cursor\arrow.obj src\cursor\cross.obj src\cursor\default.obj src\cursor\hidden.obj src\cursor\text.obj src\default.obj src\dialog\colorpicker.obj src\dialog\directorychooser.obj src\dialog\filechooser.obj src\dialog\messagebox.obj src\draw.obj src\icon\back.obj src\icon\clock.obj src\icon\computer.obj src\icon\directory.obj src\icon\down.obj src\icon\error.obj src\icon\file.obj src\icon\forward.obj src\icon\info.obj src\icon\left.obj src\icon\news.obj src\icon\note.obj src\icon\right.obj src\icon\search.obj src\icon\up.obj src\icon\warning.obj src\lowlevel.obj src\string.obj src\text\font\boldfont.obj src\text\font\boldmonottf.obj src\text\font\boldttf.obj src\text\font\font.obj src\text\font\monottf.obj src\text\font\ttf.obj src\text\ft2.obj src\text\stbtt.obj src\text\text.obj src\unicode.obj src\widget\box.obj src\widget\button.obj src\widget\checkbox.obj src\widget\combobox.obj src\widget\entry.obj src\widget\frame.obj src\widget\image.obj src\widget\label.obj src\widget\listbox.obj src\widget\menu.obj src\widget\numberentry.obj src\widget\opengl.obj src\widget\progressbar.obj src\widget\radiobox.obj src\widget\scrollbar.obj src\widget\separator.obj src\widget\submenu.obj src\widget\subwindow.obj src\widget\treeview.obj src\widget\viewport.obj src\widget\window.obj opengl32.lib gdi32.lib user32.lib advapi32.lib +examples\basic\box.exe: examples\basic\box.obj src\Mw.dll + $(LD) $(EXE_LDFLAGS) /OUT:$@ examples\basic\box.obj src\Mw.lib + +examples\basic\box.obj: examples/basic/box.c + $(CC) $(EXE_CFLAGS) /Fo$@ examples/basic/box.c + +examples\basic\calculator.exe: examples\basic\calculator.obj src\Mw.dll + $(LD) $(EXE_LDFLAGS) /OUT:$@ examples\basic\calculator.obj src\Mw.lib + +examples\basic\calculator.obj: examples/basic/calculator.c + $(CC) $(EXE_CFLAGS) /Fo$@ examples/basic/calculator.c + +examples\basic\checkbox.exe: examples\basic\checkbox.obj src\Mw.dll + $(LD) $(EXE_LDFLAGS) /OUT:$@ examples\basic\checkbox.obj src\Mw.lib + +examples\basic\checkbox.obj: examples/basic/checkbox.c + $(CC) $(EXE_CFLAGS) /Fo$@ examples/basic/checkbox.c + +examples\basic\clipboard.exe: examples\basic\clipboard.obj src\Mw.dll + $(LD) $(EXE_LDFLAGS) /OUT:$@ examples\basic\clipboard.obj src\Mw.lib + +examples\basic\clipboard.obj: examples/basic/clipboard.c + $(CC) $(EXE_CFLAGS) /Fo$@ examples/basic/clipboard.c + +examples\basic\colorpicker.exe: examples\basic\colorpicker.obj src\Mw.dll + $(LD) $(EXE_LDFLAGS) /OUT:$@ examples\basic\colorpicker.obj src\Mw.lib + +examples\basic\colorpicker.obj: examples/basic/colorpicker.c + $(CC) $(EXE_CFLAGS) /Fo$@ examples/basic/colorpicker.c + +examples\basic\combobox.exe: examples\basic\combobox.obj src\Mw.dll + $(LD) $(EXE_LDFLAGS) /OUT:$@ examples\basic\combobox.obj src\Mw.lib + +examples\basic\combobox.obj: examples/basic/combobox.c + $(CC) $(EXE_CFLAGS) /Fo$@ examples/basic/combobox.c + +examples\basic\example.exe: examples\basic\example.obj src\Mw.dll + $(LD) $(EXE_LDFLAGS) /OUT:$@ examples\basic\example.obj src\Mw.lib + +examples\basic\example.obj: examples/basic/example.c + $(CC) $(EXE_CFLAGS) /Fo$@ examples/basic/example.c + +examples\basic\filechooser.exe: examples\basic\filechooser.obj src\Mw.dll + $(LD) $(EXE_LDFLAGS) /OUT:$@ examples\basic\filechooser.obj src\Mw.lib + +examples\basic\filechooser.obj: examples/basic/filechooser.c + $(CC) $(EXE_CFLAGS) /Fo$@ examples/basic/filechooser.c + +examples\basic\image.exe: examples\basic\image.obj src\Mw.dll + $(LD) $(EXE_LDFLAGS) /OUT:$@ examples\basic\image.obj src\Mw.lib + +examples\basic\image.obj: examples/basic/image.c + $(CC) $(EXE_CFLAGS) /Fo$@ examples/basic/image.c + +examples\basic\listbox.exe: examples\basic\listbox.obj src\Mw.dll + $(LD) $(EXE_LDFLAGS) /OUT:$@ examples\basic\listbox.obj src\Mw.lib + +examples\basic\listbox.obj: examples/basic/listbox.c + $(CC) $(EXE_CFLAGS) /Fo$@ examples/basic/listbox.c + +examples\basic\messagebox.exe: examples\basic\messagebox.obj src\Mw.dll + $(LD) $(EXE_LDFLAGS) /OUT:$@ examples\basic\messagebox.obj src\Mw.lib + +examples\basic\messagebox.obj: examples/basic/messagebox.c + $(CC) $(EXE_CFLAGS) /Fo$@ examples/basic/messagebox.c + +examples\basic\periodic.exe: examples\basic\periodic.obj src\Mw.dll + $(LD) $(EXE_LDFLAGS) /OUT:$@ examples\basic\periodic.obj src\Mw.lib + +examples\basic\periodic.obj: examples/basic/periodic.c + $(CC) $(EXE_CFLAGS) /Fo$@ examples/basic/periodic.c + +examples\basic\progressbar.exe: examples\basic\progressbar.obj src\Mw.dll + $(LD) $(EXE_LDFLAGS) /OUT:$@ examples\basic\progressbar.obj src\Mw.lib + +examples\basic\progressbar.obj: examples/basic/progressbar.c + $(CC) $(EXE_CFLAGS) /Fo$@ examples/basic/progressbar.c + +examples\basic\radiobox.exe: examples\basic\radiobox.obj src\Mw.dll + $(LD) $(EXE_LDFLAGS) /OUT:$@ examples\basic\radiobox.obj src\Mw.lib + +examples\basic\radiobox.obj: examples/basic/radiobox.c + $(CC) $(EXE_CFLAGS) /Fo$@ examples/basic/radiobox.c + +examples\basic\rotate.exe: examples\basic\rotate.obj src\Mw.dll + $(LD) $(EXE_LDFLAGS) /OUT:$@ examples\basic\rotate.obj src\Mw.lib + +examples\basic\rotate.obj: examples/basic/rotate.c + $(CC) $(EXE_CFLAGS) /Fo$@ examples/basic/rotate.c + +examples\basic\scrollbar.exe: examples\basic\scrollbar.obj src\Mw.dll + $(LD) $(EXE_LDFLAGS) /OUT:$@ examples\basic\scrollbar.obj src\Mw.lib + +examples\basic\scrollbar.obj: examples/basic/scrollbar.c + $(CC) $(EXE_CFLAGS) /Fo$@ examples/basic/scrollbar.c + +examples\basic\sevensegment.exe: examples\basic\sevensegment.obj src\Mw.dll + $(LD) $(EXE_LDFLAGS) /OUT:$@ examples\basic\sevensegment.obj src\Mw.lib + +examples\basic\sevensegment.obj: examples/basic/sevensegment.c + $(CC) $(EXE_CFLAGS) /Fo$@ examples/basic/sevensegment.c + +examples\basic\subwindow.exe: examples\basic\subwindow.obj src\Mw.dll + $(LD) $(EXE_LDFLAGS) /OUT:$@ examples\basic\subwindow.obj src\Mw.lib + +examples\basic\subwindow.obj: examples/basic/subwindow.c + $(CC) $(EXE_CFLAGS) /Fo$@ examples/basic/subwindow.c + +examples\basic\treeview.exe: examples\basic\treeview.obj src\Mw.dll + $(LD) $(EXE_LDFLAGS) /OUT:$@ examples\basic\treeview.obj src\Mw.lib + +examples\basic\treeview.obj: examples/basic/treeview.c + $(CC) $(EXE_CFLAGS) /Fo$@ examples/basic/treeview.c + +examples\basic\viewport.exe: examples\basic\viewport.obj src\Mw.dll + $(LD) $(EXE_LDFLAGS) /OUT:$@ examples\basic\viewport.obj src\Mw.lib + +examples\basic\viewport.obj: examples/basic/viewport.c + $(CC) $(EXE_CFLAGS) /Fo$@ examples/basic/viewport.c + + +src\Mw.dll: external\libz\src\adler32.obj external\libz\src\compress.obj external\libz\src\crc32.obj external\libz\src\deflate.obj external\libz\src\gzclose.obj external\libz\src\gzlib.obj external\libz\src\gzread.obj external\libz\src\gzwrite.obj external\libz\src\infback.obj external\libz\src\inffast.obj external\libz\src\inflate.obj external\libz\src\inftrees.obj external\libz\src\trees.obj external\libz\src\uncompr.obj external\libz\src\zutil.obj external\stb_ds.obj external\stb_image.obj external\stb_truetype.obj src\abstract\charset.obj src\abstract\directory.obj src\abstract\dynamic.obj src\abstract\time.obj src\backend\gdi.obj src\color.obj src\core.obj src\cursor\arrow.obj src\cursor\cross.obj src\cursor\default.obj src\cursor\hidden.obj src\cursor\text.obj src\default.obj src\dialog\colorpicker.obj src\dialog\directorychooser.obj src\dialog\filechooser.obj src\dialog\messagebox.obj src\draw.obj src\icon\back.obj src\icon\clock.obj src\icon\computer.obj src\icon\directory.obj src\icon\down.obj src\icon\error.obj src\icon\file.obj src\icon\forward.obj src\icon\info.obj src\icon\left.obj src\icon\news.obj src\icon\note.obj src\icon\right.obj src\icon\search.obj src\icon\up.obj src\icon\warning.obj src\lowlevel.obj src\string.obj src\text\font\boldfont.obj src\text\font\boldmonottf.obj src\text\font\boldttf.obj src\text\font\font.obj src\text\font\monottf.obj src\text\font\ttf.obj src\text\ft2.obj src\text\stbtt.obj src\text\text.obj src\unicode.obj src\widget\box.obj src\widget\button.obj src\widget\calendar.obj src\widget\checkbox.obj src\widget\combobox.obj src\widget\entry.obj src\widget\frame.obj src\widget\image.obj src\widget\label.obj src\widget\listbox.obj src\widget\menu.obj src\widget\numberentry.obj src\widget\opengl.obj src\widget\progressbar.obj src\widget\radiobox.obj src\widget\scrollbar.obj src\widget\separator.obj src\widget\submenu.obj src\widget\subwindow.obj src\widget\treeview.obj src\widget\viewport.obj src\widget\window.obj + $(LD) $(MW_LDFLAGS) /OUT:$@ external\libz\src\adler32.obj external\libz\src\compress.obj external\libz\src\crc32.obj external\libz\src\deflate.obj external\libz\src\gzclose.obj external\libz\src\gzlib.obj external\libz\src\gzread.obj external\libz\src\gzwrite.obj external\libz\src\infback.obj external\libz\src\inffast.obj external\libz\src\inflate.obj external\libz\src\inftrees.obj external\libz\src\trees.obj external\libz\src\uncompr.obj external\libz\src\zutil.obj external\stb_ds.obj external\stb_image.obj external\stb_truetype.obj src\abstract\charset.obj src\abstract\directory.obj src\abstract\dynamic.obj src\abstract\time.obj src\backend\gdi.obj src\color.obj src\core.obj src\cursor\arrow.obj src\cursor\cross.obj src\cursor\default.obj src\cursor\hidden.obj src\cursor\text.obj src\default.obj src\dialog\colorpicker.obj src\dialog\directorychooser.obj src\dialog\filechooser.obj src\dialog\messagebox.obj src\draw.obj src\icon\back.obj src\icon\clock.obj src\icon\computer.obj src\icon\directory.obj src\icon\down.obj src\icon\error.obj src\icon\file.obj src\icon\forward.obj src\icon\info.obj src\icon\left.obj src\icon\news.obj src\icon\note.obj src\icon\right.obj src\icon\search.obj src\icon\up.obj src\icon\warning.obj src\lowlevel.obj src\string.obj src\text\font\boldfont.obj src\text\font\boldmonottf.obj src\text\font\boldttf.obj src\text\font\font.obj src\text\font\monottf.obj src\text\font\ttf.obj src\text\ft2.obj src\text\stbtt.obj src\text\text.obj src\unicode.obj src\widget\box.obj src\widget\button.obj src\widget\calendar.obj src\widget\checkbox.obj src\widget\combobox.obj src\widget\entry.obj src\widget\frame.obj src\widget\image.obj src\widget\label.obj src\widget\listbox.obj src\widget\menu.obj src\widget\numberentry.obj src\widget\opengl.obj src\widget\progressbar.obj src\widget\radiobox.obj src\widget\scrollbar.obj src\widget\separator.obj src\widget\submenu.obj src\widget\subwindow.obj src\widget\treeview.obj src\widget\viewport.obj src\widget\window.obj opengl32.lib gdi32.lib user32.lib advapi32.lib .c.obj: - $(CC) $(CFLAGS) /Fo$@ $< + $(CC) $(MW_CFLAGS) /Fo$@ $< diff --git a/WatMakefile b/WatMakefile index 9141b9b..fca7acd 100644 --- a/WatMakefile +++ b/WatMakefile @@ -1,9 +1,11 @@ -CC = wcc386 -bt=nt -q -bd +CC = wcc386 -bt=nt -q LD = wlink option quiet -CFLAGS = -i=include -i=external/libz/include -d_MILSKO -dUSE_GDI -dUSE_STB_TRUETYPE -dUSE_STB_IMAGE -dSTBI_NO_SIMD -LDFLAGS = system nt_dll -all: src/Mw.dll +MW_CFLAGS = -bd -i=include -i=external/libz/include -d_MILSKO -dUSE_GDI -dUSE_STB_TRUETYPE -dUSE_STB_IMAGE -dSTBI_NO_SIMD +MW_LDFLAGS = system nt_dll +EXE_CFLAGS = -i=include +EXE_LDFLAGS = system nt +all: src/Mw.dll examples/basic/box.exe examples/basic/calculator.exe examples/basic/checkbox.exe examples/basic/clipboard.exe examples/basic/colorpicker.exe examples/basic/combobox.exe examples/basic/example.exe examples/basic/filechooser.exe examples/basic/image.exe examples/basic/listbox.exe examples/basic/messagebox.exe examples/basic/periodic.exe examples/basic/progressbar.exe examples/basic/radiobox.exe examples/basic/rotate.exe examples/basic/scrollbar.exe examples/basic/sevensegment.exe examples/basic/subwindow.exe examples/basic/treeview.exe examples/basic/viewport.exe clean: .SYMBOLIC %erase external/libz/src/adler32.obj %erase external/libz/src/compress.obj @@ -71,6 +73,7 @@ clean: .SYMBOLIC %erase src/unicode.obj %erase src/widget/box.obj %erase src/widget/button.obj + %erase src/widget/calendar.obj %erase src/widget/checkbox.obj %erase src/widget/combobox.obj %erase src/widget/entry.obj @@ -92,179 +95,342 @@ clean: .SYMBOLIC %erase src/widget/window.obj %erase src/Mw.dll %erase src/Mw.lib + %erase examples/basic/box.obj + %erase examples/basic/calculator.obj + %erase examples/basic/checkbox.obj + %erase examples/basic/clipboard.obj + %erase examples/basic/colorpicker.obj + %erase examples/basic/combobox.obj + %erase examples/basic/example.obj + %erase examples/basic/filechooser.obj + %erase examples/basic/image.obj + %erase examples/basic/listbox.obj + %erase examples/basic/messagebox.obj + %erase examples/basic/periodic.obj + %erase examples/basic/progressbar.obj + %erase examples/basic/radiobox.obj + %erase examples/basic/rotate.obj + %erase examples/basic/scrollbar.obj + %erase examples/basic/sevensegment.obj + %erase examples/basic/subwindow.obj + %erase examples/basic/treeview.obj + %erase examples/basic/viewport.obj + %erase examples/basic/box.exe + %erase examples/basic/calculator.exe + %erase examples/basic/checkbox.exe + %erase examples/basic/clipboard.exe + %erase examples/basic/colorpicker.exe + %erase examples/basic/combobox.exe + %erase examples/basic/example.exe + %erase examples/basic/filechooser.exe + %erase examples/basic/image.exe + %erase examples/basic/listbox.exe + %erase examples/basic/messagebox.exe + %erase examples/basic/periodic.exe + %erase examples/basic/progressbar.exe + %erase examples/basic/radiobox.exe + %erase examples/basic/rotate.exe + %erase examples/basic/scrollbar.exe + %erase examples/basic/sevensegment.exe + %erase examples/basic/subwindow.exe + %erase examples/basic/treeview.exe + %erase examples/basic/viewport.exe -src/Mw.dll: external/libz/src/adler32.obj external/libz/src/compress.obj external/libz/src/crc32.obj external/libz/src/deflate.obj external/libz/src/gzclose.obj external/libz/src/gzlib.obj external/libz/src/gzread.obj external/libz/src/gzwrite.obj external/libz/src/infback.obj external/libz/src/inffast.obj external/libz/src/inflate.obj external/libz/src/inftrees.obj external/libz/src/trees.obj external/libz/src/uncompr.obj external/libz/src/zutil.obj external/stb_ds.obj external/stb_image.obj external/stb_truetype.obj src/abstract/charset.obj src/abstract/directory.obj src/abstract/dynamic.obj src/abstract/time.obj src/backend/gdi.obj src/color.obj src/core.obj src/cursor/arrow.obj src/cursor/cross.obj src/cursor/default.obj src/cursor/hidden.obj src/cursor/text.obj src/default.obj src/dialog/colorpicker.obj src/dialog/directorychooser.obj src/dialog/filechooser.obj src/dialog/messagebox.obj src/draw.obj src/icon/back.obj src/icon/clock.obj src/icon/computer.obj src/icon/directory.obj src/icon/down.obj src/icon/error.obj src/icon/file.obj src/icon/forward.obj src/icon/info.obj src/icon/left.obj src/icon/news.obj src/icon/note.obj src/icon/right.obj src/icon/search.obj src/icon/up.obj src/icon/warning.obj src/lowlevel.obj src/string.obj src/text/font/boldfont.obj src/text/font/boldmonottf.obj src/text/font/boldttf.obj src/text/font/font.obj src/text/font/monottf.obj src/text/font/ttf.obj src/text/ft2.obj src/text/stbtt.obj src/text/text.obj src/unicode.obj src/widget/box.obj src/widget/button.obj src/widget/checkbox.obj src/widget/combobox.obj src/widget/entry.obj src/widget/frame.obj src/widget/image.obj src/widget/label.obj src/widget/listbox.obj src/widget/menu.obj src/widget/numberentry.obj src/widget/opengl.obj src/widget/progressbar.obj src/widget/radiobox.obj src/widget/scrollbar.obj src/widget/separator.obj src/widget/submenu.obj src/widget/subwindow.obj src/widget/treeview.obj src/widget/viewport.obj src/widget/window.obj - $(LD) $(LDFLAGS) option implib=src/Mw.lib name $@ file external/libz/src/adler32.obj file external/libz/src/compress.obj file external/libz/src/crc32.obj file external/libz/src/deflate.obj file external/libz/src/gzclose.obj file external/libz/src/gzlib.obj file external/libz/src/gzread.obj file external/libz/src/gzwrite.obj file external/libz/src/infback.obj file external/libz/src/inffast.obj file external/libz/src/inflate.obj file external/libz/src/inftrees.obj file external/libz/src/trees.obj file external/libz/src/uncompr.obj file external/libz/src/zutil.obj file external/stb_ds.obj file external/stb_image.obj file external/stb_truetype.obj file src/abstract/charset.obj file src/abstract/directory.obj file src/abstract/dynamic.obj file src/abstract/time.obj file src/backend/gdi.obj file src/color.obj file src/core.obj file src/cursor/arrow.obj file src/cursor/cross.obj file src/cursor/default.obj file src/cursor/hidden.obj file src/cursor/text.obj file src/default.obj file src/dialog/colorpicker.obj file src/dialog/directorychooser.obj file src/dialog/filechooser.obj file src/dialog/messagebox.obj file src/draw.obj file src/icon/back.obj file src/icon/clock.obj file src/icon/computer.obj file src/icon/directory.obj file src/icon/down.obj file src/icon/error.obj file src/icon/file.obj file src/icon/forward.obj file src/icon/info.obj file src/icon/left.obj file src/icon/news.obj file src/icon/note.obj file src/icon/right.obj file src/icon/search.obj file src/icon/up.obj file src/icon/warning.obj file src/lowlevel.obj file src/string.obj file src/text/font/boldfont.obj file src/text/font/boldmonottf.obj file src/text/font/boldttf.obj file src/text/font/font.obj file src/text/font/monottf.obj file src/text/font/ttf.obj file src/text/ft2.obj file src/text/stbtt.obj file src/text/text.obj file src/unicode.obj file src/widget/box.obj file src/widget/button.obj file src/widget/checkbox.obj file src/widget/combobox.obj file src/widget/entry.obj file src/widget/frame.obj file src/widget/image.obj file src/widget/label.obj file src/widget/listbox.obj file src/widget/menu.obj file src/widget/numberentry.obj file src/widget/opengl.obj file src/widget/progressbar.obj file src/widget/radiobox.obj file src/widget/scrollbar.obj file src/widget/separator.obj file src/widget/submenu.obj file src/widget/subwindow.obj file src/widget/treeview.obj file src/widget/viewport.obj file src/widget/window.obj library clib3r.lib library opengl32.lib library gdi32.lib library user32.lib library advapi32.lib +examples/basic/box.exe: examples/basic/box.obj src/Mw.dll + $(LD) $(EXE_LDFLAGS) name $@ file examples/basic/box.obj library clib3r.lib library src/Mw.lib + +examples/basic/box.obj: examples/basic/box.c + $(CC) $(EXE_CFLAGS) -fo=$@ examples/basic/box.c + +examples/basic/calculator.exe: examples/basic/calculator.obj src/Mw.dll + $(LD) $(EXE_LDFLAGS) name $@ file examples/basic/calculator.obj library clib3r.lib library src/Mw.lib + +examples/basic/calculator.obj: examples/basic/calculator.c + $(CC) $(EXE_CFLAGS) -fo=$@ examples/basic/calculator.c + +examples/basic/checkbox.exe: examples/basic/checkbox.obj src/Mw.dll + $(LD) $(EXE_LDFLAGS) name $@ file examples/basic/checkbox.obj library clib3r.lib library src/Mw.lib + +examples/basic/checkbox.obj: examples/basic/checkbox.c + $(CC) $(EXE_CFLAGS) -fo=$@ examples/basic/checkbox.c + +examples/basic/clipboard.exe: examples/basic/clipboard.obj src/Mw.dll + $(LD) $(EXE_LDFLAGS) name $@ file examples/basic/clipboard.obj library clib3r.lib library src/Mw.lib + +examples/basic/clipboard.obj: examples/basic/clipboard.c + $(CC) $(EXE_CFLAGS) -fo=$@ examples/basic/clipboard.c + +examples/basic/colorpicker.exe: examples/basic/colorpicker.obj src/Mw.dll + $(LD) $(EXE_LDFLAGS) name $@ file examples/basic/colorpicker.obj library clib3r.lib library src/Mw.lib + +examples/basic/colorpicker.obj: examples/basic/colorpicker.c + $(CC) $(EXE_CFLAGS) -fo=$@ examples/basic/colorpicker.c + +examples/basic/combobox.exe: examples/basic/combobox.obj src/Mw.dll + $(LD) $(EXE_LDFLAGS) name $@ file examples/basic/combobox.obj library clib3r.lib library src/Mw.lib + +examples/basic/combobox.obj: examples/basic/combobox.c + $(CC) $(EXE_CFLAGS) -fo=$@ examples/basic/combobox.c + +examples/basic/example.exe: examples/basic/example.obj src/Mw.dll + $(LD) $(EXE_LDFLAGS) name $@ file examples/basic/example.obj library clib3r.lib library src/Mw.lib + +examples/basic/example.obj: examples/basic/example.c + $(CC) $(EXE_CFLAGS) -fo=$@ examples/basic/example.c + +examples/basic/filechooser.exe: examples/basic/filechooser.obj src/Mw.dll + $(LD) $(EXE_LDFLAGS) name $@ file examples/basic/filechooser.obj library clib3r.lib library src/Mw.lib + +examples/basic/filechooser.obj: examples/basic/filechooser.c + $(CC) $(EXE_CFLAGS) -fo=$@ examples/basic/filechooser.c + +examples/basic/image.exe: examples/basic/image.obj src/Mw.dll + $(LD) $(EXE_LDFLAGS) name $@ file examples/basic/image.obj library clib3r.lib library src/Mw.lib + +examples/basic/image.obj: examples/basic/image.c + $(CC) $(EXE_CFLAGS) -fo=$@ examples/basic/image.c + +examples/basic/listbox.exe: examples/basic/listbox.obj src/Mw.dll + $(LD) $(EXE_LDFLAGS) name $@ file examples/basic/listbox.obj library clib3r.lib library src/Mw.lib + +examples/basic/listbox.obj: examples/basic/listbox.c + $(CC) $(EXE_CFLAGS) -fo=$@ examples/basic/listbox.c + +examples/basic/messagebox.exe: examples/basic/messagebox.obj src/Mw.dll + $(LD) $(EXE_LDFLAGS) name $@ file examples/basic/messagebox.obj library clib3r.lib library src/Mw.lib + +examples/basic/messagebox.obj: examples/basic/messagebox.c + $(CC) $(EXE_CFLAGS) -fo=$@ examples/basic/messagebox.c + +examples/basic/periodic.exe: examples/basic/periodic.obj src/Mw.dll + $(LD) $(EXE_LDFLAGS) name $@ file examples/basic/periodic.obj library clib3r.lib library src/Mw.lib + +examples/basic/periodic.obj: examples/basic/periodic.c + $(CC) $(EXE_CFLAGS) -fo=$@ examples/basic/periodic.c + +examples/basic/progressbar.exe: examples/basic/progressbar.obj src/Mw.dll + $(LD) $(EXE_LDFLAGS) name $@ file examples/basic/progressbar.obj library clib3r.lib library src/Mw.lib + +examples/basic/progressbar.obj: examples/basic/progressbar.c + $(CC) $(EXE_CFLAGS) -fo=$@ examples/basic/progressbar.c + +examples/basic/radiobox.exe: examples/basic/radiobox.obj src/Mw.dll + $(LD) $(EXE_LDFLAGS) name $@ file examples/basic/radiobox.obj library clib3r.lib library src/Mw.lib + +examples/basic/radiobox.obj: examples/basic/radiobox.c + $(CC) $(EXE_CFLAGS) -fo=$@ examples/basic/radiobox.c + +examples/basic/rotate.exe: examples/basic/rotate.obj src/Mw.dll + $(LD) $(EXE_LDFLAGS) name $@ file examples/basic/rotate.obj library clib3r.lib library src/Mw.lib + +examples/basic/rotate.obj: examples/basic/rotate.c + $(CC) $(EXE_CFLAGS) -fo=$@ examples/basic/rotate.c + +examples/basic/scrollbar.exe: examples/basic/scrollbar.obj src/Mw.dll + $(LD) $(EXE_LDFLAGS) name $@ file examples/basic/scrollbar.obj library clib3r.lib library src/Mw.lib + +examples/basic/scrollbar.obj: examples/basic/scrollbar.c + $(CC) $(EXE_CFLAGS) -fo=$@ examples/basic/scrollbar.c + +examples/basic/sevensegment.exe: examples/basic/sevensegment.obj src/Mw.dll + $(LD) $(EXE_LDFLAGS) name $@ file examples/basic/sevensegment.obj library clib3r.lib library src/Mw.lib + +examples/basic/sevensegment.obj: examples/basic/sevensegment.c + $(CC) $(EXE_CFLAGS) -fo=$@ examples/basic/sevensegment.c + +examples/basic/subwindow.exe: examples/basic/subwindow.obj src/Mw.dll + $(LD) $(EXE_LDFLAGS) name $@ file examples/basic/subwindow.obj library clib3r.lib library src/Mw.lib + +examples/basic/subwindow.obj: examples/basic/subwindow.c + $(CC) $(EXE_CFLAGS) -fo=$@ examples/basic/subwindow.c + +examples/basic/treeview.exe: examples/basic/treeview.obj src/Mw.dll + $(LD) $(EXE_LDFLAGS) name $@ file examples/basic/treeview.obj library clib3r.lib library src/Mw.lib + +examples/basic/treeview.obj: examples/basic/treeview.c + $(CC) $(EXE_CFLAGS) -fo=$@ examples/basic/treeview.c + +examples/basic/viewport.exe: examples/basic/viewport.obj src/Mw.dll + $(LD) $(EXE_LDFLAGS) name $@ file examples/basic/viewport.obj library clib3r.lib library src/Mw.lib + +examples/basic/viewport.obj: examples/basic/viewport.c + $(CC) $(EXE_CFLAGS) -fo=$@ examples/basic/viewport.c + + +src/Mw.dll: external/libz/src/adler32.obj external/libz/src/compress.obj external/libz/src/crc32.obj external/libz/src/deflate.obj external/libz/src/gzclose.obj external/libz/src/gzlib.obj external/libz/src/gzread.obj external/libz/src/gzwrite.obj external/libz/src/infback.obj external/libz/src/inffast.obj external/libz/src/inflate.obj external/libz/src/inftrees.obj external/libz/src/trees.obj external/libz/src/uncompr.obj external/libz/src/zutil.obj external/stb_ds.obj external/stb_image.obj external/stb_truetype.obj src/abstract/charset.obj src/abstract/directory.obj src/abstract/dynamic.obj src/abstract/time.obj src/backend/gdi.obj src/color.obj src/core.obj src/cursor/arrow.obj src/cursor/cross.obj src/cursor/default.obj src/cursor/hidden.obj src/cursor/text.obj src/default.obj src/dialog/colorpicker.obj src/dialog/directorychooser.obj src/dialog/filechooser.obj src/dialog/messagebox.obj src/draw.obj src/icon/back.obj src/icon/clock.obj src/icon/computer.obj src/icon/directory.obj src/icon/down.obj src/icon/error.obj src/icon/file.obj src/icon/forward.obj src/icon/info.obj src/icon/left.obj src/icon/news.obj src/icon/note.obj src/icon/right.obj src/icon/search.obj src/icon/up.obj src/icon/warning.obj src/lowlevel.obj src/string.obj src/text/font/boldfont.obj src/text/font/boldmonottf.obj src/text/font/boldttf.obj src/text/font/font.obj src/text/font/monottf.obj src/text/font/ttf.obj src/text/ft2.obj src/text/stbtt.obj src/text/text.obj src/unicode.obj src/widget/box.obj src/widget/button.obj src/widget/calendar.obj src/widget/checkbox.obj src/widget/combobox.obj src/widget/entry.obj src/widget/frame.obj src/widget/image.obj src/widget/label.obj src/widget/listbox.obj src/widget/menu.obj src/widget/numberentry.obj src/widget/opengl.obj src/widget/progressbar.obj src/widget/radiobox.obj src/widget/scrollbar.obj src/widget/separator.obj src/widget/submenu.obj src/widget/subwindow.obj src/widget/treeview.obj src/widget/viewport.obj src/widget/window.obj + $(LD) $(MW_LDFLAGS) option implib=src/Mw.lib name $@ file external/libz/src/adler32.obj file external/libz/src/compress.obj file external/libz/src/crc32.obj file external/libz/src/deflate.obj file external/libz/src/gzclose.obj file external/libz/src/gzlib.obj file external/libz/src/gzread.obj file external/libz/src/gzwrite.obj file external/libz/src/infback.obj file external/libz/src/inffast.obj file external/libz/src/inflate.obj file external/libz/src/inftrees.obj file external/libz/src/trees.obj file external/libz/src/uncompr.obj file external/libz/src/zutil.obj file external/stb_ds.obj file external/stb_image.obj file external/stb_truetype.obj file src/abstract/charset.obj file src/abstract/directory.obj file src/abstract/dynamic.obj file src/abstract/time.obj file src/backend/gdi.obj file src/color.obj file src/core.obj file src/cursor/arrow.obj file src/cursor/cross.obj file src/cursor/default.obj file src/cursor/hidden.obj file src/cursor/text.obj file src/default.obj file src/dialog/colorpicker.obj file src/dialog/directorychooser.obj file src/dialog/filechooser.obj file src/dialog/messagebox.obj file src/draw.obj file src/icon/back.obj file src/icon/clock.obj file src/icon/computer.obj file src/icon/directory.obj file src/icon/down.obj file src/icon/error.obj file src/icon/file.obj file src/icon/forward.obj file src/icon/info.obj file src/icon/left.obj file src/icon/news.obj file src/icon/note.obj file src/icon/right.obj file src/icon/search.obj file src/icon/up.obj file src/icon/warning.obj file src/lowlevel.obj file src/string.obj file src/text/font/boldfont.obj file src/text/font/boldmonottf.obj file src/text/font/boldttf.obj file src/text/font/font.obj file src/text/font/monottf.obj file src/text/font/ttf.obj file src/text/ft2.obj file src/text/stbtt.obj file src/text/text.obj file src/unicode.obj file src/widget/box.obj file src/widget/button.obj file src/widget/calendar.obj file src/widget/checkbox.obj file src/widget/combobox.obj file src/widget/entry.obj file src/widget/frame.obj file src/widget/image.obj file src/widget/label.obj file src/widget/listbox.obj file src/widget/menu.obj file src/widget/numberentry.obj file src/widget/opengl.obj file src/widget/progressbar.obj file src/widget/radiobox.obj file src/widget/scrollbar.obj file src/widget/separator.obj file src/widget/submenu.obj file src/widget/subwindow.obj file src/widget/treeview.obj file src/widget/viewport.obj file src/widget/window.obj library clib3r.lib library opengl32.lib library gdi32.lib library user32.lib library advapi32.lib external/libz/src/adler32.obj: external/libz/src/adler32.c - $(CC) $(CFLAGS) -fo=$@ $< + $(CC) $(MW_CFLAGS) -fo=$@ external/libz/src/adler32.c external/libz/src/compress.obj: external/libz/src/compress.c - $(CC) $(CFLAGS) -fo=$@ $< + $(CC) $(MW_CFLAGS) -fo=$@ external/libz/src/compress.c external/libz/src/crc32.obj: external/libz/src/crc32.c - $(CC) $(CFLAGS) -fo=$@ $< + $(CC) $(MW_CFLAGS) -fo=$@ external/libz/src/crc32.c external/libz/src/deflate.obj: external/libz/src/deflate.c - $(CC) $(CFLAGS) -fo=$@ $< + $(CC) $(MW_CFLAGS) -fo=$@ external/libz/src/deflate.c external/libz/src/gzclose.obj: external/libz/src/gzclose.c - $(CC) $(CFLAGS) -fo=$@ $< + $(CC) $(MW_CFLAGS) -fo=$@ external/libz/src/gzclose.c external/libz/src/gzlib.obj: external/libz/src/gzlib.c - $(CC) $(CFLAGS) -fo=$@ $< + $(CC) $(MW_CFLAGS) -fo=$@ external/libz/src/gzlib.c external/libz/src/gzread.obj: external/libz/src/gzread.c - $(CC) $(CFLAGS) -fo=$@ $< + $(CC) $(MW_CFLAGS) -fo=$@ external/libz/src/gzread.c external/libz/src/gzwrite.obj: external/libz/src/gzwrite.c - $(CC) $(CFLAGS) -fo=$@ $< + $(CC) $(MW_CFLAGS) -fo=$@ external/libz/src/gzwrite.c external/libz/src/infback.obj: external/libz/src/infback.c - $(CC) $(CFLAGS) -fo=$@ $< + $(CC) $(MW_CFLAGS) -fo=$@ external/libz/src/infback.c external/libz/src/inffast.obj: external/libz/src/inffast.c - $(CC) $(CFLAGS) -fo=$@ $< + $(CC) $(MW_CFLAGS) -fo=$@ external/libz/src/inffast.c external/libz/src/inflate.obj: external/libz/src/inflate.c - $(CC) $(CFLAGS) -fo=$@ $< + $(CC) $(MW_CFLAGS) -fo=$@ external/libz/src/inflate.c external/libz/src/inftrees.obj: external/libz/src/inftrees.c - $(CC) $(CFLAGS) -fo=$@ $< + $(CC) $(MW_CFLAGS) -fo=$@ external/libz/src/inftrees.c external/libz/src/trees.obj: external/libz/src/trees.c - $(CC) $(CFLAGS) -fo=$@ $< + $(CC) $(MW_CFLAGS) -fo=$@ external/libz/src/trees.c external/libz/src/uncompr.obj: external/libz/src/uncompr.c - $(CC) $(CFLAGS) -fo=$@ $< + $(CC) $(MW_CFLAGS) -fo=$@ external/libz/src/uncompr.c external/libz/src/zutil.obj: external/libz/src/zutil.c - $(CC) $(CFLAGS) -fo=$@ $< + $(CC) $(MW_CFLAGS) -fo=$@ external/libz/src/zutil.c external/stb_ds.obj: external/stb_ds.c - $(CC) $(CFLAGS) -fo=$@ $< + $(CC) $(MW_CFLAGS) -fo=$@ external/stb_ds.c external/stb_image.obj: external/stb_image.c - $(CC) $(CFLAGS) -fo=$@ $< + $(CC) $(MW_CFLAGS) -fo=$@ external/stb_image.c external/stb_truetype.obj: external/stb_truetype.c - $(CC) $(CFLAGS) -fo=$@ $< + $(CC) $(MW_CFLAGS) -fo=$@ external/stb_truetype.c src/abstract/charset.obj: src/abstract/charset.c - $(CC) $(CFLAGS) -fo=$@ $< + $(CC) $(MW_CFLAGS) -fo=$@ src/abstract/charset.c src/abstract/directory.obj: src/abstract/directory.c - $(CC) $(CFLAGS) -fo=$@ $< + $(CC) $(MW_CFLAGS) -fo=$@ src/abstract/directory.c src/abstract/dynamic.obj: src/abstract/dynamic.c - $(CC) $(CFLAGS) -fo=$@ $< + $(CC) $(MW_CFLAGS) -fo=$@ src/abstract/dynamic.c src/abstract/time.obj: src/abstract/time.c - $(CC) $(CFLAGS) -fo=$@ $< + $(CC) $(MW_CFLAGS) -fo=$@ src/abstract/time.c src/backend/gdi.obj: src/backend/gdi.c - $(CC) $(CFLAGS) -fo=$@ $< + $(CC) $(MW_CFLAGS) -fo=$@ src/backend/gdi.c src/color.obj: src/color.c - $(CC) $(CFLAGS) -fo=$@ $< + $(CC) $(MW_CFLAGS) -fo=$@ src/color.c src/core.obj: src/core.c - $(CC) $(CFLAGS) -fo=$@ $< + $(CC) $(MW_CFLAGS) -fo=$@ src/core.c src/cursor/arrow.obj: src/cursor/arrow.c - $(CC) $(CFLAGS) -fo=$@ $< + $(CC) $(MW_CFLAGS) -fo=$@ src/cursor/arrow.c src/cursor/cross.obj: src/cursor/cross.c - $(CC) $(CFLAGS) -fo=$@ $< + $(CC) $(MW_CFLAGS) -fo=$@ src/cursor/cross.c src/cursor/default.obj: src/cursor/default.c - $(CC) $(CFLAGS) -fo=$@ $< + $(CC) $(MW_CFLAGS) -fo=$@ src/cursor/default.c src/cursor/hidden.obj: src/cursor/hidden.c - $(CC) $(CFLAGS) -fo=$@ $< + $(CC) $(MW_CFLAGS) -fo=$@ src/cursor/hidden.c src/cursor/text.obj: src/cursor/text.c - $(CC) $(CFLAGS) -fo=$@ $< + $(CC) $(MW_CFLAGS) -fo=$@ src/cursor/text.c src/default.obj: src/default.c - $(CC) $(CFLAGS) -fo=$@ $< + $(CC) $(MW_CFLAGS) -fo=$@ src/default.c src/dialog/colorpicker.obj: src/dialog/colorpicker.c - $(CC) $(CFLAGS) -fo=$@ $< + $(CC) $(MW_CFLAGS) -fo=$@ src/dialog/colorpicker.c src/dialog/directorychooser.obj: src/dialog/directorychooser.c - $(CC) $(CFLAGS) -fo=$@ $< + $(CC) $(MW_CFLAGS) -fo=$@ src/dialog/directorychooser.c src/dialog/filechooser.obj: src/dialog/filechooser.c - $(CC) $(CFLAGS) -fo=$@ $< + $(CC) $(MW_CFLAGS) -fo=$@ src/dialog/filechooser.c src/dialog/messagebox.obj: src/dialog/messagebox.c - $(CC) $(CFLAGS) -fo=$@ $< + $(CC) $(MW_CFLAGS) -fo=$@ src/dialog/messagebox.c src/draw.obj: src/draw.c - $(CC) $(CFLAGS) -fo=$@ $< + $(CC) $(MW_CFLAGS) -fo=$@ src/draw.c src/icon/back.obj: src/icon/back.c - $(CC) $(CFLAGS) -fo=$@ $< + $(CC) $(MW_CFLAGS) -fo=$@ src/icon/back.c src/icon/clock.obj: src/icon/clock.c - $(CC) $(CFLAGS) -fo=$@ $< + $(CC) $(MW_CFLAGS) -fo=$@ src/icon/clock.c src/icon/computer.obj: src/icon/computer.c - $(CC) $(CFLAGS) -fo=$@ $< + $(CC) $(MW_CFLAGS) -fo=$@ src/icon/computer.c src/icon/directory.obj: src/icon/directory.c - $(CC) $(CFLAGS) -fo=$@ $< + $(CC) $(MW_CFLAGS) -fo=$@ src/icon/directory.c src/icon/down.obj: src/icon/down.c - $(CC) $(CFLAGS) -fo=$@ $< + $(CC) $(MW_CFLAGS) -fo=$@ src/icon/down.c src/icon/error.obj: src/icon/error.c - $(CC) $(CFLAGS) -fo=$@ $< + $(CC) $(MW_CFLAGS) -fo=$@ src/icon/error.c src/icon/file.obj: src/icon/file.c - $(CC) $(CFLAGS) -fo=$@ $< + $(CC) $(MW_CFLAGS) -fo=$@ src/icon/file.c src/icon/forward.obj: src/icon/forward.c - $(CC) $(CFLAGS) -fo=$@ $< + $(CC) $(MW_CFLAGS) -fo=$@ src/icon/forward.c src/icon/info.obj: src/icon/info.c - $(CC) $(CFLAGS) -fo=$@ $< + $(CC) $(MW_CFLAGS) -fo=$@ src/icon/info.c src/icon/left.obj: src/icon/left.c - $(CC) $(CFLAGS) -fo=$@ $< + $(CC) $(MW_CFLAGS) -fo=$@ src/icon/left.c src/icon/news.obj: src/icon/news.c - $(CC) $(CFLAGS) -fo=$@ $< + $(CC) $(MW_CFLAGS) -fo=$@ src/icon/news.c src/icon/note.obj: src/icon/note.c - $(CC) $(CFLAGS) -fo=$@ $< + $(CC) $(MW_CFLAGS) -fo=$@ src/icon/note.c src/icon/right.obj: src/icon/right.c - $(CC) $(CFLAGS) -fo=$@ $< + $(CC) $(MW_CFLAGS) -fo=$@ src/icon/right.c src/icon/search.obj: src/icon/search.c - $(CC) $(CFLAGS) -fo=$@ $< + $(CC) $(MW_CFLAGS) -fo=$@ src/icon/search.c src/icon/up.obj: src/icon/up.c - $(CC) $(CFLAGS) -fo=$@ $< + $(CC) $(MW_CFLAGS) -fo=$@ src/icon/up.c src/icon/warning.obj: src/icon/warning.c - $(CC) $(CFLAGS) -fo=$@ $< + $(CC) $(MW_CFLAGS) -fo=$@ src/icon/warning.c src/lowlevel.obj: src/lowlevel.c - $(CC) $(CFLAGS) -fo=$@ $< + $(CC) $(MW_CFLAGS) -fo=$@ src/lowlevel.c src/string.obj: src/string.c - $(CC) $(CFLAGS) -fo=$@ $< + $(CC) $(MW_CFLAGS) -fo=$@ src/string.c src/text/font/boldfont.obj: src/text/font/boldfont.c - $(CC) $(CFLAGS) -fo=$@ $< + $(CC) $(MW_CFLAGS) -fo=$@ src/text/font/boldfont.c src/text/font/boldmonottf.obj: src/text/font/boldmonottf.c - $(CC) $(CFLAGS) -fo=$@ $< + $(CC) $(MW_CFLAGS) -fo=$@ src/text/font/boldmonottf.c src/text/font/boldttf.obj: src/text/font/boldttf.c - $(CC) $(CFLAGS) -fo=$@ $< + $(CC) $(MW_CFLAGS) -fo=$@ src/text/font/boldttf.c src/text/font/font.obj: src/text/font/font.c - $(CC) $(CFLAGS) -fo=$@ $< + $(CC) $(MW_CFLAGS) -fo=$@ src/text/font/font.c src/text/font/monottf.obj: src/text/font/monottf.c - $(CC) $(CFLAGS) -fo=$@ $< + $(CC) $(MW_CFLAGS) -fo=$@ src/text/font/monottf.c src/text/font/ttf.obj: src/text/font/ttf.c - $(CC) $(CFLAGS) -fo=$@ $< + $(CC) $(MW_CFLAGS) -fo=$@ src/text/font/ttf.c src/text/ft2.obj: src/text/ft2.c - $(CC) $(CFLAGS) -fo=$@ $< + $(CC) $(MW_CFLAGS) -fo=$@ src/text/ft2.c src/text/stbtt.obj: src/text/stbtt.c - $(CC) $(CFLAGS) -fo=$@ $< + $(CC) $(MW_CFLAGS) -fo=$@ src/text/stbtt.c src/text/text.obj: src/text/text.c - $(CC) $(CFLAGS) -fo=$@ $< + $(CC) $(MW_CFLAGS) -fo=$@ src/text/text.c src/unicode.obj: src/unicode.c - $(CC) $(CFLAGS) -fo=$@ $< + $(CC) $(MW_CFLAGS) -fo=$@ src/unicode.c src/widget/box.obj: src/widget/box.c - $(CC) $(CFLAGS) -fo=$@ $< + $(CC) $(MW_CFLAGS) -fo=$@ src/widget/box.c src/widget/button.obj: src/widget/button.c - $(CC) $(CFLAGS) -fo=$@ $< + $(CC) $(MW_CFLAGS) -fo=$@ src/widget/button.c +src/widget/calendar.obj: src/widget/calendar.c + $(CC) $(MW_CFLAGS) -fo=$@ src/widget/calendar.c src/widget/checkbox.obj: src/widget/checkbox.c - $(CC) $(CFLAGS) -fo=$@ $< + $(CC) $(MW_CFLAGS) -fo=$@ src/widget/checkbox.c src/widget/combobox.obj: src/widget/combobox.c - $(CC) $(CFLAGS) -fo=$@ $< + $(CC) $(MW_CFLAGS) -fo=$@ src/widget/combobox.c src/widget/entry.obj: src/widget/entry.c - $(CC) $(CFLAGS) -fo=$@ $< + $(CC) $(MW_CFLAGS) -fo=$@ src/widget/entry.c src/widget/frame.obj: src/widget/frame.c - $(CC) $(CFLAGS) -fo=$@ $< + $(CC) $(MW_CFLAGS) -fo=$@ src/widget/frame.c src/widget/image.obj: src/widget/image.c - $(CC) $(CFLAGS) -fo=$@ $< + $(CC) $(MW_CFLAGS) -fo=$@ src/widget/image.c src/widget/label.obj: src/widget/label.c - $(CC) $(CFLAGS) -fo=$@ $< + $(CC) $(MW_CFLAGS) -fo=$@ src/widget/label.c src/widget/listbox.obj: src/widget/listbox.c - $(CC) $(CFLAGS) -fo=$@ $< + $(CC) $(MW_CFLAGS) -fo=$@ src/widget/listbox.c src/widget/menu.obj: src/widget/menu.c - $(CC) $(CFLAGS) -fo=$@ $< + $(CC) $(MW_CFLAGS) -fo=$@ src/widget/menu.c src/widget/numberentry.obj: src/widget/numberentry.c - $(CC) $(CFLAGS) -fo=$@ $< + $(CC) $(MW_CFLAGS) -fo=$@ src/widget/numberentry.c src/widget/opengl.obj: src/widget/opengl.c - $(CC) $(CFLAGS) -fo=$@ $< + $(CC) $(MW_CFLAGS) -fo=$@ src/widget/opengl.c src/widget/progressbar.obj: src/widget/progressbar.c - $(CC) $(CFLAGS) -fo=$@ $< + $(CC) $(MW_CFLAGS) -fo=$@ src/widget/progressbar.c src/widget/radiobox.obj: src/widget/radiobox.c - $(CC) $(CFLAGS) -fo=$@ $< + $(CC) $(MW_CFLAGS) -fo=$@ src/widget/radiobox.c src/widget/scrollbar.obj: src/widget/scrollbar.c - $(CC) $(CFLAGS) -fo=$@ $< + $(CC) $(MW_CFLAGS) -fo=$@ src/widget/scrollbar.c src/widget/separator.obj: src/widget/separator.c - $(CC) $(CFLAGS) -fo=$@ $< + $(CC) $(MW_CFLAGS) -fo=$@ src/widget/separator.c src/widget/submenu.obj: src/widget/submenu.c - $(CC) $(CFLAGS) -fo=$@ $< + $(CC) $(MW_CFLAGS) -fo=$@ src/widget/submenu.c src/widget/subwindow.obj: src/widget/subwindow.c - $(CC) $(CFLAGS) -fo=$@ $< + $(CC) $(MW_CFLAGS) -fo=$@ src/widget/subwindow.c src/widget/treeview.obj: src/widget/treeview.c - $(CC) $(CFLAGS) -fo=$@ $< + $(CC) $(MW_CFLAGS) -fo=$@ src/widget/treeview.c src/widget/viewport.obj: src/widget/viewport.c - $(CC) $(CFLAGS) -fo=$@ $< + $(CC) $(MW_CFLAGS) -fo=$@ src/widget/viewport.c src/widget/window.obj: src/widget/window.c - $(CC) $(CFLAGS) -fo=$@ $< + $(CC) $(MW_CFLAGS) -fo=$@ src/widget/window.c diff --git a/examples/basic/subwindow.c b/examples/basic/subwindow.c index c18efdf..9625e18 100644 --- a/examples/basic/subwindow.c +++ b/examples/basic/subwindow.c @@ -2,7 +2,7 @@ #define Shift 16 -static void resize(MwWidget handle, void* user, void* client) { +static void MWAPI resize(MwWidget handle, void* user, void* client) { MwWidget f = MwSubWindowGetFrame(handle); MwVaApply(user, MwNwidth, MwGetInteger(f, MwNwidth), diff --git a/tools/genmk.pl b/tools/genmk.pl index ae03d9f..0ac29a8 100755 --- a/tools/genmk.pl +++ b/tools/genmk.pl @@ -1,5 +1,6 @@ #!/usr/bin/env perl my @cfiles = (); +my @examples = (); sub scan { opendir(DIR, $_[0]); @@ -15,6 +16,17 @@ sub scan { closedir(DIR); } +sub scan_examples { + opendir(DIR, $_[0]); + my @files = readdir(DIR); + foreach my $f (@files) { + if ($f =~ /\.c$/) { + push(@examples, $_[0] . "/" . $f); + } + } + closedir(DIR); +} + sub cobjs { my $r = ""; foreach my $f (@cfiles) { @@ -39,9 +51,12 @@ sub generate { my $del = "del /f /q"; my $out = ""; my $dllout = ""; + my $exeout = ""; my $def = ""; my $inc = ""; + my $cdll = ""; my $dll = ""; + my $exe = ""; my $prefobj = ""; my $needlibs = ""; my $lib = ""; @@ -53,6 +68,7 @@ sub generate { $link = "bcc32"; $out = "-o"; $dllout = "-e"; + $exeout = "-e"; $def = "-D"; $inc = "-I"; $dll = "-tWD"; @@ -65,18 +81,22 @@ sub generate { $link = "link /nologo"; $out = "/Fo"; $dllout = "/OUT:"; + $exeout = "/OUT:"; $def = "/D"; $inc = "/I"; $dll = "/DLL"; } elsif ($type eq "Watcom") { - $cc = "wcc386 -bt=nt -q -bd"; + $cc = "wcc386 -bt=nt -q"; $link = "wlink option quiet"; $out = "-fo="; $dllout = "name "; + $exeout = "name "; $def = "-d"; $inc = "-i="; + $cdll = "-bd"; $dll = "system nt_dll"; + $exe = "system nt"; $lib = "library "; $suffix = 0; # watcom suffix rule works kinda strange @@ -93,15 +113,23 @@ sub generate { print(OUT "LD = $link\n"); print(OUT "\n"); print(OUT -"CFLAGS = ${inc}include ${inc}external${dir}libz${dir}include ${def}_MILSKO ${def}USE_GDI ${def}USE_STB_TRUETYPE ${def}USE_STB_IMAGE ${def}STBI_NO_SIMD\n" +"MW_CFLAGS = ${cdll} ${inc}include ${inc}external${dir}libz${dir}include ${def}_MILSKO ${def}USE_GDI ${def}USE_STB_TRUETYPE ${def}USE_STB_IMAGE ${def}STBI_NO_SIMD\n" ); - print(OUT "LDFLAGS = $dll"); + print(OUT "MW_LDFLAGS = $dll\n"); + print(OUT "EXE_CFLAGS = ${inc}include\n"); + print(OUT "EXE_LDFLAGS = $exe"); print(OUT "\n"); - if ($suffix) { print(OUT ".SUFFIXES: .obj .c\n"); } - print(OUT "all: src${dir}Mw.dll\n"); + print(OUT "all: src${dir}Mw.dll"); + foreach my $f (@examples) { + $b = $f; + $b =~ s/\.c$/.exe/; + $b =~ s/\//$dir/g; + print(OUT " $b"); + } + print(OUT "\n"); print(OUT "clean: $symbolic\n"); foreach my $f (@cfiles) { my $b = $f; @@ -109,17 +137,38 @@ sub generate { $b =~ s/\//$dir/g; print(OUT " $del $b\n"); } - foreach my $f (@cxxfiles) { + print(OUT " $del src${dir}Mw.dll\n"); + print(OUT " $del src${dir}Mw.lib\n"); + foreach my $f (@examples) { my $b = $f; $b =~ s/\.c$/.obj/; $b =~ s/\//$dir/g; print(OUT " $del $b\n"); } - print(OUT " $del src${dir}Mw.dll\n"); - print(OUT " $del src${dir}Mw.lib\n"); + foreach my $f (@examples) { + $b = $f; + $b =~ s/\.c$/.exe/; + $b =~ s/\//$dir/g; + print(OUT " $del $b\n"); + } + print(OUT "\n"); + foreach my $f (@examples) { + my $b = $f; + $b =~ s/\.c$/.exe/; + $b =~ s/\//$dir/g; + my $o = $f; + $o =~ s/\.c$/.obj/; + $o =~ s/\//$dir/g; + print(OUT "$b: $o src${dir}Mw.dll\n"); + print(OUT " \$(LD) \$(EXE_LDFLAGS) $exeout\$@ $prefobj$o $needlibs ${lib}src${dir}Mw.lib\n"); + print(OUT "\n"); + print(OUT "$o: $f\n"); + print(OUT " \$(CC) \$(EXE_CFLAGS) ${out}\$@ $f\n"); + print(OUT "\n"); + } print(OUT "\n"); print(OUT "src${dir}Mw.dll: " . cobjs($dir) . "\n"); - print( OUT " \$(LD) \$(LDFLAGS) $c_dllout $dllout\$@ " + print( OUT " \$(LD) \$(MW_LDFLAGS) $c_dllout $dllout\$@ " . cobjs($dir, $prefobj) . " $needlibs ${lib}opengl32.lib ${lib}gdi32.lib ${lib}user32.lib ${lib}advapi32.lib\n" ); @@ -128,7 +177,7 @@ sub generate { if ($suffix) { print(OUT ".c.obj:\n"); - print(OUT " \$(CC) \$(CFLAGS) ${out}\$@ \$<\n"); + print(OUT " \$(CC) \$(MW_CFLAGS) ${out}\$@ \$<\n"); } else { print(OUT "\n"); @@ -136,7 +185,7 @@ sub generate { my $o = $f; $o =~ s/\.c$/.obj/; print(OUT "$o: $f\n"); - print(OUT " \$(CC) \$(CFLAGS) ${out}\$@ \$<\n"); + print(OUT " \$(CC) \$(MW_CFLAGS) ${out}\$@ $f\n"); } } close(OUT); @@ -156,6 +205,10 @@ push(@cfiles, "src/backend/gdi.c"); @cfiles = sort(@cfiles); +scan_examples("examples/basic"); + +@examples = sort(@examples); + generate("BorMakefile", "Borland"); generate("NTMakefile", "MSVC"); generate("WatMakefile", "Watcom");