mirror of
https://github.com/PancakeTAS/lsfg-vk.git
synced 2025-10-30 07:01:10 +00:00
install cmake logic
This commit is contained in:
parent
b34f66e38d
commit
e03fcaf4b0
2 changed files with 29 additions and 6 deletions
|
|
@ -6,6 +6,10 @@ set(CMAKE_CXX_COMPILER clang++)
|
|||
set(CMAKE_CXX_STANDARD 20)
|
||||
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
||||
|
||||
set(CMAKE_SKIP_BUILD_RPATH FALSE)
|
||||
set(CMAKE_BUILD_WITH_INSTALL_RPATH TRUE)
|
||||
set(CMAKE_INSTALL_RPATH "$\{ORIGIN\}")
|
||||
|
||||
set(CMAKE_EXPORT_COMPILE_COMMANDS ON)
|
||||
|
||||
# main project
|
||||
|
|
@ -51,3 +55,10 @@ target_compile_options(lsfg-vk PRIVATE
|
|||
# required for dxvk (yeah don't worry about it)
|
||||
-Qunused-arguments -Wl,--unresolved-symbols=ignore-all
|
||||
)
|
||||
|
||||
install(FILES "${CMAKE_BINARY_DIR}/peparse/src/peparse_git/pe-parser-library/build/libpe-parse.so" DESTINATION lib)
|
||||
install(FILES "${CMAKE_BINARY_DIR}/dxvk/native/usr/lib/libdxvk_d3d11.so.0.20602" DESTINATION lib RENAME libdxvk_d3d11.so.0)
|
||||
install(FILES "${CMAKE_BINARY_DIR}/dxvk/native/usr/lib/libdxvk_dxgi.so.0.20602" DESTINATION lib RENAME libdxvk_dxgi.so.0)
|
||||
install(FILES "${CMAKE_BINARY_DIR}/dxvk/libdxvkinternals.so" DESTINATION lib)
|
||||
install(FILES "${CMAKE_BINARY_DIR}/liblsfg-vk.so" DESTINATION lib)
|
||||
install(FILES "${CMAKE_BINARY_DIR}/lsfg-vk-gen/liblsfg-vk-gen.so" DESTINATION lib)
|
||||
|
|
|
|||
|
|
@ -44,20 +44,32 @@ target_link_libraries(dxvk INTERFACE
|
|||
|
||||
# pe-parse subproject
|
||||
|
||||
include(FetchContent)
|
||||
FetchContent_Declare(peparse_git
|
||||
ExternalProject_Add(peparse_git
|
||||
PREFIX ${CMAKE_BINARY_DIR}/peparse
|
||||
GIT_REPOSITORY "https://github.com/trailofbits/pe-parse"
|
||||
GIT_TAG "v2.1.1"
|
||||
UPDATE_DISCONNECTED true
|
||||
USES_TERMINAL_CONFIGURE true
|
||||
USES_TERMINAL_BUILD true
|
||||
CONFIGURE_COMMAND
|
||||
cd ${CMAKE_BINARY_DIR}/peparse/src/peparse_git/pe-parser-library &&
|
||||
CC=clang CXX=clang++ CXXFLAGS=-Wno-deprecated-declarations
|
||||
cmake -B build -G Ninja
|
||||
-DCMAKE_BUILD_TYPE=Release
|
||||
-DBUILD_SHARED_LIBS=1
|
||||
BUILD_COMMAND
|
||||
cd ${CMAKE_BINARY_DIR}/peparse/src/peparse_git/pe-parser-library &&
|
||||
ninja -C build
|
||||
INSTALL_COMMAND ""
|
||||
)
|
||||
FetchContent_MakeAvailable(peparse_git)
|
||||
|
||||
add_library(peparse INTERFACE)
|
||||
add_dependencies(peparse peparse_git)
|
||||
|
||||
target_link_directories(peparse
|
||||
INTERFACE ${peparse_SOURCE_DIR}/pe-parser-library/include)
|
||||
INTERFACE ${CMAKE_BINARY_DIR}/peparse/src/peparse_git/pe-parser-library/build)
|
||||
target_include_directories(peparse SYSTEM
|
||||
INTERFACE ${peparse_BUILD_DIR})
|
||||
INTERFACE ${CMAKE_BINARY_DIR}/peparse/src/peparse_git/pe-parser-library/include)
|
||||
target_link_libraries(peparse
|
||||
INTERFACE pe-parse)
|
||||
|
||||
|
|
@ -104,5 +116,5 @@ target_compile_options(lsfg-vk-gen PRIVATE
|
|||
# required for peparse
|
||||
-Wno-unused-template
|
||||
# required for dxvk (yeah don't worry about it)
|
||||
-Qunused-arguments -Wl,--unresolved-symbols=ignore-all
|
||||
-Qunused-arguments -Wl,--unresolved-symbols=ignore-all1
|
||||
)
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue