From patchwork Wed Mar 27 20:28:00 2013 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Simon Dawson X-Patchwork-Id: 231820 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from hemlock.osuosl.org (hemlock.osuosl.org [140.211.166.133]) by ozlabs.org (Postfix) with ESMTP id 537122C007C for ; Thu, 28 Mar 2013 07:29:17 +1100 (EST) Received: from localhost (localhost [127.0.0.1]) by hemlock.osuosl.org (Postfix) with ESMTP id 9F2E6A02E1; Wed, 27 Mar 2013 20:29:15 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from hemlock.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 1k+IL-Qv19de; Wed, 27 Mar 2013 20:29:11 +0000 (UTC) Received: from ash.osuosl.org (ash.osuosl.org [140.211.166.34]) by hemlock.osuosl.org (Postfix) with ESMTP id 261BAA02D7; Wed, 27 Mar 2013 20:29:11 +0000 (UTC) X-Original-To: buildroot@lists.busybox.net Delivered-To: buildroot@osuosl.org Received: from whitealder.osuosl.org (whitealder.osuosl.org [140.211.166.138]) by ash.osuosl.org (Postfix) with ESMTP id 2F05E8F75E for ; Wed, 27 Mar 2013 20:29:17 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by whitealder.osuosl.org (Postfix) with ESMTP id 6AFA08147B for ; Wed, 27 Mar 2013 20:29:09 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from whitealder.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id kJCEeymmhRzX for ; Wed, 27 Mar 2013 20:29:08 +0000 (UTC) X-Greylist: domain auto-whitelisted by SQLgrey-1.7.6 Received: from mail-wg0-f45.google.com (mail-wg0-f45.google.com [74.125.82.45]) by whitealder.osuosl.org (Postfix) with ESMTPS id 3EE32810A6 for ; Wed, 27 Mar 2013 20:29:08 +0000 (UTC) Received: by mail-wg0-f45.google.com with SMTP id x12so901014wgg.0 for ; Wed, 27 Mar 2013 13:29:06 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=x-received:from:to:subject:date:message-id:x-mailer; bh=o+xXctk3mJH/fwJ8JgStdVOEsXeH2CH7hbe2sm+aolU=; b=Ibir2mWX/+o0cwxOp7NBcb5LQ4CP1aL5sIBmMpQW5QcN5QJD8LPy0dVfVwN+SfDOHw LAWQSNU4kcLn15EZbPNeO6SaYov70MkVqVqwO5gD9p/8AWgZra4SX6lu1shijZ91VSCK nZhjFQvPShrABw/cuxGVf5WtY5yWQWAX6FdNGgQ8bJjogrTkgPApCqBLxIw+UY9JIBgf 1ZABVUvEXULXCAjEsbQMjynAzuS26U/mAsjWlSagydFSO+hQDxJtReNBteRX6niXjYV4 FzXAbxbXKuLC6ZQCquvyNsJy43lOunVwr6prftN4LDElfemrRdHvLKrdPs5kgHP0L5U/ vHUw== X-Received: by 10.194.88.138 with SMTP id bg10mr27803168wjb.13.1364416146614; Wed, 27 Mar 2013 13:29:06 -0700 (PDT) Received: from localhost.localdomain (host-84-13-110-38.opaltelecom.net. [84.13.110.38]) by mx.google.com with ESMTPS id bk1sm11925690wib.2.2013.03.27.13.29.04 (version=TLSv1.1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Wed, 27 Mar 2013 13:29:05 -0700 (PDT) From: spdawson@gmail.com To: buildroot@busybox.net Date: Wed, 27 Mar 2013 20:28:00 +0000 Message-Id: <1364416080-10797-1-git-send-email-spdawson@gmail.com> X-Mailer: git-send-email 1.7.10.4 Subject: [Buildroot] [PATCH] libjson: new package X-BeenThere: buildroot@busybox.net X-Mailman-Version: 2.1.14 Precedence: list List-Id: Discussion and development of buildroot List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Errors-To: buildroot-bounces@busybox.net Sender: buildroot-bounces@busybox.net From: Simon Dawson Signed-off-by: Simon Dawson --- package/Config.in | 1 + package/libjson/Config.in | 11 ++++ .../libjson/libjson-0001-fix-broken-makefile.patch | 16 ++++++ package/libjson/libjson.mk | 53 ++++++++++++++++++++ 4 files changed, 81 insertions(+) create mode 100644 package/libjson/Config.in create mode 100644 package/libjson/libjson-0001-fix-broken-makefile.patch create mode 100644 package/libjson/libjson.mk diff --git a/package/Config.in b/package/Config.in index 463d1b9..5f9c6c1 100644 --- a/package/Config.in +++ b/package/Config.in @@ -609,6 +609,7 @@ source "package/expat/Config.in" source "package/ezxml/Config.in" source "package/json-c/Config.in" source "package/json-glib/Config.in" +source "package/libjson/Config.in" source "package/libroxml/Config.in" source "package/libxml-parser-perl/Config.in" source "package/libxml2/Config.in" diff --git a/package/libjson/Config.in b/package/libjson/Config.in new file mode 100644 index 0000000..949c748 --- /dev/null +++ b/package/libjson/Config.in @@ -0,0 +1,11 @@ +config BR2_PACKAGE_LIBJSON + bool "libjson" + depends on BR2_INSTALL_LIBSTDCPP + help + A JSON reader and writer which is super-efficient and usually + runs circles around other JSON libraries. + + http://sourceforge.net/projects/libjson/ + +comment "libjson requires a toolchain with C++ support" + depends on !BR2_INSTALL_LIBSTDCPP diff --git a/package/libjson/libjson-0001-fix-broken-makefile.patch b/package/libjson/libjson-0001-fix-broken-makefile.patch new file mode 100644 index 0000000..8ceb0ca --- /dev/null +++ b/package/libjson/libjson-0001-fix-broken-makefile.patch @@ -0,0 +1,16 @@ +Fix the broken libjson makefile. + +Signed-off-by: Simon Dawson + +diff -Nurp a/makefile b/makefile +--- a/makefile 2012-05-30 10:15:42.000000000 +0100 ++++ b/makefile 2013-03-27 18:45:34.814670534 +0000 +@@ -170,7 +170,7 @@ include_path = $(prefix)/$(includedi + # Usage check + ifdef CXXFLAGS + ifdef BUILD_TYPE +- $(error CXXFLAGS and BUILD_TYPE are mutually exclusive) ++$(error CXXFLAGS and BUILD_TYPE are mutually exclusive) + endif + endif + diff --git a/package/libjson/libjson.mk b/package/libjson/libjson.mk new file mode 100644 index 0000000..9bd9030 --- /dev/null +++ b/package/libjson/libjson.mk @@ -0,0 +1,53 @@ +############################################################# +# +# libjson +# +############################################################# + +LIBJSON_VERSION = 7.6.1 +LIBJSON_SITE = http://downloads.sourceforge.net/project/libjson +LIBJSON_SOURCE = libjson_$(LIBJSON_VERSION).zip +LIBJSON_INSTALL_STAGING = YES +LIBJSON_LICENSE = BSD-2c +LIBJSON_LICENSE_FILES = License.txt + +LIBJSON_MAKE_OPT = BUILD_TYPE= SHARED=1 + +define LIBJSON_EXTRACT_CMDS + unzip -d $(@D) $(DL_DIR)/$(LIBJSON_SOURCE) + mv $(@D)/libjson/* $(@D) + $(RM) -r $(@D)/libjson +endef + +define LIBJSON_BUILD_CMDS + mkdir -p $(@D)/Objects_shared $(@D)/_internal/Source/Dependencies + $(TARGET_MAKE_ENV) $(MAKE) $(TARGET_CONFIGURE_OPTS) \ + $(LIBJSON_MAKE_OPT) -C $(@D) +endef + +define LIBJSON_INSTALL_TARGET_CMDS + $(TARGET_MAKE_ENV) $(MAKE) $(TARGET_CONFIGURE_OPTS) \ + $(LIBJSON_MAKE_OPT) prefix=$(TARGET_DIR)/usr install -C $(@D) +endef + +define LIBJSON_UNINSTALL_TARGET_CMDS + $(TARGET_MAKE_ENV) $(MAKE) $(TARGET_CONFIGURE_OPTS) \ + $(LIBJSON_MAKE_OPT) prefix=$(TARGET_DIR)/usr uninstall -C $(@D) +endef + +define LIBJSON_INSTALL_STAGING_CMDS + $(TARGET_MAKE_ENV) $(MAKE) $(TARGET_CONFIGURE_OPTS) \ + $(LIBJSON_MAKE_OPT) prefix=$(STAGING_DIR)/usr install -C $(@D) +endef + +define LIBJSON_UNINSTALL_STAGING_CMDS + $(TARGET_MAKE_ENV) $(MAKE) $(TARGET_CONFIGURE_OPTS) \ + $(LIBJSON_MAKE_OPT) prefix=$(STAGING_DIR)/usr uninstall -C $(@D) +endef + +define LIBJSON_CLEAN_CMDS + $(TARGET_MAKE_ENV) $(MAKE) $(TARGET_CONFIGURE_OPTS) $(LIBJSON_MAKE_OPT) \ + clean -C $(@D) +endef + +$(eval $(generic-package))