Merge "move dependencies to /opt/scylladb" from Takuya

This commit is contained in:
Avi Kivity
2015-10-21 15:17:04 +03:00
16 changed files with 2146 additions and 112 deletions

View File

@@ -37,6 +37,7 @@ if [ "$OS" = "Fedora" ]; then
rpmbuild -bs --define "_topdir $RPMBUILD" $RPMBUILD/SPECS/scylla-server.spec
mock rebuild --resultdir=`pwd`/build/rpms $RPMBUILD/SRPMS/scylla-server-$VERSION*.src.rpm
else
. /etc/profile.d/scylla.sh
sudo yum-builddep -y $RPMBUILD/SPECS/scylla-server.spec
rpmbuild -ba --define "_topdir $RPMBUILD" $RPMBUILD/SPECS/scylla-server.spec
fi

View File

@@ -1,33 +1,3 @@
#!/bin/sh
#
# antlr3 script
# JPackage Project <http://www.jpackage.org/>
# Source functions library
_prefer_jre="true"
. /usr/share/java-utils/java-functions
# Source system prefs
if [ -f /etc/java/antlr3.conf ] ; then
. /etc/java/antlr3.conf
fi
# Source user prefs
if [ -f $HOME/.antlr3rc ] ; then
. $HOME/.antlr3rc
fi
# Configuration
MAIN_CLASS=org.antlr.Tool
BASE_FLAGS=''
BASE_OPTIONS=''
BASE_JARS="antlr3.jar"
# Set parameters
set_jvm
set_classpath $BASE_JARS
set_flags $BASE_FLAGS
set_options $BASE_OPTIONS
# Let's start
run "$@"
exec /usr/bin/java -jar /opt/scylladb/lib/java/antlr3.jar $*

81
dist/redhat/centos_dep/binutils.diff vendored Normal file
View File

@@ -0,0 +1,81 @@
--- binutils.spec 2015-10-19 05:45:55.106745163 +0000
+++ binutils.spec.1 2015-10-19 05:45:55.807742899 +0000
@@ -17,7 +17,7 @@
%define enable_deterministic_archives 1
Summary: A GNU collection of binary utilities
-Name: %{?cross}binutils%{?_with_debug:-debug}
+Name: scylla-%{?cross}binutils%{?_with_debug:-debug}
Version: 2.25
Release: 5%{?dist}
License: GPLv3+
@@ -29,6 +29,7 @@
# instead.
Source: http://ftp.gnu.org/gnu/binutils/binutils-%{version}.tar.bz2
+%define _prefix /opt/scylladb
Source2: binutils-2.19.50.0.1-output-format.sed
Patch01: binutils-2.20.51.0.2-libtool-lib64.patch
@@ -82,6 +83,9 @@
BuildRequires: texinfo >= 4.0, gettext, flex, bison, zlib-devel
# BZ 920545: We need pod2man in order to build the manual pages.
BuildRequires: /usr/bin/pod2man
+
+Requires: scylla-env
+
# Required for: ld-bootstrap/bootstrap.exp bootstrap with --static
# It should not be required for: ld-elf/elf.exp static {preinit,init,fini} array
%if %{run_testsuite}
@@ -105,8 +109,8 @@
%if "%{build_gold}" == "both"
Requires(post): coreutils
-Requires(post): %{_sbindir}/alternatives
-Requires(preun): %{_sbindir}/alternatives
+Requires(post): /sbin/alternatives
+Requires(preun): /sbin/alternatives
%endif
# On ARM EABI systems, we do want -gnueabi to be part of the
@@ -131,11 +135,12 @@
%package devel
Summary: BFD and opcodes static and dynamic libraries and header files
Group: System Environment/Libraries
-Provides: binutils-static = %{version}-%{release}
+Provides: scylla-binutils-static = %{version}-%{release}
+Requires: scylla-env
Requires(post): /sbin/install-info
Requires(preun): /sbin/install-info
Requires: zlib-devel
-Requires: binutils = %{version}-%{release}
+Requires: scylla-binutils = %{version}-%{release}
%description devel
This package contains BFD and opcodes static and dynamic libraries.
@@ -411,11 +416,11 @@
%post
%if "%{build_gold}" == "both"
%__rm -f %{_bindir}/%{?cross}ld
-%{_sbindir}/alternatives --install %{_bindir}/%{?cross}ld %{?cross}ld \
+/sbin/alternatives --install %{_bindir}/%{?cross}ld %{?cross}ld \
%{_bindir}/%{?cross}ld.bfd %{ld_bfd_priority}
-%{_sbindir}/alternatives --install %{_bindir}/%{?cross}ld %{?cross}ld \
+/sbin/alternatives --install %{_bindir}/%{?cross}ld %{?cross}ld \
%{_bindir}/%{?cross}ld.gold %{ld_gold_priority}
-%{_sbindir}/alternatives --auto %{?cross}ld
+/sbin/alternatives --auto %{?cross}ld
%endif
%if %{isnative}
/sbin/ldconfig
@@ -433,8 +438,8 @@
%preun
%if "%{build_gold}" == "both"
if [ $1 = 0 ]; then
- %{_sbindir}/alternatives --remove %{?cross}ld %{_bindir}/%{?cross}ld.bfd
- %{_sbindir}/alternatives --remove %{?cross}ld %{_bindir}/%{?cross}ld.gold
+ /sbin/alternatives --remove %{?cross}ld %{_bindir}/%{?cross}ld.bfd
+ /sbin/alternatives --remove %{?cross}ld %{_bindir}/%{?cross}ld.gold
fi
%endif
%if %{isnative}

523
dist/redhat/centos_dep/boost.diff vendored Normal file
View File

