aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTianling Shen <cnsztl@immortalwrt.org>2023-01-08 21:36:02 +0800
committerGitHub <noreply@github.com>2023-01-08 21:36:02 +0800
commitbc9d61952d168b8e748c4acd8dadc43f5618f16a (patch)
tree67a7915f80e64d35d203b10bff3cf50c83ced8db
parent7f3955947490d9dbb29958e08f2e07563f775370 (diff)
parent40e144be7d4b4a7a9d3d3fd45b39878c73dee406 (diff)
Merge pull request #19358 from AenBleidd/vko_add_boinc-wrapper
boinc-wrapper: add new package
-rw-r--r--net/boinc-wrapper/Makefile70
-rw-r--r--net/boinc-wrapper/test.sh5
2 files changed, 75 insertions, 0 deletions
diff --git a/net/boinc-wrapper/Makefile b/net/boinc-wrapper/Makefile
new file mode 100644
index 000000000..8e5dbe24b
--- /dev/null
+++ b/net/boinc-wrapper/Makefile
@@ -0,0 +1,70 @@
+# SPDX-Identifier-License: GPL-3.0-or-later
+#
+# Copyright (C) 2023 by Vitalii Koshura <lestat.de.lionkur@gmail.com>
+#
+
+include $(TOPDIR)/rules.mk
+
+PKG_NAME:=boinc-wrapper
+PKG_VERSION:=26018
+PKG_RELEASE:=1
+
+PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
+PKG_SOURCE_URL:=https://codeload.github.com/BOINC/boinc/tar.gz/refs/tags/wrapper/$(PKG_VERSION)?
+PKG_HASH:=a93ae0a9e640a893e78f523c6d93f31b1d5812092f85af4e9ce964846373f55d
+
+PKG_MAINTAINER:=Vitalii Koshura <lestat.de.lionkur@gmail.com>
+PKG_LICENSE:=GPL-3.0-or-later
+PKG_LICENSE_FILES:=COPYING
+PKG_CPE_ID:=cpe:/a:boinc-wrapper:boinc-wrapper
+
+PKG_INSTALL:=1
+PKG_BUILD_PARALLEL:=0
+PKG_FIXUP:=autoreconf
+
+include $(INCLUDE_DIR)/package.mk
+include $(INCLUDE_DIR)/target.mk
+
+define Package/boinc-wrapper
+ SECTION:=net
+ CATEGORY:=Network
+ TITLE:=BOINC wrapper
+ DEPENDS:=+libstdcpp
+ URL:=https://github.com/BOINC/boinc/
+endef
+
+define Package/boinc-wrapper/description
+ The Berkeley Open Infrastructure for Network Computing (BOINC) is a
+ software platform for distributed computing: several initiatives of
+ various scientific disciplines all compete for the idle time of
+ desktop computers. The developers' web site at the University of
+ Berkeley serves as a common portal to the otherwise independently run
+ projects.
+
+ This package provides the BOINC wrapper that runs the Project applications as
+ subprocesses, and handles all communication with the BOINC client
+ (e.g., to report CPU time and fraction done).
+endef
+
+CONFIGURE_ARGS += \
+ --disable-server --disable-manager --disable-client --enable-libraries \
+ --enable-boinczip \
+ --with-boinc-platform=$(REAL_GNU_TARGET_NAME) \
+ --with-boinc-alt-platform=$(ARCH)-$(BOARD)-$(DEVICE_TYPE)-openwrt-$(TARGET_SUFFIX)
+
+TARGET_CFLAGS += -Wno-format -Wno-format-security
+TARGET_CPPFLAGS += -Wno-format -Wno-format-security
+
+define Build/Compile
+ $(call Build/Compile/Default)
+ $(MAKE_VARS) $(MAKE) \
+ -C $(PKG_BUILD_DIR)/samples/wrapper \
+ $(MAKE_FLAGS)
+endef
+
+define Package/boinc-wrapper/install
+ $(INSTALL_DIR) $(1)/usr/bin
+ $(INSTALL_BIN) $(PKG_BUILD_DIR)/samples/wrapper/wrapper $(1)/usr/bin/boinc-wrapper
+endef
+
+$(eval $(call BuildPackage,boinc-wrapper))
diff --git a/net/boinc-wrapper/test.sh b/net/boinc-wrapper/test.sh
new file mode 100644
index 000000000..33f2f96d4
--- /dev/null
+++ b/net/boinc-wrapper/test.sh
@@ -0,0 +1,5 @@
+#!/bin/sh
+
+boinc-wrapper
+# Non-zero exit status is expected so always return 0 to avoid false failure.
+exit 0