void build_game_content( struct vg_project *proj )
{
- vg_project_new_target( proj, "Content files", k_obj_type_none );
vg_symlink( proj, "textures_qoi", "textures" );
vg_symlink( proj, "maps", "maps" );
vg_symlink( proj, "sound", "sound" );
- vg_syscall( "mkdir -p bin/%s/cfg", proj->uid.buffer );
- vg_syscall( "mkdir -p bin/%s/sav", proj->uid.buffer );
+ vg_syscall( "mkdir -p %s/cfg", proj->bin_folder.buffer );
+ vg_syscall( "mkdir -p %s/sav", proj->bin_folder.buffer );
}
void build_shaders(void);
-void build_game_bin( struct vg_project *proj )
+void build_game_bin( struct vg_project *proj,
+ struct vg_compiler_env *env )
{
static int meta = 0;
- if( !meta ){
+ if( !meta )
+ {
meta = 1;
build_shaders();
vg_low( "\n\n" );
}
- vg_project_new_target( proj, "fishladder", k_obj_type_exe );
- vg_add_engine( proj, &(struct vg_engine_config)
+ struct vg_compiler_conf conf = {0};
+ vg_str sources = {0};
+ vg_strcat( &sources, "marblecomp.c " );
+
+ vg_add_engine( proj,
+ &(struct vg_engine_config)
{
.fixed_update_hz = 60,
.legacy_support_vg_msg1 = 0,
.use_3d = 0,
.custom_game_settings = 1,
.custom_shaders = 1
- });
+ },
+ env, &conf, &sources );
- vg_add_source( proj, "marblecomp.c" );
- vg_compile_project( proj );
+ vg_compiler_run( proj, env, &conf, sources.buffer, "fishladder",
+ k_obj_type_exe );
}
/*
* Scripts
* -------------------------------------------------------------------------- */
-void s_release_all(void){
+#if 0
+void s_release_all(void)
+{
vg_info( "running script: s_release_all(void)\n" );
struct vg_project linux_proj, windows_proj;
vg_tarball_project( &linux_proj );
vg_tarball_project( &windows_proj );
}
+#endif
-void s_testing_build(void){
+void s_testing_build(void)
+{
vg_info( "running script: s_testing_build(void)\n" );
- struct vg_project test_proj;
- vg_project_init( &test_proj, &vg_test_env, "marblecomp-test" );
+ struct vg_project proj;
+ vg_project_init( &proj, "bin", "marblecomp-test", 0 );
- build_game_content( &test_proj );
- build_game_bin( &test_proj );
+ build_game_content( &proj );
+ build_game_bin( &proj, &vg_test_env );
}
+
int main( int argc, char *argv[] ){
char *arg;
- while( vg_argp( argc, argv ) ){
+ while( vg_argp( argc, argv ) )
+ {
+#if 0
if( vg_long_opt( "release-all" ) )
s_release_all();
+#endif
if( vg_long_opt( "testing-build" ) )
s_testing_build();
+ if( vg_long_opt( "android-build" ) ) return 0;
+
if( vg_opt('r') )
vg_test_env.optimization = 3;
}