build: improve the Linux aspect of things (#75)

Improved, fixed and streamlined cmake files. Optionally use system libraries instead of vcpkg (-DENABLE_VCPKG=OFF)
This commit is contained in:
Andrea Pappacoda 2022-08-29 07:19:48 +02:00 committed by GitHub
parent 0f24b0663e
commit f51a51df3b
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
18 changed files with 368 additions and 96 deletions

View file

@ -1,7 +1,5 @@
project(CemuCafe)
include_directories(".")
if((CMAKE_C_COMPILER_ID STREQUAL "GNU") OR (CMAKE_C_COMPILER_ID STREQUAL "Clang"))
add_compile_options(-mssse3 -mavx2)
endif()
@ -14,20 +12,39 @@ set_property(TARGET CemuCafe PROPERTY MSVC_RUNTIME_LIBRARY "MultiThreaded$<$<CON
target_precompile_headers(CemuCafe PRIVATE ../Common/precompiled.h)
target_include_directories(CemuCafe PRIVATE ../)
target_include_directories(CemuCafe PUBLIC "../")
#target_link_libraries(CemuCafe ZArchivexx)
#target_link_libraries(CemuCafe CemuCommon CemuCore CemuConfig CemuUtil CemuResource)
#target_link_libraries(CemuCafe OpenSSL::SSL)
#target_link_libraries(CemuCafe ZLIB::ZLIB)
#target_link_libraries(CemuCafe imgui::imgui)
#target_link_libraries(CemuCafe imguiImpl)
#target_link_libraries(CemuCafe pugixml pugixml::static pugixml::pugixml)
#target_link_libraries(CemuCafe libzip::zip)
target_link_libraries(CemuCafe glslang SPIRV)
target_link_libraries(CemuCafe ih264d zarchive)
#target_link_libraries(CemuCafe zstd::libzstd_static)
target_link_libraries(CemuCafe PRIVATE
CemuAsm
CemuAudio
CemuCommon
CemuComponents
CemuConfig
CemuGui
CemuInput
CemuResource
CemuUtil
imguiImpl
Boost::headers
Boost::nowide
CURL::libcurl
fmt::fmt
glslang::SPIRV
ih264d
imgui::imgui
OpenSSL::Crypto
OpenSSL::SSL
PNG::PNG
pugixml::pugixml
ZArchive::zarchive
ZLIB::ZLIB
zstd::zstd
)
IF(WIN32)
target_link_libraries(CemuCafe iphlpapi)
ENDIF()
if (ENABLE_WXWIDGETS)
target_link_libraries(CemuCafe PRIVATE wx::base wx::core)
endif()
if(WIN32)
target_link_libraries(CemuCafe PRIVATE iphlpapi)
endif()