mirror of
https://github.com/simdjson/simdjson
synced 2026-06-08 17:27:07 +00:00
e5a408386b
* build: add pkg-config support
The CMake build script now generates a simple pkg-config files that can
be easily used by non-CMake users.
The file is generated from a template file that gets filled in at
configure time.
As CMake doesn't have anything similar to Meson's pkg-config generator
the file is quite static, i.e. new simdjson public defines/dependencies
won't be picked up automatically.
This approach also suffers from one minor issue, mentioned in
[jtojnar/cmake-snips][]; in short, it doesn't work well when users
specify CMAKE_INSTALL_INCLUDEDIR and similar as absolute paths. It's not
a big deal, and it will easily fixable once you'll require CMake >=3.20.
Fixes #1763
[jtojnar/cmake-snips]: https://github.com/jtojnar/cmake-snips#concatenating-paths-when-building-pkg-config-files
* build: handle absolute paths in .pc generation
As mentioned in the previous commit message, correct concatenation of
paths is only available in CMake >=3.20, so handling absolute paths in
pkg-config file generation requires using jtojnar's JoinPaths module.
* ci: add debian job
This new jobs compiles simdjson on Debian Testing, a semi-rolling
release, so that new compilers are always tested.
This job also tests the pkg-config file introduced in commit
1096c3b299
12 lines
305 B
Plaintext
12 lines
305 B
Plaintext
prefix=@CMAKE_INSTALL_PREFIX@
|
|
includedir=@PKGCONFIG_INCLUDEDIR@
|
|
libdir=@PKGCONFIG_LIBDIR@
|
|
|
|
Name: @PROJECT_NAME@
|
|
Description: @PROJECT_DESCRIPTION@
|
|
URL: @PROJECT_HOMEPAGE_URL@
|
|
Version: @PROJECT_VERSION@
|
|
Cflags: -I${includedir} @PKGCONFIG_CFLAGS@
|
|
Libs: -L${libdir} -l@PROJECT_NAME@
|
|
@PKGCONFIG_LIBS_PRIVATE@
|