5be5fde2e1572ef4e56a7bdec9f2abaeec443832
[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
19 #CONFIG = qt warn_on release
20
21 TEMPLATE = subdirs
22
23 # Check build configuration
24 isEmpty(BUILD) {
25   BUILD = all  # build everything by default
26 }
27
28 contains(BUILD, all) {
29   BUILD += qtgui core mono
30 }
31
32 contains(BUILD, mono) {
33   include(targets/monolithic.pri)
34   BUILD_MODS *= $${MODULES}
35   BUILD_TARGETS *= monolithic
36 }
37
38 contains(BUILD, core) {
39   include(targets/core.pri)
40   BUILD_MODS *= $${MODULES}
41   BUILD_TARGETS *= core
42 }
43
44 contains(BUILD, qtgui) {
45   include(targets/qtgui.pri)
46   BUILD_MODS *= $${MODULES}
47   BUILD_TARGETS *= qtgui
48 }
49
50 # Now, we first build all needed modules...
51 for(mod, BUILD_MODS) {
52   SUBDIRS += modules/$${mod}.pro
53 }
54
55 # ... followed by the binaries.
56 for(target, BUILD_TARGETS) {
57   SUBDIRS += targets/$${target}.pro
58 }