# CinePaint/hollywood/CMakeLists.txt
# Created by Robin Rowe 2019-04-27
# License Open Source MIT

cmake_minimum_required(VERSION 3.8)
set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
set(CMAKE_CXX_EXTENSIONS OFF)

set(Project CinePaint)
project(${Project})
message("Configuring ${PROJECT_NAME}...")

if(WIN32)
	add_definitions(-D_CRT_SECURE_NO_WARNINGS /wd4244 /wd4305 /wd4018 /wd26451 /wd6031)
endif(WIN32)
# add_definitions(-DDEBUG)
#-DENABLE_NLS 
#set(CMAKE_PREFIX_PATH "${CMAKE_SOURCE_DIR}")
#find_package(GTK REQUIRED PATHS ${CMAKE_SOURCE_DIR} NO_DEFAULT_PATH)
#set(GTK_INCLUDE_DIRS "/code/github/vcpkg/installed/x64-windows/include")
#/code/gitlab/gtk1/gtk1win
set(GTK_INCLUDE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/gtk1/gtk1win)
set(GTK_INCLUDE_DIRS 
	${GTK_INCLUDE_PATH}
	${GTK_INCLUDE_PATH}/glib 
	${GTK_INCLUDE_PATH}/gdk)
include_directories(${GTK_INCLUDE_DIRS})

#message("gtk = ${GTK_INCLUDE_DIRS}")

set(LCMS_INCLUDE_DIRS ${CMAKE_SOURCE_DIR}/liblcms)
include_directories(${LCMS_INCLUDE_DIRS})

set(LIBUNISTD_PATH /code/github/libunistd)
if(WIN32)
	include_directories(${LIBUNISTD_PATH}/unistd)
	link_directories(${LIBUNISTD_PATH}/build/Win32)
	link_libraries(libunistd)
endif(WIN32)

include_directories(${CMAKE_CURRENT_SOURCE_DIR})

set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR})
set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR})
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR})

if(WIN32)
add_subdirectory(gtk1/gtk1win)
endif(WIN32)
add_subdirectory(cinenotes)
add_subdirectory(app)
add_subdirectory(depth)
add_subdirectory(pdb)
add_subdirectory(wire)
add_subdirectory(libhalf)
add_subdirectory(liblcms)
add_subdirectory(plugin)

add_library(cinepaint SHARED 
	$<TARGET_OBJECTS:app>
	$<TARGET_OBJECTS:depth>
	$<TARGET_OBJECTS:pdb>
	$<TARGET_OBJECTS:wire>
	$<TARGET_OBJECTS:libhalf>
	$<TARGET_OBJECTS:liblcms>
	)

target_link_libraries(cinepaint Gtk1 Imm32)
add_definitions(-DLCMS_DLL -DLCMS_DLL_BUILD)
add_subdirectory(cinepaint1)
