Preliminary check-in of qmake-based build system. This is not finished yet!
[quassel.git] / build / modules / module.pri
diff --git a/build/modules/module.pri b/build/modules/module.pri
new file mode 100644 (file)
index 0000000..9de04b0
--- /dev/null
@@ -0,0 +1,55 @@
+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
+}