Fix:Build:graphics_opengl cmake support
authormartin-s <martin-s@ffa7fe5e-494d-0410-b361-a75ebd5db220>
Sat, 3 Mar 2012 19:35:19 +0000 (19:35 +0000)
committermartin-s <martin-s@ffa7fe5e-494d-0410-b361-a75ebd5db220>
Sat, 3 Mar 2012 19:35:19 +0000 (19:35 +0000)
git-svn-id: https://navit.svn.sourceforge.net/svnroot/navit/trunk@4957 ffa7fe5e-494d-0410-b361-a75ebd5db220

navit/CMakeLists.txt
navit/config.h.cmake
navit/navit/graphics/opengl/graphics_opengl.c

index 83cad50..2a69b93 100755 (executable)
@@ -237,12 +237,16 @@ if(GTK2_FOUND)
    endif(FREETYPE_FOUND)
 endif(GTK2_FOUND)
 
-CHECK_LIBRARY_EXISTS(freeimage FreeImage_Load "" FREEIMAGE_FOUND)
-if (QUESOGLC_FOUND AND FREETYPE_FOUND)
-   if (OPENGL_FOUND AND OPENGL_GLU_FOUND AND OPENGL_GLUT_FOUND AND OPENGL_INCLUDE_DIR AND FREEIMAGE_FOUND)
+CHECK_LIBRARY_EXISTS(freeimage FreeImage_Load "" HAVE_FREEIMAGE)
+if (FREETYPE_FOUND)
+   if (OPENGL_FOUND AND OPENGL_GLU_FOUND AND GLUT_FOUND AND OPENGL_INCLUDE_DIR)
       message (STATUS "opengl found: ${OPENGL_gl_LIBRARY}")
       include_directories(${OPENGL_INCLUDE_DIR})
-      set_with_reason(graphics/opengl "Found OpenGL and Quesoglc" TRUE ${OPENGL_gl_LIBRARY};${OPENGL_glu_LIBRARY};${GLUT_glut_LIBRARY};freeimage)
+      set(GRAPHICS_OPENGL_LIBRARY ${OPENGL_gl_LIBRARY};${OPENGL_glu_LIBRARY};${GLUT_glut_LIBRARY})
+      if (HAVE_FREEIMAGE)
+         list(APPEND GRAPHICS_OPENGL_LIBRARY freeimage)
+      endif(HAVE_FREEIMAGE)
+      set_with_reason(graphics/opengl "Found OpenGL" TRUE ${GRAPHICS_OPENGL_LIBRARY})
    else()
       message (STATUS "opengl not found")
    endif()
index 18e28fa..58783ee 100644 (file)
@@ -79,3 +79,5 @@
 #cmakedefine HAVE_GETLINE 1
 
 #cmakedefine HAVE_ENDIAN_H 1
+
+#cmakedefine HAVE_FREEIMAGE 1
index 4da9860..8fbd1e9 100644 (file)
@@ -17,7 +17,6 @@
  * Boston, MA  02110-1301, USA.
  */
 
-#define USE_FREEIMAGE 1
 #define USE_OPENGLES 0
 #define USE_OPENGLES2 0
 #define USE_FLOAT 0
@@ -52,7 +51,7 @@
 #define PIXEL_FORMAT GL_BGRA
 #endif
 
-#if USE_FREEIMAGE
+#if HAVE_FREEIMAGE
 #include <FreeImage.h>
 #endif
 
@@ -100,10 +99,6 @@ extern EGLDisplay egldisplay;
 #endif
 #endif
 
-#ifdef HAVE_FREEGLUT || __FREEGLUT_EXT_H__
-#define USE_FREEGLUT 1
-#endif
-
 #define SCREEN_WIDTH 700
 #define SCREEN_HEIGHT 700
 
@@ -357,7 +352,7 @@ static struct graphics_image_priv *
 image_new(struct graphics_priv *gr, struct graphics_image_methods *meth,
          char *path, int *w, int *h, struct point *hot, int rotation)
 {
-#if USE_FREEIMAGE
+#if HAVE_FREEIMAGE
        FIBITMAP *image;
        RGBQUAD aPixel;
        unsigned char *data;
@@ -1592,7 +1587,7 @@ graphics_opengl_idle(void *data)
                opengl_init_ok = 1;
        } else {
                
-#if USE_FREEGLUT
+#ifdef FREEGLUT
                glutMainLoopEvent();
 #endif
                handle_mouse_queue();
@@ -1752,7 +1747,7 @@ graphics_opengl_new(struct navit *nav, struct graphics_methods *meth,
        glutMouseFunc(click_notify);
        glutKeyboardFunc(ProcessNormalKeys);
        glutSpecialFunc(ProcessSpecialKeys);
-#if USE_FREEGLUT
+#ifdef FREEGLUT
        glutCloseFunc(glut_close);
 #endif
        this->DLid = glGenLists(1);