jsmn: new package
authorDavid Bachelart <david.bachelart@bbright.com>
Tue, 3 Jan 2017 11:01:44 +0000 (12:01 +0100)
committerThomas Petazzoni <thomas.petazzoni@free-electrons.com>
Sat, 28 Jan 2017 10:03:31 +0000 (23:03 +1300)
Signed-off-by: David Bachelart <david.bachelart@bbright.com>
[Thomas:
 - fix license, it's MIT, not BSD
 - use TARGET_CONFIGURE_OPTS instead of manually passing CC and AR
 - use full destination path
 - keep only sha256 hash
 - rewrap Config.in help text]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
package/Config.in
package/jsmn/Config.in [new file with mode: 0644]
package/jsmn/jsmn.hash [new file with mode: 0644]
package/jsmn/jsmn.mk [new file with mode: 0644]

index 0dded56108874350894b24a91d7adfdfb4bf6182..6ce19df69867f436570393620326ec659e9b8298 100644 (file)
@@ -1126,6 +1126,7 @@ menu "JSON/XML"
        source "package/expat/Config.in"
        source "package/ezxml/Config.in"
        source "package/jansson/Config.in"
+       source "package/jsmn/Config.in"
        source "package/json-c/Config.in"
        source "package/json-glib/Config.in"
        source "package/jsoncpp/Config.in"
diff --git a/package/jsmn/Config.in b/package/jsmn/Config.in
new file mode 100644 (file)
index 0000000..ab14273
--- /dev/null
@@ -0,0 +1,8 @@
+config BR2_PACKAGE_JSMN
+       bool "jsmn"
+       help
+         jsmn (pronounced like 'jasmine') is a minimalistic JSON
+         parser in C. It can be easily integrated into
+         resource-limited or embedded projects.
+
+         https://github.com/zserge/jsmn/
diff --git a/package/jsmn/jsmn.hash b/package/jsmn/jsmn.hash
new file mode 100644 (file)
index 0000000..91f6420
--- /dev/null
@@ -0,0 +1,2 @@
+# Locally computed
+sha256  e08993848b2abab62aa9572a560bb6e5ed4762f8537cd67c4de6cb17e17090a0    jsmn-6021415cc75e7922d45b12935f56348b064d8a7f.tar.gz
diff --git a/package/jsmn/jsmn.mk b/package/jsmn/jsmn.mk
new file mode 100644 (file)
index 0000000..30dd9c8
--- /dev/null
@@ -0,0 +1,24 @@
+################################################################################
+#
+# jsmn
+#
+################################################################################
+
+JSMN_VERSION = 6021415cc75e7922d45b12935f56348b064d8a7f
+JSMN_SITE = $(call github,zserge,jsmn,$(JSMN_VERSION))
+JSMN_LICENSE = MIT
+JSMN_LICENSE_FILES = LICENSE
+# static library only
+JSMN_INSTALL_STAGING = YES
+JSMN_INSTALL_TARGET = NO
+
+define JSMN_BUILD_CMDS
+       $(TARGET_MAKE_ENV) $(MAKE) $(TARGET_CONFIGURE_OPTS) -C $(@D)
+endef
+
+define JSMN_INSTALL_STAGING_CMDS
+       $(INSTALL) -m 0644 $(@D)/libjsmn.a $(STAGING_DIR)/usr/lib/libjsmn.a
+       $(INSTALL) -m 0644 $(@D)/jsmn.h $(STAGING_DIR)/usr/include/jsmn.h
+endef
+
+$(eval $(generic-package))