Name: fuse-extra Version: 1.3 Release: 1%{?dist} Summary: Implements addons and plugins for the Fuse Stack License: ASL 2.0 URL: https://github.com/fusesource/fuse-extra Source0: https://github.com/fusesource/fuse-extra/archive/%{name}-project-%{version}.tar.gz Patch0: %{name}-1.3-disable-iq80_snappy-support.patch Patch1: %{name}-1.3-activemq5.6.patch Patch2: %{name}-1.3-disable-hadoop1-support.patch BuildRequires: maven-local BuildRequires: mvn(com.sun.codemodel:codemodel) BuildRequires: mvn(javax.xml.bind:jaxb-api) BuildRequires: mvn(junit:junit) BuildRequires: mvn(org.apache.activemq:activemq-core) BuildRequires: mvn(org.apache.maven:maven-plugin-api) BuildRequires: mvn(org.codehaus.jackson:jackson-core-asl) BuildRequires: mvn(org.codehaus.jackson:jackson-mapper-asl) BuildRequires: mvn(org.fusesource:fusesource-pom) BuildRequires: mvn(org.fusesource.hawtbuf:hawtbuf) BuildRequires: mvn(org.fusesource.hawtbuf:hawtbuf-proto) BuildRequires: mvn(org.fusesource.hawtbuf:hawtbuf-protoc) BuildRequires: mvn(org.fusesource.hawtdispatch:hawtdispatch-scala) BuildRequires: mvn(org.fusesource.hawtdispatch:hawtdispatch-transport) BuildRequires: mvn(org.fusesource.leveldbjni:leveldbjni-all) BuildRequires: mvn(org.iq80.leveldb:leveldb) BuildRequires: mvn(org.scala-lang:scala-compiler) BuildRequires: mvn(org.scala-lang:scala-library) BuildRequires: mvn(org.slf4j:slf4j-api) BuildRequires: mvn(org.slf4j:slf4j-log4j12) BuildRequires: mvn(org.xerial.snappy:snappy-java) %if 0 # fusemq-leveldb BuildRequires: mvn(org.apache.hadoop:hadoop-core:1.0.0) BuildRequires: mvn(org.iq80.snappy:snappy) # fusemq-apollo-mqtt BuildRequires: mvn(org.apache.activemq:apollo-broker:1.4) BuildRequires: mvn(org.apache.activemq:apollo-web:1.4) BuildRequires: mvn(org.fusesource.mqtt-client:mqtt-client) # test deps BuildRequires: mvn(commons-lang:commons-lang) BuildRequires: mvn(org.apache.activemq:activemq-console:5.5.1-fuse-03-06) BuildRequires: mvn(org.apache.activemq:activemq-core:5.5.1-fuse-03-06:test-jar) BuildRequires: mvn(org.apache.activemq:apollo-bdb:1.4) BuildRequires: mvn(org.apache.activemq:apollo-broker:1.4:test-jar) BuildRequires: mvn(org.apache.activemq:apollo-leveldb:1.4) BuildRequires: mvn(org.apache.activemq:apollo-stomp:1.4) BuildRequires: mvn(org.apache.activemq:apollo-util:1.4:test-jar) BuildRequires: mvn(org.apache.commons:commons-math) BuildRequires: mvn(org.apache.hadoop:hadoop-test) BuildRequires: mvn(org.eclipse.jetty.aggregate:jetty-all-server:7.5.1.v20110908) BuildRequires: mvn(org.fusesource.stompjms:stompjms-client:1.11) BuildRequires: mvn(org.mortbay.jetty:jetty:6.1.26) BuildRequires: mvn(org.mortbay.jetty:jetty-util:6.1.26) BuildRequires: mvn(org.mortbay.jetty:jsp-2.1:6.1.14) BuildRequires: mvn(org.mortbay.jetty:jsp-api-2.1:6.1.14 BuildRequires: mvn(org.scalatest:scalatest_2.9.1) BuildRequires: mvn(tomcat:jasper-compiler:5.5.12) BuildRequires: mvn(tomcat:jasper-runtime:5.5.12) %endif BuildArch: noarch # It can be configured to provide # message HA by replicating stored data to a Hadoop file-system # such as HDFS. #° MQTT v3.1 Protocol for Apollo : This module lets you use the # MQTT v3.1 protocol to talk to Apache Apollo message server. %description Fuse Extra: A collection of addons and plugins for the open source projects FuseSource support. This project provides: ° LevelDB Store for FuseMQ : A message store for FuseMQ or ActiveMQ that uses LevelDB based indexes. %package amqp Summary: Fuse Extra :: AMQP %description amqp Java API for the AMQP Protocol. %package amqp-generator Summary: Fuse Extra :: Code generator for AMQP %description amqp-generator Fuse Extra :: Code generator for AMQP described types. %package leveldb Summary: Fuse Extra :: LevelDB %description leveldb Fuse Extra :: LevelDB based message storage for ActiveMQ. %package javadoc Summary: Javadoc for %{name} %description javadoc This package contains javadoc for %{name}. %prep %setup -q -n %{name}-%{name}-project-%{version} find . -name '*.class' -print -delete find . -name '*.jar' -print -delete %patch0 -p1 %patch1 -p1 %patch2 -p1 rm -rf fusemq-leveldb/src/main/scala/org/fusesource/mq/leveldb/HALevelDBClient.scala \ fusemq-leveldb/src/main/scala/org/fusesource/mq/leveldb/HALevelDBStore.scala %pom_xpath_remove "pom:build/pom:extensions" %pom_disable_module fusemq-apollo %pom_disable_module fuse-scala %pom_xpath_set "pom:parent/pom:artifactId" fuse-extra-project fusemq-leveldb %pom_xpath_set "pom:parent/pom:relativePath" .. fusemq-leveldb %pom_add_dep org.scala-lang:scala-library:'${scala-version}':compile fusemq-leveldb %pom_xpath_remove "pom:dependency[pom:scope = 'test']" fusemq-leveldb %pom_remove_plugin org.fusesource.mvnplugins:maven-uberize-plugin fusemq-leveldb %pom_remove_dep :leveldbjni-osx fusemq-leveldb %pom_remove_dep :leveldbjni-linux64 fusemq-leveldb %pom_xpath_set "pom:dependency[pom:groupId = 'org.fusesource.leveldbjni']/pom:artifactId" leveldbjni-all fusemq-leveldb #%% pom_remove_plugin org.scala-tools:maven-scala-plugin fuse-scala %pom_add_plugin org.apache.maven.plugins:maven-antrun-plugin:1.7 fusemq-leveldb ' compile process-classes run org.scala-lang scala-compiler ${scala-version} ' %pom_xpath_remove "pom:plugin[pom:artifactId = 'maven-bundle-plugin']/pom:configuration/pom:instructions/pom:Embed-Dependency" fusemq-leveldb %pom_xpath_remove "pom:plugin[pom:artifactId = 'maven-bundle-plugin']/pom:configuration/pom:classifier" fusemq-leveldb %pom_remove_dep :maven-project fusesource-amqp-generator %pom_add_dep org.apache.maven:maven-core:3.1.1 fusesource-amqp-generator "true" # cannot find symbol # [ERROR] symbol: method setReadableByteChannel(java.nio.channels.FileChannel) # [ERROR] location: variable codec of type org.fusesource.amqp.codec.AMQPProtocolCodec # deprecated method in org.fusesource.hawtdispatch.transport.AbstractProtocolCodec sed -i '/setReadableByteChannel/d' fusesource-amqp/src/main/java/org/fusesource/amqp/cli/Dump.java %build # NO test deps available %mvn_build -sf %install %mvn_install %files -f .mfiles-%{name}-project %dir %{_javadir}/%{name} %doc readme.md %license license.txt %files amqp -f .mfiles-fusesource-amqp %files amqp-generator -f .mfiles-fusesource-amqp-generator %files leveldb -f .mfiles-fusemq-leveldb %doc fusemq-leveldb/readme.md fusemq-leveldb/kahadb-vs-leveldb.png %files javadoc -f .mfiles-javadoc %license license.txt %changelog * Wed Apr 15 2015 gil cattaneo 1.3-1 - initial rpm