Blob Blame History Raw
# Conditionals to help breaking solr(lucene) <-> carrot2 dependency cycle
%if 0%{?fedora}
%bcond_with carrot2
# Unavailable deps
%bcond_with randomizedtesting
%bcond_with uima

%bcond_with kite
%endif

Name:          solr
Version:       5.4.0
Release:       1%{?dist}
Summary:       Ultra-fast Lucene-based Search Server
# MIT/X11 (BSD like) solr/contrib/map-reduce/src/java/org/apache/solr/hadoop/AlphaNumericComparator.java
License:       ASL 2.0 and BSD
URL:           http://lucene.apache.org/solr/
# Use solr-repack.sh <VERSION>
Source0:       %{name}-%{version}-clean.tar.xz
Source2:       solr-repack.sh
Patch0:        solr-5.3.0-jetty9.3.3.patch

BuildRequires: maven-local
BuildRequires: mvn(com.adobe.xmp:xmpcore)
BuildRequires: mvn(com.carrotsearch:hppc)
BuildRequires: mvn(com.cybozu.labs:langdetect)
BuildRequires: mvn(com.drewnoakes:metadata-extractor:2)
BuildRequires: mvn(com.fasterxml.jackson.core:jackson-core)
BuildRequires: mvn(com.fasterxml.jackson.dataformat:jackson-dataformat-smile)
BuildRequires: mvn(com.google.guava:guava)
BuildRequires: mvn(com.google.protobuf:protobuf-java)
BuildRequires: mvn(com.googlecode.concurrentlinkedhashmap:concurrentlinkedhashmap-lru)
BuildRequires: mvn(com.googlecode.juniversalchardet:juniversalchardet)
BuildRequires: mvn(com.ibm.icu:icu4j)
BuildRequires: mvn(com.pff:java-libpst)
BuildRequires: mvn(com.spatial4j:spatial4j)
BuildRequires: mvn(com.sun.mail:gimap)
BuildRequires: mvn(com.sun.mail:javax.mail)
# https://bugzilla.redhat.com/show_bug.cgi?id=1242405
BuildRequires: mvn(com.tdunning:t-digest)
BuildRequires: mvn(com.thoughtworks.paranamer:paranamer)
BuildRequires: mvn(de.l3s.boilerpipe:boilerpipe)
BuildRequires: mvn(dom4j:dom4j)
BuildRequires: mvn(org.aspectj:aspectjrt)
BuildRequires: mvn(commons-cli:commons-cli)
BuildRequires: mvn(commons-codec:commons-codec)
BuildRequires: mvn(commons-collections:commons-collections)
BuildRequires: mvn(commons-configuration:commons-configuration)
BuildRequires: mvn(commons-fileupload:commons-fileupload)
BuildRequires: mvn(commons-io:commons-io)
BuildRequires: mvn(commons-lang:commons-lang)
BuildRequires: mvn(dom4j:dom4j)
BuildRequires: mvn(io.netty:netty:3)
BuildRequires: mvn(jakarta-regexp:jakarta-regexp)
BuildRequires: mvn(javax.servlet:javax.servlet-api)
BuildRequires: mvn(jdom:jdom)
BuildRequires: mvn(joda-time:joda-time)
BuildRequires: mvn(log4j:log4j:1.2.17)
BuildRequires: mvn(net.agkn:hll)
BuildRequires: mvn(net.arnx:jsonic)
BuildRequires: mvn(net.sourceforge.jmatio:jmatio)
BuildRequires: mvn(org.antlr:antlr4-runtime)
BuildRequires: mvn(org.apache:apache:pom:)
BuildRequires: mvn(org.apache.ant:ant)
BuildRequires: mvn(org.apache.commons:commons-exec)
BuildRequires: mvn(org.apache.commons:commons-compress)
BuildRequires: mvn(org.apache.felix:maven-bundle-plugin)
# https://bugzilla.redhat.com/show_bug.cgi?id=1235420
BuildRequires: mvn(org.apache.hadoop:hadoop-annotations)
BuildRequires: mvn(org.apache.hadoop:hadoop-auth)
BuildRequires: mvn(org.apache.hadoop:hadoop-common)
BuildRequires: mvn(org.apache.hadoop:hadoop-hdfs)
BuildRequires: mvn(org.apache.httpcomponents:httpclient)
BuildRequires: mvn(org.apache.httpcomponents:httpmime)
BuildRequires: mvn(org.apache.lucene:lucene-analysis-modules-aggregator:pom:)
BuildRequires: mvn(org.apache.lucene:lucene-analyzers-common)
BuildRequires: mvn(org.apache.lucene:lucene-analyzers-icu)
BuildRequires: mvn(org.apache.lucene:lucene-analyzers-kuromoji)
BuildRequires: mvn(org.apache.lucene:lucene-analyzers-morfologik)
BuildRequires: mvn(org.apache.lucene:lucene-analyzers-phonetic)
BuildRequires: mvn(org.apache.lucene:lucene-analyzers-smartcn)
BuildRequires: mvn(org.apache.lucene:lucene-analyzers-stempel)
BuildRequires: mvn(org.apache.lucene:lucene-analyzers-uima)
BuildRequires: mvn(org.apache.lucene:lucene-backward-codecs)
BuildRequires: mvn(org.apache.lucene:lucene-codecs)
BuildRequires: mvn(org.apache.lucene:lucene-core)
BuildRequires: mvn(org.apache.lucene:lucene-expressions)
BuildRequires: mvn(org.apache.lucene:lucene-grouping)
BuildRequires: mvn(org.apache.lucene:lucene-highlighter)
BuildRequires: mvn(org.apache.lucene:lucene-join)
BuildRequires: mvn(org.apache.lucene:lucene-memory)
BuildRequires: mvn(org.apache.lucene:lucene-misc)
BuildRequires: mvn(org.apache.lucene:lucene-parent:pom:)
BuildRequires: mvn(org.apache.lucene:lucene-queries)
BuildRequires: mvn(org.apache.lucene:lucene-queryparser)
BuildRequires: mvn(org.apache.lucene:lucene-replicator)
BuildRequires: mvn(org.apache.lucene:lucene-sandbox)
BuildRequires: mvn(org.apache.lucene:lucene-spatial)
BuildRequires: mvn(org.apache.lucene:lucene-suggest)
BuildRequires: mvn(org.apache.lucene:lucene-test-framework)
BuildRequires: mvn(org.apache.maven.plugins:maven-enforcer-plugin)
BuildRequires: mvn(org.apache.maven.plugins:maven-remote-resources-plugin)
BuildRequires: mvn(org.apache.maven.plugins:maven-site-plugin)
BuildRequires: mvn(org.apache.james:apache-mime4j-core)
BuildRequires: mvn(org.apache.james:apache-mime4j-dom)
BuildRequires: mvn(org.apache.james:james-project:pom:)
BuildRequires: mvn(org.apache.pdfbox:fontbox)
BuildRequires: mvn(org.apache.pdfbox:jempbox)
BuildRequires: mvn(org.apache.pdfbox:pdfbox)
BuildRequires: mvn(org.apache.poi:poi)
BuildRequires: mvn(org.apache.poi:poi-ooxml)
BuildRequires: mvn(org.apache.poi:poi-ooxml-schemas)
BuildRequires: mvn(org.apache.poi:poi-scratchpad)
BuildRequires: mvn(org.apache.tika:tika-core)
BuildRequires: mvn(org.apache.tika:tika-parsers)
BuildRequires: mvn(org.apache.velocity:velocity)
BuildRequires: mvn(org.apache.velocity:velocity-tools)
BuildRequires: mvn(org.apache.zookeeper:zookeeper)
BuildRequires: mvn(org.apache.xmlbeans:xmlbeans)
BuildRequires: mvn(org.aspectj:aspectjrt)
BuildRequires: mvn(org.carrot2:morfologik-fsa)
BuildRequires: mvn(org.carrot2:morfologik-polish)
BuildRequires: mvn(org.carrot2:morfologik-stemming)
BuildRequires: mvn(org.ccil.cowan.tagsoup:tagsoup)
# https://bugzilla.redhat.com/show_bug.cgi?id=1237324
BuildRequires: mvn(org.cloudera.htrace:htrace-core)
BuildRequires: mvn(org.codehaus.mojo:buildnumber-maven-plugin)
BuildRequires: mvn(org.codehaus.woodstox:stax2-api)
BuildRequires: mvn(org.codehaus.woodstox:woodstox-core-asl)
BuildRequires: mvn(org.eclipse.jetty:jetty-continuation)
BuildRequires: mvn(org.eclipse.jetty:jetty-deploy)
BuildRequires: mvn(org.eclipse.jetty:jetty-http)
BuildRequires: mvn(org.eclipse.jetty:jetty-io)
BuildRequires: mvn(org.eclipse.jetty:jetty-jmx)
BuildRequires: mvn(org.eclipse.jetty:jetty-rewrite)
BuildRequires: mvn(org.eclipse.jetty:jetty-security)
BuildRequires: mvn(org.eclipse.jetty:jetty-server)
BuildRequires: mvn(org.eclipse.jetty:jetty-servlet)
BuildRequires: mvn(org.eclipse.jetty:jetty-servlets)
BuildRequires: mvn(org.eclipse.jetty:jetty-util)
BuildRequires: mvn(org.eclipse.jetty:jetty-webapp)
BuildRequires: mvn(org.eclipse.jetty:jetty-xml)
BuildRequires: mvn(org.gagravarr:vorbis-java-tika)
BuildRequires: mvn(org.hamcrest:hamcrest-core)
BuildRequires: mvn(org.noggit:noggit)
BuildRequires: mvn(org.ow2.asm:asm)
BuildRequires: mvn(org.ow2.asm:asm-commons)
BuildRequires: mvn(org.restlet.jee:org.restlet)
BuildRequires: mvn(org.restlet.jee:org.restlet.ext.servlet)
BuildRequires: mvn(org.slf4j:jcl-over-slf4j)
BuildRequires: mvn(org.slf4j:jul-to-slf4j)
BuildRequires: mvn(org.slf4j:slf4j-api)
BuildRequires: mvn(org.slf4j:slf4j-log4j12)
BuildRequires: mvn(org.tukaani:xz)
BuildRequires: mvn(rome:rome)
BuildRequires: mvn(xerces:xercesImpl)