@@ -0,0 +1,523 @@
--- boost.spec 2015-05-03 17:32:13.000000000 +0000
+++ boost.spec.1 2015-10-19 06:03:12.670534256 +0000
@@ -6,6 +6,11 @@
# We should be able to install directly.
%define boost_docdir __tmp_docdir
%define boost_examplesdir __tmp_examplesdir
+%define _without_python3 --without-python3
+%define _without_mpich --without-mpich
+%define _without_openmpi --without-openmpi
+%define _without_context --without-context
+%define _prefix /opt/scylladb
%ifarch ppc64le
%bcond_with mpich
@@ -28,18 +33,19 @@
%bcond_without python3
-Name: boost
+Name: scylla-boost
+%define orig_name boost
Summary: The free peer-reviewed portable C++ source libraries
Version: 1.57.0
%define version_enc 1_57_0
Release: 6%{?dist}
License: Boost and MIT and Python
-%define toplev_dirname %{name}_%{version_enc}
+%define toplev_dirname %{orig_name}_%{version_enc}
URL: http://www.boost.org
Group: System Environment/Libraries
-Source0: http://downloads.sourceforge.net/%{name}/%{toplev_dirname}.tar.bz2
+Source0: http://downloads.sourceforge.net/%{orig_name}/%{toplev_dirname}.tar.bz2
Source1: ver.py
Source2: libboost_thread.so
@@ -47,34 +53,36 @@
# equal to the Boost version (e.g., 1.41.0).
%define sonamever %{version}
+Requires: scylla-env
+
# boost is an "umbrella" package that pulls in all other boost
# components, except for MPI and Python 3 sub-packages. Those are
# special in that they are rarely necessary, and it's not a big burden
# to have interested parties install them explicitly.
-Requires: boost-atomic%{?_isa} = %{version}-%{release}
-Requires: boost-chrono%{?_isa} = %{version}-%{release}
+Requires: scylla-boost-atomic%{?_isa} = %{version}-%{release}
+Requires: scylla-boost-chrono%{?_isa} = %{version}-%{release}
%if %{with context}
-Requires: boost-context%{?_isa} = %{version}-%{release}
-Requires: boost-coroutine%{?_isa} = %{version}-%{release}
+Requires: scylla-boost-context%{?_isa} = %{version}-%{release}
+Requires: scylla-boost-coroutine%{?_isa} = %{version}-%{release}
%endif
-Requires: boost-date-time%{?_isa} = %{version}-%{release}
-Requires: boost-filesystem%{?_isa} = %{version}-%{release}
-Requires: boost-graph%{?_isa} = %{version}-%{release}
-Requires: boost-iostreams%{?_isa} = %{version}-%{release}
-Requires: boost-locale%{?_isa} = %{version}-%{release}
-Requires: boost-log%{?_isa} = %{version}-%{release}
-Requires: boost-math%{?_isa} = %{version}-%{release}
-Requires: boost-program-options%{?_isa} = %{version}-%{release}
-Requires: boost-python%{?_isa} = %{version}-%{release}
-Requires: boost-random%{?_isa} = %{version}-%{release}
-Requires: boost-regex%{?_isa} = %{version}-%{release}
-Requires: boost-serialization%{?_isa} = %{version}-%{release}
-Requires: boost-signals%{?_isa} = %{version}-%{release}
-Requires: boost-system%{?_isa} = %{version}-%{release}
-Requires: boost-test%{?_isa} = %{version}-%{release}
-Requires: boost-thread%{?_isa} = %{version}-%{release}
-Requires: boost-timer%{?_isa} = %{version}-%{release}
-Requires: boost-wave%{?_isa} = %{version}-%{release}
+Requires: scylla-boost-date-time%{?_isa} = %{version}-%{release}
+Requires: scylla-boost-filesystem%{?_isa} = %{version}-%{release}
+Requires: scylla-boost-graph%{?_isa} = %{version}-%{release}
+Requires: scylla-boost-iostreams%{?_isa} = %{version}-%{release}
+Requires: scylla-boost-locale%{?_isa} = %{version}-%{release}
+Requires: scylla-boost-log%{?_isa} = %{version}-%{release}
+Requires: scylla-boost-math%{?_isa} = %{version}-%{release}
+Requires: scylla-boost-program-options%{?_isa} = %{version}-%{release}
+Requires: scylla-boost-python%{?_isa} = %{version}-%{release}
+Requires: scylla-boost-random%{?_isa} = %{version}-%{release}
+Requires: scylla-boost-regex%{?_isa} = %{version}-%{release}
+Requires: scylla-boost-serialization%{?_isa} = %{version}-%{release}
+Requires: scylla-boost-signals%{?_isa} = %{version}-%{release}
+Requires: scylla-boost-system%{?_isa} = %{version}-%{release}
+Requires: scylla-boost-test%{?_isa} = %{version}-%{release}
+Requires: scylla-boost-thread%{?_isa} = %{version}-%{release}
+Requires: scylla-boost-timer%{?_isa} = %{version}-%{release}
+Requires: scylla-boost-wave%{?_isa} = %{version}-%{release}
BuildRequires: m4
BuildRequires: libstdc++-devel%{?_isa}
@@ -151,6 +159,7 @@
%package atomic
Summary: Run-Time component of boost atomic library
Group: System Environment/Libraries
+Requires: scylla-env
%description atomic
@@ -162,7 +171,8 @@
%package chrono
Summary: Run-Time component of boost chrono library
Group: System Environment/Libraries
-Requires: boost-system%{?_isa} = %{version}-%{release}
+Requires: scylla-env
+Requires: scylla-boost-system%{?_isa} = %{version}-%{release}
%description chrono
@@ -171,6 +181,7 @@
%package container
Summary: Run-Time component of boost container library
Group: System Environment/Libraries
+Requires: scylla-env
%description container
@@ -183,6 +194,7 @@
%package context
Summary: Run-Time component of boost context switching library
Group: System Environment/Libraries
+Requires: scylla-env
%description context
@@ -192,6 +204,7 @@
%package coroutine
Summary: Run-Time component of boost coroutine library
Group: System Environment/Libraries
+Requires: scylla-env
%description coroutine
Run-Time support for Boost.Coroutine, a library that provides
@@ -203,6 +216,7 @@
%package date-time
Summary: Run-Time component of boost date-time library
Group: System Environment/Libraries
+Requires: scylla-env
%description date-time
@@ -212,7 +226,8 @@
%package filesystem
Summary: Run-Time component of boost filesystem library
Group: System Environment/Libraries
-Requires: boost-system%{?_isa} = %{version}-%{release}
+Requires: scylla-env
+Requires: scylla-boost-system%{?_isa} = %{version}-%{release}
%description filesystem
@@ -223,7 +238,8 @@
%package graph
Summary: Run-Time component of boost graph library
Group: System Environment/Libraries
-Requires: boost-regex%{?_isa} = %{version}-%{release}
+Requires: scylla-env
+Requires: scylla-boost-regex%{?_isa} = %{version}-%{release}
%description graph
@@ -243,9 +259,10 @@
%package locale
Summary: Run-Time component of boost locale library
Group: System Environment/Libraries
-Requires: boost-chrono%{?_isa} = %{version}-%{release}
-Requires: boost-system%{?_isa} = %{version}-%{release}
-Requires: boost-thread%{?_isa} = %{version}-%{release}
+Requires: scylla-env
+Requires: scylla-boost-chrono%{?_isa} = %{version}-%{release}
+Requires: scylla-boost-system%{?_isa} = %{version}-%{release}
+Requires: scylla-boost-thread%{?_isa} = %{version}-%{release}
%description locale
@@ -255,6 +272,7 @@
%package log
Summary: Run-Time component of boost logging library
Group: System Environment/Libraries
+Requires: scylla-env
%description log
@@ -265,6 +283,7 @@
%package math
Summary: Math functions for boost TR1 library
Group: System Environment/Libraries
+Requires: scylla-env
%description math
@@ -274,6 +293,7 @@
%package program-options
Summary: Run-Time component of boost program_options library
Group: System Environment/Libraries
+Requires: scylla-env
%description program-options
@@ -284,6 +304,7 @@
%package python
Summary: Run-Time component of boost python library
Group: System Environment/Libraries
+Requires: scylla-env
%description python
@@ -298,6 +319,7 @@
%package python3
Summary: Run-Time component of boost python library for Python 3
Group: System Environment/Libraries
+Requires: scylla-env
%description python3
@@ -310,8 +332,9 @@
%package python3-devel
Summary: Shared object symbolic links for Boost.Python 3
Group: System Environment/Libraries
-Requires: boost-python3%{?_isa} = %{version}-%{release}
-Requires: boost-devel%{?_isa} = %{version}-%{release}
+Requires: scylla-env
+Requires: scylla-boost-python3%{?_isa} = %{version}-%{release}
+Requires: scylla-boost-devel%{?_isa} = %{version}-%{release}
%description python3-devel
@@ -322,6 +345,7 @@
%package random
Summary: Run-Time component of boost random library
Group: System Environment/Libraries
+Requires: scylla-env
%description random
@@ -330,6 +354,7 @@
%package regex
Summary: Run-Time component of boost regular expression library
Group: System Environment/Libraries
+Requires: scylla-env
%description regex
@@ -338,6 +363,7 @@
%package serialization
Summary: Run-Time component of boost serialization library
Group: System Environment/Libraries
+Requires: scylla-env
%description serialization
@@ -346,6 +372,7 @@
%package signals
Summary: Run-Time component of boost signals and slots library
Group: System Environment/Libraries
+Requires: scylla-env
%description signals
@@ -354,6 +381,7 @@
%package system
Summary: Run-Time component of boost system support library
Group: System Environment/Libraries
+Requires: scylla-env
%description system
@@ -364,6 +392,7 @@
%package test
Summary: Run-Time component of boost test library
Group: System Environment/Libraries
+Requires: scylla-env
%description test
@@ -373,7 +402,8 @@
%package thread
Summary: Run-Time component of boost thread library
Group: System Environment/Libraries
-Requires: boost-system%{?_isa} = %{version}-%{release}
+Requires: scylla-env
+Requires: scylla-boost-system%{?_isa} = %{version}-%{release}
%description thread
@@ -385,8 +415,9 @@
%package timer
Summary: Run-Time component of boost timer library
Group: System Environment/Libraries
-Requires: boost-chrono%{?_isa} = %{version}-%{release}
-Requires: boost-system%{?_isa} = %{version}-%{release}
+Requires: scylla-env
+Requires: scylla-boost-chrono%{?_isa} = %{version}-%{release}
+Requires: scylla-boost-system%{?_isa} = %{version}-%{release}
%description timer
@@ -397,11 +428,12 @@
%package wave
Summary: Run-Time component of boost C99/C++ pre-processing library
Group: System Environment/Libraries
-Requires: boost-chrono%{?_isa} = %{version}-%{release}
-Requires: boost-date-time%{?_isa} = %{version}-%{release}
-Requires: boost-filesystem%{?_isa} = %{version}-%{release}
-Requires: boost-system%{?_isa} = %{version}-%{release}
-Requires: boost-thread%{?_isa} = %{version}-%{release}
+Requires: scylla-env
+Requires: scylla-boost-chrono%{?_isa} = %{version}-%{release}
+Requires: scylla-boost-date-time%{?_isa} = %{version}-%{release}
+Requires: scylla-boost-filesystem%{?_isa} = %{version}-%{release}
+Requires: scylla-boost-system%{?_isa} = %{version}-%{release}
+Requires: scylla-boost-thread%{?_isa} = %{version}-%{release}
%description wave
@@ -412,27 +444,20 @@
%package devel
Summary: The Boost C++ headers and shared development libraries
Group: Development/Libraries
-Requires: boost%{?_isa} = %{version}-%{release}
-Provides: boost-python-devel
+Requires: scylla-env
+Requires: scylla-boost%{?_isa} = %{version}-%{release}
+Provides: scylla-boost-python-devel
Requires: libicu-devel%{?_isa}
-# Odeint was shipped in Fedora 18, but later became part of Boost.
-# Note we also obsolete odeint-doc down there.
-# https://bugzilla.redhat.com/show_bug.cgi?id=892850
-Provides: odeint = 2.2-5
-Obsoletes: odeint < 2.2-5
-Provides: odeint-devel = 2.2-5
-Obsoletes: odeint-devel < 2.2-5
-
%description devel
Headers and shared object symbolic links for the Boost C++ libraries.
%package static
Summary: The Boost C++ static development libraries
Group: Development/Libraries
-Requires: boost-devel%{?_isa} = %{version}-%{release}
-Obsoletes: boost-devel-static < 1.34.1-14
-Provides: boost-devel-static = %{version}-%{release}
+Requires: scylla-env
+Requires: scylla-boost-devel%{?_isa} = %{version}-%{release}
+Provides: scylla-boost-devel-static = %{version}-%{release}
%description static
Static Boost C++ libraries.
@@ -443,11 +468,7 @@
%if 0%{?rhel} >= 6
BuildArch: noarch
%endif
-Provides: boost-python-docs = %{version}-%{release}
-
-# See the description above.
-Provides: odeint-doc = 2.2-5
-Obsoletes: odeint-doc < 2.2-5
+Provides: scylla-boost-python-docs = %{version}-%{release}
%description doc
This package contains the documentation in the HTML format of the Boost C++
@@ -460,7 +481,7 @@
%if 0%{?rhel} >= 6
BuildArch: noarch
%endif
-Requires: boost-devel = %{version}-%{release}
+Requires: scylla-boost-devel = %{version}-%{release}
%description examples
This package contains example source files distributed with boost.
@@ -471,9 +492,10 @@
%package openmpi
Summary: Run-Time component of Boost.MPI library
Group: System Environment/Libraries
+Requires: scylla-env
Requires: openmpi%{?_isa}
BuildRequires: openmpi-devel
-Requires: boost-serialization%{?_isa} = %{version}-%{release}
+Requires: scylla-boost-serialization%{?_isa} = %{version}-%{release}
%description openmpi
@@ -483,10 +505,11 @@
%package openmpi-devel
Summary: Shared library symbolic links for Boost.MPI
Group: System Environment/Libraries
-Requires: boost-devel%{?_isa} = %{version}-%{release}
-Requires: boost-openmpi%{?_isa} = %{version}-%{release}
-Requires: boost-openmpi-python%{?_isa} = %{version}-%{release}
-Requires: boost-graph-openmpi%{?_isa} = %{version}-%{release}
+Requires: scylla-env
+Requires: scylla-boost-devel%{?_isa} = %{version}-%{release}
+Requires: scylla-boost-openmpi%{?_isa} = %{version}-%{release}
+Requires: scylla-boost-openmpi-python%{?_isa} = %{version}-%{release}
+Requires: scylla-boost-graph-openmpi%{?_isa} = %{version}-%{release}
%description openmpi-devel
@@ -496,9 +519,10 @@
%package openmpi-python
Summary: Python run-time component of Boost.MPI library
Group: System Environment/Libraries
-Requires: boost-openmpi%{?_isa} = %{version}-%{release}
-Requires: boost-python%{?_isa} = %{version}-%{release}
-Requires: boost-serialization%{?_isa} = %{version}-%{release}
+Requires: scylla-env
+Requires: scylla-boost-openmpi%{?_isa} = %{version}-%{release}
+Requires: scylla-boost-python%{?_isa} = %{version}-%{release}
+Requires: scylla-boost-serialization%{?_isa} = %{version}-%{release}
%description openmpi-python
@@ -508,8 +532,9 @@
%package graph-openmpi
Summary: Run-Time component of parallel boost graph library
Group: System Environment/Libraries
-Requires: boost-openmpi%{?_isa} = %{version}-%{release}
-Requires: boost-serialization%{?_isa} = %{version}-%{release}
+Requires: scylla-env
+Requires: scylla-boost-openmpi%{?_isa} = %{version}-%{release}
+Requires: scylla-boost-serialization%{?_isa} = %{version}-%{release}
%description graph-openmpi
@@ -526,11 +551,11 @@
%package mpich
Summary: Run-Time component of Boost.MPI library
Group: System Environment/Libraries
+Requires: scylla-env
Requires: mpich%{?_isa}
BuildRequires: mpich-devel
-Requires: boost-serialization%{?_isa} = %{version}-%{release}
-Provides: boost-mpich2 = %{version}-%{release}
-Obsoletes: boost-mpich2 < 1.53.0-9
+Requires: scylla-boost-serialization%{?_isa} = %{version}-%{release}
+Provides: scylla-boost-mpich2 = %{version}-%{release}
%description mpich
@@ -540,12 +565,12 @@
%package mpich-devel
Summary: Shared library symbolic links for Boost.MPI
Group: System Environment/Libraries
-Requires: boost-devel%{?_isa} = %{version}-%{release}
-Requires: boost-mpich%{?_isa} = %{version}-%{release}
-Requires: boost-mpich-python%{?_isa} = %{version}-%{release}
-Requires: boost-graph-mpich%{?_isa} = %{version}-%{release}
-Provides: boost-mpich2-devel = %{version}-%{release}
-Obsoletes: boost-mpich2-devel < 1.53.0-9
+Requires: scylla-env
+Requires: scylla-boost-devel%{?_isa} = %{version}-%{release}
+Requires: scylla-boost-mpich%{?_isa} = %{version}-%{release}
+Requires: scylla-boost-mpich-python%{?_isa} = %{version}-%{release}
+Requires: scylla-boost-graph-mpich%{?_isa} = %{version}-%{release}
+Provides: scylla-boost-mpich2-devel = %{version}-%{release}
%description mpich-devel
@@ -555,11 +580,11 @@
%package mpich-python
Summary: Python run-time component of Boost.MPI library
Group: System Environment/Libraries
-Requires: boost-mpich%{?_isa} = %{version}-%{release}
-Requires: boost-python%{?_isa} = %{version}-%{release}
-Requires: boost-serialization%{?_isa} = %{version}-%{release}
-Provides: boost-mpich2-python = %{version}-%{release}
-Obsoletes: boost-mpich2-python < 1.53.0-9
+Requires: scylla-env
+Requires: scylla-boost-mpich%{?_isa} = %{version}-%{release}
+Requires: scylla-boost-python%{?_isa} = %{version}-%{release}
+Requires: scylla-boost-serialization%{?_isa} = %{version}-%{release}
+Provides: scylla-boost-mpich2-python = %{version}-%{release}
%description mpich-python
@@ -569,10 +594,10 @@
%package graph-mpich
Summary: Run-Time component of parallel boost graph library
Group: System Environment/Libraries
-Requires: boost-mpich%{?_isa} = %{version}-%{release}
-Requires: boost-serialization%{?_isa} = %{version}-%{release}
-Provides: boost-graph-mpich2 = %{version}-%{release}
-Obsoletes: boost-graph-mpich2 < 1.53.0-9
+Requires: scylla-env
+Requires: scylla-boost-mpich%{?_isa} = %{version}-%{release}
+Requires: scylla-boost-serialization%{?_isa} = %{version}-%{release}
+Provides: scylla-boost-graph-mpich2 = %{version}-%{release}
%description graph-mpich
@@ -586,7 +611,8 @@
%package build
Summary: Cross platform build system for C++ projects
Group: Development/Tools
-Requires: boost-jam
+Requires: scylla-env
+Requires: scylla-boost-jam
BuildArch: noarch
%description build
@@ -600,6 +626,7 @@
%package jam
Summary: A low-level build tool
Group: Development/Tools
+Requires: scylla-env
%description jam
Boost.Jam (BJam) is the low-level build engine tool for Boost.Build.
@@ -1134,7 +1161,7 @@
%files devel
%defattr(-, root, root, -)
%doc LICENSE_1_0.txt
-%{_includedir}/%{name}
+%{_includedir}/%{orig_name}
%{_libdir}/libboost_atomic.so
%{_libdir}/libboost_chrono.so
%{_libdir}/libboost_container.so

