diff options
Diffstat (limited to 'modules/svg/SCsub')
-rw-r--r-- | modules/svg/SCsub | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/modules/svg/SCsub b/modules/svg/SCsub new file mode 100644 index 0000000000..5be9367808 --- /dev/null +++ b/modules/svg/SCsub @@ -0,0 +1,35 @@ +#!/usr/bin/env python + +Import('env') +from compat import isbasestring + +# Thirdparty source files +thirdparty_dir = "#thirdparty/nanosvg/" +thirdparty_sources = [ + "nanosvg.cc" +] +thirdparty_sources = [thirdparty_dir + file for file in thirdparty_sources] + +# env.add_source_files(env.modules_sources, thirdparty_sources) + +lib = env.Library("svg_builtin", thirdparty_sources) +# Needs to be appended to arrive after libscene in the linker call, +# but we don't want it to arrive *after* system libs, so manual hack +# LIBS contains first SCons Library objects ("SCons.Node.FS.File object") +# and then plain strings for system library. We insert between the two. +inserted = False +for idx, linklib in enumerate(env["LIBS"]): + if isbasestring(linklib): # first system lib such as "X11", otherwise SCons lib object + env["LIBS"].insert(idx, lib) + inserted = True + break +if not inserted: + env.Append(LIBS=[lib]) + +env.Append(CPPPATH=[thirdparty_dir]) +env.Append(CCFLAGS=["-DSVG_ENABLED"]) + +# Godot's own source files +env.add_source_files(env.modules_sources, "*.cpp") + +Export('env') |