mirror of
https://github.com/minetest/irrlicht.git
synced 2024-12-25 18:20:30 +01:00
Restore Windows and OSX support
This commit is contained in:
parent
752401a450
commit
bfba19d67a
@ -18,6 +18,7 @@ else()
|
|||||||
set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib/Linux)
|
set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib/Linux)
|
||||||
endif()
|
endif()
|
||||||
set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_LIBRARY_OUTPUT_DIRECTORY})
|
set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_LIBRARY_OUTPUT_DIRECTORY})
|
||||||
|
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_LIBRARY_OUTPUT_DIRECTORY})
|
||||||
|
|
||||||
if(NOT CMAKE_BUILD_TYPE)
|
if(NOT CMAKE_BUILD_TYPE)
|
||||||
set(CMAKE_BUILD_TYPE Release CACHE STRING "Build type: Debug or Release" FORCE)
|
set(CMAKE_BUILD_TYPE Release CACHE STRING "Build type: Debug or Release" FORCE)
|
||||||
|
@ -5,6 +5,8 @@ if(CMAKE_BUILD_TYPE STREQUAL "Debug")
|
|||||||
endif()
|
endif()
|
||||||
set(CMAKE_POSITION_INDEPENDENT_CODE TRUE)
|
set(CMAKE_POSITION_INDEPENDENT_CODE TRUE)
|
||||||
|
|
||||||
|
# Compiler flags
|
||||||
|
|
||||||
if(CMAKE_CXX_COMPILER_ID MATCHES "^(GNU|Clang|AppleClang)$")
|
if(CMAKE_CXX_COMPILER_ID MATCHES "^(GNU|Clang|AppleClang)$")
|
||||||
set(CMAKE_CXX_FLAGS_RELEASE "-O3")
|
set(CMAKE_CXX_FLAGS_RELEASE "-O3")
|
||||||
set(CMAKE_C_FLAGS_RELEASE ${CMAKE_CXX_FLAGS_RELEASE})
|
set(CMAKE_C_FLAGS_RELEASE ${CMAKE_CXX_FLAGS_RELEASE})
|
||||||
@ -24,6 +26,8 @@ elseif(MSVC)
|
|||||||
set(CMAKE_EXE_LINKER_FLAGS_RELEASE "/SUBSYSTEM:WINDOWS /OPT:REF /LTCG")
|
set(CMAKE_EXE_LINKER_FLAGS_RELEASE "/SUBSYSTEM:WINDOWS /OPT:REF /LTCG")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
# Required libs
|
||||||
|
|
||||||
find_package(ZLIB REQUIRED)
|
find_package(ZLIB REQUIRED)
|
||||||
find_package(JPEG REQUIRED)
|
find_package(JPEG REQUIRED)
|
||||||
find_package(PNG REQUIRED)
|
find_package(PNG REQUIRED)
|
||||||
@ -57,11 +61,11 @@ endif()
|
|||||||
if(ANDROID)
|
if(ANDROID)
|
||||||
# TODO
|
# TODO
|
||||||
elseif(APPLE)
|
elseif(APPLE)
|
||||||
# TODO probably these:
|
find_library(COCOA_LIB Cocoa REQUIRED)
|
||||||
#find_library(COCOA_LIB Cocoa REQUIRED)
|
find_library(IOKIT_LIB IOKit REQUIRED)
|
||||||
#find_library(IOKIT_LIB IOKit REQUIRED)
|
link_libraries(${COCOA_LIB} ${IOKIT_LIB})
|
||||||
elseif(WIN32)
|
elseif(WIN32)
|
||||||
# -lgdi32 -lwinmm?
|
link_libraries(gdi32 winmm)
|
||||||
else()
|
else()
|
||||||
# Unix probably
|
# Unix probably
|
||||||
find_package(X11 REQUIRED)
|
find_package(X11 REQUIRED)
|
||||||
@ -316,6 +320,15 @@ add_library(IRROTHEROBJ OBJECT
|
|||||||
utf8.cpp
|
utf8.cpp
|
||||||
)
|
)
|
||||||
|
|
||||||
|
if(APPLE)
|
||||||
|
# Build all IRROTHEROBJ sources as objc++, including the .cpp's
|
||||||
|
set_target_properties(IRROTHEROBJ PROPERTIES COMPILE_OPTIONS "-xobjective-c++")
|
||||||
|
target_sources(IRROTHEROBJ PRIVATE
|
||||||
|
CIrrDeviceOSX.mm
|
||||||
|
CNSOGLManager.mm
|
||||||
|
)
|
||||||
|
endif()
|
||||||
|
|
||||||
add_library(IRRGUIOBJ OBJECT
|
add_library(IRRGUIOBJ OBJECT
|
||||||
CGUIButton.cpp
|
CGUIButton.cpp
|
||||||
CGUICheckBox.cpp
|
CGUICheckBox.cpp
|
||||||
@ -368,3 +381,8 @@ set_target_properties(Irrlicht PROPERTIES
|
|||||||
VERSION ${VERSION}
|
VERSION ${VERSION}
|
||||||
SOVERSION ${IRRLICHT_VERSION_MAJOR}.${IRRLICHT_VERSION_MINOR}
|
SOVERSION ${IRRLICHT_VERSION_MAJOR}.${IRRLICHT_VERSION_MINOR}
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
|
include(GNUInstallDirs)
|
||||||
|
install(TARGETS Irrlicht DESTINATION "${CMAKE_INSTALL_LIBDIR}")
|
||||||
|
install(DIRECTORY "${CMAKE_SOURCE_DIR}/include/" DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/irrlicht")
|
||||||
|
Loading…
Reference in New Issue
Block a user