From patchwork Thu Jul 9 16:21:57 2015 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Sylvain Raybaud X-Patchwork-Id: 493483 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from silver.osuosl.org (smtp3.osuosl.org [140.211.166.136]) by ozlabs.org (Postfix) with ESMTP id 842BD140775 for ; Fri, 10 Jul 2015 02:22:31 +1000 (AEST) Received: from localhost (localhost [127.0.0.1]) by silver.osuosl.org (Postfix) with ESMTP id D0FB5262C1; Thu, 9 Jul 2015 16:22:30 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from silver.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id QN7xYGaStfVi; Thu, 9 Jul 2015 16:22:20 +0000 (UTC) Received: from ash.osuosl.org (ash.osuosl.org [140.211.166.34]) by silver.osuosl.org (Postfix) with ESMTP id 28CEB262E2; Thu, 9 Jul 2015 16:22:16 +0000 (UTC) X-Original-To: buildroot@lists.busybox.net Delivered-To: buildroot@osuosl.org Received: from hemlock.osuosl.org (smtp2.osuosl.org [140.211.166.133]) by ash.osuosl.org (Postfix) with ESMTP id 031A71CE557 for ; Thu, 9 Jul 2015 16:22:13 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by hemlock.osuosl.org (Postfix) with ESMTP id F1E2886F76 for ; Thu, 9 Jul 2015 16:22:12 +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 Bekn2Maw0lAn for ; Thu, 9 Jul 2015 16:22:11 +0000 (UTC) X-Greylist: domain auto-whitelisted by SQLgrey-1.7.6 Received: from mout.kundenserver.de (mout.kundenserver.de [212.227.17.24]) by hemlock.osuosl.org (Postfix) with ESMTPS id 95DA186F5A for ; Thu, 9 Jul 2015 16:22:11 +0000 (UTC) Received: from sylvaingc.green-communications.fr ([193.51.194.209]) by mrelayeu.kundenserver.de (mreue102) with ESMTPSA (Nemesis) id 0MD8M0-1ZEL2T3lAi-00GYZX; Thu, 09 Jul 2015 18:22:09 +0200 From: Sylvain Raybaud To: buildroot@buildroot.org Date: Thu, 9 Jul 2015 18:21:57 +0200 Message-Id: <1436458921-4199-4-git-send-email-sylvain.raybaud@green-communications.fr> X-Mailer: git-send-email 1.9.1 In-Reply-To: <1436458921-4199-1-git-send-email-sylvain.raybaud@green-communications.fr> References: <1436458921-4199-1-git-send-email-sylvain.raybaud@green-communications.fr> X-Provags-ID: V03:K0:XBUB35VCcnGvXib9q6L9D0llTwojfuXR89UISdo/gy6S27zy0v5 N1aOXuwZfJpV8ylABIQshGbHPxbv9dASi4+G9TeoqMaWtPkfegEyKfAAMLVzXfSPpzUhY/D OTyyIoqC7VJwQr1A2C+yHDr65NaHUHRE1Cx6aZyPDqAHefE40eLDTJPMIouOKmtzXpjSIJA yjmhbzHkXJC+cIOxnWOsQ== X-UI-Out-Filterresults: notjunk:1; V01:K0:U8Vr6thpcNQ=:4KJagDxL/F919ZHiuHmgX+ qtqKAnm3gLhDOovPdAcHb5nMm9g0CkdMk5sc+SVGwjBPIov7i7nK66O20Yj6/Vor+NGWolfrD MZmbTgOgfyjxGHi5YLfDTfuY8/gfJTZxpuPMNCwt6+NKcPv++8JlxYdHWyb9x6so6oR7Q7mIR mpBqSyfEkTOAz1FcLX9OBbACs+iN2IkULJwTwIFojs2NueJ622EqOJiaedAeP4UNE/uh8Tc55 XpE4VcSFZYBnsbfXyGOM7mQuPP1MVETlHDw75SzuQsSlHm272SA9no9NyDxWRcLhtuV3fw1Sz EWp+ORDk1xfvFwS4asCvV4ev4kK5jphwtBbffgh0l9vp+9V+OrjySyV1UA0ouZkhIAR4pqaUh r5YKrUfZJGWj9l2tCASshTaenZANTXMes5LH30PhB/MtXcuMypjgZhAY8PA010zMPvD0iIUE4 mMnt9/9gsNqWtpC4VUTw3QSp3WeI6aKhuO1IDUTronvgVpvKtQOJ28di6+Uh3psFlrBQIG2oa BgIYJMvW1TArqjTsfWQKuJv03G0/D8BHws4ZC6qISi5hLFGJUbtcLb0fqbLNfhojU3ADJ0T4Y A053quLzo4ayAdXLpQyPhN+LBxJ2Cr8D/qGIYjiB8L0u2IYuBNu8tL554hAzDPhmuT/dR4PMB 2c1AGqlAFAP/BIa6ZNyomGe/2 Subject: [Buildroot] [PATCH 3/7 v2] galera: new package X-BeenThere: buildroot@busybox.net X-Mailman-Version: 2.1.18-1 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" Add package galera: wsrep provider for MySQL and MariaDB galera cluster. Signed-off-by: Sylvain Raybaud --- Changes v1 -> v2: - Remove duplicated block in package/galera/galera.mk package/Config.in | 1 + package/galera/Config.in | 9 ++++ ...lera-01-fix_sconstruct_for-crosscompiling.patch | 52 ++++++++++++++++++++++ package/galera/galera.hash | 2 + package/galera/galera.mk | 49 ++++++++++++++++++++ 5 files changed, 113 insertions(+) create mode 100644 package/galera/Config.in create mode 100644 package/galera/galera-01-fix_sconstruct_for-crosscompiling.patch create mode 100644 package/galera/galera.hash create mode 100644 package/galera/galera.mk diff --git a/package/Config.in b/package/Config.in index 72ec372..b15d026 100644 --- a/package/Config.in +++ b/package/Config.in @@ -740,6 +740,7 @@ menu "Database" source "package/cppdb/Config.in" source "package/gdbm/Config.in" source "package/leveldb/Config.in" + source "package/galera/Config.in" source "package/mysql/Config.in" source "package/postgresql/Config.in" source "package/redis/Config.in" diff --git a/package/galera/Config.in b/package/galera/Config.in new file mode 100644 index 0000000..4c50427 --- /dev/null +++ b/package/galera/Config.in @@ -0,0 +1,9 @@ +config BR2_PACKAGE_GALERA + bool "galera" + select BR2_PACKAGE_BOOST + select BR2_PACKAGE_BOOST_PROGRAM_OPTIONS + select BR2_PACKAGE_OPENSSL + select BR2_PACKAGE_CHECK + help + Galera WSREP provider + http://galeracluster.com/ diff --git a/package/galera/galera-01-fix_sconstruct_for-crosscompiling.patch b/package/galera/galera-01-fix_sconstruct_for-crosscompiling.patch new file mode 100644 index 0000000..25c9d59 --- /dev/null +++ b/package/galera/galera-01-fix_sconstruct_for-crosscompiling.patch @@ -0,0 +1,52 @@ +Fix cross compilation + +--- a/SConstruct 2015-05-28 12:23:41.027461788 +0200 ++++ b/SConstruct 2015-07-02 11:27:55.763337287 +0200 +@@ -15,18 +15,17 @@ + #################################################################### + + import os +-import platform + import string + +-sysname = os.uname()[0].lower() +-machine = platform.machine() +-bits = platform.architecture()[0] ++sysname = "linux" ++machine = os.environ['BR2_ARCH'] ++bits = os.environ['BR2_x86'] + print 'Host: ' + sysname + ' ' + machine + ' ' + bits + + x86 = 0 +-if bits == '32bit': ++if bits == '32': + x86 = 32 +-elif bits == '64bit': ++elif bits == '64': + x86 = 64 + + +@@ -240,6 +239,15 @@ + # + env.Append(LINKFLAGS = link_arch) + ++# Cross-compilation ++ ++if 'CROSS' in os.environ: ++ cross = os.environ['CROSS'] ++ env.Append(CROSS = cross) ++ env.Replace(CC = cross + 'gcc') ++ env.Replace(CXX = cross + 'g++') ++ env.Replace(LD = cross + 'ld') ++ + # + # Check required headers and libraries (autoconf functionality) + # +@@ -405,7 +413,7 @@ + + # these will be used only with our softaware + if strict_build_flags == 1: +- conf.env.Append(CPPFLAGS = ' -Werror') ++ conf.env.Append(CPPFLAGS = ' -Werror -Wno-error=uninitialized -Wno-error=pedantic') + conf.env.Append(CCFLAGS = ' -pedantic') + conf.env.Append(CXXFLAGS = ' -Weffc++ -Wold-style-cast') diff --git a/package/galera/galera.hash b/package/galera/galera.hash new file mode 100644 index 0000000..d3872e1 --- /dev/null +++ b/package/galera/galera.hash @@ -0,0 +1,2 @@ +# From http://releases.galeracluster.com/source/galera-3-25.3.10.tar.gz +sha1 03f69fa87dc14fa4d793e7afab601e285c570809 galera-3-25.3.10.tar.gz diff --git a/package/galera/galera.mk b/package/galera/galera.mk new file mode 100644 index 0000000..f9bf0d0 --- /dev/null +++ b/package/galera/galera.mk @@ -0,0 +1,49 @@ +################################################################################ +# +# galera +# +################################################################################ + +GALERA_VERSION = 3-25.3.10 +GALERA_SOURCE = galera-$(GALERA_VERSION).tar.gz +GALERA_SITE = http://releases.galeracluster.com/source/ + +GALERA_INSTALL_STAGING = NO +GALERA_INSTALL_TARGET = YES + +GALERA_DEPENDENCIES = boost openssl check host-scons + +GALERA_LIBNAME = libgalera_smm.so + +GALERA_SCONS_ENV = $(TARGET_CONFIGURE_OPTS) BR2_ARCH=$(BR2_ARCH) +ifeq ($(BR2_x86_64),y) +GALERA_SCONS_ENV += BR2_x86=64 +else ifeq ($(BR2_i386),y) +GALERA_SCONS_ENV += BR2_x86=32 +else +GALERA_SCONS_ENV += BR2_x86=0 +endif + +GALERA_SCONS_OPTS = \ + arch=$(BR2_ARCH) \ + prefix=/usr \ + extra_sysroot=$(STAGING_DIR) \ + tests=0 + +define GALERA_BUILD_CMDS + cd $(@D) && \ + $(GALERA_SCONS_ENV) \ + CROSS=$(TARGET_CROSS) \ + $(SCONS) \ + $(GALERA_SCONS_OPTS) +endef + +define GALERA_INSTALL_TARGET_CMDS + $(INSTALL) -m 644 $(@D)/$(GALERA_LIBNAME) $(TARGET_DIR)/usr/lib/$(GALERA_LIBNAME) +endef + +GALERA_LICENSE = GPLv2 +GALERA_LICENSE_FILES = LICENSE COPYING + +$(eval $(generic-package)) +$(eval $(host-generic-package))