Finally got CMake compilation to work.
Made sdna and srna work more like how the scons build system is doing it, with separate bf_rna and bf_dna libs being built.
This commit is contained in:
@@ -184,7 +184,7 @@ IF(UNIX)
|
|||||||
|
|
||||||
SET(ZLIB_LIB z)
|
SET(ZLIB_LIB z)
|
||||||
|
|
||||||
SET(LLIBS "-lXi -lutil -lc -lm -lpthread -lstdc++")
|
SET(LLIBS "-lXi -lutil -lc -lm -lpthread -lstdc++ -lX11 -ldl")
|
||||||
|
|
||||||
IF(WITH_OPENMP)
|
IF(WITH_OPENMP)
|
||||||
SET(LLIBS "${LLIBS} -lgomp")
|
SET(LLIBS "${LLIBS} -lgomp")
|
||||||
|
@@ -24,11 +24,22 @@
|
|||||||
#
|
#
|
||||||
# ***** END GPL LICENSE BLOCK *****
|
# ***** END GPL LICENSE BLOCK *****
|
||||||
|
|
||||||
SET(SRC makesdna.c ../../../../intern/guardedalloc/intern/mallocn.c ../../../../intern/guardedalloc/intern/mmap_win.c)
|
|
||||||
|
|
||||||
INCLUDE_DIRECTORIES(../../../../intern/guardedalloc ..)
|
INCLUDE_DIRECTORIES(../../../../intern/guardedalloc ..)
|
||||||
|
|
||||||
FILE(GLOB INC_FILES ../*.h)
|
FILE(GLOB INC_FILES ../*.h)
|
||||||
|
|
||||||
|
# Build makesdna executable
|
||||||
|
SET(SRC makesdna.c ../../../../intern/guardedalloc/intern/mallocn.c ../../../../intern/guardedalloc/intern/mmap_win.c)
|
||||||
ADD_EXECUTABLE(makesdna ${SRC} ${INC_FILES})
|
ADD_EXECUTABLE(makesdna ${SRC} ${INC_FILES})
|
||||||
|
|
||||||
|
# Output dna.c
|
||||||
|
ADD_CUSTOM_COMMAND(
|
||||||
|
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/dna.c
|
||||||
|
COMMAND ${CMAKE_BINARY_DIR}/bin/${CMAKE_CFG_INTDIR}/makesdna ${CMAKE_CURRENT_BINARY_DIR}/dna.c ${CMAKE_SOURCE_DIR}/source/blender/makesdna/
|
||||||
|
DEPENDS makesdna
|
||||||
|
)
|
||||||
|
|
||||||
|
# Build bf_dna library
|
||||||
|
SET(SRC dna_genfile.c dna.c)
|
||||||
|
BLENDERLIB(bf_dna "${SRC}" "${INC}")
|
||||||
|
|
||||||
MESSAGE(STATUS "Configuring makesdna")
|
MESSAGE(STATUS "Configuring makesdna")
|
||||||
|
@@ -24,11 +24,63 @@
|
|||||||
#
|
#
|
||||||
# ***** END GPL LICENSE BLOCK *****
|
# ***** END GPL LICENSE BLOCK *****
|
||||||
|
|
||||||
FILE(GLOB SRC *.c ../../../../intern/guardedalloc/intern/mallocn.c ../../../../intern/guardedalloc/intern/mmap_win.c)
|
SET(SRC
|
||||||
|
makesrna.c
|
||||||
INCLUDE_DIRECTORIES(../../../../intern/guardedalloc .. ../../makesdna ../../blenkernel ../../blenlib)
|
rna_actuator.c
|
||||||
|
rna_armature.c
|
||||||
|
rna_brush.c
|
||||||
|
rna_camera.c
|
||||||
|
rna_color.c
|
||||||
|
rna_constraint.c
|
||||||
|
rna_controller.c
|
||||||
|
rna_curve.c
|
||||||
|
rna_define.c
|
||||||
|
rna_fluidsim.c
|
||||||
|
rna_group.c
|
||||||
|
rna_ID.c
|
||||||
|
rna_image.c
|
||||||
|
rna_ipo.c
|
||||||
|
rna_key.c
|
||||||
|
rna_lamp.c
|
||||||
|
rna_lattice.c
|
||||||
|
rna_main.c
|
||||||
|
rna_material.c
|
||||||
|
rna_mesh.c
|
||||||
|
rna_meta.c
|
||||||
|
rna_modifier.c
|
||||||
|
rna_nodetree.c
|
||||||
|
rna_object.c
|
||||||
|
rna_packedfile.c
|
||||||
|
rna_property.c
|
||||||
|
rna_radio.c
|
||||||
|
rna_rna.c
|
||||||
|
rna_scene.c
|
||||||
|
rna_screen.c
|
||||||
|
rna_sensor.c
|
||||||
|
rna_sequence.c
|
||||||
|
rna_sound.c
|
||||||
|
rna_vfont.c
|
||||||
|
rna_wm.c
|
||||||
|
rna_world.c
|
||||||
|
../../../../intern/guardedalloc/intern/mallocn.c
|
||||||
|
../../../../intern/guardedalloc/intern/mmap_win.c)
|
||||||
|
|
||||||
|
INCLUDE_DIRECTORIES(../../../../intern/guardedalloc .. ../../makesdna ../../blenkernel ../../blenlib .)
|
||||||
FILE(GLOB INC_FILES ../*.h ../../makesdna/*.h)
|
FILE(GLOB INC_FILES ../*.h ../../makesdna/*.h)
|
||||||
|
|
||||||
|
# Build makesrna executable
|
||||||
ADD_EXECUTABLE(makesrna ${SRC} ${INC_FILES})
|
ADD_EXECUTABLE(makesrna ${SRC} ${INC_FILES})
|
||||||
|
TARGET_LINK_LIBRARIES(makesrna bf_dna)
|
||||||
|
|
||||||
|
# Output rna.c
|
||||||
|
ADD_CUSTOM_COMMAND(
|
||||||
|
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/rna.c
|
||||||
|
COMMAND ${CMAKE_BINARY_DIR}/bin/${CMAKE_CFG_INTDIR}/makesrna ${CMAKE_CURRENT_BINARY_DIR}/rna.c ${CMAKE_SOURCE_DIR}/source/blender/makesrna/
|
||||||
|
DEPENDS makesrna
|
||||||
|
)
|
||||||
|
|
||||||
|
# Build bf_rna
|
||||||
|
SET(SRC rna_access.c rna_dependency.c rna.c)
|
||||||
|
BLENDERLIB(bf_rna "${SRC}" "${INC}")
|
||||||
|
|
||||||
MESSAGE(STATUS "Configuring makesrna")
|
MESSAGE(STATUS "Configuring makesrna")
|
||||||
|
@@ -30,6 +30,8 @@ INCLUDE_DIRECTORIES(../../intern/guardedalloc
|
|||||||
../blender/blenlib
|
../blender/blenlib
|
||||||
../blender/blenkernel
|
../blender/blenkernel
|
||||||
../blender/editors/include
|
../blender/editors/include
|
||||||
|
../blender/makesrna
|
||||||
|
../blender/makesrna/intern
|
||||||
../blender/nodes
|
../blender/nodes
|
||||||
../blender/include
|
../blender/include
|
||||||
../blender/blenloader
|
../blender/blenloader
|
||||||
@@ -275,6 +277,8 @@ IF(UNIX)
|
|||||||
extern_binreloc
|
extern_binreloc
|
||||||
extern_glew
|
extern_glew
|
||||||
bf_videotex
|
bf_videotex
|
||||||
|
bf_rna
|
||||||
|
bf_dna
|
||||||
)
|
)
|
||||||
|
|
||||||
FOREACH(SORTLIB ${BLENDER_SORTED_LIBS})
|
FOREACH(SORTLIB ${BLENDER_SORTED_LIBS})
|
||||||
|
Reference in New Issue
Block a user