Sfoglia il codice sorgente

package/libcoap: properly enable DTLS support

The DTLS support needs either gnutls or openssl, so let's have these
packages as optional dependencies. We prefer gnutls over openssl as
done by upstream in their configure.ac when the user does not provide
any option (which is the case currently)

While there is support for tinydtls, and Buildroot has a tinydtls
package, libcoap is only able to use its own internal library, and
only when static linking is enabled, so we simply disable the use of
tinydtls altogether.

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Fabrice Fontaine 5 anni fa
parent
commit
8b14f6b49b
1 ha cambiato i file con 11 aggiunte e 1 eliminazioni
  1. 11 1
      package/libcoap/libcoap.mk

+ 11 - 1
package/libcoap/libcoap.mk

@@ -10,7 +10,17 @@ LIBCOAP_INSTALL_STAGING = YES
 LIBCOAP_LICENSE = BSD-2-Clause
 LIBCOAP_LICENSE_FILES = COPYING LICENSE
 LIBCOAP_DEPENDENCIES = host-pkgconf
-LIBCOAP_CONF_OPTS = --disable-examples
+LIBCOAP_CONF_OPTS = --disable-examples --without-tinydtls
 LIBCOAP_AUTORECONF = YES
 
+ifeq ($(BR2_PACKAGE_GNUTLS),y)
+LIBCOAP_DEPENDENCIES += gnutls
+LIBCOAP_CONF_OPTS += --enable-dtls --with-gnutls --without-openssl
+else ifeq ($(BR2_PACKAGE_OPENSSL),y)
+LIBCOAP_DEPENDENCIES += openssl
+LIBCOAP_CONF_OPTS += --enable-dtls --without-gnutls --with-openssl
+else
+LIBCOAP_CONF_OPTS += --disable-dtls
+endif
+
 $(eval $(autotools-package))