df81fa11fc
This requires bumping up to a minimum of CMake 3.1. The benefit of using the imported target is that you can switch to the -pthread compiler flag on request, which may be necessary for some systems if available.
38 lines
1,007 B
CMake
38 lines
1,007 B
CMake
set(SRCS
|
|
emu_window/emu_window_sdl2.cpp
|
|
citra.cpp
|
|
config.cpp
|
|
citra.rc
|
|
)
|
|
set(HEADERS
|
|
emu_window/emu_window_sdl2.h
|
|
config.h
|
|
default_ini.h
|
|
resource.h
|
|
)
|
|
|
|
create_directory_groups(${SRCS} ${HEADERS})
|
|
|
|
include_directories(${SDL2_INCLUDE_DIR})
|
|
|
|
add_executable(citra ${SRCS} ${HEADERS})
|
|
target_link_libraries(citra core video_core audio_core common)
|
|
target_link_libraries(citra ${SDL2_LIBRARY} ${OPENGL_gl_LIBRARY} inih glad)
|
|
if (MSVC)
|
|
target_link_libraries(citra getopt)
|
|
endif()
|
|
target_link_libraries(citra ${PLATFORM_LIBRARIES} Threads::Threads)
|
|
|
|
if(${CMAKE_SYSTEM_NAME} MATCHES "Linux|FreeBSD|OpenBSD|NetBSD")
|
|
install(TARGETS citra RUNTIME DESTINATION "${CMAKE_INSTALL_PREFIX}/bin")
|
|
endif()
|
|
|
|
if (MSVC)
|
|
include(WindowsCopyFiles)
|
|
|
|
set(DLL_DEST "${CMAKE_BINARY_DIR}/bin/$<CONFIG>/")
|
|
|
|
windows_copy_files(citra ${SDL2_DLL_DIR} ${DLL_DEST} SDL2.dll)
|
|
|
|
unset(DLL_DEST)
|
|
endif()
|