Skip to content

Commit 6b791bd

Browse files
committed
fix bugs
1 parent 584daef commit 6b791bd

2 files changed

Lines changed: 16 additions & 10 deletions

File tree

DLLDeployer.cmake

Lines changed: 15 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -16,33 +16,39 @@ function(DLLD_get_deploy_dll_exe out_deploy_dll out_objdump)
1616

1717
set(extract_destination "${PROJECT_BINARY_DIR}/3rdParty/SharedLibDeployer")
1818

19+
set(found_components 0)
20+
1921
message(STATUS "Searching for installed deploy-dll executable")
2022
find_program(exe_path
2123
NAMES "deploy-dll"
22-
HINTS ${extract_destination}/bin)
24+
HINTS ${extract_destination}/bin
25+
NO_CACHE)
2326
if(exe_path)
2427
message(STATUS "Found ${exe_path}")
2528
set(${out_deploy_dll} ${exe_path} PARENT_SCOPE)
29+
math(EXPR found_components "${found_components} + 1")
2630
endif ()
2731

2832
message(STATUS "Searching for objdump executable")
2933
find_program(objdump_path
3034
NAMES "objdump"
31-
HINTS ${extract_destination}/bin)
35+
HINTS ${extract_destination}/bin
36+
NO_CACHE)
3237
if(objdump_path)
3338
message(STATUS "Found ${objdump_path}")
3439
set(${out_objdump} ${objdump_path} PARENT_SCOPE)
40+
math(EXPR found_components "${found_components} + 1")
3541
endif ()
3642

37-
if(EXISTS ${out_objdump} AND EXISTS ${out_deploy_dll})
43+
if(${found_components} GREATER_EQUAL 2)
3844
return()
3945
endif ()
4046

41-
message(STATUS "Downloading and extracting SharedLibDeployer-compat-1.2.1-win64.7z")
42-
set(archive_loc "${PROJECT_BINARY_DIR}/SharedLibDeployer-compat-1.2.1-win64.7z")
43-
file(DOWNLOAD https://github.com/ToKiNoBug/SharedLibDeployer/releases/download/v1.2.1/SharedLibDeployer-compat-1.2.1-win64.7z
47+
message(STATUS "Downloading and extracting SharedLibDeployer-1.2.2-win64.7z")
48+
set(archive_loc "${PROJECT_BINARY_DIR}/SharedLibDeployer-1.2.2-win64.7z")
49+
file(DOWNLOAD https://github.com/ToKiNoBug/SharedLibDeployer/releases/download/v1.2.2/SharedLibDeployer-1.2.2-win64.7z
4450
${archive_loc}
45-
EXPECTED_HASH SHA512=75174650EDE1D3A75D1AD90A90A62612B53DEAE8BAB64D005253E974DDB1CCAAA113AE69563AB393963CDEE21C67A30C7AB97A6D1D5794D1A40422779100193F)
51+
EXPECTED_HASH SHA512=2EB112063210CBA6407218BDE1E1E2E04F78FBFABE5CEAAE242D21EE562ED6B71715E82662BDC39BE605CD09605188E63F6FE6C9C476A076F90EDBC77A8B7DE1)
4652

4753
file(ARCHIVE_EXTRACT INPUT ${archive_loc} DESTINATION ${extract_destination})
4854

@@ -51,14 +57,14 @@ function(DLLD_get_deploy_dll_exe out_deploy_dll out_objdump)
5157
message(FATAL_ERROR "${archive_loc} was extracted, but \"${extracted_deploy_dll_exe}\" was not found")
5258
endif ()
5359
DLLD_replace_backslash(extracted_deploy_dll_exe extracted_deploy_dll_exe)
54-
set(${out_deploy_dll} ${extracted_deploy_dll_exe})
60+
set(${out_deploy_dll} ${extracted_deploy_dll_exe} PARENT_SCOPE)
5561

5662
set(extracted_objdump_exe "${extract_destination}/bin/objdump.exe")
5763
if(NOT EXISTS ${extracted_objdump_exe})
5864
message(FATAL_ERROR "${archive_loc} was extracted, but \"${extracted_objdump_exe}\" was not found")
5965
endif ()
6066
DLLD_replace_backslash(extracted_objdump_exe extracted_objdump_exe)
61-
set(${out_objdump} ${extracted_objdump_exe})
67+
set(${out_objdump} ${extracted_objdump_exe} PARENT_SCOPE)
6268

6369

6470
# message(STATUS "Searching for cargo")

tests/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
cmake_minimum_required(VERSION 3.20)
2-
project(DLLDeployerWindowsTest LANGUAGES C CXX VERSION 1.2.1)
2+
project(DLLDeployerWindowsTest LANGUAGES C CXX VERSION 1.2.2)
33

44
add_executable(test test.cpp)
55

0 commit comments

Comments
 (0)