diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 5e4dc2fe4..d0f8760a1 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -64,17 +64,32 @@ ENDIF() # Enable C++11 ADD_DEFINITIONS("-std=c++0x") -ADD_LIBRARY(lmmsobjs OBJECT - ${LMMS_SRCS} - ${LMMS_INCLUDES} - ${LMMS_UI_OUT} - ${LMMS_ER_H} -) -ADD_EXECUTABLE(lmms - $ - core/main.cpp - "${WINRC}" -) +# ADD_LIBRARY's OBJECT is only supported in CMake >=2.8.8 +IF(CMAKE_MAJOR_VERSION GREATER 2 OR + CMAKE_MINOR_VERSION GREATER 8 OR + CMAKE_PATCH_VERSION GREATER 7) + + ADD_LIBRARY(lmmsobjs OBJECT + ${LMMS_SRCS} + ${LMMS_INCLUDES} + ${LMMS_UI_OUT} + ${LMMS_ER_H} + ) + ADD_EXECUTABLE(lmms + core/main.cpp + $ + "${WINRC}" + ) +ELSE() + ADD_EXECUTABLE(lmms + core/main.cpp + ${LMMS_SRCS} + ${LMMS_INCLUDES} + ${LMMS_UI_OUT} + ${LMMS_ER_H} + "${WINRC}" + ) +ENDIF() SET_DIRECTORY_PROPERTIES(PROPERTIES ADDITIONAL_MAKE_CLEAN_FILES "${LMMS_ER_H} ${LMMS_UI_OUT} lmmsconfig.h lmms.1.gz") diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt index 0a42b2729..612e8639f 100644 --- a/tests/CMakeLists.txt +++ b/tests/CMakeLists.txt @@ -1,3 +1,10 @@ +IF(CMAKE_MAJOR_VERSION LESS 2 OR + CMAKE_MINOR_VERSION LESS 8 OR + CMAKE_PATCH_VERSION LESS 8) + MESSAGE("-- Unit tests are only available in CMake >=2.8.8. You have ${CMAKE_VERSION}") + RETURN() +ENDIF() + INCLUDE_DIRECTORIES("${CMAKE_CURRENT_SOURCE_DIR}") INCLUDE_DIRECTORIES("${CMAKE_CURRENT_BINARY_DIR}") INCLUDE_DIRECTORIES("${CMAKE_SOURCE_DIR}/include")