| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878 | 
							- set(lib_SRCS
 
- 	StdInc.cpp
 
- 	filesystem/AdapterLoaders.cpp
 
- 	filesystem/CArchiveLoader.cpp
 
- 	filesystem/CBinaryReader.cpp
 
- 	filesystem/CCompressedStream.cpp
 
- 	filesystem/CFileInputStream.cpp
 
- 	filesystem/CFilesystemLoader.cpp
 
- 	filesystem/CMemoryBuffer.cpp
 
- 	filesystem/CMemoryStream.cpp
 
- 	filesystem/CZipLoader.cpp
 
- 	filesystem/CZipSaver.cpp
 
- 	filesystem/FileInfo.cpp
 
- 	filesystem/Filesystem.cpp
 
- 	filesystem/MinizipExtensions.cpp
 
- 	filesystem/ResourcePath.cpp
 
- 	json/JsonNode.cpp
 
- 	json/JsonParser.cpp
 
- 	json/JsonUtils.cpp
 
- 	json/JsonValidator.cpp
 
- 	json/JsonWriter.cpp
 
- 	logging/CBasicLogConfigurator.cpp
 
- 	logging/CLogger.cpp
 
- 	logging/VisualLogger.cpp
 
- 	network/NetworkConnection.cpp
 
- 	network/NetworkHandler.cpp
 
- 	network/NetworkServer.cpp
 
- 	texts/TextOperations.cpp
 
- 	vstd/DateUtils.cpp
 
- 	vstd/StringUtils.cpp
 
- 	CConfigHandler.cpp
 
- 	CConsoleHandler.cpp
 
- 	CThreadHelper.cpp
 
- 	VCMIDirs.cpp
 
- )
 