# Optional?
%if %{with carrot2}
# solr/contrib/clustering
# work in progress ... circular deps
BuildRequires: mvn(org.carrot2:carrot2-mini:3.8.0)
%endif

%if %{without randomizedtesting}
# {lucene,solr}/test-framework
BuildRequires: mvn(com.carrotsearch.randomizedtesting:junit4-ant)
BuildRequires: mvn(com.carrotsearch.randomizedtesting:randomizedtesting-runner)
BuildRequires: mvn(junit:junit)
%endif

%if %{without uima}
# {lucene/analysis,solr/contrib}/uima
BuildRequires: mvn(org.apache.uima:uimaj-core)
BuildRequires: mvn(org.apache.uima:AlchemyAPIAnnotator)
BuildRequires: mvn(org.apache.uima:OpenCalaisAnnotator)
BuildRequires: mvn(org.apache.uima:Tagger)
BuildRequires: mvn(org.apache.uima:WhitespaceTokenizer)
BuildRequires: mvn(org.apache.uima:parent-pom:pom:)
BuildRequires: mvn(org.apache.lucene:lucene-analyzers-uima)
%endif

%if %{with kite}
# solr/contrib/{map-reduce,morphlines-cell,morphlines-core}
BuildRequires: mvn(com.codahale.metrics:metrics-core)
BuildRequires: mvn(com.codahale.metrics:metrics-healthchecks)
BuildRequires: mvn(com.typesafe:config)
BuildRequires: mvn(org.apache.hadoop:hadoop-mapreduce-client-core)
BuildRequires: mvn(net.sourceforge.argparse4j:argparse4j)
# ... work in progress ... circular deps
# https://bugzilla.redhat.com/show_bug.cgi?id=1179355
BuildRequires: mvn(org.kitesdk:kite-morphlines-avro)
BuildRequires: mvn(org.kitesdk:kite-morphlines-core)
BuildRequires: mvn(org.kitesdk:kite-morphlines-hadoop-sequencefile)
BuildRequires: mvn(org.kitesdk:kite-morphlines-json)
BuildRequires: mvn(org.kitesdk:kite-morphlines-tika-core)
BuildRequires: mvn(org.kitesdk:kite-morphlines-tika-decompress)
BuildRequires: mvn(org.kitesdk:kite-morphlines-twitter)
%if 0
# NOT available https://bugzilla.redhat.com/show_bug.cgi?id=1076620
BuildRequires: mvn(net.sf.saxon:Saxon-HE:9.5.1-4)
BuildRequires: mvn(org.kitesdk:kite-morphlines-saxon)
%endif
%endif

