Skip to content

Commit

Permalink
fixing dll path probls
Browse files Browse the repository at this point in the history
  • Loading branch information
leissa committed Dec 21, 2023
1 parent e77426f commit 9f855d5
Show file tree
Hide file tree
Showing 3 changed files with 16 additions and 16 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/windows.yml
Original file line number Diff line number Diff line change
Expand Up @@ -68,5 +68,5 @@ jobs:
shell: cmd
run: |
call "C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Auxiliary\Build\vcvars64.bat"
set PATH=${{github.workspace}}/bin;%PATH%
set PATH=${{github.workspace}}/build/lib/thorin;${{github.workspace}}/bin;%PATH%
ctest --verbose -C ${{matrix.build-type}} --output-on-failure
2 changes: 2 additions & 0 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,8 @@ set(CMAKE_EXPORT_COMPILE_COMMANDS ON)
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/bin")
set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/lib")
set(CMAKE_LIBRARY_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/lib")
set(THORIN_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_LIBRARY_OUTPUT_DIRECTORY}/thorin)
set(ENV{PATH} "${THORIN_LIBRARY_OUTPUT_DIRECTORY};$ENV{PATH}")

option(BUILD_SHARED_LIBS "Build shared libraries." ON)
option(THORIN_BUILD_DOCS "If ON, Thorin will build the documentation (requires Doxygen)." OFF)
Expand Down
28 changes: 13 additions & 15 deletions cmake/Thorin.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -18,13 +18,12 @@ function(add_thorin_plugin)

list(TRANSFORM PARSED_INTERFACES PREPEND thorin_interface_ OUTPUT_VARIABLE INTERFACES)

set(INCLUDE_DIR_PLUG ${CMAKE_BINARY_DIR}/include/thorin/plug/${PLUGIN})
set(LIB_DIR_PLUG ${CMAKE_LIBRARY_OUTPUT_DIRECTORY}/thorin)

set(PLUGIN_THORIN ${CMAKE_CURRENT_LIST_DIR}/${PLUGIN}.thorin)
set(PLUGIN_MD ${CMAKE_BINARY_DIR}/docs/plug/${PLUGIN}.md)
set(PLUGIN_D ${CMAKE_BINARY_DIR}/deps/${PLUGIN}.d)
set(AUTOGEN_H ${INCLUDE_DIR_PLUG}/autogen.h)
set(PLUGIN_THORIN ${CMAKE_CURRENT_LIST_DIR}/${PLUGIN}.thorin)
set(OUT_PLUGIN_THORIN ${THORIN_LIBRARY_OUTPUT_DIRECTORY}/${PLUGIN}.thorin)
set(INCLUDE_DIR_PLUG ${CMAKE_BINARY_DIR}/include/thorin/plug/${PLUGIN})
set(PLUGIN_MD ${CMAKE_BINARY_DIR}/docs/plug/${PLUGIN}.md)
set(PLUGIN_D ${CMAKE_BINARY_DIR}/deps/${PLUGIN}.d)
set(AUTOGEN_H ${INCLUDE_DIR_PLUG}/autogen.h)

file(MAKE_DIRECTORY ${INCLUDE_DIR_PLUG})
file(MAKE_DIRECTORY ${CMAKE_BINARY_DIR}/deps)
Expand All @@ -43,17 +42,17 @@ function(add_thorin_plugin)
VERBATIM
)
add_custom_command(
OUTPUT ${LIB_DIR_PLUG}/${PLUGIN}.thorin
COMMAND ${CMAKE_COMMAND} -E copy_if_different ${PLUGIN_THORIN} ${LIB_DIR_PLUG}/${PLUGIN}.thorin
OUTPUT ${OUT_PLUGIN_THORIN}
COMMAND ${CMAKE_COMMAND} -E copy_if_different ${PLUGIN_THORIN} ${OUT_PLUGIN_THORIN}
DEPENDS ${PLUGIN_THORIN}
COMMENT "Copy '${PLUGIN_THORIN}' to '${LIB_DIR_PLUG}.${PLUGIN}.thorin'"
COMMENT "Copy '${PLUGIN_THORIN}' to '${OUT_PLUGIN_THORIN}'"
)
add_custom_target(thorin_internal_${PLUGIN}
DEPENDS
${AUTOGEN_H}
${PLUGIN_D}
${PLUGIN_MD}
${LIB_DIR_PLUG}/${PLUGIN}.thorin
${OUT_PLUGIN_THORIN}
)

list(APPEND THORIN_PLUGIN_LIST "${PLUGIN}")
Expand Down Expand Up @@ -109,10 +108,9 @@ function(add_thorin_plugin)
CXX_VISIBILITY_PRESET hidden
VISIBILITY_INLINES_HIDDEN 1
WINDOWS_EXPORT_ALL_SYMBOLS OFF
PREFIX "lib" # always use "lib" as prefix regardless of OS/compiler
LIBRARY_OUTPUT_DIRECTORY ${LIB_DIR_PLUG}
RUNTIME_OUTPUT_DIRECTORY ${LIB_DIR_PLUG} # place for a dll in a SHARED thorin plugin
#POSITION_INDEPENDENT_CODE ON
PREFIX "lib" # always use "lib" as prefix regardless of OS/compiler
LIBRARY_OUTPUT_DIRECTORY ${THORIN_LIBRARY_OUTPUT_DIRECTORY}
RUNTIME_OUTPUT_DIRECTORY ${THORIN_LIBRARY_OUTPUT_DIRECTORY} # place for a dll in a SHARED thorin plugin
)

#
Expand Down

0 comments on commit 9f855d5

Please sign in to comment.