summaryrefslogtreecommitdiff
path: root/Makefile.mingw
diff options
context:
space:
mode:
authorJonas Kümmerlin <jonas@kuemmerlin.eu>2019-01-12 00:03:32 +0100
committerJonas Kümmerlin <jonas@kuemmerlin.eu>2019-01-12 00:03:32 +0100
commit02d94ecd62e11e28ba87451c392cc6b633bb5c56 (patch)
tree1439941681d3497167e868146d6c9f8aed764d9c /Makefile.mingw
parenta5e78ec91b1c59233260bc776a309804352cd817 (diff)
add amalgamation target
Diffstat (limited to 'Makefile.mingw')
-rw-r--r--Makefile.mingw47
1 files changed, 33 insertions, 14 deletions
diff --git a/Makefile.mingw b/Makefile.mingw
index ce71482..a7f2583 100644
--- a/Makefile.mingw
+++ b/Makefile.mingw
@@ -1,45 +1,64 @@
# automatically created by makemakefile.sh. DO NOT EDIT!
+CC = i686-w64-mingw32-gcc
CXX = i686-w64-mingw32-c++
-CFLAGS = -std=c++98 -Wall -Wextra -mwindows -municode -DUNICODE -D_UNICODE -fno-exceptions -fno-rtti -gstabs
+CFLAGS = -std=c99 -Wall -Wextra -mwindows -municode -DUNICODE -D_UNICODE -gstabs
+CXXFLAGS = -std=c++98 -Wall -Wextra -mwindows -municode -DUNICODE -D_UNICODE -fno-exceptions -fno-rtti -gstabs
LDFLAGS = -luser32 -lcomctl32 -lshell32 -lversion -static
+all: out/widgetfactory.exe out/alf/alf.c out/widgetfactory-c.exe
+
out/widgetfactory.exe: out/widgetfactory.o out/alfbutton.o out/alfcombobox.o out/alfcompat.o out/alf.o out/alfdpiaware.o out/alfedit.o out/alflabel.o out/alflayout.o out/alfpanel.o out/alfspacer.o
- $(CXX) $(CFLAGS) -o $@ $^ $(LDFLAGS)
+ $(CXX) $(CXXFLAGS) -o $@ $^ $(LDFLAGS)
out/alfbutton.o: alf/alfbutton.cpp alf/alfcompat.h alf/alf.h alf/alflayout.h alf/alflist.h alf/alfpriv.h
- $(CXX) $(CFLAGS) -c -o $@ $<
+ $(CXX) $(CXXFLAGS) -c -o $@ $<
out/alfcombobox.o: alf/alfcombobox.cpp alf/alfcompat.h alf/alf.h alf/alflayout.h alf/alflist.h alf/alfpriv.h
- $(CXX) $(CFLAGS) -c -o $@ $<
+ $(CXX) $(CXXFLAGS) -c -o $@ $<
out/alfcompat.o: alf/alfcompat.cpp alf/alfcompat.h alf/alf.h alf/alflayout.h alf/alflist.h alf/alfpriv.h
- $(CXX) $(CFLAGS) -c -o $@ $<
+ $(CXX) $(CXXFLAGS) -c -o $@ $<
out/alf.o: alf/alf.cpp alf/alfcompat.h alf/alf.h alf/alflayout.h alf/alflist.h alf/alfpriv.h
- $(CXX) $(CFLAGS) -c -o $@ $<
+ $(CXX) $(CXXFLAGS) -c -o $@ $<
out/alfdpiaware.o: alf/alfdpiaware.cpp alf/alfcompat.h alf/alf.h alf/alflayout.h alf/alflist.h alf/alfpriv.h
- $(CXX) $(CFLAGS) -c -o $@ $<
+ $(CXX) $(CXXFLAGS) -c -o $@ $<
out/alfedit.o: alf/alfedit.cpp alf/alfcompat.h alf/alf.h alf/alflayout.h alf/alflist.h alf/alfpriv.h
- $(CXX) $(CFLAGS) -c -o $@ $<
+ $(CXX) $(CXXFLAGS) -c -o $@ $<
out/alflabel.o: alf/alflabel.cpp alf/alfcompat.h alf/alf.h alf/alflayout.h alf/alflist.h alf/alfpriv.h
- $(CXX) $(CFLAGS) -c -o $@ $<
+ $(CXX) $(CXXFLAGS) -c -o $@ $<
out/alflayout.o: alf/alflayout.cpp alf/alfcompat.h alf/alf.h alf/alflayout.h alf/alflist.h alf/alfpriv.h
- $(CXX) $(CFLAGS) -c -o $@ $<
+ $(CXX) $(CXXFLAGS) -c -o $@ $<
out/alfpanel.o: alf/alfpanel.cpp alf/alfcompat.h alf/alf.h alf/alflayout.h alf/alflist.h alf/alfpriv.h
- $(CXX) $(CFLAGS) -c -o $@ $<
+ $(CXX) $(CXXFLAGS) -c -o $@ $<
out/alfspacer.o: alf/alfspacer.cpp alf/alfcompat.h alf/alf.h alf/alflayout.h alf/alflist.h alf/alfpriv.h
- $(CXX) $(CFLAGS) -c -o $@ $<
+ $(CXX) $(CXXFLAGS) -c -o $@ $<
out/widgetfactory.o: widgetfactory.cpp alf/alf.h
- $(CXX) $(CFLAGS) -c -o $@ $<
+ $(CXX) $(CXXFLAGS) -c -o $@ $<
+
+out/alf/alf.c: alf/alflist.h alf/alflayout.h alf/alfcompat.h alf/alfpriv.h alf/alfbutton.cpp alf/alfcombobox.cpp alf/alfcompat.cpp alf/alf.cpp alf/alfdpiaware.cpp alf/alfedit.cpp alf/alflabel.cpp alf/alflayout.cpp alf/alfpanel.cpp alf/alfspacer.cpp
+ @mkdir -p out/alf
+ @printf "#include \"alf.h\"\\n" > $@
+ @cat $^ | grep -v "^#pragma once" | grep -v "^#include \"alf" >> $@
+
+out/alf/alf.h: alf/alf.h
+ @mkdir -p out/alf
+ @cp $< $@
+
+out/widgetfactory.c: widgetfactory.cpp
+ @cp $< $@
+
+out/widgetfactory-c.exe: out/widgetfactory.c out/alf/alf.h out/alf/alf.c
+ $(CC) $(CFLAGS) -o $@ out/widgetfactory.c out/alf/alf.c $(LDFLAGS)
clean:
- rm -f out/*.o out/*.exe
+ rm -rf out/*.o out/*.exe out/*.c out/*.h out/alf