-ADD_EXECUTABLE(quasselbin ${quassel_SRCS} ${_RCCS})
-TARGET_LINK_LIBRARIES(quasselbin main gui ${QT_LIBRARIES})
+IF(BUILD_CORE)
+ ADD_DEFINITIONS(-DBUILD_CORE)
+ ADD_EXECUTABLE(quasselcore ${quassel_core_SRCS} ${_RCCS})
+ TARGET_LINK_LIBRARIES(quasselcore core main ${QT_LIBRARIES})
+ENDIF(BUILD_CORE)
+
+IF(BUILD_GUI OR BUILD_MONO) # OK, now we need QtGui!
+ REMOVE_DEFINITIONS(-DQT_CORE_LIB -DQT_GUI_LIB ${QT_DEFINITIONS})
+ SET(QT_DONT_USE_QTGUI "")
+ SET(QT_INCLUDE_DIR "")
+ SET(QT_LIBRARIES "")
+ INCLUDE(${QT_USE_FILE})
+ ADD_SUBDIRECTORY(gui)
+
+ IF(BUILD_MONO)
+ ADD_DEFINITIONS(-DBUILD_MONO)
+ ADD_EXECUTABLE(quassel ${quassel_mono_SRCS} ${_RCCS})
+ TARGET_LINK_LIBRARIES(quassel gui core main ${QT_LIBRARIES})
+ ENDIF(BUILD_MONO)
+
+ IF(BUILD_GUI)
+ ADD_DEFINITIONS(-DBUILD_GUI)
+ ADD_EXECUTABLE(quasselgui ${quassel_gui_SRCS} ${_RCCS})
+ TARGET_LINK_LIBRARIES(quasselgui gui main ${QT_LIBRARIES})
+ ENDIF(BUILD_GUI)
+
+ENDIF(BUILD_GUI OR BUILD_MONO)