diff --git a/BBGE/FmodOpenALBridge.cpp b/BBGE/FmodOpenALBridge.cpp index 1e415da..0bbc8e1 100644 --- a/BBGE/FmodOpenALBridge.cpp +++ b/BBGE/FmodOpenALBridge.cpp @@ -51,6 +51,11 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. #undef min #undef max +// HACK: Fix this == NULL checks with GCC 6 and up +#if defined(__GNUC__) || defined (__clang__) +#pragma GCC optimize("no-delete-null-pointer-checks") +#endif + // HACK: global because OpenAL has only one listener anyway static FMOD_VECTOR s_listenerPos; diff --git a/BBGE/OpenGLStubs.h b/BBGE/OpenGLStubs.h index ad16368..cd17466 100644 --- a/BBGE/OpenGLStubs.h +++ b/BBGE/OpenGLStubs.h @@ -96,4 +96,4 @@ GL_FUNC(void,glGetTexImage,(GLenum target, GLint level, GLenum format, GLenum ty //GL_FUNC(void,glTexImage1D,(GLenum target, GLint level, GLint internalFormat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid *pixels),(target,level,internalFormat,width,border,format,type,pixels),) GL_FUNC(void,glTexImage2D,(GLenum target, GLint level, GLint internalFormat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels),(target,level,internalFormat,width,height,border,format,type,pixels),) //GL_FUNC(void,glTexImage3D,(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid *pixels),(target,level,internalformat,width,height,depth,border,format,type,pixels),) -GL_FUNC(void,glGetTexParameteriv,(GLenum target, GLenum pname, GLint *params),(target,pname,params),); +GL_FUNC(void,glGetTexParameteriv,(GLenum target, GLenum pname, GLint *params),(target,pname,params),) diff --git a/ExternalLibs/FTGL.cmake b/ExternalLibs/FTGL.cmake index ca339cc..71aca5d 100644 --- a/ExternalLibs/FTGL.cmake +++ b/ExternalLibs/FTGL.cmake @@ -5,6 +5,7 @@ if(AQUARIA_INTERNAL_FTGL) set(FTGL_INCLUDE_DIRS "${FTGLDIR}/include;${FREETYPE_INCLUDE_DIRS}" CACHE INTERNAL "") include(freetype2.cmake) # Nothing else uses freetype2 directly INCLUDE_DIRECTORIES(${FREETYPE_INCLUDE_DIRS}) + INCLUDE_DIRECTORIES(${EXTLIBDIR}) # For add_subdirectory(FTGL) else() find_package(FTGL REQUIRED) diff --git a/ExternalLibs/FTGL/include/FTGL.h b/ExternalLibs/FTGL/include/FTGL.h index 7e3bd06..1d8261a 100644 --- a/ExternalLibs/FTGL/include/FTGL.h +++ b/ExternalLibs/FTGL/include/FTGL.h @@ -18,10 +18,10 @@ typedef float FTGL_FLOAT; #define FT_RENDER_MODE_NORMAL ft_render_mode_normal #endif - + #ifdef WIN32 - // Under windows avoid including is overrated. + // Under windows avoid including is overrated. // Sure, it can be avoided and "name space pollution" can be // avoided, but why? It really doesn't make that much difference // these days. @@ -35,7 +35,7 @@ typedef float FTGL_FLOAT; #else - // Non windows platforms - don't require nonsense as seen above :-) + // Non windows platforms - don't require nonsense as seen above :-) #if 1 #include "GL/gl.h" //#include "GL/glu.h" @@ -47,12 +47,12 @@ typedef float FTGL_FLOAT; #else #include #include - #endif + #endif #endif #endif - // Required for compatibility with glext.h style function definitions of + // Required for compatibility with glext.h style function definitions of // OpenGL extensions, such as in src/osg/Point.cpp. #ifndef APIENTRY #define APIENTRY @@ -60,7 +60,7 @@ typedef float FTGL_FLOAT; #endif // Compiler-specific conditional compilation -#ifdef _MSC_VER // MS Visual C++ +#ifdef _MSC_VER // MS Visual C++ // Disable various warning. // 4786: template name too long @@ -71,21 +71,21 @@ typedef float FTGL_FLOAT; // The following definitions control how symbols are exported. // If the target is a static library ensure that FTGL_LIBRARY_STATIC // is defined. If building a dynamic library (ie DLL) ensure the - // FTGL_LIBRARY macro is defined, as it will mark symbols for - // export. If compiling a project to _use_ the _dynamic_ library - // version of the library, no definition is required. + // FTGL_LIBRARY macro is defined, as it will mark symbols for + // export. If compiling a project to _use_ the _dynamic_ library + // version of the library, no definition is required. #ifdef FTGL_LIBRARY_STATIC // static lib - no special export required # define FTGL_EXPORT #elif FTGL_LIBRARY // dynamic lib - must export/import symbols appropriately. # define FTGL_EXPORT __declspec(dllexport) #else # define FTGL_EXPORT __declspec(dllimport) - #endif + #endif #else // Compiler that is not MS Visual C++. // Ensure that the export symbol is defined (and blank) #define FTGL_EXPORT -#endif +#endif #endif // __FTGL__ diff --git a/ExternalLibs/lua-5.1.4/CMakeLists.txt b/ExternalLibs/lua-5.1.4/CMakeLists.txt index 33940a2..01d32c6 100644 --- a/ExternalLibs/lua-5.1.4/CMakeLists.txt +++ b/ExternalLibs/lua-5.1.4/CMakeLists.txt @@ -61,4 +61,19 @@ set(lua51_src # Use C++ exceptions instead of setjmp() & longjmp() set_source_files_properties(${lua51_src} PROPERTIES LANGUAGE CXX) +# Windows is detected automatically +if(LINUX) + ADD_DEFINITIONS(-DLUA_USE_LINUX) +elseif(APPLE) + ADD_DEFINITIONS(-DLUA_USE_MACOSX) +elseif(POSIX) + ADD_DEFINITIONS(-DLUA_USE_POSIX) +else() + # gcc/ld warns about tmpnam() so we might as well try to get rid of it + CHECK_FUNCTION_EXISTS(mkstemp HAVE_MKSTEMP) + IF(HAVE_MKSTEMP) + ADD_DEFINITIONS(-DLUA_USE_MKSTEMP) + ENDIF() +endif() + add_library(lua51 ${lua51_src}) diff --git a/ExternalLibs/oggvorbis.cmake b/ExternalLibs/oggvorbis.cmake index 38d84a2..619ad75 100644 --- a/ExternalLibs/oggvorbis.cmake +++ b/ExternalLibs/oggvorbis.cmake @@ -32,6 +32,7 @@ if(AQUARIA_INTERNAL_OGGVORBIS) ${LIBVORBISDIR}/lib/vorbisfile.c ${LIBVORBISDIR}/lib/window.c ) + target_link_libraries(libvorbis libogg) else() # CMake doesn't seem to have a module for libogg or libvorbis yet, so # we roll our own based on existing find_package modules.