[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [49800] trunk/blender: startup. blend and preview.blend are now converted to C at build time.
Campbell Barton
ideasman42 at gmail.com
Sat Aug 11 14:26:43 CEST 2012
Revision: 49800
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=49800
Author: campbellbarton
Date: 2012-08-11 12:26:43 +0000 (Sat, 11 Aug 2012)
Log Message:
-----------
startup.blend and preview.blend are now converted to C at build time.
made some changes to startup.c
- change default player to internal since its working now.
- added new screen for full screen 3d viewport (nice for demo's and navigating)
- disable cursor depth option (was enabled by default because of re-used flag)
Modified Paths:
--------------
trunk/blender/SConstruct
trunk/blender/build_files/cmake/macros.cmake
trunk/blender/release/datafiles/preview.blend
trunk/blender/source/blender/compositor/CMakeLists.txt
trunk/blender/source/blender/editors/datafiles/CMakeLists.txt
trunk/blender/source/blender/editors/datafiles/SConscript
Added Paths:
-----------
trunk/blender/release/datafiles/startup.blend
Removed Paths:
-------------
trunk/blender/source/blender/editors/datafiles/preview.blend.c
trunk/blender/source/blender/editors/datafiles/startup.blend.c
Modified: trunk/blender/SConstruct
===================================================================
--- trunk/blender/SConstruct 2012-08-11 12:16:09 UTC (rev 49799)
+++ trunk/blender/SConstruct 2012-08-11 12:26:43 UTC (rev 49800)
@@ -450,8 +450,11 @@
###################################
if not os.path.isdir ( B.root_build_dir + 'data_headers'):
os.makedirs ( B.root_build_dir + 'data_headers' )
+if not os.path.isdir ( B.root_build_dir + 'data_sources'):
+ os.makedirs ( B.root_build_dir + 'data_sources' )
# use for includes
env['DATA_HEADERS'] = os.path.join(os.path.abspath(env['BF_BUILDDIR']), "data_headers")
+env['DATA_SOURCES'] = os.path.join(os.path.abspath(env['BF_BUILDDIR']), "data_sources")
def ensure_data(FILE_FROM, FILE_TO, VAR_NAME):
if os.sep == "\\":
FILE_FROM = FILE_FROM.replace("/", "\\")
@@ -487,6 +490,14 @@
B.root_build_dir + "data_headers/COM_OpenCLKernels.cl.h",
"clkernelstoh_COM_OpenCLKernels_cl")
+ensure_data("./release/datafiles/startup.blend",
+ B.root_build_dir + "data_sources/startup.blend.c",
+ "datatoc_startup_blend")
+
+ensure_data("./release/datafiles/preview.blend",
+ B.root_build_dir + "data_sources/preview.blend.c",
+ "datatoc_preview_blend")
+
##### END DATAFILES ##########
Help(opts.GenerateHelpText(env))
Modified: trunk/blender/build_files/cmake/macros.cmake
===================================================================
--- trunk/blender/build_files/cmake/macros.cmake 2012-08-11 12:16:09 UTC (rev 49799)
+++ trunk/blender/build_files/cmake/macros.cmake 2012-08-11 12:26:43 UTC (rev 49800)
@@ -638,7 +638,7 @@
# --------------
# MINGW HACK END
if (_reset_standard_libraries)
- # Must come after project(...)
+ # Must come after projecINCt(...)
#
# MINGW workaround for -ladvapi32 being included which surprisingly causes
# string formatting of floats, eg: printf("%.*f", 3, value). to crash blender
@@ -727,29 +727,20 @@
endmacro()
-# not highly optimal, may replace with generated C program like makesdna
-function(data_to_c
- file_from file_to var_name)
+# TODO, create a C binary and call it instead!, doing this in cmake its slow
+macro(data_to_c
+ file_from file_to var_name
+ list_to_add)
- file(READ ${file_from} file_from_string HEX)
- string(LENGTH ${file_from_string} _max_index)
- math(EXPR size_on_disk ${_max_index}/2)
+ list(APPEND ${list_to_add} ${file_to})
- file(REMOVE ${file_to})
+ add_custom_command(
+ OUTPUT ${file_to}
+ COMMAND ${CMAKE_COMMAND}
+ -DFILE_FROM=${file_from}
+ -DFILE_TO=${file_to}
+ -DVAR_NAME=${var_name}
+ -P ${CMAKE_SOURCE_DIR}/build_files/cmake/data_to_c.cmake
+ DEPENDS ${file_from})
+endmacro()
- file(APPEND ${file_to} "int ${var_name}_size = ${size_on_disk};\n")
- file(APPEND ${file_to} "char ${var_name}[] = {")
-
- set(_index 0)
-
- while(NOT _index EQUAL _max_index)
- string(SUBSTRING "${file_from_string}" ${_index} 2 _pair)
- file(APPEND ${file_to} "0x${_pair},")
- math(EXPR _index ${_index}+2)
- endwhile()
- file(APPEND ${file_to} "};\n")
-endfunction()
-
-# eg
-# data_to_c("/home/guest/test.txt" "/home/guest/test.txt.h" "this_is_data")
-
Modified: trunk/blender/release/datafiles/preview.blend
===================================================================
(Binary files differ)
Added: trunk/blender/release/datafiles/startup.blend
===================================================================
(Binary files differ)
Property changes on: trunk/blender/release/datafiles/startup.blend
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Modified: trunk/blender/source/blender/compositor/CMakeLists.txt
===================================================================
--- trunk/blender/source/blender/compositor/CMakeLists.txt 2012-08-11 12:16:09 UTC (rev 49799)
+++ trunk/blender/source/blender/compositor/CMakeLists.txt 2012-08-11 12:26:43 UTC (rev 49800)
@@ -50,21 +50,6 @@
)
-# --- data file ---
-# ... may make this a macro
-list(APPEND INC
- ${CMAKE_CURRENT_BINARY_DIR}/operations
-)
-add_custom_command(
- OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/operations/COM_OpenCLKernels.cl.h
- COMMAND ${CMAKE_COMMAND}
- -DFILE_FROM=${CMAKE_CURRENT_SOURCE_DIR}/operations/COM_OpenCLKernels.cl
- -DFILE_TO=${CMAKE_CURRENT_BINARY_DIR}/operations/COM_OpenCLKernels.cl.h
- -DVAR_NAME=clkernelstoh_COM_OpenCLKernels_cl
- -P ${CMAKE_SOURCE_DIR}/build_files/cmake/data_to_c.cmake
- DEPENDS operations/COM_OpenCLKernels.cl)
-# --- end data file --
-
set(SRC
COM_compositor.h
COM_defines.h
@@ -653,9 +638,13 @@
operations/COM_MaskOperation.cpp
operations/COM_MaskOperation.h
+)
- # generated file
- ${CMAKE_CURRENT_BINARY_DIR}/operations/COM_OpenCLKernels.cl.h
+list(APPEND INC
+ ${CMAKE_CURRENT_BINARY_DIR}/operations
)
+data_to_c(${CMAKE_CURRENT_SOURCE_DIR}/operations/COM_OpenCLKernels.cl
+ ${CMAKE_CURRENT_BINARY_DIR}/operations/COM_OpenCLKernels.cl.h
+ clkernelstoh_COM_OpenCLKernels_cl SRC)
blender_add_lib(bf_compositor "${SRC}" "${INC}" "${INC_SYS}")
Modified: trunk/blender/source/blender/editors/datafiles/CMakeLists.txt
===================================================================
--- trunk/blender/source/blender/editors/datafiles/CMakeLists.txt 2012-08-11 12:16:09 UTC (rev 49799)
+++ trunk/blender/source/blender/editors/datafiles/CMakeLists.txt 2012-08-11 12:26:43 UTC (rev 49800)
@@ -35,16 +35,13 @@
if(WITH_BLENDER)
# blender only
list(APPEND SRC
- startup.blend.c
+ # startup.blend.c
bmonofont.ttf.c
)
if(NOT WITH_HEADLESS)
# blender UI only
list(APPEND SRC
- # blends
- preview.blend.c
-
# images
splash.png.c
blender_icons.png.c
@@ -82,7 +79,17 @@
twist.png.c
vertexdraw.png.c
)
+
+ data_to_c(${CMAKE_SOURCE_DIR}/release/datafiles/preview.blend
+ ${CMAKE_CURRENT_BINARY_DIR}/preview.blend.c
+ datatoc_preview_blend SRC)
+
endif()
+
+ data_to_c(${CMAKE_SOURCE_DIR}/release/datafiles/startup.blend
+ ${CMAKE_CURRENT_BINARY_DIR}/startup.blend.c
+ datatoc_startup_blend SRC)
+
endif()
blender_add_lib(bf_editor_datafiles "${SRC}" "${INC}" "${INC_SYS}")
Modified: trunk/blender/source/blender/editors/datafiles/SConscript
===================================================================
--- trunk/blender/source/blender/editors/datafiles/SConscript 2012-08-11 12:16:09 UTC (rev 49799)
+++ trunk/blender/source/blender/editors/datafiles/SConscript 2012-08-11 12:26:43 UTC (rev 49800)
@@ -6,4 +6,11 @@
incs = '../include ../../blenlib ../../blenkernel ../../makesdna ../../imbuf'
incs += ' ../../bmesh #/intern/guardedalloc'
+# generated data files
+import os
+sources.extend((
+ os.path.join(env['DATA_SOURCES'], "startup.blend.c"),
+ os.path.join(env['DATA_SOURCES'], "preview.blend.c"),
+ ))
+
env.BlenderLib ( 'bf_editor_datafiles', sources, Split(incs), [], libtype=['core', 'player'], priority=[235, 30] )
Deleted: trunk/blender/source/blender/editors/datafiles/preview.blend.c
===================================================================
--- trunk/blender/source/blender/editors/datafiles/preview.blend.c 2012-08-11 12:16:09 UTC (rev 49799)
+++ trunk/blender/source/blender/editors/datafiles/preview.blend.c 2012-08-11 12:26:43 UTC (rev 49800)
@@ -1,17982 +0,0 @@
-/* DataToC output of file <preview_blend> */
-
-int datatoc_preview_blend_size = 575216;
-char datatoc_preview_blend[] = {
- 66, 76, 69, 78, 68, 69, 82, 45,118, 50, 54, 50, 82, 69, 78, 68,
- 32, 0, 0, 0,128,173,121, 86,255,127, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 20, 0, 0, 0,112,114,101,118,
-105,101,119, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 71, 76, 79, 66, 48, 4, 0, 0,128,169,121, 86,
-255,127, 0, 0,216, 0, 0, 0, 1, 0, 0, 0, 32, 32, 32, 51, 3, 0, 0, 0,250, 0, 0, 0, 1, 0, 0, 1,152,133, 23, 4,
- 0, 0, 0, 0, 72, 41, 24, 4, 0, 0, 0, 0, 0, 0, 0, 2, 64, 32, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 47,100,115,107,
- 47,100, 97,116, 97, 47,115,114, 99, 47, 98,108,101,110,100,101,114, 47, 98,108,101,110,100,101,114, 47, 46, 47,115,111,117,114,
- 99,101, 47, 98,108,101,110,100,101,114, 47,101,100,105,116,111,114,115, 47,100, 97,116, 97,102,105,108,101,115, 47,112,114,101,
-118,105,101,119, 46, 98,108,101,110,100, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
@@ Diff output truncated at 10240 characters. @@
More information about the Bf-blender-cvs
mailing list