- set(lib_MAIN_SRCS
 
- 	battle/AccessibilityInfo.cpp
 
- 	battle/BattleAction.cpp
 
- 	battle/BattleAttackInfo.cpp
 
- 	battle/BattleHex.cpp
 
- 	battle/BattleHexArray.cpp
 
- 	battle/BattleInfo.cpp
 
- 	battle/BattleLayout.cpp
 
- 	battle/BattleProxy.cpp
 
- 	battle/BattleStateInfoForRetreat.cpp
 
- 	battle/CBattleInfoCallback.cpp
 
- 	battle/CBattleInfoEssentials.cpp
 
- 	battle/CObstacleInstance.cpp
 
- 	battle/CPlayerBattleCallback.cpp
 
- 	battle/CUnitState.cpp
 
- 	battle/DamageCalculator.cpp
 
- 	battle/Destination.cpp
 
- 	battle/IBattleState.cpp
 
- 	battle/ReachabilityInfo.cpp
 
- 	battle/SideInBattle.cpp
 
- 	battle/SiegeInfo.cpp
 
- 	battle/Unit.cpp
 
- 	bonuses/Bonus.cpp
 
- 	bonuses/BonusCache.cpp
 
- 	bonuses/BonusEnum.cpp
 
- 	bonuses/BonusList.cpp
 
- 	bonuses/BonusParams.cpp
 
- 	bonuses/BonusSelector.cpp
 
- 	bonuses/BonusCustomTypes.cpp
 
- 	bonuses/CBonusSystemNode.cpp
 
- 	bonuses/IBonusBearer.cpp
 
- 	bonuses/Limiters.cpp
 
- 	bonuses/Propagators.cpp
 
- 	bonuses/Updaters.cpp
 
- 	campaign/CampaignHandler.cpp
 
- 	campaign/CampaignState.cpp
 
- 	constants/EntityIdentifiers.cpp
 
- 	entities/building/CBuilding.cpp
 
- 	entities/building/CBuildingHandler.cpp
 
- 	entities/faction/CFaction.cpp
 
- 	entities/faction/CTown.cpp
 
- 	entities/faction/CTownHandler.cpp
 
- 	entities/hero/CHero.cpp
 
- 	entities/hero/CHeroClass.cpp
 
- 	entities/hero/CHeroClassHandler.cpp
 
- 	entities/hero/CHeroHandler.cpp
 
- 	events/ApplyDamage.cpp
 
- 	events/GameResumed.cpp
 
- 	events/ObjectVisitEnded.cpp
 
- 	events/ObjectVisitStarted.cpp
 
- 	events/PlayerGotTurn.cpp
 
- 	events/TurnStarted.cpp
 
- 	json/JsonBonus.cpp
 
- 	json/JsonRandom.cpp
 
- 	gameState/CGameState.cpp
 
- 	gameState/CGameStateCampaign.cpp
 
- 	gameState/HighScore.cpp
 
- 	gameState/InfoAboutArmy.cpp
 
- 	gameState/RumorState.cpp
 
- 	gameState/TavernHeroesPool.cpp
 
- 	gameState/GameStatistics.cpp
 
- 	gameState/UpgradeInfo.cpp
 
- 	mapObjectConstructors/AObjectTypeHandler.cpp
 
- 	mapObjectConstructors/CBankInstanceConstructor.cpp
 
- 	mapObjectConstructors/CObjectClassesHandler.cpp
 
- 	mapObjectConstructors/CommonConstructors.cpp
 
- 	mapObjectConstructors/CRewardableConstructor.cpp
 
- 	mapObjectConstructors/DwellingInstanceConstructor.cpp
 
- 	mapObjectConstructors/FlaggableInstanceConstructor.cpp
 
- 	mapObjectConstructors/HillFortInstanceConstructor.cpp
 
- 	mapObjectConstructors/ShipyardInstanceConstructor.cpp
 
- 	mapObjects/CArmedInstance.cpp
 
- 	mapObjects/CBank.cpp
 
- 	mapObjects/CGCreature.cpp
 
- 	mapObjects/CGDwelling.cpp
 
- 	mapObjects/CGHeroInstance.cpp
 
- 	mapObjects/CGMarket.cpp
 
- 	mapObjects/CGObjectInstance.cpp
 
- 	mapObjects/CGPandoraBox.cpp
 
- 	mapObjects/CGResource.cpp
 
- 	mapObjects/TownBuildingInstance.cpp
 
- 	mapObjects/CGTownInstance.cpp
 
- 	mapObjects/CObjectHandler.cpp
 
- 	mapObjects/CQuest.cpp
 
- 	mapObjects/CRewardableObject.cpp
 
- 	mapObjects/FlaggableMapObject.cpp
 
- 	mapObjects/IMarket.cpp
 
- 	mapObjects/IObjectInterface.cpp
 
- 	mapObjects/MiscObjects.cpp
 
- 	mapObjects/ObjectTemplate.cpp
 
- 	mapObjects/ObstacleSetHandler.cpp
 
- 	mapping/CDrawRoadsOperation.cpp
 
- 	mapping/CMap.cpp
 
- 	mapping/CMapHeader.cpp
 
- 	mapping/CMapEditManager.cpp
 
- 	mapping/CMapInfo.cpp
 
- 	mapping/CMapOperation.cpp
 
- 	mapping/CMapService.cpp
 
- 	mapping/MapEditUtils.cpp
 
- 	mapping/MapIdentifiersH3M.cpp
 
- 	mapping/MapFeaturesH3M.cpp
 
- 	mapping/MapFormatH3M.cpp
 
- 	mapping/MapReaderH3M.cpp
 
- 	mapping/MapFormatJson.cpp
 
- 	mapping/ObstacleProxy.cpp
 
- 	modding/ActiveModsInSaveList.cpp
 
- 	modding/CModHandler.cpp
 
- 	modding/CModVersion.cpp
 
- 	modding/ContentTypeHandler.cpp
 
- 	modding/IdentifierStorage.cpp
 
- 	modding/ModDescription.cpp
 
- 	modding/ModManager.cpp
 
- 	modding/ModUtility.cpp
 
- 	modding/ModVerificationInfo.cpp
 
- 	networkPacks/NetPacksLib.cpp
 
- 	pathfinder/CGPathNode.cpp
 
- 	pathfinder/CPathfinder.cpp
 
- 	pathfinder/NodeStorage.cpp
 
- 	pathfinder/PathfinderCache.cpp
 
- 	pathfinder/PathfinderOptions.cpp
 
- 	pathfinder/PathfindingRules.cpp
 
- 	pathfinder/TurnInfo.cpp
 
- 	rewardable/Configuration.cpp
 
- 	rewardable/Info.cpp
 
- 	rewardable/Interface.cpp
 
- 	rewardable/Limiter.cpp
 
- 	rewardable/Reward.cpp
 
- 	rmg/RmgArea.cpp
 
- 	rmg/RmgObject.cpp
 
- 	rmg/RmgPath.cpp
 
- 	rmg/CMapGenerator.cpp
 
- 	rmg/CMapGenOptions.cpp
 
- 	rmg/CRmgTemplate.cpp
 
- 	rmg/CRmgTemplateStorage.cpp
 
- 	rmg/CZonePlacer.cpp
 
- 	rmg/TileInfo.cpp
 
- 	rmg/Zone.cpp
 
- 	rmg/Functions.cpp
 
- 	rmg/ObjectInfo.cpp
 
- 	rmg/ObjectConfig.cpp
 
- 	rmg/RmgMap.cpp
 
- 	rmg/PenroseTiling.cpp
 
- 	rmg/modificators/Modificator.cpp
 
- 	rmg/modificators/ObjectManager.cpp
 
- 	rmg/modificators/ObjectDistributor.cpp
 
- 	rmg/modificators/RoadPlacer.cpp
 
- 	rmg/modificators/TreasurePlacer.cpp
 
- 	rmg/modificators/PrisonHeroPlacer.cpp
 
- 	rmg/modificators/QuestArtifactPlacer.cpp
 
- 	rmg/modificators/ConnectionsPlacer.cpp
 
- 	rmg/modificators/WaterAdopter.cpp
 
- 	rmg/modificators/MinePlacer.cpp
 
- 	rmg/modificators/TownPlacer.cpp
 
- 	rmg/modificators/WaterProxy.cpp
 
- 	rmg/modificators/WaterRoutes.cpp
 
- 	rmg/modificators/RockPlacer.cpp
 
- 	rmg/modificators/RockFiller.cpp
 
- 	rmg/modificators/ObstaclePlacer.cpp
 
- 	rmg/modificators/RiverPlacer.cpp
 
- 	rmg/modificators/TerrainPainter.cpp
 
- 	rmg/threadpool/MapProxy.cpp
 
- 	serializer/BinaryDeserializer.cpp
 
- 	serializer/BinarySerializer.cpp
 
- 	serializer/CLoadFile.cpp
 
- 	serializer/CMemorySerializer.cpp
 
- 	serializer/Connection.cpp
 
- 	serializer/CSaveFile.cpp
 
- 	serializer/CSerializer.cpp
 
- 	serializer/CTypeList.cpp
 
- 	serializer/JsonDeserializer.cpp
 
- 	serializer/JsonSerializeFormat.cpp
 
- 	serializer/JsonSerializer.cpp
 
- 	serializer/JsonUpdater.cpp
 
- 	serializer/SerializerReflection.cpp
 
- 	spells/AbilityCaster.cpp
 
- 	spells/AdventureSpellMechanics.cpp
 
- 	spells/BattleSpellMechanics.cpp
 
- 	spells/BonusCaster.cpp
 
- 	spells/CSpellHandler.cpp
 
- 	spells/ExternalCaster.cpp
 
- 	spells/ISpellMechanics.cpp
 
- 	spells/ObstacleCasterProxy.cpp
 
- 	spells/Problem.cpp
 
- 	spells/ProxyCaster.cpp
 
- 	spells/TargetCondition.cpp
 
- 	spells/ViewSpellInt.cpp
 
- 	spells/effects/Catapult.cpp
 
- 	spells/effects/Clone.cpp
 
- 	spells/effects/Damage.cpp
 
- 	spells/effects/DemonSummon.cpp
 
- 	spells/effects/Dispel.cpp
 
- 	spells/effects/Effect.cpp
 
- 	spells/effects/Effects.cpp
 
- 	spells/effects/Heal.cpp
 
- 	spells/effects/LocationEffect.cpp
 
- 	spells/effects/Moat.cpp
 
- 	spells/effects/Obstacle.cpp
 
- 	spells/effects/Registry.cpp
 
- 	spells/effects/UnitEffect.cpp
 
- 	spells/effects/Summon.cpp
 
- 	spells/effects/Teleport.cpp
 
- 	spells/effects/Timed.cpp
 
- 	spells/effects/RemoveObstacle.cpp
 
- 	spells/effects/Sacrifice.cpp
 
- 	texts/CGeneralTextHandler.cpp
 
- 	texts/CLegacyConfigParser.cpp
 
- 	texts/MetaString.cpp
 
- 	texts/TextLocalizationContainer.cpp
 
- 	ArtifactUtils.cpp
 
- 	BasicTypes.cpp
 
- 	BattleFieldHandler.cpp
 
- 	CAndroidVMHelper.cpp
 
- 	CArtHandler.cpp
 
- 	CArtifactInstance.cpp
 
- 	CBonusTypeHandler.cpp
 
- 	CCreatureHandler.cpp
 
- 	CCreatureSet.cpp
 
- 	CGameInfoCallback.cpp
 
- 	CGameInterface.cpp
 
- 	CPlayerState.cpp
 
- 	CRandomGenerator.cpp
 
- 	CScriptingModule.cpp
 
- 	CSkillHandler.cpp
 
- 	CStack.cpp
 
- 	GameSettings.cpp
 
- 	IGameCallback.cpp
 
- 	IHandlerBase.cpp
 
- 	LoadProgress.cpp
 
- 	LogicalExpression.cpp
 
- 	ObstacleHandler.cpp
 
- 	StartInfo.cpp
 
- 	ResourceSet.cpp
 
- 	RiverHandler.cpp
 
- 	RoadHandler.cpp
 
- 	ScriptHandler.cpp
 
- 	TerrainHandler.cpp
 
- 	TurnTimerInfo.cpp
 
- 	VCMI_Lib.cpp
 
- )
 
