11CMAKE_MINIMUM_REQUIRED (VERSION 2.8.12.1)
22
3+ SET (PROJECT_VER_MAJOR 0)
4+ SET (PROJECT_VER_MINOR 1)
5+ SET (PROJECT_VER_PATCH 0)
6+ SET (PROJECT_VER "${PROJECT_VER_MAJOR} .${PROJECT_VER_MINOR} .${PROJECT_VER_PATCH} " )
7+ SET (PROJECT_APIVER "${PROJECT_VER_MAJOR} .${PROJECT_VER_MINOR} " )
8+
39if (WIN32 AND NOT MINGW)
410 if (NOT DEFINED CMAKE_DEBUG_POSTFIX )
511 set (CMAKE_DEBUG_POSTFIX "d" )
@@ -32,6 +38,9 @@ IF(MSVC)
3238 # "zero-length array in struct" from libusb.h
3339 SET (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /wd4267 /wd4244 /wd4200 /wd4305 /wd4146" )
3440 ADD_DEFINITIONS (-D_CRT_SECURE_NO_WARNINGS) # no warning for getenv()
41+ ELSE ()
42+ # Heed warnings from non-MSVC compilers
43+ SET (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall" )
3544ENDIF ()
3645
3746IF (ENABLE_CXX11)
@@ -214,9 +223,9 @@ ENDIF(ENABLE_OPENCL)
214223# Both command line -DCMAKE_INSTALL_RPATH=... and CMake GUI settings are accepted.
215224#
216225# Anyway if wrong versions of libusb is used, errors will be reported explicitly.
217- IF (NOT DEFINED CMAKE_INSTALL_RPATH )
226+ IF (NOT DEFINED CMAKE_INSTALL_RPATH AND NOT ${LibUSB_LIBDIR} MATCHES "^/usr/lib" )
218227 SET (CMAKE_INSTALL_RPATH ${LibUSB_LIBDIR} CACHE STRING "Set RPATH for a private libusb" )
219- ELSE ( )
228+ ELSEIF ( DEFINED CMAKE_INSTALL_RPATH )
220229 SET (CMAKE_INSTALL_RPATH ${CMAKE_INSTALL_RPATH} CACHE STRING "Set RPATH for a private libusb" )
221230ENDIF ()
222231IF (DEFINED CMAKE_INSTALL_RPATH )
@@ -231,6 +240,8 @@ ADD_LIBRARY(freenect2 ${SOURCES})
231240SET_TARGET_PROPERTIES (freenect2 PROPERTIES
232241 CXX_VISIBILITY_PRESET hidden
233242 VISIBILITY_INLINES_HIDDEN 1
243+ VERSION ${PROJECT_VER}
244+ SOVERSION ${PROJECT_APIVER}
234245)
235246INCLUDE (GenerateExportHeader)
236247GENERATE_EXPORT_HEADER(freenect2
@@ -255,14 +266,7 @@ INSTALL(DIRECTORY "${PROJECT_BINARY_DIR}/${PROJECT_NAME}" DESTINATION include)
255266INSTALL (FILES "${PROJECT_BINARY_DIR} /freenect2Config.cmake" DESTINATION lib/cmake/freenect2/)
256267INSTALL (FILES "${PROJECT_BINARY_DIR} /freenect2.pc" DESTINATION lib/pkgconfig/)
257268
258- find_package (Doxygen)
259- IF (DOXYGEN_FOUND)
260- CONFIGURE_FILE (Doxyfile.in "${PROJECT_BINARY_DIR} /Doxyfile" @ONLY)
261- add_custom_target (
262- doc
263- COMMAND ${DOXYGEN_EXECUTABLE} Doxyfile
264- )
265- ENDIF ()
269+ ADD_SUBDIRECTORY (${MY_DIR} /doc )
266270
267271IF (BUILD_EXAMPLES)
268272 MESSAGE (STATUS "Configurating examples" )
0 commit comments