# Please report questions, comments, problems, or patches to the freetel
# mailing list: https://lists.sourceforge.net/lists/listinfo/freetel-codec2
#
+project(codec2)
cmake_minimum_required(VERSION 2.8)
+include(GNUInstallDirs)
+mark_as_advanced(CLEAR
+ CMAKE_INSTALL_BINDIR
+ CMAKE_INSTALL_INCLUDEDIR
+ CMAKE_INSTALL_LIBDIR
+)
#
# Prevent in-source builds
# If an in-source build is attempted, you will still need to clean up a few
"separate build directory and run cmake from there.")
endif("${CMAKE_SOURCE_DIR}" STREQUAL "${CMAKE_BINARY_DIR}")
-project(codec2)
-
#
# Set project version information. This should probably be done via external
if(NOT CMAKE_BUILD_TYPE)
set(CMAKE_BUILD_TYPE "Release")
endif(NOT CMAKE_BUILD_TYPE)
+
+# Set default C++ flags.
+set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fPIC -Wall")
+set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fPIC -Wall")
+
message(STATUS "Build type is: " ${CMAKE_BUILD_TYPE})
message(STATUS "Compiler Flags: " ${CMAKE_CXX_FLAGS})
# message(WARNING "Subversion not found. Can not determine svn revision.")
#endif(SUBVERSION_FOUND)
-# Set default C++ flags.
-set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fPIC -Wall")
-set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fPIC -Wall")
#
# Default options
)
install(FILES ${CODEC2_PUBLIC_HEADERS}
- DESTINATION include/codec2
+ DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/codec2
)
add_executable(c2demo c2demo.c)
add_executable(fec_dec fec_dec.c golay23.c)
target_link_libraries(fec_dec ${CMAKE_REQUIRED_LIBRARIES} codec2)
+install(TARGETS codec2 EXPORT codec2-config
+ LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
+ ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
+ RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
+)
+
+install(EXPORT codec2-config
+ DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/codec2
+)
+
install(TARGETS
- codec2
c2demo
c2demo
c2enc
insert_errors
fec_enc
fec_dec
- LIBRARY DESTINATION lib${LIB_SUFFIX}
- ARCHIVE DESTINATION lib${LIB_SUFFIX}
- RUNTIME DESTINATION bin
+ RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
)