Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Set up caching to speed up build and test. #231

Open
wants to merge 3 commits into
base: master
Choose a base branch
from

Conversation

thetorpedodog
Copy link
Contributor

@thetorpedodog thetorpedodog commented Jul 15, 2022

This change unifies the build scripts between Mac OS and Linux,
and caches build outputs. This means that future builds of the same
version don’t need to rerun the entire build process; they can use the
previously-built version.

We do a few things to accomplish this:

  • Move compilation/installation into the ~/tiledb-core/install
    directory. This allows us to cache it.
  • Set appropriate CGO_*FLAGS variables to point to that directory.
    This includes the rpath directive, which embeds the full path
    to the dynamic library in the binary, so it knows it needs to look in
    ~/tiledb-core/install/lib for libtiledb.so.
  • Matrixes things out to reduce repetition.

This also fixes the ASAN step, which was never actually compiling.

@thetorpedodog thetorpedodog force-pushed the build-cache branch 17 times, most recently from 49014e8 to e3aaaac Compare July 16, 2022 00:19
@thetorpedodog thetorpedodog marked this pull request as ready for review July 16, 2022 00:20
@thetorpedodog thetorpedodog changed the title Clean up and cache TileDB build. Set up caching to speed up build and test. Jul 16, 2022
This change unifies the build scripts between Mac OS and Linux,
and caches build outputs. This means that future builds of the same
version don’t need to rerun the entire build process; they can use the
previously-built version.

We do a few things to accomplish this:

- Move compilation/installation into the `~/tiledb-core/install`
  directory. This allows us to cache it.
- Set appropriate `CGO_*FLAGS` variables to point to that directory.
  This includes the `rpath` directive, which embeds the full path
  to the dynamic library in the binary, so it knows it needs to look in
  `~/tiledb-core/install/lib` for `libtiledb.so`.
- Matrixes things out to reduce repetition.

This also fixes the ASAN step, which was never actually compiling.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant