rust-bitcoin / rust-bitcoinconsensus

Bitcoin's libbitcoinconsenus.a with Rust binding. Built from Bitcoin sources with cargo.
Apache License 2.0
46 stars 34 forks source link

Don't depend on libc? #57

Closed Kixunil closed 2 years ago

Kixunil commented 2 years ago

It seems this crate could use the same trick secp256k1-sys uses to avoid depending on libc and thus reduce compile times.

apoelstra commented 2 years ago

I'm definitely in support of this. I wish that libc would split out the "basic types" into its own crate... libc is actually way bigger than I realized. (A couple things made me notice this. One is their recent discussion about how they want an aggressive MSRV policy ... another is that I was looking at updating our Blockstream source from 0.2.72 to 0.2.73 ... 5000-line diff ... or even from 0.2.72 to current 0.2.127 ... 46500-line diff). Pretty crazy for a crate that we basically depend on just to get void pointers.

Kixunil commented 2 years ago

Some types are being moved to core, stabilization PR was just merged. Void is in core since 1.30. I think this is even better than a separate types crate.