NOW. We can actually do something real

This commit is contained in:
Андреев Григорий 2025-09-24 16:37:53 +03:00
parent bbe9971035
commit c8ae4ab017
4 changed files with 16 additions and 12 deletions

View File

@ -27,16 +27,16 @@ add_compile_definitions(_POSIX_C_SOURCE=200112L)
add_compile_definitions(_GNU_SOURCE)
add_compile_options(-fno-trapping-math)
#add_executable(codegen_l1 src/l1/anne/codegen.c)
#target_compile_definitions(codegen_l1
# PRIVATE PROTOTYPE1_L1_CODEGEN_BOOTSTRAP_USE_CHICKEN_VECU8)
add_executable(codegen_l1 src/l1/anne/codegen.c)
target_compile_definitions(codegen_l1
PRIVATE PROTOTYPE1_L1_CODEGEN_BOOTSTRAP_USE_CHICKEN_VECU8)
#add_executable(0_test src/l1_4/tests/t0.c)
#add_executable(1_test src/l1_4/tests/t1.c)
#
add_executable(l1_4_t2 src/l1_4/tests/t2.c)
#add_executable(l1_4_t2 src/l1_4/tests/t2.c)
add_executable(codegen_l1_5 src/l1_5/anne/codegen.c)
#add_executable(codegen_l1_5 src/l1_5/anne/codegen.c)
#
#add_executable(0_render_test src/l2/tests/r0/r0.c gen/l_wl_protocols/xdg-shell-private.c
# src/l1/core/rb_tree_node.h)

View File

@ -26,7 +26,7 @@ int main() {
generate_liza_l1_headers();
generate_l1_headers_for_l1_5();
mkdir_nofail("l1/margaret");
generate_margaret_eve_for_vulkan_utils();
generate_margaret_eve_for_vulkan_utils(); /* margaret misc */
generate_margaret_png_pixel_masses_header();
finish_layer(cstr("l1"));
return 0;

View File

@ -54,17 +54,17 @@ void generate_margaret_png_pixel_masses_header() {
GeneratedHeader header = begin_header(cstr("l1/margaret/png_pixel_masses.h"));
VecU8_append_span(&header.result, cstr(
"#include \"../pixel_masses.h\""
"#include \"../ResultVoidOrVecU8\""
"#include \"../pixel_masses.h\"\n"
"#include \"../ResultVoidOrVecU8.h\"\n"
"#include <png.h>\n\n"));
VecU8_append_span(&header.result, cstr(
"void margaret_libpng_h_error_cb(png_structp pngshka, png_const_charp err) {\n"
"printf(\"[!] %s\\n\", err);\n"
SPACE "printf(\"[!] %s\\n\", err);\n"
"}\n\n"
"void margaret_libpng_h_warning_cb(png_structp pngshka, png_const_charp warning) {\n"
"printf(\"[.] %s\\n\", warning);\n"
"}"));
SPACE "printf(\"[.] %s\\n\", warning);\n"
"}\n\n"));
VecU8_append_vec(&header.result, generate_margaret_png_texture_data_methods(cstr("TextureDataR8G8B8A8"), 8, 4));

View File

@ -629,8 +629,12 @@ void generate_guarded_header_of_result_type_instantiation(
){
assert(layer.len > 1);
VecU8 filename = get_ResultType_inst_name(OkT, ErrT);
VecU8 path = VecU8_fmt("%s/%s%s%s", layer, bonus_ns, bonus_ns.len ? cstr("/") : cstr(""), VecU8_to_span(&filename));
VecU8 path = VecU8_fmt("%s/%s%s%s.h", layer, bonus_ns, bonus_ns.len ? cstr("/") : cstr(""), VecU8_to_span(&filename));
GeneratedHeader head = begin_header(VecU8_to_span(&path));
VecU8_append_span(&head.result, dependencies);
VecU8_append_span(&head.result, cstr("\n\n"));
VecU8_append_vec(&head.result, generate_result_template_inst(OkT, ErrT, ok_t_primitive, err_t_primitive));
finish_header(head);
VecU8_drop(path);
VecU8_drop(filename);
}