Skip to content

v0.4.0

Choose a tag to compare

@github-actions github-actions released this 06 Sep 01:32
· 21 commits to main since this release
5a38af7

Changed

  • One shared install prefix, replacing a per-platform directory
    (<prefix>/linux/debug, <prefix>/android, ...). Headers are
    byte-identical across targets and now install once to <prefix>/include;
    what distinguishes a build is the library file itself, which carries a
    platform+ABI tag from the new cmake/PlatformSuffix.cmake --
    libink_linux_x86_64.a, libink_linux_x86_64_debug.a,
    libink_android_arm64_v8a.a, libink_wasm32.a. Each build contributes its
    own ink-targets-<tag>.cmake alongside the shared ink-config.cmake, which
    resolves the caller's tag through the installed PlatformSuffix.cmake and
    includes the matching one -- so find_package(ink CONFIG) keeps working
    unchanged, a Debug consumer falls back to a Release-only install rather than
    failing outright (the two are ABI-compatible here), and a genuinely missing
    build fails with the list of tags that are installed rather than a bare
    "file not found". The version file is now ARCH_INDEPENDENT, since one file
    serves every platform and the default stamped the builder's word size into
    it -- a wasm32 install would otherwise be rejected by a 64-bit consumer.
    CMakePresets.json's android/wasm presets prepend the shared prefix to
    CMAKE_PREFIX_PATH ahead of their own toolchain-installed prefix, so a
    dependency resolved from the shared location doesn't shadow one the
    toolchain provides.