paint: switch to project.c

This commit is contained in:
luboslenco
2026-09-24 13:20:15 +02:00
parent c9ff802f27
commit 379cdd856f
4 changed files with 68 additions and 63 deletions
+21
View File
@@ -0,0 +1,21 @@
#include "../../base/tools/amake/amake.h"
project_t *main() {
project_t *project = project_create("plugins");
add_cfiles(project, "plugins.c");
add_cfiles(project, "io_svg/**");
add_cfiles(project, "io_exr/**");
add_cfiles(project, "io_psd/**");
add_cfiles(project, "io_gltf/**");
add_cfiles(project, "io_fbx/**");
add_cfiles(project, "io_tiff/**");
if (fs_exists("external")) {
add_cfiles(project, "external/**");
add_shaders(project, "external/*.shader");
add_assets(project, "external/assets/*", "data/{name}", 0);
add_define(project, "WITH_EXTERNAL");
}
return project;
}
-18
View File
@@ -1,18 +0,0 @@
let project = new Project("plugins");
project.add_cfiles("plugins.c");
project.add_cfiles("io_svg/**");
project.add_cfiles("io_exr/**");
project.add_cfiles("io_psd/**");
project.add_cfiles("io_gltf/**");
project.add_cfiles("io_fbx/**");
project.add_cfiles("io_tiff/**");
if (fs_exists(os_cwd() + "/../paint/plugins/external")) {
project.add_cfiles("external/**");
project.add_shaders("external/*.shader");
project.add_assets("external/assets/*", {destination : "data/{name}"});
project.add_define("WITH_EXTERNAL");
}
return project;
+47
View File
@@ -0,0 +1,47 @@
#include "../base/tools/amake/amake.h"
project_t *main() {
flags->name = "ArmorPaint";
flags->package = "org.armorpaint";
flags->embed = has_arg("--embed"); // !has_arg("--debug"); // clang 19
flags->with_physics = true;
flags->with_d3dcompiler = true;
flags->with_nfd = true;
flags->with_compress = platform != PLATFORM_ANDROID;
flags->with_image_write = true;
flags->with_video_write = !has_arg("tcc");
flags->with_eval = true;
flags->with_plugins = true;
flags->with_kong = true;
flags->with_raytrace = true;
flags->with_bc7 = true;
flags->with_audio = platform == PLATFORM_LINUX || platform == PLATFORM_WINDOWS;
flags->idle_sleep = true;
flags->export_version_info = true;
flags->export_data_list = platform == PLATFORM_ANDROID; // .apk contents
if (platform == PLATFORM_WASM) {
flags->with_nfd = false;
flags->with_compress = false;
flags->with_plugins = false;
flags->with_raytrace = false;
flags->export_data_list = true;
}
project_t *project = project_create(flags->name);
add_project(project, "../base");
add_cfiles(project, "sources/startup.c");
add_cfiles(project, "sources/minic_api.c");
add_cfiles(project, "sources/main.c");
add_shaders(project, "shaders/*.shader");
add_assets(project, "assets/*", "data/{name}", 0);
add_assets(project, "assets/export_presets/*", "data/export_presets/{name}", 0);
add_assets(project, "assets/keymap_presets/*", "data/keymap_presets/{name}", 0);
add_assets(project, "assets/licenses/**", "data/licenses/{name}", 0);
add_assets(project, "assets/plugins/*", "data/plugins/{name}", 0);
add_assets(project, "assets/meshes/*", "data/meshes/{name}", ASSET_NOEMBED);
add_assets(project, "assets/meshes/default/*", "data/meshes/{name}", 0); // Embed default mesh
add_assets(project, "assets/locale/*", "data/locale/{name}", 0);
add_assets(project, "assets/readme/readme.txt", "{name}", 0);
return project;
}
-45
View File
@@ -1,45 +0,0 @@
let flags = globalThis.flags;
flags.name = "ArmorPaint";
flags.package = "org.armorpaint";
flags.embed = os_argv().indexOf("--embed") >= 0; // os_argv().indexOf("--debug") == -1; // clang 19
flags.with_physics = true;
flags.with_d3dcompiler = true;
flags.with_nfd = true;
flags.with_compress = platform != "android";
flags.with_image_write = true;
flags.with_video_write = os_argv().indexOf("tcc") == -1;
flags.with_eval = true;
flags.with_plugins = true;
flags.with_kong = true;
flags.with_raytrace = true;
flags.with_bc7 = true;
flags.with_audio = platform == "linux" || platform == "windows";
flags.idle_sleep = true;
flags.export_version_info = true;
flags.export_data_list = platform == "android"; // .apk contents
if (platform == "wasm") {
flags.with_nfd = false;
flags.with_compress = false;
flags.with_plugins = false;
flags.with_raytrace = false;
flags.export_data_list = true;
}
let project = new Project(flags.name);
project.add_project("../base");
project.add_cfiles("sources/startup.c");
project.add_cfiles("sources/minic_api.c");
project.add_cfiles("sources/main.c");
project.add_shaders("shaders/*.shader");
project.add_assets("assets/*", {destination : "data/{name}"});
project.add_assets("assets/export_presets/*", {destination : "data/export_presets/{name}"});
project.add_assets("assets/keymap_presets/*", {destination : "data/keymap_presets/{name}"});
project.add_assets("assets/licenses/**", {destination : "data/licenses/{name}"});
project.add_assets("assets/plugins/*", {destination : "data/plugins/{name}"});
project.add_assets("assets/meshes/*", {destination : "data/meshes/{name}", noembed : true});
project.add_assets("assets/meshes/default/*", {destination : "data/meshes/{name}"}); // embed default mesh
project.add_assets("assets/locale/*", {destination : "data/locale/{name}"});
project.add_assets("assets/readme/readme.txt", {destination : "{name}"});
return project;