aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorraysan5 <raysan5@gmail.com>2015-01-02 10:18:43 +0100
committerraysan5 <raysan5@gmail.com>2015-01-02 10:18:43 +0100
commit061ee04cb524d39d3b4f1bd64b43a65f38ddabef (patch)
tree71c1a6a128b6f10fde116d65bbb3216aa5f943e4
parent3c4a91658e8586ecb5504d3167796d043e79d065 (diff)
parent2706fa86cdb327c2dc4a67729eb263cb486eb18a (diff)
downloadraylib-061ee04cb524d39d3b4f1bd64b43a65f38ddabef.tar.gz
raylib-061ee04cb524d39d3b4f1bd64b43a65f38ddabef.zip
Integrated ratalaika pull-request
Added first version of OS X compilation support Some conflicts manually resolved...
-rw-r--r--examples/makefile25
-rwxr-xr-xexternal/glfw3/lib/libglfw.3.0.dylibbin0 -> 127856 bytes
l---------external/glfw3/lib/libglfw.3.dylib1
l---------external/glfw3/lib/libglfw.dylib1
-rw-r--r--src/makefile6
-rw-r--r--src/rlgl.c15
6 files changed, 40 insertions, 8 deletions
diff --git a/examples/makefile b/examples/makefile
index b9cdd15d..d2656888 100644
--- a/examples/makefile
+++ b/examples/makefile
@@ -66,6 +66,14 @@ else
LFLAGS = -L. -L../src
endif
+# define library paths containing required libs
+ifeq ($(PLATFORM),PLATFORM_DESKTOP_OSX)
+ LFLAGS = -L. -L../src -L../external/glfw3/lib/ -I../external/openal_soft/lib/
+else
+ LFLAGS = -L. -L../src
+endif
+
+
# define any libraries to link into executable
# if you want to link libraries (libname.so or libname.a), use the -lname
ifeq ($(PLATFORM),PLATFORM_RPI)
@@ -79,14 +87,21 @@ ifeq ($(PLATFORM),PLATFORM_DESKTOP_LINUX)
# libglfw3-dev libopenal-dev libglew-dev libegl1-mesa-dev
LIBS = -lraylib -lglfw -lGLEW -lGL -lopenal
else
+ifeq ($(PLATFORM),PLATFORM_DESKTOP_OSX)
+ # libraries for OS X 10.9 desktop compiling
+ # requires the following packages:
+ # libglfw3-dev libopenal-dev libglew-dev libegl1-mesa-dev
+ LIBS = -lraylib -lglfw -framework OpenGL -framework OpenAl -framework Cocoa
+else
+ifeq ($(PLATFORM),PLATFORM_WEB)
+ LIBS = ../src/libraylib.bc
+else
# libraries for Windows desktop compiling
# NOTE: GLFW3 and OpenAL Soft libraries should be installed
LIBS = -lraylib -lglfw3 -lglew32 -lopengl32 -lopenal32 -lgdi32
endif
endif
-
-ifeq ($(PLATFORM),PLATFORM_WEB)
- LIBS = ../src/libraylib.bc
+endif
endif
# define additional parameters and flags for windows
@@ -273,6 +288,9 @@ ifeq ($(PLATFORM),PLATFORM_DESKTOP_LINUX)
find . -type f -executable -delete
rm -f *.o
else
+ifeq ($(PLATFORM),PLATFORM_DESKTOP_OSX)
+ rm -f *.o
+else
ifeq ($(PLATFORM),PLATFORM_WEB)
del *.o *.html *.js
else
@@ -280,6 +298,7 @@ else
endif
endif
endif
+endif
@echo Cleaning done
# instead of defining every module one by one, we can define a pattern
diff --git a/external/glfw3/lib/libglfw.3.0.dylib b/external/glfw3/lib/libglfw.3.0.dylib
new file mode 100755
index 00000000..963d716d
--- /dev/null
+++ b/external/glfw3/lib/libglfw.3.0.dylib
Binary files differ
diff --git a/external/glfw3/lib/libglfw.3.dylib b/external/glfw3/lib/libglfw.3.dylib
new file mode 120000
index 00000000..cd20112e
--- /dev/null
+++ b/external/glfw3/lib/libglfw.3.dylib
@@ -0,0 +1 @@
+libglfw.3.0.dylib \ No newline at end of file
diff --git a/external/glfw3/lib/libglfw.dylib b/external/glfw3/lib/libglfw.dylib
new file mode 120000
index 00000000..d4bd51e1
--- /dev/null
+++ b/external/glfw3/lib/libglfw.dylib
@@ -0,0 +1 @@
+libglfw.3.dylib \ No newline at end of file
diff --git a/src/makefile b/src/makefile
index 501bd0c9..ed595f64 100644
--- a/src/makefile
+++ b/src/makefile
@@ -66,7 +66,7 @@ endif
ifeq ($(PLATFORM),PLATFORM_RPI)
INCLUDES = -I. -I/opt/vc/include -I/opt/vc/include/interface/vcos/pthreads
else
- INCLUDES = -I.
+ INCLUDES = -I. -I../external/glfw3/include/ -I../external/openal_soft/include/
endif
# define all object files required
@@ -134,6 +134,9 @@ ifeq ($(PLATFORM),PLATFORM_DESKTOP_LINUX)
find . -type f -executable -delete
rm -f *.o libraylib.a
else
+ifeq ($(PLATFORM),PLATFORM_DESKTOP_OSX)
+ rm -f *.o libraylib.a
+else
ifeq ($(PLATFORM),PLATFORM_WEB)
del *.o libraylib.bc
else
@@ -141,6 +144,7 @@ else
endif
endif
endif
+endif
@echo Cleaning done
# instead of defining every module one by one, we can define a pattern
diff --git a/src/rlgl.c b/src/rlgl.c
index 6f2027c7..417a23f8 100644
--- a/src/rlgl.c
+++ b/src/rlgl.c
@@ -32,14 +32,21 @@
#include <stdlib.h> // Declares malloc() and free() for memory management, rand()
#if defined(GRAPHICS_API_OPENGL_11)
- #include <GL/gl.h> // Basic OpenGL include
- //#include <OpenGL/gl.h> // Basic OpenGL include (OSX)
+ #ifdef __APPLE__ // OpenGL include for OSX
+ #include <OpenGL/gl.h>
+ #else
+ #include <GL/gl.h> // Basic OpenGL include
+ #endif
#endif
#if defined(GRAPHICS_API_OPENGL_33)
#define GLEW_STATIC
- #include <GL/glew.h> // Extensions loading lib
- //#include "glad.h" // TODO: Other extensions loading lib? --> REVIEW
+ #ifdef __APPLE__ // OpenGL include for OSX
+ #include <OpenGL/gl3.h>
+ #else
+ #include <GL/glew.h> // Extensions loading lib
+ //#include "glad.h" // TODO: Other extensions loading lib? --> REVIEW
+ #endif
#endif
#if defined(GRAPHICS_API_OPENGL_ES2)