X-Git-Url: https://harrygodden.com/git/?a=blobdiff_plain;ds=sidebyside;f=build.c;h=eb3de6285879b9f7f6c3196dd3b32349447da76f;hb=304647a7672165dd35ffe54884ed9aedcc9bf363;hp=94869b4874606405bdc715fbb3078875c2baedd5;hpb=b440efbe5785d114d08bb3f5ec0e09cad943006d;p=carveJwlIkooP6JGAAIwe30JlM.git diff --git a/build.c b/build.c index 94869b4..eb3de62 100644 --- a/build.c +++ b/build.c @@ -144,7 +144,7 @@ void build_game_content( struct vg_project *proj ) vg_syscall( "mkdir -p bin/%s/cfg", proj->uid.buffer ); vg_syscall( "mkdir -p bin/%s/savedata", proj->uid.buffer ); vg_syscall( "mkdir -p bin/%s/tools", proj->uid.buffer ); - vg_syscall( "cp blender_export.py bin/%s/tools/", proj->uid.buffer ); + vg_syscall( "cp bin/skaterift_blender.zip bin/%s/tools/", proj->uid.buffer ); } void build_game_bin( struct vg_project *proj ) @@ -205,23 +205,37 @@ void compile_server( struct vg_project *proj ) vg_compile_project( proj ); } -void compile_tools( struct vg_env *env, struct vg_project *proj ) +void compile_tools( struct vg_project *proj ) { - struct vg_env backup = *env; - env->optimization = 3; /* force optimization always */ - env->debug_asan = 0; - - vg_project_new_target( proj, "tools/qoi", k_obj_type_shared ); - vg_add_source( proj, "qoi_lib.c " ); + vg_project_new_target( proj, "skaterift", k_obj_type_shared ); + vg_add_source( proj, "skaterift_lib.c " ); vg_compile_project( proj ); - - *env = backup; } /* * Scripts * -------------------------------------------------------------------------- */ +void s_compile_tools(void) +{ + vg_info( "running script: s_compile_tools(void)\n" ); + struct vg_env env = vg_release_env; + env.platform = k_platform_linux; + + struct vg_project windows_proj, linux_proj; + vg_project_init( &linux_proj, &env, "skaterift-tools" ); + compile_tools( &linux_proj ); + + env.platform = k_platform_windows; + vg_project_init( &windows_proj, &env, "skaterift-tools" ); + compile_tools( &windows_proj ); + + vg_syscall("cp %s skaterift_blender/", linux_proj.compiled_objects.buffer ); + vg_syscall("cp %s skaterift_blender/", windows_proj.compiled_objects.buffer); + vg_syscall( "zip -r bin/skaterift_blender.zip skaterift_blender/ " + "-x skaterift_blender/__pycache__/\\*"); +} + void s_release_all(void) { vg_info( "running script: s_release_all(void)\n" ); @@ -238,14 +252,12 @@ void s_release_all(void) env.platform = k_platform_windows; vg_project_init( &windows_proj, &env, "skaterift" ); build_game_bin( &windows_proj ); - compile_tools( &env, &windows_proj ); /* binaries for linux */ env = vg_release_env; env.platform = k_platform_linux; vg_project_init( &linux_proj, &env, "skaterift" ); build_game_bin( &linux_proj ); - compile_tools( &env, &linux_proj ); /* package them up for storage */ vg_tarball_project( &content_proj ); @@ -266,7 +278,6 @@ void s_testing_build(void) vg_project_init( &test_proj, &vg_test_env, "skaterift-test" ); build_game_bin( &test_proj ); - compile_tools( &vg_test_env, &test_proj ); build_game_content( &test_proj ); vg_add_blob( &test_proj, "steam_appid.txt", "" ); } @@ -293,6 +304,9 @@ int main( int argc, char *argv[] ) if( vg_long_opt( "testing-server" ) ) s_testing_server(); + if( vg_long_opt( "tools" ) ) + s_compile_tools(); + if( vg_opt('r') ) vg_test_env.optimization = 3; }