7ce23875c43d5470cb1e1d1693c47ed1e230d564
[quassel.git] / build / quassel.pro
1 # This project file can be used to set up a build environment for quassel.
2 # To build the default configuration (i.e. qtgui, core and monolithic client),
3 # simply run
4 #
5 # > qmake && make
6 #
7 # in this directory. In order to select the binaries to build, you may set
8 # the BUILD variable as follows:
9 #
10 # > qmake BUILD=<mode> && make
11 #
12 # where <mode> is a quoted string that may contain any of 'qtgui', 'core', 'mono' or 'all'.
13 #
14 # NOTE: To change the build configuration, you have to run 'make distclean' first!
15
16
17 # Set project-wide config options
18 CONFIG += qt debug warn_on
19
20 TEMPLATE = subdirs
21
22 # Check build configuration
23 isEmpty(BUILD) {
24   BUILD = all  # build everything by default
25 }
26
27 contains(BUILD, all) {
28   BUILD += qtgui core mono
29 }
30
31 contains(BUILD, mono) {
32   include(targets/monolithic.pri)
33   BUILD_MODS *= $${MODULES}
34   BUILD_TARGETS *= monolithic
35 }
36
37 contains(BUILD, core) {
38   include(targets/core.pri)
39   BUILD_MODS *= $${MODULES}
40   BUILD_TARGETS *= core
41 }
42
43 contains(BUILD, qtgui) {
44   include(targets/qtgui.pri)
45   BUILD_MODS *= $${MODULES}
46   BUILD_TARGETS *= qtgui
47 }
48
49 # Now, we first build all needed modules...
50 for(mod, BUILD_MODS) {
51   SUBDIRS += modules/$${mod}.pro
52 }
53
54 # ... followed by the binaries.
55 for(target, BUILD_TARGETS) {
56   SUBDIRS += targets/$${target}.pro
57 }