DO NOT TOUCH - DO NOT USE - DO NOT COMPLAIN - CMake is still enabled.
+++ /dev/null
-# This Makefile simply runs cmake from the build directory.
-# This, of course, triggers an out-of-source build.
-# Binaries are going to be in build/.
-
-default_target: default
-
-default:
- @echo "To start an out-of-source build, change to the build/ directory"
- @echo "and run 'cmake ..' to create standard Makefiles. You can then use"
- @echo "'make' from the build/ directory to compile the project."
- @echo
- @echo "To create KDevelop3 project files instead, run 'cmake .. -GKDevelop3'"
- @echo "from the build/ directory."
- @echo
- @echo "Please refer to the INSTALL file for more options, such as"
- @echo "client/server builds."
- @echo
-
-run_cmake:
- cd build && cmake .. && make
-
-build_mono_windows:
- cd build && cmake -DBUILD="mono" .. -G "MinGW Makefiles" && mingw32-make
-
-build_windows:
- cd build && cmake -DBUILD="core gui" .. -G "MinGW Makefiles" && mingw32-make
-
-clean:
- rm -rf build/*
+++ /dev/null
-cmake ../src
-make
-
-echo You can now run './quassel'.
--- /dev/null
+MODULE = client
+include(module.pri)
+
--- /dev/null
+MODULE = common
+include(module.pri)
+
--- /dev/null
+MODULE = contrib/qxt
+include(../module.pri)
--- /dev/null
+MODULE = core
+include(module.pri)
+
--- /dev/null
+TEMPLATE = lib
+CONFIG += staticlib
+
+SRCPATH = ../../src # Path to sources relative to this file
+
+# Set paths according to MODULE
+# We need to handle MODULE definitions like contrib/foo
+
+MODNAME = $$basename(MODULE)
+MODPATH_PREFIX = $$dirname(MODULE)
+!isEmpty(MODPATH_PREFIX) {
+ MODPATH_PREFIX ~= s,[^/]+,..
+ #sprintf($$MODPATH_PREFIX%1
+ SRCPATH = $$MODPATH_PREFIX/$$SRCPATH
+}
+
+MODPATH = $$SRCPATH/$$MODULE # Path to the module files
+
+# Define build directories
+
+OBJECTS_DIR = $${MODNAME}.tmp
+MOC_DIR = $${MODNAME}.tmp
+UI_DIR = $${MODNAME}.tmp
+
+# Load module settings (files etc.)
+
+include($$MODPATH/$${MODNAME}.pri)
+
+# Define needed Qt modules
+
+QT -= gui
+for(qtmod, QT_MOD) {
+ QT *= $$qtmod
+}
+
+# Set includepath for needed Quassel modules
+
+for(dep, DEPMOD) {
+ INCLUDEPATH *= $$SRCPATH/$$dep
+}
+INCLUDEPATH *= $$MODPATH # and don't forget our own dir
+
+# Now prefix all filenames with the correct dirname
+
+for(src, SRCS) {
+ SOURCES *= $$MODPATH/$$src
+}
+
+for(hdr, HDRS) {
+ HEADERS *= $$MODPATH/$$hdr
+}
+
+for(frm, FRMS) {
+ FORMS *= $$MODPATH/$$frm
+}
--- /dev/null
+MODULE = qtgui
+include(module.pri)
+
--- /dev/null
+isEmpty(BUILD) {
+ BUILD = all
+}
+contains(BUILD, all) {
+ BUILD += qtgui core mono
+}
+
+contains(BUILD, mono) {
+ include(targets/monolithic.pri)
+ BUILD_MODS *= $${MODULES}
+ BUILD_TARGETS *= monolithic
+}
+
+contains(BUILD, core) {
+ include(targets/core.pri)
+ BUILD_MODS *= $${MODULES}
+ BUILD_TARGETS *= core
+}
+
+TEMPLATE = subdirs
+
+for(mod, BUILD_MODS) {
+ SUBDIRS += modules/$${mod}.pro
+}
+
+for(target, BUILD_TARGETS) {
+ SUBDIRS += targets/$${target}.pro
+}
+
+CONFIG += qt warn_on
--- /dev/null
+# Modules for quasselcore
+MODULES = core common contrib/qxt
+QT -= gui
+QT += network sql
--- /dev/null
+TARGET = quasselcore
+DEFINES += BUILD_CORE
+include(core.pri)
+include(target.pri)
--- /dev/null
+# Modules for monolithic client
+MODULES = core qtgui client common contrib/qxt
+QT += network sql
--- /dev/null
+TARGET = quassel
+DEFINES += BUILD_MONO
+include(monolithic.pri)
+include(target.pri)
--- /dev/null
+TEMPLATE = app
+SRCPATH = ../../src
+OBJECTS_DIR = $${TARGET}.tmp
+
+for(mod, MODULES) {
+ INCLUDEPATH *= $$SRCPATH/$$mod
+ LIBS *= -L../modules/$$dirname(mod) -l$$basename(mod)
+}
+
+SOURCES = $$SRCPATH/common/main.cpp
--- /dev/null
+SUBDIRS += build/quassel.pro
+TEMPLATE = subdirs
+CONFIG += warn_on qt thread
--- /dev/null
+DEPMOD = common contrib/qxt
+QT_MOD = core network gui # gui is needed just for QColor... FIXME!
+SRCS = buffer.cpp buffertreemodel.cpp client.cpp clientsettings.cpp treemodel.cpp
+HDRS = buffer.h buffertreemodel.h client.h clientsettings.h treemodel.h
--- /dev/null
+DEPMOD = contrib/qxt
+QT_MOD = network
+SRCS = global.cpp ircuser.cpp logger.cpp message.cpp settings.cpp signalproxy.cpp util.cpp
+HDRS = global.h ircuser.h logger.h message.h quasselui.h settings.h signalproxy.h util.h
--- /dev/null
+DEPMOD =
+QT_MOD = core network
+SRCS = qxtmetaobject.cpp qxtnull.cpp qxtrpcpeer.cpp
+HDRS = qxtboundfunction.h qxtboundfunctionbase.h qxtglobal.h qxtmetaobject.h qxtnullable.h qxtnull.h qxtpimpl.h qxtrpcpeer.h
+FRMS =
--- /dev/null
+DEPMOD = common contrib/qxt
+QT_MOD = core network sql
+SRCS = core.cpp coresession.cpp server.cpp serverinfo.cpp sqlitestorage.cpp storage.cpp
+HDRS = core.h coresession.h server.h serverinfo.h sqlitestorage.h storage.h
--- /dev/null
+DEPMOD = common client contrib/qxt
+QT_MOD = core gui network
+
+SRCS = bufferview.cpp bufferviewfilter.cpp bufferwidget.cpp channelwidgetinput.cpp chatline.cpp \
+ chatwidget.cpp coreconnectdlg.cpp \
+ guisettings.cpp identities.cpp mainwin.cpp qtgui.cpp serverlist.cpp settingsdlg.cpp style.cpp tabcompleter.cpp
+
+HDRS = bufferview.h bufferviewfilter.h bufferwidget.h channelwidgetinput.h chatline.h chatwidget.h coreconnectdlg.h \
+ guisettings.h identities.h mainwin.h qtgui.h serverlist.h settingsdlg.h settingspage.h style.h tabcompleter.h
+
+
+FORMNAMES = identitiesdlg.ui identitieseditdlg.ui networkeditdlg.ui mainwin.ui nickeditdlg.ui serverlistdlg.ui \
+ servereditdlg.ui coreconnectdlg.ui bufferviewwidget.ui bufferwidget.ui settingsdlg.ui \
+ buffermgmtpage.ui connectionpage.ui usermgmtpage.ui
+
+for(ui, FORMNAMES) {
+ FRMS += ui/$${ui}
+}