+qt5_use_modules(frida Widgets)
+
+TARGET_LINK_LIBRARIES(frida
+ ${QT_LIBRARIES}
+ ${LLVM_LDFLAGS}
+ -lLLVM-3.5
+ ${LLVM_SYSTEM_LIBS}
+ ${LOG4CXX_LDFLAGS}
+ ${QUAZIP_LIBRARIES})
+
+configure_file(src/Config.hxx.in src/Config.hxx @ONLY)
+
+###########
+# Plugins #
+###########
+
+# GUILE
+
+set(plugin_guile_SOURCES
+ src/bindings/Guile.cxx)
+
+set(plugin_guile_HEADERS
+ src/bindings/Interpreter.hxx
+ src/bindings/Guile.hxx)
+
+add_library(guilePlugin MODULE ${plugin_guile_SOURCES} ${plugin_guile_HEADERS_MOC})
+qt5_use_modules(guilePlugin Core)
+target_link_libraries(guilePlugin ${QT_LIBRARIES} ${GUILE_LDFLAGS})
+
+##################
+# TEST Framework #
+##################
+
+set(fridatest_SOURCES
+ src/test.cxx
+ src/core/tests/BasicBlockTest.cxx
+ src/core/tests/FunctionTest.cxx
+ ${frida_SOURCES}
+ )
+
+add_executable(fridatest ${fridatest_SOURCES})
+
+qt5_use_modules(fridatest Widgets)
+
+#ADD_SUBDIRECTORY(/usr/src/gtest gtest)
+ADD_SUBDIRECTORY(/usr/src/gmock gmock)
+enable_testing()
+add_test(NAME fridatest COMMAND fridatest ${CMAKE_SOURCE_DIR})
+target_link_libraries(fridatest gmock gtest ${QT_LIBRARIES} ${LLVM_LDFLAGS} -lLLVM-3.5 ${LLVM_SYSTEM_LIBS} ${LOG4CXX_LDFLAGS} ${GUILE_LDFLAGS} ${QUAZIP_LIBRARIES})
+target_compile_options(fridatest PRIVATE -DCONFIG_TEST)
+set_property(TEST fridatest
+ APPEND PROPERTY ENVIRONMENT LD_LIBRARY_PATH=${CMAKE_CURRENT_BINARY_DIR})
+
+install(TARGETS frida
+ RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})