14 releases (7 breaking)
0.8.2 | Aug 27, 2024 |
---|---|
0.8.1 | Jan 21, 2024 |
0.7.1 | Dec 23, 2023 |
#897 in Development tools
1,578 downloads per month
Used in 2 crates
(via tidier)
3MB
58K
SLoC
tidy-sys
Rust bindings for the HTML Tidy library.
Documentation
Note About Vendored Dependencies
The source code for Tidy is vendored in this repository for ease of use, under the vendor/
directory.
Otherwise this is an unassociated project.
Also note that Tidy has its own license; this crate's license is for files excluding the vendor/
directory.
Requirements
This crate will build the Tidy library from source and generate bindings depending on the target platform. Some external tools are required:
- CMake (Tidy uses CMake as the build system)
- A C compiler (to compile Tidy)
- Clang (as bindgen needs it)
The Default Build Configuration
Tidy will be built with:
-DNDEBUG
, regardless of the rust profile (not setting it causes Tidy to debug-log to stderr uncontrollably)- CMake profile always set to
Release
as other values cause problems with Visual Studio generators - Optimization level matching the rust build's opt-level (overwritten with
CFLAGS
andTIDY_SYS_CFLAGS
)
Setting Build Options
This crate respects the standard environment variables used by C compilers and related tools, such as CC
, CFLAGS
, LD
etc.
In addition, you can set the TIDY_SYS_CFLAGS
environment variable; the values will be appended to CFLAGS
while building Tidy.
Crate Features
Currently there's only one feature, by default disabled:
localization
: Enable multi-language support in Tidy (sets theSUPPORT_LOCALIZATIONS
option toon
with CMake).
No runtime deps
~0–2.2MB
~45K SLoC