diff options
Diffstat (limited to 'sys-cluster/galera')
-rw-r--r-- | sys-cluster/galera/Manifest | 1 | ||||
-rw-r--r-- | sys-cluster/galera/files/galera-3.15-strip-extra-cflags.patch | 70 | ||||
-rw-r--r-- | sys-cluster/galera/galera-25.3.15.ebuild | 87 |
3 files changed, 158 insertions, 0 deletions
diff --git a/sys-cluster/galera/Manifest b/sys-cluster/galera/Manifest index 3fee0c48199f..f994ef49ec01 100644 --- a/sys-cluster/galera/Manifest +++ b/sys-cluster/galera/Manifest @@ -2,3 +2,4 @@ DIST galera-3-25.3.10.tar.gz 2990393 SHA256 5281cef0c26e409f93184a08fe3668bc0891 DIST galera-3-25.3.12.tar.gz 2989294 SHA256 2941cece3aa12d34bd454de8c3d2c4796a47dcfaef643e97d1b94462aa32e126 SHA512 6c18327d786a0c549b89a8668c302e3221d1f7586b271e927ca511ac9e8ee4413315641f6a43814b49e9231cdcd4c76dcd8e975098f768ea8d9f4638b1391e62 WHIRLPOOL b0067ade420c49d374baf901472841ff21ccbd73c1ef7eb7b48f7e591954f875fc5993664c54daa1e400e37cc0647f1a39515129e2d6789035de3dba0edb6d7e DIST galera-3-25.3.13.tar.gz 2989201 SHA256 193db0c1ccf1c3cfbd46b23d26441fe022ffe82788ed467c6b2df02abc4b814d SHA512 6c83dca5f6087cfbbc6aa30ac4b3f47ce08e7d958875f5c07c260ec8e9677c0e3d9e1ebb347615e0842e85f952c8b7713ee02f6148c9049ae336b29c28dc2ade WHIRLPOOL f6fcda502c3145d0430496a4de9e2368e102769a254d905fb9594b082e9bc386ab6a40edc00e084a3dfa04f800368e45d449f94a634343a8d4f61725c849f23b DIST galera-3-25.3.14.tar.gz 2990021 SHA256 b090b818f27dbcf5318c0975dc888a10847931b97e94d9bd69b3cd35848e0716 SHA512 98400d1a153cca41389a2f4cd6918c4a042f14b473a006e1bfacde19068dc8a253a2ba743c666b1762033c97e9aa352eff4804c0d20387daf284240bd2ae020b WHIRLPOOL 4e67b5d746f9a374f168c5706a8599bc6d299e9fd4072adfc13b1f4c470ab79ec1c312d6f856002c400b53941f438631799dd9feea6b7d5cf5445b799b41dfef +DIST galera-3-25.3.15.tar.gz 2994995 SHA256 0de1c1c8304e7f1dfa43ef2a2b15c8ca724556d5b187c31c8a93c755737163af SHA512 717c431d29653cba3252dae5a845e82c02e4cb122a6477253e68688600bf130a753f89f94b7b2461695ede9033ca0107324831d2c5b7d2d0479a0936d2779e84 WHIRLPOOL e0fa0de7e0a75563f78feec488fda64bc4ec9cc97a369e18fbf3c817c520a8a5e3118a4c95f14cf987f019f4f9c96f86df32c4b87c66ec7750c401e0017daf76 diff --git a/sys-cluster/galera/files/galera-3.15-strip-extra-cflags.patch b/sys-cluster/galera/files/galera-3.15-strip-extra-cflags.patch new file mode 100644 index 000000000000..b47ec39bf5a5 --- /dev/null +++ b/sys-cluster/galera/files/galera-3.15-strip-extra-cflags.patch @@ -0,0 +1,70 @@ +diff -aurN a/galerautils/src/SConscript b/galerautils/src/SConscript +--- a/galerautils/src/SConscript 2015-03-16 07:18:42.000000000 -0400 ++++ b/galerautils/src/SConscript 2015-04-07 15:03:21.661301200 -0400 +@@ -1,4 +1,4 @@ +-Import('env', 'x86', 'sysname') ++Import('env', 'sysname') + + libgalerautils_env = env.Clone() + +@@ -39,21 +39,6 @@ + crc32c_sources = [ '#/www.evanjones.ca/crc32c.c' ] + crc32c_objs = crc32c_env.SharedObject(crc32c_sources) + +-if x86: +- crc32c_env.Append(CFLAGS = ' -msse4.2') +- if sysname == 'sunos': +- # Ideally we want to simply strip SSE4.2 flag from the resulting +- # crc32.pic.o +- # (see http://ffmpeg.org/pipermail/ffmpeg-user/2013-March/013977.html) +- # but that requires some serious scons-fu, so we just don't +- # compile hardware support in if host CPU does not have it. +- from subprocess import check_call +- try: +- check_call("isainfo -v | grep sse4.2 >/dev/null 2>&1", shell=True); +- except: +- libgalerautils_env.Append(CPPFLAGS = ' -DCRC32C_NO_HARDWARE') +- crc32c_env.Append(CPPFLAGS = ' -DCRC32C_NO_HARDWARE') +- + libgalerautils_env.StaticLibrary('galerautils', + libgalerautils_objs + crc32c_objs) + +diff -aurN a/SConstruct b/SConstruct +--- a/SConstruct 2015-09-15 09:15:07.770091000 -0400 ++++ b/SConstruct 2015-09-15 09:18:41.160091000 -0400 +@@ -67,7 +67,7 @@ + build_target = 'all' + + # Optimization level +-opt_flags = ' -g -O3 -DNDEBUG' ++opt_flags = ' -DNDEBUG' + + # Architecture (defaults to build host type) + compile_arch = '' +@@ -97,26 +97,6 @@ + if dbug: + opt_flags = opt_flags + ' -DGU_DBUG_ON' + +-if sysname == 'sunos': +- compile_arch = ' -mtune=native' +-elif x86: +- if bits == 32: +- if machine == 'x86_64': +- compile_arch = ' -mx32' +- else: +- compile_arch = ' -m32 -march=i686' +- if sysname == 'linux': +- link_arch = ' -Wl,-melf_i386' +- else: +- compile_arch = ' -m64' +- if sysname == 'linux': +- link_arch = ' -Wl,-melf_x86_64' +- link_arch = compile_arch + link_arch +-elif machine == 's390x': +- compile_arch = ' -mzarch' +- if bits == 32: +- compile_arch += ' -m32' +- + boost = int(ARGUMENTS.get('boost', 1)) + boost_pool = int(ARGUMENTS.get('boost_pool', 0)) + ssl = int(ARGUMENTS.get('ssl', 1)) diff --git a/sys-cluster/galera/galera-25.3.15.ebuild b/sys-cluster/galera/galera-25.3.15.ebuild new file mode 100644 index 000000000000..f3b2b293e5f8 --- /dev/null +++ b/sys-cluster/galera/galera-25.3.15.ebuild @@ -0,0 +1,87 @@ +# Copyright 1999-2016 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=6 + +MY_P="${PN}-3-${PV}" + +inherit scons-utils toolchain-funcs user flag-o-matic +DESCRIPTION="Synchronous multi-master replication engine that provides the wsrep API" +HOMEPAGE="http://www.galeracluster.com" +SRC_URI="http://releases.galeracluster.com/source/galera-3-${PV}.tar.gz" +LICENSE="GPL-2 BSD" + +SLOT="0" + +KEYWORDS="~amd64 ~arm ~ppc64 ~x86" +IUSE="cpu_flags_x86_sse4_2 garbd test" + +CDEPEND=" + dev-libs/openssl:0= + >=dev-libs/boost-1.41:0= + " +DEPEND="${DEPEND} + ${CDEPEND} + dev-libs/check + >=sys-devel/gcc-4.4 + >=dev-cpp/asio-1.10.1[ssl] + " +#Run time only +RDEPEND="${CDEPEND}" + +S="${WORKDIR}/${MY_P}" +# Respect {C,LD}FLAGS. +PATCHES=( "${FILESDIR}/galera-3.15-strip-extra-cflags.patch" ) + +pkg_preinst() { + if use garbd ; then + enewgroup garbd + enewuser garbd -1 -1 -1 garbd + fi +} + +src_prepare() { + default + + # Remove bundled dev-cpp/asio + rm -r "${S}/asio" || die + + #Remove optional garbd daemon + if ! use garbd ; then + rm -r "${S}/garb" || die + fi +} + +src_configure() { + tc-export CC CXX + # Uses hardware specific code that seems to depend on SSE4.2 + if use cpu_flags_x86_sse4_2 ; then + append-cflags -msse4.2 + else + append-cflags -DCRC32C_NO_HARDWARE + fi + # strict_build_flags=0 disables -Werror, -pedantic, -Weffc++, + # and -Wold-style-cast + MYSCONS=( + ssl=1 + tests=$(usex test 1 0) + strict_build_flags=0 + ) +} + +src_compile() { + escons --warn=no-missing-sconscript "${MYSCONS[@]}" +} + +src_install() { + dodoc scripts/packages/README scripts/packages/README-MySQL + if use garbd ; then + dobin garb/garbd + newconfd "${FILESDIR}/garb.cnf" garbd + newinitd "${FILESDIR}/garb.sh" garbd + doman man/garbd.8 + fi + exeinto /usr/$(get_libdir)/${PN} + doexe libgalera_smm.so +} |