If CG isn't available, still compile and fallback on GLSL

This commit is contained in:
Ryan Houdek 2011-12-24 00:24:13 -06:00
parent 7c558df283
commit 9bc6b83fd0
4 changed files with 13 additions and 3 deletions

View File

@ -372,6 +372,12 @@ else()
check_lib(CG Cg Cg/cg.h)
check_lib(CGGL CgGL Cg/cgGL.h)
if(NOT CG_FOUND)
message("CG not found, Building without")
add_definitions(-DHAVE_CG=0)
else()
add_definitions(-DHAVE_CG=1)
endif()
endif()
if(NOT ${CMAKE_SYSTEM_NAME} MATCHES "Darwin")

View File

@ -23,7 +23,7 @@ if(wxWidgets_FOUND)
set(LIBS ${LIBS} ${wxWidgets_LIBRARIES})
endif(wxWidgets_FOUND)
if(APPLE OR WIN32 OR ${CMAKE_SYSTEM_NAME} MATCHES "Linux")
if(HAVE_CG AND (APPLE OR WIN32 OR ${CMAKE_SYSTEM_NAME} MATCHES "Linux"))
set(LIBS ${LIBS} Cg CgGL)
endif()

View File

@ -113,10 +113,9 @@ bool OpenGL_ReportFBOError(const char *function, const char *file, int line);
#define GL_REPORT_PROGRAM_ERROR() (void)0
#endif
#if defined __APPLE__ || defined __linux__ || defined _WIN32
#if HAVE_CG && (defined __APPLE__ || defined __linux__ || defined _WIN32)
#include <Cg/cg.h>
#include <Cg/cgGL.h>
#define HAVE_CG 1
extern CGcontext g_cgcontext;
extern CGprofile g_cgvProf, g_cgfProf;
#endif

View File

@ -435,6 +435,11 @@ Renderer::Renderer()
cgGLSetOptimalOptions(g_cgfProf);
}
}
#else
// If we don't have Nvidia CG, we HAVE to use GLSL
g_Config.bUseGLSL = true;
UpdateActiveConfig();
#endif // HAVE_CG
int nenvvertparams, nenvfragparams, naddrregisters[2];