#CMake file for infamous ewham cmake_minimum_required(VERSION 2.8) set(PLUGIN "ewham") set(CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/../../cmake/") include(CheckCCompilerFlag) set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall -g -Og") #CHECK_CXX_COMPILER_FLAG("-msse2 -mfpmath=sse" SUPPORTS_SSE ) #CHECK_CXX_COMPILER_FLAG("-ffast-math" SUPPORTS_FAST_MATH ) check_c_compiler_flag("-msse2 -mfpmath=sse" SUPPORTS_SSE ) check_c_compiler_flag("-ffast-math" SUPPORTS_FAST_MATH ) if(SUPPORTS_SSE) set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -msse2 -mfpmath=sse") endif(SUPPORTS_SSE) if(SUPPORTS_FAST_MATH) set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -ffast-math") endif(SUPPORTS_FAST_MATH) set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -g") if(NOT LIBDIR) set(LIBDIR "lib") endif(NOT LIBDIR) # check for our various libraries find_package(PkgConfig) pkg_check_modules(CAIRO cairo) pkg_check_modules(NTK ntk) pkg_check_modules(FFTW fftw3f) pkg_check_modules(LV2 REQUIRED lv2>=.0.1.0) include_directories (${LV2_INCLUDE_DIRS} ${FFTW_INCLUDE_DIRS} ${NTK_INCLUDE_DIRS} ${CAIRO_INCLUDE_DIRS} ../ffffltk ../draw . ) link_directories (${LV2_LIBRARY_DIRS} ${FFTW_LIBRARY_DIRS} ${NTK_LIBRARY_DIRS} ${CAIRO_LIBRARY_DIRS}) # config libraries add_library(${PLUGIN} SHARED ewham.c retuner.c ) set_target_properties(${PLUGIN} PROPERTIES PREFIX "") set_target_properties(${PLUGIN} PROPERTIES BUILD_WITH_INSTALL_RPATH TRUE) target_link_libraries(${PLUGIN} ${LV2_LIBRARIES} ${FFTW_LIBRARIES} m zita-resampler) # config install install(TARGETS ${PLUGIN} LIBRARY DESTINATION ${CMAKE_INSTALL_PREFIX}/${LIBDIR}/lv2/${PLUGIN}.lv2 ) install (FILES manifest.ttl ${PLUGIN}.ttl DESTINATION ${CMAKE_INSTALL_PREFIX}/${LIBDIR}/lv2/${PLUGIN}.lv2 ) if(NOT CAIRO_FOUND OR NOT NTK_FOUND) message(WARNING "UI Libraries Missing, no GUI will be installed") if(NOT SUPPORTS_SSE) #hopefully its a mod, so install the modguistuff install (DIRECTORY modgui/ DESTINATION ${CMAKE_INSTALL_PREFIX}/${LIBDIR}/lv2/${PLUGIN}.lv2/modgui ) endif() endif() # find_program(FLTK_FLUID_EXECUTABLE ntk-fluid) # fltk_wrap_ui(${PLUGIN}_ui ${PLUGIN}_ui.fl) # # add_library(${PLUGIN}_ui SHARED # stuck.h # stuck_ui_main.cxx # ${${PLUGIN}_ui_FLTK_UI_SRCS} # ) # set_target_properties(${PLUGIN}_ui PROPERTIES PREFIX "") # set_target_properties(${PLUGIN}_ui PROPERTIES BUILD_WITH_INSTALL_RPATH TRUE) # target_link_libraries(${PLUGIN}_ui ${LV2_LIBRARIES} ${NTK_LIBRARIES} ${CAIRO_LIBRARIES} m) # # install(TARGETS ${PLUGIN}_ui # LIBRARY # DESTINATION ${CMAKE_INSTALL_PREFIX}/${LIBDIR}/lv2/${PLUGIN}.lv2 # ) # #else() # message(WARNING "UI Libraries Missing, no GUI will be installed") #endif()