2020-04-19 14:29:13 +12:00
|
|
|
|
cmake_minimum_required(VERSION 2.8.11)
|
2016-07-14 16:44:36 +12:00
|
|
|
|
|
|
|
|
|
set(CMAKE_BUILD_TYPE_INIT Release)
|
|
|
|
|
|
2020-10-02 19:20:33 +13:00
|
|
|
|
project(Tahoma2D)
|
2016-03-19 06:57:51 +13:00
|
|
|
|
|
2017-02-03 21:19:01 +13:00
|
|
|
|
|
|
|
|
|
#-----------------------------------------------------------------------------
|
|
|
|
|
# Platform Specific Defaults
|
|
|
|
|
|
|
|
|
|
# list of var-names
|
|
|
|
|
set(_init_vars)
|
|
|
|
|
|
2017-05-26 18:00:05 +12:00
|
|
|
|
#-----------------------------------------------------------------------------
|
|
|
|
|
# Select build target
|
|
|
|
|
set(BUILD_TARGET_WIN OFF)
|
|
|
|
|
set(BUILD_TARGET_APPLE OFF)
|
|
|
|
|
set(BUILD_TARGET_UNIX OFF)
|
|
|
|
|
if(WIN32)
|
|
|
|
|
set(BUILD_TARGET_WIN ON)
|
|
|
|
|
message(STATUS "Target system is WIN")
|
|
|
|
|
elseif(APPLE)
|
|
|
|
|
set(BUILD_TARGET_APPLE ON)
|
|
|
|
|
message(STATUS "Target system is APPLE")
|
|
|
|
|
elseif(UNIX)
|
|
|
|
|
set(BUILD_TARGET_UNIX ON)
|
|
|
|
|
message(STATUS "Target system is UNIX")
|
|
|
|
|
else()
|
|
|
|
|
set(BUILD_TARGET_UNIX ON)
|
|
|
|
|
message(WARNING "Target system unknown, set UNIX by default")
|
|
|
|
|
message(STATUS "Target system is UNIX (actually unknown)")
|
|
|
|
|
endif()
|
|
|
|
|
|
|
|
|
|
#-----------------------------------------------------------------------------
|
|
|
|
|
# Select build environment
|
|
|
|
|
|
|
|
|
|
set(BUILD_ENV_MSVC OFF)
|
|
|
|
|
set(BUILD_ENV_APPLE OFF)
|
|
|
|
|
set(BUILD_ENV_UNIXLIKE OFF)
|
|
|
|
|
if(MSVC)
|
|
|
|
|
set(BUILD_ENV_MSVC ON)
|
|
|
|
|
if(NOT BUILD_TARGET_WIN)
|
|
|
|
|
message(WARNING "Build environment is MSVC, but target system is not WIN")
|
|
|
|
|
endif()
|
|
|
|
|
message(STATUS "Build environment is MSVC")
|
|
|
|
|
elseif(CMAKE_HOST_APPLE)
|
|
|
|
|
set(BUILD_ENV_APPLE ON)
|
|
|
|
|
if(NOT BUILD_TARGET_APPLE)
|
|
|
|
|
message(WARNING "Build environment is APPLE, but target system is not APPLE")
|
|
|
|
|
endif()
|
|
|
|
|
message(STATUS "Build environment is APPLE")
|
|
|
|
|
elseif(CMAKE_HOST_UNIX OR CMAKE_COMPILER_IS_GNUCC)
|
|
|
|
|
set(BUILD_ENV_UNIXLIKE ON)
|
|
|
|
|
if(NOT BUILD_TARGET_UNIX AND NOT BUILD_TARGET_WIN)
|
|
|
|
|
message(WARNING "Build environment is UNIXLIKE, but target system is not UNIX or WIN")
|
|
|
|
|
endif()
|
|
|
|
|
message(STATUS "Build environment is UNIXLIKE")
|
|
|
|
|
else()
|
|
|
|
|
message(ERROR "Unsupported build environment, only MSVC, APPLE and UNIXLIKE are supported")
|
|
|
|
|
endif()
|
|
|
|
|
|
|
|
|
|
|
2017-02-03 21:19:01 +13:00
|
|
|
|
# initialize to ON
|
|
|
|
|
macro(option_defaults_init)
|
|
|
|
|
foreach(_var ${ARGV})
|
|
|
|
|
set(${_var} ON)
|
|
|
|
|
list(APPEND _init_vars "${_var}")
|
|
|
|
|
endforeach()
|
|
|
|
|
unset(_var)
|
|
|
|
|
endmacro()
|
|
|
|
|
|
|
|
|
|
# remove from namespace
|
|
|
|
|
macro(option_defaults_clear)
|
|
|
|
|
foreach(_var ${_init_vars})
|
|
|
|
|
unset(${_var})
|
|
|
|
|
endforeach()
|
|
|
|
|
unset(_var)
|
|
|
|
|
unset(_init_vars)
|
|
|
|
|
endmacro()
|
|
|
|
|
|
|
|
|
|
# values to initialize WITH_****
|
|
|
|
|
option_defaults_init(
|
|
|
|
|
_init_SYSTEM_LZO
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
# customize...
|
2017-05-26 18:00:05 +12:00
|
|
|
|
if(BUILD_ENV_MSVC)
|
2017-02-03 21:19:01 +13:00
|
|
|
|
set(_init_SYSTEM_LZO OFF)
|
2017-02-10 11:51:07 +13:00
|
|
|
|
set(_init_SYSTEM_SUPERLU OFF)
|
2017-05-26 18:00:05 +12:00
|
|
|
|
elseif(BUILD_ENV_APPLE)
|
2017-02-03 21:19:01 +13:00
|
|
|
|
set(_init_SYSTEM_LZO OFF)
|
2017-02-10 11:51:07 +13:00
|
|
|
|
set(_init_SYSTEM_SUPERLU OFF)
|
2017-05-26 18:00:05 +12:00
|
|
|
|
elseif(BUILD_ENV_UNIXLIKE)
|
2017-02-03 21:19:01 +13:00
|
|
|
|
set(_init_SYSTEM_LZO ON)
|
2017-02-10 11:51:07 +13:00
|
|
|
|
set(_init_SYSTEM_SUPERLU ON)
|
2017-02-03 21:19:01 +13:00
|
|
|
|
endif()
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#-----------------------------------------------------------------------------
|
|
|
|
|
# Build Options
|
|
|
|
|
|
|
|
|
|
option(WITH_SYSTEM_LZO "Use the system LZO library instead of 'thirdpary'" ${_init_SYSTEM_LZO})
|
2017-02-10 11:51:07 +13:00
|
|
|
|
option(WITH_SYSTEM_SUPERLU "Use the system SuperLU library instead of 'thirdpary'" ${_init_SYSTEM_SUPERLU})
|
2020-04-13 02:43:17 +12:00
|
|
|
|
option(WITH_CANON "Build with Canon DSLR support - Requires Canon SDK" OFF)
|
2020-12-23 18:22:58 +13:00
|
|
|
|
option(WITH_TRANSLATION "Generate translation projects as well" ON)
|
2021-02-12 00:41:40 +13:00
|
|
|
|
option(WITH_CRASHRPT "Build CrashRpt support - Requires CrashRpt Library" OFF)
|
2021-03-25 22:27:45 +13:00
|
|
|
|
option(WITH_WINTAB "(Windows only) Build with customized Qt with WinTab support. https://github.com/shun-iwasawa/qt5/releases/tag/v5.15.2_wintab" OFF)
|
2017-02-03 21:19:01 +13:00
|
|
|
|
|
|
|
|
|
# avoid using again
|
|
|
|
|
option_defaults_clear()
|
|
|
|
|
|
|
|
|
|
# end option(...)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#-----------------------------------------------------------------------------
|
|
|
|
|
# Third Party & System Libs
|
|
|
|
|
|
2016-07-08 19:23:32 +12:00
|
|
|
|
include(${CMAKE_SOURCE_DIR}/../cmake/util_compiler.cmake)
|
|
|
|
|
|
2016-03-19 06:57:51 +13:00
|
|
|
|
get_filename_component(SDKROOT ../../thirdparty/ ABSOLUTE)
|
2016-07-09 12:44:05 +12:00
|
|
|
|
message(STATUS "SDK Root:" ${SDKROOT})
|
2016-04-01 03:09:25 +13:00
|
|
|
|
list(APPEND CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/../cmake")
|
2017-05-26 18:00:05 +12:00
|
|
|
|
if(BUILD_ENV_APPLE)
|
2016-03-23 07:48:01 +13:00
|
|
|
|
set(THIRDPARTY_LIBS_HINTS "/usr/local/Cellar/" "/opt/include" ${SDKROOT})
|
2017-05-26 18:00:05 +12:00
|
|
|
|
elseif(BUILD_ENV_MSVC OR BUILD_ENV_UNIXLIKE)
|
2016-03-23 07:48:01 +13:00
|
|
|
|
set(THIRDPARTY_LIBS_HINTS ${SDKROOT})
|
|
|
|
|
endif()
|
|
|
|
|
|
2016-07-09 12:44:05 +12:00
|
|
|
|
message(STATUS "Thirdpary Library Search path:" ${THIRDPARTY_LIBS_HINTS})
|
2016-03-19 06:57:51 +13:00
|
|
|
|
|
2017-05-26 18:00:05 +12:00
|
|
|
|
if(BUILD_ENV_MSVC)
|
2021-03-25 22:27:45 +13:00
|
|
|
|
set(QT_PATH "C:/Qt/5.15.2/msvc2019${PLATFORM2}" CACHE PATH "Qt installation directory")
|
2016-03-19 06:57:51 +13:00
|
|
|
|
if(NOT EXISTS ${QT_PATH})
|
|
|
|
|
message("Specify QT_PATH properly")
|
|
|
|
|
return()
|
|
|
|
|
endif()
|
|
|
|
|
set(QT_LIB_PATH ${QT_PATH})
|
2021-03-18 19:28:59 +13:00
|
|
|
|
set(CMAKE_PREFIX_PATH "${CMAKE_PREFIX_PATH};${QT_PATH}/lib/cmake/")
|
2016-06-14 00:37:09 +12:00
|
|
|
|
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} /wd4251")
|
|
|
|
|
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /wd4251")
|
2016-07-03 00:23:18 +12:00
|
|
|
|
add_definitions(
|
|
|
|
|
-DVC_EXTRALEAN
|
|
|
|
|
-DNOMINMAX
|
|
|
|
|
-D_USE_MATH_DEFINES
|
|
|
|
|
)
|
2017-05-26 18:00:05 +12:00
|
|
|
|
elseif(BUILD_ENV_APPLE)
|
2016-04-27 23:48:12 +12:00
|
|
|
|
if(NOT PLATFORM)
|
2016-03-19 06:57:51 +13:00
|
|
|
|
set(PLATFORM 64)
|
|
|
|
|
endif()
|
|
|
|
|
message("PLATFORM:" ${PLATFORM})
|
2016-04-27 23:48:12 +12:00
|
|
|
|
if(PLATFORM EQUAL 64)
|
2021-03-18 19:28:59 +13:00
|
|
|
|
set(QT_PATH "~/Qt5.9.2/5.9.2/clang_${PLATFORM}/lib" CACHE PATH "Qt installation directory")
|
2016-04-22 19:30:20 +12:00
|
|
|
|
set(QT_LIB_PATH "${QT_PATH}/")
|
2021-03-18 19:28:59 +13:00
|
|
|
|
set(CMAKE_PREFIX_PATH "${CMAKE_PREFIX_PATH};${QT_LIB_PATH}cmake/")
|
|
|
|
|
foreach(path ${CMAKE_PREFIX_PATH})
|
|
|
|
|
message("CMAKE_PREFIX_PATH: " ${path})
|
|
|
|
|
endforeach(path)
|
2016-07-03 00:23:18 +12:00
|
|
|
|
add_definitions(
|
|
|
|
|
-DMACOSX
|
|
|
|
|
-Di386
|
2020-04-13 02:43:17 +12:00
|
|
|
|
-D__MACOS__
|
2016-07-03 00:23:18 +12:00
|
|
|
|
)
|
2016-03-19 06:57:51 +13:00
|
|
|
|
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -m64 -std=c++11 -stdlib=libc++ -fno-implicit-templates")
|
2020-07-26 16:53:56 +12:00
|
|
|
|
set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -m64 -std=c++11 -stdlib=libc++ -fno-implicit-templates")
|
2016-05-18 16:03:37 +12:00
|
|
|
|
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -m64")
|
2016-03-19 06:57:51 +13:00
|
|
|
|
elseif(PLATFORM EQUAL 32)
|
2020-06-29 15:05:10 +12:00
|
|
|
|
set(QT_PATH "~/Qt5.9.2/5.9.2/clang_32/lib" CACHE PATH "Qt installation directory")
|
2016-04-22 19:30:20 +12:00
|
|
|
|
set(QT_LIB_PATH "${QT_PATH}/")
|
|
|
|
|
set(CMAKE_PREFIX_PATH "${QT_LIB_PATH}cmake/")
|
|
|
|
|
|
2016-03-19 06:57:51 +13:00
|
|
|
|
message("CMAKE_PREFIX_PATH:" ${CMAKE_PREFIX_PATH})
|
2016-07-03 00:23:18 +12:00
|
|
|
|
add_definitions(
|
|
|
|
|
-DMACOSX
|
|
|
|
|
-Di386
|
2020-04-13 02:43:17 +12:00
|
|
|
|
-D__MACOS__
|
2016-07-03 00:23:18 +12:00
|
|
|
|
)
|
2016-03-19 06:57:51 +13:00
|
|
|
|
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -m32 -std=c++11 -stdlib=libc++ -fno-implicit-templates -D HAS_QUICKDRAW")
|
|
|
|
|
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -m32")
|
|
|
|
|
set(CMAKE_LINKER_FLAGS "${CMAKE_LINKER_FLAGS} -m32")
|
|
|
|
|
else()
|
|
|
|
|
message(FATAL_ERROR "Invalid PLATFORM:" ${PLATFORM} ". 'PLATFORM' must be 32 or 64.")
|
|
|
|
|
endif()
|
2017-05-26 18:00:05 +12:00
|
|
|
|
elseif(BUILD_ENV_UNIXLIKE)
|
2016-06-16 16:52:02 +12:00
|
|
|
|
# Needed for correct Qt detection
|
|
|
|
|
cmake_minimum_required(VERSION 2.8.12)
|
|
|
|
|
|
|
|
|
|
if(CMAKE_SIZEOF_VOID_P MATCHES "8")
|
|
|
|
|
set(PLATFORM 64)
|
|
|
|
|
else()
|
|
|
|
|
set(PLATFORM 32)
|
|
|
|
|
endif()
|
2016-10-28 21:09:35 +13:00
|
|
|
|
if(CMAKE_SYSTEM_NAME MATCHES "Linux")
|
2016-06-16 16:52:02 +12:00
|
|
|
|
add_definitions(-DLINUX)
|
2020-05-23 02:17:41 +12:00
|
|
|
|
elseif(CMAKE_SYSTEM_NAME MATCHES "^.*BSD$|DragonFly")
|
|
|
|
|
set(BUILD_TARGET_BSD ON)
|
|
|
|
|
add_definitions(-D_BSD_SOURCE -DFREEBSD)
|
|
|
|
|
include_directories("/usr/local/include/")
|
|
|
|
|
message(STATUS "Configuring for BSD system")
|
2017-05-26 18:00:05 +12:00
|
|
|
|
elseif(NOT BUILD_TARGET_WIN)
|
2016-06-16 16:52:02 +12:00
|
|
|
|
message(WARNING "Support for generic Unix (Not Apple or Linux) isn't yet working!")
|
|
|
|
|
endif()
|
|
|
|
|
|
|
|
|
|
set(CMAKE_CXX_STANDARD 11)
|
|
|
|
|
|
|
|
|
|
find_package(Qt5Widgets)
|
|
|
|
|
|
2019-09-18 22:03:45 +12:00
|
|
|
|
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
|
|
|
|
|
if (NOT (CMAKE_CXX_COMPILER_ID STREQUAL "Clang"))
|
|
|
|
|
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -lstdc++")
|
|
|
|
|
endif()
|
2016-04-27 23:48:12 +12:00
|
|
|
|
endif()
|
2016-03-19 06:57:51 +13:00
|
|
|
|
|
2016-07-03 00:23:18 +12:00
|
|
|
|
add_definitions(
|
|
|
|
|
-DQT_GUI_LIB
|
|
|
|
|
-DQT_NETWORK_LIB
|
|
|
|
|
-DQT_CORE_LIB
|
|
|
|
|
-DQT_SHARED
|
|
|
|
|
)
|
2016-03-19 06:57:51 +13:00
|
|
|
|
|
|
|
|
|
# Find includes in corresponding build directories
|
|
|
|
|
set(CMAKE_INCLUDE_CURRENT_DIR ON)
|
|
|
|
|
|
2017-05-26 18:00:05 +12:00
|
|
|
|
if(BUILD_ENV_APPLE)
|
2016-04-22 20:51:35 +12:00
|
|
|
|
set(CMAKE_MACOSX_RPATH ON)
|
|
|
|
|
set(CMAKE_SKIP_BUILD_RPATH FALSE)
|
2016-07-14 22:09:44 +12:00
|
|
|
|
set(CMAKE_BUILD_WITH_INSTALL_RPATH FALSE)
|
2016-04-22 20:51:35 +12:00
|
|
|
|
set(CMAKE_INSTALL_RPATH ${QT_LIB_PATH})
|
|
|
|
|
set(CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE)
|
2020-04-13 02:43:17 +12:00
|
|
|
|
set(CMAKE_FIND_FRAMEWORK LAST)
|
2016-04-22 20:51:35 +12:00
|
|
|
|
list(FIND CMAKE_PLATFORM_IMPLICIT_LINK_DIRECTORIES "${QT_LIB_PATH}" isSystemDir)
|
|
|
|
|
if("${isSystemDir}" STREQUAL "-1")
|
|
|
|
|
set(CMAKE_INSTALL_RPATH "${QT_LIB_PATH}")
|
|
|
|
|
endif()
|
|
|
|
|
endif()
|
2016-03-19 06:57:51 +13:00
|
|
|
|
|
2016-06-30 16:37:18 +12:00
|
|
|
|
include_directories(
|
|
|
|
|
include
|
|
|
|
|
)
|
2016-03-23 07:48:01 +13:00
|
|
|
|
|
2016-03-19 06:57:51 +13:00
|
|
|
|
# Find the QtWidgets library
|
|
|
|
|
find_package(Qt5 REQUIRED
|
|
|
|
|
Core
|
|
|
|
|
Gui
|
|
|
|
|
Network
|
|
|
|
|
OpenGL
|
|
|
|
|
Svg
|
|
|
|
|
Xml
|
|
|
|
|
Script
|
|
|
|
|
Widgets
|
|
|
|
|
PrintSupport
|
2016-06-29 19:36:05 +12:00
|
|
|
|
LinguistTools
|
2016-07-23 06:59:47 +12:00
|
|
|
|
Multimedia
|
2017-08-07 18:38:11 +12:00
|
|
|
|
MultimediaWidgets
|
2020-04-19 14:29:13 +12:00
|
|
|
|
SerialPort
|
2016-07-23 06:59:47 +12:00
|
|
|
|
)
|
2016-03-19 06:57:51 +13:00
|
|
|
|
|
2016-11-13 08:32:27 +13:00
|
|
|
|
set(QT_MINIMUM_VERSION 5.5.0)
|
|
|
|
|
if(Qt5Core_VERSION VERSION_LESS QT_MINIMUM_VERSION)
|
|
|
|
|
MESSAGE(FATAL_ERROR "Minimum supported Qt version: ${QT_MINIMUM_VERSION}.
|
|
|
|
|
Installed version: ${Qt5Core_VERSION}")
|
|
|
|
|
endif()
|
|
|
|
|
unset(QT_MINIMUM_VERSION)
|
|
|
|
|
|
2020-04-13 02:43:17 +12:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if(BUILD_ENV_MSVC)
|
2019-12-24 00:24:44 +13:00
|
|
|
|
include_directories(
|
|
|
|
|
SYSTEM
|
2020-11-05 07:49:17 +13:00
|
|
|
|
${SDKROOT}/freeglut/include
|
2019-12-24 00:24:44 +13:00
|
|
|
|
${SDKROOT}/zlib-1.2.8
|
2021-03-01 20:14:20 +13:00
|
|
|
|
#${SDKROOT}/LibJPEG/jpeg-9
|
|
|
|
|
${SDKROOT}/libjpeg-turbo/include
|
2019-12-24 00:24:44 +13:00
|
|
|
|
)
|
|
|
|
|
add_definitions(
|
|
|
|
|
-DGLUT_NO_LIB_PRAGMA
|
|
|
|
|
)
|
2021-02-12 00:41:40 +13:00
|
|
|
|
|
|
|
|
|
if(WITH_CRASHRPT)
|
|
|
|
|
include_directories(
|
|
|
|
|
${SDKROOT}/crashrpt/include
|
|
|
|
|
)
|
|
|
|
|
endif()
|
2019-12-24 00:24:44 +13:00
|
|
|
|
endif()
|
|
|
|
|
|
2020-04-15 14:41:54 +12:00
|
|
|
|
if(BUILD_ENV_MSVC)
|
|
|
|
|
find_package(OpenCV 4.1 REQUIRED
|
2020-04-15 15:48:14 +12:00
|
|
|
|
PATHS "C:/OpenCV/opencv/build" "C:/opencv/build" "C:/Tools/opencv/build"
|
2020-04-15 14:41:54 +12:00
|
|
|
|
)
|
2020-04-21 13:34:58 +12:00
|
|
|
|
elseif(BUILD_ENV_UNIXLIKE)
|
2020-09-23 15:03:16 +12:00
|
|
|
|
find_package(OpenCV REQUIRED)
|
2020-04-15 14:41:54 +12:00
|
|
|
|
else()
|
2020-09-23 15:03:16 +12:00
|
|
|
|
find_package(OpenCV 4.1 REQUIRED)
|
2020-04-15 14:41:54 +12:00
|
|
|
|
endif()
|
2020-09-23 15:03:16 +12:00
|
|
|
|
|
2020-04-13 02:43:17 +12:00
|
|
|
|
include_directories(
|
2021-03-01 20:14:20 +13:00
|
|
|
|
# ${SDKROOT}/libjpeg-turbo64/include
|
2020-04-13 02:43:17 +12:00
|
|
|
|
${OpenCV_INCLUDE_DIRS}
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
if(WITH_CANON)
|
2016-03-19 06:57:51 +13:00
|
|
|
|
include_directories(
|
2019-12-24 00:24:44 +13:00
|
|
|
|
${SDKROOT}/canon/Header
|
2016-07-03 00:23:18 +12:00
|
|
|
|
)
|
2016-03-19 06:57:51 +13:00
|
|
|
|
endif()
|
|
|
|
|
|
|
|
|
|
get_target_property(QtCore_location Qt5::Core LOCATION)
|
|
|
|
|
get_target_property(QtWidget_location Qt5::Widgets LOCATION)
|
2016-07-09 12:44:05 +12:00
|
|
|
|
message(STATUS "Qt Core Location:" ${QtCore_location})
|
2016-03-19 06:57:51 +13:00
|
|
|
|
|
|
|
|
|
macro(_find_toonz_library OUT_LIB_LIST IN_LIB_LIST)
|
|
|
|
|
set(OUTLIST "")
|
|
|
|
|
foreach(arg ${IN_LIB_LIST})
|
|
|
|
|
unset(COREPATH CACHE)
|
|
|
|
|
# find しても cmake が走るときにはできていないので完全なパス名を生成して返すだけ
|
2017-05-26 18:00:05 +12:00
|
|
|
|
if(BUILD_ENV_APPLE)
|
2019-04-21 14:54:44 +12:00
|
|
|
|
set(LIBPATH "\$<TARGET_FILE:${arg}>")
|
2016-06-16 16:52:02 +12:00
|
|
|
|
else()
|
|
|
|
|
set(LIBPATH ${arg})
|
2016-03-19 06:57:51 +13:00
|
|
|
|
endif()
|
|
|
|
|
set(OUTLIST ${OUTLIST} ${LIBPATH})
|
|
|
|
|
endforeach()
|
|
|
|
|
set(${OUT_LIB_LIST} ${OUTLIST})
|
|
|
|
|
endmacro()
|
|
|
|
|
|
|
|
|
|
set(TNZSTDFX_Location)
|
|
|
|
|
set(TFARM_Location)
|
|
|
|
|
|
2017-05-26 18:00:05 +12:00
|
|
|
|
set(QT_LIB) # avoid warning
|
|
|
|
|
|
|
|
|
|
if(BUILD_ENV_MSVC)
|
2016-04-27 23:48:12 +12:00
|
|
|
|
if(CMAKE_SIZEOF_VOID_P EQUAL 4)
|
2016-03-19 06:57:51 +13:00
|
|
|
|
set(PLATFORM 32)
|
|
|
|
|
set(PLATFORM2)
|
|
|
|
|
else()
|
|
|
|
|
set(PLATFORM 64)
|
|
|
|
|
set(PLATFORM2 _64)
|
|
|
|
|
endif()
|
|
|
|
|
|
2016-07-04 20:50:30 +12:00
|
|
|
|
if(MSVC_VERSION GREATER 1800)
|
|
|
|
|
set(MSVC_LIB_VERSION 2015)
|
|
|
|
|
else()
|
|
|
|
|
set(MSVC_LIB_VERSION 2013)
|
|
|
|
|
endif()
|
|
|
|
|
|
2020-11-05 07:49:17 +13:00
|
|
|
|
set(GLUT_LIB ${SDKROOT}/freeglut/lib/x64/freeglut.lib)
|
2016-03-19 06:57:51 +13:00
|
|
|
|
set(GL_LIB opengl32.lib)
|
|
|
|
|
set(Z_LIB
|
2016-07-04 20:50:30 +12:00
|
|
|
|
optimized ${SDKROOT}/zlib-1.2.8/lib/zlib-1.2.8_${MSVC_LIB_VERSION}${PLATFORM2}.lib
|
2016-07-23 06:59:47 +12:00
|
|
|
|
debug ${SDKROOT}/zlib-1.2.8/lib/zlib-1.2.8_${MSVC_LIB_VERSION}${PLATFORM2}d.lib
|
|
|
|
|
)
|
2021-03-01 20:14:20 +13:00
|
|
|
|
#set(JPEG_LIB ${SDKROOT}/LibJPEG/jpeg-9/lib/LibJPEG-9_${MSVC_LIB_VERSION}${PLATFORM2}.lib)
|
|
|
|
|
set(JPEG_LIB ${SDKROOT}/libjpeg-turbo/lib/jpeg-static_${MSVC_LIB_VERSION}${PLATFORM2}.lib)
|
|
|
|
|
set(TURBOJPEG_LIB ${SDKROOT}/libjpeg-turbo/lib/turbojpeg-static_${MSVC_LIB_VERSION}${PLATFORM2}.lib)
|
2016-03-24 08:03:50 +13:00
|
|
|
|
set(TIFF_INCLUDE_DIR ${SDKROOT}/tiff-4.0.3/libtiff)
|
2016-03-19 06:57:51 +13:00
|
|
|
|
set(TIFF_LIB
|
2016-07-04 20:50:30 +12:00
|
|
|
|
optimized ${SDKROOT}/tiff-4.0.3/lib/LibTIFF-4.0.3_${MSVC_LIB_VERSION}${PLATFORM2}.lib
|
2016-07-23 06:59:47 +12:00
|
|
|
|
debug ${SDKROOT}/tiff-4.0.3/lib/LibTIFF-4.0.3_${MSVC_LIB_VERSION}${PLATFORM2}d.lib
|
|
|
|
|
)
|
2016-03-24 08:03:50 +13:00
|
|
|
|
set(PNG_LIB
|
2016-07-04 20:50:30 +12:00
|
|
|
|
optimized ${SDKROOT}/libpng-1.6.21/lib/libpng16_${MSVC_LIB_VERSION}${PLATFORM2}.lib
|
2016-07-23 06:59:47 +12:00
|
|
|
|
debug ${SDKROOT}/libpng-1.6.21/lib/libpng16_${MSVC_LIB_VERSION}${PLATFORM2}d.lib
|
|
|
|
|
)
|
2016-03-19 06:57:51 +13:00
|
|
|
|
set(GLEW_LIB ${SDKROOT}/glew/glew-1.9.0/lib/glew${PLATFORM}.lib)
|
|
|
|
|
set(LZ4_LIB ${SDKROOT}/Lz4/Lz4_131/lz4_${PLATFORM}.lib)
|
2016-07-04 20:50:30 +12:00
|
|
|
|
set(SUPERLU_LIB ${SDKROOT}/superlu/SuperLU_${MSVC_LIB_VERSION}_${PLATFORM}.lib)
|
2016-03-19 06:57:51 +13:00
|
|
|
|
set(OPENBLAS_LIB ${SDKROOT}/openblas/libopenblas_${PLATFORM}.lib)
|
|
|
|
|
set(USB_LIB) # unused
|
2020-04-13 02:43:17 +12:00
|
|
|
|
if (WITH_CANON)
|
|
|
|
|
if(BUILD_ENV_APPLE)
|
|
|
|
|
set(CANON_LIB ${SDKROOT}/canon/Framework/EDSDK.framework)
|
|
|
|
|
else()
|
|
|
|
|
set(CANON_LIB ${SDKROOT}/canon/library/EDSDK.lib)
|
|
|
|
|
endif()
|
2019-12-24 00:24:44 +13:00
|
|
|
|
endif()
|
2017-08-04 15:31:50 +12:00
|
|
|
|
set(MYPAINT_LIB_INCLUDE_DIRS ${SDKROOT}/libmypaint/dist/${PLATFORM}/include/libmypaint)
|
|
|
|
|
set(MYPAINT_LIB_LDFLAGS ${SDKROOT}/libmypaint/dist/${PLATFORM}/libmypaint.lib)
|
2021-02-12 00:41:40 +13:00
|
|
|
|
|
|
|
|
|
if(WITH_CRASHRPT)
|
|
|
|
|
set(CRASHRPT_LIB ${SDKROOT}/crashrpt/CrashRpt1500.lib)
|
|
|
|
|
endif()
|
2017-05-26 18:00:05 +12:00
|
|
|
|
elseif(BUILD_ENV_APPLE)
|
2016-03-19 06:57:51 +13:00
|
|
|
|
find_library(GLUT_LIB GLUT)
|
|
|
|
|
find_library(GL_LIB OpenGL)
|
|
|
|
|
find_library(Z_LIB z)
|
2016-03-23 07:48:01 +13:00
|
|
|
|
|
2016-03-24 04:50:22 +13:00
|
|
|
|
find_package(TIFF REQUIRED)
|
|
|
|
|
set(TIFF_LIB ${TIFF_LIBRARY})
|
2016-03-23 07:48:01 +13:00
|
|
|
|
# the libraries have not .pc nor preferred Find*.cmake. use custom modules.
|
2016-03-24 04:50:22 +13:00
|
|
|
|
find_package(PNG REQUIRED)
|
|
|
|
|
message("******* libpng:" ${PNG_LIBRARY})
|
|
|
|
|
set(PNG_LIB ${PNG_LIBRARY})
|
2016-03-23 07:48:01 +13:00
|
|
|
|
find_package(GLEW)
|
|
|
|
|
|
|
|
|
|
find_package(SuperLU REQUIRED)
|
|
|
|
|
set(SUPERLU_INCLUDE_DIR ${SUPERLU_INCLUDE_DIR}/superlu)
|
|
|
|
|
set(SUPERLU_LIB ${SUPERLU_LIBRARY})
|
|
|
|
|
message("SuperLU:" ${SUPERLU_INCLUDE_DIR})
|
|
|
|
|
|
|
|
|
|
find_package(JPEG REQUIRED)
|
|
|
|
|
|
|
|
|
|
# the libraries have .pc
|
|
|
|
|
find_package(PkgConfig)
|
|
|
|
|
if(GLEW-NOTFOUND)
|
|
|
|
|
pkg_check_modules(GLEW REQUIRED glew)
|
|
|
|
|
endif()
|
2020-02-04 07:19:37 +13:00
|
|
|
|
if (TARGET GLEW::GLEW)
|
|
|
|
|
set(GLEW_LIB GLEW::GLEW)
|
|
|
|
|
else()
|
|
|
|
|
set(GLEW_LIB ${GLEW_LIBRARIES})
|
|
|
|
|
endif()
|
2016-03-23 07:48:01 +13:00
|
|
|
|
|
|
|
|
|
pkg_check_modules(LZ4_LIB REQUIRED liblz4)
|
|
|
|
|
|
|
|
|
|
message("**************** lz4 lib:" ${LZ4_LIB_INCLUDE_DIRS})
|
|
|
|
|
find_path(LZ4_STATIC lz4frame_static.h PATH ${LZ4_LIB_INCLUDE_DIRS})
|
|
|
|
|
if(LZ4_STATIC-FOUND)
|
2017-02-11 13:12:48 +13:00
|
|
|
|
add_definitions(-DLZ4_STATIC)
|
2016-03-23 07:48:01 +13:00
|
|
|
|
endif()
|
|
|
|
|
|
2016-03-19 06:57:51 +13:00
|
|
|
|
set(OPENBLAS_LIB) # unused?
|
2016-03-23 07:48:01 +13:00
|
|
|
|
|
|
|
|
|
set(JPEG_LIB ${JPEG_LIBRARY})
|
|
|
|
|
set(LZ4_LIB ${LZ4_LIB_LDFLAGS})
|
2016-03-25 22:42:18 +13:00
|
|
|
|
|
|
|
|
|
find_package(LZO REQUIRED)
|
|
|
|
|
message("LZO:" ${LZO_INCLUDE_DIR})
|
2016-06-16 16:52:02 +12:00
|
|
|
|
|
2017-08-04 15:31:50 +12:00
|
|
|
|
pkg_check_modules(MYPAINT_LIB REQUIRED libmypaint)
|
2020-04-13 02:43:17 +12:00
|
|
|
|
|
|
|
|
|
pkg_check_modules(TURBOJPEG REQUIRED libturbojpeg)
|
|
|
|
|
find_library(TURBOJPEG_LIB turbojpeg ${TURBOJPEG_LIBRARY_DIRS})
|
|
|
|
|
message("**************** turbojpeg lib:" ${TURBOJPEG_LIB})
|
|
|
|
|
|
|
|
|
|
if (WITH_CANON)
|
|
|
|
|
if(BUILD_ENV_APPLE)
|
|
|
|
|
set(CANON_LIB ${SDKROOT}/canon/Framework/EDSDK.framework)
|
|
|
|
|
else()
|
|
|
|
|
set(CANON_LIB ${SDKROOT}/canon/library/EDSDK.lib)
|
|
|
|
|
endif()
|
|
|
|
|
endif()
|
|
|
|
|
|
2017-05-26 18:00:05 +12:00
|
|
|
|
elseif(BUILD_ENV_UNIXLIKE)
|
|
|
|
|
if(BUILD_TARGET_WIN)
|
|
|
|
|
find_library(GL_LIB opengl32)
|
|
|
|
|
find_library(GLU_LIB glu32)
|
|
|
|
|
find_library(GLUT_LIB NAMES glut freeglut)
|
|
|
|
|
else()
|
|
|
|
|
find_library(GL_LIB GL)
|
|
|
|
|
find_library(GLU_LIB GLU)
|
|
|
|
|
find_library(GLUT_LIB glut)
|
|
|
|
|
endif()
|
2016-06-16 16:52:02 +12:00
|
|
|
|
find_library(Z_LIB z)
|
|
|
|
|
|
2020-05-23 02:17:41 +12:00
|
|
|
|
if(NOT BUILD_TARGET_BSD)
|
|
|
|
|
find_package(TIFF REQUIRED)
|
|
|
|
|
endif()
|
2016-06-16 16:52:02 +12:00
|
|
|
|
find_package(PNG REQUIRED)
|
|
|
|
|
set(PNG_LIB ${PNG_LIBRARY})
|
|
|
|
|
message("******* libpng:" ${PNG_LIB})
|
|
|
|
|
find_package(GLEW)
|
|
|
|
|
|
|
|
|
|
find_package(SuperLU REQUIRED)
|
|
|
|
|
set(SUPERLU_LIB ${SUPERLU_LIBRARY})
|
|
|
|
|
|
|
|
|
|
find_package(JPEG REQUIRED)
|
|
|
|
|
|
|
|
|
|
# the libraries have .pc
|
|
|
|
|
find_package(PkgConfig)
|
2016-07-01 22:29:10 +12:00
|
|
|
|
|
2020-10-02 19:20:33 +13:00
|
|
|
|
# This is not required for Tahoma2D itself, but libtiff will pick it up if
|
2016-07-01 22:29:10 +12:00
|
|
|
|
# present and libimage won't be aware causing linker to fail
|
|
|
|
|
pkg_check_modules(LZMA liblzma)
|
|
|
|
|
set(TIFF_LIB ${TIFF_LIBRARY} ${LZMA_LIBRARIES})
|
|
|
|
|
|
2016-06-16 16:52:02 +12:00
|
|
|
|
if(GLEW-NOTFOUND)
|
|
|
|
|
pkg_check_modules(GLEW REQUIRED glew)
|
|
|
|
|
endif()
|
|
|
|
|
set(GLEW_LIB ${GLEW_LIBRARIES})
|
|
|
|
|
|
|
|
|
|
pkg_check_modules(LZ4_LIB REQUIRED liblz4)
|
|
|
|
|
|
|
|
|
|
message("**************** lz4 lib:" ${LZ4_LIB_INCLUDE_DIRS})
|
|
|
|
|
find_path(LZ4_STATIC lz4frame_static.h PATH ${LZ4_LIB_INCLUDE_DIRS})
|
|
|
|
|
if(LZ4_STATIC-FOUND)
|
2017-02-11 13:12:48 +13:00
|
|
|
|
add_definitions(-DLZ4_STATIC)
|
2016-06-16 16:52:02 +12:00
|
|
|
|
endif()
|
|
|
|
|
|
|
|
|
|
# TODO: check for them properly in some sane order with pkg-config
|
|
|
|
|
find_library(OPENBLAS_LIB NAMES cblas gslcblas openblas blas)
|
|
|
|
|
message("OpenBLAS:" ${OPENBLAS_LIB})
|
|
|
|
|
|
|
|
|
|
set(JPEG_LIB ${JPEG_LIBRARY})
|
|
|
|
|
set(LZ4_LIB ${LZ4_LIB_LDFLAGS})
|
|
|
|
|
|
|
|
|
|
find_package(LZO REQUIRED)
|
|
|
|
|
message("LZO:" ${LZO_INCLUDE_DIR})
|
|
|
|
|
|
2020-07-06 17:32:52 +12:00
|
|
|
|
find_library(PTHREAD_LIBRARY pthread)
|
|
|
|
|
|
2017-05-26 18:00:05 +12:00
|
|
|
|
if(NOT BUILD_TARGET_WIN)
|
|
|
|
|
pkg_check_modules(FREETYPE REQUIRED freetype2)
|
|
|
|
|
endif()
|
2017-11-30 14:08:58 +13:00
|
|
|
|
# Can be 'libmypaint' or 'libmypaint-1.x'
|
2021-03-23 14:47:00 +13:00
|
|
|
|
pkg_search_module(MYPAINT_LIB REQUIRED libmypaint)
|
2020-04-21 13:34:58 +12:00
|
|
|
|
|
|
|
|
|
find_library(TURBOJPEG_LIB turbojpeg)
|
|
|
|
|
message("**************** turbojpeg lib:" ${TURBOJPEG_LIB})
|
2016-03-19 06:57:51 +13:00
|
|
|
|
endif()
|
|
|
|
|
|
2016-07-08 19:23:32 +12:00
|
|
|
|
|
2016-07-08 23:22:25 +12:00
|
|
|
|
include(TestBigEndian)
|
|
|
|
|
test_big_endian(_SYSTEM_BIG_ENDIAN)
|
|
|
|
|
if(_SYSTEM_BIG_ENDIAN)
|
|
|
|
|
add_definitions(-DTNZ_LITTLE_ENDIAN=0)
|
|
|
|
|
else()
|
|
|
|
|
add_definitions(-DTNZ_LITTLE_ENDIAN=1)
|
|
|
|
|
endif()
|
|
|
|
|
unset(_SYSTEM_BIG_ENDIAN)
|
|
|
|
|
|
|
|
|
|
|
2016-07-08 19:23:32 +12:00
|
|
|
|
set(C_WARNINGS)
|
|
|
|
|
set(CXX_WARNINGS)
|
|
|
|
|
|
|
|
|
|
if(CMAKE_COMPILER_IS_GNUCC)
|
|
|
|
|
ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_WRITE_STRINGS -Wwrite-strings)
|
|
|
|
|
ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_UNDEF -Wundef)
|
2016-07-22 16:38:33 +12:00
|
|
|
|
ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_MISSING_DECLARATIONS -Wmissing-declarations)
|
2016-07-08 19:23:32 +12:00
|
|
|
|
|
|
|
|
|
ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_WRITE_STRINGS -Wwrite-strings)
|
|
|
|
|
ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_UNDEF -Wundef)
|
2016-07-22 16:38:33 +12:00
|
|
|
|
ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_MISSING_DECLARATIONS -Wmissing-declarations)
|
2016-07-08 19:23:32 +12:00
|
|
|
|
endif()
|
|
|
|
|
|
|
|
|
|
|
2016-06-30 16:37:18 +12:00
|
|
|
|
include_directories(
|
2016-07-09 03:47:11 +12:00
|
|
|
|
SYSTEM
|
2016-06-30 16:37:18 +12:00
|
|
|
|
BEFORE
|
|
|
|
|
${TIFF_INCLUDE_DIR}
|
|
|
|
|
${PNG_INCLUDE_DIRS}
|
|
|
|
|
)
|
2016-03-29 02:44:36 +13:00
|
|
|
|
|
2017-05-26 18:00:05 +12:00
|
|
|
|
if(BUILD_ENV_MSVC OR BUILD_ENV_APPLE)
|
2016-06-30 16:37:18 +12:00
|
|
|
|
find_path(
|
|
|
|
|
BOOST_ROOT
|
|
|
|
|
include/boost
|
|
|
|
|
boost
|
|
|
|
|
HINTS
|
|
|
|
|
${THIRDPARTY_LIBS_HINTS}
|
|
|
|
|
PATH_SUFFIXES
|
|
|
|
|
boost/boost_1_61_0/
|
|
|
|
|
boost/boost_1_60_0/
|
|
|
|
|
boost/boost_1_59_0/
|
|
|
|
|
boost/boost_1_58_0/
|
|
|
|
|
boost/boost_1_57_0/
|
|
|
|
|
boost/boost_1_56_0/
|
|
|
|
|
boost155/1.55.0_1/
|
|
|
|
|
boost/boost_1_55_0/
|
|
|
|
|
)
|
2016-06-25 00:01:09 +12:00
|
|
|
|
find_package(Boost 1.55 REQUIRED)
|
|
|
|
|
else()
|
|
|
|
|
find_package(Boost)
|
2016-06-16 16:52:02 +12:00
|
|
|
|
endif()
|
2016-03-23 07:48:01 +13:00
|
|
|
|
|
2016-06-30 16:37:18 +12:00
|
|
|
|
include_directories(
|
2016-07-09 03:47:11 +12:00
|
|
|
|
SYSTEM
|
2016-06-30 16:37:18 +12:00
|
|
|
|
${Boost_INCLUDE_DIR}
|
|
|
|
|
${LZ4_LIB_INCLUDE_DIRS}
|
|
|
|
|
${USB_LIB_INCLUDE_DIRS}
|
|
|
|
|
${SUPERLU_INCLUDE_DIR}
|
|
|
|
|
${JPEG_INCLUDE_DIR}
|
2017-08-04 15:31:50 +12:00
|
|
|
|
${MYPAINT_LIB_INCLUDE_DIRS}
|
2016-06-30 16:37:18 +12:00
|
|
|
|
)
|
2016-03-23 07:48:01 +13:00
|
|
|
|
|
2017-05-26 18:00:05 +12:00
|
|
|
|
if(BUILD_TARGET_WIN AND PLATFORM EQUAL 64)
|
2016-03-19 06:57:51 +13:00
|
|
|
|
add_definitions(-Dx64)
|
|
|
|
|
endif()
|
|
|
|
|
|
2017-05-26 18:00:05 +12:00
|
|
|
|
if(BUILD_ENV_MSVC)
|
2016-03-19 06:57:51 +13:00
|
|
|
|
# place Toonz.exe and dlls in the same directory
|
|
|
|
|
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR})
|
|
|
|
|
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /MP")
|
2017-05-26 18:00:05 +12:00
|
|
|
|
elseif(BUILD_ENV_APPLE)
|
2016-06-16 16:52:02 +12:00
|
|
|
|
# pass
|
2017-05-26 18:00:05 +12:00
|
|
|
|
elseif(BUILD_ENV_UNIXLIKE)
|
2016-06-30 12:13:38 +12:00
|
|
|
|
set(EXECUTABLE_OUTPUT_PATH ${CMAKE_BINARY_DIR}/bin)
|
|
|
|
|
|
2016-07-03 20:34:50 +12:00
|
|
|
|
# Mirror relative bin/lib location for installation
|
|
|
|
|
# so the generated shell script works in both cases.
|
2020-10-02 19:20:33 +13:00
|
|
|
|
set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib/tahoma2d)
|
|
|
|
|
set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib/tahoma2d)
|
2016-06-30 12:13:38 +12:00
|
|
|
|
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin)
|
2016-07-03 20:34:50 +12:00
|
|
|
|
|
|
|
|
|
if(CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT)
|
2020-10-02 19:20:33 +13:00
|
|
|
|
set(CMAKE_INSTALL_PREFIX "/opt/tahoma2d" CACHE PATH "Tahoma2D install prefix" FORCE)
|
2016-07-03 20:34:50 +12:00
|
|
|
|
endif()
|
2016-03-19 06:57:51 +13:00
|
|
|
|
endif()
|
|
|
|
|
|
2017-05-26 18:00:05 +12:00
|
|
|
|
if(BUILD_ENV_MSVC AND MSVC_VERSION EQUAL 1800)
|
2016-03-25 00:30:47 +13:00
|
|
|
|
# Visual C++ 2013 cannot handle UTF-8 without BOM
|
|
|
|
|
# Non-ascii characters in comments would not be a problem
|
|
|
|
|
add_compile_options("/wd4819")
|
|
|
|
|
endif()
|
|
|
|
|
|
2020-12-23 18:22:58 +13:00
|
|
|
|
if(WITH_TRANSLATION)
|
|
|
|
|
# generate Qt translations and messages
|
|
|
|
|
set(LANGUAGES japanese italian french spanish chinese german russian korean czech)
|
|
|
|
|
|
|
|
|
|
function(add_translation module)
|
|
|
|
|
set(translation)
|
|
|
|
|
foreach(lang ${LANGUAGES})
|
|
|
|
|
set(name "${CMAKE_SOURCE_DIR}/translations/${lang}/${module}.ts")
|
|
|
|
|
list(APPEND translation ${name})
|
|
|
|
|
set_source_files_properties(${name} PROPERTIES
|
|
|
|
|
OUTPUT_LOCATION "${CMAKE_BINARY_DIR}/loc/${lang}"
|
|
|
|
|
)
|
|
|
|
|
endforeach()
|
|
|
|
|
|
|
|
|
|
qt5_create_translation(message ${translation} ${ARGN})
|
|
|
|
|
|
|
|
|
|
add_custom_target("translation_${module}" DEPENDS ${message})
|
|
|
|
|
set_target_properties("translation_${module}" PROPERTIES
|
|
|
|
|
EXCLUDE_FROM_DEFAULT_BUILD TRUE
|
2016-07-23 06:59:47 +12:00
|
|
|
|
)
|
2020-12-23 18:22:58 +13:00
|
|
|
|
endfunction()
|
|
|
|
|
endif()
|
2016-03-19 06:57:51 +13:00
|
|
|
|
|
2016-07-08 19:23:32 +12:00
|
|
|
|
set(CMAKE_C_FLAGS "${C_WARNINGS} ${CMAKE_C_FLAGS}")
|
|
|
|
|
set(CMAKE_CXX_FLAGS "${CXX_WARNINGS} ${CMAKE_CXX_FLAGS}")
|
|
|
|
|
|
2016-03-19 06:57:51 +13:00
|
|
|
|
add_subdirectory(tnzcore)
|
|
|
|
|
add_subdirectory(tnzbase)
|
|
|
|
|
add_subdirectory(tnzext)
|
|
|
|
|
add_subdirectory(toonzlib)
|
|
|
|
|
add_subdirectory(toonzfarm/tfarm)
|
|
|
|
|
add_subdirectory(stdfx)
|
|
|
|
|
add_subdirectory(sound)
|
|
|
|
|
add_subdirectory(colorfx)
|
|
|
|
|
add_subdirectory(image)
|
|
|
|
|
add_subdirectory(toonzqt)
|
|
|
|
|
add_subdirectory(tnztools)
|
|
|
|
|
|
2016-03-25 22:42:18 +13:00
|
|
|
|
add_subdirectory(${SDKROOT}/lzo/driver lzodriver)
|
2016-03-19 06:57:51 +13:00
|
|
|
|
|
2016-04-20 01:51:34 +12:00
|
|
|
|
add_subdirectory(toonz)
|
2020-05-27 18:38:36 +12:00
|
|
|
|
add_subdirectory(tcleanupper)
|
2016-03-19 06:57:51 +13:00
|
|
|
|
add_subdirectory(tcomposer)
|
|
|
|
|
add_subdirectory(tconverter)
|
|
|
|
|
add_subdirectory(toonzfarm)
|
2016-07-14 22:09:44 +12:00
|
|
|
|
|
2017-05-26 18:00:05 +12:00
|
|
|
|
if(BUILD_ENV_APPLE)
|
2016-07-14 22:09:44 +12:00
|
|
|
|
add_subdirectory(mousedragfilter)
|
|
|
|
|
endif()
|
|
|
|
|
|
2017-05-26 18:00:05 +12:00
|
|
|
|
if(BUILD_ENV_APPLE)
|
2016-03-19 06:57:51 +13:00
|
|
|
|
add_custom_command(TARGET executable
|
|
|
|
|
POST_BUILD COMMAND
|
|
|
|
|
${CMAKE_INSTALL_NAME_TOOL} -add_rpath ${CMAKE_INSTALL_RPATH}
|
2016-07-23 06:59:47 +12:00
|
|
|
|
$<TARGET_FILE:executable>
|
|
|
|
|
)
|
2017-04-20 15:47:24 +12:00
|
|
|
|
# add capability for retina displays
|
2020-10-02 19:20:33 +13:00
|
|
|
|
set_target_properties(Tahoma2D PROPERTIES MACOSX_BUNDLE_INFO_PLIST ${CMAKE_SOURCE_DIR}/../cmake/BundleInfo.plist.in)
|
2016-04-27 23:48:12 +12:00
|
|
|
|
endif()
|
2018-09-06 21:43:57 +12:00
|
|
|
|
|
2019-02-22 14:42:41 +13:00
|
|
|
|
if(BUILD_ENV_UNIXLIKE AND NOT BUILD_TARGET_WIN)
|
|
|
|
|
add_subdirectory(xdg-data)
|
2018-09-06 21:43:57 +12:00
|
|
|
|
endif()
|