Update vendored s2 and abseil and update build system
Nobody has claimed this yet.
Assessment
- Difficulty
- 5/5
- Estimated time
- Over a week
- Newbie friendliness
- 25/100
- Issue type
- Refactor
- Clarity
- Mostly clear
- Activity status
- Stale
- Tech stack
- cmake, cpp
- Domain
- build-system
Research direction
Start by reviewing the current configure flow, tools/ and inst/ conventions, and the existing Windows winlibs setup. Compare how the vendored S2 and Abseil sources are currently built versus the proposed CMake approach. Done means the updated dependencies build reproducibly and configure installs their static libraries into inst/.
Written by the indexing model from the issue text.
Description
In the last few months there is a new s2 version which contains some exciting things like a spherical buffer (!!): https://github.com/google/s2geometry/releases/tag/v0.10.0.
With our current build system, it's hard to stay current with updates in Abseil and S2. Getting familiar with Arrow's build system has me appreciating how we might be able to do this with cmake. I think the general concept is to
- keep a copy of Abseil and s2geometry repo checkouts in tools/
- Have configure run cmake and install static libraries to inst/ kind of like winlibs does for Windows
We might still have to make a few modifications to the S2/Abseil sources but I think that compiling a dependency using cmake has different rules than files in the src/ directory.
(Not for this forthcoming release, but the one after!)
- Dominant language
- C++
- Stars
- 81
- Forks
- 19
- Avg merge
- 20h 25m
- Merged PRs (30d)
- 3
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from r-spatial/s2
-
Difficulty 3/5 1-2 days Newbie friendliness 52/100
-
Difficulty 3/5 1-2 days Newbie friendliness 48/100
-
Difficulty 5/5 Over a week Newbie friendliness 35/100
-
Difficulty 4/5 3-5 days Newbie friendliness 35/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 48/100
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 86/100
-
Sensor initialization takes very long when `--initial-sim-time` is set to current UNIX timestamp Open
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
gazebosim/gz-sensors#662 · 1 comment ·
-
enhancement
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
-
comp-datalake
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
ClickHouse/ClickHouse#121222 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
LadybirdBrowser/ladybird#12123 ·