Finish Linux x86_64 build
This commit is contained in:
59
src/lucina3ds/CMakeLists.txt
Normal file
59
src/lucina3ds/CMakeLists.txt
Normal file
@@ -0,0 +1,59 @@
|
||||
set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${PROJECT_SOURCE_DIR}/CMakeModules)
|
||||
|
||||
add_executable(lucina3ds
|
||||
lucina3ds.cpp
|
||||
lucina3ds.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(lucina3ds PRIVATE
|
||||
emu_window/emu_window_sdl2_sw.cpp
|
||||
emu_window/emu_window_sdl2_sw.h
|
||||
)
|
||||
endif()
|
||||
if (ENABLE_OPENGL)
|
||||
target_sources(lucina3ds PRIVATE
|
||||
emu_window/emu_window_sdl2_gl.cpp
|
||||
emu_window/emu_window_sdl2_gl.h
|
||||
)
|
||||
endif()
|
||||
if (ENABLE_VULKAN)
|
||||
target_sources(lucina3ds PRIVATE
|
||||
emu_window/emu_window_sdl2_vk.cpp
|
||||
emu_window/emu_window_sdl2_vk.h
|
||||
)
|
||||
endif()
|
||||
|
||||
create_target_directory_groups(lucina3ds)
|
||||
|
||||
target_link_libraries(lucina3ds PRIVATE lucina3ds_common lucina3ds_core input_common network)
|
||||
target_link_libraries(lucina3ds PRIVATE inih)
|
||||
if (MSVC)
|
||||
target_link_libraries(lucina3ds PRIVATE getopt)
|
||||
endif()
|
||||
target_link_libraries(lucina3ds PRIVATE ${PLATFORM_LIBRARIES} SDL2::SDL2 Threads::Threads)
|
||||
|
||||
if (ENABLE_OPENGL)
|
||||
target_link_libraries(lucina3ds PRIVATE glad)
|
||||
endif()
|
||||
|
||||
if(UNIX AND NOT APPLE)
|
||||
install(TARGETS lucina3ds RUNTIME DESTINATION "${CMAKE_INSTALL_PREFIX}/bin")
|
||||
endif()
|
||||
|
||||
if (LUCINA3DS_USE_PRECOMPILED_HEADERS)
|
||||
target_precompile_headers(lucina3ds 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(lucina3ds)
|
||||
endif()
|
||||
Reference in New Issue
Block a user