View File

@@ -12,6 +12,18 @@ sudo yum install -y wget yum-utils rpm-build rpmdevtools gcc gcc-c++ make patch
mkdir -p build/srpms
cd build/srpms
if [ ! -f binutils-2.25-5.fc22.src.rpm ]; then
wget http://download.fedoraproject.org/pub/fedora/linux/releases/22/Everything/source/SRPMS/b/binutils-2.25-5.fc22.src.rpm
fi
if [ ! -f isl-0.14-3.fc22.src.rpm ]; then
wget http://download.fedoraproject.org/pub/fedora/linux/releases/22/Everything/source/SRPMS/i/isl-0.14-3.fc22.src.rpm
fi
if [ ! -f gcc-5.1.1-4.fc22.src.rpm ]; then
wget http://download.fedoraproject.org/pub/fedora/linux/updates/22/SRPMS/g/gcc-5.1.1-4.fc22.src.rpm
fi
if [ ! -f boost-1.57.0-6.fc22.src.rpm ]; then
wget http://download.fedoraproject.org/pub/fedora/linux/releases/22/Everything/source/SRPMS/b/boost-1.57.0-6.fc22.src.rpm
fi
@@ -24,10 +36,6 @@ if [ ! -f ragel-6.8-3.fc22.src.rpm ]; then
wget http://download.fedoraproject.org/pub/fedora/linux/releases/22/Everything/source/SRPMS/r/ragel-6.8-3.fc22.src.rpm
fi
if [ ! -f re2c-0.13.5-9.fc22.src.rpm ]; then
wget http://download.fedoraproject.org/pub/fedora/linux/releases/22/Everything/source/SRPMS/r/re2c-0.13.5-9.fc22.src.rpm
fi
cd -
sudo yum install -y epel-release
@@ -37,63 +45,76 @@ sudo ln -sf /usr/bin/python3.4 /usr/bin/python3
sudo yum install -y python-devel libicu-devel openmpi-devel mpich-devel libstdc++-devel bzip2-devel zlib-devel
sudo yum install -y flex bison dejagnu zlib-static glibc-static sharutils bc libstdc++-static gmp-devel texinfo texinfo-tex systemtap-sdt-devel mpfr-devel libmpc-devel elfutils-devel elfutils-libelf-devel glibc-devel.x86_64 glibc-devel.i686 gcc-gnat libgnat doxygen graphviz dblatex texlive-collection-latex docbook5-style-xsl python-sphinx cmake
sudo yum install -y gcc-objc
sudo yum install -y asciidoc
sudo yum install -y gettext
if [ ! -f $RPMBUILD/RPMS/x86_64/binutils-2.25-5.el7.centos.x86_64.rpm ]; then
rpmbuild --define "_topdir $RPMBUILD" --rebuild build/srpms/binutils-2.25-5.fc22.src.rpm
if [ ! -f $RPMBUILD/RPMS/noarch/scylla-env-1.0-1.el7.centos.noarch.rpm ]; then
cd dist/redhat/centos_dep
tar cpf $RPMBUILD/SOURCES/scylla-env-1.0.tar scylla-env-1.0
cd -
rpmbuild --define "_topdir $RPMBUILD" --ba dist/redhat/centos_dep/scylla-env.spec
fi
do_install binutils-2.25-5.el7.centos.x86_64.rpm
do_install scylla-env-1.0-1.el7.centos.noarch.rpm
if [ ! -f $RPMBUILD/RPMS/x86_64/isl-0.14-3.el7.centos.x86_64.rpm ]; then
rpmbuild --define "_topdir $RPMBUILD" --rebuild build/srpms/isl-0.14-3.fc22.src.rpm
if [ ! -f $RPMBUILD/RPMS/x86_64/scylla-binutils-2.25-5.el7.centos.x86_64.rpm ]; then
rpm --define "_topdir $RPMBUILD" -ivh build/srpms/binutils-2.25-5.fc22.src.rpm
patch $RPMBUILD/SPECS/binutils.spec < dist/redhat/centos_dep/binutils.diff
rpmbuild --define "_topdir $RPMBUILD" -ba $RPMBUILD/SPECS/binutils.spec
fi
do_install isl-0.14-3.el7.centos.x86_64.rpm
do_install isl-devel-0.14-3.el7.centos.x86_64.rpm
do_install scylla-binutils-2.25-5.el7.centos.x86_64.rpm
if [ ! -f $RPMBUILD/RPMS/x86_64/gcc-5.1.1-4.el7.centos.x86_64.rpm ]; then
rpmbuild --define "_topdir $RPMBUILD" --define "fedora 21" --rebuild build/srpms/gcc-5.1.1-4.fc22.src.rpm
if [ ! -f $RPMBUILD/RPMS/x86_64/scylla-isl-0.14-3.el7.centos.x86_64.rpm ]; then
rpm --define "_topdir $RPMBUILD" -ivh build/srpms/isl-0.14-3.fc22.src.rpm
patch $RPMBUILD/SPECS/isl.spec < dist/redhat/centos_dep/isl.diff
rpmbuild --define "_topdir $RPMBUILD" -ba $RPMBUILD/SPECS/isl.spec
fi
do_install *5.1.1-4*
do_install scylla-isl-0.14-3.el7.centos.x86_64.rpm
do_install scylla-isl-devel-0.14-3.el7.centos.x86_64.rpm
if [ ! -f $RPMBUILD/RPMS/x86_64/boost-1.57.0-6.el7.centos.x86_64.rpm ]; then
rpmbuild --define "_topdir $RPMBUILD" --without python3 --rebuild build/srpms/boost-1.57.0-6.fc22.src.rpm
if [ ! -f $RPMBUILD/RPMS/x86_64/scylla-gcc-5.1.1-4.el7.centos.x86_64.rpm ]; then
rpm --define "_topdir $RPMBUILD" -ivh build/srpms/gcc-5.1.1-4.fc22.src.rpm
patch $RPMBUILD/SPECS/gcc.spec < dist/redhat/centos_dep/gcc.diff
rpmbuild --define "_topdir $RPMBUILD" -ba $RPMBUILD/SPECS/gcc.spec
fi
do_install boost*
do_install scylla-*5.1.1-4*
if [ ! -f $RPMBUILD/RPMS/x86_64/re2c-0.13.5-9.el7.centos.x86_64.rpm ]; then
rpmbuild --define "_topdir $RPMBUILD" --rebuild build/srpms/re2c-0.13.5-9.fc22.src.rpm
if [ ! -f $RPMBUILD/RPMS/x86_64/scylla-boost-1.57.0-6.el7.centos.x86_64.rpm ]; then
rpm --define "_topdir $RPMBUILD" -ivh build/srpms/boost-1.57.0-6.fc22.src.rpm
patch $RPMBUILD/SPECS/boost.spec < dist/redhat/centos_dep/boost.diff
rpmbuild --define "_topdir $RPMBUILD" -ba $RPMBUILD/SPECS/boost.spec
fi
do_install re2c-0.13.5-9.el7.centos.x86_64.rpm
do_install scylla-boost*
if [ ! -f $RPMBUILD/RPMS/x86_64/ninja-build-1.5.3-2.el7.centos.x86_64.rpm ]; then
if [ ! -f $RPMBUILD/RPMS/x86_64/scylla-ninja-build-1.5.3-2.el7.centos.x86_64.rpm ]; then
rpm --define "_topdir $RPMBUILD" -ivh build/srpms/ninja-build-1.5.3-2.fc22.src.rpm
patch $RPMBUILD/SPECS/ninja-build.spec < dist/redhat/centos_dep/ninja-build.diff
rpmbuild --define "_topdir $RPMBUILD" -ba $RPMBUILD/SPECS/ninja-build.spec
fi
do_install ninja-build-1.5.3-2.el7.centos.x86_64.rpm
do_install scylla-ninja-build-1.5.3-2.el7.centos.x86_64.rpm
if [ ! -f $RPMBUILD/RPMS/x86_64/ragel-6.8-3.el7.centos.x86_64.rpm ]; then
if [ ! -f $RPMBUILD/RPMS/x86_64/scylla-ragel-6.8-3.el7.centos.x86_64.rpm ]; then
rpm --define "_topdir $RPMBUILD" -ivh build/srpms/ragel-6.8-3.fc22.src.rpm
patch $RPMBUILD/SPECS/ragel.spec < dist/redhat/centos_dep/ragel.diff
rpmbuild --define "_topdir $RPMBUILD" -ba $RPMBUILD/SPECS/ragel.spec
fi
do_install ragel-6.8-3.el7.centos.x86_64.rpm
do_install scylla-ragel-6.8-3.el7.centos.x86_64.rpm
if [ ! -f $RPMBUILD/RPMS/noarch/antlr3-tool-3.5.2-1.el7.centos.noarch.rpm ]; then
mkdir build/antlr3-tool-3.5.2
cp dist/redhat/centos_dep/antlr3 build/antlr3-tool-3.5.2
cd build/antlr3-tool-3.5.2
if [ ! -f $RPMBUILD/RPMS/noarch/scylla-antlr3-tool-3.5.2-1.el7.centos.noarch.rpm ]; then
mkdir build/scylla-antlr3-tool-3.5.2
cp dist/redhat/centos_dep/antlr3 build/scylla-antlr3-tool-3.5.2
cd build/scylla-antlr3-tool-3.5.2
wget http://www.antlr3.org/download/antlr-3.5.2-complete-no-st3.jar
cd -
cd build
tar cJpf $RPMBUILD/SOURCES/antlr3-tool-3.5.2.tar.xz antlr3-tool-3.5.2
tar cJpf $RPMBUILD/SOURCES/scylla-antlr3-tool-3.5.2.tar.xz scylla-antlr3-tool-3.5.2
cd -
rpmbuild --define "_topdir $RPMBUILD" -ba dist/redhat/centos_dep/antlr3-tool.spec
rpmbuild --define "_topdir $RPMBUILD" -ba dist/redhat/centos_dep/scylla-antlr3-tool.spec
fi
do_install antlr3-tool-3.5.2-1.el7.centos.noarch.rpm
do_install scylla-antlr3-tool-3.5.2-1.el7.centos.noarch.rpm
if [ ! -f $RPMBUILD/RPMS/x86_64/antlr3-C++-devel-3.5.2-1.el7.centos.x86_64.rpm ];then
if [ ! -f $RPMBUILD/RPMS/x86_64/scylla-antlr3-C++-devel-3.5.2-1.el7.centos.x86_64.rpm ];then
wget -O build/3.5.2.tar.gz https://github.com/antlr/antlr3/archive/3.5.2.tar.gz
mv build/3.5.2.tar.gz $RPMBUILD/SOURCES
rpmbuild --define "_topdir $RPMBUILD" -ba dist/redhat/centos_dep/antlr3-C++-devel.spec
rpmbuild --define "_topdir $RPMBUILD" -ba dist/redhat/centos_dep/scylla-antlr3-C++-devel.spec
fi
do_install antlr3-C++-devel-3.5.2-1.el7.centos.x86_64.rpm
do_install scylla-antlr3-C++-devel-3.5.2-1.el7.centos.x86_64.rpm

