mirror of
https://github.com/PancakeTAS/lsfg-vk.git
synced 2025-10-30 07:01:10 +00:00
get rid of cmake fetch
This commit is contained in:
parent
b5678a9ce5
commit
26ba56d9d0
10 changed files with 16 additions and 75 deletions
2
.github/workflows/build.yml
vendored
2
.github/workflows/build.yml
vendored
|
|
@ -22,6 +22,8 @@ jobs:
|
||||||
spirv-headers vulkan-headers vulkan-icd-loader
|
spirv-headers vulkan-headers vulkan-icd-loader
|
||||||
- name: Checkout repository
|
- name: Checkout repository
|
||||||
uses: actions/checkout@v4
|
uses: actions/checkout@v4
|
||||||
|
with:
|
||||||
|
submodules: true
|
||||||
- name: Configure with CMake and Ninja
|
- name: Configure with CMake and Ninja
|
||||||
run: |
|
run: |
|
||||||
cmake -B build -G Ninja \
|
cmake -B build -G Ninja \
|
||||||
|
|
|
||||||
6
.gitmodules
vendored
Normal file
6
.gitmodules
vendored
Normal file
|
|
@ -0,0 +1,6 @@
|
||||||
|
[submodule "dxbc"]
|
||||||
|
path = dxbc
|
||||||
|
url = https://github.com/PancakeTAS/dxbc.git
|
||||||
|
[submodule "pe-parse"]
|
||||||
|
path = pe-parse
|
||||||
|
url = https://github.com/trailofbits/pe-parse
|
||||||
|
|
@ -10,10 +10,12 @@ if(CMAKE_BUILD_TYPE STREQUAL "Release")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# subprojects
|
# subprojects
|
||||||
|
add_compile_options(-fPIC
|
||||||
|
-Wno-deprecated-declarations
|
||||||
|
-Wno-unused-template)
|
||||||
|
|
||||||
include(cmake/FetchDXBC.cmake)
|
add_subdirectory(dxbc)
|
||||||
include(cmake/FetchPeParse.cmake)
|
add_subdirectory(pe-parse/pe-parser-library)
|
||||||
|
|
||||||
add_subdirectory(lsfg-vk-common)
|
add_subdirectory(lsfg-vk-common)
|
||||||
add_subdirectory(lsfg-vk-v3.1)
|
add_subdirectory(lsfg-vk-v3.1)
|
||||||
add_subdirectory(lsfg-vk-v3.1p)
|
add_subdirectory(lsfg-vk-v3.1p)
|
||||||
|
|
@ -41,7 +43,7 @@ target_include_directories(lsfg-vk
|
||||||
PRIVATE include)
|
PRIVATE include)
|
||||||
target_link_libraries(lsfg-vk PRIVATE
|
target_link_libraries(lsfg-vk PRIVATE
|
||||||
lsfg-vk-common lsfg-vk-v3.1 lsfg-vk-v3.1p
|
lsfg-vk-common lsfg-vk-v3.1 lsfg-vk-v3.1p
|
||||||
peparse dxvk_dxbc vulkan)
|
pe-parse dxbc vulkan)
|
||||||
|
|
||||||
if(CMAKE_BUILD_TYPE STREQUAL "Release")
|
if(CMAKE_BUILD_TYPE STREQUAL "Release")
|
||||||
set_target_properties(lsfg-vk PROPERTIES
|
set_target_properties(lsfg-vk PROPERTIES
|
||||||
|
|
|
||||||
|
|
@ -1,33 +0,0 @@
|
||||||
include(ExternalProject)
|
|
||||||
|
|
||||||
ExternalProject_Add(dxbc_git
|
|
||||||
GIT_REPOSITORY "https://github.com/PancakeTAS/dxbc"
|
|
||||||
GIT_TAG "d77124f"
|
|
||||||
UPDATE_DISCONNECTED true
|
|
||||||
USES_TERMINAL_CONFIGURE true
|
|
||||||
USES_TERMINAL_BUILD true
|
|
||||||
BUILD_IN_SOURCE true
|
|
||||||
CONFIGURE_COMMAND
|
|
||||||
cmake -S . -B build -G Ninja
|
|
||||||
-DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE}
|
|
||||||
-DCMAKE_C_COMPILER=clang
|
|
||||||
-DCMAKE_CXX_COMPILER=clang++
|
|
||||||
-DCMAKE_C_FLAGS=-fPIC
|
|
||||||
-DCMAKE_CXX_FLAGS=-fPIC
|
|
||||||
BUILD_COMMAND
|
|
||||||
ninja -C build
|
|
||||||
INSTALL_COMMAND ""
|
|
||||||
)
|
|
||||||
|
|
||||||
ExternalProject_Get_Property(dxbc_git SOURCE_DIR)
|
|
||||||
|
|
||||||
add_library(dxvk_dxbc INTERFACE)
|
|
||||||
add_dependencies(dxvk_dxbc dxbc_git)
|
|
||||||
|
|
||||||
target_link_directories(dxvk_dxbc
|
|
||||||
INTERFACE ${SOURCE_DIR}/build)
|
|
||||||
target_include_directories(dxvk_dxbc SYSTEM
|
|
||||||
INTERFACE ${SOURCE_DIR}/include/dxbc
|
|
||||||
INTERFACE ${SOURCE_DIR}/include/spirv ${SOURCE_DIR}/include/util ${SOURCE_DIR}/include/dxvk)
|
|
||||||
target_link_libraries(dxvk_dxbc
|
|
||||||
INTERFACE dxbc)
|
|
||||||
|
|
@ -1,32 +0,0 @@
|
||||||
include(ExternalProject)
|
|
||||||
|
|
||||||
ExternalProject_Add(peparse_git
|
|
||||||
GIT_REPOSITORY "https://github.com/trailofbits/pe-parse"
|
|
||||||
GIT_TAG "v2.1.1"
|
|
||||||
UPDATE_DISCONNECTED true
|
|
||||||
USES_TERMINAL_CONFIGURE true
|
|
||||||
USES_TERMINAL_BUILD true
|
|
||||||
BUILD_IN_SOURCE true
|
|
||||||
CONFIGURE_COMMAND
|
|
||||||
cmake -S pe-parser-library -B build -G Ninja
|
|
||||||
-DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE}
|
|
||||||
-DCMAKE_C_COMPILER=clang
|
|
||||||
-DCMAKE_CXX_COMPILER=clang++
|
|
||||||
-DCMAKE_C_FLAGS=-fPIC
|
|
||||||
-DCMAKE_CXX_FLAGS=-fPIC
|
|
||||||
BUILD_COMMAND
|
|
||||||
ninja -C build
|
|
||||||
INSTALL_COMMAND ""
|
|
||||||
)
|
|
||||||
|
|
||||||
ExternalProject_Get_Property(peparse_git SOURCE_DIR)
|
|
||||||
|
|
||||||
add_library(peparse INTERFACE)
|
|
||||||
add_dependencies(peparse peparse_git)
|
|
||||||
|
|
||||||
target_link_directories(peparse
|
|
||||||
INTERFACE ${SOURCE_DIR}/build)
|
|
||||||
target_include_directories(peparse SYSTEM
|
|
||||||
INTERFACE ${SOURCE_DIR}/pe-parser-library/include)
|
|
||||||
target_link_libraries(peparse
|
|
||||||
INTERFACE pe-parse)
|
|
||||||
1
dxbc
Submodule
1
dxbc
Submodule
|
|
@ -0,0 +1 @@
|
||||||
|
Subproject commit 04ca5e9ae5fef6c0c65ea72bbaa7375327f11454
|
||||||
|
|
@ -21,8 +21,6 @@ target_include_directories(lsfg-vk-common
|
||||||
PUBLIC include)
|
PUBLIC include)
|
||||||
target_link_libraries(lsfg-vk-common
|
target_link_libraries(lsfg-vk-common
|
||||||
PRIVATE vulkan)
|
PRIVATE vulkan)
|
||||||
target_compile_options(lsfg-vk-common PRIVATE
|
|
||||||
-fPIC)
|
|
||||||
|
|
||||||
if(CMAKE_BUILD_TYPE STREQUAL "Release")
|
if(CMAKE_BUILD_TYPE STREQUAL "Release")
|
||||||
set_target_properties(lsfg-vk-common PROPERTIES
|
set_target_properties(lsfg-vk-common PROPERTIES
|
||||||
|
|
|
||||||
|
|
@ -24,8 +24,6 @@ target_include_directories(lsfg-vk-v3.1
|
||||||
PUBLIC public)
|
PUBLIC public)
|
||||||
target_link_libraries(lsfg-vk-v3.1
|
target_link_libraries(lsfg-vk-v3.1
|
||||||
PUBLIC lsfg-vk-common vulkan)
|
PUBLIC lsfg-vk-common vulkan)
|
||||||
target_compile_options(lsfg-vk-v3.1 PRIVATE
|
|
||||||
-fPIC)
|
|
||||||
|
|
||||||
if(CMAKE_BUILD_TYPE STREQUAL "Release")
|
if(CMAKE_BUILD_TYPE STREQUAL "Release")
|
||||||
set_target_properties(lsfg-vk-v3.1 PROPERTIES
|
set_target_properties(lsfg-vk-v3.1 PROPERTIES
|
||||||
|
|
|
||||||
|
|
@ -24,8 +24,6 @@ target_include_directories(lsfg-vk-v3.1p
|
||||||
PUBLIC public)
|
PUBLIC public)
|
||||||
target_link_libraries(lsfg-vk-v3.1p
|
target_link_libraries(lsfg-vk-v3.1p
|
||||||
PUBLIC lsfg-vk-common vulkan)
|
PUBLIC lsfg-vk-common vulkan)
|
||||||
target_compile_options(lsfg-vk-v3.1p PRIVATE
|
|
||||||
-fPIC)
|
|
||||||
|
|
||||||
if(CMAKE_BUILD_TYPE STREQUAL "Release")
|
if(CMAKE_BUILD_TYPE STREQUAL "Release")
|
||||||
set_target_properties(lsfg-vk-v3.1p PROPERTIES
|
set_target_properties(lsfg-vk-v3.1p PROPERTIES
|
||||||
|
|
|
||||||
1
pe-parse
Submodule
1
pe-parse
Submodule
|
|
@ -0,0 +1 @@
|
||||||
|
Subproject commit 7888f1f8de2f6bc302c291a5b4519fad926c0133
|
||||||
Loading…
Add table
Reference in a new issue