demos: use glGenerateMipmapEXT entrypoint in cubemap.c

glGenerateMipmap() is part of ARB_framebuffer_object, which many mesa
drivers don't advertise.  Add check for EXT_framebuffer_object.
diff --git a/progs/demos/cubemap.c b/progs/demos/cubemap.c
index b85a128..41f99d0 100644
--- a/progs/demos/cubemap.c
+++ b/progs/demos/cubemap.c
@@ -426,7 +426,7 @@
                    GL_BGRA, GL_UNSIGNED_BYTE, image);
    }
 
-   glGenerateMipmap(GL_TEXTURE_CUBE_MAP_ARB);
+   glGenerateMipmapEXT(GL_TEXTURE_CUBE_MAP_ARB);
 }
 
 
@@ -502,6 +502,13 @@
          printf("Sorry, this demo requires GL_ARB_texture_cube_map\n");
          exit(0);
       }
+
+      /* Needed for glGenerateMipmapEXT
+       */
+      if (!strstr(exten, "GL_EXT_framebuffer_object")) {
+         printf("Sorry, this demo requires GL_ARB_texture_cube_map\n");
+         exit(0);
+      }
    }
    printf("GL_RENDERER: %s\n", (char *) glGetString(GL_RENDERER));