diff --git a/package/libs/mbedtls/Makefile b/package/libs/mbedtls/Makefile index 4427d64277..f7adb90208 100644 --- a/package/libs/mbedtls/Makefile +++ b/package/libs/mbedtls/Makefile @@ -21,7 +21,10 @@ PKG_LICENSE:=GPL-2.0-or-later PKG_LICENSE_FILES:=gpl-2.0.txt PKG_CPE_ID:=cpe:/a:arm:mbed_tls -PKG_CONFIG_DEPENDS:=CONFIG_LIBMBEDTLS_HAVE_SSE2 +PKG_CONFIG_DEPENDS := \ + CONFIG_LIBMBEDTLS_DEBUG_C \ + CONFIG_LIBMBEDTLS_HAVE_SSE2 \ + CONFIG_LIBMBEDTLS_HKDF_C include $(INCLUDE_DIR)/package.mk include $(INCLUDE_DIR)/cmake.mk @@ -46,6 +49,18 @@ $(call Package/mbedtls/Default) endef define Package/libmbedtls/config +config LIBMBEDTLS_DEBUG_C + depends on PACKAGE_libmbedtls + bool "Enable debug functions" + default n + help + This option enables mbedtls library's debug functions. + + It increases the uncompressed libmbedtls binary size + by around 60 KiB (for an ARMv5 platform). + + Usually, you don't need this, so don't select this if you're unsure. + config LIBMBEDTLS_HAVE_SSE2 depends on PACKAGE_libmbedtls bool @@ -59,6 +74,14 @@ config LIBMBEDTLS_HAVE_SSE2 support them, such as Geode GX and LX. In this case you may save 23KB by saying yes here. AMD Geode NX, and Intel Pentium 4 and above support SSE2. + +config LIBMBEDTLS_HKDF_C + depends on PACKAGE_libmbedtls + bool "Enable the HKDF algorithm (RFC 5869)" + default n + help + This option adds support for the Hashed Message Authentication Code + (HMAC)-based key derivation function (HKDF). endef define Package/mbedtls-util @@ -94,11 +117,19 @@ define Build/Configure $(Build/Configure/Default) awk 'BEGIN { rc = 1 } \ + /#define MBEDTLS_DEBUG_C/ { $$$$0 = "$(if $(CONFIG_LIBMBEDTLS_DEBUG_C),,// )#define MBEDTLS_DEBUG_C"; rc = 0 } \ /#define MBEDTLS_HAVE_SSE2/ { $$$$0 = "$(if $(CONFIG_LIBMBEDTLS_HAVE_SSE2),,// )#define MBEDTLS_HAVE_SSE2"; rc = 0 } \ { print } \ END { exit(rc) }' $(PKG_BUILD_DIR)/include/mbedtls/config.h \ >$(PKG_BUILD_DIR)/include/mbedtls/config.h.new && \ mv $(PKG_BUILD_DIR)/include/mbedtls/config.h.new $(PKG_BUILD_DIR)/include/mbedtls/config.h + + awk 'BEGIN { rc = 1 } \ + /#define MBEDTLS_HKDF_C/ { $$$$0 = "$(if $(CONFIG_LIBMBEDTLS_HKDF_C),,// )#define MBEDTLS_HKDF_C"; rc = 0 } \ + { print } \ + END { exit(rc) }' $(PKG_BUILD_DIR)/include/mbedtls/config.h \ + >$(PKG_BUILD_DIR)/include/mbedtls/config.h.new && \ + mv $(PKG_BUILD_DIR)/include/mbedtls/config.h.new $(PKG_BUILD_DIR)/include/mbedtls/config.h endef define Build/InstallDev