1
0
cuberite-2a/CMake/GenerateBindings.cmake
12xx12 36a67df105
Ender Crytal Fix and report proper cmake file for luabindingscheck fail (#5017)
* fixed network
fixed explosion
fixed ticking

added network broadcast to Setter method

added nullptr protection

using macros in 1.10 Protocol_1_10.cpp

revealed functions to LUA API

small fixups, typos, less functions used

fixed more doc

readded info that saving is done only if the beam is displayed

made the constructor transfer all needed members

fixed wrong commit

removed default parameters on SpawnEnderCrystal

fixed wrong metadata

moved call to destroy in the right place

fixed some typos

Fixed Ender Crystal

* fixed documentation

* fixed doc and added proper error message

* Parameters, arrows

* Parameters

Co-authored-by: 12xx12 <12xx12100@gmail.com>
Co-authored-by: Tiger Wang <ziwei.tiger@outlook.com>
2020-11-06 15:00:59 +00:00

116 lines
2.7 KiB
CMake

function(enable_bindings_generation)
# Enumerate every Lua-exported class.
# Changes to these files will cause binding regen:
set(BINDING_DEPENDENCIES
Bindings/AllToLua.pkg
Bindings/BindingsProcessor.lua
Bindings/LuaFunctions.h
Bindings/LuaWindow.h
Bindings/Plugin.h
Bindings/PluginLua.h
Bindings/PluginManager.h
BiomeDef.h
BlockArea.h
BlockEntities/BeaconEntity.h
BlockEntities/BedEntity.h
BlockEntities/BlockEntity.h
BlockEntities/BlockEntityWithItems.h
BlockEntities/BrewingstandEntity.h
BlockEntities/ChestEntity.h
BlockEntities/CommandBlockEntity.h
BlockEntities/DispenserEntity.h
BlockEntities/DropSpenserEntity.h
BlockEntities/DropperEntity.h
BlockEntities/FurnaceEntity.h
BlockEntities/HopperEntity.h
BlockEntities/JukeboxEntity.h
BlockEntities/MobSpawnerEntity.h
BlockEntities/NoteEntity.h
BlockEntities/SignEntity.h
BlockEntities/MobHeadEntity.h
BlockEntities/FlowerPotEntity.h
BlockType.h
BlockInfo.h
BoundingBox.h
ChatColor.h
ChunkDef.h
ClientHandle.h
Color.h
CompositeChat.h
CraftingRecipes.h
Cuboid.h
Defines.h
EffectID.h
Enchantments.h
Entities/Boat.h
Entities/ArrowEntity.h
Entities/Entity.h
Entities/ExpOrb.h
Entities/EnderCrystal.h
Entities/EntityEffect.h
Entities/ExpBottleEntity.h
Entities/FallingBlock.h
Entities/FireChargeEntity.h
Entities/FireworkEntity.h
Entities/Floater.h
Entities/GhastFireballEntity.h
Entities/HangingEntity.h
Entities/ItemFrame.h
Entities/LeashKnot.h
Entities/Pawn.h
Entities/Player.h
Entities/Painting.h
Entities/Pickup.h
Entities/ProjectileEntity.h
Entities/SplashPotionEntity.h
Entities/ThrownEggEntity.h
Entities/ThrownEnderPearlEntity.h
Entities/ThrownSnowballEntity.h
Entities/TNTEntity.h
Entities/WitherSkullEntity.h
Generating/ChunkDesc.h
IniFile.h
Inventory.h
Item.h
ItemGrid.h
Map.h
MapManager.h
Mobs/Monster.h
Mobs/MonsterTypes.h
OSSupport/File.h
Protocol/MojangAPI.h
Root.h
Scoreboard.h
Server.h
Statistics.h
StringUtils.h
UI/Window.h
UUID.h
Vector3.h
WebAdmin.h
World.h
)
# List all the files that are generated as part of the Bindings build process:
set(BINDING_OUTPUTS
Bindings.cpp
Bindings.h
LuaState_Declaration.inc
LuaState_Implementation.cpp
LuaState_Typedefs.inc
)
# Make the file paths absolute and pointing to the bindings folder:
set(BINDINGS_FOLDER "${PROJECT_SOURCE_DIR}/src/Bindings/")
list(TRANSFORM BINDING_OUTPUTS PREPEND ${BINDINGS_FOLDER})
list(TRANSFORM BINDING_DEPENDENCIES PREPEND "${PROJECT_SOURCE_DIR}/src/")
# Generate the bindings:
add_custom_command(
OUTPUT ${BINDING_OUTPUTS}
COMMAND lua BindingsProcessor.lua
WORKING_DIRECTORY ${BINDINGS_FOLDER}
DEPENDS ${BINDING_DEPENDENCIES}
)
endfunction()