diff --git a/CHANGELOG b/CHANGELOG index 0d0d788e12..0ddbff88ef 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -46,6 +46,7 @@ Latest changes: * ISC dhcp 4.2.5-P1 * E-MailRelay 1.9 * iksemel 1.5-git + * jansson 2.7 * libavmacl2 (taken from AVM's 7490.06.01 open-source package) * libcap 2.24 * libgsm-1.0.13 diff --git a/make/libs/Config.in b/make/libs/Config.in index 6b959f1eb1..daa6622b4e 100644 --- a/make/libs/Config.in +++ b/make/libs/Config.in @@ -206,6 +206,7 @@ endmenu ### "USB & FTDI" menu "Web and WebDAV" source make/curl/Config.in.libs +source make/libs/jansson/Config.in source make/js/Config.in.libs source make/libs/neon/Config.in source make/libs/serf/Config.in diff --git a/make/libs/external.in b/make/libs/external.in index ab6120bf87..0b8f82177b 100644 --- a/make/libs/external.in +++ b/make/libs/external.in @@ -42,6 +42,7 @@ source make/iconv/external.in.libs source make/libs/libid3tag/external.in source make/libs/iksemel/external.in source make/libs/gettext/external.in +source make/libs/jansson/external.in source make/libs/jpeg/external.in source make/js/external.in.libs source make/libs/leptonica/external.in diff --git a/make/libs/jansson/Config.in b/make/libs/jansson/Config.in new file mode 100644 index 0000000000..532456f23f --- /dev/null +++ b/make/libs/jansson/Config.in @@ -0,0 +1,5 @@ +config FREETZ_LIB_libjansson + bool "libjansson (libjansson.so)" + default n + help + A C library for encoding, decoding and manipulating JSON data. diff --git a/make/libs/jansson/Makefile.in b/make/libs/jansson/Makefile.in new file mode 100644 index 0000000000..3ddf376b0b --- /dev/null +++ b/make/libs/jansson/Makefile.in @@ -0,0 +1,3 @@ +ifeq ($(strip $(FREETZ_LIB_libjansson)),y) +LIBS+=jansson +endif diff --git a/make/libs/jansson/external.files b/make/libs/jansson/external.files new file mode 100644 index 0000000000..7da87bf3d7 --- /dev/null +++ b/make/libs/jansson/external.files @@ -0,0 +1 @@ +[ "$EXTERNAL_FREETZ_LIB_libjansson" == "y" ] && EXTERNAL_FILES+=" $FREETZ_LIBRARY_DIR/libjansson.so.4.7.0" diff --git a/make/libs/jansson/external.in b/make/libs/jansson/external.in new file mode 100644 index 0000000000..91204d82c7 --- /dev/null +++ b/make/libs/jansson/external.in @@ -0,0 +1,7 @@ +config EXTERNAL_FREETZ_LIB_libjansson + depends on EXTERNAL_ENABLED && FREETZ_LIB_libjansson + bool "libjansson" + default n + help + externals the following file(s): + /usr/lib/freetz/libjansson.so.4.7.0 diff --git a/make/libs/jansson/jansson.mk b/make/libs/jansson/jansson.mk new file mode 100644 index 0000000000..49f20f32e6 --- /dev/null +++ b/make/libs/jansson/jansson.mk @@ -0,0 +1,47 @@ +$(call PKG_INIT_LIB, 2.7) +$(PKG)_LIB_VERSION:=4.7.0 +$(PKG)_SOURCE:=$(pkg)-$($(PKG)_VERSION).tar.gz +$(PKG)_SOURCE_MD5:=3a106a465bbb77637550b422f5b262ef +$(PKG)_SITE:=http://www.digip.org/jansson/releases + +$(PKG)_LIBNAME:=lib$(pkg).so.$($(PKG)_LIB_VERSION) +$(PKG)_BINARY:=$($(PKG)_DIR)/src/.libs/$($(PKG)_LIBNAME) +$(PKG)_STAGING_BINARY:=$(TARGET_TOOLCHAIN_STAGING_DIR)/usr/lib/$($(PKG)_LIBNAME) +$(PKG)_TARGET_BINARY:=$($(PKG)_TARGET_DIR)/$($(PKG)_LIBNAME) + +$(PKG)_CONFIGURE_OPTIONS += --enable-shared +$(PKG)_CONFIGURE_OPTIONS += --enable-static + +$(PKG_SOURCE_DOWNLOAD) +$(PKG_UNPACKED) +$(PKG_CONFIGURED_CONFIGURE) + +$($(PKG)_BINARY): $($(PKG)_DIR)/.configured + $(SUBMAKE) -C $(JANSSON_DIR) + +$($(PKG)_STAGING_BINARY): $($(PKG)_BINARY) + $(SUBMAKE) -C $(JANSSON_DIR) \ + DESTDIR="$(TARGET_TOOLCHAIN_STAGING_DIR)" \ + install + $(call PKG_FIX_LIBTOOL_LA,prefix exec_prefix libdir) \ + $(TARGET_TOOLCHAIN_STAGING_DIR)/usr/lib/libjansson.la \ + $(TARGET_TOOLCHAIN_STAGING_DIR)/usr/lib/pkgconfig/jansson.pc + +$($(PKG)_TARGET_BINARY): $($(PKG)_STAGING_BINARY) + $(INSTALL_LIBRARY_STRIP) + +$(pkg): $($(PKG)_STAGING_BINARY) + +$(pkg)-precompiled: $($(PKG)_TARGET_BINARY) + +$(pkg)-clean: + -$(SUBMAKE) -C $(JANSSON_DIR) clean + $(RM) \ + $(TARGET_TOOLCHAIN_STAGING_DIR)/usr/lib/libjansson* \ + $(TARGET_TOOLCHAIN_STAGING_DIR)/usr/include/jansson*.h \ + $(TARGET_TOOLCHAIN_STAGING_DIR)/usr/lib/pkgconfig/jansson.pc + +$(pkg)-uninstall: + $(RM) $(JANSSON_TARGET_DIR)/libjansson.so* + +$(PKG_FINISH)