set(SRCDIR "${CMAKE_CURRENT_SOURCE_DIR}/Source")
set(DEPDIR "${CMAKE_CURRENT_SOURCE_DIR}/Dependencies")
-if(NOT CMAKE_BUILD_TYPE)\r
- set(CMAKE_BUILD_TYPE RelWithDebInfo CACHE STRING\r
- "Choose the type of build, options are: None Debug Release RelWithDebInfo MinSizeRel"\r
- FORCE)\r
+if(NOT CMAKE_BUILD_TYPE)
+ set(CMAKE_BUILD_TYPE RelWithDebInfo CACHE STRING
+ "Choose the type of build, options are: None Debug Release RelWithDebInfo MinSizeRel"
+ FORCE)
endif(NOT CMAKE_BUILD_TYPE)
if(NOT LUGARU_INSTALL_PREFIX)
if(WIN32)
- set(LUGARU_INSTALL_PREFIX C:\Lugaru CACHE PATH
+ set(LUGARU_INSTALL_PREFIX "C:/Lugaru" CACHE PATH
"LUGARU_INSTALL_PREFIX: Install path prefix, prepended onto install directories."
FORCE)
else(WIN32)
- set(LUGARU_INSTALL_PREFIX /usr/local/lugaru CACHE PATH
+ set(LUGARU_INSTALL_PREFIX "/usr/local/lugaru" CACHE PATH
"CMAKE_INSTALL_PREFIX: Install path prefix, prepended onto install directories."
FORCE)
endif(WIN32)
set(CMAKE_INSTALL_PREFIX "${LUGARU_INSTALL_PREFIX}" CACHE INTERNAL "Prefix prepended to install directories" FORCE)
-if(WIN32)
+if(MINGW)
set(OPENGL_gl_LIBRARY "-lopengl32" CACHE STRING "OpenGL library for Win32" FORCE)
set(OPENGL_glu_LIBRARY "-lglu32" CACHE STRING "GLU library for Win32" FORCE)
-endif(WIN32)
+endif(MINGW)
)
endif(UNIX)
+if(MSVC) # MSVC non-C99 support biting us hard
+ set(LUGARU_H
+ ${LUGARU_H}
+ ${DEPDIR}/msinttypes/stdint.h
+ ${DEPDIR}/msinttypes/inttypes.h
+ )
+endif(MSVC)
+
set(LUGARU_H
${SRCDIR}/Constants.h
${SRCDIR}/Frustum.h
${SRCDIR}/openal_wrapper.h
${SRCDIR}/gamegl.h
${SRCDIR}/glstubs.h
- ${SRCDIR}/md5.h
${SRCDIR}/mmgr.h
${SRCDIR}/nommgr.h
${SRCDIR}/pack_private.h
)
endif(CMAKE_CROSSCOMPILING)
if(NOT CMAKE_CROSSCOMPILING)
+ if(MSVC)
+ ADD_CUSTOM_COMMAND( OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/lugaru_resource.obj
+ COMMAND rc
+ -I${SRCDIR}/res
+ -fo${CMAKE_CURRENT_BINARY_DIR}/lugaru_resource.obj
+ ${SRCDIR}/res/Lugaru.rc
+ DEPENDS ${SRCDIR}/res/Lugaru.rc
+ )
+ endif(MSVC)
+ if(MINGW)
ADD_CUSTOM_COMMAND( OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/lugaru_resource.obj
COMMAND windres
-I${SRCDIR}/res
-i${SRCDIR}/res/Lugaru.rc
DEPENDS ${SRCDIR}/res/Lugaru.rc
)
+ endif(MINGW)
endif(NOT CMAKE_CROSSCOMPILING)
# !!! FIXME: get rid of this.
# force this include dir no matter what, so we get sane headers.
include_directories("${DEPDIR}/OpenGL")
-option (LUGARU_FORCE_INTERNAL_OPENAL "Force internal OpenAL, even if theer's a system version" False)
+option (LUGARU_FORCE_INTERNAL_OPENAL "Force internal libOpenAL, even if there's a system version" False)
if (NOT LUGARU_FORCE_INTERNAL_OPENAL)
find_package(OpenAL REQUIRED)
else(NOT LUGARU_FORCE_INTERNAL_OPENAL)
set(OPENAL_INCLUDE_DIR "${OPENALDIR}/include/AL")
set(OPENAL_LIBRARY "")
- if (WINDOWS)
+ if (WIN32)
set(LUGARU_HAS_INTERNAL_OPENAL True)
-# if (MSVC) # !!! FIXME: package MSVC .dll and .lib for Windows?
-# set(OPENAL_LIBRARY
-# ${OPENALDIR}/lib/win32/msvc/OpenAL32.lib
-# )
-# endif (MSVC)
+ if (MSVC80)
+ set(OPENAL_LIBRARY
+ ${OPENALDIR}/lib/win32/msvc2005/OpenAL32.lib
+ )
+ endif (MSVC80)
+ if (MSVC90)
+ set(OPENAL_LIBRARY
+ ${OPENALDIR}/lib/win32/msvc2008/OpenAL32.lib
+ )
+ endif (MSVC90)
if (MINGW)
set(OPENAL_LIBRARY
${OPENALDIR}/lib/win32/mingw/libOpenAL32.dll.a
)
endif (MINGW)
- endif(WINDOWS)
+ endif(WIN32)
if (NOT LUGARU_HAS_INTERNAL_OPENAL)
message(ERROR "We don't have a prebuilt OpenAL for this platform.")
)
endif (APPLE)
- if (WINDOWS)
+ if (WIN32)
set(LUGARU_HAS_INTERNAL_SDL True)
- if (MSVC)
+ if (MSVC80)
set(SDL_LIBRARY
- ${SDLDIR}/lib/win32/msvc/SDL.lib
- ${SDLDIR}/lib/win32/msvc/SDLmain.lib
+ ${SDLDIR}/lib/win32/msvc2005/SDLmain.lib
+ ${SDLDIR}/lib/win32/msvc2005/SDL.lib
)
- endif (MSVC)
+ endif (MSVC80)
+ if (MSVC90)
+ set(SDL_LIBRARY
+ ${SDLDIR}/lib/win32/msvc2008/SDLmain.lib
+ ${SDLDIR}/lib/win32/msvc2008/SDL.lib
+ )
+ endif (MSVC90)
if (MINGW)
set(SDL_LIBRARY
- ${SDLDIR}/lib/win32/mingw/libSDL.dll.a
+ "mingw32"
${SDLDIR}/lib/win32/mingw/libSDLmain.a
+ ${SDLDIR}/lib/win32/mingw/libSDL.dll.a
+ "-mwindows"
)
endif (MINGW)
- endif (WINDOWS)
+ endif (WIN32)
if (NOT LUGARU_HAS_INTERNAL_SDL)
message(ERROR "We don't have a prebuilt SDL for this platform.")
# Install target
if(WIN32)
- install(PROGRAMS ${CMAKE_CURRENT_BINARY_DIR}/Source/lugaru.exe DESTINATION ${CMAKE_INSTALL_PREFIX})
- if(MSVC)
- install(FILES ${SDLDIR}/lib/win32/msvc/SDL.dll DESTINATION ${CMAKE_INSTALL_PREFIX})
- #install(FILES ${OPENALDIR}/lib/win32/msvc/OpenAL32.dll DESTINATION ${CMAKE_INSTALL_PREFIX}) # FIXME: Add MSVC OpenAL library!
- endif(MSVC)
+ install(PROGRAMS ${CMAKE_CURRENT_BINARY_DIR}/lugaru.exe DESTINATION ${CMAKE_INSTALL_PREFIX})
+ if(MSVC80)
+ install(FILES ${SDLDIR}/lib/win32/msvc2005/SDL.dll DESTINATION ${CMAKE_INSTALL_PREFIX})
+ install(FILES ${OPENALDIR}/lib/win32/msvc2005/OpenAL32.dll DESTINATION ${CMAKE_INSTALL_PREFIX})
+ endif(MSVC80)
+ if(MSVC90)
+ install(FILES ${SDLDIR}/lib/win32/msvc2008/SDL.dll DESTINATION ${CMAKE_INSTALL_PREFIX})
+ install(FILES ${OPENALDIR}/lib/win32/msvc2008/OpenAL32.dll DESTINATION ${CMAKE_INSTALL_PREFIX})
+ endif(MSVC90)
if(MINGW)
install(FILES ${SDLDIR}/lib/win32/mingw/SDL.dll DESTINATION ${CMAKE_INSTALL_PREFIX})
install(FILES ${OPENALDIR}/lib/win32/mingw/OpenAL32.dll DESTINATION ${CMAKE_INSTALL_PREFIX})
endif(MINGW)
else(WIN32)
- install(PROGRAMS ${CMAKE_CURRENT_BINARY_DIR}/Source/lugaru DESTINATION ${CMAKE_INSTALL_PREFIX})
+ install(PROGRAMS ${CMAKE_CURRENT_BINARY_DIR}/lugaru DESTINATION ${CMAKE_INSTALL_PREFIX})
endif(WIN32)
install(DIRECTORY ${CMAKE_SOURCE_DIR}/Data DESTINATION ${CMAKE_INSTALL_PREFIX})