1316
dist/redhat/centos_dep/gcc.diff vendored Normal file

File diff suppressed because it is too large Load Diff

39
dist/redhat/centos_dep/isl.diff vendored Normal file
View File

@@ -0,0 +1,39 @@
--- isl.spec 2015-01-06 16:24:49.000000000 +0000
+++ isl.spec.1 2015-10-18 12:12:38.000000000 +0000
@@ -1,5 +1,5 @@
Summary: Integer point manipulation library
-Name: isl
+Name: scylla-isl
Version: 0.14
License: MIT
Group: System Environment/Libraries
@@ -17,8 +17,10 @@
BuildRequires: gmp-devel
BuildRequires: pkgconfig
+Requires: scylla-env
Source0: http://isl.gforge.inria.fr/isl-%{version}.tar.xz
+%define _prefix /opt/scylladb
%description
isl is a library for manipulating sets and relations of integer points
@@ -32,7 +34,8 @@
%package devel
Summary: Development for building integer point manipulation library
-Requires: isl%{?_isa} == %{version}-%{release}
+Requires: scylla-env
+Requires: scylla-isl%{?_isa} == %{version}-%{release}
Requires: gmp-devel%{?_isa}
Group: Development/Libraries
@@ -47,7 +50,7 @@
graphs), dependence analysis and bounds on piecewise step-polynomials.
%prep
-%setup -q
+%setup -q -n isl-%{version}
%build
%configure

