diff --git a/examples/makefile b/examples/makefile index b9cdd15d5..d2656888f 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) @@ -78,15 +86,22 @@ ifeq ($(PLATFORM),PLATFORM_DESKTOP_LINUX) # requires the following packages: # 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,12 +288,16 @@ 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 del *.o *.exe endif endif +endif endif @echo Cleaning done diff --git a/external/glfw3/lib/libglfw.3.0.dylib b/external/glfw3/lib/libglfw.3.0.dylib new file mode 100755 index 000000000..963d716d1 Binary files /dev/null and b/external/glfw3/lib/libglfw.3.0.dylib differ diff --git a/external/glfw3/lib/libglfw.3.dylib b/external/glfw3/lib/libglfw.3.dylib new file mode 120000 index 000000000..cd20112e3 --- /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 000000000..d4bd51e18 --- /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 501bd0c91..ed595f64f 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,12 +134,16 @@ 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 del *.o libraylib.a endif endif +endif endif @echo Cleaning done diff --git a/src/rlgl.c b/src/rlgl.c index 6f2027c77..417a23f88 100644 --- a/src/rlgl.c +++ b/src/rlgl.c @@ -32,14 +32,21 @@ #include // Declares malloc() and free() for memory management, rand() #if defined(GRAPHICS_API_OPENGL_11) - #include // Basic OpenGL include - //#include // Basic OpenGL include (OSX) + #ifdef __APPLE__ // OpenGL include for OSX + #include + #else + #include // Basic OpenGL include + #endif #endif #if defined(GRAPHICS_API_OPENGL_33) #define GLEW_STATIC - #include // Extensions loading lib - //#include "glad.h" // TODO: Other extensions loading lib? --> REVIEW + #ifdef __APPLE__ // OpenGL include for OSX + #include + #else + #include // Extensions loading lib + //#include "glad.h" // TODO: Other extensions loading lib? --> REVIEW + #endif #endif #if defined(GRAPHICS_API_OPENGL_ES2)