From 1c0403a2f7a9defa013849b6fe672d5cb648ab83 Mon Sep 17 00:00:00 2001 From: Constantine Tarasenkov Date: Fri, 24 Jul 2015 17:38:07 +0300 Subject: [PATCH] Fixes for Linux --- .gitignore | 3 +++ CMakeLists.txt | 6 ++++-- include/sb7.h | 3 +++ include/sb7ext.h | 2 +- src/dflandscape/dflandscape.cpp | 8 ++++---- src/sb7/sb7.cpp | 2 +- src/sdfdemo/sdfdemo.cpp | 8 ++++---- 7 files changed, 20 insertions(+), 12 deletions(-) create mode 100644 .gitignore diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..1bcf136 --- /dev/null +++ b/.gitignore @@ -0,0 +1,3 @@ +bin/ +build/ +*.txt.user diff --git a/CMakeLists.txt b/CMakeLists.txt index b425f0d..580758a 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -23,7 +23,9 @@ set (CMAKE_DEBUG_POSTFIX "_d") if(WIN32) set(COMMON_LIBS sb7 optimized glfw3 debug glfw3_d ${GLFW_LIBRARIES} ${OPENGL_LIBRARIES}) elseif (UNIX) -set(COMMON_LIBS sb7 glfw3 ${GLFW_LIBRARIES} rt dl) +find_package(PkgConfig REQUIRED) +pkg_check_modules(GLFW REQUIRED glfw3) +set(COMMON_LIBS sb7 glfw3 X11 Xrandr Xinerama Xi Xxf86vm Xcursor GL rt dl) else() set(COMMON_LIBS sb7) endif() @@ -144,7 +146,7 @@ foreach(EXAMPLE ${EXAMPLES}) endforeach(EXAMPLE) IF (${CMAKE_SYSTEM_NAME} MATCHES "Linux") - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -D_LINUX") + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -D_LINUX -std=c++0x") ENDIF (${CMAKE_SYSTEM_NAME} MATCHES "Linux") include_directories( include ) diff --git a/include/sb7.h b/include/sb7.h index 83c5309..6c97c9f 100644 --- a/include/sb7.h +++ b/include/sb7.h @@ -32,6 +32,9 @@ #define WIN32_LEAN_AND_MEAN 1 #include +#else + #include + #define Sleep(t) sleep(t) #endif #include "GL/gl3w.h" diff --git a/include/sb7ext.h b/include/sb7ext.h index ccb1e69..432155c 100644 --- a/include/sb7ext.h +++ b/include/sb7ext.h @@ -28,7 +28,7 @@ #include "GL/glext.h" -void * sb6GetProcAddress(const char * funcname); +GL3WglProc sb6GetProcAddress(const char * funcname); int sb6IsExtensionSupported(const char * extname); #endif /* __SB6EXT_H__ */ diff --git a/src/dflandscape/dflandscape.cpp b/src/dflandscape/dflandscape.cpp index aaad80a..080f63e 100644 --- a/src/dflandscape/dflandscape.cpp +++ b/src/dflandscape/dflandscape.cpp @@ -133,14 +133,14 @@ public: GLuint fs; }; GLuint shaders[2]; - }; + } shader; - vs = sb7::shader::load("media/shaders/dflandscape/dflandscape.vs.glsl", GL_VERTEX_SHADER); - fs = sb7::shader::load("media/shaders/dflandscape/dflandscape.fs.glsl", GL_FRAGMENT_SHADER); + shader.vs = sb7::shader::load("media/shaders/dflandscape/dflandscape.vs.glsl", GL_VERTEX_SHADER); + shader.fs = sb7::shader::load("media/shaders/dflandscape/dflandscape.fs.glsl", GL_FRAGMENT_SHADER); glDeleteProgram(sdf_program); - sdf_program = sb7::program::link_from_shaders(shaders, 2, true); + sdf_program = sb7::program::link_from_shaders(shader.shaders, 2, true); GLint foo = glGetUniformLocation(sdf_program, "uv_transform"); } diff --git a/src/sb7/sb7.cpp b/src/sb7/sb7.cpp index d0d1b82..12ce6f6 100644 --- a/src/sb7/sb7.cpp +++ b/src/sb7/sb7.cpp @@ -31,7 +31,7 @@ sb7::application * sb7::application::app = 0; #include -void * sb6GetProcAddress(const char * funcname) +GL3WglProc sb6GetProcAddress(const char * funcname) { return gl3wGetProcAddress(funcname); } diff --git a/src/sdfdemo/sdfdemo.cpp b/src/sdfdemo/sdfdemo.cpp index d530108..f174815 100644 --- a/src/sdfdemo/sdfdemo.cpp +++ b/src/sdfdemo/sdfdemo.cpp @@ -146,12 +146,12 @@ public: GLuint fs; }; GLuint shaders[2]; - }; + } shader; - vs = sb7::shader::load("media/shaders/sdfdemo/sdf.vs.glsl", GL_VERTEX_SHADER); - fs = sb7::shader::load("media/shaders/sdfdemo/sdf.fs.glsl", GL_FRAGMENT_SHADER); + shader.vs = sb7::shader::load("media/shaders/sdfdemo/sdf.vs.glsl", GL_VERTEX_SHADER); + shader.fs = sb7::shader::load("media/shaders/sdfdemo/sdf.fs.glsl", GL_FRAGMENT_SHADER); - sdf_program = sb7::program::link_from_shaders(shaders, 2, true); + sdf_program = sb7::program::link_from_shaders(shader.shaders, 2, true); GLint foo = glGetUniformLocation(sdf_program, "uv_transform"); }