Make build artifact name configurable
This commit is contained in:
14
SConstruct
14
SConstruct
@@ -16,27 +16,31 @@ env = SConscript("redot-cpp/SConstruct")
|
|||||||
env.Append(CPPPATH=["src/"])
|
env.Append(CPPPATH=["src/"])
|
||||||
sources = Glob("src/*.cpp")
|
sources = Glob("src/*.cpp")
|
||||||
|
|
||||||
|
import importlib
|
||||||
|
|
||||||
|
build_variables = importlib.import_module("build")
|
||||||
|
|
||||||
if env["platform"] == "macos":
|
if env["platform"] == "macos":
|
||||||
library = env.SharedLibrary(
|
library = env.SharedLibrary(
|
||||||
"demo/bin/libgdexample.{}.{}.framework/libgdexample.{}.{}".format(
|
"demo/bin/lib{}.{}.{}.framework/lib{}.{}.{}".format(
|
||||||
env["platform"], env["target"], env["platform"], env["target"]
|
build_variables.PROJECT_NAME, env["platform"], env["target"], env["platform"], env["target"]
|
||||||
),
|
),
|
||||||
source=sources,
|
source=sources,
|
||||||
)
|
)
|
||||||
elif env["platform"] == "ios":
|
elif env["platform"] == "ios":
|
||||||
if env["ios_simulator"]:
|
if env["ios_simulator"]:
|
||||||
library = env.StaticLibrary(
|
library = env.StaticLibrary(
|
||||||
"demo/bin/libgdexample.{}.{}.simulator.a".format(env["platform"], env["target"]),
|
"demo/bin/lib{}.{}.{}.simulator.a".format(build_variables.PROJECT_NAME, env["platform"], env["target"]),
|
||||||
source=sources,
|
source=sources,
|
||||||
)
|
)
|
||||||
else:
|
else:
|
||||||
library = env.StaticLibrary(
|
library = env.StaticLibrary(
|
||||||
"demo/bin/libgdexample.{}.{}.a".format(env["platform"], env["target"]),
|
"demo/bin/lib{}.{}.{}.a".format(build_variables.PROJECT_NAME, env["platform"], env["target"]),
|
||||||
source=sources,
|
source=sources,
|
||||||
)
|
)
|
||||||
else:
|
else:
|
||||||
library = env.SharedLibrary(
|
library = env.SharedLibrary(
|
||||||
"demo/bin/libgdexample{}{}".format(env["suffix"], env["SHLIBSUFFIX"]),
|
"demo/bin/lib{}{}{}".format(build_variables.PROJECT_NAME, env["suffix"], env["SHLIBSUFFIX"]),
|
||||||
source=sources,
|
source=sources,
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|||||||
48
build.py
Normal file
48
build.py
Normal file
@@ -0,0 +1,48 @@
|
|||||||
|
PROJECT_NAME = "gdextension_template"
|
||||||
|
|
||||||
|
if __name__ == "__main__":
|
||||||
|
gdextension_file_content = """
|
||||||
|
[configuration]
|
||||||
|
|
||||||
|
entry_symbol = "init_gdextension"
|
||||||
|
compatibility_minimum = "26.1"
|
||||||
|
reloadable = true
|
||||||
|
|
||||||
|
[libraries]
|
||||||
|
|
||||||
|
macos.debug = "res://bin/lib{0}.macos.template_debug.framework"
|
||||||
|
macos.release = "res://bin/lib{0}.macos.template_release.framework"
|
||||||
|
|
||||||
|
ios.debug = "res://bin/lib{0}.ios.template_debug.xcframework"
|
||||||
|
ios.release = "res://bin/lib{0}.ios.template_release.xcframework"
|
||||||
|
|
||||||
|
windows.debug.x86_32 = "res://bin/lib{0}.windows.template_debug.x86_32.dll"
|
||||||
|
windows.release.x86_32 = "res://bin/lib{0}.windows.template_release.x86_32.dll"
|
||||||
|
windows.debug.x86_64 = "res://bin/lib{0}.windows.template_debug.x86_64.dll"
|
||||||
|
windows.release.x86_64 = "res://bin/lib{0}.windows.template_release.x86_64.dll"
|
||||||
|
|
||||||
|
linux.debug.x86_64 = "res://bin/lib{0}.linux.template_debug.x86_64.so"
|
||||||
|
linux.release.x86_64 = "res://bin/lib{0}.linux.template_release.x86_64.so"
|
||||||
|
linux.debug.arm64 = "res://bin/lib{0}.linux.template_debug.arm64.so"
|
||||||
|
linux.release.arm64 = "res://bin/lib{0}.linux.template_release.arm64.so"
|
||||||
|
linux.debug.rv64 = "res://bin/lib{0}.linux.template_debug.rv64.so"
|
||||||
|
linux.release.rv64 = "res://bin/lib{0}.linux.template_release.rv64.so"
|
||||||
|
|
||||||
|
android.debug.x86_64 = "res://bin/lib{0}.android.template_debug.x86_64.so"
|
||||||
|
android.release.x86_64 = "res://bin/lib{0}.android.template_release.x86_64.so"
|
||||||
|
android.debug.arm64 = "res://bin/lib{0}.android.template_debug.arm64.so"
|
||||||
|
android.release.arm64 = "res://bin/lib{0}.android.template_release.arm64.so"
|
||||||
|
|
||||||
|
[dependencies]
|
||||||
|
ios.debug = {{
|
||||||
|
"res://bin/libgodot-cpp.ios.template_debug.xcframework": ""
|
||||||
|
}}
|
||||||
|
ios.release = {{
|
||||||
|
"res://bin/libgodot-cpp.ios.template_release.xcframework": ""
|
||||||
|
}}
|
||||||
|
""".format(PROJECT_NAME)
|
||||||
|
|
||||||
|
gdextension_file_path = "demo/template.gdextension"
|
||||||
|
|
||||||
|
with open(gdextension_file_path, "w") as gdextension_file:
|
||||||
|
gdextension_file.write(gdextension_file_content)
|
||||||
Reference in New Issue
Block a user