Comments (7)
The libgit2-sys library specifies the links
manifest key which allows overrides, but the system library is almost never the right version so that's why the check isn't currently implemented.
from git2-rs.
I still think this is an issue, perhaps more accurately stated as:
libgit2-sys provides no way to use a system provided libgit2 via pkg-config
Notably, this means that pkg-config would need to be driven by an external program and it's output translated into something like the overrides for links (only to be converted later by cargo back into the original form). That seems rather awkward and unnecessary.
from git2-rs.
Right, this was explicitly removed in b5334b0 because the depended-upon version of libgit2 is rarely found in the wild, and future versions of libgit2 frequently break ABI compatibility, so it really does need to use a precise version for now until the ABI stabilizes.
from git2-rs.
I opened this because right now I am packaging a recent enough libgit2, and have to add this nasty patch to git2-rs to get it to be used: https://github.com/jmesmon/meta-rust/blob/master/recipes/cargo/files/git2-rs/0002-libgit2-sys-avoid-the-build-script-it-is-a-disaster.patch
I'd expect it might be a good idea to at least allow some type of override to get the expected pkg-config behavior so packagers can hack up packages a bit less.
from git2-rs.
Hm ok, how about something like if the LIBGIT2_SYS_USE_PKG_CONFIG
environment variable is set, then pkg-config
is queried first, but otherwise it's not used at all. Would that work?
from git2-rs.
That would be fine.
from git2-rs.
Ok! I've added this in alexcrichton@ed629d7
from git2-rs.
Related Issues (20)
- Find files added between two commits
- Issue linking with arm64 and musl (Alpine 3.18) HOT 1
- how can i see changes in merge request?
- Git2-rs on Android got error "the SSL certificate is invalid" HOT 1
- How to resolve `HEAD` on an empty repository? HOT 1
- License compatibility with libgit2 ? HOT 2
- Applying diff with renamed file to Index ignores delta callback and removes old file from index HOT 4
- Blobless / Treeless (partial) clones HOT 3
- `libgit2-sys` fails to build with vendored openssl because of misconfigured `cc` parallelism HOT 4
- support building USE_SSH=exec HOT 1
- self sign certificate
- Tree.walk() broken for subtrees with non-utf-8 names HOT 1
- using russh
- Signing a tag HOT 1
- Unclear documatation: branch_remote_name
- Build problems with installed libgit2 1.8.0 HOT 3
- The error caused by failed `push_negotiation` is strange: `"config value 'pack.windowMemory' was not found"` HOT 4
- git clone arguments HOT 1
- Segmentation fault when cloning invalid URL HOT 1
- path matching inconsistent error
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from git2-rs.