Sanitize CMake source directory references

This commit is contained in:
luisangelsm
2026-03-30 15:56:27 +02:00
parent e6cbfa634b
commit 8cc9ffc355
9 changed files with 31 additions and 27 deletions

View File

@ -30,7 +30,7 @@ endif()
# Install paths
include(GNUInstallDirs)
list(PREPEND CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake")
list(PREPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake")
# Compiler options (MSVC flags)
include(cmake/CompilerOptions.cmake)

View File

@ -42,8 +42,8 @@ qt_add_executable(YACReader WIN32
themes/theme.h
themes/theme_factory.h
themes/theme_factory.cpp
${CMAKE_SOURCE_DIR}/common/themes/theme_manager.h
${CMAKE_SOURCE_DIR}/common/themes/theme_manager.cpp
${PROJECT_SOURCE_DIR}/common/themes/theme_manager.h
${PROJECT_SOURCE_DIR}/common/themes/theme_manager.cpp
)
target_include_directories(YACReader PRIVATE
@ -57,7 +57,7 @@ target_compile_definitions(YACReader PRIVATE YACREADER)
qt_add_resources(yacreader_images_rcc "${CMAKE_CURRENT_SOURCE_DIR}/yacreader_images.qrc")
qt_add_resources(yacreader_files_rcc "${CMAKE_CURRENT_SOURCE_DIR}/yacreader_files.qrc")
qt_add_resources(yacreader_themes_rcc "${CMAKE_CURRENT_SOURCE_DIR}/themes/themes.qrc")
qt_add_resources(yacreader_common_images_rcc "${CMAKE_SOURCE_DIR}/common/themes/appearance_config_images.qrc")
qt_add_resources(yacreader_common_images_rcc "${PROJECT_SOURCE_DIR}/common/themes/appearance_config_images.qrc")
target_sources(YACReader PRIVATE
${yacreader_images_rcc}
${yacreader_files_rcc}

View File

@ -176,8 +176,8 @@ qt_add_executable(YACReaderLibrary WIN32
themes/theme.h
themes/theme_factory.h
themes/theme_factory.cpp
${CMAKE_SOURCE_DIR}/common/themes/theme_manager.h
${CMAKE_SOURCE_DIR}/common/themes/theme_manager.cpp
${PROJECT_SOURCE_DIR}/common/themes/theme_manager.h
${PROJECT_SOURCE_DIR}/common/themes/theme_manager.cpp
)
# macOS-specific sources
@ -204,7 +204,7 @@ qt_add_resources(yacreaderlibrary_images_rcc "${CMAKE_CURRENT_SOURCE_DIR}/images
qt_add_resources(yacreaderlibrary_files_rcc "${CMAKE_CURRENT_SOURCE_DIR}/files.qrc")
qt_add_resources(yacreaderlibrary_qml_rcc "${CMAKE_CURRENT_SOURCE_DIR}/qml.qrc")
qt_add_resources(yacreaderlibrary_themes_rcc "${CMAKE_CURRENT_SOURCE_DIR}/themes/themes.qrc")
qt_add_resources(yacreaderlibrary_common_images_rcc "${CMAKE_SOURCE_DIR}/common/themes/appearance_config_images.qrc")
qt_add_resources(yacreaderlibrary_common_images_rcc "${PROJECT_SOURCE_DIR}/common/themes/appearance_config_images.qrc")
target_sources(YACReaderLibrary PRIVATE
${yacreaderlibrary_images_rcc}
${yacreaderlibrary_files_rcc}

View File

@ -56,8 +56,8 @@ target_include_directories(comic_vine PUBLIC
)
# App-specific theme.h needed for themable.h → theme_manager.h → theme.h chain
target_include_directories(comic_vine PRIVATE
${CMAKE_SOURCE_DIR}/YACReaderLibrary/themes
${CMAKE_SOURCE_DIR}/YACReaderLibrary/db
${PROJECT_SOURCE_DIR}/YACReaderLibrary/themes
${PROJECT_SOURCE_DIR}/YACReaderLibrary/db
)
target_link_libraries(comic_vine PUBLIC
Qt::Core

View File

@ -10,8 +10,8 @@ qt_add_executable(YACReaderLibraryServer
target_include_directories(YACReaderLibraryServer PRIVATE
${CMAKE_CURRENT_SOURCE_DIR}
${CMAKE_SOURCE_DIR}/YACReaderLibrary
${CMAKE_SOURCE_DIR}/YACReaderLibrary/db
${PROJECT_SOURCE_DIR}/YACReaderLibrary
${PROJECT_SOURCE_DIR}/YACReaderLibrary/db
)
target_compile_definitions(YACReaderLibraryServer PRIVATE

View File

@ -6,11 +6,13 @@ set(pdfium_TARGET "")
set(pdfium_INCLUDE_DIRS "")
set(pdfium_LIBRARIES "")
get_filename_component(_pdfium_bundled_root "${CMAKE_CURRENT_LIST_DIR}/../dependencies/pdfium" ABSOLUTE)
if(NOT TARGET pdfium::pdfium AND WIN32)
yacreader_get_windows_arch_subdir(_pdfium_arch)
set(_pdfium_include_dir "${CMAKE_SOURCE_DIR}/dependencies/pdfium/win/public")
set(_pdfium_implib "${CMAKE_SOURCE_DIR}/dependencies/pdfium/win/${_pdfium_arch}/pdfium.lib")
set(_pdfium_dll "${CMAKE_SOURCE_DIR}/dependencies/pdfium/win/${_pdfium_arch}/pdfium.dll")
set(_pdfium_include_dir "${_pdfium_bundled_root}/win/public")
set(_pdfium_implib "${_pdfium_bundled_root}/win/${_pdfium_arch}/pdfium.lib")
set(_pdfium_dll "${_pdfium_bundled_root}/win/${_pdfium_arch}/pdfium.dll")
if(EXISTS "${_pdfium_include_dir}/fpdfview.h" AND EXISTS "${_pdfium_implib}" AND EXISTS "${_pdfium_dll}")
yacreader_add_imported_library(pdfium::pdfium
TYPE SHARED
@ -23,8 +25,8 @@ if(NOT TARGET pdfium::pdfium AND WIN32)
endif()
if(NOT TARGET pdfium::pdfium AND APPLE)
set(_pdfium_include_dir "${CMAKE_SOURCE_DIR}/dependencies/pdfium/macx/include")
set(_pdfium_library "${CMAKE_SOURCE_DIR}/dependencies/pdfium/macx/bin/libpdfium.a")
set(_pdfium_include_dir "${_pdfium_bundled_root}/macx/include")
set(_pdfium_library "${_pdfium_bundled_root}/macx/bin/libpdfium.a")
if(EXISTS "${_pdfium_include_dir}/fpdfview.h" AND EXISTS "${_pdfium_library}")
yacreader_add_imported_library(pdfium::pdfium
TYPE STATIC

View File

@ -6,9 +6,11 @@ set(unarr_TARGET "")
set(unarr_INCLUDE_DIRS "")
set(unarr_LIBRARIES "")
get_filename_component(_unarr_bundled_root "${CMAKE_CURRENT_LIST_DIR}/../dependencies/unarr" ABSOLUTE)
if(NOT TARGET unarr::unarr AND APPLE)
set(_unarr_include_dir "${CMAKE_SOURCE_DIR}/dependencies/unarr/macx")
set(_unarr_library "${CMAKE_SOURCE_DIR}/dependencies/unarr/macx/libunarr.a")
set(_unarr_include_dir "${_unarr_bundled_root}/macx")
set(_unarr_library "${_unarr_bundled_root}/macx/libunarr.a")
if(EXISTS "${_unarr_include_dir}/unarr.h" AND EXISTS "${_unarr_library}")
yacreader_add_imported_library(unarr::unarr
TYPE STATIC
@ -22,9 +24,9 @@ endif()
if(NOT TARGET unarr::unarr AND WIN32)
yacreader_get_windows_arch_subdir(_unarr_arch)
set(_unarr_include_dir "${CMAKE_SOURCE_DIR}/dependencies/unarr/win")
set(_unarr_implib "${CMAKE_SOURCE_DIR}/dependencies/unarr/win/${_unarr_arch}/unarr.lib")
set(_unarr_dll "${CMAKE_SOURCE_DIR}/dependencies/unarr/win/${_unarr_arch}/unarr.dll")
set(_unarr_include_dir "${_unarr_bundled_root}/win")
set(_unarr_implib "${_unarr_bundled_root}/win/${_unarr_arch}/unarr.lib")
set(_unarr_dll "${_unarr_bundled_root}/win/${_unarr_arch}/unarr.dll")
if(EXISTS "${_unarr_include_dir}/unarr.h" AND EXISTS "${_unarr_implib}" AND EXISTS "${_unarr_dll}")
yacreader_add_imported_library(unarr::unarr
TYPE SHARED

View File

@ -40,7 +40,7 @@ add_library(custom_widgets_reader STATIC ${WIDGETS_COMMON_SOURCES})
target_include_directories(custom_widgets_reader PUBLIC ${CMAKE_CURRENT_SOURCE_DIR})
# App-specific theme.h needed because themable.h → theme_manager.h → theme.h
target_include_directories(custom_widgets_reader PRIVATE
${CMAKE_SOURCE_DIR}/YACReader/themes
${PROJECT_SOURCE_DIR}/YACReader/themes
)
target_compile_definitions(custom_widgets_reader PRIVATE YACREADER)
target_link_libraries(custom_widgets_reader PUBLIC
@ -85,9 +85,9 @@ add_library(custom_widgets_library STATIC
target_include_directories(custom_widgets_library PUBLIC ${CMAKE_CURRENT_SOURCE_DIR})
# App-specific theme.h + YACReaderLibrary headers needed by macosx_toolbar
target_include_directories(custom_widgets_library PRIVATE
${CMAKE_SOURCE_DIR}/YACReaderLibrary/themes
${CMAKE_SOURCE_DIR}/YACReaderLibrary
${CMAKE_SOURCE_DIR}/YACReaderLibrary/db
${PROJECT_SOURCE_DIR}/YACReaderLibrary/themes
${PROJECT_SOURCE_DIR}/YACReaderLibrary
${PROJECT_SOURCE_DIR}/YACReaderLibrary/db
)
target_compile_definitions(custom_widgets_library PRIVATE YACREADER_LIBRARY)
target_link_libraries(custom_widgets_library PUBLIC

View File

@ -19,7 +19,7 @@ add_library(shortcuts_reader STATIC ${SHORTCUTS_SOURCES})
target_include_directories(shortcuts_reader PUBLIC ${CMAKE_CURRENT_SOURCE_DIR})
# App-specific theme.h needed because themable.h → theme_manager.h → theme.h
target_include_directories(shortcuts_reader PRIVATE
${CMAKE_SOURCE_DIR}/YACReader/themes
${PROJECT_SOURCE_DIR}/YACReader/themes
)
target_compile_definitions(shortcuts_reader PRIVATE YACREADER)
target_link_libraries(shortcuts_reader PUBLIC Qt::Core Qt::Widgets yr_global common_gui)
@ -28,7 +28,7 @@ target_link_libraries(shortcuts_reader PUBLIC Qt::Core Qt::Widgets yr_global com
add_library(shortcuts_library STATIC ${SHORTCUTS_SOURCES})
target_include_directories(shortcuts_library PUBLIC ${CMAKE_CURRENT_SOURCE_DIR})
target_include_directories(shortcuts_library PRIVATE
${CMAKE_SOURCE_DIR}/YACReaderLibrary/themes
${PROJECT_SOURCE_DIR}/YACReaderLibrary/themes
)
target_compile_definitions(shortcuts_library PRIVATE YACREADER_LIBRARY)
target_link_libraries(shortcuts_library PUBLIC Qt::Core Qt::Widgets yr_global common_gui)