- if (NOT ENABLE_MINIMAL_LIB)
 
- 	list(APPEND lib_SRCS ${lib_MAIN_SRCS})
 
- endif()
 
- # Version.cpp is a generated file
 
- if(ENABLE_GITVERSION)
 
- 	list(APPEND lib_SRCS ${CMAKE_BINARY_DIR}/Version.cpp)
 
- 	set_source_files_properties(${CMAKE_BINARY_DIR}/Version.cpp
 
- 		PROPERTIES GENERATED TRUE
 
- 	)
 
- endif()
 
- set(lib_HEADERS
 
- 	../include/vstd/CLoggerBase.h
 
- 	../include/vstd/DateUtils.h
 
- 	../include/vstd/StringUtils.h
 
- 	../Global.h
 
- 	../AUTHORS.h
 
- 	StdInc.h
 
- 	filesystem/AdapterLoaders.h
 
- 	filesystem/CArchiveLoader.h
 
- 	filesystem/CBinaryReader.h
 
- 	filesystem/CCompressedStream.h
 
- 	filesystem/CFileInputStream.h
 
- 	filesystem/CFilesystemLoader.h
 
- 	filesystem/CInputOutputStream.h
 
- 	filesystem/CInputStream.h
 
- 	filesystem/CMemoryBuffer.h
 
- 	filesystem/CMemoryStream.h
 
- 	filesystem/COutputStream.h
 
- 	filesystem/CStream.h
 
- 	filesystem/CZipLoader.h
 
- 	filesystem/CZipSaver.h
 
- 	filesystem/FileInfo.h
 
- 	filesystem/Filesystem.h
 
- 	filesystem/ISimpleResourceLoader.h
 
- 	filesystem/MinizipExtensions.h
 
- 	filesystem/ResourcePath.h
 
- 	json/JsonFormatException.h
 
- 	json/JsonNode.h
 
- 	json/JsonParser.h
 
- 	json/JsonUtils.h
 
- 	json/JsonValidator.h
 
- 	json/JsonWriter.h
 
- 	logging/CBasicLogConfigurator.h
 
- 	logging/CLogger.h
 
- 	logging/VisualLogger.h
 
- 	network/NetworkConnection.h
 
- 	network/NetworkDefines.h
 
- 	network/NetworkHandler.h
 
- 	network/NetworkInterface.h
 
- 	network/NetworkServer.h
 
- 	texts/TextOperations.h
 
- 	CConfigHandler.h
 
- 	CConsoleHandler.h
 
- 	CThreadHelper.h
 
- 	VCMIDirs.h
 
- )
 