View File

@@ -1,29 +1,34 @@
--- rpmbuild/SPECS/ninja-build.spec 2015-02-08 17:53:10.000000000 -0500
+++ rpmbuild/SPECS/ninja-build.spec.1 2015-09-17 21:21:52.343000000 -0400
@@ -8,7 +8,7 @@
Source1: ninja.vim
# https://github.com/martine/ninja/pull/882
Patch0: ninja-1.5.3-verbose-build.patch
-BuildRequires: asciidoc
+#BuildRequires: asciidoc
BuildRequires: gtest-devel
BuildRequires: python2-devel
BuildRequires: re2c >= 0.11.3
@@ -28,7 +28,7 @@
%build
CFLAGS="%{optflags}" LDFLAGS="%{?__global_ldflags}" \
%{__python2} configure.py --bootstrap --verbose
-./ninja -v manual
+#./ninja -v manual
./ninja -v ninja_test
%install
@@ -48,7 +48,7 @@
./ninja_test
%files
-%doc COPYING HACKING.md README doc/manual.html
+%doc COPYING HACKING.md README
%{_bindir}/ninja-build
%{_datadir}/bash-completion/completions/ninja-bash-completion
%{_datadir}/emacs/site-lisp/ninja-mode.el
1c1
< Name: ninja-build
---
> Name: scylla-ninja-build
8d7
< Source1: ninja.vim
10a10
> Requires: scylla-env
14,16c14,15
< BuildRequires: re2c >= 0.11.3
< Requires: emacs-filesystem
< Requires: vim-filesystem
---
> #BuildRequires: scylla-re2c >= 0.11.3
> %define _prefix /opt/scylladb
35,37c34
< # TODO: Install ninja_syntax.py?
< mkdir -p %{buildroot}/{%{_bindir},%{_datadir}/bash-completion/completions,%{_datadir}/emacs/site-lisp,%{_datadir}/vim/vimfiles/syntax,%{_datadir}/vim/vimfiles/ftdetect,%{_datadir}/zsh/site-functions}
<
---
> mkdir -p %{buildroot}/opt/scylladb/bin
39,43d35
< install -pm644 misc/bash-completion %{buildroot}%{_datadir}/bash-completion/completions/ninja-bash-completion
< install -pm644 misc/ninja-mode.el %{buildroot}%{_datadir}/emacs/site-lisp/ninja-mode.el
< install -pm644 misc/ninja.vim %{buildroot}%{_datadir}/vim/vimfiles/syntax/ninja.vim
< install -pm644 %{SOURCE1} %{buildroot}%{_datadir}/vim/vimfiles/ftdetect/ninja.vim
< install -pm644 misc/zsh-completion %{buildroot}%{_datadir}/zsh/site-functions/_ninja
53,58d44
< %{_datadir}/bash-completion/completions/ninja-bash-completion
< %{_datadir}/emacs/site-lisp/ninja-mode.el
< %{_datadir}/vim/vimfiles/syntax/ninja.vim
< %{_datadir}/vim/vimfiles/ftdetect/ninja.vim
< # zsh does not have a -filesystem package
< %{_datadir}/zsh/

