diff --git a/CMakeLists.txt b/CMakeLists.txt index a77ed53..cca50c1 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -2,15 +2,15 @@ cmake_minimum_required (VERSION 2.8) set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_SOURCE_DIR}/cmake/Modules/") -macro(configure_files srcDir destDir) - message(STATUS "Configuring directory ${destDir}") +macro(configure_files srcDir destDir globStr) + message(STATUS "Copying ${srcDir}/${globStr} to directory ${destDir}") make_directory(${destDir}) - file(GLOB templateFiles RELATIVE ${srcDir} ${srcDir}/*) + file(GLOB templateFiles RELATIVE ${srcDir} ${srcDir}/${globStr}) foreach(templateFile ${templateFiles}) set(srcTemplatePath ${srcDir}/${templateFile}) + message(STATUS "Configuring file ${templateFile}") if(NOT IS_DIRECTORY ${srcTemplatePath}) -# message(STATUS "Configuring file ${templateFile}") configure_file( ${srcTemplatePath} ${destDir}/${templateFile} @@ -27,8 +27,8 @@ macro(configure_files_recurse srcDir destDir) file(GLOB_RECURSE templateFiles RELATIVE ${srcDir} ${srcDir}/*) foreach(templateFile ${templateFiles}) set(srcTemplatePath ${srcDir}/${templateFile}) + message(STATUS "Configuring file ${templateFile}") if(NOT IS_DIRECTORY ${srcTemplatePath}) -# message(STATUS "Configuring file ${templateFile}") configure_file( ${srcTemplatePath} ${destDir}/${templateFile} @@ -57,7 +57,7 @@ include(${wxWidgets_USE_FILE}) # include_directories ( ${PROJECT_SOURCE_DIR}/../CubicVR-2/build/include ) # link_directories ( ${PROJECT_SOURCE_DIR}/../CubicVR-2/build/lib ${OPENGL_INCLUDE_DIR}) -IF (DEFINED WIN32) +IF (WIN32) set(wxWidgets_USE_STATIC ON) include_directories ( ${PROJECT_SOURCE_DIR}/external/fftw-3.3.4-dll64 ${PROJECT_SOURCE_DIR}/external/rtl-sdr-release ) link_directories ( ${PROJECT_SOURCE_DIR}/external/fftw-3.3.4-dll64 ${PROJECT_SOURCE_DIR}/external/rtl-sdr-release/x64 ) @@ -69,15 +69,23 @@ IF (DEFINED WIN32) ADD_DEFINITIONS( # To use wasapi -D__WINDOWS_WASAPI__ + # To use directsound #-D__WINDOWS_DS__ ) # To use wasapi SET(OTHER_LIBRARIES -luuid -lksuser ) + # To use DirectSound (which uses WASAPI anyways?) # SET(OTHER_LIBRARIES -ldsound) -ENDIF (DEFINED WIN32) + + # Copy DLL files to build dir + configure_files(${PROJECT_SOURCE_DIR}/external/liquid-dsp-lib/64 ${CMAKE_BINARY_DIR} "*.dll") + configure_files(${PROJECT_SOURCE_DIR}/external/rtl-sdr-release/x64 ${CMAKE_BINARY_DIR} "*.dll") + configure_files(${PROJECT_SOURCE_DIR}/external/fftw-3.3.4-dll64 ${CMAKE_BINARY_DIR} "*.dll") + +ENDIF (WIN32) IF (UNIX) set(RTLSDR_INCLUDE "/opt/local/include" CACHE FILEPATH "RTL-SDR Include Path") @@ -124,6 +132,7 @@ SET (cubicsdr_sources src/util/Gradient.cpp src/util/Timer.cpp src/util/MouseTracker.cpp + src/util/GLFont.cpp src/visual/PrimaryGLContext.cpp src/visual/ScopeCanvas.cpp src/visual/ScopeContext.cpp @@ -132,6 +141,7 @@ SET (cubicsdr_sources src/visual/WaterfallCanvas.cpp src/visual/WaterfallContext.cpp external/rtaudio/RtAudio.cpp + external/lodepng/lodepng.cpp ) SET (cubicsdr_headers @@ -148,6 +158,7 @@ SET (cubicsdr_headers src/util/Timer.h src/util/ThreadQueue.h src/util/MouseTracker.h + src/util/GLFont.h src/visual/PrimaryGLContext.h src/visual/ScopeCanvas.h src/visual/ScopeContext.h @@ -156,25 +167,30 @@ SET (cubicsdr_headers src/visual/WaterfallCanvas.h src/visual/WaterfallContext.h external/rtaudio/RtAudio.h + external/lodepng/lodepng.h ) -include_directories ( ${PROJECT_SOURCE_DIR}/src/sdr - ${PROJECT_SOURCE_DIR}/src/demod - ${PROJECT_SOURCE_DIR}/src/audio - ${PROJECT_SOURCE_DIR}/src/util - ${PROJECT_SOURCE_DIR}/src/visual - ${PROJECT_SOURCE_DIR}/src - ${PROJECT_SOURCE_DIR}/external/rtaudio ) +include_directories ( + ${PROJECT_SOURCE_DIR}/src/sdr + ${PROJECT_SOURCE_DIR}/src/demod + ${PROJECT_SOURCE_DIR}/src/audio + ${PROJECT_SOURCE_DIR}/src/util + ${PROJECT_SOURCE_DIR}/src/visual + ${PROJECT_SOURCE_DIR}/src + ${PROJECT_SOURCE_DIR}/external/rtaudio + ${PROJECT_SOURCE_DIR}/external/lodepng +) ADD_DEFINITIONS( -std=c++0x # or -std=c++11 -pthread ) - -#configure_files(${PROJECT_SOURCE_DIR}/shaders ${PROJECT_BINARY_DIR}/shaders COPYONLY) -#configure_files(${PROJECT_SOURCE_DIR}/png ${PROJECT_BINARY_DIR}/png COPYONLY) + +configure_files(${PROJECT_SOURCE_DIR}/font ${CMAKE_BINARY_DIR} "*.fnt") +configure_files(${PROJECT_SOURCE_DIR}/font ${CMAKE_BINARY_DIR} "*.png") add_executable(CubicSDR ${cubicsdr_sources} ${cubicsdr_headers}) target_link_libraries(CubicSDR rtlsdr liquid ${FFTW_LIB} ${wxWidgets_LIBRARIES} ${OPENGL_LIBRARIES} ${OTHER_LIBRARIES}) -# cubicvr2 glfw ${GLFW_LIBRARIES} + +