From 887dfbe5c4b2f0563722df3836c5c57dd52cd272 Mon Sep 17 00:00:00 2001 From: onezplpl Date: Sun, 14 Jul 2024 19:27:52 -0400 Subject: [PATCH] windows cross-compliation --- .gitignore | 6 +++++- Makefile | 7 +++++-- README.md | 2 +- main.c | 4 +++- 4 files changed, 14 insertions(+), 5 deletions(-) diff --git a/.gitignore b/.gitignore index d14a2ee..444cb0c 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,6 @@ /monke -/db/* \ No newline at end of file +/monke.exe +/db/* +/*.dll +/*.a +/*.o \ No newline at end of file diff --git a/Makefile b/Makefile index 2ea33ae..5d36b3f 100644 --- a/Makefile +++ b/Makefile @@ -1,3 +1,6 @@ -CC=gcc make: - $(CC) -lm -lglfw -o ./monke *.c \ No newline at end of file + gcc -lm -lglfw -o ./monke *.c +windows: + x86_64-w64-mingw32-gcc -lm -o ./monke.exe ./*.c ./libglfw3.a ./libwinpthread.a ./libopengl32.a ./libgdi32.a +clean: + rm ./*.o ./*.exe ./monke \ No newline at end of file diff --git a/README.md b/README.md index af26d69..b3076c2 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ # VoxelTest -Another voxel engine. Only works on Linux for now because of ``#include `` +Another voxel engine. Designed for Linux, can compile on Windows from Linux or on Windows Run the Makefile, create a directory "db", and run the "monke" executable \ No newline at end of file diff --git a/main.c b/main.c index f85df7c..2b31dca 100644 --- a/main.c +++ b/main.c @@ -93,6 +93,8 @@ void *render_chunks(void *args) { return NULL; } +#define WinMain main + int main(void) { if (!glfwInit()) exit(EXIT_FAILURE); @@ -259,7 +261,7 @@ int main(void) { glBufferSubData(GL_ARRAY_BUFFER, 0, (long)cube_count * sizeof(Vertex), cube); if (thread_id != 0) - pthread_join(thread_id,NULL); + pthread_join(thread_id, NULL); thread_id = 0; }