mirror of
https://github.com/H-uru/korman.git
synced 2025-07-14 02:27:36 -04:00
Add "Blender for Korman" and build/package process.
This will allow us to automate releases with the Blender 2.79 "experimenntal nightly" codebase. This is great because the newer Blender uses Python 3.7 (instead of 3.5). This pulls from my fork of Blender, which has a number of build improvements added on top.
This commit is contained in:
@ -1,22 +1,22 @@
|
||||
cmake_minimum_required(VERSION 3.0)
|
||||
cmake_minimum_required(VERSION 3.12)
|
||||
project(korlib)
|
||||
|
||||
set(CMAKE_INSTALL_PREFIX "${CMAKE_CURRENT_BINARY_DIR}/install" CACHE PATH "")
|
||||
set(CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake")
|
||||
|
||||
# Stolen shamelessly from PyHSPlasma
|
||||
find_package(PythonLibs REQUIRED)
|
||||
find_package(PythonInterp "3.5" REQUIRED)
|
||||
set(korlib_PYTHON_VERSION "" CACHE STRING "Exact Python3 version to find")
|
||||
if(korlib_PYTHON_VERSION)
|
||||
set(_Python3_find_version ${korlib_PYTHON_VERSION} EXACT)
|
||||
endif()
|
||||
set(Python3_FIND_STRATEGY VERSION)
|
||||
find_package(Python3 ${_Python3_find_version} COMPONENTS Development REQUIRED)
|
||||
|
||||
find_package(HSPlasma REQUIRED)
|
||||
find_package(Ogg REQUIRED)
|
||||
find_package(OpenGL REQUIRED)
|
||||
find_package(string_theory REQUIRED)
|
||||
find_package(Vorbis REQUIRED)
|
||||
|
||||
if(CMAKE_COMPILER_IS_GNUCXX OR ${CMAKE_CXX_COMPILER_ID} MATCHES ".*Clang")
|
||||
set(CMAKE_CXX_FLAGS "-Wall -Wextra -Wno-unused-parameter ${CMAKE_CXX_FLAGS}")
|
||||
endif()
|
||||
|
||||
# Da files
|
||||
set(korlib_HEADERS
|
||||
bumpmap.h
|
||||
korlib.h
|
||||
@ -32,26 +32,13 @@ set(korlib_SOURCES
|
||||
texture.cpp
|
||||
)
|
||||
|
||||
include_directories(${HSPlasma_INCLUDE_DIRS})
|
||||
include_directories(${Ogg_INCLUDE_DIR})
|
||||
include_directories(${OPENGL_INCLUDE_DIR})
|
||||
include_directories(${PYTHON_INCLUDE_DIRS})
|
||||
include_directories(${STRING_THEORY_INCLUDE_DIRS})
|
||||
include_directories(${Vorbis_INCLUDE_DIR})
|
||||
|
||||
add_library(_korlib SHARED ${korlib_HEADERS} ${korlib_SOURCES})
|
||||
set_target_properties(_korlib PROPERTIES PREFIX "")
|
||||
if(NOT WIN32)
|
||||
set_target_properties(_korlib PROPERTIES SUFFIX ".so")
|
||||
else()
|
||||
set_target_properties(_korlib PROPERTIES SUFFIX ".pyd")
|
||||
endif()
|
||||
target_link_libraries(_korlib HSPlasma ${Ogg_LIBRARIES} ${OPENGL_LIBRARIES}
|
||||
${PYTHON_LIBRARIES} ${STRING_THEORY_LIBRARIES}
|
||||
${Vorbis_LIBRARIES})
|
||||
|
||||
install(TARGETS _korlib
|
||||
RUNTIME DESTINATION bin
|
||||
LIBRARY DESTINATION lib
|
||||
ARCHIVE DESTINATION lib
|
||||
Python3_add_library(_korlib MODULE ${korlib_HEADERS} ${korlib_SOURCES})
|
||||
target_link_libraries(_korlib
|
||||
PRIVATE
|
||||
HSPlasma
|
||||
Ogg::ogg
|
||||
OpenGL::GL
|
||||
string_theory
|
||||
Vorbis::vorbisfile
|
||||
)
|
||||
install(TARGETS _korlib DESTINATION "bin")
|
||||
|
Reference in New Issue
Block a user