--- CMakeLists.txt.orig 2015-04-21 14:32:18 UTC +++ CMakeLists.txt @@ -2,6 +2,11 @@ cmake_minimum_required(VERSION 2.8.8) project(sdr-wspr) # required for original wspr code enable_language(Fortran) +# temporary ugly hack +string(REGEX MATCH "-rpath=.*" CMAKE_RPATH_ARG ${CMAKE_Fortran_FLAGS} ) +string(SUBSTRING ${CMAKE_RPATH_ARG} 7 -1 CMAKE_RPATH) +set(CMAKE_INSTALL_RPATH ${CMAKE_RPATH} ) +message(STATUS CMAKE_INSTALL_RPATH ${CMAKE_INSTALL_RPATH}) set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${PROJECT_SOURCE_DIR}/cmake) include(InstallHeadersWithDirectory) @@ -63,34 +68,6 @@ ELSE(NOT LIBSDR_GUI_FOUND) ENDIF(NOT LIBSDR_GUI_FOUND) # Set compiler flags -set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${Qt5Widgets_EXECUTABLE_COMPILE_FLAGS} -Wall -fPIC") -set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -O0 -ggdb") -set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -O0 -ggdb") -set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -O3 -ggdb") - - -# FFLAGS depend on the compiler -get_filename_component(Fortran_COMPILER_NAME ${CMAKE_Fortran_COMPILER} NAME) - -if(Fortran_COMPILER_NAME MATCHES "gfortran.*") - # gfortran - set(CMAKE_Fortran_FLAGS_RELEASE "-funroll-all-loops -fno-f2c -O3") - set(CMAKE_Fortran_FLAGS_DEBUG "-fno-f2c -O0 -g") -elseif(Fortran_COMPILER_NAME MATCHES "ifort.*") - # ifort (untested) - set(CMAKE_Fortran_FLAGS_RELEASE "-f77rtl -O3") - set(CMAKE_Fortran_FLAGS_DEBUG "-f77rtl -O0 -g") -elseif(Fortran_COMPILER_NAME MATCHES "g77") - # g77 - set(CMAKE_Fortran_FLAGS_RELEASE "-funroll-all-loops -fno-f2c -O3 -m32") - set(CMAKE_Fortran_FLAGS_DEBUG "-fno-f2c -O0 -g -m32") -else(Fortran_COMPILER_NAME MATCHES "gfortran.*") - message("CMAKE_Fortran_COMPILER full path: " ${CMAKE_Fortran_COMPILER}) - message("Fortran compiler: " ${Fortran_COMPILER_NAME}) - message("No optimized Fortran compiler flags are known, we just try -O2...") - set(CMAKE_Fortran_FLAGS_RELEASE "-O2") - set(CMAKE_Fortran_FLAGS_DEBUG "-O0 -g") -endif(Fortran_COMPILER_NAME MATCHES "gfortran.*") # # Get default install directories under Linux