clean stale tbb build artifacts before shipping libraries#255
Merged
Conversation
Long-lived working trees can carry TBB libraries in src/tbb/build/lib_release from prior builds -- including from the pre-6.0 make-based build system, whose Windows DLLs (tbb.dll, tbbmalloc.dll, tbbmalloc_proxy.dll) could be swept into the installed package and mask the tbb stub library. - clear lib_release before repopulating it in useBundledTbb(), so installs ship exactly what the current build produced - enable the (previously commented-out) removal of src/tbb/build in cleanup.R; since the cmake migration, the bundled TBB is rebuilt from scratch on every install, so these artifacts are not reused anyway
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Companion to #254. Long-lived working trees can carry TBB libraries in
src/tbb/build/lib_releasefrom prior builds -- including from the pre-6.0 make-based build system, whose Windows DLLs (tbb.dll,tbbmalloc.dll,tbbmalloc_proxy.dll) were confirmed being swept into installed packages, masking the tbb stub library. #254 makes the Windows dispatch immune; this adds the actual cleanup:useBundledTbb()clearslib_releasebefore repopulating it, so installs ship exactly what the current build produced (also prevents cross-version leftovers on Linux/macOS, e.g. an oldlibtbb.so.2alongside a newlibtbb.so.12, both matching the copy pattern).src/tbb/buildincleanup.R(runs on--preclean/--clean/R CMD build). Since the cmake migration, the bundled TBB rebuilds from scratch on every install (build-tbbis deleted after each build), so these artifacts were never reused and removing them costs nothing.Tarballs were already safe:
.Rbuildignoreexcludes^src/tbb/build$.