annotate Makefile.gen @ 262:847917a62ea2

Build system cleanups.
author Matti Hamalainen <ccr@tnsp.org>
date Tue, 14 Jan 2020 03:08:32 +0200
parents 14ed3a2500e6
children f0e180b13e05
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
50
402446a76794 And more build system work.
Matti Hamalainen <ccr@tnsp.org>
parents: 49
diff changeset
1 ###
262
847917a62ea2 Build system cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents: 259
diff changeset
2 ### Compiler flags
50
402446a76794 And more build system work.
Matti Hamalainen <ccr@tnsp.org>
parents: 49
diff changeset
3 ###
184
87dfca9f704d Move optimization and warning CFLAGS and CXXFLAGS to Makefile.gen
Matti Hamalainen <ccr@tnsp.org>
parents: 157
diff changeset
4 CFLAGS += -O2 -W -Wall -Wextra
208
e6a2658ae096 Enable building via clang++ (tested with 5.0).
Matti Hamalainen <ccr@tnsp.org>
parents: 192
diff changeset
5 CXXFLAGS += -O2 -W -Wall -Wextra -std=c++11
184
87dfca9f704d Move optimization and warning CFLAGS and CXXFLAGS to Makefile.gen
Matti Hamalainen <ccr@tnsp.org>
parents: 157
diff changeset
6
262
847917a62ea2 Build system cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents: 259
diff changeset
7
847917a62ea2 Build system cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents: 259
diff changeset
8 ###
847917a62ea2 Build system cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents: 259
diff changeset
9 ### Tools, paths and directories
847917a62ea2 Build system cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents: 259
diff changeset
10 ###
208
e6a2658ae096 Enable building via clang++ (tested with 5.0).
Matti Hamalainen <ccr@tnsp.org>
parents: 192
diff changeset
11 ifneq ($(BINTOOL_PREFIX),)
48
200ec310660a Begin revamp of the buildsystem, don't use qmake anymore.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
12 CC = $(BINTOOL_PREFIX)gcc
200ec310660a Begin revamp of the buildsystem, don't use qmake anymore.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
13 CXX = $(BINTOOL_PREFIX)g++
200ec310660a Begin revamp of the buildsystem, don't use qmake anymore.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
14 AR = $(BINTOOL_PREFIX)ar
208
e6a2658ae096 Enable building via clang++ (tested with 5.0).
Matti Hamalainen <ccr@tnsp.org>
parents: 192
diff changeset
15 endif
48
200ec310660a Begin revamp of the buildsystem, don't use qmake anymore.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
16 RANLIB = $(BINTOOL_PREFIX)ranlib
49
b86eb06070ba More work on buildsystem.
Matti Hamalainen <ccr@tnsp.org>
parents: 48
diff changeset
17 WINDRES = $(BINTOOL_PREFIX)windres
b86eb06070ba More work on buildsystem.
Matti Hamalainen <ccr@tnsp.org>
parents: 48
diff changeset
18
262
847917a62ea2 Build system cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents: 259
diff changeset
19
48
200ec310660a Begin revamp of the buildsystem, don't use qmake anymore.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
20 INSTALL ?= install
200ec310660a Begin revamp of the buildsystem, don't use qmake anymore.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
21 MKDIR ?= mkdir
200ec310660a Begin revamp of the buildsystem, don't use qmake anymore.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
22 MKDIR_P ?= $(MKDIR) -p
200ec310660a Begin revamp of the buildsystem, don't use qmake anymore.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
23
262
847917a62ea2 Build system cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents: 259
diff changeset
24
847917a62ea2 Build system cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents: 259
diff changeset
25 ###
847917a62ea2 Build system cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents: 259
diff changeset
26 ### Main targets and objects
847917a62ea2 Build system cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents: 259
diff changeset
27 ###
234
4a993456df9f Cleanup.
Matti Hamalainen <ccr@tnsp.org>
parents: 233
diff changeset
28 DEFINES += -DQT_DEPRECATED_WARNINGS -DQT_NO_DEBUG \
4a993456df9f Cleanup.
Matti Hamalainen <ccr@tnsp.org>
parents: 233
diff changeset
29 -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_SQL_LIB \
4a993456df9f Cleanup.
Matti Hamalainen <ccr@tnsp.org>
parents: 233
diff changeset
30 -DQT_CORE_LIB
48
200ec310660a Begin revamp of the buildsystem, don't use qmake anymore.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
31
50
402446a76794 And more build system work.
Matti Hamalainen <ccr@tnsp.org>
parents: 49
diff changeset
32 # Application stuff
80
c8fd927cd2c4 Restructure the project by placing source code, images into appropriate
Matti Hamalainen <ccr@tnsp.org>
parents: 76
diff changeset
33 APP_IMG=img/
49
b86eb06070ba More work on buildsystem.
Matti Hamalainen <ccr@tnsp.org>
parents: 48
diff changeset
34 APP_BIN=$(BINPATH)Syntilista$(EXEEXT)
233
6a12c82d082e Cleanup build.
Matti Hamalainen <ccr@tnsp.org>
parents: 231
diff changeset
35
6a12c82d082e Cleanup build.
Matti Hamalainen <ccr@tnsp.org>
parents: 231
diff changeset
36 APP_HDRS=\
6a12c82d082e Cleanup build.
Matti Hamalainen <ccr@tnsp.org>
parents: 231
diff changeset
37 src/main.h \
246
43a5e09bb832 Split some utility functions to util.{h,cpp}
Matti Hamalainen <ccr@tnsp.org>
parents: 242
diff changeset
38 src/util.h \
233
6a12c82d082e Cleanup build.
Matti Hamalainen <ccr@tnsp.org>
parents: 231
diff changeset
39 src/ui_viewtransactions.h \
6a12c82d082e Cleanup build.
Matti Hamalainen <ccr@tnsp.org>
parents: 231
diff changeset
40 src/ui_mainwindow.h \
6a12c82d082e Cleanup build.
Matti Hamalainen <ccr@tnsp.org>
parents: 231
diff changeset
41 src/ui_editperson.h \
6a12c82d082e Cleanup build.
Matti Hamalainen <ccr@tnsp.org>
parents: 231
diff changeset
42 src/ui_aboutwindow.h
6a12c82d082e Cleanup build.
Matti Hamalainen <ccr@tnsp.org>
parents: 231
diff changeset
43
237
54ab3f3e28c0 Split EditPerson and ViewTransactions to separate source files.
Matti Hamalainen <ccr@tnsp.org>
parents: 234
diff changeset
44 APP_OBJS=\
54ab3f3e28c0 Split EditPerson and ViewTransactions to separate source files.
Matti Hamalainen <ccr@tnsp.org>
parents: 234
diff changeset
45 main.o \
246
43a5e09bb832 Split some utility functions to util.{h,cpp}
Matti Hamalainen <ccr@tnsp.org>
parents: 242
diff changeset
46 util.o \
237
54ab3f3e28c0 Split EditPerson and ViewTransactions to separate source files.
Matti Hamalainen <ccr@tnsp.org>
parents: 234
diff changeset
47 editperson.o \
54ab3f3e28c0 Split EditPerson and ViewTransactions to separate source files.
Matti Hamalainen <ccr@tnsp.org>
parents: 234
diff changeset
48 viewtransactions.o \
242
3d3ba5759cac Move about-window code to separate file.
Matti Hamalainen <ccr@tnsp.org>
parents: 238
diff changeset
49 aboutwindow.o \
237
54ab3f3e28c0 Split EditPerson and ViewTransactions to separate source files.
Matti Hamalainen <ccr@tnsp.org>
parents: 234
diff changeset
50 sqlmodels.o \
54ab3f3e28c0 Split EditPerson and ViewTransactions to separate source files.
Matti Hamalainen <ccr@tnsp.org>
parents: 234
diff changeset
51 printing.o \
54ab3f3e28c0 Split EditPerson and ViewTransactions to separate source files.
Matti Hamalainen <ccr@tnsp.org>
parents: 234
diff changeset
52 resources.o \
54ab3f3e28c0 Split EditPerson and ViewTransactions to separate source files.
Matti Hamalainen <ccr@tnsp.org>
parents: 234
diff changeset
53 moc_main.o \
54ab3f3e28c0 Split EditPerson and ViewTransactions to separate source files.
Matti Hamalainen <ccr@tnsp.org>
parents: 234
diff changeset
54 runguard.o
48
200ec310660a Begin revamp of the buildsystem, don't use qmake anymore.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
55
200ec310660a Begin revamp of the buildsystem, don't use qmake anymore.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
56 LOGO_SVG ?= kampuscafe4.svg
192
dfe5e8d7c58a Use the finalized Cafe Kampus logo.
Matti Hamalainen <ccr@tnsp.org>
parents: 184
diff changeset
57 LOGO_IMG ?= CafeKampus_logo_FINAL_RGB.png
52
1ac8fdd932b3 More work on build system.
Matti Hamalainen <ccr@tnsp.org>
parents: 50
diff changeset
58 ICON_PNGS = icon-64.png icon-48.png icon-32.png icon-16.png
48
200ec310660a Begin revamp of the buildsystem, don't use qmake anymore.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
59
231
e90dba0cd12a Implement HTML stuff for about dialog.
Matti Hamalainen <ccr@tnsp.org>
parents: 228
diff changeset
60 APP_RESOURCES += $(addprefix $(APP_IMG),logo.png $(ICON_PNGS)) COPYING.html
56
ac3daf42f781 Rename some files.
Matti Hamalainen <ccr@tnsp.org>
parents: 55
diff changeset
61
50
402446a76794 And more build system work.
Matti Hamalainen <ccr@tnsp.org>
parents: 49
diff changeset
62 # And target lists
49
b86eb06070ba More work on buildsystem.
Matti Hamalainen <ccr@tnsp.org>
parents: 48
diff changeset
63 TARGETS = $(APP_BIN)
258
daaad6ad8212 Build system improvements.
Matti Hamalainen <ccr@tnsp.org>
parents: 246
diff changeset
64 NOBUILD_TARGETS +=
81
810ca71af506 Improve 'clean' target handling.
Matti Hamalainen <ccr@tnsp.org>
parents: 80
diff changeset
65 NOINST_TARGETS +=
233
6a12c82d082e Cleanup build.
Matti Hamalainen <ccr@tnsp.org>
parents: 231
diff changeset
66 CLEAN_TARGETS += icon.ico src/moc_*.cpp src/ui_*.h
81
810ca71af506 Improve 'clean' target handling.
Matti Hamalainen <ccr@tnsp.org>
parents: 80
diff changeset
67 DISTCLEAN_TARGETS +=
48
200ec310660a Begin revamp of the buildsystem, don't use qmake anymore.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
68
200ec310660a Begin revamp of the buildsystem, don't use qmake anymore.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
69
233
6a12c82d082e Cleanup build.
Matti Hamalainen <ccr@tnsp.org>
parents: 231
diff changeset
70 # Version
6a12c82d082e Cleanup build.
Matti Hamalainen <ccr@tnsp.org>
parents: 231
diff changeset
71 APP_VERSION := $(shell cat VERSION)
6a12c82d082e Cleanup build.
Matti Hamalainen <ccr@tnsp.org>
parents: 231
diff changeset
72 comma:= ,
6a12c82d082e Cleanup build.
Matti Hamalainen <ccr@tnsp.org>
parents: 231
diff changeset
73 APP_VERSION_COM := $(subst .,$(comma),$(APP_VERSION))
6a12c82d082e Cleanup build.
Matti Hamalainen <ccr@tnsp.org>
parents: 231
diff changeset
74 CXXFLAGS += -DAPP_VERSION=\"$(APP_VERSION)\"
6a12c82d082e Cleanup build.
Matti Hamalainen <ccr@tnsp.org>
parents: 231
diff changeset
75
6a12c82d082e Cleanup build.
Matti Hamalainen <ccr@tnsp.org>
parents: 231
diff changeset
76
262
847917a62ea2 Build system cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents: 259
diff changeset
77 ###
847917a62ea2 Build system cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents: 259
diff changeset
78 ### Functions and compilation/link commands
847917a62ea2 Build system cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents: 259
diff changeset
79 ###
258
daaad6ad8212 Build system improvements.
Matti Hamalainen <ccr@tnsp.org>
parents: 246
diff changeset
80 ifneq ($(V),1)
262
847917a62ea2 Build system cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents: 259
diff changeset
81 DO_CMD=/bin/echo -E " $(1) $(2)" && $(3)
258
daaad6ad8212 Build system improvements.
Matti Hamalainen <ccr@tnsp.org>
parents: 246
diff changeset
82 else
262
847917a62ea2 Build system cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents: 259
diff changeset
83 DO_CMD=/bin/echo -E $(3) && $(3)
258
daaad6ad8212 Build system improvements.
Matti Hamalainen <ccr@tnsp.org>
parents: 246
diff changeset
84 endif
262
847917a62ea2 Build system cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents: 259
diff changeset
85 DO_MKDIR=if test ! -d "$(1)"; then mkdir -p "$(1)"; fi
847917a62ea2 Build system cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents: 259
diff changeset
86
847917a62ea2 Build system cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents: 259
diff changeset
87
847917a62ea2 Build system cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents: 259
diff changeset
88 COMPILE_C_OBJ = \
847917a62ea2 Build system cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents: 259
diff changeset
89 @$(call DO_MKDIR,$(OBJPATH)) ; \
847917a62ea2 Build system cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents: 259
diff changeset
90 $(call DO_CMD,CC,$<,$(CC) $(CFLAGS) $(DM_CFLAGS) -c -o $@ $< $(1))
847917a62ea2 Build system cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents: 259
diff changeset
91
847917a62ea2 Build system cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents: 259
diff changeset
92 LINK_C_BIN = \
847917a62ea2 Build system cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents: 259
diff changeset
93 @$(call DO_MKDIR,$(BINPATH)) ; \
847917a62ea2 Build system cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents: 259
diff changeset
94 $(call DO_CMD,LINK,$@,$(CC) -o $@ $(filter %.o %.a,$+) $(LDFLAGS) $(1))
847917a62ea2 Build system cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents: 259
diff changeset
95
847917a62ea2 Build system cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents: 259
diff changeset
96 COMPILE_CXX_OBJ = \
847917a62ea2 Build system cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents: 259
diff changeset
97 @$(call DO_MKDIR,$(OBJPATH)) ; \
847917a62ea2 Build system cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents: 259
diff changeset
98 $(call DO_CMD,CXX,$<,$(CXX) $(CXXFLAGS) $(DM_CFLAGS) -c -o $@ $< $(1))
847917a62ea2 Build system cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents: 259
diff changeset
99
847917a62ea2 Build system cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents: 259
diff changeset
100 LINK_CXX_BIN = \
847917a62ea2 Build system cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents: 259
diff changeset
101 @$(call DO_MKDIR,$(BINPATH)) ; \
847917a62ea2 Build system cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents: 259
diff changeset
102 $(call DO_CMD,LINK,$@,$(CXX) -o $@ $(filter %.o %.a,$+) $(LDFLAGS) $(1))
847917a62ea2 Build system cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents: 259
diff changeset
103
847917a62ea2 Build system cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents: 259
diff changeset
104 LINK_STATIC_LIB = \
847917a62ea2 Build system cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents: 259
diff changeset
105 @$(call DO_MKDIR,$(OBJPATH)) ; \
847917a62ea2 Build system cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents: 259
diff changeset
106 $(call DO_CMD,AR,$@ $(filter %.o,$+),$(AR) cru $@ $(filter %.o,$+)) ; \
847917a62ea2 Build system cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents: 259
diff changeset
107 $(call DO_CMD,RANLIB,$@,$(RANLIB) $@)
258
daaad6ad8212 Build system improvements.
Matti Hamalainen <ccr@tnsp.org>
parents: 246
diff changeset
108
daaad6ad8212 Build system improvements.
Matti Hamalainen <ccr@tnsp.org>
parents: 246
diff changeset
109
50
402446a76794 And more build system work.
Matti Hamalainen <ccr@tnsp.org>
parents: 49
diff changeset
110 ###
262
847917a62ea2 Build system cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents: 259
diff changeset
111 ### Generic target rules
50
402446a76794 And more build system work.
Matti Hamalainen <ccr@tnsp.org>
parents: 49
diff changeset
112 ###
48
200ec310660a Begin revamp of the buildsystem, don't use qmake anymore.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
113 all: $(NOBUILD_TARGETS) $(NOINST_TARGETS) $(TARGETS)
200ec310660a Begin revamp of the buildsystem, don't use qmake anymore.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
114
200ec310660a Begin revamp of the buildsystem, don't use qmake anymore.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
115
50
402446a76794 And more build system work.
Matti Hamalainen <ccr@tnsp.org>
parents: 49
diff changeset
116 moc_predefs.h:
402446a76794 And more build system work.
Matti Hamalainen <ccr@tnsp.org>
parents: 49
diff changeset
117 @echo "" > $(OBJPATH)dummy.cpp
402446a76794 And more build system work.
Matti Hamalainen <ccr@tnsp.org>
parents: 49
diff changeset
118 @$(CXX) $(CXXFLAGS) -dM -E -o $@ $(OBJPATH)dummy.cpp
402446a76794 And more build system work.
Matti Hamalainen <ccr@tnsp.org>
parents: 49
diff changeset
119
402446a76794 And more build system work.
Matti Hamalainen <ccr@tnsp.org>
parents: 49
diff changeset
120 moc_%.cpp: %.h $(QT_MOC_RULES)
48
200ec310660a Begin revamp of the buildsystem, don't use qmake anymore.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
121 @echo " Qt::MOC $@ $<"
200ec310660a Begin revamp of the buildsystem, don't use qmake anymore.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
122 @$(QT_MOC) $(DEFINES) $(QT_MOC_FLAGS) $(INCPATH) $< -o $@
200ec310660a Begin revamp of the buildsystem, don't use qmake anymore.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
123
200ec310660a Begin revamp of the buildsystem, don't use qmake anymore.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
124 ui_%.h: %.ui
238
d8c3043c00a0 Adjust build system.
Matti Hamalainen <ccr@tnsp.org>
parents: 237
diff changeset
125 @echo " Qt::UIC $@ $<"
48
200ec310660a Begin revamp of the buildsystem, don't use qmake anymore.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
126 @$(QT_UIC) $(QT_UIC_FLAGS) $< -o $@
200ec310660a Begin revamp of the buildsystem, don't use qmake anymore.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
127
200ec310660a Begin revamp of the buildsystem, don't use qmake anymore.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
128
233
6a12c82d082e Cleanup build.
Matti Hamalainen <ccr@tnsp.org>
parents: 231
diff changeset
129 $(OBJPATH)%.o: src/%.cpp src/%.h
258
daaad6ad8212 Build system improvements.
Matti Hamalainen <ccr@tnsp.org>
parents: 246
diff changeset
130 $(COMPILE_CXX_OBJ) $(DEFINES) $(INCPATH)
48
200ec310660a Begin revamp of the buildsystem, don't use qmake anymore.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
131
233
6a12c82d082e Cleanup build.
Matti Hamalainen <ccr@tnsp.org>
parents: 231
diff changeset
132 $(OBJPATH)%.o: src/%.cpp
258
daaad6ad8212 Build system improvements.
Matti Hamalainen <ccr@tnsp.org>
parents: 246
diff changeset
133 $(COMPILE_CXX_OBJ) $(DEFINES) $(INCPATH)
48
200ec310660a Begin revamp of the buildsystem, don't use qmake anymore.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
134
200ec310660a Begin revamp of the buildsystem, don't use qmake anymore.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
135
49
b86eb06070ba More work on buildsystem.
Matti Hamalainen <ccr@tnsp.org>
parents: 48
diff changeset
136
50
402446a76794 And more build system work.
Matti Hamalainen <ccr@tnsp.org>
parents: 49
diff changeset
137 ###
402446a76794 And more build system work.
Matti Hamalainen <ccr@tnsp.org>
parents: 49
diff changeset
138 ### Windows specific rules
402446a76794 And more build system work.
Matti Hamalainen <ccr@tnsp.org>
parents: 49
diff changeset
139 ###
56
ac3daf42f781 Rename some files.
Matti Hamalainen <ccr@tnsp.org>
parents: 55
diff changeset
140 %.rc: %.rc.in icon.ico VERSION
50
402446a76794 And more build system work.
Matti Hamalainen <ccr@tnsp.org>
parents: 49
diff changeset
141 @sed -e "s/@APP_VERSION@/$(APP_VERSION)/g;s/@APP_VERSION_COM@/$(APP_VERSION_COM)/g;s#@APP_EXE@#$(notdir $(APP_BIN))#g" < $< > $@
49
b86eb06070ba More work on buildsystem.
Matti Hamalainen <ccr@tnsp.org>
parents: 48
diff changeset
142
233
6a12c82d082e Cleanup build.
Matti Hamalainen <ccr@tnsp.org>
parents: 231
diff changeset
143 $(OBJPATH)%.o: src/%.rc
50
402446a76794 And more build system work.
Matti Hamalainen <ccr@tnsp.org>
parents: 49
diff changeset
144 @echo " WINDRES $<"
402446a76794 And more build system work.
Matti Hamalainen <ccr@tnsp.org>
parents: 49
diff changeset
145 @$(WINDRES) $< -O coff -o $@
49
b86eb06070ba More work on buildsystem.
Matti Hamalainen <ccr@tnsp.org>
parents: 48
diff changeset
146
b86eb06070ba More work on buildsystem.
Matti Hamalainen <ccr@tnsp.org>
parents: 48
diff changeset
147
b86eb06070ba More work on buildsystem.
Matti Hamalainen <ccr@tnsp.org>
parents: 48
diff changeset
148 ###
b86eb06070ba More work on buildsystem.
Matti Hamalainen <ccr@tnsp.org>
parents: 48
diff changeset
149 ### Application rules
b86eb06070ba More work on buildsystem.
Matti Hamalainen <ccr@tnsp.org>
parents: 48
diff changeset
150 ###
192
dfe5e8d7c58a Use the finalized Cafe Kampus logo.
Matti Hamalainen <ccr@tnsp.org>
parents: 184
diff changeset
151 #$(APP_IMG)icon-%.png: $(addprefix $(APP_IMG),$(LOGO_SVG))
dfe5e8d7c58a Use the finalized Cafe Kampus logo.
Matti Hamalainen <ccr@tnsp.org>
parents: 184
diff changeset
152 # inkscape --export-area-page -w $(patsubst $(APP_IMG)icon-%.png,%,$@) -h $(patsubst $(APP_IMG)icon-%.png,%,$@) -e "$@" "$<"
dfe5e8d7c58a Use the finalized Cafe Kampus logo.
Matti Hamalainen <ccr@tnsp.org>
parents: 184
diff changeset
153
dfe5e8d7c58a Use the finalized Cafe Kampus logo.
Matti Hamalainen <ccr@tnsp.org>
parents: 184
diff changeset
154 #$(APP_IMG)logo.png: $(addprefix $(APP_IMG),$(LOGO_SVG))
dfe5e8d7c58a Use the finalized Cafe Kampus logo.
Matti Hamalainen <ccr@tnsp.org>
parents: 184
diff changeset
155 # inkscape --export-area-page -w 258 -h 220 -e "$@" "$<"
48
200ec310660a Begin revamp of the buildsystem, don't use qmake anymore.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
156
192
dfe5e8d7c58a Use the finalized Cafe Kampus logo.
Matti Hamalainen <ccr@tnsp.org>
parents: 184
diff changeset
157 $(APP_IMG)icon-%.png: $(addprefix $(APP_IMG),$(LOGO_IMG))
dfe5e8d7c58a Use the finalized Cafe Kampus logo.
Matti Hamalainen <ccr@tnsp.org>
parents: 184
diff changeset
158 convert "$<" -scale "$(patsubst $(APP_IMG)icon-%.png,%,$@)x$(patsubst $(APP_IMG)icon-%.png,%,$@)" "$@"
dfe5e8d7c58a Use the finalized Cafe Kampus logo.
Matti Hamalainen <ccr@tnsp.org>
parents: 184
diff changeset
159
dfe5e8d7c58a Use the finalized Cafe Kampus logo.
Matti Hamalainen <ccr@tnsp.org>
parents: 184
diff changeset
160 $(APP_IMG)logo.png: $(addprefix $(APP_IMG),$(LOGO_IMG))
dfe5e8d7c58a Use the finalized Cafe Kampus logo.
Matti Hamalainen <ccr@tnsp.org>
parents: 184
diff changeset
161 convert "$<" -scale "258x220" "$@"
48
200ec310660a Begin revamp of the buildsystem, don't use qmake anymore.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
162
80
c8fd927cd2c4 Restructure the project by placing source code, images into appropriate
Matti Hamalainen <ccr@tnsp.org>
parents: 76
diff changeset
163 icon.ico: $(addprefix $(APP_IMG),$(ICON_PNGS))
52
1ac8fdd932b3 More work on build system.
Matti Hamalainen <ccr@tnsp.org>
parents: 50
diff changeset
164 @echo " CONVERT $+ -> $@"
1ac8fdd932b3 More work on build system.
Matti Hamalainen <ccr@tnsp.org>
parents: 50
diff changeset
165 @convert $+ $@
48
200ec310660a Begin revamp of the buildsystem, don't use qmake anymore.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
166
233
6a12c82d082e Cleanup build.
Matti Hamalainen <ccr@tnsp.org>
parents: 231
diff changeset
167 src/%.cpp: src/%.qrc $(APP_RESOURCES)
48
200ec310660a Begin revamp of the buildsystem, don't use qmake anymore.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
168 @echo " Qt:RCC $@ $<"
200ec310660a Begin revamp of the buildsystem, don't use qmake anymore.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
169 @$(QT_RCC) -name "Syntilista" $< -o $@
200ec310660a Begin revamp of the buildsystem, don't use qmake anymore.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
170
233
6a12c82d082e Cleanup build.
Matti Hamalainen <ccr@tnsp.org>
parents: 231
diff changeset
171 $(OBJPATH)main.o: src/main.cpp $(APP_HDRS) VERSION
258
daaad6ad8212 Build system improvements.
Matti Hamalainen <ccr@tnsp.org>
parents: 246
diff changeset
172 $(COMPILE_CXX_OBJ) $(DEFINES) $(INCPATH)
48
200ec310660a Begin revamp of the buildsystem, don't use qmake anymore.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
173
200ec310660a Begin revamp of the buildsystem, don't use qmake anymore.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
174
52
1ac8fdd932b3 More work on build system.
Matti Hamalainen <ccr@tnsp.org>
parents: 50
diff changeset
175 $(APP_BIN): $(addprefix $(OBJPATH),$(APP_OBJS)) $(APP_DEP_LIBS) | $(APP_DEPS)
259
14ed3a2500e6 Fix build.
Matti Hamalainen <ccr@tnsp.org>
parents: 258
diff changeset
176 $(LINK_CXX_BIN) $(APP_LIBS)
48
200ec310660a Begin revamp of the buildsystem, don't use qmake anymore.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
177
200ec310660a Begin revamp of the buildsystem, don't use qmake anymore.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
178
50
402446a76794 And more build system work.
Matti Hamalainen <ccr@tnsp.org>
parents: 49
diff changeset
179 ###
402446a76794 And more build system work.
Matti Hamalainen <ccr@tnsp.org>
parents: 49
diff changeset
180 ### Special targets
402446a76794 And more build system work.
Matti Hamalainen <ccr@tnsp.org>
parents: 49
diff changeset
181 ###
48
200ec310660a Begin revamp of the buildsystem, don't use qmake anymore.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
182 clean:
81
810ca71af506 Improve 'clean' target handling.
Matti Hamalainen <ccr@tnsp.org>
parents: 80
diff changeset
183 -$(RM) $(TARGETS) $(NOINST_TARGETS) $(CLEAN_TARGETS) $(OBJPATH)*.o
48
200ec310660a Begin revamp of the buildsystem, don't use qmake anymore.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
184
200ec310660a Begin revamp of the buildsystem, don't use qmake anymore.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
185 distclean: clean
52
1ac8fdd932b3 More work on build system.
Matti Hamalainen <ccr@tnsp.org>
parents: 50
diff changeset
186 -$(RM) $(DISTCLEAN_TARGETS) *~ core *.core
48
200ec310660a Begin revamp of the buildsystem, don't use qmake anymore.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
187
200ec310660a Begin revamp of the buildsystem, don't use qmake anymore.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
188 .PHONY: clean distclean all