%if 0
# test deps
BuildRequires: mvn(aopalliance:aopalliance)
BuildRequires: mvn(com.fasterxml.jackson.core:jackson-annotations)
BuildRequires: mvn(com.fasterxml.jackson.core:jackson-databind)
BuildRequires: mvn(com.google.inject:guice)
BuildRequires: mvn(com.google.inject.extensions:guice-servlet)
BuildRequires: mvn(com.sun.jersey:jersey-bundle:1)
BuildRequires: mvn(com.sun.jersey:jersey-core:1)
BuildRequires: mvn(com.sun.jersey:jersey-json:1)
BuildRequires: mvn(com.sun.jersey:jersey-server:1)
BuildRequires: mvn(com.sun.jersey.contribs:jersey-guice:1)
BuildRequires: mvn(com.sun.xml.bind:jaxb-impl)
BuildRequires: mvn(hsqldb:hsqldb:1.8.0.10)
BuildRequires: mvn(org.apache.avro:avro)
BuildRequires: mvn(org.apache.curator:curator-client)
BuildRequires: mvn(org.apache.curator:curator-framework)
BuildRequires: mvn(org.apache.derby:derby:10.9.1.0)
BuildRequires: mvn(org.apache.hadoop:hadoop-common:2.6.0:tests:)
BuildRequires: mvn(org.apache.hadoop:hadoop-hdfs:2.6.0:tests:)
BuildRequires: mvn(org.apache.hadoop:hadoop-mapreduce-client-app)
BuildRequires: mvn(org.apache.hadoop:hadoop-mapreduce-client-common)
BuildRequires: mvn(org.apache.hadoop:hadoop-mapreduce-client-hs)
BuildRequires: mvn(org.apache.hadoop:hadoop-mapreduce-client-jobclient)
BuildRequires: mvn(org.apache.hadoop:hadoop-mapreduce-client-jobclient:2.6.0:tests:)
BuildRequires: mvn(org.apache.hadoop:hadoop-mapreduce-client-shuffle)
BuildRequires: mvn(org.apache.hadoop:hadoop-yarn-api)
BuildRequires: mvn(org.apache.hadoop:hadoop-yarn-client)
BuildRequires: mvn(org.apache.hadoop:hadoop-yarn-common)
BuildRequires: mvn(org.apache.hadoop:hadoop-yarn-server-applicationhistoryservice)
BuildRequires: mvn(org.apache.hadoop:hadoop-yarn-server-common)
BuildRequires: mvn(org.apache.hadoop:hadoop-yarn-server-nodemanager)
BuildRequires: mvn(org.apache.hadoop:hadoop-yarn-server-resourcemanager)
BuildRequires: mvn(org.apache.hadoop:hadoop-yarn-server-tests:2.6.0:tests:)
BuildRequires: mvn(org.apache.hadoop:hadoop-yarn-server-web-proxy)
BuildRequires: mvn(org.apache.mrunit:mrunit::hadoop2:)
BuildRequires: mvn(org.codehaus.jackson:jackson-core-asl)
BuildRequires: mvn(org.codehaus.jackson:jackson-jaxrs)
BuildRequires: mvn(org.codehaus.jackson:jackson-mapper-asl)
BuildRequires: mvn(org.easymock:easymock:3.0)
BuildRequires: mvn(org.fusesource.leveldbjni:leveldbjni)
BuildRequires: mvn(org.iq80.leveldb:leveldb)
BuildRequires: mvn(org.iq80.leveldb:leveldb-api)
BuildRequires: mvn(org.kitesdk:kite-morphlines-core::tests:)
BuildRequires: mvn(org.mockito:mockito-core)
BuildRequires: mvn(org.mortbay.jetty:jetty:6.1.26)
BuildRequires: mvn(org.mortbay.jetty:jetty-util:6.1.26)
BuildRequires: mvn(org.objenesis:objenesis)
BuildRequires: mvn(org.xerial.snappy:snappy-java)

