Crates.io | jq-src |
lib.rs | jq-src |
version | 0.4.1 |
source | src |
created_at | 2019-01-13 20:35:13.135632 |
updated_at | 2019-06-23 03:06:32.120961 |
description | API for compiling and link libjq from source. |
homepage | https://github.com/onelson/jq-src |
repository | https://github.com/onelson/jq-src |
max_upload_size | |
id | 108371 |
size | 4,400,523 |
This rust crate provides an api to compile libjq
provided by the jq
1.6 release. Other versions of jq may work but haven't been tested.
The primary consumer of this crate is jq-sys which depends on this crate
when the bundled
feature is enabled.
Setting JQ_NO_STATIC
will build a shared lib instead of static (the default).
This is probably ill-advised since you'd then have to go out of your way to
ensure you retain the libjq
build results and install them on your system
so they can be found at runtime. Still, the variable is there if you feel the
need to set it.
As per the jq readme, the library is compiled using the built-in oniguruma library for regex support.
For this to succeed, you will have to have autotools (autoreconf
, make
,
etc) and a gcc toolchain in your PATH
.
Note that the jq sources are provided as git submodules. These will be fetched automatically when installing this crate from crates.io or using a git dependency, however if you want to hack on the crate locally, or list it as a path dependency, you'll have to fetch the submodules yourself, for example:
$ git submodule update --init --recursive
If building this crate fails because of missing files, it's likely the submodules were not initialized.
autotools
0.2, updating the usages to be compatible with the
new public api.autotools
0.1 (newer versions cause breakage in jq build).Artifacts::print_cargo_metadata()
, which was largely duplicate of
Artifacts::print_link_info()
(somehow I wrote this method twice).build.rs
- add wrapper API so jq-sys can do it
itself.Initial release.