diff --git a/src/libprojectM/CMakeLists.txt b/src/libprojectM/CMakeLists.txt index c64f735c2..587bc6308 100644 --- a/src/libprojectM/CMakeLists.txt +++ b/src/libprojectM/CMakeLists.txt @@ -28,6 +28,11 @@ OPTION (BUILD_PROJECTM_STATIC "Build the projectM target library in the platform OPTION (DISABLE_NATIVE_PRESETS "Turn off support for native (C++ style) presets" OFF) OPTION (DISABLE_MILKDROP_PRESETS "Turn off support for Milkdrop (.milk / .prjm) presets" OFF) +# projectM version block +set(PROJECTM_VERSION 2.0.1) +set(PROJECTM_ABI_LEVEL 2) +# + SET(LIB_SUFFIX "" CACHE STRING "Define suffix of directory name (32/64)" FORCE) @@ -57,50 +62,50 @@ SET(projectM_SOURCES ${projectM_SOURCES} dlfcn.c win32-dirent.cpp) endif(MSVC) if (NOT DISABLE_NATIVE_PRESETS) -add_subdirectory(NativePresetFactory) -SET(PRESET_FACTORY_SOURCES ${PRESET_FACTORY_SOURCES} ${NativePresetFactory_SOURCE_DIR}) -SET(PRESET_FACTORY_BINARY_DIR ${PRESET_FACTORY_BINARY_DIR} ${NativePresetFactory_BINARY_DIR}) -SET(PRESET_FACTORY_LINK_TARGETS ${PRESET_FACTORY_LINK_TARGETS} NativePresetFactory) + add_subdirectory(NativePresetFactory) + SET(PRESET_FACTORY_SOURCES ${PRESET_FACTORY_SOURCES} ${NativePresetFactory_SOURCE_DIR}) + SET(PRESET_FACTORY_BINARY_DIR ${PRESET_FACTORY_BINARY_DIR} ${NativePresetFactory_BINARY_DIR}) + SET(PRESET_FACTORY_LINK_TARGETS ${PRESET_FACTORY_LINK_TARGETS} NativePresetFactory) endif(NOT DISABLE_NATIVE_PRESETS) if (NOT DISABLE_MILKDROP_PRESETS) -add_subdirectory(MilkdropPresetFactory) -SET(PRESET_FACTORY_SOURCES ${PRESET_FACTORY_SOURCES} ${MilkdropPresetFactory_SOURCE_DIR}) -SET(PRESET_FACTORY_BINARY_DIR ${PRESET_FACTORY_BINARY_DIR} ${MilkdropPrmaesetFactory_BINARY_DIR}) -SET(PRESET_FACTORY_LINK_TARGETS ${PRESET_FACTORY_LINK_TARGETS} MilkdropPresetFactory) + add_subdirectory(MilkdropPresetFactory) + SET(PRESET_FACTORY_SOURCES ${PRESET_FACTORY_SOURCES} ${MilkdropPresetFactory_SOURCE_DIR}) + SET(PRESET_FACTORY_BINARY_DIR ${PRESET_FACTORY_BINARY_DIR} ${MilkdropPrmaesetFactory_BINARY_DIR}) + SET(PRESET_FACTORY_LINK_TARGETS ${PRESET_FACTORY_LINK_TARGETS} MilkdropPresetFactory) endif(NOT DISABLE_MILKDROP_PRESETS) if (USE_DEVIL) -SET (projectM_SOURCES ${projectM_SOURCES}) -ADD_DEFINITIONS(-DUSE_DEVIL) -SET (IMAGE_LINK_TARGETS IL ILU ILUT) + SET (projectM_SOURCES ${projectM_SOURCES}) + ADD_DEFINITIONS(-DUSE_DEVIL) + SET (IMAGE_LINK_TARGETS IL ILU ILUT) else (USE_DEVIL) -SET (projectM_SOURCES ${projectM_SOURCES}) -SET (IMAGE_LINK_TARGETS ) + SET (projectM_SOURCES ${projectM_SOURCES}) + SET (IMAGE_LINK_TARGETS ) endif (USE_DEVIL) if (USE_CG) -ADD_DEFINITIONS(-DUSE_CG) -SET (CG_LINK_TARGETS Cg CgGL) + ADD_DEFINITIONS(-DUSE_CG) + SET (CG_LINK_TARGETS Cg CgGL) else (USE_CG) -SET (CG_LINK_TARGETS) + SET (CG_LINK_TARGETS) endif(USE_CG) include(CheckCXXCompilerFlag) if(USE_GLES1) -ADD_DEFINITIONS(-DUSE_GLES1) + ADD_DEFINITIONS(-DUSE_GLES1) endif(USE_GLES1) if(USE_FBO) -ADD_DEFINITIONS(-DUSE_FBO) + ADD_DEFINITIONS(-DUSE_FBO) endif(USE_FBO) if(USE_FTGL) -ADD_DEFINITIONS(-DUSE_FTGL) + ADD_DEFINITIONS(-DUSE_FTGL) -find_package( Freetype REQUIRED) -include_directories( ${FREETYPE_INCLUDE_DIRS} ) + find_package( Freetype REQUIRED) + include_directories( ${FREETYPE_INCLUDE_DIRS} ) endif(USE_FTGL) @@ -112,7 +117,7 @@ endif(BUILD_PROJECTM_STATIC) set_property(TARGET projectM PROPERTY LINK_INTERFACE_LIBRARIES "") set_property(TARGET projectM PROPERTY IMPORTED_LINK_DEPENDENT_LIBRARIES "") -SET_TARGET_PROPERTIES(projectM PROPERTIES VERSION 2.00 SOVERSION 2) +SET_TARGET_PROPERTIES(projectM PROPERTIES VERSION ${PROJECTM_VERSION} SOVERSION ${PROJECTM_ABI_LEVEL}) if (USE_THREADS) ADD_DEFINITIONS(-DUSE_THREADS) @@ -133,8 +138,6 @@ endif(APPLE) add_subdirectory(Renderer) -#ADD_DEFINITIONS(-DCMAKE_INSTALL_PREFIX="\\\"${CMAKE_INSTALL_PREFIX}\\\"") - FIND_PACKAGE(OpenGL) INCLUDE(FindPkgConfig.cmake) @@ -194,7 +197,7 @@ if(BUILD_PROJECTM_STATIC) ${PRESET_FACTORY_LINK_TARGETS} ${GLEW_LIBRARY} ${FTGL_LINK_TARGETS} - m + ${MATH_LIBRARIES} dl ${OPENGL_LIBRARIES} ) @@ -205,7 +208,7 @@ else(BUILD_PROJECTM_STATIC) ${PRESET_FACTORY_LINK_TARGETS} ${GLEW_LIBRARY} ${FTGL_LINK_TARGETS} - m + ${MATH_LIBRARIES} dl ${OPENGL_LIBRARIES} ) diff --git a/src/libprojectM/MilkdropPresetFactory/CMakeLists.txt b/src/libprojectM/MilkdropPresetFactory/CMakeLists.txt index 5d07c525e..4f8abf015 100644 --- a/src/libprojectM/MilkdropPresetFactory/CMakeLists.txt +++ b/src/libprojectM/MilkdropPresetFactory/CMakeLists.txt @@ -1,11 +1,18 @@ -PROJECT(MilkdropPresetFactory) -cmake_minimum_required(VERSION 2.4.0) - if(COMMAND cmake_policy) - cmake_policy(SET CMP0003 NEW) - endif(COMMAND cmake_policy) - -SET(MilkdropPresetFactory_SOURCES BuiltinFuncs.cpp Func.cpp MilkdropPreset.cpp Param.hpp PresetFrameIO.cpp CustomShape.cpp Eval.cpp MilkdropPresetFactory.cpp PerPixelEqn.cpp BuiltinParams.cpp InitCond.cpp Parser.cpp CustomWave.cpp Expr.cpp PerPointEqn.cpp Param.cpp PerFrameEqn.cpp IdlePreset.cpp) +SET(MilkdropPresetFactory_SOURCES + BuiltinFuncs.cpp + Func.cpp MilkdropPreset.cpp + Param.hpp PresetFrameIO.cpp + CustomShape.cpp + Eval.cpp + MilkdropPresetFactory.cpp + PerPixelEqn.cpp BuiltinParams.cpp + InitCond.cpp Parser.cpp + CustomWave.cpp Expr.cpp + PerPointEqn.cpp Param.cpp + PerFrameEqn.cpp + IdlePreset.cpp +) IF(NOT MSVC) SET (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fPIC") @@ -15,5 +22,4 @@ INCLUDE_DIRECTORIES(${projectM_SOURCE_DIR} ${Renderer_SOURCE_DIR}) LINK_DIRECTORIES(${projectM_BINARY_DIR} ${Renderer_BINARY_DIR}) ADD_LIBRARY(MilkdropPresetFactory STATIC ${MilkdropPresetFactory_SOURCES}) -SET_TARGET_PROPERTIES(MilkdropPresetFactory PROPERTIES VERSION 2.00 SOVERSION 2) TARGET_LINK_LIBRARIES(MilkdropPresetFactory Renderer) diff --git a/src/libprojectM/NativePresetFactory/CMakeLists.txt b/src/libprojectM/NativePresetFactory/CMakeLists.txt index 9d628e5a8..57571226a 100644 --- a/src/libprojectM/NativePresetFactory/CMakeLists.txt +++ b/src/libprojectM/NativePresetFactory/CMakeLists.txt @@ -1,9 +1,3 @@ -PROJECT(NativePresetFactory) -cmake_minimum_required(VERSION 2.4.0) - - if(COMMAND cmake_policy) - cmake_policy(SET CMP0003 NEW) - endif(COMMAND cmake_policy) SET(NativePresetFactory_SOURCES NativePresetFactory.cpp) @@ -20,5 +14,4 @@ endif(MSVC) INCLUDE_DIRECTORIES(${projectM_SOURCE_DIR} ${Renderer_SOURCE_DIR}) ADD_LIBRARY(NativePresetFactory STATIC ${NativePresetFactory_SOURCES}) -SET_TARGET_PROPERTIES(NativePresetFactory PROPERTIES VERSION 2.00 SOVERSION 2) TARGET_LINK_LIBRARIES(NativePresetFactory Renderer ${MATH_LIBRARIES} ${DL_LIBRARIES}) diff --git a/src/libprojectM/Renderer/CMakeLists.txt b/src/libprojectM/Renderer/CMakeLists.txt index c37ceb143..008ab410f 100644 --- a/src/libprojectM/Renderer/CMakeLists.txt +++ b/src/libprojectM/Renderer/CMakeLists.txt @@ -1,11 +1,32 @@ -PROJECT(Renderer) -cmake_minimum_required(VERSION 2.8.0) -SET(SOIL_SOURCES SOIL/image_DXT.c SOIL/image_helper.c SOIL/SOIL.c SOIL/stb_image_aug.c) +SET(SOIL_SOURCES + SOIL/image_DXT.c + SOIL/image_helper.c + SOIL/SOIL.c + SOIL/stb_image_aug.c +) -SET(Renderer_SOURCES FBO.cpp MilkdropWaveform.cpp PerPixelMesh.cpp Pipeline.cpp Renderer.cpp ShaderEngine.cpp UserTexture.cpp Waveform.cpp -Filters.cpp PerlinNoise.cpp PipelineContext.cpp Renderable.cpp BeatDetect.cpp Shader.cpp TextureManager.cpp VideoEcho.cpp -RenderItemDistanceMetric.cpp RenderItemMatcher.cpp ${SOIL_SOURCES}) +SET(Renderer_SOURCES + FBO.cpp + MilkdropWaveform.cpp + PerPixelMesh.cpp + Pipeline.cpp + Renderer.cpp + ShaderEngine.cpp + UserTexture.cpp + Waveform.cpp + Filters.cpp + PerlinNoise.cpp + PipelineContext.cpp + Renderable.cpp + BeatDetect.cpp + Shader.cpp + TextureManager.cpp + VideoEcho.cpp + RenderItemDistanceMetric.cpp + RenderItemMatcher.cpp + ${SOIL_SOURCES} +) IF(NOT MSVC) SET (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fPIC") @@ -21,7 +42,6 @@ endif(MSVC) INCLUDE_DIRECTORIES(${projectM_SOURCE_DIR}) ADD_LIBRARY(Renderer STATIC ${Renderer_SOURCES}) -SET_TARGET_PROPERTIES(Renderer PROPERTIES VERSION 2.00 SOVERSION 2) TARGET_LINK_LIBRARIES(Renderer ${MATH_LIBRARIES} ${GLEW_LINK_TARGETS} ${FTGL_LINK_TARGETS} diff --git a/src/projectM-qt/CMakeLists.txt b/src/projectM-qt/CMakeLists.txt index 72b303140..e73ab522f 100644 --- a/src/projectM-qt/CMakeLists.txt +++ b/src/projectM-qt/CMakeLists.txt @@ -16,6 +16,11 @@ endif(${CMAKE_PROJECT_NAME} MATCHES "PROJECTM_ROOT") OPTION(BUILD_PROJECTM_QT_STATIC "Build a static library of projectM-qt rather than the usual shared library format" OFF) +# projectM-Qt version block +set(PROJECTM_QT_VERSION 1.10) +set(PROJECTM_QT_ABI_LEVEL 1) +# + find_package(Qt4 REQUIRED) # find and setup Qt4 for this project include(${QT_USE_FILE}) @@ -108,7 +113,7 @@ endif(BUILD_PROJECTM_QT_STATIC) set_property(TARGET projectM-qt PROPERTY LINK_INTERFACE_LIBRARIES "") set_property(TARGET projectM-qt PROPERTY IMPORTED_LINK_DEPENDENT_LIBRARIES "") -SET_TARGET_PROPERTIES(projectM-qt PROPERTIES VERSION 1.10 SOVERSION 1) +SET_TARGET_PROPERTIES(projectM-qt PROPERTIES VERSION ${PROJECTM_QT_VERSION} SOVERSION ${PROJECTM_QT_ABI_LEVEL}) if (${CMAKE_PROJECT_NAME} MATCHES "projectM-complete") set(PROJECTM_INCLUDE ${PROJECTM_ROOT_SOURCE_DIR}/libprojectM)