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

Bump the vcpkg builtin-baseline and remove most custom ports. #4553

Merged
merged 19 commits into from Jan 25, 2024

Conversation

teo-tsirpanis
Copy link
Member

@teo-tsirpanis teo-tsirpanis commented Dec 5, 2023

SC-37848

This PR bumps the vcpkg builtin-baseline which causes all of our dependencies to be updated to the most recent versions available on vcpkg. This removes the need for our custom ports and most were removed. The README of the ports folder was also updated to highlight that custom ports should be temporary.

Apart from the remaining port overlays in the ports directory, the precise package versions we are using can be found in https://github.com/microsoft/vcpkg/blob/72010900b7cee36cea77aebb97695095c9358eaf/versions/baseline.json.


TYPE: BUILD
DESC: Update vcpkg version baseline to microsoft/vcpkg@7201090.

Copy link

@teo-tsirpanis teo-tsirpanis marked this pull request as draft December 5, 2023 15:31
Catch now fails when encountering them.
On Linux it found somewhere a liblzma header and so enabled support for it, but could not link to liblzma.
Now if the specific compression feature is not enabled, support will be explicitly disabled when configuring.
Because we don't use the `MAGIC_COMPRESS` flag anywhere, we don't have to enable these features.
@eric-hughes-tiledb
Copy link
Contributor

It would be useful to make progress along these lines. It is not necessary to make all that progress in a single PR.

From a cursory glance, it looks like it's failing on libmagic. Therefore, to make partial progress soon, take its update out of this PR and let's get it committed. If anything else is even slightly a problem, take it out as well.

@teo-tsirpanis
Copy link
Member Author

teo-tsirpanis commented Dec 18, 2023

Thanks for the feedback. I reverted the libmagic update for now and opened SC-38521 to track it.

@teo-tsirpanis
Copy link
Member Author

CI is green. Undrafting and marking as pending for 2.21, per discussions with @KiterLuc.

@KiterLuc KiterLuc merged commit 2085d8c into TileDB-Inc:dev Jan 25, 2024
63 checks passed
@teo-tsirpanis teo-tsirpanis deleted the vcpkg-remove-ports branch January 25, 2024 13:26
This was referenced Jan 26, 2024
KiterLuc pushed a commit that referenced this pull request Feb 5, 2024
This PR removes some unused code, specifically:

* A patch file that should have been removed in #4553.
* The `EncryptionKeyValidation` class that is unused since #1197.
* Setting CMake policies to NEW that are already set by
`cmake_minimum_required(VERSION 3.21)`

---
TYPE: NO_HISTORY
github-actions bot pushed a commit that referenced this pull request Feb 5, 2024
This PR removes some unused code, specifically:

* A patch file that should have been removed in #4553.
* The `EncryptionKeyValidation` class that is unused since #1197.
* Setting CMake policies to NEW that are already set by
`cmake_minimum_required(VERSION 3.21)`

---
TYPE: NO_HISTORY

(cherry picked from commit 49e8752)
KiterLuc pushed a commit that referenced this pull request Mar 12, 2024
[SC-38521](https://app.shortcut.com/tiledb-inc/story/38521/update-libmagic-and-use-the-upstream-vcpkg-port)

Split from #4553.

This PR updates libmagic to version 5.45 and switches to using a vcpkg
port closer to the upstream one, which we can easily consume with
find_package(unofficial-libmagic) since microsoft/vcpkg#35274.

One complication is that the upstream port builds libmagic with its
official autotools-based build system, which is significantly slower on
Windows (on Linux it builds pretty fast). I tried to upstream the
CMake-based port I had added in #4119, but the PR was rejected.

Apart from binary caching, there is unfortunately nothing we can do
about the build performance regression. We could maintain the
CMake-based port for our own use, but it will split what we build and
what a future user of TileDB from vcpkg will build, and that port is not
without its problems (it failed for example when I tried cross-compiling
to arm64-windows, because it tried to execute the arm64 file.exe on my
x64 machine).

---
TYPE: BUILD
DESC: Update libmagic to version 5.45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants