summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorUltrabug <ultrabug@gentoo.org>2017-08-03 08:52:33 +0200
committerUltrabug <ultrabug@gentoo.org>2017-08-03 08:52:33 +0200
commit1c26d0105fcd17903218cb0a3a32aec63550be0c (patch)
tree7fc42ea515a52bdc6692c7e6047874d8b6321a83 /app-admin/scylla-tools
parentdev-db/scylla: version bump, ebuild cleanup (diff)
downloadultrabug-1c26d0105fcd17903218cb0a3a32aec63550be0c.tar.gz
ultrabug-1c26d0105fcd17903218cb0a3a32aec63550be0c.tar.bz2
ultrabug-1c26d0105fcd17903218cb0a3a32aec63550be0c.zip
app-admin/scylla-tools: working ebuilds
Diffstat (limited to 'app-admin/scylla-tools')
-rw-r--r--app-admin/scylla-tools/Manifest9
-rw-r--r--app-admin/scylla-tools/files/scylla-tools-1.6.4-build.xml1900
-rw-r--r--app-admin/scylla-tools/scylla-tools-1.7.4.ebuild84
-rw-r--r--app-admin/scylla-tools/scylla-tools-9999.ebuild84
4 files changed, 170 insertions, 1907 deletions
diff --git a/app-admin/scylla-tools/Manifest b/app-admin/scylla-tools/Manifest
index e01c569..7190c8a 100644
--- a/app-admin/scylla-tools/Manifest
+++ b/app-admin/scylla-tools/Manifest
@@ -1,7 +1,2 @@
-AUX scylla-tools-1.6.4-build.xml 89360 SHA256 10a6f42bd7c240db85fd0bf4024ef9b00f0fb4cfe8b3c551e9d80b12b61ff770 SHA512 323d840a6877d08445c090383a923de7cbacb5378f49720b6db1ba5b43f4e3609b6cc7bcb4525925f3d7074573d63fd08736467b0d532fa8f5bab6ce10ffee7a WHIRLPOOL 4c45fd8a736466dc1e04130a72f19f3a635fb6c9a609b28c3bc79551c2b839bfdf98e60f3911ddd5edf164a6fa0493b0064f4caf23e0f8ee4d8f4b8b9665d57a
-DIST compile-command-annotations-1.2.1.jar 17211 SHA256 4386fd7d86272549c3b5b135bb4afe1af686a8f2f0a965afe0dd9a77b59109a5 SHA512 505b2b26710ea127b4635859ad656a42aa8be1901c527910bea7521e5015b98a74cbcebfa05c4089d9a51972b823f1ac7363d93e47087c3240c377976f053531 WHIRLPOOL 7ba5e730b984acde4dab3c64d32065c2dd5c22ce2c88b2fee82a954d1e352804468a52f40a78c2c14c5a1945fb252936a378e7eacc04bfcb0b5b1b32994a7f1b
-DIST hadoop-core-0.20.2.jar 2687928 SHA256 3699d07e35cf58982d228bebaf3073ef4cf84e0f4f82dc91636118cab132e4f6 SHA512 45e70812f6570eec24de2a7e4aa991ad1fbfd5f760eda1fd3c065b1ec0a9a258ff2cf2a2829d34bca0cc1ac98f9a5209886df9845ef41db8d339009caa0e89e1 WHIRLPOOL f4838f71ca52f0a66fa8dea7ca1dde73097c510123b49dc76c252be2987678750d52a8ebd3569fe83e74829fc94cdd6d8fcafb11d725d43c0d95f8681a8794df
-DIST jsr305-3.0.2.jar 19936 SHA256 766ad2a0783f2687962c8ad74ceecc38a28b9f72a2d085ee438b7813e928d0c7 SHA512 bb09db62919a50fa5b55906013be6ca4fc7acb2e87455fac5eaf9ede2e41ce8bbafc0e5a385a561264ea4cd71bbbd3ef5a45e02d63277a201d06a0ae1636f804 WHIRLPOOL 7b37b52a77146868fc5c21739afdbfc30a88031c025ac4fbf7e2d56cdb2d96a7c6f3017846ff2b874e66a2a7fd023a6ca49f3fe2f9da37ebe35cea4f31300ef7
-DIST pig-0.8.0.jar 2236245 SHA256 703b3598df270f22b669d925b36083c83c9f4c1614043628e1b85877bc0bcee5 SHA512 f2864ffad4abe87e1db6c4f8fc74ced506c42c98eb154e9d07bf0f76a87a09e268add6f06b8d3e83cfb8e079f386918cafe7be57802410cfd6538ed31576ca4a WHIRLPOOL 4bce986da6917b6994311bfe71c4b483a6c2471e7698fb4d1a4fdd9a9c2a3fa2a82d1bc52e1a7bcb2b15b71f3939485d63772082375cdb60526246f3b75c4f74
-DIST scylla-tools-1.6.4.tar.gz 16617931 SHA256 a37ab2ff8771e2ff5b54172b77a2ef60dc3e3d5f9aadef7281b719edd48df222 SHA512 dc42b62042c797b3d4baa11afbfa88ec9d09dd9132b11c31b8c46493682d02464da70c7adf6a652790bf01d4f17c2cce64c0be5f00bcf4fecf7ca50e31f3211b WHIRLPOOL 74e3836f1630c53232d28a8d35efb8f611a99ab14b4da32108377157613975222a498fe30f2ccf24de9d4ea56744041d9615b2514d99591d6d3b7286e5d3fc17
-EBUILD scylla-tools-1.6.4.ebuild 1514 SHA256 1d343af5878c2ed6055ae571b054d130b2cffb33e2dd657e9c85ba3657c45c84 SHA512 0959011135e77b9cfbb27b98fb6e1e734e6b2108630d504917cd6c33787e5806a88dbbedbe2fd907c820230dfd4676cb9e8ad095cd071d3dc19f727bed4b9495 WHIRLPOOL 057444459948caafdba67497124605d29ec179bf57dd996ab66877419f05b81f6afe07d5b4063290fb5c9907f5d32c3d7ace5724fcb372a46715df4fc696dbb5
+EBUILD scylla-tools-1.7.4.ebuild 2128 SHA256 53dc44b59c57aa4c64ba7dddd5fc48f886d11e44620ab9001e33d0ef3d1ec0f3 SHA512 6b1cc2788241f54b0ce5c615958300cd58cf2790247acb59f3897ce86f34f57e71649571fd13ae871a01c25162890768e80b1482b78dd6e4f38f096c7cb3b5ac WHIRLPOOL 5a90ad41f297d9fc176c17b7ab743927cbca1c6584d02ac9ee5c8a6c9078db63fe043f3a38727095fe22f80aee4e13d0f9914b1056e5fb9687a9196e39ae135e
+EBUILD scylla-tools-9999.ebuild 2128 SHA256 3f2d359bbbcfc84fc1c15a24e917e591c9f09ade01cea4b28278b30d721e1c64 SHA512 5ab7c47c9910e0dbb35b12bfcc2d99be6cd3c153e379126f7a56a1169814abe11aac0edac37a51159c169c2865f3ca92c6084e62755714ad0ef12bb1570747a9 WHIRLPOOL bd708e3e4cab28b3fdff0e58c71309dc0fe06e91dbacfe017a853ca290f48df8f24829ebcf81e06d47d18d1ed4952d0e6bd1583bbe0380b5c955793b357d5ee1
diff --git a/app-admin/scylla-tools/files/scylla-tools-1.6.4-build.xml b/app-admin/scylla-tools/files/scylla-tools-1.6.4-build.xml
deleted file mode 100644
index fc29a6a..0000000
--- a/app-admin/scylla-tools/files/scylla-tools-1.6.4-build.xml
+++ /dev/null
@@ -1,1900 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!--
- ~ Licensed to the Apache Software Foundation (ASF) under one
- ~ or more contributor license agreements. See the NOTICE file
- ~ distributed with this work for additional information
- ~ regarding copyright ownership. The ASF licenses this file
- ~ to you under the Apache License, Version 2.0 (the
- ~ "License"); you may not use this file except in compliance
- ~ with the License. You may obtain a copy of the License at
- ~
- ~ http://www.apache.org/licenses/LICENSE-2.0
- ~
- ~ Unless required by applicable law or agreed to in writing,
- ~ software distributed under the License is distributed on an
- ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- ~ KIND, either express or implied. See the License for the
- ~ specific language governing permissions and limitations
- ~ under the License.
- -->
-<project basedir="." default="jar" name="apache-cassandra"
- xmlns:artifact="antlib:org.apache.maven.artifact.ant">
- <property environment="env"/>
- <property file="build.properties" />
- <property file="build.properties.default" />
- <property name="debuglevel" value="source,lines,vars"/>
-
- <!-- default version and SCM information -->
- <property name="base.version" value="2.1.8"/>
- <property name="scm.connection" value="scm:git://git.apache.org/cassandra.git"/>
- <property name="scm.developerConnection" value="scm:git://git.apache.org/cassandra.git"/>
- <property name="scm.url" value="http://git-wip-us.apache.org/repos/asf?p=cassandra.git;a=tree"/>
-
- <!-- directory details -->
- <property name="basedir" value="."/>
- <property name="build.src" value="${basedir}/src"/>
- <property name="build.src.java" value="${basedir}/src/java"/>
- <property name="build.src.resources" value="${basedir}/src/resources"/>
- <property name="build.src.gen-java" value="${basedir}/src/gen-java"/>
- <property name="build.lib" value="${basedir}/lib"/>
- <property name="build.tools.lib" value="${basedir}/tools/lib"/>
- <property name="build.dir" value="${basedir}/build"/>
- <property name="build.dir.lib" value="${basedir}/build/lib"/>
- <property name="build.test.dir" value="${build.dir}/test"/>
- <property name="build.classes" value="${build.dir}/classes"/>
- <property name="build.classes.main" value="${build.classes}/main" />
- <property name="build.classes.thrift" value="${build.classes}/thrift" />
- <property name="javadoc.dir" value="${build.dir}/javadoc"/>
- <property name="javadoc.jars.dir" value="${build.dir}/javadocs"/>
- <property name="interface.dir" value="${basedir}/interface"/>
- <property name="interface.thrift.dir" value="${interface.dir}/thrift"/>
- <property name="interface.thrift.gen-java" value="${interface.thrift.dir}/gen-java"/>
- <property name="test.dir" value="${basedir}/test"/>
- <property name="test.resources" value="${test.dir}/resources"/>
- <property name="test.lib" value="${build.dir}/test/lib"/>
- <property name="test.classes" value="${build.dir}/test/classes"/>
- <property name="test.conf" value="${test.dir}/conf"/>
- <property name="test.data" value="${test.dir}/data"/>
- <property name="test.name" value="*Test"/>
- <property name="test.methods" value=""/>
- <property name="test.runners" value="1"/>
- <property name="test.unit.src" value="${test.dir}/unit"/>
- <property name="test.long.src" value="${test.dir}/long"/>
- <property name="test.pig.src" value="${test.dir}/pig"/>
- <property name="dist.dir" value="${build.dir}/dist"/>
- <property name="tmp.dir" value="${java.io.tmpdir}"/>
-
- <property name="source.version" value="1.7"/>
- <property name="target.version" value="1.7"/>
-
- <condition property="version" value="${base.version}">
- <isset property="release"/>
- </condition>
- <property name="version" value="${base.version}"/>
- <property name="version.properties.dir"
- value="${build.src.resources}/org/apache/cassandra/config/" />
- <property name="final.name" value="${ant.project.name}-${version}"/>
- <property name="scylla-tools.name" value="scylla-tools"/>
- <property name="final.scylla-tools.name" value="${scylla-tools.name}-${version}"/>
- <!-- details of what version of Maven ANT Tasks to fetch -->
- <property name="maven-ant-tasks.version" value="2.1.3" />
- <property name="maven-ant-tasks.local" value="${user.home}/.m2/repository/org/apache/maven/maven-ant-tasks"/>
- <property name="maven-ant-tasks.url"
- value="http://repo2.maven.org/maven2/org/apache/maven/maven-ant-tasks" />
- <!-- details of how and which Maven repository we publish to -->
- <property name="maven.version" value="3.0.3" />
- <condition property="maven-repository-url" value="https://repository.apache.org/service/local/staging/deploy/maven2">
- <isset property="release"/>
- </condition>
- <condition property="maven-repository-id" value="apache.releases.https">
- <isset property="release"/>
- </condition>
- <property name="maven-repository-url" value="https://repository.apache.org/content/repositories/snapshots"/>
- <property name="maven-repository-id" value="apache.snapshots.https"/>
-
- <property name="test.timeout" value="60000" />
- <property name="test.long.timeout" value="600000" />
- <property name="test.burn.timeout" value="600000" />
-
- <!-- default for cql tests. Can be override by -Dcassandra.test.use_prepared=false -->
- <property name="cassandra.test.use_prepared" value="true" />
-
- <!-- http://cobertura.sourceforge.net/ -->
- <property name="cobertura.version" value="2.0.3"/>
- <property name="cobertura.build.dir" value="${build.dir}/cobertura"/>
- <property name="cobertura.report.dir" value="${cobertura.build.dir}/report"/>
- <property name="cobertura.classes.dir" value="${cobertura.build.dir}/classes"/>
- <property name="cobertura.datafile" value="${cobertura.build.dir}/cobertura.ser"/>
-
- <condition property="maven-ant-tasks.jar.exists">
- <available file="${build.dir}/maven-ant-tasks-${maven-ant-tasks.version}.jar" />
- </condition>
-
- <condition property="maven-ant-tasks.jar.local">
- <available file="${maven-ant-tasks.local}/${maven-ant-tasks.version}/maven-ant-tasks-${maven-ant-tasks.version}.jar" />
- </condition>
-
- <condition property="is.source.artifact">
- <available file="${build.src.java}" type="dir" />
- </condition>
-
- <tstamp>
- <format property="YEAR" pattern="yyyy"/>
- </tstamp>
-
- <!--
- Add all the dependencies.
- -->
- <path id="maven-ant-tasks.classpath" path="${build.dir}/maven-ant-tasks-${maven-ant-tasks.version}.jar" />
- <path id="cassandra.classpath">
- <pathelement location="${cobertura.classes.dir}"/>
- <pathelement location="${build.classes.main}" />
- <pathelement location="${build.classes.thrift}" />
- <fileset dir="${build.lib}">
- <include name="**/*.jar" />
- <exclude name="**/*-sources.jar"/>
- </fileset>
- <fileset dir="${build.dir.lib}">
- <include name="**/*.jar" />
- <exclude name="**/*-sources.jar"/>
- </fileset>
- </path>
-
- <path id="cobertura.classpath">
- <pathelement location="${cobertura.classes.dir}"/>
- </path>
-
- <macrodef name="create-javadoc">
- <attribute name="destdir"/>
- <element name="filesets"/>
- <sequential>
- <javadoc destdir="@{destdir}" author="true" version="true" use="true"
- windowtitle="${ant.project.name} API" classpathref="cassandra.classpath"
- bottom="Copyright &amp;copy; ${YEAR} The Apache Software Foundation"
- useexternalfile="yes"
- maxmemory="256m">
- <filesets/>
- </javadoc>
- </sequential>
- </macrodef>
-
- <!--
- Setup the output directories.
- -->
- <target name="init">
- <fail unless="is.source.artifact"
- message="Not a source artifact, stopping here." />
- <mkdir dir="${build.classes.main}"/>
- <mkdir dir="${build.classes.thrift}"/>
- <mkdir dir="${test.lib}"/>
- <mkdir dir="${test.classes}"/>
- <mkdir dir="${build.src.gen-java}"/>
- <mkdir dir="${build.dir.lib}"/>
- </target>
-
- <target name="clean" description="Remove all locally created artifacts">
- <delete dir="${build.test.dir}" />
- <delete dir="${build.classes}" />
- <delete dir="${cobertura.classes.dir}" />
- <delete dir="${build.src.gen-java}" />
- <delete dir="${version.properties.dir}" />
- </target>
- <target depends="clean" name="cleanall"/>
-
- <target name="realclean" depends="clean" description="Remove the entire build directory and all downloaded artifacts">
- <delete dir="${build.dir}" />
- </target>
-
- <!--
- This generates the CLI grammar files from Cli.g
- -->
- <target name="check-gen-cli-grammar">
- <uptodate property="cliUpToDate"
- srcfile="${build.src.java}/org/apache/cassandra/cli/Cli.g"
- targetfile="${build.src.gen-java}/org/apache/cassandra/cli/Cli.tokens"/>
- </target>
-
- <target name="gen-cli-grammar" depends="check-gen-cli-grammar" unless="cliUpToDate">
-
- <echo>Building Grammar ${build.src.java}/org/apache/cassandra/cli/Cli.g ....</echo>
- <exec executable="antlr3.5">
- <arg value="${build.src.java}/org/apache/cassandra/cli/Cli.g"/>
- </exec>
-
- </target>
-
- <!--
- This generates the CQL grammar files from Cql.g
- -->
- <target name="check-gen-cql2-grammar">
- <uptodate property="cql2current"
- srcfile="${build.src.java}/org/apache/cassandra/cql/Cql.g"
- targetfile="${build.src.gen-java}/org/apache/cassandra/cql/Cql.tokens"/>
- </target>
- <target name="check-gen-cql3-grammar">
- <uptodate property="cql3current"
- srcfile="${build.src.java}/org/apache/cassandra/cql3/Cql.g"
- targetfile="${build.src.gen-java}/org/apache/cassandra/cql3/Cql.tokens"/>
- </target>
-
- <target name="gen-cql2-grammar" depends="check-gen-cql2-grammar" unless="cql2current">
- <echo>Building Grammar ${build.src.java}/org/apache/cassandra/cql/Cql.g ...</echo>
- <exec executable="antlr3.5">
- <arg value="${build.src.java}/org/apache/cassandra/cql/Cql.g" />
- </exec>
- </target>
-
- <target name="gen-cql3-grammar" depends="check-gen-cql3-grammar" unless="cql3current">
- <echo>Building Grammar ${build.src.java}/org/apache/cassandra/cql3/Cql.g ...</echo>
- <exec executable="antlr3.5">
- <arg value="${build.src.java}/org/apache/cassandra/cql3/Cql.g" />
- </exec>
- </target>
-
- <target name="generate-cql-html" depends="maven-ant-tasks-init" description="Generate HTML from textile source">
- <artifact:dependencies pathId="wikitext.classpath">
- <dependency groupId="com.datastax.wikitext" artifactId="wikitext-core-ant" version="1.3"/>
- <dependency groupId="org.fusesource.wikitext" artifactId="textile-core" version="1.3"/>
- </artifact:dependencies>
- <taskdef classpathref="wikitext.classpath" resource="wikitexttasks.properties" />
- <wikitext-to-html markupLanguage="Textile">
- <fileset dir="${basedir}">
- <include name="doc/cql/*.textile"/>
- </fileset>
- <fileset dir="${basedir}">
- <include name="doc/cql3/*.textile"/>
- </fileset>
- </wikitext-to-html>
- </target>
-
- <!--
- Fetch Maven Ant Tasks and Cassandra's dependencies
- These targets are intentionally free of dependencies so that they
- can be run stand-alone from a binary release artifact.
- -->
- <target name="maven-ant-tasks-localrepo" unless="maven-ant-tasks.jar.exists" if="maven-ant-tasks.jar.local"
- depends="init" description="Fetch Maven ANT Tasks from Maven Local Repository">
- <copy file="${maven-ant-tasks.local}/${maven-ant-tasks.version}/maven-ant-tasks-${maven-ant-tasks.version}.jar"
- tofile="${build.dir}/maven-ant-tasks-${maven-ant-tasks.version}.jar"/>
- <property name="maven-ant-tasks.jar.exists" value="true"/>
- </target>
-
- <target name="maven-ant-tasks-download" depends="init,maven-ant-tasks-localrepo" unless="maven-ant-tasks.jar.exists"
- description="Fetch Maven ANT Tasks from Maven Central Repositroy">
- <echo>Downloading Maven ANT Tasks...</echo>
- <get src="${maven-ant-tasks.url}/${maven-ant-tasks.version}/maven-ant-tasks-${maven-ant-tasks.version}.jar"
- dest="${build.dir}/maven-ant-tasks-${maven-ant-tasks.version}.jar" usetimestamp="true" />
- </target>
-
- <target name="maven-ant-tasks-init" depends="init,maven-ant-tasks-download" unless="maven-ant-tasks.initialized"
- description="Initialize Maven ANT Tasks">
- <typedef uri="antlib:org.apache.maven.artifact.ant" classpathref="maven-ant-tasks.classpath" />
-
- <!-- define the remote repositories we use -->
- <artifact:remoteRepository id="central" url="${artifact.remoteRepository.central}"/>
- <artifact:remoteRepository id="java.net2" url="${artifact.remoteRepository.java.net2}"/>
- <artifact:remoteRepository id="apache" url="${artifact.remoteRepository.apache}"/>
-
- <macrodef name="install">
- <attribute name="pomFile"/>
- <attribute name="file"/>
- <attribute name="classifier" default=""/>
- <attribute name="packaging" default="jar"/>
- <sequential>
- <artifact:mvn mavenVersion="${maven.version}" fork="true" failonerror="true">
- <arg value="org.apache.maven.plugins:maven-install-plugin:2.3.1:install-file" />
- <arg value="-DpomFile=@{pomFile}" />
- <arg value="-Dfile=@{file}" />
- <arg value="-Dclassifier=@{classifier}" />
- <arg value="-Dpackaging=@{packaging}" />
- </artifact:mvn>
- </sequential>
- </macrodef>
-
- <macrodef name="deploy">
- <attribute name="pomFile"/>
- <attribute name="file"/>
- <attribute name="classifier" default=""/>
- <attribute name="packaging" default="jar"/>
- <sequential>
- <artifact:mvn mavenVersion="${maven.version}" fork="true" failonerror="true">
- <jvmarg value="-Xmx512m"/>
- <arg value="org.apache.maven.plugins:maven-gpg-plugin:1.4:sign-and-deploy-file" />
- <arg value="-DretryFailedDeploymentCount=5" />
- <arg value="-Durl=${maven-repository-url}" />
- <arg value="-DrepositoryId=${maven-repository-id}" />
- <arg value="-DpomFile=@{pomFile}" />
- <arg value="-Dfile=@{file}" />
- <arg value="-Dclassifier=@{classifier}" />
- <arg value="-Dpackaging=@{packaging}" />
- <arg value="-Papache-release" />
- </artifact:mvn>
- </sequential>
- </macrodef>
-
- <property name="maven-ant-tasks.initialized" value="true"/>
- </target>
-
- <!-- this task defines the dependencies that will be fetched by Maven ANT Tasks
- the dependencies are re-used for publishing artifacts to Maven Central
- in order to keep everything consistent -->
- <target name="maven-declare-dependencies" depends="maven-ant-tasks-init"
- description="Define dependencies and dependency versions">
- <!-- The parent pom defines the versions of all dependencies -->
- <artifact:pom id="parent-pom"
- groupId="org.apache.cassandra"
- artifactId="cassandra-parent"
- packaging="pom"
- version="${version}"
- url="http://cassandra.apache.org"
- name="Apache Cassandra"
- inceptionYear="2009"
- description="The Apache Cassandra Project develops a highly scalable second-generation distributed database, bringing together Dynamo's fully distributed design and Bigtable's ColumnFamily-based data model.">
- <license name="The Apache Software License, Version 2.0" url="http://www.apache.org/licenses/LICENSE-2.0.txt"/>
- <scm connection="${scm.connection}" developerConnection="${scm.developerConnection}" url="${scm.url}"/>
- <dependencyManagement>
- <dependency groupId="org.xerial.snappy" artifactId="snappy-java" version="1.0.5"/>
- <dependency groupId="net.jpountz.lz4" artifactId="lz4" version="1.2.0"/>
- <dependency groupId="com.ning" artifactId="compress-lzf" version="0.8.4"/>
- <dependency groupId="com.google.guava" artifactId="guava" version="16.0"/>
- <dependency groupId="commons-cli" artifactId="commons-cli" version="1.1"/>
- <dependency groupId="commons-codec" artifactId="commons-codec" version="1.2"/>
- <dependency groupId="org.apache.commons" artifactId="commons-lang3" version="3.1"/>
- <dependency groupId="org.apache.commons" artifactId="commons-math3" version="3.2"/>
- <dependency groupId="com.googlecode.concurrentlinkedhashmap" artifactId="concurrentlinkedhashmap-lru" version="1.3"/>
- <dependency groupId="org.antlr" artifactId="antlr" version="3.5.2">
- <exclusion groupId="org.antlr" artifactId="stringtemplate"/>
- </dependency>
- <dependency groupId="org.antlr" artifactId="antlr-runtime" version="3.5.2">
- <exclusion groupId="org.antlr" artifactId="stringtemplate"/>
- </dependency>
- <dependency groupId="org.slf4j" artifactId="slf4j-api" version="1.7.2"/>
- <dependency groupId="ch.qos.logback" artifactId="logback-core" version="1.1.2"/>
- <dependency groupId="ch.qos.logback" artifactId="logback-classic" version="1.1.2"/>
- <dependency groupId="org.codehaus.jackson" artifactId="jackson-core-asl" version="1.9.2"/>
- <dependency groupId="org.codehaus.jackson" artifactId="jackson-mapper-asl" version="1.9.2"/>
- <dependency groupId="jline" artifactId="jline" version="1.0">
- <exclusion groupId="junit" artifactId="junit"/>
- </dependency>
- <dependency groupId="com.googlecode.json-simple" artifactId="json-simple" version="1.1"/>
- <dependency groupId="com.boundary" artifactId="high-scale-lib" version="1.0.6"/>
- <dependency groupId="com.github.jbellis" artifactId="jamm" version="0.3.0"/>
- <dependency groupId="com.thinkaurelius.thrift" artifactId="thrift-server" version="0.3.7">
- <exclusion groupId="org.slf4j" artifactId="slf4j-log4j12"/>
- </dependency>
- <dependency groupId="org.yaml" artifactId="snakeyaml" version="1.11"/>
- <dependency groupId="org.apache.thrift" artifactId="libthrift" version="0.9.2"/>
-
- <dependency groupId="junit" artifactId="junit" version="4.6" />
- <dependency groupId="commons-logging" artifactId="commons-logging" version="1.1.1"/>
- <dependency groupId="org.apache.rat" artifactId="apache-rat" version="0.10">
- <exclusion groupId="commons-lang" artifactId="commons-lang"/>
- </dependency>
- <dependency groupId="org.apache.hadoop" artifactId="hadoop-core" version="1.0.3">
- <exclusion groupId="org.mortbay.jetty" artifactId="servlet-api"/>
- </dependency>
- <dependency groupId="org.apache.hadoop" artifactId="hadoop-minicluster" version="1.0.3"/>
- <dependency groupId="org.apache.pig" artifactId="pig" version="0.12.1"/>
- <dependency groupId="net.java.dev.jna" artifactId="jna" version="4.0.0"/>
-
- <dependency groupId="net.sourceforge.cobertura" artifactId="cobertura" version="${cobertura.version}">
- <exclusion groupId="xerces" artifactId="xercesImpl"/>
- </dependency>
-
- <dependency groupId="org.apache.cassandra" artifactId="cassandra-all" version="${version}" />
- <dependency groupId="org.apache.cassandra" artifactId="cassandra-thrift" version="${version}" />
- <dependency groupId="com.yammer.metrics" artifactId="metrics-core" version="2.2.0" />
- <dependency groupId="com.codahale.metrics" artifactId="metrics-core" version="3.0.2" />
- <dependency groupId="com.addthis.metrics" artifactId="reporter-config" version="2.1.0" />
- <dependency groupId="org.mindrot" artifactId="jbcrypt" version="0.3m" />
- <dependency groupId="io.airlift" artifactId="airline" version="0.6" />
- <dependency groupId="io.netty" artifactId="netty-all" version="4.0.23.Final" />
- <dependency groupId="com.google.code.findbugs" artifactId="jsr305" version="2.0.2" />
- <dependency groupId="com.clearspring.analytics" artifactId="stream" version="2.5.2" />
- <dependency groupId="com.datastax.cassandra" artifactId="cassandra-driver-core" version="2.1.9" />
- <dependency groupId="org.javassist" artifactId="javassist" version="3.18.2-GA" />
- <dependency groupId="net.sf.supercsv" artifactId="super-csv" version="2.1.0" />
- <dependency groupId="net.ju-n.compile-command-annotations" artifactId="compile-command-annotations" version="1.2.0" />
- </dependencyManagement>
- <developer id="alakshman" name="Avinash Lakshman"/>
- <developer id="aleksey" name="Aleksey Yeschenko"/>
- <developer id="amorton" name="Aaron Morton"/>
- <developer id="benedict" name="Benedict Elliott Smith"/>
- <developer id="brandonwilliams" name="Brandon Williams"/>
- <developer id="dbrosius" name="David Brosius"/>
- <developer id="eevans" name="Eric Evans"/>
- <developer id="gdusbabek" name="Gary Dusbabek"/>
- <developer id="goffinet" name="Chris Goffinet"/>
- <developer id="jaakko" name="Laine Jaakko Olavi"/>
- <developer id="jake" name="T Jake Luciani"/>
- <developer id="jasonbrown" name="Jason Brown"/>
- <developer id="jbellis" name="Jonathan Ellis"/>
- <developer id="jmckenzie" name="Josh McKenzie"/>
- <developer id="johan" name="Johan Oskarsson"/>
- <developer id="junrao" name="Jun Rao"/>
- <developer id="marcuse" name="Marcus Eriksson"/>
- <developer id="mishail" name="Mikhail Stepura"/>
- <developer id="pmalik" name="Prashant Malik"/>
- <developer id="scode" name="Peter Schuller"/>
- <developer id="slebresne" name="Sylvain Lebresne"/>
- <developer id="tylerhobbs" name="Tyler Hobbs"/>
- <developer id="vijay" name="Vijay Parthasarathy"/>
- <developer id="xedin" name="Pavel Yaskevich"/>
- <developer id="yukim" name="Yuki Morishita"/>
- </artifact:pom>
-
- <!-- each dependency set then defines the subset of the dependencies for that dependency set -->
- <artifact:pom id="build-deps-pom"
- artifactId="cassandra-build-deps">
- <parent groupId="org.apache.cassandra"
- artifactId="cassandra-parent"
- version="${version}"/>
- <dependency groupId="junit" artifactId="junit"/>
- <dependency groupId="commons-logging" artifactId="commons-logging"/>
- <dependency groupId="org.apache.rat" artifactId="apache-rat"/>
- <dependency groupId="org.apache.hadoop" artifactId="hadoop-core"/>
- <dependency groupId="org.apache.hadoop" artifactId="hadoop-minicluster"/>
- <dependency groupId="org.apache.pig" artifactId="pig"/>
- <dependency groupId="com.google.code.findbugs" artifactId="jsr305"/>
- <dependency groupId="org.antlr" artifactId="antlr"/>
- <dependency groupId="com.datastax.cassandra" artifactId="cassandra-driver-core"/>
- <dependency groupId="net.ju-n.compile-command-annotations" artifactId="compile-command-annotations"/>
- </artifact:pom>
-
- <artifact:pom id="coverage-deps-pom"
- artifactId="cassandra-coverage-deps">
- <parent groupId="org.apache.cassandra"
- artifactId="cassandra-parent"
- version="${version}"/>
- <dependency groupId="net.sourceforge.cobertura" artifactId="cobertura"/>
- </artifact:pom>
-
- <artifact:pom id="test-deps-pom"
- artifactId="cassandra-test-deps">
- <parent groupId="org.apache.cassandra"
- artifactId="cassandra-parent"
- version="${version}"/>
- <!-- do NOT remove this, it breaks pig-test -->
- <dependency groupId="org.slf4j" artifactId="slf4j-log4j12" version="1.7.2"/>
- <dependency groupId="joda-time" artifactId="joda-time" version="2.3" />
- </artifact:pom>
-
- <!-- now the pom's for artifacts being deployed to Maven Central -->
-
- <artifact:pom id="all-pom"
- artifactId="cassandra-all"
- url="http://cassandra.apache.org"
- name="Apache Cassandra">
- <parent groupId="org.apache.cassandra"
- artifactId="cassandra-parent"
- version="${version}"/>
- <scm connection="${scm.connection}" developerConnection="${scm.developerConnection}" url="${scm.url}"/>
- <dependency groupId="org.xerial.snappy" artifactId="snappy-java"/>
- <dependency groupId="net.jpountz.lz4" artifactId="lz4"/>
- <dependency groupId="com.ning" artifactId="compress-lzf"/>
- <dependency groupId="com.google.guava" artifactId="guava"/>
- <dependency groupId="commons-cli" artifactId="commons-cli"/>
- <dependency groupId="commons-codec" artifactId="commons-codec"/>
- <dependency groupId="org.apache.commons" artifactId="commons-lang3"/>
- <dependency groupId="org.apache.commons" artifactId="commons-math3"/>
- <dependency groupId="com.googlecode.concurrentlinkedhashmap" artifactId="concurrentlinkedhashmap-lru"/>
- <dependency groupId="org.antlr" artifactId="antlr"/>
- <dependency groupId="org.antlr" artifactId="antlr-runtime"/>
- <dependency groupId="org.slf4j" artifactId="slf4j-api"/>
- <dependency groupId="org.codehaus.jackson" artifactId="jackson-core-asl"/>
- <dependency groupId="org.codehaus.jackson" artifactId="jackson-mapper-asl"/>
- <dependency groupId="jline" artifactId="jline"/>
- <dependency groupId="com.googlecode.json-simple" artifactId="json-simple"/>
- <dependency groupId="com.boundary" artifactId="high-scale-lib"/>
- <dependency groupId="org.yaml" artifactId="snakeyaml"/>
- <dependency groupId="org.mindrot" artifactId="jbcrypt"/>
- <dependency groupId="com.yammer.metrics" artifactId="metrics-core"/>
- <dependency groupId="com.addthis.metrics" artifactId="reporter-config"/>
- <dependency groupId="com.thinkaurelius.thrift" artifactId="thrift-server" version="0.3.7"/>
- <dependency groupId="com.clearspring.analytics" artifactId="stream" version="2.5.2" />
- <dependency groupId="net.sf.supercsv" artifactId="super-csv" version="2.1.0" />
-
- <dependency groupId="ch.qos.logback" artifactId="logback-core"/>
- <dependency groupId="ch.qos.logback" artifactId="logback-classic"/>
-
- <dependency groupId="org.apache.thrift" artifactId="libthrift"/>
- <dependency groupId="org.apache.cassandra" artifactId="cassandra-thrift"/>
-
- <!-- don't need hadoop classes to run, but if you use the hadoop stuff -->
- <dependency groupId="org.apache.hadoop" artifactId="hadoop-core" optional="true"/>
- <dependency groupId="org.apache.hadoop" artifactId="hadoop-minicluster" optional="true"/>
- <dependency groupId="org.apache.pig" artifactId="pig" optional="true"/>
- <dependency groupId="com.datastax.cassandra" artifactId="cassandra-driver-core" optional="true"/>
-
- <!-- don't need jna to run, but nice to have -->
- <dependency groupId="net.java.dev.jna" artifactId="jna" version="4.0.0"/>
-
- <!-- don't need jamm unless running a server in which case it needs to be a -javagent to be used anyway -->
- <dependency groupId="com.github.jbellis" artifactId="jamm"/>
- <dependency groupId="io.netty" artifactId="netty-all"/>
- </artifact:pom>
- <artifact:pom id="thrift-pom"
- artifactId="cassandra-thrift"
- url="http://cassandra.apache.org"
- name="Apache Cassandra">
- <parent groupId="org.apache.cassandra"
- artifactId="cassandra-parent"
- version="${version}"/>
- <scm connection="${scm.connection}" developerConnection="${scm.developerConnection}" url="${scm.url}"/>
- <dependency groupId="org.apache.commons" artifactId="commons-lang3"/>
- <dependency groupId="org.slf4j" artifactId="slf4j-api"/>
- <dependency groupId="org.apache.thrift" artifactId="libthrift"/>
- </artifact:pom>
- <artifact:pom id="clientutil-pom"
- artifactId="cassandra-clientutil"
- url="http://cassandra.apache.org"
- name="Apache Cassandra">
- <parent groupId="org.apache.cassandra"
- artifactId="cassandra-parent"
- version="${version}"/>
- <scm connection="${scm.connection}" developerConnection="${scm.developerConnection}" url="${scm.url}"/>
- <dependency groupId="com.google.guava" artifactId="guava"/>
- </artifact:pom>
-
- <artifact:pom id="dist-pom"
- artifactId="apache-cassandra"
- packaging="pom"
- url="http://cassandra.apache.org"
- name="Apache Cassandra">
- <parent groupId="org.apache.cassandra"
- artifactId="cassandra-parent"
- version="${version}"/>
- <scm connection="${scm.connection}" developerConnection="${scm.developerConnection}" url="${scm.url}"/>
- </artifact:pom>
- </target>
-
- <target name="maven-ant-tasks-retrieve-build" depends="maven-declare-dependencies" unless="without.maven">
- <artifact:dependencies pomRefId="build-deps-pom"
- filesetId="build-dependency-jars"
- sourcesFilesetId="build-dependency-sources"
- cacheDependencyRefs="true"
- dependencyRefsBuildFile="${build.dir}/build-dependencies.xml">
- <remoteRepository refid="central"/>
- <remoteRepository refid="apache"/>
- <remoteRepository refid="java.net2"/>
- </artifact:dependencies>
- <artifact:dependencies pomRefId="coverage-deps-pom"
- pathId="cobertura.classpath">
- <remoteRepository refid="central"/>
- </artifact:dependencies>
-
- <copy todir="${build.dir.lib}/jars">
- <fileset refid="build-dependency-jars"/>
- <mapper type="flatten"/>
- </copy>
- <copy todir="${build.dir.lib}/sources">
- <fileset refid="build-dependency-sources"/>
- <mapper type="flatten"/>
- </copy>
- </target>
-
- <target name="maven-ant-tasks-retrieve-test" depends="maven-ant-tasks-init">
- <artifact:dependencies pomRefId="test-deps-pom"
- filesetId="test-dependency-jars"
- sourcesFilesetId="test-dependency-sources"
- cacheDependencyRefs="true"
- dependencyRefsBuildFile="${build.dir}/test-dependencies.xml">
- <remoteRepository refid="apache"/>
- <remoteRepository refid="central"/>
- <remoteRepository refid="oauth"/>
- </artifact:dependencies>
- <copy todir="${test.lib}/jars">
- <fileset refid="test-dependency-jars"/>
- <mapper type="flatten"/>
- </copy>
- <copy todir="${test.lib}/sources">
- <fileset refid="test-dependency-sources"/>
- <mapper type="flatten"/>
- </copy>
- </target>
-
- <target name="maven-ant-tasks-retrieve-pig-test" depends="maven-ant-tasks-init">
- <artifact:dependencies pomRefId="test-deps-pom"
- filesetId="test-dependency-jars"
- sourcesFilesetId="test-dependency-sources"
- cacheDependencyRefs="true"
- dependencyRefsBuildFile="${build.dir}/test-dependencies.xml">
- <remoteRepository refid="apache"/>
- <remoteRepository refid="central"/>
- <remoteRepository refid="java.net2"/>
- </artifact:dependencies>
- <copy todir="${build.dir.lib}/jars">
- <fileset refid="test-dependency-jars"/>
- <mapper type="flatten"/>
- </copy>
- <copy todir="${build.dir.lib}/sources">
- <fileset refid="test-dependency-sources"/>
- <mapper type="flatten"/>
- </copy>
- </target>
-
- <!--
- Generate thrift code. We have targets to build java because
- Cassandra depends on it, and python because that is what the system
- tests run.
- -->
- <target name="check-gen-thrift-java">
- <uptodate property="thriftUpToDate" srcfile="${interface.dir}/cassandra.thrift"
- targetfile="${interface.thrift.gen-java}/org/apache/cassandra/thrift/Cassandra.java" />
- </target>
- <target name="gen-thrift-java" unless="thriftUpToDate" depends="check-gen-thrift-java"
- description="Generate Thrift Java artifacts">
- <echo>Generating Thrift Java code from ${basedir}/interface/cassandra.thrift...</echo>
- <exec executable="thrift" dir="${basedir}/interface" failonerror="true">
- <arg line="--gen java:hashcode" />
- <arg line="-o ${interface.thrift.dir}" />
- <arg line="cassandra.thrift" />
- </exec>
- <antcall target="write-java-license-headers" />
- </target>
-
- <target name="_write-java-license-headers" depends="rat-init">
- <java classname="org.apache.rat.Report" fork="true"
- output="${build.dir}/rat-report.log">
- <classpath refid="rat.classpath" />
- <arg value="-a" />
- <arg value="--force" />
- <arg value="interface/thrift" />
- </java>
- </target>
-
- <target name="write-java-license-headers" unless="without.rat" description="Add missing java license headers">
- <antcall target="_write-java-license-headers" />
- </target>
-
- <target name="gen-thrift-py" description="Generate Thrift Python artifacts">
- <echo>Generating Thrift Python code from ${basedir}/interface/cassandra.thrift...</echo>
- <exec executable="thrift" dir="${basedir}/interface" failonerror="true">
- <arg line="--gen py" />
- <arg line="-o ${interface.thrift.dir}" />
- <arg line="cassandra.thrift" />
- </exec>
- <exec executable="thrift" dir="${basedir}/interface" failonerror="true">
- <arg line="--gen py:twisted" />
- <arg line="-o ${interface.thrift.dir}" />
- <arg line="cassandra.thrift" />
- </exec>
- </target>
-
- <!-- create properties file with C version -->
- <target name="createVersionPropFile">
- <taskdef name="propertyfile" classname="org.apache.tools.ant.taskdefs.optional.PropertyFile"/>
- <mkdir dir="${version.properties.dir}"/>
- <propertyfile file="${version.properties.dir}/version.properties">
- <entry key="CassandraVersion" value="${version}"/>
- </propertyfile>
- </target>
-
- <target name="test-run" depends="build"
- description="Run in test mode. Not for production use!">
- <java classname="org.apache.cassandra.service.CassandraDaemon" fork="true">
- <classpath>
- <path refid="cassandra.classpath"/>
- <pathelement location="${test.conf}"/>
- </classpath>
- <jvmarg value="-Dstorage-config=${test.conf}"/>
- <jvmarg value="-javaagent:${basedir}/lib/jamm-0.3.0.jar" />
- <jvmarg value="-ea"/>
- </java>
- </target>
-
- <!--
- The build target builds all the .class files
- -->
- <target name="build"
- depends="build-project" description="Compile Cassandra classes"/>
- <target name="codecoverage" depends="cobertura-instrument,test,cobertura-report" description="Create code coverage report"/>
-
- <target depends="init,gen-cli-grammar,gen-cql2-grammar,gen-cql3-grammar"
- name="build-project">
- <echo message="${ant.project.name}: ${ant.file}"/>
- <!-- Order matters! -->
- <javac fork="true"
- debug="true" debuglevel="${debuglevel}"
- destdir="${build.classes.thrift}" includeantruntime="false" source="${source.version}" target="${target.version}"
- memorymaximumsize="512M"
- encoding="UTF-8">
- <src path="${interface.thrift.dir}/gen-java"/>
- <classpath refid="cassandra.classpath"/>
- </javac>
- <javac fork="true"
- debug="true" debuglevel="${debuglevel}"
- destdir="${build.classes.main}" includeantruntime="false" source="${source.version}" target="${target.version}"
- memorymaximumsize="512M"
- encoding="UTF-8">
- <src path="${build.src.java}"/>
- <src path="${build.src.gen-java}"/>
- <classpath refid="cassandra.classpath"/>
- <compilerarg value="-XDignore.symbol.file"/>
- </javac>
- <antcall target="createVersionPropFile"/>
- <copy todir="${build.classes.main}">
- <fileset dir="${build.src.resources}" />
- </copy>
- <copy todir="${basedir}/conf" file="${build.classes.main}/META-INF/hotspot_compiler"/>
- </target>
-
- <!-- Stress build file -->
- <property name="stress.build.src" value="${basedir}/tools/stress/src" />
- <property name="stress.build.classes" value="${build.classes}/stress" />
- <property name="stress.manifest" value="${stress.build.classes}/MANIFEST.MF" />
- <path id="cassandra.classes">
- <pathelement location="${basedir}/build/classes/main" />
- <pathelement location="${basedir}/build/classes/thrift" />
- </path>
- <target name="stress-build" depends="build" description="build stress tool">
- <mkdir dir="${stress.build.classes}" />
- <javac debug="true" debuglevel="${debuglevel}" destdir="${stress.build.classes}" includeantruntime="true" source="${source.version}" target="${target.version}" encoding="UTF-8">
- <src path="${stress.build.src}" />
- <classpath>
- <path refid="cassandra.classes" />
- <path>
- <fileset dir="${build.lib}">
- <include name="**/*.jar" />
- </fileset>
- <fileset dir="${build.tools.lib}">
- <include name="**/*.jar" />
- </fileset>
- </path>
- </classpath>
- </javac>
- </target>
-
- <target name="_write-poms" depends="maven-declare-dependencies">
- <artifact:writepom pomRefId="parent-pom" file="${build.dir}/${final.name}-parent.pom"/>
- <artifact:writepom pomRefId="thrift-pom"
- file="${build.dir}/${ant.project.name}-thrift-${version}.pom"/>
- <artifact:writepom pomRefId="all-pom" file="${build.dir}/${final.name}.pom"/>
- <artifact:writepom pomRefId="clientutil-pom"
- file="${build.dir}/${ant.project.name}-clientutil-${version}.pom"/>
- </target>
-
- <target name="write-poms" unless="without.maven">
- <antcall target="_write-poms" />
- </target>
-
- <!--
- The jar target makes cassandra.jar output.
- -->
- <target name="jar"
- depends="build, stress-build"
- description="Assemble Cassandra JAR files">
- <mkdir dir="${build.classes.main}/META-INF" />
- <mkdir dir="${build.classes.thrift}/META-INF" />
- <copy file="LICENSE.txt"
- tofile="${build.classes.main}/META-INF/LICENSE.txt"/>
- <copy file="LICENSE.txt"
- tofile="${build.classes.thrift}/META-INF/LICENSE.txt"/>
- <copy file="NOTICE.txt"
- tofile="${build.classes.main}/META-INF/NOTICE.txt"/>
- <copy file="NOTICE.txt"
- tofile="${build.classes.thrift}/META-INF/NOTICE.txt"/>
-
- <!-- Thrift Jar -->
- <jar jarfile="${build.dir}/${ant.project.name}-thrift-${version}.jar"
- basedir="${build.classes.thrift}">
- <fileset dir="${build.classes.main}">
- <include name="org/apache/cassandra/thrift/ITransportFactory*.class" />
- <include name="org/apache/cassandra/thrift/TFramedTransportFactory*.class" />
- </fileset>
- <manifest>
- <attribute name="Implementation-Title" value="Cassandra"/>
- <attribute name="Implementation-Version" value="${version}"/>
- <attribute name="Implementation-Vendor" value="Apache"/>
- </manifest>
- </jar>
-
- <!-- Main Jar -->
- <jar jarfile="${build.dir}/${final.name}.jar">
- <fileset dir="${build.classes.main}">
- <exclude name="org/apache/cassandra/thrift/ITransportFactory*.class" />
- <exclude name="org/apache/cassandra/thrift/TFramedTransportFactory*.class" />
- <exclude name="com/scylladb/**"/>
- </fileset>
- <manifest>
- <!-- <section name="org/apache/cassandra/infrastructure"> -->
- <attribute name="Implementation-Title" value="Cassandra"/>
- <attribute name="Implementation-Version" value="${version}"/>
- <attribute name="Implementation-Vendor" value="Apache"/>
- <attribute name="Premain-Class"
- value="org.apache.cassandra.infrastructure.continuations.CAgent"/>
- <attribute name="Class-Path"
- value="${ant.project.name}-clientutil-${version}.jar ${ant.project.name}-thrift-${version}.jar" />
- <!-- </section> -->
- </manifest>
- </jar>
-
- <!-- Scylla tools extensions -->
- <jar jarfile="${build.dir}/${final.scylla-tools.name}.jar">
- <fileset dir="${build.classes.main}">
- <include name="com/scylladb/**"/>
- <exclude name="org/apache/**"/>
- </fileset>
- <manifest>
- <attribute name="Implementation-Title" value="Scylla-Tools"/>
- <attribute name="Implementation-Version" value="${version}"/>
- <attribute name="Implementation-Vendor" value="ScyllaDB"/>
- </manifest>
- </jar>
-
- <!-- Clientutil Jar -->
- <!-- TODO: write maven pom here -->
- <jar jarfile="${build.dir}/${ant.project.name}-clientutil-${version}.jar">
- <fileset dir="${build.classes.main}">
- <include name="org/apache/cassandra/serializers/*" />
- <include name="org/apache/cassandra/utils/ByteBufferUtil*.class" />
- <include name="org/apache/cassandra/utils/Hex.class" />
- <include name="org/apache/cassandra/utils/UUIDGen*.class" />
- <include name="org/apache/cassandra/utils/FBUtilities*.class" />
- <include name="org/apache/cassandra/exceptions/*.class" />
- <include name="org/apache/cassandra/utils/CloseableIterator.class" />
- </fileset>
- <manifest>
- <attribute name="Implementation-Title" value="Cassandra"/>
- <attribute name="Implementation-Version" value="${version}"/>
- <attribute name="Implementation-Vendor" value="Apache"/>
- </manifest>
- </jar>
-
- <!-- Stress jar -->
- <manifest file="${stress.manifest}">
- <attribute name="Built-By" value="Pavel Yaskevich"/>
- <attribute name="Main-Class" value="org.apache.cassandra.stress.Stress"/>
- </manifest>
- <mkdir dir="${stress.build.classes}/META-INF" />
- <mkdir dir="${build.dir}/tools/lib/" />
- <jar destfile="${build.dir}/tools/lib/stress.jar" manifest="${stress.manifest}">
- <fileset dir="${stress.build.classes}"/>
- </jar>
- </target>
-
- <!--
- The javadoc-jar target makes cassandra-javadoc.jar output required for publishing to Maven central repository.
- -->
- <target name="javadoc-jar" description="Assemble Cassandra JavaDoc JAR file">
- <mkdir dir="${javadoc.jars.dir}"/>
- <create-javadoc destdir="${javadoc.jars.dir}/thrift">
- <filesets>
- <fileset dir="${interface.thrift.dir}/gen-java" defaultexcludes="yes">
- <include name="org/apache/**/*.java"/>
- </fileset>
- </filesets>
- </create-javadoc>
- <jar jarfile="${build.dir}/${ant.project.name}-thrift-${version}-javadoc.jar"
- basedir="${javadoc.jars.dir}/thrift"/>
-
- <create-javadoc destdir="${javadoc.jars.dir}/main">
- <filesets>
- <fileset dir="${build.src.java}" defaultexcludes="yes">
- <include name="org/apache/**/*.java"/>
- </fileset>
- <fileset dir="${build.src.gen-java}" defaultexcludes="yes">
- <include name="org/apache/**/*.java"/>
- </fileset>
- </filesets>
- </create-javadoc>
- <jar jarfile="${build.dir}/${final.name}-javadoc.jar"
- basedir="${javadoc.jars.dir}/main"/>
-
- <create-javadoc destdir="${javadoc.jars.dir}/clientutil">
- <filesets>
- <fileset dir="${build.src.java}" defaultexcludes="yes">
- <include name="org/apache/cassandra/serializers/*" />
- <include name="org/apache/cassandra/utils/ByteBufferUtil*.java" />
- <include name="org/apache/cassandra/utils/Hex.java" />
- <include name="org/apache/cassandra/utils/UUIDGen*.java" />
- </fileset>
- </filesets>
- </create-javadoc>
- <jar jarfile="${build.dir}/${ant.project.name}-clientutil-${version}-javadoc.jar"
- basedir="${javadoc.jars.dir}/clientutil"/>
- <!-- javadoc task always rebuilds so might as well remove the generated docs to prevent
- being pulled into the distribution by accident -->
- <delete quiet="true" dir="${javadoc.jars.dir}"/>
- </target>
-
- <!--
- The sources-jar target makes cassandra-sources.jar output required for publishing to Maven central repository.
- -->
- <target name="sources-jar" depends="init" description="Assemble Cassandra Sources JAR file">
- <jar jarfile="${build.dir}/${ant.project.name}-thrift-${version}-sources.jar">
- <fileset dir="${interface.thrift.dir}/gen-java" defaultexcludes="yes">
- <include name="org/apache/**/*.java"/>
- </fileset>
- </jar>
- <jar jarfile="${build.dir}/${final.name}-sources.jar">
- <fileset dir="${build.src.java}" defaultexcludes="yes">
- <include name="org/apache/**/*.java"/>
- </fileset>
- <fileset dir="${build.src.gen-java}" defaultexcludes="yes">
- <include name="org/apache/**/*.java"/>
- </fileset>
- </jar>
- <jar jarfile="${build.dir}/${ant.project.name}-clientutil-${version}-sources.jar">
- <fileset dir="${build.src.java}" defaultexcludes="yes">
- <include name="org/apache/cassandra/serializers/*" />
- <include name="org/apache/cassandra/utils/ByteBufferUtil*.java" />
- <include name="org/apache/cassandra/utils/Hex.java" />
- <include name="org/apache/cassandra/utils/UUIDGen*.java" />
- </fileset>
- </jar>
- </target>
-
- <!-- creates release tarballs -->
- <target name="artifacts" depends="jar,javadoc"
- description="Create Cassandra release artifacts">
- <mkdir dir="${dist.dir}"/>
- <!-- fix the control linefeed so that builds on windows works on linux -->
- <fixcrlf srcdir="bin" includes="**/*" excludes="**/*.bat, **/*.ps1" eol="lf" eof="remove" />
- <fixcrlf srcdir="conf" includes="**/*" excludes="**/*.bat, **/*.ps1" eol="lf" eof="remove" />
- <fixcrlf srcdir="tools/bin" includes="**/*" excludes="**/*.bat, **/*.ps1" eol="lf" eof="remove" />
- <copy todir="${dist.dir}/lib">
- <fileset dir="${build.lib}"/>
- <fileset dir="${build.dir}">
- <include name="${final.name}.jar" />
- <include name="${final.scylla-tools.name}.jar" />
- <include name="${ant.project.name}-thrift-${version}.jar" />
- <include name="${ant.project.name}-clientutil-${version}.jar" />
- </fileset>
- </copy>
- <copy todir="${dist.dir}/javadoc">
- <fileset dir="${javadoc.dir}"/>
- </copy>
- <copy todir="${dist.dir}/bin">
- <fileset dir="bin"/>
- </copy>
- <copy todir="${dist.dir}/conf">
- <fileset dir="conf"/>
- </copy>
- <copy todir="${dist.dir}/interface">
- <fileset dir="interface">
- <include name="**/*.thrift" />
- </fileset>
- </copy>
- <copy todir="${dist.dir}/pylib">
- <fileset dir="pylib">
- <include name="**" />
- <exclude name="**/*.pyc" />
- </fileset>
- </copy>
- <copy todir="${dist.dir}/">
- <fileset dir="${basedir}">
- <include name="*.txt" />
- </fileset>
- </copy>
- <copy todir="${dist.dir}/tools/bin">
- <fileset dir="${basedir}/tools/bin"/>
- </copy>
- <copy todir="${dist.dir}/tools/">
- <fileset dir="${basedir}/tools/">
- <include name="*.yaml"/>
- </fileset>
- </copy>
- <copy todir="${dist.dir}/tools/lib">
- <fileset dir="${build.dir}/tools/lib/">
- <include name="*.jar" />
- </fileset>
- <fileset dir="${build.tools.lib}">
- <include name="*.jar" />
- </fileset>
- </copy>
- <artifact:writepom pomRefId="dist-pom"
- file="${build.dir}/${final.name}-dist.pom"/>
- <tar compression="gzip" longfile="gnu"
- destfile="${build.dir}/${final.name}-bin.tar.gz">
-
- <!-- Everything but bin/ (default mode) -->
- <tarfileset dir="${dist.dir}" prefix="${final.name}">
- <include name="**"/>
- <exclude name="bin/*" />
- </tarfileset>
- <!-- Shell includes in bin/ (default mode) -->
- <tarfileset dir="${dist.dir}" prefix="${final.name}">
- <include name="bin/*.in.sh" />
- </tarfileset>
- <!-- Executable scripts in bin/ -->
- <tarfileset dir="${dist.dir}" prefix="${final.name}" mode="755">
- <include name="bin/*"/>
- <include name="tools/bin/*"/>
- <not>
- <filename name="bin/*.in.sh" />
- </not>
- </tarfileset>
- </tar>
-
- <tar compression="gzip" longfile="gnu"
- destfile="${build.dir}/${final.name}-src.tar.gz">
-
- <tarfileset dir="${basedir}"
- prefix="${final.name}-src">
- <include name="**"/>
- <exclude name="build/**" />
- <exclude name="src/gen-java/**" />
- <exclude name=".git/**" />
- <exclude name="bin/*" /> <!-- handled separately below -->
- <!-- exclude Eclipse files -->
- <exclude name=".project" />
- <exclude name=".classpath" />
- <exclude name=".settings/**" />
- <exclude name=".externalToolBuilders/**" />
- </tarfileset>
-
- <!-- Shell includes and batch files in bin/ -->
- <tarfileset dir="${basedir}" prefix="${final.name}-src">
- <include name="bin/*.in.sh" />
- <include name="bin/*.bat" />
- </tarfileset>
- <!-- Everything else (assumed to be scripts), is executable -->
- <tarfileset dir="${basedir}" prefix="${final.name}-src" mode="755">
- <include name="bin/*"/>
- <exclude name="bin/*.in.sh" />
- <exclude name="bin/*.bat" />
- </tarfileset>
- </tar>
- </target>
-
- <target name="release" depends="artifacts,rat-init"
- description="Create and QC release artifacts">
- <checksum forceOverwrite="yes" todir="${build.dir}" fileext=".md5"
- algorithm="MD5">
- <fileset dir="${build.dir}">
- <include name="*.tar.gz" />
- </fileset>
- </checksum>
- <checksum forceOverwrite="yes" todir="${build.dir}" fileext=".sha"
- algorithm="SHA">
- <fileset dir="${build.dir}">
- <include name="*.tar.gz" />
- </fileset>
- </checksum>
-
- <rat:report xmlns:rat="antlib:org.apache.rat.anttasks"
- reportFile="${build.dir}/${final.name}-bin.rat.txt">
- <tarfileset>
- <gzipresource>
- <file file="${build.dir}/${final.name}-bin.tar.gz" />
- </gzipresource>
- </tarfileset>
- </rat:report>
-
- <rat:report xmlns:rat="antlib:org.apache.rat.anttasks"
- reportFile="${build.dir}/${final.name}-src.rat.txt">
- <tarfileset>
- <gzipresource>
- <file file="${build.dir}/${final.name}-src.tar.gz" />
- </gzipresource>
- </tarfileset>
- </rat:report>
- </target>
-
- <target name="build-test" depends="build" description="Compile test classes">
- <javac
- debug="true"
- debuglevel="${debuglevel}"
- destdir="${test.classes}"
- includeantruntime="false"
- source="${source.version}"
- target="${target.version}"
- encoding="UTF-8">
- <classpath>
- <path refid="cassandra.classpath"/>
- </classpath>
- <src path="${test.unit.src}"/>
- <src path="${test.long.src}"/>
- <src path="${test.pig.src}"/>
- </javac>
-
- <!-- Non-java resources needed by the test suite -->
- <copy todir="${test.classes}">
- <fileset dir="${test.resources}"/>
- </copy>
- </target>
-
- <macrodef name="testmacro">
- <attribute name="suitename" />
- <attribute name="inputdir" />
- <attribute name="timeout" default="${test.timeout}" />
- <attribute name="forkmode" default="perTest"/>
- <element name="optjvmargs" implicit="true" optional="true" />
- <attribute name="filter" default="**/${test.name}.java"/>
- <attribute name="exclude" default="" />
- <attribute name="filelist" default="" />
- <attribute name="poffset" default="0"/>
- <sequential>
- <echo message="running @{suitename} tests"/>
- <mkdir dir="${build.test.dir}/cassandra"/>
- <mkdir dir="${build.test.dir}/output"/>
- <junit fork="on" forkmode="@{forkmode}" failureproperty="testfailed" maxmemory="1024m" timeout="@{timeout}">
- <sysproperty key="net.sourceforge.cobertura.datafile" file="${cobertura.datafile}"/>
- <formatter type="xml" usefile="true"/>
- <formatter type="brief" usefile="false"/>
- <jvmarg value="-Dstorage-config=${test.conf}"/>
- <jvmarg value="-Djava.awt.headless=true"/>
- <jvmarg value="-javaagent:${basedir}/lib/jamm-0.3.0.jar" />
- <jvmarg value="-ea"/>
- <jvmarg value="-Dcassandra.debugrefcount=true"/>
- <jvmarg value="-Xss256k"/>
- <jvmarg value="-Dcassandra.memtable_row_overhead_computation_step=100"/>
- <jvmarg value="-Dcassandra.test.use_prepared=${cassandra.test.use_prepared}"/>
- <jvmarg value="-Dcassandra.jmx.local.port=7199" />
- <jvmarg value="-Dcassandra.test.offsetseed=@{poffset}"/>
- <optjvmargs/>
- <classpath>
- <path refid="cassandra.classpath" />
- <pathelement location="${test.classes}"/>
- <path refid="cobertura.classpath"/>
- <pathelement location="${test.conf}"/>
- <fileset dir="${test.lib}">
- <include name="**/*.jar" />
- </fileset>
- </classpath>
- <batchtest todir="${build.test.dir}/output">
- <fileset dir="@{inputdir}" includes="@{filter}" excludes="@{exclude}"/>
- <filelist dir="@{inputdir}" files="@{filelist}"/>
- </batchtest>
- </junit>
- <junitreport todir="${build.test.dir}">
- <fileset dir="${build.test.dir}/output">
- <include name="TEST-*.xml"/>
- </fileset>
- <report format="frames" todir="${build.test.dir}/junitreport"/>
- </junitreport>
- <fail message="Some @{suitename} test(s) failed.">
- <condition>
- <and>
- <isset property="testfailed"/>
- <not>
- <isset property="ant.test.failure.ignore"/>
- </not>
- </and>
- </condition>
- </fail>
- </sequential>
- </macrodef>
-
- <!--
- This test target is a bit different. It's purpose is to exercise the
- clientutil jar in order to expose any new dependencies. For that
- reason we use the classes from the jar, and a carefully constructed
- classpath which only contains what we expect users to need.
- -->
- <target name="test-clientutil-jar" depends="build-test,jar" description="Test clientutil jar">
- <junit>
- <test name="org.apache.cassandra.serializers.ClientUtilsTest" />
- <formatter type="brief" usefile="false" />
- <classpath>
- <pathelement location="${test.classes}" />
- <pathelement location="${build.dir}/${ant.project.name}-clientutil-${version}.jar" />
- <pathelement location="${build.dir}/${ant.project.name}-thrift-${version}.jar" />
- <pathelement location="${build.lib}/libthrift-0.9.0.jar" />
- <pathelement location="${build.lib}/slf4j-api-1.7.2.jar" />
- <pathelement location="${build.lib}/logback-core-1.1.2.jar" />
- <pathelement location="${build.lib}/logback-classic-1.1.2.jar" />
- <pathelement location="${build.lib}/jackson-core-asl-1.9.2.jar" />
- <pathelement location="${build.lib}/jackson-mapper-asl-1.9.2.jar" />
- <fileset dir="${build.dir.lib}">
- <include name="**/junit*.jar" />
- </fileset>
- </classpath>
- </junit>
- </target>
-
- <target name="testold" depends="build-test" description="Execute unit tests">
- <testmacro suitename="unit" inputdir="${test.unit.src}" exclude="**/pig/*.java" timeout="${test.timeout}">
- <jvmarg value="-Dlegacy-sstable-root=${test.data}/legacy-sstables"/>
- <jvmarg value="-Dcorrupt-sstable-root=${test.data}/corrupt-sstables"/>
- <jvmarg value="-Dmigration-sstable-root=${test.data}/migration-sstables"/>
- <jvmarg value="-Dcassandra.ring_delay_ms=1000"/>
- <jvmarg value="-Dcassandra.tolerate_sstable_size=true"/>
- <jvmarg value="-Djava.io.tmpdir=${tmp.dir}"/>
- </testmacro>
- <fileset dir="${test.unit.src}">
- <exclude name="**/pig/*.java" />
- </fileset>
- </target>
-
- <target name="testlist">
- <testmacro suitename="${testlist.name}" inputdir="${test.unit.src}" filelist="${test.file.list}" poffset="${testlist.offset}" exclude="**/*.java" timeout="${test.timeout}">
- <jvmarg value="-Dlegacy-sstable-root=${test.data}/legacy-sstables"/>
- <jvmarg value="-Dcorrupt-sstable-root=${test.data}/corrupt-sstables"/>
- <jvmarg value="-Dmigration-sstable-root=${test.data}/migration-sstables"/>
- <jvmarg value="-Dcassandra.ring_delay_ms=1000"/>
- <jvmarg value="-Dcassandra.tolerate_sstable_size=true"/>
- <jvmarg value="-Dcassandra.config.loader=org.apache.cassandra.OffsetAwareConfigurationLoader"/>
- </testmacro>
- </target>
-
- <!-- Use this with an FQDN for test class, and a csv list of methods like this:
- ant testsome -Dtest.name=org.apache.cassandra.service.StorageServiceServerTest -Dtest.methods=testRegularMode,testGetAllRangesEmpty
- -->
- <target name="testsome" depends="build-test" description="Execute specific unit tests" >
- <testmacro suitename="unit" inputdir="${test.unit.src}" exclude="**/pig/*.java" timeout="${test.timeout}">
- <test name="${test.name}" methods="${test.methods}"/>
- <jvmarg value="-Dlegacy-sstable-root=${test.data}/legacy-sstables"/>
- <jvmarg value="-Dcorrupt-sstable-root=${test.data}/corrupt-sstables"/>
- <jvmarg value="-Dmigration-sstable-root=${test.data}/migration-sstables"/>
- <jvmarg value="-Dcassandra.ring_delay_ms=1000"/>
- <jvmarg value="-Dcassandra.tolerate_sstable_size=true"/>
- </testmacro>
- </target>
-
- <target name="test-compression" depends="build-test" description="Execute unit tests with sstable compression enabled">
- <testmacro suitename="unit" inputdir="${test.unit.src}" exclude="**/pig/*.java" timeout="${test.timeout}">
- <jvmarg value="-Dlegacy-sstable-root=${test.data}/legacy-sstables"/>
- <jvmarg value="-Dcorrupt-sstable-root=${test.data}/corrupt-sstables"/>
- <jvmarg value="-Dmigration-sstable-root=${test.data}/migration-sstables"/>
- <jvmarg value="-Dcassandra.test.compression=true"/>
- <jvmarg value="-Dcassandra.ring_delay_ms=1000"/>
- <jvmarg value="-Dcassandra.tolerate_sstable_size=true"/>
- </testmacro>
- <fileset dir="${test.unit.src}">
- <exclude name="**/pig/*.java" />
- </fileset>
- </target>
-
- <target name="msg-ser-gen-test" depends="build-test" description="Generates message serializations">
- <testmacro suitename="unit" inputdir="${test.unit.src}"
- timeout="${test.timeout}" filter="**/SerializationsTest.java">
- <jvmarg value="-Dcassandra.test-serialization-writes=True"/>
- </testmacro>
- </target>
-
- <target name="msg-ser-test" depends="build-test" description="Tests message serializations">
- <testmacro suitename="unit" inputdir="${test.unit.src}" timeout="${test.timeout}"
- filter="**/SerializationsTest.java"/>
- </target>
-
- <target name="msg-ser-test-7" depends="build-test" description="Generates message serializations">
- <testmacro suitename="unit" inputdir="${test.unit.src}"
- timeout="${test.timeout}" filter="**/SerializationsTest.java">
- <jvmarg value="-Dcassandra.version=0.7"/>
- </testmacro>
- </target>
-
- <target name="msg-ser-test-10" depends="build-test" description="Tests message serializations on 1.0 messages">
- <testmacro suitename="unit" inputdir="${test.unit.src}"
- timeout="${test.timeout}" filter="**/SerializationsTest.java">
- <jvmarg value="-Dcassandra.version=1.0"/>
- </testmacro>
- </target>
-
- <target name="test-burn" depends="build-test" description="Execute functional tests">
- <testmacro suitename="burn" inputdir="${test.burn.src}"
- timeout="${test.burn.timeout}">
- </testmacro>
- </target>
-
- <target name="long-test" depends="build-test" description="Execute functional tests">
- <testmacro suitename="long" inputdir="${test.long.src}"
- timeout="${test.long.timeout}">
- <jvmarg value="-Dcassandra.ring_delay_ms=1000"/>
- <jvmarg value="-Dcassandra.tolerate_sstable_size=true"/>
- </testmacro>
- </target>
-
- <target name="cql-test" depends="build-test" description="Execute CQL tests">
- <sequential>
- <echo message="running CQL tests"/>
- <mkdir dir="${build.test.dir}/cassandra"/>
- <mkdir dir="${build.test.dir}/output"/>
- <junit fork="on" forkmode="once" failureproperty="testfailed" maxmemory="1024m" timeout="${test.timeout}">
- <formatter type="brief" usefile="false"/>
- <jvmarg value="-Dstorage-config=${test.conf}"/>
- <jvmarg value="-Djava.awt.headless=true"/>
- <jvmarg value="-javaagent:${basedir}/lib/jamm-0.3.0.jar" />
- <jvmarg value="-ea"/>
- <jvmarg value="-Xss256k"/>
- <jvmarg value="-Dcassandra.memtable_row_overhead_computation_step=100"/>
- <jvmarg value="-Dcassandra.test.use_prepared=${cassandra.test.use_prepared}"/>
- <classpath>
- <path refid="cassandra.classpath" />
- <pathelement location="${test.classes}"/>
- <path refid="cobertura.classpath"/>
- <pathelement location="${test.conf}"/>
- <fileset dir="${test.lib}">
- <include name="**/*.jar" />
- </fileset>
- </classpath>
- <batchtest todir="${build.test.dir}/output">
- <fileset dir="${test.unit.src}" includes="**/cql3/*Test.java">
- <contains text="CQLTester" casesensitive="yes"/>
- </fileset>
- </batchtest>
- </junit>
- <fail message="Some CQL test(s) failed.">
- <condition>
- <and>
- <isset property="testfailed"/>
- <not>
- <isset property="ant.test.failure.ignore"/>
- </not>
- </and>
- </condition>
- </fail>
- </sequential>
- </target>
-
- <target name="cql-test-some" depends="build-test" description="Execute specific CQL tests" >
- <sequential>
- <echo message="running ${test.methods} tests from ${test.name}"/>
- <mkdir dir="${build.test.dir}/cassandra"/>
- <mkdir dir="${build.test.dir}/output"/>
- <junit fork="on" forkmode="once" failureproperty="testfailed" maxmemory="1024m" timeout="${test.timeout}">
- <sysproperty key="net.sourceforge.cobertura.datafile" file="${cobertura.datafile}"/>
- <formatter type="brief" usefile="false"/>
- <jvmarg value="-Dstorage-config=${test.conf}"/>
- <jvmarg value="-Djava.awt.headless=true"/>
- <jvmarg value="-javaagent:${basedir}/lib/jamm-0.3.0.jar" />
- <jvmarg value="-ea"/>
- <jvmarg value="-Xss256k"/>
- <jvmarg value="-Dcassandra.test.use_prepared=${cassandra.test.use_prepared}"/>
- <jvmarg value="-Dcassandra.memtable_row_overhead_computation_step=100"/>
- <classpath>
- <path refid="cassandra.classpath" />
- <pathelement location="${test.classes}"/>
- <path refid="cobertura.classpath"/>
- <pathelement location="${test.conf}"/>
- <fileset dir="${test.lib}">
- <include name="**/*.jar" />
- </fileset>
- </classpath>
- <test name="org.apache.cassandra.cql3.${test.name}" methods="${test.methods}" todir="${build.test.dir}/output"/>
- </junit>
- </sequential>
- </target>
-
- <target name="pig-test" depends="build-test,maven-ant-tasks-retrieve-pig-test" description="Excute Pig tests">
- <testmacro suitename="pig" inputdir="${test.pig.src}"
- timeout="1200000">
- </testmacro>
- </target>
-
- <target name="test-all"
- depends="test,long-test,test-compression,pig-test,test-clientutil-jar"
- description="Run all tests" />
-
- <!-- instruments the classes to later create code coverage reports -->
- <target name="cobertura-instrument" depends="build,build-test">
- <taskdef resource="tasks.properties">
- <classpath refid="cobertura.classpath"/>
- <classpath refid="cassandra.classpath"/>
- </taskdef>
-
- <delete file="${cobertura.datafile}"/>
-
- <cobertura-instrument todir="${cobertura.classes.dir}" datafile="${cobertura.datafile}">
- <ignore regex="ch.qos.logback.*"/>
-
- <fileset dir="${build.classes.main}">
- <include name="**/*.class"/>
- <exclude name="**/*Test.class"/>
- <exclude name="**/*TestCase.class"/>
- <exclude name="**/test/*.class"/>
- <!-- cobertura modifies the serialVersionUID of classes. Some of our unit tests rely on backward
- wire compatability of these classes. It was easier to exlude them from instrumentation than to
- force their serialVersionUIDs. -->
- <exclude name="**/*Token.class"/>
- <exclude name="${cobertura.excludes}"/>
- </fileset>
-
- </cobertura-instrument>
- </target>
-
- <!-- create both html and xml code coverage reports -->
- <target name="cobertura-report">
- <cobertura-report format="html" destdir="${cobertura.report.dir}" srcdir="${build.src.java}"
- datafile="${cobertura.datafile}"/>
- <cobertura-report format="xml" destdir="${cobertura.report.dir}" srcdir="${build.src.java}"
- datafile="${cobertura.datafile}"/>
- </target>
-
- <!--
- License audit tool
- -->
- <target name="rat-init" depends="maven-ant-tasks-init">
- <artifact:dependencies pathId="rat.classpath">
- <dependency groupId="org.apache.rat" artifactId="apache-rat-tasks" version="0.6" />
- </artifact:dependencies>
- <typedef uri="antlib:org.apache.rat.anttasks" classpathref="rat.classpath"/>
- </target>
-
- <target name="rat-check" depends="rat-init">
- <rat:report xmlns:rat="antlib:org.apache.rat.anttasks"
- reportFile="${build.dir}/rat-report.log">
- <fileset dir="." excludesfile=".rat-excludes" />
- </rat:report>
- <condition property="rat.passed">
- <isfileselected file="${build.dir}/rat-report.log">
- <containsregexp expression="^0 Unknown Licenses"/>
- </isfileselected>
- </condition>
- <fail unless="rat.passed">Unknown licenses: See build/rat-report.log.</fail>
- </target>
-
- <target name="rat-write" depends="rat-init">
- <echo>RAT: invoking addLicense to write missing headers</echo>
- <java classname="org.apache.rat.Report" fork="true"
- output="${build.dir}/rat-report.log">
- <classpath refid="rat.classpath" />
- <arg value="-a" />
- <arg value="--force" />
- <arg value="." />
- </java>
- </target>
-
- <target name="javadoc" depends="init" description="Create javadoc">
- <create-javadoc destdir="${javadoc.dir}">
- <filesets>
- <fileset dir="${build.src.java}" defaultexcludes="yes">
- <include name="org/apache/**/*.java"/>
- </fileset>
- <fileset dir="${interface.thrift.gen-java}" defaultexcludes="yes">
- <include name="org/apache/**/*.java"/>
- </fileset>
- </filesets>
- </create-javadoc>
- </target>
-
- <!-- Split test classes into n buckets and run across processes -->
- <target name="test" depends="build-test" description="Parallel Test Runner">
- <path id="all-test-classes-path">
- <fileset dir="${test.unit.src}" excludes="**/pig/*.java" includes="**/${test.name}.java" />
- </path>
- <property name="all-test-classes" refid="all-test-classes-path"/>
- <script language="javascript"> <![CDATA[
- var Integer = java.lang.Integer;
- sep = project.getProperty("path.separator");
- all = project.getProperty("all-test-classes").split(sep);
- dir = project.getProperty("test.unit.src");
-
- numRunners = parseInt(project.getProperty("test.runners"));
-
- buckets = new Array(numRunners);
- for (i = 0; i < all.length; i++) {
- bucketNum = i % numRunners;
- if (buckets[bucketNum] == undefined)
- buckets[bucketNum] = "";
- else
- buckets[bucketNum] += ",";
-
- buckets[bucketNum] += all[i];
- }
-
-
- var p = project.createTask('parallel');
- p.setThreadCount(numRunners);
-
- for (i = 0; i < buckets.length; i++) {
-
- if (buckets[i] == undefined) continue;
-
- task = project.createTask( 'antcall' );
-
- task.setTarget("testlist");
- param = task.createParam();
- param.setName("test.file.list");
- param.setValue("" + buckets[i]);
-
- param = task.createParam();
- param.setName("testlist.name");
- param.setValue("test bucket "+i);
-
- param = task.createParam();
- param.setName("testlist.offset");
- param.setValue("" + i);
-
- p.addTask(task);
- }
-
- p.perform();
-
-]]> </script>
- </target>
-
- <pathconvert property="eclipse.project.name">
- <path path="${basedir}" />
- <regexpmapper from="^.*/([^/]+)$$" to="\1" handledirsep="yes" />
- </pathconvert>
-
- <!-- Generate IDEA project description files -->
- <target name="generate-idea-files" depends="build-test" description="Generate IDEA files">
- <echo file="${eclipse.project.name}.iml"><![CDATA[<?xml version="1.0" encoding="UTF-8"?>
-<module type="JAVA_MODULE" version="4">
- <component name="NewModuleRootManager" LANGUAGE_LEVEL="JDK_1_7" inherit-compiler-output="false">
- <output url="file://$MODULE_DIR$/.idea/out/main" />
- <output-test url="file://$MODULE_DIR$/.idea/out/test" />
- <exclude-output />
- <content url="file://$MODULE_DIR$">
- <sourceFolder url="file://$MODULE_DIR$/src/java" isTestSource="false" />
- <sourceFolder url="file://$MODULE_DIR$/src/gen-java" isTestSource="false" />
- <sourceFolder url="file://$MODULE_DIR$/src/resources" type="java-resource" />
- <sourceFolder url="file://$MODULE_DIR$/interface/thrift/gen-java" isTestSource="false" />
- <sourceFolder url="file://$MODULE_DIR$/tools/stress/src" isTestSource="false" />
- <sourceFolder url="file://$MODULE_DIR$/test/unit" isTestSource="true" />
- <sourceFolder url="file://$MODULE_DIR$/test/long" isTestSource="true" />
- <sourceFolder url="file://$MODULE_DIR$/test/pig" isTestSource="true" />
- <sourceFolder url="file://$MODULE_DIR$/test/microbench" isTestSource="true" />
- <sourceFolder url="file://$MODULE_DIR$/test/resources" type="java-test-resource" />
- <excludeFolder url="file://$MODULE_DIR$/.idea" />
- <excludeFolder url="file://$MODULE_DIR$/.settings" />
- <excludeFolder url="file://$MODULE_DIR$/build" />
- <excludeFolder url="file://$MODULE_DIR$/data"/>
- <excludeFolder url="file://$MODULE_DIR$/logs"/>
- </content>
- <orderEntry type="inheritedJdk" />
- <orderEntry type="sourceFolder" forTests="false" />]]>
- </echo>
-
- <path id="idea-project-libs-path">
- <fileset dir="lib">
- <include name="**/*.jar" />
- </fileset>
- <fileset dir="build/lib/jars">
- <include name="**/*.jar" />
- </fileset>
- <fileset dir="tools/lib">
- <include name="**/*.jar" />
- </fileset>
- </path>
- <mkdir dir=".idea"/>
- <mkdir dir=".idea/libraries"/>
- <copy todir=".idea">
- <fileset dir="ide/idea"/>
- </copy>
- <property name="idea-project-libs" refid="idea-project-libs-path"/>
- <script language="javascript" classpathref="cassandra.classpath"> <![CDATA[
- var File = java.io.File;
- var FilenameUtils = Packages.org.apache.commons.io.FilenameUtils;
- var basedir = project.getProperty("basedir");
- jars = project.getProperty("idea-project-libs").split(project.getProperty("path.separator"));
-
- cp = "\n";
- for (i=0; i< jars.length; i++) {
- basename = FilenameUtils.getBaseName(jars[i]);
- srcjar = basename + '-sources.jar';
- srcdir = FilenameUtils.concat(project.getProperty("build.dir.lib"), 'sources');
- srcfile = new File(FilenameUtils.concat(srcdir, srcjar));
-
- cp += ' <orderEntry type="library" name="' + basename + '" level="project" />\n';
-
- lib = '';
- lib += '<component name="libraryTable">\n';
- lib += ' <library name="' + basename + '">\n';
- lib += ' <CLASSES>\n';
- lib += ' <root url="jar://' + jars[i].replace(basedir,"$PROJECT_DIR$") + '!/" />\n';
- lib += ' </CLASSES>\n';
- lib += ' <JAVADOC />\n';
- if (srcfile.exists()) {
- lib += ' <SOURCES>\n';
- lib += ' <root url="jar://' + srcfile.getAbsolutePath().replace(basedir,"$PROJECT_DIR$") + '!/" />\n';
- lib += ' </SOURCES>\n';
- } else {
- lib += ' <SOURCES />\n';
- }
- lib += ' </library>\n';
- lib += '</component>';
-
- echo = project.createTask("echo");
- echo.setMessage(lib);
- echo.setFile(new File(".idea/libraries/" + basename.replace('-','_').replace('.','_') + ".xml"));
- echo.setAppend(false);
- echo.perform();
- }
-
- echo = project.createTask("echo");
- echo.setMessage(cp);
- echo.setFile(new File(project.getProperty("eclipse.project.name") + ".iml"));
- echo.setAppend(true);
- echo.perform();
- ]]> </script>
- <echo file="${eclipse.project.name}.iml" append="true"><![CDATA[
- </component>
-</module>]]>
- </echo>
- <echo file=".idea/.name">Apache Cassandra ${eclipse.project.name}</echo>
- <echo file=".idea/modules.xml"><![CDATA[<?xml version="1.0" encoding="UTF-8"?>
-<project version="4">
- <component name="ProjectModuleManager">
- <modules>
- <module fileurl="file://$PROJECT_DIR$/]]>${eclipse.project.name}<![CDATA[.iml" filepath="$PROJECT_DIR$/]]>${eclipse.project.name}<![CDATA[.iml" />
- </modules>
- </component>
-</project>]]></echo>
- <echo file=".idea/misc.xml"><![CDATA[<?xml version="1.0" encoding="UTF-8"?>
-<project version="4">
-<component name="ProjectRootManager" version="2" languageLevel="JDK_1_7" default="false" assert-keyword="true" jdk-15="true" project-jdk-name="1.7" project-jdk-type="JavaSDK" />
-</project>]]></echo>
- <echo file=".idea/vcs.xml"><![CDATA[<?xml version="1.0" encoding="UTF-8"?>
-<project version="4">
- <component name="VcsDirectoryMappings">
- <mapping directory="$PROJECT_DIR$" vcs="Git" />
- </component>
-</project>]]></echo>
- <echo file=".idea/workspace.xml"><![CDATA[<?xml version="1.0" encoding="UTF-8"?>
-<project version="4">
- <component name="RunManager" selected="Application.Cassandra">
- <configuration default="true" type="Application" factoryName="Application">
- <extension name="coverage" enabled="false" merge="false" sample_coverage="true" runner="idea" />
- <option name="MAIN_CLASS_NAME" value="" />
- <option name="VM_PARAMETERS" value="-Dcassandra.config=file://$PROJECT_DIR$/conf/cassandra.yaml -Dcassandra.storagedir=$PROJECT_DIR$/data -Dlogback.configurationFile=file://$PROJECT_DIR$/conf/logback.xml -Dcassandra.logdir=$PROJECT_DIR$/data/logs -ea" />
- <option name="PROGRAM_PARAMETERS" value="" />
- <option name="WORKING_DIRECTORY" value="" />
- <option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
- <option name="ALTERNATIVE_JRE_PATH" value="" />
- <option name="ENABLE_SWING_INSPECTOR" value="false" />
- <option name="ENV_VARIABLES" />
- <option name="PASS_PARENT_ENVS" value="true" />
- <module name="" />
- <envs />
- <method>
- <option name="AntTarget" enabled="true" antfile="file://$PROJECT_DIR$/build.xml" target="gen-cql3-grammar" />
- <option name="AntTarget" enabled="true" antfile="file://$PROJECT_DIR$/build.xml" target="gen-thrift-java" />
- <option name="Make" enabled="true" />
- </method>
- </configuration>
- <configuration default="true" type="JUnit" factoryName="JUnit">
- <extension name="coverage" enabled="false" merge="false" sample_coverage="true" runner="idea" />
- <module name="" />
- <option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
- <option name="ALTERNATIVE_JRE_PATH" value="" />
- <option name="PACKAGE_NAME" />
- <option name="MAIN_CLASS_NAME" value="" />
- <option name="METHOD_NAME" value="" />
- <option name="TEST_OBJECT" value="class" />
- <option name="VM_PARAMETERS" value="-Dcassandra.config=file://$PROJECT_DIR$/test/conf/cassandra.yaml -Dlogback.configurationFile=file://$PROJECT_DIR$/test/conf/logback-test.xml -Dcassandra.logdir=$PROJECT_DIR$/build/test/logs -ea" />
- <option name="PARAMETERS" value="" />
- <option name="WORKING_DIRECTORY" value="" />
- <option name="ENV_VARIABLES" />
- <option name="PASS_PARENT_ENVS" value="true" />
- <option name="TEST_SEARCH_SCOPE">
- <value defaultName="singleModule" />
- </option>
- <envs />
- <patterns />
- <method>
- <option name="AntTarget" enabled="true" antfile="file://$PROJECT_DIR$/build.xml" target="gen-cql3-grammar" />
- <option name="AntTarget" enabled="true" antfile="file://$PROJECT_DIR$/build.xml" target="gen-thrift-java" />
- <option name="Make" enabled="true" />
- </method>
- </configuration>
- <configuration default="false" name="Cassandra" type="Application" factoryName="Application">
- <extension name="coverage" enabled="false" merge="false" sample_coverage="true" runner="idea" />
- <option name="MAIN_CLASS_NAME" value="org.apache.cassandra.service.CassandraDaemon" />
- <option name="VM_PARAMETERS" value="-Dcassandra-foreground=yes -Dcassandra.config=file://$PROJECT_DIR$/conf/cassandra.yaml -Dcassandra.storagedir=$PROJECT_DIR$/data -Dlogback.configurationFile=file://$PROJECT_DIR$/conf/logback.xml -Dcassandra.logdir=$PROJECT_DIR$/data/logs -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=7199 -Dcom.sun.management.jmxremote.local.only=false -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false -ea -Xmx1G" />
- <option name="PROGRAM_PARAMETERS" value="" />
- <option name="WORKING_DIRECTORY" value="file://$PROJECT_DIR$" />
- <option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
- <option name="ALTERNATIVE_JRE_PATH" value="" />
- <option name="ENABLE_SWING_INSPECTOR" value="false" />
- <option name="ENV_VARIABLES" />
- <option name="PASS_PARENT_ENVS" value="true" />
- <module name="]]>${eclipse.project.name}<![CDATA[" />
- <envs />
- <RunnerSettings RunnerId="Debug">
- <option name="DEBUG_PORT" value="" />
- <option name="TRANSPORT" value="0" />
- <option name="LOCAL" value="true" />
- </RunnerSettings>
- <RunnerSettings RunnerId="Run" />
- <ConfigurationWrapper RunnerId="Debug" />
- <ConfigurationWrapper RunnerId="Run" />
- <method>
- <option name="AntTarget" enabled="true" antfile="file://$PROJECT_DIR$/build.xml" target="gen-cql3-grammar" />
- <option name="AntTarget" enabled="true" antfile="file://$PROJECT_DIR$/build.xml" target="gen-thrift-java" />
- <option name="Make" enabled="true" />
- </method>
- </configuration>
- </component>
- <component name="antWorkspaceConfiguration">
- <option name="IS_AUTOSCROLL_TO_SOURCE" value="false" />
- <option name="FILTER_TARGETS" value="false" />
- <buildFile url="file://$PROJECT_DIR$/build.xml">
- <expanded value="true" />
- </buildFile>
- </component>
-</project>
- ]]>
- </echo>
- </target>
-
- <!-- Generate Eclipse project description files -->
- <target name="generate-eclipse-files" depends="build-test" description="Generate eclipse files">
- <echo file=".project"><![CDATA[<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
- <name>${eclipse.project.name}</name>
- <comment></comment>
- <projects>
- </projects>
- <buildSpec>
- <buildCommand>
- <name>org.eclipse.jdt.core.javabuilder</name>
- </buildCommand>
- </buildSpec>
- <natures>
- <nature>org.eclipse.jdt.core.javanature</nature>
- </natures>
-</projectDescription>]]>
- </echo>
- <echo file=".classpath"><![CDATA[<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
- <classpathentry kind="src" path="src/java"/>
- <classpathentry kind="src" path="src/resources"/>
- <classpathentry kind="src" path="src/gen-java"/>
- <classpathentry kind="src" output="build/test/classes" path="test/unit"/>
- <classpathentry kind="src" output="build/test/classes" path="test/long"/>
- <classpathentry kind="src" output="build/test/classes" path="test/pig"/>
- <classpathentry kind="src" output="build/test/classes" path="test/resources" />
- <classpathentry kind="src" path="tools/stress/src"/>
- <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
- <classpathentry kind="output" path="build/classes/main"/>
- <classpathentry kind="lib" path="build/classes/thrift" sourcepath="interface/thrift/gen-java/"/>
- <classpathentry kind="lib" path="test/conf"/>
-]]>
- </echo>
- <path id="eclipse-project-libs-path">
- <fileset dir="lib">
- <include name="**/*.jar" />
- </fileset>
- <fileset dir="build/lib/jars">
- <include name="**/*.jar" />
- </fileset>
- <fileset dir="tools/lib">
- <include name="**/*.jar" />
- </fileset>
- </path>
- <property name="eclipse-project-libs" refid="eclipse-project-libs-path"/>
- <script language="javascript" classpathref="cassandra.classpath"> <![CDATA[
- var File = java.io.File;
- var FilenameUtils = Packages.org.apache.commons.io.FilenameUtils;
- jars = project.getProperty("eclipse-project-libs").split(project.getProperty("path.separator"));
-
- cp = "";
- for (i=0; i< jars.length; i++) {
- srcjar = FilenameUtils.getBaseName(jars[i]) + '-sources.jar';
- srcdir = FilenameUtils.concat(project.getProperty("build.dir.lib"), 'sources');
- srcfile = new File(FilenameUtils.concat(srcdir, srcjar));
-
- cp += ' <classpathentry kind="lib" path="' + jars[i] + '"';
- if (srcfile.exists()) {
- cp += ' sourcepath="' + srcfile.getAbsolutePath() + '"';
- }
- cp += '/>\n';
- }
-
- cp += '</classpath>';
-
- echo = project.createTask("echo");
- echo.setMessage(cp);
- echo.setFile(new File(".classpath"));
- echo.setAppend(true);
- echo.perform();
- ]]> </script>
- <mkdir dir=".settings" />
- </target>
-
- <pathconvert property="eclipse.project.name">
- <path path="${basedir}" />
- <regexpmapper from="^.*/([^/]+)$$" to="\1" handledirsep="yes" />
- </pathconvert>
-
- <!-- Clean Eclipse project description files -->
- <target name="clean-eclipse-files">
- <delete file=".project" />
- <delete file=".classpath" />
- <delete dir=".settings" />
- <delete dir=".externalToolBuilders" />
- <delete dir="build/eclipse-classes" />
- </target>
-
- <!-- Publish artifacts to Maven repositories -->
- <target name="mvn-install"
- depends="maven-declare-dependencies,artifacts,jar,sources-jar,javadoc-jar"
- description="Installs the artifacts in the Maven Local Repository">
-
- <!-- the parent -->
- <install pomFile="${build.dir}/${final.name}-parent.pom"
- file="${build.dir}/${final.name}-parent.pom"
- packaging="pom"/>
-
- <!-- the distribution -->
- <install pomFile="${build.dir}/${final.name}-dist.pom"
- file="${build.dir}/${final.name}-dist.pom"
- packaging="pom"/>
- <install pomFile="${build.dir}/${final.name}-dist.pom"
- file="${build.dir}/${final.name}-bin.tar.gz"
- packaging="tar.gz"
- classifier="bin"/>
- <install pomFile="${build.dir}/${final.name}-dist.pom"
- file="${build.dir}/${final.name}-src.tar.gz"
- packaging="tar.gz"
- classifier="src"/>
-
- <!-- the cassandra-thrift jar -->
- <install pomFile="${build.dir}/${ant.project.name}-thrift-${version}.pom"
- file="${build.dir}/${ant.project.name}-thrift-${version}.jar"/>
- <install pomFile="${build.dir}/${ant.project.name}-thrift-${version}.pom"
- file="${build.dir}/${ant.project.name}-thrift-${version}-sources.jar"
- classifier="sources"/>
- <install pomFile="${build.dir}/${ant.project.name}-thrift-${version}.pom"
- file="${build.dir}/${ant.project.name}-thrift-${version}-javadoc.jar"
- classifier="javadoc"/>
-
- <!-- the cassandra-clientutil jar -->
- <install pomFile="${build.dir}/${ant.project.name}-clientutil-${version}.pom"
- file="${build.dir}/${ant.project.name}-clientutil-${version}.jar"/>
- <install pomFile="${build.dir}/${ant.project.name}-clientutil-${version}.pom"
- file="${build.dir}/${ant.project.name}-clientutil-${version}-sources.jar"
- classifier="sources"/>
- <install pomFile="${build.dir}/${ant.project.name}-clientutil-${version}.pom"
- file="${build.dir}/${ant.project.name}-clientutil-${version}-javadoc.jar"
- classifier="javadoc"/>
-
- <!-- the cassandra-all jar -->
- <install pomFile="${build.dir}/${final.name}.pom"
- file="${build.dir}/${final.name}.jar"/>
- <install pomFile="${build.dir}/${final.name}.pom"
- file="${build.dir}/${final.name}-sources.jar"
- classifier="sources"/>
- <install pomFile="${build.dir}/${final.name}.pom"
- file="${build.dir}/${final.name}-javadoc.jar"
- classifier="javadoc"/>
- </target>
-
- <target name="publish"
- depends="mvn-install"
- if="release"
- description="Publishes the artifacts to the Maven repository">
-
- <!-- the parent -->
- <deploy pomFile="${build.dir}/${final.name}-parent.pom"
- file="${build.dir}/${final.name}-parent.pom"
- packaging="pom"/>
-
- <!-- the distribution -->
- <deploy pomFile="${build.dir}/${final.name}-dist.pom"
- file="${build.dir}/${final.name}-dist.pom"
- packaging="pom"/>
- <deploy pomFile="${build.dir}/${final.name}-dist.pom"
- file="${build.dir}/${final.name}-bin.tar.gz"
- packaging="tar.gz"
- classifier="bin"/>
- <deploy pomFile="${build.dir}/${final.name}-dist.pom"
- file="${build.dir}/${final.name}-src.tar.gz"
- packaging="tar.gz"
- classifier="src"/>
-
- <!-- the cassandra-thrift jar -->
- <deploy pomFile="${build.dir}/${ant.project.name}-thrift-${version}.pom"
- file="${build.dir}/${ant.project.name}-thrift-${version}.jar"/>
- <deploy pomFile="${build.dir}/${ant.project.name}-thrift-${version}.pom"
- file="${build.dir}/${ant.project.name}-thrift-${version}-sources.jar"
- classifier="sources"/>
- <deploy pomFile="${build.dir}/${ant.project.name}-thrift-${version}.pom"
- file="${build.dir}/${ant.project.name}-thrift-${version}-javadoc.jar"
- classifier="javadoc"/>
-
- <!-- the cassandra-clientutil jar -->
- <deploy pomFile="${build.dir}/${ant.project.name}-clientutil-${version}.pom"
- file="${build.dir}/${ant.project.name}-clientutil-${version}.jar"/>
- <deploy pomFile="${build.dir}/${ant.project.name}-clientutil-${version}.pom"
- file="${build.dir}/${ant.project.name}-clientutil-${version}-sources.jar"
- classifier="sources"/>
- <deploy pomFile="${build.dir}/${ant.project.name}-clientutil-${version}.pom"
- file="${build.dir}/${ant.project.name}-clientutil-${version}-javadoc.jar"
- classifier="javadoc"/>
- <!-- the cassandra-all jar -->
- <deploy pomFile="${build.dir}/${final.name}.pom"
- file="${build.dir}/${final.name}.jar"/>
- <deploy pomFile="${build.dir}/${final.name}.pom"
- file="${build.dir}/${final.name}-sources.jar"
- classifier="sources"/>
- <deploy pomFile="${build.dir}/${final.name}.pom"
- file="${build.dir}/${final.name}-javadoc.jar"
- classifier="javadoc"/>
- </target>
-</project>
diff --git a/app-admin/scylla-tools/scylla-tools-1.7.4.ebuild b/app-admin/scylla-tools/scylla-tools-1.7.4.ebuild
new file mode 100644
index 0000000..773749f
--- /dev/null
+++ b/app-admin/scylla-tools/scylla-tools-1.7.4.ebuild
@@ -0,0 +1,84 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+EANT_BUILD_TARGET="jar"
+EGIT_COMMIT="scylla-${PV}"
+EGIT_REPO_URI="https://github.com/scylladb/scylla-tools-java.git"
+PYTHON_COMPAT=( python2_7 )
+JAVA_PKG_IUSE="source doc"
+
+inherit java-pkg-2 java-ant-2 git-r3 python-single-r1
+
+DESCRIPTION="scylla tools (Java part)"
+HOMEPAGE="https://github.com/scylladb/scylla-tools-java"
+#SRC_URI="https://github.com/scylladb/${PN}-java/archive/${MY_P}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+CDEPEND="dev-java/antlr:3.5"
+RDEPEND="
+ ${CDEPEND}
+ ${PYTHON_DEPS}
+ >=virtual/jre-1.8"
+DEPEND="
+ ${CDEPEND}
+ >=virtual/jdk-1.8"
+
+#S="${WORKDIR}/${PN}-java-scylla-${PV}"
+
+RESTRICT="test"
+
+src_prepare() {
+ default
+ find examples -type f -name \*.xml -exec rm -v {} \; || die
+}
+
+src_install() {
+ # maintainer's note: change/check me on version bumps
+ local origin_version="3.0.8"
+
+ python_setup 2.7
+ python_domodule pylib/cqlshlib
+
+ dodoc -r lib/licenses
+
+ insinto /etc/scylla/cassandra
+ doins conf/cassandra-env.sh
+ doins conf/logback.xml
+ doins conf/logback-tools.xml
+ doins conf/jvm.options
+
+ insinto /etc/bash_completion.d
+ doins dist/common/nodetool-completion
+
+ dobin bin/nodetool
+ dobin bin/sstableloader
+ dobin bin/cqlsh
+ dobin bin/cqlsh.py
+
+ dobin tools/bin/cassandra-stress
+ dobin tools/bin/filter_cassandra_attributes.py
+ dobin tools/bin/cassandra_attributes.py
+ dobin tools/bin/cassandra-stressd
+ dobin tools/bin/sstabledump
+ dobin tools/bin/sstablelevelreset
+ dobin tools/bin/sstablemetadata
+ dobin tools/bin/sstablerepairedset
+
+ insinto /usr/share/scylla/cassandra
+ doins dist/common/cassandra.in.sh
+ doins "build/apache-cassandra-${origin_version}-SNAPSHOT.jar"
+ doins "build/apache-cassandra-thrift-${origin_version}-SNAPSHOT.jar"
+ doins "build/scylla-tools-${origin_version}-SNAPSHOT.jar"
+ doins build/tools/lib/stress.jar
+ #
+ dosym /usr/share/scylla/cassandra/apache-cassandra-${origin_version}-SNAPSHOT.jar /usr/share/scylla/cassandra/apache-cassandra.jar
+
+ insinto /usr/share/scylla/cassandra/lib
+ doins lib/*.jar
+ doins lib/*.zip
+}
diff --git a/app-admin/scylla-tools/scylla-tools-9999.ebuild b/app-admin/scylla-tools/scylla-tools-9999.ebuild
new file mode 100644
index 0000000..1fa4044
--- /dev/null
+++ b/app-admin/scylla-tools/scylla-tools-9999.ebuild
@@ -0,0 +1,84 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+EANT_BUILD_TARGET="jar"
+#EGIT_COMMIT="scylla-${PV}"
+EGIT_REPO_URI="https://github.com/scylladb/scylla-tools-java.git"
+PYTHON_COMPAT=( python2_7 )
+JAVA_PKG_IUSE="source doc"
+
+inherit java-pkg-2 java-ant-2 git-r3 python-single-r1
+
+DESCRIPTION="scylla tools (Java part)"
+HOMEPAGE="https://github.com/scylladb/scylla-tools-java"
+#SRC_URI="https://github.com/scylladb/${PN}-java/archive/${MY_P}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+CDEPEND="dev-java/antlr:3.5"
+RDEPEND="
+ ${CDEPEND}
+ ${PYTHON_DEPS}
+ >=virtual/jre-1.8"
+DEPEND="
+ ${CDEPEND}
+ >=virtual/jdk-1.8"
+
+#S="${WORKDIR}/${PN}-java-scylla-${PV}"
+
+RESTRICT="test"
+
+src_prepare() {
+ default
+ find examples -type f -name \*.xml -exec rm -v {} \; || die
+}
+
+src_install() {
+ # maintainer's note: change/check me on version bumps
+ local origin_version="3.0.8"
+
+ python_setup 2.7
+ python_domodule pylib/cqlshlib
+
+ dodoc -r lib/licenses
+
+ insinto /etc/scylla/cassandra
+ doins conf/cassandra-env.sh
+ doins conf/logback.xml
+ doins conf/logback-tools.xml
+ doins conf/jvm.options
+
+ insinto /etc/bash_completion.d
+ doins dist/common/nodetool-completion
+
+ dobin bin/nodetool
+ dobin bin/sstableloader
+ dobin bin/cqlsh
+ dobin bin/cqlsh.py
+
+ dobin tools/bin/cassandra-stress
+ dobin tools/bin/filter_cassandra_attributes.py
+ dobin tools/bin/cassandra_attributes.py
+ dobin tools/bin/cassandra-stressd
+ dobin tools/bin/sstabledump
+ dobin tools/bin/sstablelevelreset
+ dobin tools/bin/sstablemetadata
+ dobin tools/bin/sstablerepairedset
+
+ insinto /usr/share/scylla/cassandra
+ doins dist/common/cassandra.in.sh
+ doins "build/apache-cassandra-${origin_version}-SNAPSHOT.jar"
+ doins "build/apache-cassandra-thrift-${origin_version}-SNAPSHOT.jar"
+ doins "build/scylla-tools-${origin_version}-SNAPSHOT.jar"
+ doins build/tools/lib/stress.jar
+ #
+ dosym /usr/share/scylla/cassandra/apache-cassandra-${origin_version}-SNAPSHOT.jar /usr/share/scylla/cassandra/apache-cassandra.jar
+
+ insinto /usr/share/scylla/cassandra/lib
+ doins lib/*.jar
+ doins lib/*.zip
+} \ No newline at end of file