243 lines
9.7 KiB
CMake
243 lines
9.7 KiB
CMake
SET(CORE_PLATFORM_INCLUDE_PATH ${CMCORE_ROOT_INCLUDE_PATH}/hgl/platform)
|
|
|
|
SET(CORE_PLATFORM_HEADER_FILES ${CORE_PLATFORM_INCLUDE_PATH}/Platform.h)
|
|
|
|
FILE(GLOB CORE_PLATFORM_OS_FILES ${CORE_PLATFORM_INCLUDE_PATH}/os/*.h)
|
|
FILE(GLOB CORE_PLATFORM_COMPILER_FILES ${CORE_PLATFORM_INCLUDE_PATH}/compiler/*.h)
|
|
|
|
SOURCE_GROUP("Platform" FILES ${CORE_PLATFORM_HEADER_FILES})
|
|
SOURCE_GROUP("Platform\\OS" FILES ${CORE_PLATFORM_OS_FILES})
|
|
SOURCE_GROUP("Platform\\Compiler" FILES ${CORE_PLATFORM_COMPILER_FILES})
|
|
|
|
SET(CORE_PLATFORM_HEADER_FILES ${CORE_PLATFORM_HEADER_FILES}
|
|
${CORE_PLATFORM_OS_FILES}
|
|
${CORE_PLATFORM_COMPILER_FILES})
|
|
|
|
SET(TYPE_INCLUDE_PATH ${CMCORE_ROOT_INCLUDE_PATH}/hgl/type)
|
|
|
|
file(GLOB TYPE_TEMPLATE_HEADER ${TYPE_INCLUDE_PATH}/*.h)
|
|
|
|
SET(TYPE_SOURCE_FILES Type/Collection.cpp)
|
|
|
|
SOURCE_GROUP("DataType\\Collection" FILES ${TYPE_INCLUDE_PATH}/Collection.h
|
|
${COLLECTION_SOURCE})
|
|
|
|
SET(SYSTEM_INFO_SOURCE ${CORE_PLATFORM_INCLUDE_PATH}/SystemInfo.h
|
|
SystemInfo.cpp)
|
|
|
|
SET(MATH_INCLUDE_PATH ${CMCORE_ROOT_INCLUDE_PATH}/hgl/math)
|
|
|
|
##Math--------------------------------------------------------
|
|
SET(MATH_HEADER_FILES ${MATH_INCLUDE_PATH}/bvec.h
|
|
${MATH_INCLUDE_PATH}/FastTriangle.h
|
|
${MATH_INCLUDE_PATH}/Math.h
|
|
${MATH_INCLUDE_PATH}/Matrix.h
|
|
${MATH_INCLUDE_PATH}/Vector.h
|
|
${MATH_INCLUDE_PATH}/PrimaryMathematics.h
|
|
${MATH_INCLUDE_PATH}/PhysicsConst.h
|
|
${MATH_INCLUDE_PATH}/HalfFloat.h
|
|
)
|
|
|
|
SET(MATH_SOURCE_FILES Math/LAtan.cpp
|
|
Math/LSinCos.cpp
|
|
Math/Matrix4f.cpp
|
|
Math/HalfFloat.cpp)
|
|
|
|
SOURCE_GROUP("Math\\Header Files" FILES ${MATH_HEADER_FILES})
|
|
SOURCE_GROUP("Math\\Source Files" FILES ${MATH_SOURCE_FILES})
|
|
|
|
##Color--------------------------------------------------------
|
|
FILE(GLOB COLOR_HEADER_FILES ${CMCORE_ROOT_INCLUDE_PATH}/hgl/color/*.h)
|
|
FILE(GLOB COLOR_SOURCE_FILES Color/*.cpp)
|
|
|
|
SOURCE_GROUP("Datatype\\Color\\Header Files" FILES ${COLOR_HEADER_FILES})
|
|
SOURCE_GROUP("Datatype\\Color\\Source Files" FILES ${COLOR_SOURCE_FILES})
|
|
|
|
##Text--------------------------------------------------------
|
|
SET(STRING_HEADER_FILES ${TYPE_INCLUDE_PATH}/String.h
|
|
${TYPE_INCLUDE_PATH}/StringInstance.h
|
|
${TYPE_INCLUDE_PATH}/StringList.h
|
|
${TYPE_INCLUDE_PATH}/SplitString.h
|
|
${TYPE_INCLUDE_PATH}/MergeString.h
|
|
${TYPE_INCLUDE_PATH}/StdString.h)
|
|
|
|
SET(TEXT_HEADER_FILES ${CMCORE_ROOT_INCLUDE_PATH}/hgl/Endian.h
|
|
${CMCORE_ROOT_INCLUDE_PATH}/hgl/CodePage.h
|
|
${CMCORE_ROOT_INCLUDE_PATH}/hgl/text/FontInfo.h
|
|
${TYPE_INCLUDE_PATH}/UnicodeBlocks.h
|
|
${TYPE_INCLUDE_PATH}/StrChar.h)
|
|
|
|
SET(TEXT_SOURCE_FILES Text/Endian.cpp
|
|
Text/CodePage.cpp
|
|
Text/UnicodeBlocks.cpp)
|
|
|
|
SOURCE_GROUP("Text\\String" FILES ${STRING_HEADER_FILES}
|
|
Text/StringList.cpp)
|
|
|
|
SOURCE_GROUP("Text\\Header Files" FILES ${TEXT_HEADER_FILES})
|
|
SOURCE_GROUP("Text\\Source Files" FILES ${TEXT_SOURCE_FILES})
|
|
|
|
SOURCE_GROUP("Datatype\\Template" FILES ${TYPE_TEMPLATE_HEADER})
|
|
|
|
SET(BASE_OTHER_SOURCE ${TYPE_INCLUDE_PATH}/MemoryBlock.h
|
|
${TYPE_INCLUDE_PATH}/MemoryAllocator.h
|
|
Other/MemoryBlock.cpp
|
|
Other/MemoryAllocator.cpp)
|
|
SOURCE_GROUP("DataType\\Template\\Memory" FILES ${BASE_OTHER_SOURCE})
|
|
|
|
##I/O------------------------------------------------------------
|
|
SET(IO_INCLUDE_PATH ${CMCORE_ROOT_INCLUDE_PATH}/hgl/io)
|
|
|
|
SET(IO_BASE_FILES ${IO_INCLUDE_PATH}/InputStream.h
|
|
${IO_INCLUDE_PATH}/IOType.h
|
|
${IO_INCLUDE_PATH}/OutputStream.h
|
|
${IO_INCLUDE_PATH}/SeekAccess.h
|
|
IO/IOType.cpp)
|
|
|
|
SET(IO_DATA_FILES ${IO_INCLUDE_PATH}/DataInputStream.h
|
|
${IO_INCLUDE_PATH}/DataOutputStream.h
|
|
${IO_INCLUDE_PATH}/EndianDataInputStream.h
|
|
${IO_INCLUDE_PATH}/EndianDataOutputStream.h
|
|
IO/InputStream.cpp
|
|
IO/DataInputStream.cpp
|
|
IO/DataOutputStream.cpp)
|
|
|
|
SET(IO_MEMORY_STREAM_FILES ${IO_INCLUDE_PATH}/MemoryInputStream.h
|
|
${IO_INCLUDE_PATH}/MemoryOutputStream.h)
|
|
|
|
SET(IO_DATA_ARRAY_FILES ${IO_INCLUDE_PATH}/LoadDataArray.h
|
|
${IO_INCLUDE_PATH}/SaveDataArray.h)
|
|
|
|
SET(IO_FILE_FILES ${IO_INCLUDE_PATH}/FileAccess.h
|
|
${IO_INCLUDE_PATH}/FileInputStream.h
|
|
${IO_INCLUDE_PATH}/FileOutputStream.h
|
|
${IO_INCLUDE_PATH}/RandomAccessFile.h
|
|
${IO_INCLUDE_PATH}/TextInputStream.h
|
|
${IO_INCLUDE_PATH}/TextOutputStream.h
|
|
IO/FileAccess.cpp
|
|
IO/FileInputStream.cpp
|
|
IO/TextInputStream.cpp
|
|
IO/FileOutputStream.cpp
|
|
IO/RandomAccessFile.cpp)
|
|
|
|
SET(IO_JAVA_FILES ${IO_INCLUDE_PATH}/JavaInputStream.h
|
|
${IO_INCLUDE_PATH}/JavaOutputStream.h)
|
|
|
|
SET(IO_TEXT_FILES IO/TextOutputStream.cpp
|
|
Text/LoadString.cpp
|
|
Text/LoadStringList.cpp)
|
|
|
|
SET(IO_STRING_LIST_FILES ${IO_INCLUDE_PATH}/LoadStringList.h
|
|
${IO_INCLUDE_PATH}/SaveStringList.h)
|
|
|
|
SET(INPUT_EVENT_FILES ${IO_INCLUDE_PATH}/event/KeyboardEvent.h
|
|
${IO_INCLUDE_PATH}/event/MouseEvent.h
|
|
${IO_INCLUDE_PATH}/event/JoystickEvent.h
|
|
${IO_INCLUDE_PATH}/event/InputEvent.h)
|
|
|
|
SOURCE_GROUP("IO\\Event" FILES ${INPUT_EVENT_FILES})
|
|
|
|
SOURCE_GROUP("IO\\Base" FILES ${IO_BASE_FILES})
|
|
SOURCE_GROUP("IO\\DataIOStream" FILES ${IO_DATA_FILES})
|
|
SOURCE_GROUP("IO\\DataArray" FILES ${IO_DATA_ARRAY_FILES})
|
|
SOURCE_GROUP("IO\\MemoryStream" FILES ${IO_MEMORY_STREAM_FILES})
|
|
SOURCE_GROUP("IO\\File" FILES ${IO_FILE_FILES})
|
|
SOURCE_GROUP("IO\\Jave" FILES ${IO_JAVA_FILES})
|
|
SOURCE_GROUP("IO\\Text" FILES ${IO_TEXT_FILES})
|
|
SOURCE_GROUP("ID\\StringList" FILES ${IO_STRING_LIST_FILES})
|
|
|
|
SET(IO_SOURCE_FILES ${IO_BASE_FILES}
|
|
${IO_DATA_FILES}
|
|
${IO_DATA_ARRAY_FILES}
|
|
${IO_MEMORY_STREAM_FILES}
|
|
${IO_FILE_FILES}
|
|
${IO_JAVA_FILES}
|
|
${IO_TEXT_FILES}
|
|
${IO_STRING_LIST_FILES}
|
|
${INPUT_EVENT_FILES})
|
|
|
|
SET(FILESYSTEM_INCLUDE_PATH ${CMCORE_ROOT_INCLUDE_PATH}/hgl/filesystem)
|
|
|
|
SET(FILESYSTEM_HEADER_FILES ${FILESYSTEM_INCLUDE_PATH}/EnumFile.h
|
|
${FILESYSTEM_INCLUDE_PATH}/EnumVolume.h
|
|
${FILESYSTEM_INCLUDE_PATH}/FileSystem.h)
|
|
|
|
SET(FILESYSTEM_SOURCE_FILES FileSystem/FileSystem.cpp
|
|
FileSystem/EnumFile.cpp)
|
|
|
|
SOURCE_GROUP("FileSystem" FILES ${FILESYSTEM_HEADER_FILES} ${FILESYSTEM_SOURCE_FILES})
|
|
|
|
SET(BASE_TIME_HEADER_FILES ${TYPE_INCLUDE_PATH}/DateTime.h
|
|
${CMCORE_ROOT_INCLUDE_PATH}/hgl/Time.h)
|
|
|
|
SET(BASE_TIME_SOURCE_FILES Time/DateTime.cpp
|
|
Time/TimeCount.cpp
|
|
Time/TimeVal.cpp)
|
|
|
|
SOURCE_GROUP("Time\\Header Files" FILES ${BASE_TIME_HEADER_FILES})
|
|
SOURCE_GROUP("Time\\Source Files" FILES ${BASE_TIME_SOURCE_FILES})
|
|
|
|
|
|
FILE(GLOB BASE_THREAD_HEADER_FILES ${CMCORE_ROOT_INCLUDE_PATH}/hgl/thread/*.h)
|
|
SET(BASE_THREAD_SOURCE_FILES Other/ThreadFunc.cpp)
|
|
|
|
SOURCE_GROUP("Thread" FILES ${BASE_THREAD_HEADER_FILES}
|
|
${BASE_THREAD_SOURCE_FILES})
|
|
|
|
FILE(GLOB BASE_EVENT_HEADER_FILES ${CMCORE_ROOT_INCLUDE_PATH}/hgl/event/*.*)
|
|
FILE(GLOB BASE_EVENT_SOURCE_FILES Event/*.*)
|
|
|
|
SOURCE_GROUP("Event" FILES ${BASE_EVENT_HEADER_FILES}
|
|
${BASE_EVENT_SOURCE_FILES})
|
|
|
|
file(GLOB BASE_PLUG_IN_HEADER ${CMCORE_ROOT_INCLUDE_PATH}/hgl/plugin/*.h)
|
|
file(GLOB BASE_PLUG_IN_SOURCE PlugIn/*.cpp)
|
|
|
|
SOURCE_GROUP("PlugIn\\Header Files" FILES ${BASE_PLUG_IN_HEADER})
|
|
SOURCE_GROUP("PlugIn\\Source Files" FILES ${BASE_PLUG_IN_SOURCE})
|
|
|
|
file(GLOB BASE_LOG_HEADER ${CMCORE_ROOT_INCLUDE_PATH}/hgl/log/*.h)
|
|
file(GLOB BASE_LOG_SOURCE Log/*.*)
|
|
|
|
SOURCE_GROUP("Log\\Header Files" FILES ${BASE_LOG_HEADER})
|
|
SOURCE_GROUP("Log\\Source Files" FILES ${BASE_LOG_SOURCE})
|
|
|
|
add_cm_library(CMCore "CM" ${CORE_PLATFORM_HEADER_FILES}
|
|
#${SYSTEM_INFO_SOURCE}
|
|
|
|
${COLOR_HEADER_FILES}
|
|
${COLOR_SOURCE_FILES}
|
|
|
|
${STRING_HEADER_FILES}
|
|
${TEXT_HEADER_FILES}
|
|
${TEXT_SOURCE_FILES}
|
|
|
|
${TYPE_TEMPLATE_HEADER}
|
|
${TYPE_SOURCE_FILES}
|
|
|
|
${IO_SOURCE_FILES}
|
|
|
|
${MATH_HEADER_FILES}
|
|
${MATH_SOURCE_FILES}
|
|
|
|
${FILESYSTEM_HEADER_FILES}
|
|
${FILESYSTEM_SOURCE_FILES}
|
|
|
|
${BASE_TIME_HEADER_FILES}
|
|
${BASE_TIME_SOURCE_FILES}
|
|
|
|
${BASE_OTHER_SOURCE}
|
|
|
|
${BASE_THREAD_HEADER_FILES}
|
|
${BASE_THREAD_SOURCE_FILES}
|
|
|
|
${BASE_EVENT_HEADER_FILES}
|
|
${BASE_EVENT_SOURCE_FILES}
|
|
|
|
${BASE_PLUG_IN_HEADER}
|
|
${BASE_PLUG_IN_SOURCE}
|
|
|
|
${BASE_LOG_HEADER}
|
|
${BASE_LOG_SOURCE}
|
|
)
|