comment
[vg.git] / vg_build.h
index 53de6c3edacc3cc3ac8b3415b5223c5dfbe54540..54c74e2ec8c50c5eaa0d2ca28e8aa5f69bdbf1fa 100644 (file)
@@ -110,11 +110,26 @@ void vg_build_add_link_for_graphics(void)
    }
    else
    {
-      vg_build_link( "-lmingw32 -lSDL2main -lSDL2 -lopengl32 -mwindows " );
+      vg_build_link( "-lmingw32 -lSDL2main -lSDL2 -lopengl32 -mwindows \\\n" );
+      vg_build_link( "   -Wl,--dynamicbase -Wl,--nxcompat \\\n" );
+
+      /* + 26.05.23: Suddenly something is pulling in winpthread. 
+       *             cant work out whats doing it or why. */
+      vg_build_link( "   -Wl,-Bstatic,--whole-archive \\\n" );
+      vg_build_link( "      -lwinpthread \\\n" );
+      vg_build_link( "   -Wl,--no-whole-archive " );
    }
 
    vg_build_object( "vg/dep/glad/glad.c " );
-   vg_build_link( "-lm -pthread " );
+
+   vg_build_link( "-lm " );
+   if( vg_compiler.compiler == k_compiler_mingw ){
+      //vg_build_link( "-mthreads " );
+      //vg_build_link( "-static-libgcc " );
+   }
+   else{
+      vg_build_link( "-pthread " );
+   }
 }
 
 void vg_build_add_link_for_game(void)
@@ -186,7 +201,7 @@ void vg_build_mode_debug(void)
 
 void vg_build(void)
 {
-   char cmd[4096];
+   char cmd[8192];
    cmd[0] = '\0';
 
    /* Compiler */
@@ -214,11 +229,16 @@ void vg_build(void)
 
    /* Warnings */
    strcat( cmd, 
-      "   -Wall -ferror-limit=0\\\n"
+      "   -Wall\\\n"
       "     -Wno-unused-function -Wno-unused-variable\\\n"
       "     -Wno-unused-command-line-argument -Wno-unused-but-set-variable\\\n"
    );
 
+   if( vg_compiler.compiler == k_compiler_clang ){
+      strcat( cmd, 
+         "     -ferror-limit=5\\\n" );
+   }
+
    /* Include */
    strcat( cmd, "   " );
    strcat( cmd, vg_compiler.include );