#74
broken zycore_INCLUDE_DIR in zycore-config.cmake
on nixos (zycore.nix)
both PACKAGE_PREFIX_DIR and CMAKE_INSTALL_INCLUDEDIR are absolute paths
so the resulting zycore-config.cmake looks something like
get_filename_component(PACKAGE_PREFIX_DIR "${CMAKE_CURRENT_LIST_DIR}/../../../" ABSOLUTE)
# ...
set_and_check(zycore_INCLUDE_DIR "${PACKAGE_PREFIX_DIR}//nix/store/ny0cljlv9dnbf6m123mlcr0n2v1bp08q-zycore-c-1.5.0/include")
set_and_check(zycore_LIB_DIR "${PACKAGE_PREFIX_DIR}//nix/store/ny0cljlv9dnbf6m123mlcr0n2v1bp08q-zycore-c-1.5.0/lib")zycore_INCLUDE_DIR evals to something like
/nix/store/ny0cljlv9dnbf6m123mlcr0n2v1bp08q-zycore-c-1.5.0//nix/store/ny0cljlv9dnbf6m123mlcr0n2v1bp08q-zycore-c-1.5.0/include
example: zydis build fails with
CMake Error at /nix/store/ny0cljlv9dnbf6m123mlcr0n2v1bp08q-zycore-c-1.5.0/lib/cmake/zycore/zycore-config.cmake:13 (message):
File or directory
/nix/store/ny0cljlv9dnbf6m123mlcr0n2v1bp08q-zycore-c-1.5.0//nix/store/ny0cljlv9dnbf6m123mlcr0n2v1bp08q-zycore-c-1.5.0/include
referenced by variable zycore_INCLUDE_DIR does not exist !
Call Stack (most recent call first):
/nix/store/ny0cljlv9dnbf6m123mlcr0n2v1bp08q-zycore-c-1.5.0/lib/cmake/zycore/zycore-config.cmake:38 (set_and_check)
CMakeLists.txt:109 (find_package)
CMakeLists.txt:141 (locate_zycore)possible solutions:
remove ${PACKAGE_PREFIX_DIR}/
use cmake_path(APPEND ...) to join paths
Ah yeah -- I forgot to fix this in the last release. I maintain the nixpkgs package for it and worked around it there via:
https://github.com/NixOS/nixpkgs/blob/fa12935a32af71ab3a8b4ff60ab3c37490eea336/pkgs/development/libraries/zydis/default.nix#L27-L30
We should really fix this here, though.