[DTrace-devel] [PATCH v2 6/9] build: add a pkg-config file for dtrace consumers: use it
Kris Van Hees
kris.van.hees at oracle.com
Fri Aug 2 05:30:41 UTC 2024
On Thu, Aug 01, 2024 at 02:21:53PM +0100, Nick Alcock wrote:
> This lets you relocate the include path anywhere you like: users of
> <dtrace.h> et al should invoke $(pkg-config --cflags dtrace) and
> $(pkg-config --libs dtrace) to get the dtrace consumer header directory and
> -ldtrace invocation for linking.
>
> Signed-off-by: Nick Alcock <nick.alcock at oracle.com>
Reviewed-by: Kris Van Hees <kris.van.hees at oracle.com>
> ---
> runtest.sh | 2 +-
> uts/Build | 10 ++++++----
> uts/dtrace.pc.in | 8 ++++++++
> 3 files changed, 15 insertions(+), 5 deletions(-)
> create mode 100644 uts/dtrace.pc.in
>
> diff --git a/runtest.sh b/runtest.sh
> index cc9703e12c16..817f4a90487d 100755
> --- a/runtest.sh
> +++ b/runtest.sh
> @@ -579,7 +579,7 @@ else
> dtrace="/usr/sbin/dtrace"
> test_libdir="installed"
> test_ldflags=""
> - test_cppflags="-DARCH_$arch $(pkg-config --cflags dtrace_sdt)"
> + test_cppflags="-DARCH_$arch $(pkg-config --cflags dtrace_sdt) $(pkg-config --cflags dtrace)"
>
> if [[ ! -x $dtrace ]]; then
> echo "$dtrace not available." >&2
> diff --git a/uts/Build b/uts/Build
> index feafa21369f2..7948e9f2d084 100644
> --- a/uts/Build
> +++ b/uts/Build
> @@ -22,7 +22,7 @@ PROBE_HEADERS_INSTALL := common/sys/sdt.h \
>
> # The pkg-config files undergo a few translations with sed before installation.
>
> -SHARE_PKG_CONFIG_INSTALL := dtrace_sdt.pc
> +SHARE_PKG_CONFIG_INSTALL := dtrace.pc dtrace_sdt.pc
>
> install::
> mkdir -p $(INSTINCLUDEDIR)/sys
> @@ -34,7 +34,9 @@ install::
> mkdir -p $(INSTPKGCONFIGDIR)
> $(call describe-install-target,$(INSTPKGCONFIGDIR),$(SHARE_PKG_CONFIG_INSTALL))
> for name in $(SHARE_PKG_CONFIG_INSTALL); do \
> - cd $(uts_DIR) && \
> - sed 's, at SDTINCLUDEDIR@,$(SDTINCLUDEDIR),g; s, at VERSION@,$(VERSION),g' < \
> - $${name}.in > $(INSTPKGCONFIGDIR)/$$name; \
> + (cd $(uts_DIR) && \
> + sed -e 's, at SDTINCLUDEDIR@,$(SDTINCLUDEDIR),g;' \
> + -e 's, at INCLUDEDIR@,$(INCLUDEDIR),g;' \
> + -e 's, at VERSION@,$(VERSION),g' < \
> + $${name}.in > $(INSTPKGCONFIGDIR)/$$name;) \
> done
> diff --git a/uts/dtrace.pc.in b/uts/dtrace.pc.in
> new file mode 100644
> index 000000000000..58aa46fc75c9
> --- /dev/null
> +++ b/uts/dtrace.pc.in
> @@ -0,0 +1,8 @@
> +includedir = @INCLUDEDIR@
> +libdir = @LIBDIR@
> +
> +Name: DTrace
> +Description: DTrace consumer headers
> +Version: @VERSION@
> +Cflags: -I${includedir}
> +Libs: -L${libdir} -ldtrace
> --
> 2.46.0.277.ge12b8151ed
More information about the DTrace-devel
mailing list