%endif

BuildArch:     noarch

%description
Solr is the popular, blazing fast open source enterprise search platform
from the Apache Lucene project.

For a complete description of the Solr project, team composition, source
code repositories, and other details, please see the Solr web site at
http://lucene.apache.org/solr

%package javadoc
Summary:       Javadoc for %{name}

%description javadoc
This package contains javadoc for %{name}.

%prep
%setup -q
find . -name "*.class" -print -delete
find . -name "*.jar" -print -delete
find . -name "*.js" -print -delete

rm -r solr/core/src/java/org/apache/solr/util/hll
%pom_add_dep net.agkn:hll:1.6.0 solr/core
find ./solr -name "*.java" -exec sed -i "s/org.apache.solr.util.hll/net.agkn.hll/g" {} +

sed -i "s|return hasher.hashString(v).asLong();|return hasher.hashString(v, null).asLong();|" \
 solr/core/src/java/org/apache/solr/handler/component/StatsValuesFactory.java

%if %{?fedora} >= 23
%patch0 -p1
%endif

cp -p dev-tools/maven/solr/pom.xml.template solr/pom.xml
cp -p dev-tools/maven/solr/contrib/pom.xml.template solr/contrib/pom.xml
sed -i "s/@version@/%{version}/g" solr/pom.xml solr/contrib/pom.xml