- set(lib_MAIN_HEADERS
 
- 	../include/vstd/ContainerUtils.h
 
- 	../include/vstd/RNG.h
 
- 	../include/vcmi/events/AdventureEvents.h
 
- 	../include/vcmi/events/ApplyDamage.h
 
- 	../include/vcmi/events/BattleEvents.h
 
- 	../include/vcmi/events/Event.h
 
- 	../include/vcmi/events/EventBus.h
 
- 	../include/vcmi/events/GameResumed.h
 
- 	../include/vcmi/events/GenericEvents.h
 
- 	../include/vcmi/events/ObjectVisitEnded.h
 
- 	../include/vcmi/events/ObjectVisitStarted.h
 
- 	../include/vcmi/events/PlayerGotTurn.h
 
- 	../include/vcmi/events/SubscriptionRegistry.h
 
- 	../include/vcmi/events/TurnStarted.h
 
- 	../include/vcmi/scripting/Service.h
 
- 	../include/vcmi/spells/Caster.h
 
- 	../include/vcmi/spells/Magic.h
 
- 	../include/vcmi/spells/Service.h
 
- 	../include/vcmi/spells/Spell.h
 
- 	../include/vcmi/Artifact.h
 
- 	../include/vcmi/ArtifactService.h
 
- 	../include/vcmi/Creature.h
 
- 	../include/vcmi/CreatureService.h
 
- 	../include/vcmi/Entity.h
 
- 	../include/vcmi/Environment.h
 
- 	../include/vcmi/Faction.h
 
- 	../include/vcmi/FactionService.h
 
- 	../include/vcmi/HeroClass.h
 
- 	../include/vcmi/HeroClassService.h
 
- 	../include/vcmi/HeroType.h
 
- 	../include/vcmi/HeroTypeService.h
 
- 	../include/vcmi/Metatype.h
 
- 	../include/vcmi/Player.h
 
- 	../include/vcmi/ServerCallback.h
 
- 	../include/vcmi/Services.h
 
- 	../include/vcmi/Skill.h
 
- 	../include/vcmi/SkillService.h
 
- 	../include/vcmi/Team.h
 
- 	battle/AccessibilityInfo.h
 
- 	battle/AutocombatPreferences.h
 
- 	battle/BattleAction.h
 
- 	battle/BattleAttackInfo.h
 
- 	battle/BattleHex.h
 
- 	battle/BattleHexArray.h
 
- 	battle/BattleInfo.h
 
- 	battle/BattleLayout.h
 
- 	battle/BattleSide.h
 
- 	battle/BattleStateInfoForRetreat.h
 
- 	battle/BattleProxy.h
 
- 	battle/CBattleInfoCallback.h
 
- 	battle/CBattleInfoEssentials.h
 
- 	battle/CObstacleInstance.h
 
- 	battle/CPlayerBattleCallback.h
 
- 	battle/CUnitState.h
 
- 	battle/DamageCalculator.h
 
- 	battle/Destination.h
 
- 	battle/IBattleInfoCallback.h
 
- 	battle/IBattleState.h
 
- 	battle/IUnitInfo.h
 
- 	battle/PossiblePlayerBattleAction.h
 
- 	battle/ReachabilityInfo.h
 
- 	battle/SideInBattle.h
 
- 	battle/SiegeInfo.h
 
- 	battle/Unit.h
 
- 	bonuses/Bonus.h
 
- 	bonuses/BonusCache.h
 
- 	bonuses/BonusEnum.h
 
- 	bonuses/BonusList.h
 
- 	bonuses/BonusParams.h
 
- 	bonuses/BonusSelector.h
 
- 	bonuses/BonusCustomTypes.h
 
- 	bonuses/CBonusSystemNode.h
 
- 	bonuses/IBonusBearer.h
 
- 	bonuses/Limiters.h
 
- 	bonuses/Propagators.h
 
- 	bonuses/Updaters.h
 
- 	campaign/CampaignConstants.h
 
- 	campaign/CampaignHandler.h
 
- 	campaign/CampaignScenarioPrologEpilog.h
 
- 	campaign/CampaignState.h
 
- 	constants/EntityIdentifiers.h
 
- 	constants/Enumerations.h
 
- 	constants/IdentifierBase.h
 
- 	constants/VariantIdentifier.h
 
- 	constants/NumericConstants.h
 
- 	constants/StringConstants.h
 
- 	entities/building/CBuilding.h
 
- 	entities/building/CBuildingHandler.h
 
- 	entities/building/TownFortifications.h
 
- 	entities/faction/CFaction.h
 
- 	entities/faction/CTown.h
 
- 	entities/faction/CTownHandler.h
 
- 	entities/hero/CHero.h
 
- 	entities/hero/CHeroClass.h
 
- 	entities/hero/CHeroClassHandler.h
 
- 	entities/hero/CHeroHandler.h
 
- 	entities/hero/EHeroGender.h
 
- 	events/ApplyDamage.h
 
- 	events/GameResumed.h
 
- 	events/ObjectVisitEnded.h
 
- 	events/ObjectVisitStarted.h
 
- 	events/PlayerGotTurn.h
 
- 	events/TurnStarted.h
 
- 	json/JsonBonus.h
 
- 	json/JsonRandom.h
 
- 	gameState/CGameState.h
 
- 	gameState/CGameStateCampaign.h
 
- 	gameState/EVictoryLossCheckResult.h
 
- 	gameState/HighScore.h
 
- 	gameState/InfoAboutArmy.h
 
- 	gameState/RumorState.h
 
- 	gameState/SThievesGuildInfo.h
 
- 	gameState/TavernHeroesPool.h
 
- 	gameState/GameStatistics.h
 
- 	gameState/TavernSlot.h
 
- 	gameState/QuestInfo.h
 
- 	mapObjectConstructors/AObjectTypeHandler.h
 
- 	mapObjectConstructors/CBankInstanceConstructor.h
 
- 	mapObjectConstructors/CDefaultObjectTypeHandler.h
 
- 	mapObjectConstructors/CObjectClassesHandler.h
 
- 	mapObjectConstructors/CommonConstructors.h
 
- 	mapObjectConstructors/CRewardableConstructor.h
 
- 	mapObjectConstructors/DwellingInstanceConstructor.h
 
- 	mapObjectConstructors/HillFortInstanceConstructor.h
 
- 	mapObjectConstructors/FlaggableInstanceConstructor.h
 
- 	mapObjectConstructors/IObjectInfo.h
 
- 	mapObjectConstructors/RandomMapInfo.h
 
- 	mapObjectConstructors/ShipyardInstanceConstructor.h
 
- 	mapObjectConstructors/SObjectSounds.h
 
- 	mapObjects/CArmedInstance.h
 
- 	mapObjects/CBank.h
 
- 	mapObjects/CGCreature.h
 
- 	mapObjects/CGDwelling.h
 
- 	mapObjects/CGHeroInstance.h
 
- 	mapObjects/CGMarket.h
 
- 	mapObjects/CGObjectInstance.h
 
- 	mapObjects/CGPandoraBox.h
 
- 	mapObjects/TownBuildingInstance.h
 
- 	mapObjects/CGResource.h
 
- 	mapObjects/CGTownInstance.h
 
- 	mapObjects/CObjectHandler.h
 
- 	mapObjects/CQuest.h
 
- 	mapObjects/CRewardableObject.h
 
- 	mapObjects/FlaggableMapObject.h
 
- 	mapObjects/IMarket.h
 
- 	mapObjects/IObjectInterface.h
 
- 	mapObjects/IOwnableObject.h
 
- 	mapObjects/MapObjects.h
 
- 	mapObjects/MiscObjects.h
 
- 	mapObjects/CompoundMapObjectID.h
 
- 	mapObjects/ObjectTemplate.h
 
- 	mapObjects/ObstacleSetHandler.h
 
- 	mapping/CDrawRoadsOperation.h
 
- 	mapping/CMapDefines.h
 
- 	mapping/CMapEditManager.h
 
- 	mapping/CMapHeader.h
 
- 	mapping/CMap.h
 
- 	mapping/CMapInfo.h
 
- 	mapping/CMapOperation.h
 
- 	mapping/CMapService.h
 
- 	mapping/MapEditUtils.h
 
- 	mapping/MapIdentifiersH3M.h
 
- 	mapping/MapFeaturesH3M.h
 
- 	mapping/MapFormatH3M.h
 
- 	mapping/MapFormat.h
 
- 	mapping/MapReaderH3M.h
 
- 	mapping/MapFormatJson.h
 
- 	mapping/ObstacleProxy.h
 
- 	modding/ActiveModsInSaveList.h
 
- 	modding/CModHandler.h
 
- 	modding/CModVersion.h
 
- 	modding/ContentTypeHandler.h
 
- 	modding/IdentifierStorage.h
 
- 	modding/ModDescription.h
 
- 	modding/ModIncompatibility.h
 
- 	modding/ModManager.h
 
- 	modding/ModScope.h
 
- 	modding/ModUtility.h
 
- 	modding/ModVerificationInfo.h
 
- 	networkPacks/ArtifactLocation.h
 
- 	networkPacks/BattleChanges.h
 
- 	networkPacks/Component.h
 
- 	networkPacks/EInfoWindowMode.h
 
- 	networkPacks/EntityChanges.h
 
- 	networkPacks/EOpenWindowMode.h
 
- 	networkPacks/NetPacksBase.h
 
- 	networkPacks/NetPackVisitor.h
 
- 	networkPacks/ObjProperty.h
 
- 	networkPacks/PacksForClient.h
 
- 	networkPacks/PacksForClientBattle.h
 
- 	networkPacks/PacksForLobby.h
 
- 	networkPacks/PacksForServer.h
 
- 	networkPacks/SetRewardableConfiguration.h
 
- 	networkPacks/SetStackEffect.h
 
- 	networkPacks/SaveLocalState.h
 
- 	networkPacks/StackLocation.h
 
- 	networkPacks/TradeItem.h
 
- 	pathfinder/INodeStorage.h
 
- 	pathfinder/CGPathNode.h
 
- 	pathfinder/CPathfinder.h
 
- 	pathfinder/NodeStorage.h
 
- 	pathfinder/PathfinderCache.h
 
- 	pathfinder/PathfinderOptions.h
 
- 	pathfinder/PathfinderUtil.h
 
- 	pathfinder/PathfindingRules.h
 
- 	pathfinder/TurnInfo.h
 
- 	rewardable/Configuration.h
 
- 	rewardable/Info.h
 
- 	rewardable/Interface.h
 
- 	rewardable/Limiter.h
 
- 	rewardable/Reward.h
 
- 	rmg/RmgArea.h
 
- 	rmg/RmgObject.h
 
- 	rmg/RmgPath.h
 
- 	rmg/CMapGenerator.h
 
- 	rmg/CMapGenOptions.h
 
- 	rmg/CRmgTemplate.h
 
- 	rmg/CRmgTemplateStorage.h
 
- 	rmg/CZonePlacer.h
 
- 	rmg/TileInfo.h
 
- 	rmg/Zone.h
 
- 	rmg/RmgMap.h
 
- 	rmg/float3.h
 
- 	rmg/Functions.h
 
- 	rmg/ObjectInfo.h
 
- 	rmg/ObjectConfig.h
 
- 	rmg/PenroseTiling.h
 
- 	rmg/modificators/Modificator.h
 
- 	rmg/modificators/ObjectManager.h
 
- 	rmg/modificators/ObjectDistributor.h
 
- 	rmg/modificators/RoadPlacer.h
 
- 	rmg/modificators/TreasurePlacer.h
 
- 	rmg/modificators/PrisonHeroPlacer.h
 
- 	rmg/modificators/QuestArtifactPlacer.h
 
- 	rmg/modificators/ConnectionsPlacer.h
 
- 	rmg/modificators/WaterAdopter.h
 
- 	rmg/modificators/MinePlacer.h
 
- 	rmg/modificators/TownPlacer.h
 
- 	rmg/modificators/WaterProxy.h
 
- 	rmg/modificators/WaterRoutes.h
 
- 	rmg/modificators/RockPlacer.h
 
- 	rmg/modificators/RockFiller.h
 
- 	rmg/modificators/ObstaclePlacer.h
 
- 	rmg/modificators/RiverPlacer.h
 
- 	rmg/modificators/TerrainPainter.h
 
- 	rmg/threadpool/BlockingQueue.h
 
- 	rmg/threadpool/ThreadPool.h
 
- 	rmg/threadpool/MapProxy.h
 
- 	serializer/BinaryDeserializer.h
 
- 	serializer/BinarySerializer.h
 
- 	serializer/CLoadFile.h
 
- 	serializer/CMemorySerializer.h
 
- 	serializer/Connection.h
 
- 	serializer/CSaveFile.h
 
- 	serializer/CSerializer.h
 
- 	serializer/CTypeList.h
 
- 	serializer/JsonDeserializer.h
 
- 	serializer/JsonSerializeFormat.h
 
- 	serializer/JsonSerializer.h
 
- 	serializer/JsonUpdater.h
 
- 	serializer/ESerializationVersion.h
 
- 	serializer/RegisterTypes.h
 
- 	serializer/Serializeable.h
 
- 	serializer/SerializerReflection.h
 
- 	spells/AbilityCaster.h
 
- 	spells/AdventureSpellMechanics.h
 
- 	spells/BattleSpellMechanics.h
 
- 	spells/BonusCaster.h
 
- 	spells/CSpellHandler.h
 
- 	spells/ExternalCaster.h
 
- 	spells/ISpellMechanics.h
 
- 	spells/ObstacleCasterProxy.h
 
- 	spells/Problem.h
 
- 	spells/ProxyCaster.h
 
- 	spells/TargetCondition.h
 
- 	spells/ViewSpellInt.h
 
- 	spells/effects/Catapult.h
 
- 	spells/effects/Clone.h
 
- 	spells/effects/Damage.h
 
- 	spells/effects/DemonSummon.h
 
- 	spells/effects/Dispel.h
 
- 	spells/effects/Effect.h
 
- 	spells/effects/Effects.h
 
- 	spells/effects/EffectsFwd.h
 
- 	spells/effects/Heal.h
 
- 	spells/effects/LocationEffect.h
 
- 	spells/effects/Obstacle.h
 
- 	spells/effects/Registry.h
 
- 	spells/effects/UnitEffect.h
 
- 	spells/effects/Summon.h
 
- 	spells/effects/Teleport.h
 
- 	spells/effects/Timed.h
 
- 	spells/effects/RemoveObstacle.h
 
- 	spells/effects/Sacrifice.h
 
- 	texts/CGeneralTextHandler.h
 
- 	texts/Languages.h
 
- 	texts/CLegacyConfigParser.h
 
- 	texts/MetaString.h
 
- 	texts/TextIdentifier.h
 
- 	texts/TextLocalizationContainer.h
 
- 	AI_Base.h
 
- 	ArtifactUtils.h
 
- 	BattleFieldHandler.h
 
- 	CAndroidVMHelper.h
 
- 	CArtHandler.h
 
- 	CArtifactInstance.h
 
- 	CBonusTypeHandler.h
 
- 	CCreatureHandler.h
 
- 	CCreatureSet.h
 
- 	CGameInfoCallback.h
 
- 	CGameInterface.h
 
- 	ConstTransitivePtr.h
 
- 	Color.h
 
- 	CPlayerState.h
 
- 	CRandomGenerator.h
 
- 	CScriptingModule.h
 
- 	CSkillHandler.h
 
- 	CSoundBase.h
 
- 	CStack.h
 
- 	CStopWatch.h
 
- 	ExceptionsCommon.h
 
- 	ExtraOptionsInfo.h
 
- 	FunctionList.h
 
- 	GameCallbackHolder.h
 
- 	GameConstants.h
 
- 	GameSettings.h
 
- 	IBonusTypeHandler.h
 
- 	IGameCallback.h
 
- 	IGameEventsReceiver.h
 
- 	IGameSettings.h
 
- 	IHandlerBase.h
 
- 	int3.h
 
- 	LoadProgress.h
 
- 	LogicalExpression.h
 
- 	ObstacleHandler.h
 
- 	Point.h
 
- 	Rect.h
 
- 	Rect.cpp
 
- 	ResourceSet.h
 
- 	RiverHandler.h
 
- 	RoadHandler.h
 
- 	ScriptHandler.h
 
- 	ScopeGuard.h
 
- 	StartInfo.h
 
- 	TerrainHandler.h
 
- 	TurnTimerInfo.h
 
- 	UnlockGuard.h
 
- 	vcmi_endian.h
 
- 	VCMI_Lib.h
 
- )
 
