Fix pad compile

This commit is contained in:
luboslenco
2025-02-27 16:12:24 +01:00
parent 9247860f4a
commit e7ebcef901
44 changed files with 92 additions and 85 deletions
+1 -1
View File
@@ -1,5 +1,5 @@
#include "../../../base/sources/plugin_api.h"
#include "../../../base/plugins/plugin_api.h"
void plugin_embed_base() {
JSValue global_obj = JS_GetGlobalObject(js_ctx);
+1
View File
@@ -1,5 +1,6 @@
let project = new Project("plugins");
project.add_cfiles("plugin_api.c");
project.add_cfiles("plugins.c");
if (flags.physics) {
+73 -73
View File
@@ -19,7 +19,7 @@ flags.with_eval = true;
let project = new Project("Base");
let dir = flags.name.toLowerCase();
{
if (!flags.lite) {
project.add_define("IDLE_SLEEP");
if (graphics === "vulkan") {
@@ -50,85 +50,85 @@ let dir = flags.name.toLowerCase();
}
project.add_define("WITH_PLUGINS");
project.add_cfiles("sources/plugin_api.c");
project.add_project("../" + dir + "/plugins");
project.add_project("plugins");
}
project.add_tsfiles("sources/ts");
project.add_tsfiles("sources/ts/nodes");
project.add_shaders("shaders/*.glsl");
project.add_shaders("shaders/draw/*.glsl");
project.add_assets("assets/*", { destination: "data/{name}" });
project.add_assets("assets/locale/*", { destination: "data/locale/{name}" });
project.add_assets("assets/licenses/**", { destination: "data/licenses/{name}" });
project.add_assets("assets/plugins/*", { destination: "data/plugins/{name}" });
project.add_assets("assets/themes/*.json", { destination: "data/themes/{name}" });
project.add_tsfiles("sources/ts");
project.add_tsfiles("sources/ts/iron");
project.add_tsfiles("sources/ts/nodes");
project.add_shaders("shaders/*.glsl");
project.add_shaders("shaders/draw/*.glsl");
project.add_assets("assets/*", { destination: "data/{name}" });
project.add_assets("assets/locale/*", { destination: "data/locale/{name}" });
project.add_assets("assets/licenses/**", { destination: "data/licenses/{name}" });
project.add_assets("assets/plugins/*", { destination: "data/plugins/{name}" });
project.add_assets("assets/themes/*.json", { destination: "data/themes/{name}" });
if (platform === "linux" && fs_exists(os_cwd() + "/icon.png")) {
project.add_assets("../" + dir + "/icon.png", { destination: "{name}", noprocessing: true });
}
if (flags.embed) {
project.add_define("WITH_EMBED");
project.add_define("arm_embed");
}
else {
project.add_assets("assets/extra/*", { destination: "data/{name}" });
}
if (flags.physics) {
project.add_define("arm_physics");
}
// project.add_define("arm_skin");
// project.add_define("arm_audio");
if (flags.android) {
project.add_define("arm_android_rmb");
}
if (flags.raytrace) {
project.add_assets("assets/raytrace/*", { destination: "data/{name}" });
if (flags.d3d12) {
project.add_assets("shaders/raytrace/*.cso", { destination: "data/{name}" });
if (platform === "linux" && fs_exists(os_cwd() + "/icon.png")) {
project.add_assets("../" + dir + "/icon.png", { destination: "{name}", noprocessing: true });
}
else if (flags.vulkan) {
project.add_assets("shaders/raytrace/*.spirv", { destination: "data/{name}" });
}
else if (flags.metal) {
project.add_assets("shaders/raytrace/*.metal", { destination: "data/{name}" });
}
}
let export_version_info = true;
if (export_version_info) {
let dir = "../" + flags.name.toLowerCase() + "/build";
let sha = os_popen(`git log --pretty=format:"%h" -n 1`).stdout.substr(1, 7);
let date = new Date().toISOString().split("T")[0];
let data = `{ "sha": "${sha}", "date": "${date}" }`;
fs_ensuredir(dir);
fs_writefile(dir + "/version.json", data);
// Adds version.json to embed.txt list
project.add_assets(dir + "/version.json", { destination: "data/{name}" });
}
if (flags.embed) {
project.add_define("WITH_EMBED");
project.add_define("arm_embed");
}
else {
project.add_assets("assets/extra/*", { destination: "data/{name}" });
}
let export_data_list = flags.android; // .apk contents
if (export_data_list) {
let root = "../" + flags.name.toLowerCase();
let data_list = {
"/data/plugins": fs_readdir("../base/assets/plugins").concat(fs_readdir(root + "/assets/plugins")).join(","),
"/data/export_presets": fs_readdir(root + "/assets/export_presets").join(","),
"/data/keymap_presets": fs_readdir(root + "/assets/keymap_presets").join(","),
"/data/locale": fs_readdir("../base/assets/locale").join(","),
"/data/meshes": fs_readdir(root + "/assets/meshes").join(","),
"/data/themes": fs_readdir("../base/assets/themes").join(","),
};
let dir = "../" + flags.name.toLowerCase() + "/build";
fs_ensuredir(dir);
fs_writefile(dir + "/data_list.json", JSON.stringify(data_list));
project.add_assets(dir + "/data_list.json", { destination: "data/{name}" });
if (flags.physics) {
project.add_define("arm_physics");
}
// project.add_define("arm_skin");
// project.add_define("arm_audio");
if (flags.android) {
project.add_define("arm_android_rmb");
}
if (flags.raytrace) {
project.add_assets("assets/raytrace/*", { destination: "data/{name}" });
if (flags.d3d12) {
project.add_assets("shaders/raytrace/*.cso", { destination: "data/{name}" });
}
else if (flags.vulkan) {
project.add_assets("shaders/raytrace/*.spirv", { destination: "data/{name}" });
}
else if (flags.metal) {
project.add_assets("shaders/raytrace/*.metal", { destination: "data/{name}" });
}
}
let export_version_info = true;
if (export_version_info) {
let dir = "../" + flags.name.toLowerCase() + "/build";
let sha = os_popen(`git log --pretty=format:"%h" -n 1`).stdout.substr(1, 7);
let date = new Date().toISOString().split("T")[0];
let data = `{ "sha": "${sha}", "date": "${date}" }`;
fs_ensuredir(dir);
fs_writefile(dir + "/version.json", data);
// Adds version.json to embed.txt list
project.add_assets(dir + "/version.json", { destination: "data/{name}" });
}
let export_data_list = flags.android; // .apk contents
if (export_data_list) {
let root = "../" + flags.name.toLowerCase();
let data_list = {
"/data/plugins": fs_readdir("../base/assets/plugins").concat(fs_readdir(root + "/assets/plugins")).join(","),
"/data/export_presets": fs_readdir(root + "/assets/export_presets").join(","),
"/data/keymap_presets": fs_readdir(root + "/assets/keymap_presets").join(","),
"/data/locale": fs_readdir("../base/assets/locale").join(","),
"/data/meshes": fs_readdir(root + "/assets/meshes").join(","),
"/data/themes": fs_readdir("../base/assets/themes").join(","),
};
let dir = "../" + flags.name.toLowerCase() + "/build";
fs_ensuredir(dir);
fs_writefile(dir + "/data_list.json", JSON.stringify(data_list));
project.add_assets(dir + "/data_list.json", { destination: "data/{name}" });
}
}
{
+3
View File
@@ -3151,6 +3151,9 @@ class Project {
add_project(directory) {
let from = path_isabs(directory) ? directory : path_join(this.basedir, directory);
if (!fs_exists(from)) {
return;
}
let project = load_project(from, false);
this.subProjects.push(project);
this.asset_matchers = this.asset_matchers.concat(project.asset_matchers);
+9 -7
View File
@@ -4,18 +4,20 @@ flags.name = "ArmorPad";
flags.package = "org.armorpad";
flags.with_nfd = true;
flags.with_iron = true;
flags.lite = true;
let project = new Project("ArmorPad");
project.add_tsfiles("sources");
let root = "../../../";
project.add_shaders(root + "base/shaders/draw/*.glsl",);
project.add_assets(root + "base/assets/font_mono.ttf", { destination: "data/{name}" });
project.add_assets(root + "base/assets/text_coloring.json", { destination: "data/{name}" });
project.add_tsfiles(root + "base/sources/file.ts");
project.add_tsfiles(root + "base/sources/path.ts");
project.add_shaders("../../shaders/draw/*.glsl",);
project.add_assets("../../assets/font_mono.ttf", { destination: "data/{name}" });
project.add_assets("../../assets/text_coloring.json", { destination: "data/{name}" });
project.add_tsfiles("../../sources/ts/iron");
project.add_tsfiles("../../sources/ts/file.ts");
project.add_tsfiles("../../sources/ts/path.ts");
project.add_define("IDLE_SLEEP");
project.add_project(root + "base");
project.add_project("../..");
project.flatten();
return project;
+1
View File
@@ -382,3 +382,4 @@ type config_t = { server: string; };
let config_raw: config_t;
function strings_check_internet_connection(): string { return ""; };
function console_error(s: string) { };
function plugin_embed() { }