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. @@
_______________________________________________
Bf-blender-cvs mailing list
[email protected]
http://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to