- if (NOT ENABLE_MINIMAL_LIB)
 
- 	list(APPEND lib_HEADERS ${lib_MAIN_HEADERS})
 
- endif()
 
- assign_source_group(${lib_SRCS} ${lib_HEADERS})
 
- if(ENABLE_STATIC_LIBS)
 
- 	add_library(vcmi STATIC ${lib_SRCS} ${lib_HEADERS})
 
- else()
 
- 	add_library(vcmi SHARED ${lib_SRCS} ${lib_HEADERS})
 
- endif()
 
- set_target_properties(vcmi PROPERTIES COMPILE_DEFINITIONS "VCMI_DLL=1")
 
- target_link_libraries(vcmi PUBLIC
 
- 	minizip::minizip ZLIB::ZLIB TBB::tbb
 
- 	${SYSTEM_LIBS} Boost::boost Boost::thread Boost::filesystem Boost::program_options Boost::locale Boost::date_time
 
- )
 
- if(ENABLE_STATIC_LIBS AND ENABLE_CLIENT)
 
- 	target_compile_definitions(vcmi PRIVATE STATIC_AI)
 
- 	target_link_libraries(vcmi PRIVATE
 
- 		BattleAI
 
- 		EmptyAI
 
- 		StupidAI
 
- 		VCAI
 
- 	)
 
