-# force this include dir no matter what, so we get sane headers.
-set(OPENGL_INCLUDE_DIR "${DEPDIR}/OpenGL")
-
-find_package(OpenAL REQUIRED) # !!! FIXME: package a .dll for Windows?
-
-find_package(SDL)
-if (NOT SDL)
- set(LUGARU_MISSING_DEPS "${LUGARU_MISSING_DEPS} SDL")
- message(STATUS "SDL not found, using internal copy")
- set(SDLDIR "${DEPDIR}/SDL12")
- set(SDL_INCLUDE_DIR "${SDLDIR}/include")
- set(SDL_LIBRARY "")
- if (APPLE)
- set(LUGARU_HAS_INTERNAL_SDL True)
- set(SDL_LIBRARY
- ${SDLDIR}/lib/macosx/libSDL-1.2.0.dylib
- ${SDLDIR}/lib/macosx/libSDLmain-osx.a
- )
- endif (APPLE)
-
- if (WINDOWS)
- set(LUGARU_HAS_INTERNAL_SDL True)
- set(SDL_LIBRARY
- ${SDLDIR}/lib/win32/SDL.lib
- ${SDLDIR}/lib/win32/SDLmain.lib
- )
- endif (WINDOWS)
-
- if (NOT LUGARU_HAS_INTERNAL_SDL)
- message(ERROR "We don't have a prebuilt SDL for this platform.")
- endif (NOT LUGARU_HAS_INTERNAL_SDL)
-endif (NOT SDL)
-
-find_package(PNG)
-if (NOT PNG)
+# force this include dir no matter what on Windows, so we get sane headers.
+option (LUGARU_FORCE_INTERNAL_OPENGL "Force internal OpenGL headers, even if there's a system version" True)
+if (LUGARU_FORCE_INTERNAL_OPENGL)
+ include_directories("${DEPDIR}/OpenGL")
+endif (LUGARU_FORCE_INTERNAL_OPENGL)
+
+if(MSVC) # More Visual Studio annoyances
+ include_directories("${DEPDIR}/msinttypes")
+endif(MSVC)
+
+option (LUGARU_FORCE_INTERNAL_OPENAL "Force internal libOpenAL, even if there's a system version" False)
+if (NOT LUGARU_FORCE_INTERNAL_OPENAL)
+ # FIXME: We should remove bundled libs and allow building OpenAL from source, for all platforms
+ if (WIN32)
+ find_package(OpenAL)
+ else (WIN32)
+ find_package(OpenAL REQUIRED)
+ endif()
+else(NOT LUGARU_FORCE_INTERNAL_OPENAL)
+ set(OPENAL_FOUND False)
+endif (NOT LUGARU_FORCE_INTERNAL_OPENAL)
+
+if (NOT OPENAL_FOUND OR LUGARU_FORCE_INTERNAL_OPENAL)
+ message(STATUS "Using internal copy of OpenAL")
+ set(LUGARU_MISSING_DEPS "${LUGARU_MISSING_DEPS} OpenAL")
+ set(OPENALDIR "${DEPDIR}/OpenAL")
+ set(OPENAL_INCLUDE_DIR "${OPENALDIR}/include/AL")
+ set(OPENAL_LIBRARY "")
+
+ if (WIN32)
+ set(LUGARU_HAS_INTERNAL_OPENAL True)
+ if (MSVC)
+ set(OPENAL_LIBRARY
+ ${OPENALDIR}/lib/win32/msvc2008/OpenAL32.lib
+ )
+ endif (MSVC)
+ if (MINGW)
+ set(OPENAL_LIBRARY
+ ${OPENALDIR}/lib/win32/mingw/libOpenAL32.dll.a
+ )
+ endif (MINGW)
+ endif(WIN32)
+
+ if (NOT LUGARU_HAS_INTERNAL_OPENAL)
+ message(ERROR "We don't have a prebuilt OpenAL for this platform.")
+ endif (NOT LUGARU_HAS_INTERNAL_OPENAL)
+endif (NOT OPENAL_FOUND OR LUGARU_FORCE_INTERNAL_OPENAL)
+
+PKG_SEARCH_MODULE(SDL2 REQUIRED sdl2)
+
+option (LUGARU_FORCE_INTERNAL_PNG "Force internal libPNG, even if there's a system version" False)
+if (NOT LUGARU_FORCE_INTERNAL_PNG)
+ find_package(PNG)
+else(NOT LUGARU_FORCE_INTERNAL_PNG)
+ set(PNG_FOUND False)
+endif (NOT LUGARU_FORCE_INTERNAL_PNG)
+
+if (NOT PNG_FOUND)
+ message(STATUS "Using internal copy of libpng")