156 lines
6.1 KiB
CMake
156 lines
6.1 KiB
CMake
SET(CPU_INFO_HEADER ${CMPLATFORM_ROOT_INCLUDE_PATH}/hgl/platform/CpuInfo.h)
|
|
|
|
IF(UNIX)
|
|
SET(PLATFORM_FILE_SOURCE UNIX/File.cpp
|
|
UNIX/FileAccess.cpp
|
|
UNIX/EnumFile.cpp)
|
|
|
|
SET(PLATFORM_SYSTEM_INFO_SOURCE UNIX/SystemInfo.cpp)
|
|
|
|
SET(PLATFORM_MULTI_THREAD_SOURCE UNIX/CondVar.cpp
|
|
UNIX/RWLock.cpp
|
|
UNIX/Thread.cpp
|
|
UNIX/ThreadMutex.cpp)
|
|
|
|
IF(ANDROID)
|
|
SET(PLATFORM_LOG_SOURCE Android/LogConsole.cpp)
|
|
|
|
SET(PLATFORM_APPLICATION_SOURCE ${PLATFORM_APPLICATION_SOURCE}
|
|
Android/JNISupport.cpp
|
|
Android/NativeActivitySupport.cpp)
|
|
|
|
SET(PLATFORM_FILE_SOURCE ${PLATFORM_FILE_SOURCE}
|
|
Android/ProgramPath.cpp
|
|
Android/AssetManage.cpp)
|
|
|
|
SET(PLATFORM_MULTI_THREAD_SOURCE ${PLATFORM_MULTI_THREAD_SOURCE}
|
|
UNIX/Semaphore.cpp)
|
|
|
|
|
|
SET(PLATFORM_WINDOW_SOURCE Android/AndroidVulkan.cpp)
|
|
|
|
ELSE()
|
|
SET(PLATFORM_CODEPAGE_SOURCE UNIX/CodePage.cpp)
|
|
SET(PLATFORM_LOG_SOURCE UNIX/LogConsole.cpp)
|
|
|
|
IF(APPLE)
|
|
SET(PLATFORM_MULTI_THREAD_SOURCE ${PLATFORM_MULTI_THREAD_SOURCE}
|
|
Apple/Semaphore.cpp)
|
|
|
|
SET(PLATFORM_FILE_SOURCE ${PLATFORM_FILE_SOURCE}
|
|
Apple/ProgramPath.mm)
|
|
ELSE()
|
|
SET(PLATFORM_MULTI_THREAD_SOURCE ${PLATFORM_MULTI_THREAD_SOURCE}
|
|
UNIX/Semaphore.cpp)
|
|
|
|
SET(PLATFORM_FILE_SOURCE ${PLATFORM_FILE_SOURCE}
|
|
UNIX/ProgramPath.cpp)
|
|
|
|
SET(PLATFORM_WINDOW_SOURCE UNIX/XCBWindow.cpp
|
|
UNIX/XCBVulkan.cpp)
|
|
ENDIF()
|
|
ENDIF()
|
|
|
|
SET(PLATFORM_MULTI_PROCESS_SOURCE UNIX/ProcMutex.cpp
|
|
UNIX/Process.cpp
|
|
UNIX/Pipe.cpp
|
|
UNIX/Fifo.cpp)
|
|
|
|
SET(PLATFORM_TIME_SOURCE UNIX/Time.cpp
|
|
UNIX/Exit.cpp
|
|
UNIX/DateTime.cpp)
|
|
|
|
SET(PLATFORM_EXTERNAL_MODULE_SOURCE UNIX/ExternalModule.cpp)
|
|
|
|
ENDIF()
|
|
|
|
IF(WIN32)
|
|
set(CPU_INFO_SOURCE Win/CpuInfo.cpp)
|
|
|
|
SET(PLATFORM_FILE_SOURCE Win/File.cpp
|
|
Win/FileAccess.cpp
|
|
Win/EnumFile.cpp
|
|
Win/EnumVolume.cpp
|
|
Win/ProgramPath.cpp)
|
|
|
|
SET(PLATFORM_CODEPAGE_SOURCE Win/CodePage.cpp
|
|
Win/vsprintf.cpp)
|
|
|
|
SET(PLATFORM_SYSTEM_INFO_SOURCE Win/SystemInfo.cpp)
|
|
|
|
SET(PLATFORM_LOG_SOURCE Win/LogConsole.cpp
|
|
Win/LogDialog.cpp)
|
|
|
|
SET(PLATFORM_MULTI_THREAD_SOURCE
|
|
Win/CondVar.cpp
|
|
Win/RWLock.cpp
|
|
Win/Semaphore.cpp
|
|
Win/Thread.cpp
|
|
Win/ThreadMutex.cpp)
|
|
|
|
SET(PLATFORM_MULTI_PROCESS_SOURCE Win/ProcMutex.cpp
|
|
Win/Pipe.cpp
|
|
Win/Fifo.cpp)
|
|
|
|
SET(PLATFORM_TIME_SOURCE Win/Time.cpp
|
|
Win/DateTime.cpp)
|
|
|
|
SET(PLATFORM_EXTERNAL_MODULE_SOURCE Win/ExternalModule.cpp)
|
|
|
|
SET(PLATFORM_DESKTOP_SOURCE Win/Desktop.cpp)
|
|
|
|
SET(PLATFORM_WINDOW_SOURCE Win/WinWindow.cpp
|
|
Win/WinMessage.cpp
|
|
Win/EnumWinFonts.cpp)
|
|
ENDIF(WIN32)
|
|
|
|
SET(PLATFORM_WINDOW_SOURCE ${PLATFORM_WINDOW_SOURCE} Window.cpp )
|
|
|
|
SOURCE_GROUP("InputDevice" FILES ${PLATFORM_INPUT_DEVICE_SOURCE})
|
|
SOURCE_GROUP("CodePage" FILES ${PLATFORM_CODEPAGE_SOURCE})
|
|
SOURCE_GROUP("File" FILES ${PLATFORM_FILE_SOURCE})
|
|
SOURCE_GROUP("SystemInfo" FILES ${PLATFORM_SYSTEM_INFO_SOURCE})
|
|
SOURCE_GROUP("Application" FILES ${PLATFORM_APPLICATION_SOURCE})
|
|
SOURCE_GROUP("LogInfo" FILES ${PLATFORM_LOG_SOURCE})
|
|
SOURCE_GROUP("MultiThread" FILES ${PLATFORM_MULTI_THREAD_SOURCE})
|
|
SOURCE_GROUP("MultiProcess" FILES ${PLATFORM_MULTI_PROCESS_SOURCE})
|
|
SOURCE_GROUP("Time" FILES ${PLATFORM_TIME_SOURCE})
|
|
SOURCE_GROUP("Desktop" FILES ${PLATFORM_DESKTOP_SOURCE})
|
|
SOURCE_GROUP("Window" FILES ${PLATFORM_WINDOW_SOURCE})
|
|
|
|
SOURCE_GROUP("Hardware\\Cpuinfo" FILES ${CPU_INFO_HEADER} ${CPU_INFO_SOURCE})
|
|
|
|
SET(ANDROID_ABOUT_SOURCE ${CMPLATFORM_ROOT_INCLUDE_PATH}/hgl/platform/Android.h
|
|
Android/AndroidVersion.cpp)
|
|
|
|
SOURCE_GROUP("Android\\Version" FILES ${ANDROID_ABOUT_SOURCE})
|
|
|
|
SET(SOC_SOURCE ${CMPLATFORM_ROOT_INCLUDE_PATH}/hgl/platform/SOC.h
|
|
SOC/SOC.cpp
|
|
SOC/ARMCpuInfo.cpp
|
|
SOC/Kryo.cpp
|
|
)
|
|
|
|
SOURCE_GROUP("SOC" FILES ${SOC_SOURCE})
|
|
|
|
SET(PLATFORM_SOURCE ${PLATFORM_SOURCE}
|
|
${PLATFORM_FILE_SOURCE}
|
|
${PLATFORM_CODEPAGE_SOURCE}
|
|
#${PLATFORM_SYSTEM_INFO_SOURCE}
|
|
${PLATFORM_APPLICATION_SOURCE}
|
|
${PLATFORM_LOG_SOURCE}
|
|
${PLATFORM_MULTI_THREAD_SOURCE}
|
|
${PLATFORM_MULTI_PROCESS_SOURCE}
|
|
${PLATFORM_TIME_SOURCE}
|
|
${PLATFORM_EXTERNAL_MODULE_SOURCE}
|
|
${PLATFORM_INPUT_DEVICE_SOURCE}
|
|
${PLATFORM_WINDOW_SOURCE}
|
|
|
|
${CPU_INFO_HEADER}
|
|
${CPU_INFO_SOURCE}
|
|
${ANDROID_ABOUT_SOURCE}
|
|
${SOC_SOURCE}
|
|
)
|
|
|
|
add_cm_library(CMPlatform "CM" ${PLATFORM_SOURCE})
|