#if(DK_OPTIONS_INCLUDED)
#  return()
#endif()
#set(DK_OPTIONS_INCLUDED true)

if(COMMAND cmake_policy)
	CMAKE_POLICY(SET CMP0003 NEW) ##https://cmake.org/cmake/help/latest/policy/CMP0003.html
endif(COMMAND cmake_policy)


#########################################################################
## Set variables for paths
###############################################################
#get_filename_component(DIGITALKNOB ${CMAKE_SOURCE_DIR} ABSOLUTE)
#get_filename_component(FOLDER_NAME ${DIGITALKNOB} NAME)
#while(NOT FOLDER_NAME STREQUAL "digitalknob")
#	get_filename_component(DIGITALKNOB ${DIGITALKNOB} DIRECTORY)
#	get_filename_component(FOLDER_NAME ${DIGITALKNOB} NAME)
#endwhile()
dk_file_getDigitalknobPath(DIGITALKNOB)
DKSET(DKCMAKE ${DIGITALKNOB}/DK/DKCMake)
DKSET(DKPLUGINS ${DIGITALKNOB}/DK/DKPlugins)
DKSET(3RDPARTY ${DIGITALKNOB}/DK/3rdParty)
DKSET(DKIMPORTS ${3RDPARTY}/_DKIMPORTS)
DKSET(DKDOWNLOAD ${DIGITALKNOB}/Download)
DKSET(DKWEB http://127.0.0.1)


###########################################################################
## Get variables for Build Type
###########################################################################
option(DEBUG "Build Debug Output" OFF)
option(RELEASE "Build Release Output" OFF)
if(NOT DEBUG)
if(NOT RELEASE)
	##message(FATAL_ERROR "Please select Debug or Release mode")
	message(STATUS No Build type selected. Defaulting to DEBUG)
	DKSET(DEBUG ON)
endif()
endif()

###########################################################################
## Get variables for Build Level
###########################################################################
option(BUILD "Simpily build the app or library" OFF)
option(REBUILD "Rebuild the app" OFF)
option(REBUILDALL "Rebuild the app and all dependencies" OFF)
if(NOT BUILD)
if(NOT REBUILD)
if(NOT REBUILDALL)
	#message(FATAL_ERROR "Please select Build, Rebuild, or Rebuild All")
	message(STATUS No Build level selected, defaulting to REBUILDALL)
	DKSET(REBUILDALL ON)
endif()
endif()
endif()


###########################################################################
## Get variables for Library Build Type (STATIC or SHARED)
###########################################################################
option(STATIC "Build Static Libraries and Plugins" OFF)
option(SHARED "Build SHARED Libraries and Plugins" OFF)
if(NOT STATIC)
if(NOT SHARED)
	DKSET(STATIC ON)
	##message(FATAL_ERROR "Please select STATIC or SHARED build.")
endif()
endif()


###########################################################################
## Get variables for OpenGL type
###########################################################################
option(OPENGL2 "Set the OpenGL Version" OFF)


###########################################################################
## Get variables for CEF
###########################################################################
option(DKCEF "Use Chromium Embeded Framework" OFF)




########### Determine the OS we are building for ####################
string(FIND "${CMAKE_BINARY_DIR}" "/win32" index)
if(${index} GREATER -1)
	set(WIN_32 ON)
	set(OS "win32")
	string(REPLACE "/win32" "" DKPROJECT ${CMAKE_BINARY_DIR})
endif()
string(FIND "${CMAKE_BINARY_DIR}" "/win64" index)
if(${index} GREATER -1)
	set(WIN_64 ON)
	set(OS "win64")
	string(REPLACE "/win64" "" DKPROJECT ${CMAKE_BINARY_DIR})
endif()
string(FIND "${CMAKE_BINARY_DIR}" "/mac32" index)
if(${index} GREATER -1)
	set(MAC_32 ON)
	set(OS "mac32")
	string(REPLACE "/mac32" "" DKPROJECT ${CMAKE_BINARY_DIR})
endif()
string(FIND "${CMAKE_BINARY_DIR}" "/mac64" index)
if(${index} GREATER -1)
	set(MAC_64 ON)
	set(OS "mac64")
	string(REPLACE "/mac64" "" DKPROJECT ${CMAKE_BINARY_DIR})
endif()
string(FIND "${CMAKE_BINARY_DIR}" "/linux32" index)
if(${index} GREATER -1)
	set(LINUX_32 ON)
	set(OS "linux32")
	string(REPLACE "/linux32" "" DKPROJECT ${CMAKE_BINARY_DIR})
endif()
string(FIND "${CMAKE_BINARY_DIR}" "/linux64" index)
if(${index} GREATER -1)
	set(LINUX_64 ON)
	set(OS "linux64")
	string(REPLACE "/linux64" "" DKPROJECT ${CMAKE_BINARY_DIR})
endif()
string(FIND "${CMAKE_BINARY_DIR}" "/ios32" index)
if(${index} GREATER -1)
	set(IOS_32 ON)
	set(OS "ios32")
	string(REPLACE "/ios32" "" DKPROJECT ${CMAKE_BINARY_DIR})
endif()
string(FIND "${CMAKE_BINARY_DIR}" "/ios64" index)
if(${index} GREATER -1)
	set(IOS_64 ON)
	set(OS "ios64")
	string(REPLACE "/ios64" "" DKPROJECT ${CMAKE_BINARY_DIR})
endif()
string(FIND "${CMAKE_BINARY_DIR}" "/iossim32" index)
if(${index} GREATER -1)
	set(IOSSIM_32 ON)
	set(OS "iossim32")
	string(REPLACE "/iossim32" "" DKPROJECT ${CMAKE_BINARY_DIR})
endif()
string(FIND "${CMAKE_BINARY_DIR}" "/iossim64" index)
if(${index} GREATER -1)
	set(IOSSIM_64 ON)
	set(OS "iossim64")
	string(REPLACE "/iossim64" "" DKPROJECT ${CMAKE_BINARY_DIR})
endif()
string(FIND "${CMAKE_BINARY_DIR}" "/android32" index)
if(${index} GREATER -1)
	set(ANDROID_32 ON)
	set(OS "android32")
	string(REPLACE "/android32" "" DKPROJECT ${CMAKE_BINARY_DIR})
endif()
string(FIND "${CMAKE_BINARY_DIR}" "/android64" index)
if(${index} GREATER -1)
	set(ANDROID_64 ON)
	set(OS "android64")
	string(REPLACE "/android64" "" DKPROJECT ${CMAKE_BINARY_DIR})
endif()
string(FIND "${CMAKE_BINARY_DIR}" "/raspberry32" index)
if(${index} GREATER -1)
	set(RASPBERRY_32 ON)
	set(OS "raspberry32")
	string(REPLACE "/raspberry32" "" DKPROJECT ${CMAKE_BINARY_DIR})
endif()
string(FIND "${CMAKE_BINARY_DIR}" "/raspberry64" index)
if(${index} GREATER -1)
	set(RASPBERRY_64 ON)
	set(OS "raspberry64")
	string(REPLACE "/raspberry64" "" DKPROJECT ${CMAKE_BINARY_DIR})
endif()
if(NOT OS)
	message(STATUS "CMAKE_BINARY_DIR = ${CMAKE_BINARY_DIR}")
	message(FATAL_ERROR "The binary directory must contain an os folder. \n Valid folders are win32,win64,mac32,mac64,linux32,linux64,ios32,ios64,iossim32,iossim64,android32,android64,raspberry32 or raspberry64 \n EXAMPLE: digitalknob/DKApps/MyApp/win32")
	DKREMOVE(${CMAKE_BINARY_DIR})
endif()

## we use /Debug and /Release folders for Linux, Android and Raspberry
## if they are present, remove them and let DEBUG and RELEASE flags deal with that later.
string(REPLACE "/Debug" "" DKPROJECT ${DKPROJECT})
string(REPLACE "/Release" "" DKPROJECT ${DKPROJECT})




###########################################################################
## Set variables for OS selection
###########################################################################
if(WIN_32)
	message(STATUS "Creating Windows x32 Project Files")
	DKSET(WIN ON)
	DKSET(OS win32)
	DKSET(BITS 32)
	DKSET(DEBUG_DIR Debug)
	DKSET(RELEASE_DIR Release)
	DKSET(CMAKE_SKIP_RPATH ON)
endif()

if(WIN_64)
	message(STATUS "*** Creating Windows x64 Project Files ***")
	DKSET(WIN ON)
	DKSET(OS win64)
	DKSET(BITS 64)
	DKSET(DEBUG_DIR Debug)
	DKSET(RELEASE_DIR Release)
	DKSET(CMAKE_SKIP_RPATH ON)
endif()

if(MAC_32)
	message(STATUS "*** Creating Mac x32 Project Files ***")
	DKSET(MAC ON)
	DKSET(OS mac32)
	DKSET(BITS 32)
	DKSET(DEBUG_DIR Debug)
	DKSET(RELEASE_DIR Release)
	DKSET(CMAKE_SKIP_RPATH ON)
endif()

if(MAC_64)
	message(STATUS "*** Creating Mac x64 Project Files ***")
	DKSET(MAC ON)
	DKSET(OS mac64)
	DKSET(BITS 64)
	DKSET(DEBUG_DIR Debug)
	DKSET(RELEASE_DIR Release)
	DKSET(CMAKE_SKIP_RPATH ON)
endif()

if(IOS_32)
	message(STATUS "*** Creating iOS x32 Project Files ***")
	DKSET(IOS ON)
	DKSET(OS ios32)
	DKSET(BITS 32)
	DKSET(DEBUG_DIR Debug-iphoneos)
	DKSET(RELEASE_DIR Release-iphoneos)
	DKSET(CMAKE_SKIP_RPATH ON)
endif()

if(IOS_64)
	message(STATUS "*** Creating iOS x64 Project Files ***")
	DKSET(IOS ON)
	DKSET(OS ios64)
	DKSET(BITS 64)
	DKSET(DEBUG_DIR Debug-iphoneos)
	DKSET(RELEASE_DIR Release-iphoneos)
	DKSET(CMAKE_SKIP_RPATH ON)
endif()

if(IOSSIM_32)
	message(STATUS "*** Creating iOS-Simulator x32 Project Files ***")
	DKSET(IOSSIM ON)
	DKSET(OS iossim32)
	DKSET(BITS 32)
	DKSET(DEBUG_DIR Debug-iphonesimulator)
	DKSET(RELEASE_DIR Release-iphonesimulator)
	DKSET(CMAKE_SKIP_RPATH ON)
endif()

if(IOSSIM_64)
	message(STATUS "*** Creating iOS-Simulator x64 Project Files ***")
	DKSET(IOSSIM ON)
	DKSET(OS iossim64)
	DKSET(BITS 64)
	DKSET(DEBUG_DIR Debug-iphonesimulator)
	DKSET(RELEASE_DIR Release-iphonesimulator)
	DKSET(CMAKE_SKIP_RPATH ON)
endif()

if(LINUX_32)
	message(STATUS "*** Creating Linux x32 Project Files ***")
	DKSET(LINUX ON)
	DKSET(OS linux32)
	DKSET(BITS 32)
	DKSET(DEBUG_DIR Debug)
	DKSET(RELEASE_DIR Release)
	DKSET(CMAKE_C_FLAGS "-m32")
	DKSET(CMAKE_CXX_FLAGS "-m32")
	DKSET(CMAKE_SKIP_RPATH ON)
endif()

if(LINUX_64)
	message(STATUS "*** Creating Linux x64 Project Files ***")
	DKSET(LINUX ON)
	DKSET(OS linux64)
	DKSET(BITS 64)
	DKSET(DEBUG_DIR Debug)
	DKSET(RELEASE_DIR Release)
	DKSET(CMAKE_C_FLAGS "-m64")
	DKSET(CMAKE_CXX_FLAGS "-m64")
	DKSET(OpenGL_GL_PREFERENCE "GLVND")
	#DKSET(CMAKE_SKIP_RPATH ON)
	
	set(CMAKE_SKIP_BUILD_RPATH  FALSE)
	set(CMAKE_BUILD_WITH_INSTALL_RPATH FALSE) 
	set(CMAKE_INSTALL_RPATH "${CMAKE_INSTALL_PREFIX}/")
	set(CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE)
	list(FIND CMAKE_PLATFORM_IMPLICIT_LINK_DIRECTORIES "${CMAKE_INSTALL_PREFIX}/" isSystemDir)
	if("${isSystemDir}" STREQUAL "-1")
		set(CMAKE_INSTALL_RPATH "${CMAKE_INSTALL_PREFIX}/")
	endif("${isSystemDir}" STREQUAL "-1")
endif()

if(RASPBERRY_32)
	message(STATUS "*** Creating RASPBERRY x32 Project Files ***")
	DKSET(RASPBERRY ON)
	DKSET(OS raspberry32)
	DKSET(BITS 32)
	DKSET(DEBUG_DIR Debug)
	DKSET(RELEASE_DIR Release)
	#DKSET(CMAKE_C_FLAGS "-m32")
	#DKSET(CMAKE_CXX_FLAGS "-m32")
	DKSET(CMAKE_SKIP_RPATH ON)
endif()

if(RASPBERRY_64)
	message(STATUS "*** Creating Raspberry x64 Project Files ***")
	DKSET(RASPBERRY ON)
	DKSET(OS raspberry64)
	DKSET(BITS 64)
	DKSET(DEBUG_DIR Debug)
	DKSET(RELEASE_DIR Release)
	#DKSET(CMAKE_C_FLAGS "-m64")
	#DKSET(CMAKE_CXX_FLAGS "-m64")
	DKSET(CMAKE_SKIP_RPATH ON)
	
	set(CMAKE_SKIP_BUILD_RPATH  FALSE)
	set(CMAKE_BUILD_WITH_INSTALL_RPATH FALSE) 
	set(CMAKE_INSTALL_RPATH "${CMAKE_INSTALL_PREFIX}/")
	set(CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE)
	list(FIND CMAKE_PLATFORM_IMPLICIT_LINK_DIRECTORIES "${CMAKE_INSTALL_PREFIX}/" isSystemDir)
	if("${isSystemDir}" STREQUAL "-1")
		set(CMAKE_INSTALL_RPATH "${CMAKE_INSTALL_PREFIX}/")
	endif("${isSystemDir}" STREQUAL "-1")
endif()

if(ANDROID_32)
	message(STATUS "*** Creating Android x32 Project Files ***")
	DKSET(ANDROID ON)
	DKSET(OS android32)
	DKSET(BITS 32)
	DKSET(DEBUG_DIR Debug)
	DKSET(RELEASE_DIR Release)
	DKSET(CMAKE_SKIP_RPATH ON)
endif()

if(ANDROID_64)
	message(STATUS "*** Creating Android x64 Project Files ***")
	DKSET(ANDROID ON)
	DKSET(OS android64)
	DKSET(BITS 64)
	DKSET(DEBUG_DIR Debug)
	DKSET(RELEASE_DIR Release)
	DKSET(CMAKE_SKIP_RPATH ON)
endif()

###########################################################################
## Set variables for Build Type
###########################################################################
if(DEBUG)
	DKSET(CMAKE_BUILD_TYPE DEBUG)
endif()
if(RELEASE)
	DKSET(CMAKE_BUILD_TYPE RELEASE)
endif(RELEASE)


## TODO - MOVE ALL DEFAULT COMPILER FLAGS TO DKCMAKE_ variables inside BuildTools.cmake

###########################################################################
## Set variables for Generator
###########################################################################

##### Microsoft Visual Studio 2019 #####
if(CMAKE_GENERATOR STREQUAL "Visual Studio 16 2019")
	if(WIN)
		DKSET(CMAKE_CXX_FLAGS "/DWIN32 /D_WINDOWS /W3 /nologo /GR /EHsc /Zm500 /D_WIN32_WINNT=0x0600 /D_USING_V110_SDK71_")
		##DKSET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /Yustdafx.h) #precompiled headers
		if(STATIC)
			#DKSET(CMAKE_C_FLAGS_DEBUG "/MTd /Od /Ob0 /Zi /RTC1 /DDEBUG /D_DEBUG")
			#DKSET(CMAKE_C_FLAGS_RELEASE "/MT /O2 /Ob2 /DNDEBUG")
			DKSET(CMAKE_CXX_FLAGS_DEBUG "/MTd /Od /Ob0 /Zi /RTC1 /DDEBUG /D_DEBUG")
			DKSET(CMAKE_CXX_FLAGS_RELEASE "/MT /O2 /Ob2 /DNDEBUG")
		endif()
		if(SHARED)
			DKSET(CMAKE_CXX_FLAGS_DEBUG "/MDd /Od /Ob0 /Zi /RTC1 /DDEBUG /D_DEBUG")
			DKSET(CMAKE_CXX_FLAGS_RELEASE "/MD /O2 /Ob2 /DNDEBUG")
		endif()
			DKSET(FLAGS "/W3 /nologo /Zm500 /EHsc /GR /D_WIN32_WINNT=0x0600 /D_USING_V110_SDK71_ /Zc:__cplusplus $<$<CONFIG:Debug>:/MTd /Od /Ob0 /Zi /RTC1 /DDEBUG /D_DEBUG> $<$<CONFIG:Release>:/MT /O2 /Ob2 /DNDEBUG>")
	endif()
	if(ANDROID)
		## https://stackoverflow.com/a/38057807/688352
		if(STATIC)
			DKSET(CMAKE_CXX_FLAGS_DEBUG "-DDEBUG -D_DEBUG -frtti -fexceptions -std=c++17") # -lstdc++fs")
			DKSET(CMAKE_CXX_FLAGS_RELEASE "-DNDEBUG -frtti -fexceptions -std=c++17") # -lstdc++fs")
		endif()
		if(SHARED)
			#DKSET(CMAKE_CXX_FLAGS_DEBUG "-DDEBUG -D_DEBUG")
			#DKSET(CMAKE_CXX_FLAGS_RELEASE "-DNDEBUG")
		endif()
	endif()
endif()

##### Microsoft Visual Studio 2019 Win64 #####
if(CMAKE_GENERATOR STREQUAL "Visual Studio 16 2019 Win64")
	##DKSET(CMAKE_CXX_FLAGS "/DWIN32 /D_WINDOWS /W3 /nologo /GR /EHsc /Yustdafx.h /Zm500 /D_WIN32_WINNT=0x0600") #precompiled headers
	DKSET(CMAKE_CXX_FLAGS "/DWIN32 /DWIN64 /D_WINDOWS /W3 /nologo /GR /EHsc /Zm500 /D_WIN32_WINNT=0x0600 /MACHINE:X64")
	DKSET(CMAKE_CXX_FLAGS_DEBUG "/MTd /Od /Ob0 /Zi /RTC1 /DDEBUG /D_DEBUG")
	DKSET(CMAKE_CXX_FLAGS_RELEASE "/MT /O2 /Ob2 /DNDEBUG")
	DKSET(FLAGS "/DWIN32 /DWIN64 /W3 /nologo /Zm500 /EHsc /GR /D_WIN32_WINNT=0x0600 /Zc:__cplusplus /MACHINE:X64 $<$<CONFIG:Debug>:/MTd /Od /Ob0 /Zi /RTC1 /DDEBUG /D_DEBUG> $<$<CONFIG:Release>:/MT /O2 /Ob2 /DNDEBUG>")
endif()

##### Apple Xcode #####
if(CMAKE_GENERATOR STREQUAL "Xcode")
	DKSET(CMAKE_CXX_FLAGS "-x objective-c++")
endif()

##### Unix Makefiles #####
if(CMAKE_GENERATOR STREQUAL "Unix Makefiles")
	if(MAC)
		#DKSET(CMAKE_C_FLAGS "-fPIC")
		DKSET(CMAKE_CXX_FLAGS "-std=c++17")
	endif()
	if(LINUX)
		#DKSET(CMAKE_C_FLAGS "-fPIC")
		DKSET(CMAKE_CXX_FLAGS "-std=c++17 -lstdc++fs -g -no-pie -fPIC")
	endif()
	if(RASPBERRY)
		#DKSET(CMAKE_C_FLAGS "-fPIC")
		DKSET(CMAKE_CXX_FLAGS "-std=c++17 -lstdc++fs -g -no-pie -fPIC")
	endif()
endif()







if(NOT CMAKE_SCRIPT_MODE_FILE)
	if(WIN_32)
		add_definitions(-DWIN32)
		add_definitions(-D_WINDOWS)
		## add_definitions(-D__WINDOWS_MM__)
		## add_definitions(-D__STDC_CONSTANT_MACROS)
		## add_definitions(-D_SCL_SECURE_NO_WARNINGS)
		## add_definitions(-D_CRT_SECURE_NO_DEPRECATE)
	endif()

	if(WIN_64)
		add_definitions(-DWIN32)
		add_definitions(-DWIN64)
		##add_definitions(-D_WINDOWS)
		#add_definitions(-D__WINDOWS_MM__)
		#add_definitions(-D__STDC_CONSTANT_MACROS)
		#add_definitions(-D_SCL_SECURE_NO_WARNINGS)
		#add_definitions(-D_CRT_SECURE_NO_DEPRECATE)
	endif()

	if(MAC_32)
		add_definitions(-DMAC32)
		add_definitions(-DMAC)
		include_directories(/usr/X11/include)
	endif()

	if(MAC_64)
		add_definitions(-DMAC64)
		add_definitions(-DMAC)
		include_directories(/usr/X11/include)
	endif()

	if(IOS_32)
		add_definitions(-DIOS32)
		add_definitions(-DIOS)
		include_directories(/usr/X11/include)
		list(APPEND App_SRC ${PATH_PLUGINS}/DK/DKiPhone.mm)
		#DKSET(FLAGS -DIOS)
	endif()

	if(IOS_64)
		add_definitions(-DIOS64)
		add_definitions(-DIOS)
		include_directories(/usr/X11/include)
		list(APPEND App_SRC ${PATH_PLUGINS}/DK/DKiPhone.mm)
		#DKSET(FLAGS -DIOS)
	endif()

	if(IOSSIM_32)
		add_definitions(-DIOS32)
		add_definitions(-DIOS)
		add_definitions(-DIOSSIM32)
		add_definitions(-DIOSSIM)
		include_directories(/usr/X11/include)
		list(APPEND App_SRC ${PATH_PLUGINS}/DK/DKiPhone.mm)
		DKSET(CMAKE_OSX_SYSROOT iphoneos)
		#DKSET(FLAGS -DIOSSIM)
	endif()

	if(IOSSIM_64)
		add_definitions(-DIOS64)
		add_definitions(-DIOS)
		add_definitions(-DIOSSIM64)
		add_definitions(-DIOSSIM)
		include_directories(/usr/X11/include)
		list(APPEND App_SRC ${PATH_PLUGINS}/DK/DKiPhone.mm)
		DKSET(CMAKE_OSX_SYSROOT iphoneos)
		#DKSET(FLAGS -DIOSSIM)
	endif()

	if(LINUX_32)
		if(NOT RASPBERRY)
			add_definitions(-DLINUX32)
			add_definitions(-DLINUX)
			include_directories(/usr/X11/include)
			if(DEBUG)
				add_definitions(-DDEBUG)
			endif()
		endif()
	endif()

	if(LINUX_64)
		if(NOT RASPBERRY)
			add_definitions(-DLINUX64)
			add_definitions(-DLINUX)
			include_directories(/usr/X11/include)
			if(DEBUG)
				add_definitions(-DDEBUG)
			endif()
		endif()
	endif()

	if(RASPBERRY_32)
		add_definitions(-DRASPBERRY32)
		add_definitions(-DRASPBERRY)
		add_definitions(-DLINUX32) #FIXME - not all Raspberry OS's are Linux
		add_definitions(-DLINUX) #FIXME
		include_directories(/usr/X11/include)
		if(DEBUG)
			add_definitions(-DDEBUG)
		endif()
	endif()

	if(RASPBERRY_64)
		add_definitions(-DRASPBERRY64)
		add_definitions(-DRASPBERRY)
		add_definitions(-DLINUX64) #FIXME - not all Raspberry OS's are Linux
		add_definitions(-DLINUX) #FIXME
		include_directories(/usr/X11/include)
		if(DEBUG)
			add_definitions(-DDEBUG)
		endif()
	endif()

	if(ANDROID_32)
		add_definitions(-DANDROID32)
		add_definitions(-DANDROID)
	endif()

	if(ANDROID_64)
		add_definitions(-DANDROID64)
		add_definitions(-DANDROID)
	endif()


	## NOTE: These defines should be done as per needed in DKMAKE.cmake files
	if(OPENGL2)
		add_definitions(-DOPENGL2)
		add_definitions(-DUSE_SHADERS)
	endif()

	if(${DKCEF} STREQUAL "ON")
		add_definitions(-DUSE_DKCef)
	endif()
endif() #NOT CMAKE_SCRIPT_MODE_FILE