# Fix parent pom
sed -i "s|<relativePath>../../../pom.xml</relativePath>|<relativePath>../pom.xml</relativePath>|" $(find solr -name "pom.xml")

# Fix non standard source/resources directories structure
sed -i 's|<sourceDirectory>${module-path}</sourceDirectory>|<sourceDirectory>${basedir}/src/java</sourceDirectory>|' \
 solr/core/pom.xml solr/solrj/pom.xml

for p in solr/test-framework/pom.xml solr/contrib/analytics/pom.xml solr/contrib/analysis-extras/pom.xml \
 solr/contrib/clustering/pom.xml solr/contrib/dataimporthandler/pom.xml solr/contrib/dataimporthandler-extras/pom.xml \
 solr/contrib/extraction/pom.xml solr/contrib/langid/pom.xml solr/contrib/uima/pom.xml solr/contrib/velocity/pom.xml \
 solr/contrib/morphlines-core/pom.xml solr/contrib/morphlines-cell/pom.xml solr/contrib/map-reduce/pom.xml; do
  sed -i 's|<sourceDirectory>${module-path}/src/java</sourceDirectory>|<sourceDirectory>${basedir}/src/java</sourceDirectory>|' ${p}
  sed -i 's|<testSourceDirectory>${module-path}/src/test</testSourceDirectory>|<testSourceDirectory>${basedir}/src/test</testSourceDirectory>|' ${p}
done

sed -i 's|<directory>${module-path}/src/resources</directory>|<directory>${basedir}/src/resources</directory>|' \
 solr/contrib/uima/pom.xml \
 solr/contrib/analytics/pom.xml solr/contrib/clustering/pom.xml \
 solr/contrib/morphlines-core/pom.xml solr/contrib/morphlines-cell/pom.xml solr/contrib/map-reduce/pom.xml

sed -i 's|<directory>${module-path}/src/test-files</directory>|<directory>${basedir}/src/test-files</directory>|' \
 solr/contrib/langid/pom.xml solr/contrib/uima/pom.xml \
 solr/contrib/clustering/pom.xml solr/contrib/extraction/pom.xml solr/contrib/velocity/pom.xml \
 solr/contrib/analysis-extras/pom.xml solr/contrib/dataimporthandler/pom.xml solr/contrib/dataimporthandler-extras/pom.xml \
 solr/contrib/morphlines-core/pom.xml solr/contrib/morphlines-cell/pom.xml solr/contrib/map-reduce/pom.xml

sed -i 's|<directory>${module-path}</directory>|<directory>${basedir}/src/java</directory>|' solr/test-framework/pom.xml

sed -i 's|<testSourceDirectory>${module-path}</testSourceDirectory>|<testSourceDirectory>${basedir}/src/test</testSourceDirectory>|' \
 solr/solrj/pom.xml

sed -i 's|now.timestamp|maven.build.timestamp|' pom.xml
sed -i 's|@spec.version@|${project.version}|' pom.xml

# Disable lucene
%pom_disable_module lucene

