[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [18190] branches/blender2.5/blender: Finally got CMake compilation to work.
Nicholas Bishop
nicholasbishop at gmail.com
Wed Dec 31 05:47:03 CET 2008
Revision: 18190
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=18190
Author: nicholasbishop
Date: 2008-12-31 05:47:01 +0100 (Wed, 31 Dec 2008)
Log Message:
-----------
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.
Modified Paths:
--------------
branches/blender2.5/blender/CMakeLists.txt
branches/blender2.5/blender/source/blender/makesdna/intern/CMakeLists.txt
branches/blender2.5/blender/source/blender/makesrna/intern/CMakeLists.txt
branches/blender2.5/blender/source/creator/CMakeLists.txt
Modified: branches/blender2.5/blender/CMakeLists.txt
===================================================================
--- branches/blender2.5/blender/CMakeLists.txt 2008-12-31 04:37:01 UTC (rev 18189)
+++ branches/blender2.5/blender/CMakeLists.txt 2008-12-31 04:47:01 UTC (rev 18190)
@@ -184,7 +184,7 @@
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)
SET(LLIBS "${LLIBS} -lgomp")
Modified: branches/blender2.5/blender/source/blender/makesdna/intern/CMakeLists.txt
===================================================================
--- branches/blender2.5/blender/source/blender/makesdna/intern/CMakeLists.txt 2008-12-31 04:37:01 UTC (rev 18189)
+++ branches/blender2.5/blender/source/blender/makesdna/intern/CMakeLists.txt 2008-12-31 04:47:01 UTC (rev 18190)
@@ -24,11 +24,22 @@
#
# ***** END GPL LICENSE BLOCK *****
-SET(SRC makesdna.c ../../../../intern/guardedalloc/intern/mallocn.c ../../../../intern/guardedalloc/intern/mmap_win.c)
-
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})
+# 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")
Modified: branches/blender2.5/blender/source/blender/makesrna/intern/CMakeLists.txt
===================================================================
--- branches/blender2.5/blender/source/blender/makesrna/intern/CMakeLists.txt 2008-12-31 04:37:01 UTC (rev 18189)
+++ branches/blender2.5/blender/source/blender/makesrna/intern/CMakeLists.txt 2008-12-31 04:47:01 UTC (rev 18190)
@@ -24,11 +24,63 @@
#
# ***** END GPL LICENSE BLOCK *****
-FILE(GLOB SRC *.c ../../../../intern/guardedalloc/intern/mallocn.c ../../../../intern/guardedalloc/intern/mmap_win.c)
+SET(SRC
+ makesrna.c
+ 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)
+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})
+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")
Modified: branches/blender2.5/blender/source/creator/CMakeLists.txt
===================================================================
--- branches/blender2.5/blender/source/creator/CMakeLists.txt 2008-12-31 04:37:01 UTC (rev 18189)
+++ branches/blender2.5/blender/source/creator/CMakeLists.txt 2008-12-31 04:47:01 UTC (rev 18190)
@@ -30,6 +30,8 @@
../blender/blenlib
../blender/blenkernel
../blender/editors/include
+ ../blender/makesrna
+ ../blender/makesrna/intern
../blender/nodes
../blender/include
../blender/blenloader
@@ -275,6 +277,8 @@
extern_binreloc
extern_glew
bf_videotex
+ bf_rna
+ bf_dna
)
FOREACH(SORTLIB ${BLENDER_SORTED_LIBS})
More information about the Bf-blender-cvs
mailing list