diff --git a/.gitignore b/.gitignore index 610f050..a3e74de 100644 --- a/.gitignore +++ b/.gitignore @@ -5,8 +5,9 @@ *.4c *.bin *.rdbg -start.bat - +*.out *.c + backup* +start.bat __pycache__ \ No newline at end of file diff --git a/README.md b/README.md index 7f8023b..d35e6db 100644 --- a/README.md +++ b/README.md @@ -120,14 +120,14 @@ Dot :: (a: Vec3, b: Vec3): F32 ;; return a.x*b.x + a.y*b.y + a.z*b.z - [x] Conditional compilation, you can include files based on a pattern: - [x] "$os_multimedia.core" expands to "win32_multimedia.core" or "unix_multimedia.core" depending on the platform. -- [ ] Platforms +- [x] Platforms - [x] Conditional compilation - [x] Windows - - [ ] Unix - - [ ] Paths - - [ ] Reading files - - [ ] Listing files - - [ ] Virtual memory + - [x] Linux (Only tested on ubuntu) + - [x] Paths + - [x] Reading files + - [x] Listing files + - [x] Virtual memory - [ ] Language constructs - [x] Standard constructs like if, for loop etc. diff --git a/build_unix.sh b/build_unix.sh index a5dedc6..ad25681 100644 --- a/build_unix.sh +++ b/build_unix.sh @@ -1,3 +1,3 @@ #!/bin/bash -clang core_main.cpp -O0 -Wall -Wno-unused-function -fno-exceptions -fdiagnostics-absolute-paths -g -o core \ No newline at end of file +clang core_main.cpp -O0 -Wall -Wno-unused-function -fno-exceptions -fdiagnostics-absolute-paths -g -o core.out \ No newline at end of file diff --git a/core_compiler.cpp b/core_compiler.cpp index d67584f..af2bfc4 100644 --- a/core_compiler.cpp +++ b/core_compiler.cpp @@ -312,7 +312,7 @@ compile_file(String filename, U32 compile_flags = COMPILE_NULL){ #if OS_WINDOWS String compiler_call = string_fmt(scratch, "clang.exe program.c -Wall -Wno-unused-function -Wno-parentheses-equality -g -o a.exe -lgdi32 -luser32 -lwinmm"); #else - String compiler_call = string_fmt(scratch, "clang program.c -std=c99 -Wall -Wno-unused-function -g -o a.out"); + String compiler_call = string_fmt(scratch, "clang program.c -std=c99 -Wall -Wno-unused-function -Wno-parentheses-equality -g -o a.out"); // String compiler_call = string_fmt(scratch, "tcc program.c -Wall -g -o a.out"); #endif log_trace("%Q", compiler_call); diff --git a/core_main.cpp b/core_main.cpp index ebd5ba8..e8e02dd 100644 --- a/core_main.cpp +++ b/core_main.cpp @@ -5,7 +5,6 @@ Current: - [ ] Foreign import that would link library - [ ] String in Language.core - [ ] Way to import and force evaluate #import_lazy #import ? -- [ ] Unix port - [ ] Imports are leaking names ! Multimedia leaks windows stuff - [ ] Test and bulletproof any, slices