浏览代码

ibrdtnd: new package

[Thomas:
  - add package to package/Config.in
  - remove "select" on libdaemon, libcurl, sqlite and openssl from
    Config.in, since those are optional dependency.
  - add "select" on ibrcommon, since it is a mandatory dependency.
  - remove bogus includes of package/ibrcommon/Config.in and
    package/ibrdtn/Config.in, those are directly from
    package/Config.in.
  - fix Config.in comment dependency and indentation.
  - remove INSTALL_STAGING = YES, since ibrdtnd does not install a
    library.
  - remove libdaemon, libcurl, sqlite and openssl as mandatory
    dependencies, and handle them as optional dependencies.
  - add ibrcommon in the dependencies (even if ibrdtn already depends
    on it)
  - remove custom INSTALL_STAGING_OPTS and INSTALL_TARGET_OPTS, they
    are not needed, since the Makefiles are properly generated by
    automake.
  - explicitly disable features for which Buildroot doesn't have the
    necessary dependencies (dtndht, wifip2p, vmime)
  - add hash file.]

Signed-off-by: Tom Sparks <tom_a_sparks@yahoo.com.au>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Tom Sparks 10 年之前
父节点
当前提交
c6551d8199
共有 4 个文件被更改,包括 67 次插入0 次删除
  1. 1 0
      package/Config.in
  2. 15 0
      package/ibrdtnd/Config.in
  3. 2 0
      package/ibrdtnd/ibrdtnd.hash
  4. 49 0
      package/ibrdtnd/ibrdtnd.mk

+ 1 - 0
package/Config.in

@@ -1240,6 +1240,7 @@ endif
 	source "package/hostapd/Config.in"
 	source "package/hplip/Config.in"
 	source "package/httping/Config.in"
+	source "package/ibrdtnd/Config.in"
 if BR2_PACKAGE_BUSYBOX_SHOW_OTHERS
 	source "package/ifplugd/Config.in"
 endif

+ 15 - 0
package/ibrdtnd/Config.in

@@ -0,0 +1,15 @@
+config BR2_PACKAGE_IBRDTND
+	bool "ibrdtnd"
+	depends on BR2_INSTALL_LIBSTDCPP
+	depends on BR2_TOOLCHAIN_HAS_THREADS
+	select BR2_PACKAGE_IBRDTN
+	select BR2_PACKAGE_IBRCOMMON
+	help
+	  IBR-DTN is a small dtn application that supports:
+	  Bundle Protocol RFC 5050
+	  Bundle Security Protocol RFC 6257
+
+	  http://trac.ibr.cs.tu-bs.de/project-cm-2012-ibrdtn
+
+comment "ibrdtnd needs a toolchain w/ C++, threads"
+	depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS

+ 2 - 0
package/ibrdtnd/ibrdtnd.hash

@@ -0,0 +1,2 @@
+# Locally calculated
+sha256	  9bd79636154093ab6bf4fd10d6c62d67c6db45141460847b19def327c93771ed	ibrdtnd-1.0.1.tar.gz

+ 49 - 0
package/ibrdtnd/ibrdtnd.mk

@@ -0,0 +1,49 @@
+################################################################################
+#
+# ibrdtnd
+#
+################################################################################
+
+IBRDTND_VERSION = 1.0.1
+IBRDTND_SOURCE = ibrdtnd-$(IBRDTND_VERSION).tar.gz
+IBRDTND_SITE = https://www.ibr.cs.tu-bs.de/projects/ibr-dtn/releases/
+IBRDTND_LICENSE = Apache-2.0
+IBRDTND_LICENSE_FILES = COPYING
+IBRDTND_DEPENDENCIES = ibrdtn ibrcommon
+
+# Disable features that don't have the necessary dependencies in
+# Buildroot
+IBRDTND_CONF_OPTS = \
+	--disable-dtndht \
+	--without-wifip2p \
+	--without-vmime
+
+ifeq ($(BR2_PACKAGE_LIBDAEMON),y)
+IBRDTND_CONF_OPTS += --enable-libdaemon
+IBRDTND_DEPENDENCIES += libdaemon
+else
+IBRDTND_CONF_OPTS += --disable-libdaemon
+endif
+
+ifeq ($(BR2_PACKAGE_LIBCURL),y)
+IBRDTND_CONF_OPTS += --with-curl
+IBRDTND_DEPENDENCIES += libcurl
+else
+IBRDTND_CONF_OPTS += --without-curl
+endif
+
+ifeq ($(BR2_PACKAGE_SQLITE),y)
+IBRDTND_CONF_OPTS += --with-sqlite
+IBRDTND_DEPENDENCIES += sqlite
+else
+IBRDTND_CONF_OPTS += --without-sqlite
+endif
+
+ifeq ($(BR2_PACKAGE_OPENSSL),y)
+IBRDTND_CONF_OPTS += --with-tls
+IBRDTND_DEPENDENCIES += openssl
+else
+IBRDTND_CONF_OPTS += --without-tls
+endif
+
+$(eval $(autotools-package))