- 	if(ENABLE_NULLKILLER_AI)
 
- 		target_link_libraries(vcmi PRIVATE Nullkiller)
 
- 	endif()
 
- endif()
 
- # no longer necessary, but might be useful to keep in future
 
- # unfortunately at the moment tests do not support namespaced build, so enable only on some systems
 
- if(APPLE_IOS OR ANDROID)
 
- 	target_compile_definitions(vcmi PUBLIC VCMI_LIB_NAMESPACE=VCMI)
 
- endif()
 
- if(APPLE_IOS)
 
- 	target_link_libraries(vcmi PUBLIC iOS_utils)
 
- endif()
 
- target_include_directories(vcmi
 
- 	PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}
 
- 	PUBLIC ${CMAKE_SOURCE_DIR}
 
- 	PUBLIC ${CMAKE_SOURCE_DIR}/include
 
- )
 
- if(WIN32)
 
- 	set_target_properties(vcmi
 
- 		PROPERTIES
 
- 			OUTPUT_NAME "VCMI_lib"
 
- 			PROJECT_LABEL "VCMI_lib"
 
- 	)
 
- endif()
 
- # Use '-Wa,-mbig-obj' for files that generate very large object files
 
- # when compiling with MinGW lest you get "too many sections" assembler errors
 
- if(MINGW AND CMAKE_BUILD_TYPE STREQUAL "Debug")
 
