summaryrefslogtreecommitdiff
path: root/cli/spdxtool/generate.h
diff options
context:
space:
mode:
authorPierre Pronchery <khorben@FreeBSD.org>2026-06-26 17:34:10 +0000
committerPierre Pronchery <khorben@FreeBSD.org>2026-06-29 05:21:50 +0000
commit0cf7106da9f36671ef62142c27de98eee9d874d6 (patch)
tree48090361499358411adb1d0bb16ca768e7c226a1 /cli/spdxtool/generate.h
parentb0fc1b7a2fe8fcb18ee407227591bf25a86ffbaf (diff)
Vendor import of pkgconf 2.9.93vendor/pkgconf/2.9.93vendor/pkgconf
Obtained from https://github.com/pkgconf/pkgconf/archive/refs/tags/pkgconf-2.9.93.tar.gz SHA1: 6bcbedc97081e17ea58e0164adea2ab827acfe23 - SHA256: b9632d0d91321f56645de720fd8cd3584b0d0ca8ff13a3d9d5285888869fcc98 - SHA512: e014096f5486b7cdfa8c6410992b9143b63c7ef0ba540c7cad09923867c3924b951c1dfbd9a85f6d786b0deb30be1b7284f67317f4b261b6e0eca70b20ace1af - One test folder in tests/lib1 had to be removed to avoid UTF-8 filenames in the tree. (Breaks `make create-source-packages`) Reviewed by: markj Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D57890
Diffstat (limited to 'cli/spdxtool/generate.h')
-rw-r--r--cli/spdxtool/generate.h29
1 files changed, 29 insertions, 0 deletions
diff --git a/cli/spdxtool/generate.h b/cli/spdxtool/generate.h
new file mode 100644
index 000000000000..818b8e4d9192
--- /dev/null
+++ b/cli/spdxtool/generate.h
@@ -0,0 +1,29 @@
+/*
+ * SPDX-License-Identifier: BSD-2-Clause
+ *
+ *​ Copyright (c) 2025 The FreeBSD Foundation
+ *​
+ *​ Portions of this software were developed by
+ * Tuukka Pasanen <tuukka.pasanen@ilmi.fi> under sponsorship from
+ * the FreeBSD Foundation
+ */
+
+#ifndef SPDXTOOL_GENERATE_H
+#define SPDXTOOL_GENERATE_H
+
+#include <stdio.h>
+#include <libpkgconf/libpkgconf.h>
+
+/*
+ * Build an SPDX SBOM for a solved dependency graph and write it to *out*.
+ *
+ * The dependency graph rooted at *world* must already have been solved (e.g.
+ * with pkgconf_queue_solve) so that every package's match is populated. The
+ * spdxtool_util_set_* configuration (URI root, separator, version, license)
+ * must have been applied to *client* beforehand.
+ */
+bool spdxtool_generate(pkgconf_client_t *client, pkgconf_pkg_t *world, FILE *out,
+ int maxdepth, const char *creation_time, const char *creation_id,
+ const char *agent_name);
+
+#endif