# Remove unavailable plugins
%pom_remove_plugin org.codehaus.gmaven:gmaven-plugin
%pom_remove_plugin -r de.thetaphi:forbiddenapis

%pom_xpath_inject "pom:build/pom:pluginManagement/pom:plugins/pom:plugin[pom:artifactId = 'maven-javadoc-plugin' ]" '
<configuration>
  <encoding>UTF-8</encoding>
  <aggregate>true</aggregate>
  <breakiterator>true</breakiterator>
  <doctitle>Apache Solr ${project.version} API</doctitle>
  <header>Apache Solr</header>
  <quiet>true</quiet>
  <overview>${project.artifactId}/src/java/overview.html</overview>
  <groups>
    <group>
      <title>Apache Solr</title>
    </group>
  </groups>
</configuration>'

%pom_add_dep org.hamcrest:hamcrest-core

# Disabled for now
# Unavailable deps
%if %{without carrot2}
%pom_disable_module clustering solr/contrib
%endif
%if %{with randomizedtesting}
%pom_disable_module test-framework solr
%endif
%if %{with uima}
%pom_disable_module uima solr/contrib
%endif

%if %{without kite}
%pom_disable_module map-reduce solr/contrib
%pom_disable_module morphlines-cell solr/contrib
%pom_disable_module morphlines-core solr/contrib
%endif

# Use system jvm apis
%pom_remove_dep javax.activation:activation solr/contrib/dataimporthandler-extras

# Remove fake BR
%pom_remove_dep -r com.googlecode.mp4parser:isoparser 
%pom_remove_dep com.drewnoakes:metadata-extractor solr/contrib/dataimporthandler-extras
%pom_remove_dep com.drewnoakes:metadata-extractor solr/contrib/extraction
%pom_remove_dep com.drewnoakes:metadata-extractor solr/contrib/langid
%pom_remove_dep org.apache.tika:tika-xmp solr/contrib/dataimporthandler-extras
%pom_remove_dep org.apache.tika:tika-xmp solr/contrib/extraction
%pom_remove_dep org.apache.tika:tika-xmp solr/contrib/langid
%pom_remove_dep org.bouncycastle:bcmail-jdk15  solr/contrib/dataimporthandler-extras
%pom_remove_dep org.bouncycastle:bcmail-jdk15  solr/contrib/extraction
%pom_remove_dep org.bouncycastle:bcmail-jdk15  solr/contrib/langid
%pom_remove_dep org.bouncycastle:bcprov-jdk15  solr/contrib/dataimporthandler-extras
%pom_remove_dep org.bouncycastle:bcprov-jdk15  solr/contrib/extraction
%pom_remove_dep org.bouncycastle:bcprov-jdk15  solr/contrib/langid
%pom_remove_dep org.bouncycastle: solr/contrib/morphlines-core
%pom_remove_dep com.drewnoakes:metadata-extractor solr/contrib/morphlines-core
%pom_remove_dep org.bouncycastle: solr/contrib/morphlines-cell
%pom_remove_dep com.drewnoakes:metadata-extractor solr/contrib/morphlines-cell
%pom_remove_dep org.bouncycastle: solr/contrib/map-reduce
%pom_remove_dep com.drewnoakes:metadata-extractor solr/contrib/map-reduce
%pom_remove_dep net.sf.saxon:Saxon-HE solr/contrib/map-reduce
%pom_remove_dep org.kitesdk:kite-morphlines-saxon solr/contrib/map-reduce
%pom_remove_dep org.apache.tika:tika-xmp solr/contrib/map-reduce
%pom_remove_dep org.apache.tika:tika-xmp solr/contrib/morphlines-cell
%pom_remove_dep org.apache.tika:tika-xmp solr/contrib/morphlines-core
%pom_remove_dep org.apache.tika:tika-java7 solr/contrib/dataimporthandler-extras
%pom_remove_dep org.apache.tika:tika-java7 solr/contrib/extraction
%pom_remove_dep org.apache.tika:tika-java7 solr/contrib/langid
%pom_remove_dep org.apache.tika:tika-java7 solr/contrib/map-reduce
%pom_remove_dep org.apache.tika:tika-java7 solr/contrib/morphlines-cell
%pom_remove_dep org.apache.tika:tika-java7 solr/contrib/morphlines-core