- 	set_source_files_properties(
 
- 		serializer/SerializerReflection.cpp
 
- 		IGameCallback.cpp
 
- 		PROPERTIES
 
- 		COMPILE_OPTIONS "-Wa,-mbig-obj")
 
- endif()
 
- vcmi_set_output_dir(vcmi "")
 
- enable_pch(vcmi)
 
- # We want to deploy assets into build directory for easier debugging without install
 
- if(COPY_CONFIG_ON_BUILD)
 
- 	add_custom_command(TARGET vcmi POST_BUILD
 
- 		COMMAND ${CMAKE_COMMAND} -E remove_directory ${CMAKE_BINARY_DIR}/bin/${CMAKE_CFG_INTDIR}/config
 
- 		COMMAND ${CMAKE_COMMAND} -E remove_directory ${CMAKE_BINARY_DIR}/bin/${CMAKE_CFG_INTDIR}/Mods
 
- 		COMMAND ${CMAKE_COMMAND} -P ${CMAKE_SOURCE_DIR}/cmake_modules/create_link.cmake ${CMAKE_SOURCE_DIR}/config ${CMAKE_BINARY_DIR}/bin/${CMAKE_CFG_INTDIR}/config
 
- 		COMMAND ${CMAKE_COMMAND} -P ${CMAKE_SOURCE_DIR}/cmake_modules/create_link.cmake ${CMAKE_SOURCE_DIR}/Mods ${CMAKE_BINARY_DIR}/bin/${CMAKE_CFG_INTDIR}/Mods
 
- 	)
 
