Merge pull request #1626 from LMMS/cmake_tests

CMake: Change the way tests links lmms
This commit is contained in:
Lukas W
2015-01-15 16:13:49 +01:00
3 changed files with 48 additions and 13 deletions

View File

@@ -64,17 +64,32 @@ ENDIF()
# Enable C++11
ADD_DEFINITIONS("-std=c++0x")
ADD_EXECUTABLE(lmms
core/main.cpp
${LMMS_SRCS}
${LMMS_INCLUDES}
${LMMS_UI_OUT}
${LMMS_ER_H}
"${WINRC}"
)
SET_TARGET_PROPERTIES(lmms PROPERTIES
ENABLE_EXPORTS ON
)
# 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
$<TARGET_OBJECTS:lmmsobjs>
"${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")
@@ -82,7 +97,7 @@ IF(LMMS_BUILD_WIN32)
SET(EXTRA_LIBRARIES "-lwinmm")
ENDIF()
TARGET_LINK_LIBRARIES(lmms
SET(LMMS_REQUIRED_LIBS
${CMAKE_THREAD_LIBS_INIT}
${QT_LIBRARIES}
${ASOUND_LIBRARY}
@@ -95,6 +110,12 @@ TARGET_LINK_LIBRARIES(lmms
${SNDFILE_LIBRARIES}
${EXTRA_LIBRARIES}
)
# Expose required libs for tests binary
SET(LMMS_REQUIRED_LIBS ${LMMS_REQUIRED_LIBS} PARENT_SCOPE)
TARGET_LINK_LIBRARIES(lmms
${LMMS_REQUIRED_LIBS}
)
IF(QT5)
TARGET_LINK_LIBRARIES(lmms
@@ -138,6 +159,7 @@ ENDFOREACH(_item ${qm_targets})
IF(LMMS_BUILD_WIN32)
SET_TARGET_PROPERTIES(lmms PROPERTIES
LINK_FLAGS "${LINK_FLAGS} -mwindows"
ENABLE_EXPORTS ON
)
ADD_CUSTOM_COMMAND(TARGET lmms POST_BUILD COMMAND "${STRIP}" "$<TARGET_FILE:lmms>")