Name: neo4j # NOTE: Newer release use scala 2.11+ Version: 2.2.8 Release: 1%{?dist} Summary: Java Graph Database License: AGPLv3+ and ASL 2.0 and GPLv3+ and CC-BY URL: http://www.neo4j.org/ Source0: https://github.com/neo4j/neo4j/archive/%{version}.tar.gz # Use maven-antrun-plugin instead of scala*-maven-plugin Patch0: neo4j-2.2.8-antrun-plugin.patch # Disable use of unavailable neo4j-cypher-compiler-{1.9:2.0.4,2.0:2.0.4,2.1:2.1.8} Patch1: neo4j-2.2.8-disable-old-compiler-support.patch # Support for jetty 9.3+ Patch2: neo4j-2.2.8-jetty.patch BuildRequires: maven-local BuildRequires: mvn(ant-contrib:ant-contrib) BuildRequires: mvn(ch.qos.logback:logback-access) BuildRequires: mvn(ch.qos.logback:logback-classic) BuildRequires: mvn(ch.qos.logback:logback-core) BuildRequires: mvn(com.google.code.gson:gson) BuildRequires: mvn(com.googlecode.concurrentlinkedhashmap:concurrentlinkedhashmap-lru) BuildRequires: mvn(com.sun.jersey:jersey-client:1.19) BuildRequires: mvn(com.sun.jersey:jersey-server:1.19) BuildRequires: mvn(com.sun.jersey:jersey-servlet:1.19) BuildRequires: mvn(com.sun.jersey.contribs:jersey-multipart:1.19) BuildRequires: mvn(commons-codec:commons-codec) BuildRequires: mvn(commons-configuration:commons-configuration) BuildRequires: mvn(commons-digester:commons-digester) BuildRequires: mvn(commons-io:commons-io) BuildRequires: mvn(javax.servlet:javax.servlet-api) BuildRequires: mvn(javax.ws.rs:jsr311-api) BuildRequires: mvn(jline:jline:1.0) BuildRequires: mvn(junit:junit) BuildRequires: mvn(net.sf.opencsv:opencsv) BuildRequires: mvn(org.apache.ant:ant) BuildRequires: mvn(org.apache.ant:ant-apache-regexp) BuildRequires: mvn(org.apache.ant:ant-launcher) BuildRequires: mvn(org.apache.commons:commons-lang3) BuildRequires: mvn(org.apache.felix:org.osgi.compendium) BuildRequires: mvn(org.apache.felix:org.osgi.core) BuildRequires: mvn(org.apache.geronimo.specs:geronimo-jta_1.1_spec) BuildRequires: mvn(org.apache.geronimo.specs:specs:pom:) BuildRequires: mvn(org.apache.lucene:lucene-core:3) BuildRequires: mvn(org.apache.maven.plugins:maven-antrun-plugin) BuildRequires: mvn(org.apache.maven.plugins:maven-failsafe-plugin) BuildRequires: mvn(org.bouncycastle:bcprov-jdk16) BuildRequires: mvn(org.codehaus.jackson:jackson-jaxrs) BuildRequires: mvn(org.codehaus.janino:janino) BuildRequires: mvn(org.codehaus.mojo:build-helper-maven-plugin) BuildRequires: mvn(org.codehaus.mojo:exec-maven-plugin) BuildRequires: mvn(org.eclipse.jetty:jetty-server) BuildRequires: mvn(org.eclipse.jetty:jetty-webapp) BuildRequires: mvn(org.hamcrest:hamcrest-all) BuildRequires: mvn(org.mockito:mockito-all) BuildRequires: mvn(org.mockito:mockito-core) BuildRequires: mvn(org.mozilla:rhino) BuildRequires: mvn(org.parboiled:parboiled-scala_2.10) BuildRequires: mvn(org.powermock:powermock-api-mockito) BuildRequires: mvn(org.powermock:powermock-module-junit4) # https://bugzilla.redhat.com/show_bug.cgi?id=1221474 BuildRequires: mvn(org.rrd4j:rrd4j) BuildRequires: mvn(org.scala-lang:scala-compiler) BuildRequires: mvn(org.scala-lang:scala-library) BuildRequires: mvn(org.scala-lang:scala-reflect) BuildRequires: mvn(org.slf4j:slf4j-api) BuildArch: noarch %description Neo4j is a highly scalable, robust (fully ACID) native graph database. Neo4j is used in mission-critical apps by thousands of leading start-ups, enterprises, and governments around the world. %package community Summary: Neo4j Community %description community A meta package containing the most used Neo4j libraries. Intended use: as a Maven dependency. %package consistency-check Summary: Neo4j - Consistency Checker %description consistency-check Tool for checking consistency of a Neo4j data store. %package csv Summary: Neo4j - CSV reading and parsing %description csv Efficient reading and parsing of CSV input streams. %package cypher-parent Summary: Neo4j Community Cypher Parent POM %description cypher-parent Parent POM for the Neo4j Cypher modules. %package cypher Summary: Neo4j - Cypher %description cypher Neo4j query language. %package cypher-compiler Summary: Neo4j - Cypher Compiler %description cypher-compiler Compiler for Cypher. %package graph-algo Summary: Neo4j - Graph Algorithms %description graph-algo Graph algorithms for Neo4j. %package graph-matching Summary: Neo4j - Graph Matching %description graph-matching A graph pattern matcher for Neo4j. %package graphviz Summary: Neo4j - Graphviz generation %description graphviz Utility component to generate Graphviz .dot notation from Neo4j graphs. #%%package harness #Summary: Neo4j Test Harness #%%description harness #Components for writing integration tests with Neo4j. %package import-tool Summary: Neo4j - Import Command Line Tool %description import-tool Command line tool for importing data into Neo4j. %package io Summary: Neo4j - IO %description io Input/output abstraction layer for Neo4j. %package jmx Summary: Neo4j - JMX support %description jmx Management support using JMX. %package kernel Summary: Neo4j - Graph Database Kernel %description kernel Neo4j kernel is a lightweight, embedded Java database designed to store data structured as graphs rather than tables. For more information, see http://neo4j.org. %package lucene-index Summary: Neo4j - Lucene Index %description lucene-index Integration layer between Neo4j and Lucene, providing one possible implementation of the Index API. %package monitor-logging Summary: Neo4j - Monitor Logging %description monitor-logging Logs information collected from a set of monitors. %package primitive-collections Summary: Neo4j - Primitive Collections %description primitive-collections Efficient collections for sets and maps that has primitive types as keys. %package server Summary: Neo4j Server %description server Standalone Neo4j server application. %package server-api Summary: Neo4j Server API %description server-api Interfaces and baseclasses needed to create your own extensions. %package shell Summary: Neo4j - Generic shell %description shell A generic command shell with a client and server part. %package udc Summary: Neo4j - Usage Data Collection %description udc Collects simple statistics about server deployment. %package unsafe Summary: Neo4j - Unsafe Access %description unsafe Internal component that provides access to unsafe memory intrinsics. %package javadoc Summary: Javadoc for %{name} %description javadoc This package contains javadoc for %{name}. %prep %setup -q -n %{name}-%{version} # Cleanup find -name "*.class" -print -delete find -name "*.jar" -print -delete # Remove bundle JS libraries find -name "arbor*.js" -print -delete find -name "jquery*.js" -print -delete rm -r community/server/src/main/resources/webadmin-html/lib/deck/js/* \ community/server/src/main/resources/webadmin-html/js/order.js \ community/server/src/main/resources/webadmin-html/js/require.js \ community/server/src/main/resources/webadmin-html/js/lib/seedrandom.js \ community/server/src/main/resources/webadmin-html/js/lib/rgbcolor.js \ community/server/src/main/resources/webadmin-html/js/lib/DateFormat.js \ community/server/src/main/resources/webadmin-html/js/lib/colorpicker.js \ community/server/src/main/resources/webadmin-html/js/lib/backbone.js \ community/server/src/main/resources/webadmin-html/js/lib/codemirror2/util/foldcode.js %patch0 -p1 %patch1 -p1 rm -rf community/cypher/cypher/src/main/scala/org/neo4j/cypher/internal/spi/v{1_9,2_0,2_1} rm -rf community/cypher/cypher/src/main/scala/org/neo4j/cypher/internal/compatibility/CompatibilityFor{1_9,2_0,2_1}.scala %pom_remove_dep :neo4j-cypher-compiler-1.9 community/cypher/cypher %pom_remove_dep :neo4j-cypher-compiler-2.0 community/cypher/cypher %pom_remove_dep :neo4j-cypher-compiler-2.1 community/cypher/cypher %patch2 -p1 %pom_remove_parent %pom_remove_plugin -r :brew %pom_remove_plugin -r :clirr-maven-plugin %pom_remove_plugin -r :findbugs-maven-plugin %pom_remove_plugin -r :jasmine-maven-plugin %pom_remove_plugin -r :license-maven-plugin %pom_remove_plugin -r :licensing-maven-plugin %pom_remove_plugin :maven-source-plugin community/server %pom_remove_plugin -r :maven-assembly-plugin %pom_remove_plugin :build-helper-maven-plugin community/udc %pom_remove_plugin :maven-site-plugin community/kernel %pom_remove_plugin :scala-maven-plugin community/cypher %pom_remove_plugin :maven-pmd-plugin community/cypher %pom_remove_plugin :scalastyle-maven-plugin community/cypher %pom_remove_plugin :findbugs-maven-plugin community/cypher %pom_remove_plugin :clirr-maven-plugin community/cypher %pom_remove_plugin :maven-enforcer-plugin community/cypher # Under AGPL 3.0 license %pom_disable_module advanced %pom_disable_module enterprise %pom_disable_module integrationtests %pom_disable_module packaging %pom_disable_module packaging/installer-linux %pom_disable_module stresstests %pom_disable_module tools # Under Creative Commons 3.0 license %pom_disable_module manual %pom_disable_module docs/refcard-tests community/cypher # Unwanted %pom_disable_module server-examples community # Bundle some JS libraries e.g. grunt %pom_disable_module browser community %pom_disable_module embedded-examples community %pom_disable_module licensecheck-config community %pom_disable_module server-plugin-test community # Use org.neo4j:neo4j-kernel:${neo4j.version}:test-jar %pom_disable_module docs/graphgist community/cypher %pom_disable_module docs/cypher-docs community/cypher %pom_disable_module neo4j-harness community %pom_disable_module cypher-compiler-2.2_2.11 community/cypher %pom_remove_dep -r :geronimo-spec-j2ee %pom_remove_dep :scalautils_2.10 community/cypher %pom_remove_dep :scalacheck_2.10 community/cypher %pom_remove_dep :scalatest_2.10 community/cypher %pom_remove_dep :salat-core_2.10 community/cypher/cypher %pom_xpath_remove -r "pom:dependency[pom:classifier = 'tests']" %pom_xpath_remove -r "pom:dependency[pom:type = 'test-jar']" %pom_xpath_set "pom:dependency[pom:artifactId = 'tools']/pom:groupId" com.sun %pom_xpath_set "pom:dependency[pom:artifactId = 'tools']/pom:version" 1.8.0 %pom_xpath_remove "pom:dependency[pom:artifactId = 'tools']/pom:scope" %pom_xpath_remove "pom:dependency[pom:artifactId = 'tools']/pom:systemPath" %pom_change_dep :lucene-core ::3 community/lucene-index %pom_change_dep -r org.osgi:osgi_R4_core org.apache.felix:org.osgi.core %pom_change_dep -r org.osgi:osgi_R4_compendium org.apache.felix:org.osgi.compendium %pom_change_dep -r org.neo4j.3rdparty.javax.ws.rs:jsr311-api javax.ws.rs:jsr311-api %pom_remove_plugin org.neo4j.build.plugins:docs-maven-plugin community/shell %pom_xpath_remove pom:Class-Path community/shell # Use org.apache.servicemix.bundles:org.apache.servicemix.bundles.jline:0.9.94_1 %pom_xpath_set "pom:properties/pom:jline.groupId" jline community/shell %pom_xpath_set "pom:properties/pom:jline.artifactId" jline community/shell %pom_xpath_set "pom:properties/pom:jline.version" 1.0 community/shell %pom_xpath_set "pom:properties/pom:jline.main.version" 1.0 community/shell # community/server %pom_change_dep -r :bcprov-jdk16 org.bouncycastle: %pom_remove_dep org.neo4j.app:neo4j-browser community/server %pom_change_dep com.sun.jersey: ::1.19 community/neo4j-harness %pom_change_dep com.sun.jersey: ::1.19 community/server # break the build xmvn find org.apache.ant:maven-antrun-plugin:1.8.4 %pom_xpath_inject "pom:plugin[pom:artifactId = 'maven-antrun-plugin']" \ 'org.apache.maven.plugins' %pom_xpath_inject "pom:plugin[pom:artifactId = 'maven-antrun-plugin']" \ 'org.apache.maven.plugins' community/kernel %pom_xpath_inject "pom:plugin[pom:artifactId = 'maven-antrun-plugin']" \ 'org.apache.maven.plugins' community/server %pom_add_dep javax.servlet:javax.servlet-api:3.1.0 community/server %mvn_package :neo4j neo4j-community %mvn_package :neo4j-community neo4j-community %mvn_package :community-build parent %build # no test deps %mvn_build -s -f -- -Dproject.build.sourceEncoding=UTF-8 %install %mvn_install %files -f .mfiles-parent %doc README.asciidoc %license community/LICENSE.txt community/NOTICE.txt %files community -f .mfiles-%{name}-community %files consistency-check -f .mfiles-%{name}-consistency-check %doc community/consistency-check/CHANGES.txt %files csv -f .mfiles-%{name}-csv %doc community/csv/CHANGES.txt %files cypher-parent -f .mfiles-cypher-parent %files cypher -f .mfiles-%{name}-cypher %doc community/cypher/cypher/CHANGES.txt community/cypher/cypher/README.txt %files cypher-compiler -f .mfiles-%{name}-cypher-compiler-2.2 %doc community/cypher/cypher-compiler-2.2/README.txt %files graph-algo -f .mfiles-%{name}-graph-algo %doc community/graph-algo/CHANGES.txt %files graph-matching -f .mfiles-%{name}-graph-matching %files graphviz -f .mfiles-%{name}-graphviz %doc community/graphviz/README.rst %files import-tool -f .mfiles-%{name}-import-tool %doc community/import-tool/CHANGES.txt %files io -f .mfiles-%{name}-io %doc community/io/CHANGES.txt community/io/README.md %files jmx -f .mfiles-%{name}-jmx %doc community/jmx/CHANGES.txt %files kernel -f .mfiles-%{name}-kernel %doc community/kernel/CHANGES.txt community/kernel/README.txt %files lucene-index -f .mfiles-%{name}-lucene-index %doc community/lucene-index/CHANGES.txt %files monitor-logging -f .mfiles-%{name}-monitor-logging %doc community/monitor-logging/CHANGES.txt community/monitor-logging/readme.md %files primitive-collections -f .mfiles-%{name}-primitive-collections %doc community/primitive-collections/CHANGES.txt %files server -f .mfiles-%{name}-server %doc community/server/CHANGES.txt community/server/README.asciidoc %files server-api -f .mfiles-server-api %doc community/server-api/CHANGES.txt %files shell -f .mfiles-%{name}-shell %doc community/shell/CHANGES.txt community/shell/README.txt %files udc -f .mfiles-%{name}-udc %doc community/udc/CHANGES.txt community/udc/readme.md %files unsafe -f .mfiles-%{name}-unsafe %files javadoc -f .mfiles-javadoc %license community/LICENSE.txt community/NOTICE.txt %changelog * Sun Mar 06 2016 gil cattaneo 2.2.8-1 - update to 2.2.8 * Sat Jul 11 2015 gil cattaneo 2.2.3-1 - update to 2.2.3 * Thu May 14 2015 gil cattaneo 2.2.1-1 - update to 2.2.1 * Thu Feb 26 2015 gil cattaneo 2.1.7-1 - initial rpm