botw/CMakeLists.txt

195 lines
9.2 KiB
CMake

cmake_minimum_required(VERSION 3.10)
project(uking CXX)
set(CMAKE_EXPORT_COMPILE_COMMANDS ON)
if ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU")
add_compile_options(-fdiagnostics-color=always)
elseif ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang")
add_compile_options(-fcolor-diagnostics)
endif()
set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
set(CMAKE_CXX_EXTENSIONS OFF)
add_executable(uking
src/Game/AI/Action/actionSetInstEventFlag.cpp
src/Game/AI/Action/actionSetInstEventFlag.h
src/Game/AI/Action/actionSetLinkTagBasic.cpp
src/Game/AI/Action/actionSetLinkTagBasic.h
src/Game/DLC/aoc2.cpp
src/Game/DLC/aoc2.h
src/KingSystem/ActorSystem/actActor.h
src/KingSystem/ActorSystem/actActorConstDataAccess.cpp
src/KingSystem/ActorSystem/actActorConstDataAccess.h
src/KingSystem/ActorSystem/actActorCreator.cpp
src/KingSystem/ActorSystem/actActorCreator.h
src/KingSystem/ActorSystem/actActorFactory.cpp
src/KingSystem/ActorSystem/actActorFactory.h
src/KingSystem/ActorSystem/actActorLinkConstDataAccess.cpp
src/KingSystem/ActorSystem/actActorLinkConstDataAccess.h
src/KingSystem/ActorSystem/actActorParamMgr.h
src/KingSystem/ActorSystem/actAiAction.cpp
src/KingSystem/ActorSystem/actAiAction.h
src/KingSystem/ActorSystem/actAiClass.cpp
src/KingSystem/ActorSystem/actAiClass.h
src/KingSystem/ActorSystem/actAiParam.cpp
src/KingSystem/ActorSystem/actAiParam.h
src/KingSystem/ActorSystem/actBaseProc.cpp
src/KingSystem/ActorSystem/actBaseProc.h
src/KingSystem/ActorSystem/actBaseProcHandle.cpp
src/KingSystem/ActorSystem/actBaseProcHandle.h
src/KingSystem/ActorSystem/actBaseProcJob.cpp
src/KingSystem/ActorSystem/actBaseProcJob.h
src/KingSystem/ActorSystem/actBaseProcJobHandler.cpp
src/KingSystem/ActorSystem/actBaseProcJobHandler.h
src/KingSystem/ActorSystem/actBaseProcLink.cpp
src/KingSystem/ActorSystem/actBaseProcLink.h
src/KingSystem/ActorSystem/actBaseProcMap.cpp
src/KingSystem/ActorSystem/actBaseProcMap.h
src/KingSystem/ActorSystem/actBaseProcMgr.cpp
src/KingSystem/ActorSystem/actBaseProcMgr.h
src/KingSystem/ActorSystem/actBaseProcUnit.cpp
src/KingSystem/ActorSystem/actBaseProcUnit.h
src/KingSystem/ActorSystem/actTag.h
src/KingSystem/Map/mapTypes.h
src/KingSystem/Map/mapMubinIter.cpp
src/KingSystem/Map/mapMubinIter.h
src/KingSystem/Map/mapObject.cpp
src/KingSystem/Map/mapObject.h
src/KingSystem/MessageSystem/mesTransceiver.h
src/KingSystem/Resource/GeneralParamList/resGParamListObject.h
src/KingSystem/Resource/GeneralParamList/resGParamListObjectAnimalFollowOffset.h
src/KingSystem/Resource/GeneralParamList/resGParamListObjectAnimalUnit.h
src/KingSystem/Resource/GeneralParamList/resGParamListObjectArmor.h
src/KingSystem/Resource/GeneralParamList/resGParamListObjectArmorEffect.h
src/KingSystem/Resource/GeneralParamList/resGParamListObjectArmorHead.h
src/KingSystem/Resource/GeneralParamList/resGParamListObjectArmorUpper.h
src/KingSystem/Resource/GeneralParamList/resGParamListObjectArrow.h
src/KingSystem/Resource/GeneralParamList/resGParamListObjectAttack.h
src/KingSystem/Resource/GeneralParamList/resGParamListObjectAttackInterval.h
src/KingSystem/Resource/GeneralParamList/resGParamListObjectBindActor.h
src/KingSystem/Resource/GeneralParamList/resGParamListObjectBindBone.h
src/KingSystem/Resource/GeneralParamList/resGParamListObjectBow.h
src/KingSystem/Resource/GeneralParamList/resGParamListObjectBullet.h
src/KingSystem/Resource/GeneralParamList/resGParamListObjectCamera.h
src/KingSystem/Resource/GeneralParamList/resGParamListObjectCookSpice.h
src/KingSystem/Resource/GeneralParamList/resGParamListObjectCureItem.h
src/KingSystem/Resource/GeneralParamList/resGParamListObjectEatTarget.h
src/KingSystem/Resource/GeneralParamList/resGParamListObjectEnemy.h
src/KingSystem/Resource/GeneralParamList/resGParamListObjectEnemyLevel.h
src/KingSystem/Resource/GeneralParamList/resGParamListObjectEnemyRace.h
src/KingSystem/Resource/GeneralParamList/resGParamListObjectEnemyShown.h
src/KingSystem/Resource/GeneralParamList/resGParamListObjectExtendedEntity.h
src/KingSystem/Resource/GeneralParamList/resGParamListObjectFish.h
src/KingSystem/Resource/GeneralParamList/resGParamListObjectGeneral.h
src/KingSystem/Resource/GeneralParamList/resGParamListObjectGrab.h
src/KingSystem/Resource/GeneralParamList/resGParamListObjectGuardianMiniWeapon.h
src/KingSystem/Resource/GeneralParamList/resGParamListObjectHorse.h
src/KingSystem/Resource/GeneralParamList/resGParamListObjectInsect.h
src/KingSystem/Resource/GeneralParamList/resGParamListObjectItem.h
src/KingSystem/Resource/GeneralParamList/resGParamListObjectLargeSword.h
src/KingSystem/Resource/GeneralParamList/resGParamListObjectLiftable.h
src/KingSystem/Resource/GeneralParamList/resGParamListObjectLumberjackTree.h
src/KingSystem/Resource/GeneralParamList/resGParamListObjectMasterSword.h
src/KingSystem/Resource/GeneralParamList/resGParamListObjectNpc.h
src/KingSystem/Resource/GeneralParamList/resGParamListObjectNpcEquipment.h
src/KingSystem/Resource/GeneralParamList/resGParamListObjectPlayer.h
src/KingSystem/Resource/GeneralParamList/resGParamListObjectPrey.h
src/KingSystem/Resource/GeneralParamList/resGParamListObjectRod.h
src/KingSystem/Resource/GeneralParamList/resGParamListObjectRope.h
src/KingSystem/Resource/GeneralParamList/resGParamListObjectRupee.h
src/KingSystem/Resource/GeneralParamList/resGParamListObjectSandworm.h
src/KingSystem/Resource/GeneralParamList/resGParamListObjectSeriesArmor.h
src/KingSystem/Resource/GeneralParamList/resGParamListObjectShiekerStone.h
src/KingSystem/Resource/GeneralParamList/resGParamListObjectShield.h
src/KingSystem/Resource/GeneralParamList/resGParamListObjectSmallSword.h
src/KingSystem/Resource/GeneralParamList/resGParamListObjectSpear.h
src/KingSystem/Resource/GeneralParamList/resGParamListObjectSystem.h
src/KingSystem/Resource/GeneralParamList/resGParamListObjectTraveler.cpp
src/KingSystem/Resource/GeneralParamList/resGParamListObjectTraveler.h
src/KingSystem/Resource/GeneralParamList/resGParamListObjectWeaponCommon.h
src/KingSystem/Resource/GeneralParamList/resGParamListObjectWeaponOption.h
src/KingSystem/Resource/GeneralParamList/resGParamListObjectWeaponThrow.h
src/KingSystem/Resource/GeneralParamList/resGParamListObjectZora.h
src/KingSystem/Resource/GeneralParamList/resGParamListTraits.h
src/KingSystem/Resource/resCurrentResNameMgr.cpp
src/KingSystem/Resource/resCurrentResNameMgr.h
src/KingSystem/Resource/resEntryFactory.cpp
src/KingSystem/Resource/resEntryFactory.h
src/KingSystem/Resource/resResource.cpp
src/KingSystem/Resource/resResource.h
src/KingSystem/Resource/resResourceActorLink.cpp
src/KingSystem/Resource/resResourceActorLink.h
src/KingSystem/Resource/resResourceAIProgram.cpp
src/KingSystem/Resource/resResourceAIProgram.h
src/KingSystem/Resource/resResourceArchive.cpp
src/KingSystem/Resource/resResourceArchive.h
src/KingSystem/Resource/resResourceDemo.cpp
src/KingSystem/Resource/resResourceDemo.h
src/KingSystem/Resource/resResourceDrop.cpp
src/KingSystem/Resource/resResourceDrop.h
src/KingSystem/Resource/resResourceGParamList.cpp
src/KingSystem/Resource/resResourceGParamList.h
src/KingSystem/Resource/resResourceLod.cpp
src/KingSystem/Resource/resResourceLod.h
src/KingSystem/Resource/resResourceRecipe.cpp
src/KingSystem/Resource/resResourceRecipe.h
src/KingSystem/Terrain/teraSystem.h
src/KingSystem/Utils/Thread/Event.cpp
src/KingSystem/Utils/Thread/Event.h
src/KingSystem/Utils/Thread/GameTaskThread.cpp
src/KingSystem/Utils/Thread/GameTaskThread.h
src/KingSystem/Utils/Thread/ManagedTask.cpp
src/KingSystem/Utils/Thread/ManagedTask.h
src/KingSystem/Utils/Thread/ManagedTaskHandle.cpp
src/KingSystem/Utils/Thread/ManagedTaskHandle.h
src/KingSystem/Utils/Thread/Task.cpp
src/KingSystem/Utils/Thread/Task.h
src/KingSystem/Utils/Thread/TaskMgr.cpp
src/KingSystem/Utils/Thread/TaskMgr.h
src/KingSystem/Utils/Thread/TaskQueueBase.cpp
src/KingSystem/Utils/Thread/TaskQueueBase.h
src/KingSystem/Utils/Thread/TaskQueue.cpp
src/KingSystem/Utils/Thread/TaskQueue.h
src/KingSystem/Utils/Thread/TaskQueueLock.cpp
src/KingSystem/Utils/Thread/TaskQueueLock.h
src/KingSystem/Utils/Thread/TaskThread.cpp
src/KingSystem/Utils/Thread/TaskThread.h
src/KingSystem/Utils/Byaml.cpp
src/KingSystem/Utils/Byaml.h
src/KingSystem/Utils/ByamlLocal.cpp
src/KingSystem/Utils/ByamlLocal.h
src/KingSystem/Utils/ByamlUtil.cpp
src/KingSystem/Utils/Debug.h
src/KingSystem/Utils/FixedString.h
src/KingSystem/Utils/HashUtil.h
src/KingSystem/Utils/HeapUtil.cpp
src/KingSystem/Utils/HeapUtil.h
src/KingSystem/Utils/ParamIO.h
src/KingSystem/Utils/StrTreeMap.h
src/KingSystem/Utils/Types.h
)
target_include_directories(uking PRIVATE src/)
target_compile_options(uking PRIVATE -fno-rtti -fno-exceptions)
target_compile_options(uking PRIVATE -Wall -Wextra)
target_compile_options(uking PRIVATE -fno-strict-aliasing)
target_compile_options(uking PRIVATE -Wno-invalid-offsetof)
add_subdirectory(lib/NintendoSDK)
target_link_libraries(uking PUBLIC NintendoSDK)
add_subdirectory(lib/sead)
target_link_libraries(uking PUBLIC sead)
add_subdirectory(lib/agl)
target_link_libraries(uking PUBLIC agl)