mirror of
https://github.com/clangen/musikcube.git
synced 2024-11-19 20:13:36 +00:00
85 lines
2.2 KiB
CMake
85 lines
2.2 KiB
CMake
#cmake -DCMAKE_BUILD_TYPE=Release .
|
|
#cmake -DCMAKE_BUILD_TYPE=Debug .
|
|
|
|
cmake_minimum_required(VERSION 3.0)
|
|
|
|
project(musikbox)
|
|
|
|
set (musikbox_VERSION_MAJOR 0)
|
|
set (musikbox_VERSION_MINOR 1)
|
|
|
|
include(ExternalProject)
|
|
|
|
ExternalProject_Add(taglib
|
|
SOURCE_DIR "${musikbox_SOURCE_DIR}/src/contrib/taglib_plugin/taglib-1.11"
|
|
BUILD_IN_SOURCE 0
|
|
DOWNLOAD_COMMAND ""
|
|
UPDATE_COMMAND ""
|
|
CMAKE_ARGS "-DCMAKE_INSTALL_PREFIX:PATH=${musikbox_SOURCE_DIR}/src/contrib/taglib_plugin/taglib-1.11/stage/"
|
|
INSTALL_COMMAND make install
|
|
)
|
|
|
|
set(CMAKE_CXX_FLAGS ${CMAKE_CXX_FLAGS} "-std=c++11 -fpermissive")
|
|
set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -g")
|
|
set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -O2")
|
|
|
|
set (BOOST_LIBS
|
|
system
|
|
date_time
|
|
chrono
|
|
filesystem
|
|
iostreams
|
|
thread
|
|
regex
|
|
)
|
|
|
|
find_package(Boost 1.55.0 REQUIRED ${BOOST_LIBS})
|
|
|
|
add_definitions (-DHAVE_BOOST
|
|
-D_FILE_OFFSET_BITS=64)
|
|
set (BOOST_LINK_LIBS
|
|
${Boost_LIBRARIES})
|
|
|
|
#message(STATUS "boost libs: " ${BOOST_LINK_LIBS})
|
|
#message(STATUS "boost includes: " ${Boost_INCLUDE_DIRS})
|
|
|
|
set(CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}
|
|
${CMAKE_CURRENT_SOURCE_DIR}/Modules)
|
|
|
|
# SET (CMAKE_BUILD_TYPE DEBUG)
|
|
set (LIBRARY_OUTPUT_PATH ${musikbox_SOURCE_DIR}/bin/plugins)
|
|
set (EXECUTABLE_OUTPUT_PATH ${musikbox_SOURCE_DIR}/bin)
|
|
|
|
link_directories (
|
|
${musikbox_SOURCE_DIR}/bin/plugins
|
|
${musikbox_SOURCE_DIR}/src/contrib/taglib_plugin/taglib-1.11/stage/lib
|
|
)
|
|
|
|
set (musikbox_LINK_LIBS
|
|
${linux_LINK_LIBS}
|
|
${BOOST_LINK_LIBS}
|
|
dl
|
|
)
|
|
|
|
include_directories (
|
|
"${musikbox_SOURCE_DIR}/src"
|
|
"${musikbox_SOURCE_DIR}/src/core"
|
|
"${musikbox_SOURCE_DIR}/src/musikbox"
|
|
"${musikbox_SOURCE_DIR}/src/3rdparty/include"
|
|
"${musikbox_SOURCE_DIR}/src/contrib/taglib_plugin/taglib-1.11/stage/include"
|
|
)
|
|
|
|
add_subdirectory(src/core)
|
|
add_subdirectory(src/musikbox)
|
|
add_subdirectory(src/contrib/taglib_plugin)
|
|
add_subdirectory(src/contrib/m4adecoder)
|
|
add_subdirectory(src/contrib/oggdecoder)
|
|
add_subdirectory(src/contrib/mpg123decoder)
|
|
add_subdirectory(src/contrib/flacdecoder)
|
|
|
|
if (CMAKE_SYSTEM_NAME MATCHES "Linux")
|
|
add_subdirectory(src/contrib/alsaout)
|
|
else (CMAKE_SYSTEM_NAME MATCHES "Linux")
|
|
add_subdirectory(src/contrib/coreaudioout)
|
|
endif (CMAKE_SYSTEM_NAME MATCHES "Linux")
|