View File

@@ -1,14 +1,44 @@
--- rpmbuild/SPECS/ragel.spec 2014-08-18 07:55:49.000000000 -0400
+++ rpmbuild/SPECS/ragel.spec.1 2015-09-17 22:06:27.623000000 -0400
@@ -49,8 +49,10 @@
--- ragel.spec 2014-08-18 11:55:49.000000000 +0000
+++ ragel.spec.1 2015-10-18 12:18:23.000000000 +0000
@@ -1,17 +1,20 @@
-Name: ragel
+Name: scylla-ragel
+%define orig_name ragel
Version: 6.8
Release: 3%{?dist}
Summary: Finite state machine compiler
%files
%defattr(-,root,root,-)
-%doc COPYING ragel.vim CREDITS ChangeLog
+%doc COPYING ragel.vim
%doc doc/ragel-guide.pdf
+%{_docdir}/%{name}/CREDITS
+%{_docdir}/%{name}/ChangeLog
%{_bindir}/ragel
%{_mandir}/*/*
Group: Development/Tools
License: GPLv2+
-URL: http://www.complang.org/%{name}/
-Source0: http://www.complang.org/%{name}/%{name}-%{version}.tar.gz
+URL: http://www.complang.org/%{orig_name}/
+Source0: http://www.complang.org/%{orig_name}/%{orig_name}-%{version}.tar.gz
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
# for documentation building
BuildRequires: gcc-objc, autoconf, gcc-c++
+Requires: scylla-env
Requires: gawk
+%define _prefix /opt/scylladb
%description
Ragel compiles finite state machines from regular languages into executable C,
@@ -21,7 +24,7 @@
done using inline operators that do not disrupt the regular language syntax.
%prep
-%setup -q
+%setup -q -n %{orig_name}-%{version}
# Pass fedora cflags correctly
sed -i.flags \
@@ -34,7 +37,7 @@
%build
# set the names of the other programming commandline programs
-%configure --docdir=%{_docdir}/%{name} RUBY=ruby JAVAC=javac GMCS=gmcs
+%configure --docdir=%{_docdir}/%{name}-%{version} RUBY=ruby JAVAC=javac GMCS=gmcs
make %{?_smp_mflags}

View File

@@ -1,6 +1,6 @@
%global antlr_version 3.5.2
Name: antlr3-C++-devel
Name: scylla-antlr3-C++-devel
Version: %{antlr_version}
Release: 1%{?dist}
Summary: C++ runtime support for ANTLR-generated parsers
@@ -8,6 +8,8 @@ Summary: C++ runtime support for ANTLR-generated parsers
License: BSD
URL: http://www.antlr3.org/
Source0: https://github.com/antlr/antlr3/archive/%{antlr_version}.tar.gz
Requires: scylla-env
%define _prefix /opt/scylladb
%description
C++ runtime support for ANTLR-generated parsers.

View File

@@ -1,6 +1,6 @@
%global antlr_version 3.5.2
Name: antlr3-tool
Name: scylla-antlr3-tool
Version: %{antlr_version}
Release: 1%{?dist}
Summary: ANother Tool for Language Recognition
@@ -11,6 +11,8 @@ Source0: %{name}-%{version}.tar.xz
BuildArch: noarch
Requires: java-1.7.0-openjdk
Requires: scylla-env
%define _prefix /opt/scylladb
%description
ANother Tool for Language Recognition, is a language tool

View File

@@ -0,0 +1 @@
/opt/scylladb/lib64

View File

@@ -0,0 +1,2 @@
set path = ($PATH /opt/scylladb/bin /opt/scylladb/sbin)

View File

@@ -0,0 +1 @@
export PATH=$PATH:/opt/scylladb/bin:/opt/scylladb/sbin

40
dist/redhat/centos_dep/scylla-env.spec vendored Normal file
View File

@@ -0,0 +1,40 @@
Name: scylla-env
Version: 1.0
Release: 1%{?dist}
Summary: Scylla is a highly scalable, eventually consistent, distributed, partitioned row DB.
Group: Applications/Databases
License: AGPLv3
URL: http://www.scylladb.com/
Source0: scylla-env-1.0.tar
BuildArch: noarch
%description
%prep
%setup -q
%build
%install
rm -rf $RPM_BUILD_ROOT
mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/profile.d
mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/ld.so.conf.d
install -m 644 profile.d/* $RPM_BUILD_ROOT%{_sysconfdir}/profile.d
install -m 644 ld.so.conf.d/* $RPM_BUILD_ROOT%{_sysconfdir}/ld.so.conf.d
%post
%{_sbindir}/ldconfig
%files
%doc
%{_sysconfdir}/profile.d/scylla.sh
%{_sysconfdir}/profile.d/scylla.csh
%{_sysconfdir}/ld.so.conf.d/scylla.x86_64.conf
%changelog

View File

@@ -8,9 +8,9 @@ License: AGPLv3
URL: http://www.scylladb.com/
Source0: %{name}-@@VERSION@@-@@RELEASE@@.tar
BuildRequires: libaio-devel boost-devel libstdc++-devel cryptopp-devel hwloc-devel numactl-devel libpciaccess-devel libxml2-devel zlib-devel thrift-devel yaml-cpp-devel lz4-devel snappy-devel jsoncpp-devel systemd-devel xz-devel openssl-devel libcap-devel libselinux-devel libgcrypt-devel libgpg-error-devel elfutils-devel krb5-devel libcom_err-devel libattr-devel pcre-devel elfutils-libelf-devel bzip2-devel keyutils-libs-devel ninja-build ragel antlr3-tool antlr3-C++-devel xfsprogs-devel make
%{?fedora:BuildRequires: python3 gcc-c++ libasan libubsan}
%{?rhel:BuildRequires: python34 gcc-c++ >= 5.1.1}
BuildRequires: libaio-devel boost-devel libstdc++-devel cryptopp-devel hwloc-devel numactl-devel libpciaccess-devel libxml2-devel zlib-devel thrift-devel yaml-cpp-devel lz4-devel snappy-devel jsoncpp-devel systemd-devel xz-devel openssl-devel libcap-devel libselinux-devel libgcrypt-devel libgpg-error-devel elfutils-devel krb5-devel libcom_err-devel libattr-devel pcre-devel elfutils-libelf-devel bzip2-devel keyutils-libs-devel xfsprogs-devel make
%{?fedora:BuildRequires: ninja-build ragel antlr3-tool antlr3-C++-devel python3 gcc-c++ libasan libubsan}
%{?rhel:BuildRequires: scylla-ninja-build scylla-ragel scylla-antlr3-tool scylla-antlr3-C++-devel python34 scylla-gcc-c++ >= 5.1.1}
Requires: systemd-libs xfsprogs
%description
@@ -23,7 +23,7 @@ Requires: systemd-libs xfsprogs
./configure.py --with scylla --disable-xen --enable-dpdk --mode=release
%endif
%if 0%{?rhel}
./configure.py --with scylla --disable-xen --enable-dpdk --mode=release --static-stdc++
./configure.py --with scylla --disable-xen --enable-dpdk --mode=release --static-stdc++ --compiler=/opt/scylladb/bin/g++
%endif
ninja-build -j2