-#!/bin/bash
-# Copyright (C) 2021-2022 Harry Godden (hgn) - All Rights Reserved
-
-# Compiler Presets
-# ==============================================================================
-
-_linux_compiler="gcc -std=c99 -D_REENTRANT"
-_linux_linkgraphics="-lGL -lglfw3 -lX11 -lXxf86vm -lXrandr -lm -pthread -lXi -ldl"
-_linux_asan="-fsanitize=address"
-_linux_linksteam="-lsteam_api"
-_linux_folder="build.linux"
-_linux_server_folder="build.linux_server"
-
-_windows_compiler="i686-w64-mingw32-gcc"
-_windows_linkgraphics="-lglfw3dll -lopengl32 -lm -mwindows"
-_windows_asan=""
-_windows_linksteam="vg/dep/steam/steam_api.dll"
-_windows_folder="build.win32"
-
-_options_debugmode="-O0 -ggdb3 -fno-omit-frame-pointer"
-_options_release="-O3 -DVG_RELEASE"
-
-# Compiler lines
-# ==============================================================================
-
-_warnings="-Wall -Wno-unused-function -Wno-unused-variable"
-_include="-I. -I./vg/dep -I./vg/src"
-_library="-L. -L./vg/dep/glfw -L./vg/dep/steam"
-_epilogue="-Wl,-rpath=./"
-_ext=""
-
-# Compile scripts
-# ==============================================================================
-
-release(){
- _linux_options=$_options_release
- _windows_options=$_options_release
-}
-
-debug(){
- _linux_options="$_linux_asan $_options_debugmode"
- _windows_options="$_windows_asan $_options_debugmode"
-}
-debug
-
-compile_miniaudio(){
-
- temp_options=$_options
- _options="-O3"
-
- _link="-lm"
- _folder="."
- _src="-c vg/dep/dr_soft/miniaudio_impl.c"
- _dst="vg/dep/dr_soft/miniaudio_$1"
- _ext=".o"
- compile_x
-
- _options=$temp_options
-}
-
-game() {
- _compiler=$_linux_compiler
- _options=$_linux_options
-
- compile_miniaudio linux
-
- # Game tools
- _folder="$_linux_folder"
- _ext=""
- vg_compile_tools
-
- # Main build
- _link="$_linux_linkgraphics $_linux_linksteam"
- _src="main.c vg/dep/glad/glad.c vg/dep/dr_soft/miniaudio_linux.o"
- _dst="skaterift"
- compile_x
-}
-
-game_windows() {
- _compiler=$_windows_compiler
- _options=$_windows_options
-
- compile_miniaudio windows
-
- # Game tools
- _folder="$_windows_folder"
- _ext=".exe"
- vg_compile_tools
-
- # Main build
- _link="$_windows_linkgraphics $_windows_linksteam"
- _src="main.c vg/dep/glad/glad.c vg/dep/dr_soft/miniaudio_windows.o"
- _dst="skaterift"
- compile_x
-}
-
-server() {
- _compiler=$_linux_compiler
- _options=$_linux_options
- _link="-lm $_linux_linksteam"
- _folder="$_linux_server_folder"
- _src="server.c"
- _dst="skaterift_server"
- _ext=""
-
- compile_x
-}
-
-all() {
- tools
- game
- server
-}
-
-distribution(){
- release
- tools
- game
- game_windows
- server
-}
-
-source vg/vg_build.sh
+clang -fsanitize=address -O0 -I./vg build.c -o /tmp/tmpsr && /tmp/tmpsr $@