cargo-c: New host package
authorLuca Barbato <lu_zero@gentoo.org>
Mon, 27 May 2024 10:36:22 +0000 (10:36 +0000)
committerTianling Shen <cnsztl@gmail.com>
Sat, 1 Jun 2024 07:49:47 +0000 (15:49 +0800)
It is useful to build crates as C libraries.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
devel/cargo-c/Makefile [new file with mode: 0644]

diff --git a/devel/cargo-c/Makefile b/devel/cargo-c/Makefile
new file mode 100644 (file)
index 0000000..85f1ee1
--- /dev/null
@@ -0,0 +1,44 @@
+# SPDX-License-Identifier: GPL-2.0-only
+#
+# Copyright (C) 2024 Luca Barbato
+
+include $(TOPDIR)/rules.mk
+
+PKG_NAME:=cargo-c
+PKG_VERSION:=0.9.32
+PKG_RELEASE:=1
+
+PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
+PKG_SOURCE_URL:=https://codeload.github.com/lu-zero/cargo-c/tar.gz/v$(PKG_VERSION)?
+PKG_HASH:=a96f3cc6c63d9901c9583083338d50b0132504bb067f68accc17f4116ed01f72
+
+PKG_MAINTAINER:=Luca Barbato <lu_zero@luminem.org>
+PKG_LICENSE:=MIT
+PKG_LICENSE_FILES:=LICENSE
+
+HOST_BUILD_DEPENDS:=rust/host
+HOST_BUILD_PARALLEL:=1
+PKG_HOST_ONLY:=1
+
+include $(INCLUDE_DIR)/host-build.mk
+include $(INCLUDE_DIR)/package.mk
+include ../../lang/rust/rust-host-build.mk
+
+define Package/cargo-c
+  SECTION:=lang
+  CATEGORY:=Languages
+  SUBMENU:=Rust
+  TITLE:=Build and install rust crates as C libraries
+  DEPENDS:=$(RUST_ARCH_DEPENDS)
+  URL:=https://github.com/lu-zero/cargo-c
+  BUILDONLY:=1
+endef
+
+define Package/cargo-c/description
+  Build and install crates with C bindings so they appear as normal
+  C libraries.
+endef
+
+$(eval $(call RustBinHostBuild))
+$(eval $(call HostBuild))
+$(eval $(call BuildPackage,cargo-c))