Lime3DS/src/lime/CMakeLists.txt

60 lines
1.4 KiB
CMake
Raw Normal View History

set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${PROJECT_SOURCE_DIR}/CMakeModules)
add_executable(lime
lime.cpp
lime.rc
config.cpp
config.h
default_ini.h
emu_window/emu_window_sdl2.cpp
emu_window/emu_window_sdl2.h
precompiled_headers.h
resource.h
)
if (ENABLE_SOFTWARE_RENDERER)
target_sources(lime PRIVATE
emu_window/emu_window_sdl2_sw.cpp
emu_window/emu_window_sdl2_sw.h
)
endif()
if (ENABLE_OPENGL)
target_sources(lime PRIVATE
emu_window/emu_window_sdl2_gl.cpp
emu_window/emu_window_sdl2_gl.h
)
endif()
if (ENABLE_VULKAN)
target_sources(lime PRIVATE
emu_window/emu_window_sdl2_vk.cpp
emu_window/emu_window_sdl2_vk.h
)
endif()
create_target_directory_groups(lime)
2013-09-26 17:34:48 -04:00
target_link_libraries(lime PRIVATE lime_common lime_core input_common network)
target_link_libraries(lime PRIVATE inih)
if (MSVC)
target_link_libraries(lime PRIVATE getopt)
endif()
target_link_libraries(lime PRIVATE ${PLATFORM_LIBRARIES} SDL2::SDL2 Threads::Threads)
2014-04-30 16:56:25 -07:00
if (ENABLE_OPENGL)
target_link_libraries(lime PRIVATE glad)
endif()
if(UNIX AND NOT APPLE)
install(TARGETS lime RUNTIME DESTINATION "${CMAKE_INSTALL_PREFIX}/bin")
endif()
if (CITRA_USE_PRECOMPILED_HEADERS)
target_precompile_headers(lime PRIVATE precompiled_headers.h)
endif()
# Bundle in-place on MSVC so dependencies can be resolved by builds.
if (MSVC)
include(BundleTarget)
bundle_target_in_place(lime)
endif()