%pom_xpath_set "pom:dependency[pom:groupId = 'io.netty']/pom:version" 3

# fix log4j version
for p in core \
 test-framework \
 contrib/analysis-extras \
 contrib/analytics \
 contrib/clustering \
 contrib/dataimporthandler \
 contrib/dataimporthandler-extras \
 contrib/extraction \
 contrib/langid \
 contrib/uima \
 contrib/velocity \
 contrib/morphlines-core \
 contrib/morphlines-cell \
 contrib/map-reduce;do
%pom_xpath_inject "pom:dependency[pom:artifactId = 'log4j']" "<version>1.2.17</version>" solr/${p}
done

# Use htrace >= 3.0.4
%pom_xpath_set -r "pom:dependency[pom:artifactId = 'htrace-core']/pom:groupId" org.cloudera.htrace
# Use hadoop >= 2.6.0
rm -r solr/core/src/java/org/apache/solr/security/KerberosFilter.java \
 solr/core/src/java/org/apache/solr/security/KerberosPlugin.java
sed -i "s|conf.addResource(TEST_CONF);||" \
 solr/core/src/java/org/apache/solr/util/HdfsUtil.java

%build

# Test skipped for unavailable test deps
%mvn_build -f

%install
%mvn_install

%files -f .mfiles
%doc solr/CHANGES.txt solr/README.txt
%license LICENSE.txt NOTICE.txt

%files javadoc -f .mfiles-javadoc
%license LICENSE.txt NOTICE.txt

%changelog
* Sat Jan 23 2016 gil cattaneo <puntogil@libero.it> 5.4.0-1
- update to 5.4.0 

* Tue Oct 06 2015 gil cattaneo <puntogil@libero.it> 5.3.1-1
- update to 5.3.1

* Wed Sep 16 2015 gil cattaneo <puntogil@libero.it> 5.3.0-1
- update to 5.3.0 (rhbz#1240013,1235424)

* Fri Jun 19 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 4.10.4-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild

* Fri May 08 2015 gil cattaneo <puntogil@libero.it> 4.10.4-1
- update to 4.10.4

* Wed Apr 22 2015 Peter Robinson <pbrobinson@fedoraproject.org> 4.10.3-3
- ARMv7 now has hadoop

* Fri Mar 06 2015 gil cattaneo <puntogil@libero.it> 4.10.3-2
- rebuilt with new jhighlight

* Wed Dec 24 2014 gil cattaneo <puntogil@libero.it> 4.10.3-1
- update to 4.10.3

* Thu Oct 23 2014 gil cattaneo <puntogil@libero.it> 4.10.2-1
- update to 4.10.2

* Thu Oct 23 2014 gil cattaneo <puntogil@libero.it> 4.10.1-1
- update to 4.10.1

* Fri Sep 05 2014 gil cattaneo <puntogil@libero.it> 4.10.0-1
- update to 4.10.0

* Wed Jun 11 2014 gil cattaneo <puntogil@libero.it> 4.8.1-1
- update to 4.8.1

* Sun Jun 08 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 4.8.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild

* Mon May 05 2014 gil cattaneo <puntogil@libero.it> 4.8.0-1
- update to 4.8.0

* Tue Apr 15 2014 gil cattaneo <puntogil@libero.it> 4.7.2-1
- update to 4.7.2

* Tue Mar 18 2014 gil cattaneo <puntogil@libero.it> 4.7.0-3
- fix BR list

* Sun Mar 16 2014 gil cattaneo <puntogil@libero.it> 4.7.0-2
- avoid missing dep (Hadoop) on arm

* Tue Mar 04 2014 gil cattaneo <puntogil@libero.it> 4.7.0-1
- update to 4.7.0

* Tue Jan 28 2014 gil cattaneo <puntogil@libero.it> 4.6.1-1
- update to 4.6.1

* Sat Nov 30 2013 gil cattaneo <puntogil@libero.it> 4.6.0-1
- update to 4.6.0

* Sun Oct 27 2013 gil cattaneo <puntogil@libero.it> 4.5.1-1
- update to 4.5.1

* Mon Sep 09 2013 gil cattaneo <puntogil@libero.it> 4.5.0-1
- update to 4.5.0

* Fri Aug 23 2013 gil cattaneo <puntogil@libero.it> 4.4.0-1
- initial rpm