From 24bde1ca43f6b3d87fcc4603c218aa442b6af779 Mon Sep 17 00:00:00 2001 From: Campbell Barton Date: Tue, 24 Apr 2018 12:08:01 +0200 Subject: Add "make icons_geom" convenience target Generates icons from the blend file in lib. --- GNUmakefile | 11 ++++++--- release/datafiles/blender_icons_geom_update.py | 32 ++++++++++++++++++++++++++ 2 files changed, 40 insertions(+), 3 deletions(-) create mode 100755 release/datafiles/blender_icons_geom_update.py diff --git a/GNUmakefile b/GNUmakefile index 46f0fa18eec..3817e6b3e5c 100644 --- a/GNUmakefile +++ b/GNUmakefile @@ -236,9 +236,10 @@ help: .FORCE @echo " * check_descriptions - check for duplicate/invalid descriptions" @echo "" @echo "Utilities (not associated with building blender)" - @echo " * icons - updates PNG icons from SVG files." - @echo " * tgz - create a compressed archive of the source code." - @echo " * update - updates git and all submodules" + @echo " * icons - updates PNG icons from SVG files." + @echo " * icons_geom - updates Geometry icons from BLEND file." + @echo " * tgz - create a compressed archive of the source code." + @echo " * update - updates git and all submodules" @echo "" @echo "Environment Variables" @echo " * BUILD_CMAKE_ARGS - arguments passed to CMake." @@ -423,6 +424,10 @@ icons: .FORCE "$(BLENDER_DIR)/release/datafiles/blender_icons_update.py" "$(BLENDER_DIR)/release/datafiles/prvicons_update.py" +icons_geom: .FORCE + BLENDER_BIN="$(BUILD_DIR)/bin/blender" \ + "$(BLENDER_DIR)/release/datafiles/blender_icons_geom_update.py" + update: .FORCE if [ "$(OS_NCASE)" == "darwin" ] && [ ! -d "../lib/$(OS_NCASE)" ]; then \ svn checkout https://svn.blender.org/svnroot/bf-blender/trunk/lib/$(OS_NCASE) ../lib/$(OS_NCASE) ; \ diff --git a/release/datafiles/blender_icons_geom_update.py b/release/datafiles/blender_icons_geom_update.py new file mode 100755 index 00000000000..df87ab4d444 --- /dev/null +++ b/release/datafiles/blender_icons_geom_update.py @@ -0,0 +1,32 @@ +#!/usr/bin/env python3 + +# This script updates icons from the SVG file +import os +import subprocess +import sys + +def run(cmd): + print(" ", " ".join(cmd)) + subprocess.check_call(cmd) + +BASEDIR = os.path.abspath(os.path.dirname(__file__)) +ROOTDIR = os.path.normpath(os.path.join(BASEDIR, "..", "..")) + +blender_bin = os.environ.get("BLENDER_BIN", "blender") +if not os.path.exists(blender_bin): + blender_bin = os.path.join(ROOTDIR, "blender.bin") + +icons_blend = ( + os.path.join(ROOTDIR, "..", "lib", "resources", "icon_geom.blend"), +) + +# create .dat pixmaps (which are stored in git) +for blend in icons_blend: + cmd = ( + blender_bin, "--background", "--factory-startup", "-noaudio", + blend, + "--python", os.path.join(BASEDIR, "blender_icons_geom.py"), + "--", + "--output-dir", os.path.join(BASEDIR, "icons"), + ) + run(cmd) -- cgit v1.2.3