Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/source
diff options
context:
space:
mode:
authorCampbell Barton <ideasman42@gmail.com>2011-02-24 20:57:35 +0300
committerCampbell Barton <ideasman42@gmail.com>2011-02-24 20:57:35 +0300
commitb8e3f4ee30ccebce915eac8b8c7ab4b8b343c79e (patch)
tree5bb29a42e32879c4a40cd52704d9aaf6d3c8fef7 /source
parent197a57db697048d84eff6ba71f9ead16c49ccae2 (diff)
fix for cmake not having the correct svn revision in buildinfo, now generate a header every build with the time, date, svn revision.
Diffstat (limited to 'source')
-rw-r--r--source/blender/editors/sculpt_paint/paint_utils.c2
-rw-r--r--source/creator/CMakeLists.txt41
-rw-r--r--source/creator/buildinfo.c6
-rw-r--r--source/creator/creator.c6
4 files changed, 50 insertions, 5 deletions
diff --git a/source/blender/editors/sculpt_paint/paint_utils.c b/source/blender/editors/sculpt_paint/paint_utils.c
index b02c0db7da4..000db4c28f2 100644
--- a/source/blender/editors/sculpt_paint/paint_utils.c
+++ b/source/blender/editors/sculpt_paint/paint_utils.c
@@ -395,7 +395,7 @@ void PAINT_OT_face_select_hide(wmOperatorType *ot)
RNA_def_boolean(ot->srna, "unselected", 0, "Unselected", "Hide unselected rather than selected objects.");
}
-static int face_select_reveal_exec(bContext *C, wmOperator *op)
+static int face_select_reveal_exec(bContext *C, wmOperator *UNUSED(op))
{
Object *ob= CTX_data_active_object(C);
paintface_reveal(ob);
diff --git a/source/creator/CMakeLists.txt b/source/creator/CMakeLists.txt
index b7c134550cb..53ddc3bef9a 100644
--- a/source/creator/CMakeLists.txt
+++ b/source/creator/CMakeLists.txt
@@ -107,13 +107,17 @@ if(WIN32 AND NOT UNIX)
endif()
if(WITH_BUILDINFO)
+ # --------------------------------------------------------------------------
+ # These defines could all be moved into the header below
string(REPLACE " " "\ " BUILDINFO_CFLAGS "${CMAKE_C_FLAGS}")
string(REPLACE " " "\ " BUILDINFO_CXXFLAGS "${CMAKE_CXX_FLAGS}")
string(REPLACE " " "\ " BUILDINFO_LINKFLAGS "${PLATFORM_LINKFLAGS}")
add_definitions(
- -DBUILD_DATE="${BUILD_DATE}"
- -DBUILD_TIME="${BUILD_TIME}"
- -DBUILD_REV="${BUILD_REV}"
+ # # define in header now, else these get out of date on rebuilds.
+ # -DBUILD_DATE="${BUILD_DATE}"
+ # -DBUILD_TIME="${BUILD_TIME}"
+ # -DBUILD_REV="${BUILD_REV}"
+ -DWITH_BUILDINFO_HEADER # alternative to lines above
-DBUILD_PLATFORM="${CMAKE_SYSTEM_NAME}"
-DBUILD_TYPE="${CMAKE_BUILD_TYPE}"
-DBUILD_CFLAGS="${BUILDINFO_CFLAGS}"
@@ -122,6 +126,32 @@ if(WITH_BUILDINFO)
-DBUILD_SYSTEM="CMake"
)
+ # --------------------------------------------------------------------------
+ # write header for values that change each build
+ # note, generaed file is in build dir's source/creator
+ # except when used as an include path.
+
+ # include the output directory, where the buildinfo.h file is generated
+ include_directories(${CMAKE_BINARY_DIR}/source/creator)
+ message(WARNING "${CMAKE_CURRENT_SOURCE_DIR}")
+ # a custom target that is always built
+ add_custom_target(buildinfo ALL
+ DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/buildinfo.h)
+
+ # creates svnheader.h using cmake script
+ add_custom_command(OUTPUT ${CMAKE_CURRENT_SOURCE_DIR}/buildinfo.h
+ COMMAND ${CMAKE_COMMAND}
+ -DSOURCE_DIR=${CMAKE_SOURCE_DIR}
+ -P ${CMAKE_SOURCE_DIR}/build_files/cmake/buildinfo.cmake)
+
+ # buildinfo.h is a generated file
+ set_source_files_properties(${CMAKE_CURRENT_SOURCE_DIR}/buildinfo.h
+ PROPERTIES GENERATED TRUE
+ HEADER_FILE_ONLY TRUE)
+
+ # add deps below
+ # -------------- done with header values.
+
list(APPEND SRC
buildinfo.c
)
@@ -144,6 +174,11 @@ else()
add_executable(blender ${EXETYPE} ${SRC})
endif()
+if(WITH_BUILDINFO)
+ # explicitly say that the executable depends on the buildinfo
+ add_dependencies(blender buildinfo)
+endif()
+
# Post build steps for bundling/packaging.
set(TARGETDIR ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR})
diff --git a/source/creator/buildinfo.c b/source/creator/buildinfo.c
index c3b9ea56c45..65a3c432c86 100644
--- a/source/creator/buildinfo.c
+++ b/source/creator/buildinfo.c
@@ -27,15 +27,21 @@
* ***** END GPL LICENSE BLOCK *****
*/
+#ifdef WITH_BUILDINFO_HEADER
+#include "buildinfo.h"
+#endif
+
#ifdef BUILD_DATE
/* copied from BLI_utildefines.h */
#define STRINGIFY_ARG(x) #x
#define STRINGIFY(x) STRINGIFY_ARG(x)
+/* currently only these are defined in the header */
char build_date[]= STRINGIFY(BUILD_DATE);
char build_time[]= STRINGIFY(BUILD_TIME);
char build_rev[]= STRINGIFY(BUILD_REV);
+
char build_platform[]= STRINGIFY(BUILD_PLATFORM);
char build_type[]= STRINGIFY(BUILD_TYPE);
diff --git a/source/creator/creator.c b/source/creator/creator.c
index f365f650957..79c2829b006 100644
--- a/source/creator/creator.c
+++ b/source/creator/creator.c
@@ -97,6 +97,10 @@
#include "GPU_draw.h"
#include "GPU_extensions.h"
+#ifdef WITH_BUILDINFO_HEADER
+#define BUILD_DATE
+#endif
+
/* for passing information between creator and gameengine */
#ifdef WITH_GAMEENGINE
#include "GEN_messaging.h"
@@ -141,7 +145,7 @@ extern int pluginapi_force_ref(void); /* from blenpluginapi:pluginapi.c */
char bprogname[FILE_MAX]; /* from blenpluginapi:pluginapi.c */
char btempdir[FILE_MAX];
-#define BLEND_VERSION_STRING_FMT "Blender %d.%02d (sub %d) Build\n", BLENDER_VERSION/100, BLENDER_VERSION%100, BLENDER_SUBVERSION
+#define BLEND_VERSION_STRING_FMT "Blender %d.%02d (sub %d)\n", BLENDER_VERSION/100, BLENDER_VERSION%100, BLENDER_SUBVERSION
/* Initialise callbacks for the modules that need them */
static void setCallbacks(void);