- endif()
 
- # Update version before vcmi compiling
 
- if(TARGET update_version)
 
- 	add_dependencies(vcmi update_version)
 
- endif()
 
- if(NOT ENABLE_STATIC_LIBS)
 
- 	install(TARGETS vcmi RUNTIME DESTINATION ${LIB_DIR} LIBRARY DESTINATION ${LIB_DIR})
 
- endif()
 
- if(APPLE_IOS AND NOT USING_CONAN)
 
- 	install(IMPORTED_RUNTIME_ARTIFACTS TBB::tbb LIBRARY DESTINATION ${LIB_DIR}) # CMake 3.21+
 
- 	get_target_property(LINKED_LIBS vcmi LINK_LIBRARIES)
 
- 	foreach(LINKED_LIB IN LISTS LINKED_LIBS)
 
- 		if(NOT TARGET ${LINKED_LIB})
 
- 			if(LINKED_LIB MATCHES "\\${CMAKE_SHARED_LIBRARY_SUFFIX}$")
 
- 				install(FILES ${LINKED_LIB} DESTINATION ${LIB_DIR})
 
- 			endif()
 
- 			continue()
 
- 		endif()
 
- 		get_target_property(LIB_TYPE ${LINKED_LIB} TYPE)
 
- 		if(NOT LIB_TYPE STREQUAL "SHARED_LIBRARY")
 
- 			continue()
 
- 		endif()
 
- 		get_target_property(_aliased ${LINKED_LIB} ALIASED_TARGET)
 
- 		if(_aliased)
 
- 			set(LINKED_LIB_REAL ${_aliased})
 
- 		else()
 
- 			set(LINKED_LIB_REAL ${LINKED_LIB})
 
- 		endif()
 
- 		get_target_property(_imported ${LINKED_LIB_REAL} IMPORTED)
 
- 		if(_imported)
 
- 			set(INSTALL_TYPE IMPORTED_RUNTIME_ARTIFACTS)
 
- 			get_target_property(BOOST_DEPENDENCIES ${LINKED_LIB_REAL} INTERFACE_LINK_LIBRARIES)
 
- 			foreach(BOOST_DEPENDENCY IN LISTS BOOST_DEPENDENCIES)
 
- 				get_target_property(BOOST_DEPENDENCY_TYPE ${BOOST_DEPENDENCY} TYPE)
 
- 				if(BOOST_DEPENDENCY_TYPE STREQUAL "SHARED_LIBRARY")
 
- 					install(IMPORTED_RUNTIME_ARTIFACTS ${BOOST_DEPENDENCY} LIBRARY DESTINATION ${LIB_DIR})
 
- 				endif()
 
- 			endforeach()
 
- 		else()
 
- 			set(INSTALL_TYPE TARGETS)
 
- 		endif()
 
- 		install(${INSTALL_TYPE} ${LINKED_LIB_REAL} LIBRARY DESTINATION ${LIB_DIR})
 
- 	endforeach()
 
- endif()
 
- if(VCMI_PORTMASTER)
 
- 	target_compile_definitions(vcmi PRIVATE VCMI_PORTMASTER)
 
- endif()
 
 
  |