361 lines
12 KiB
RPMSpec
361 lines
12 KiB
RPMSpec
%global debug_package %nil
|
|
Name: artemis
|
|
Version: 1.4.0
|
|
Release: 1
|
|
Summary: Java high performance, clustered, asynchronous messaging system
|
|
License: ASL 2.0
|
|
URL: https://github.com/apache/activemq-artemis/
|
|
Source0: https://github.com/apache/activemq-artemis/archive/%{version}/%{name}-%{version}.tar.gz
|
|
Patch0: artemis-netty-4.1.patch
|
|
BuildRequires: gcc-c++ cmake libaio-devel libtool maven-local mvn(com.google.guava:guava)
|
|
BuildRequires: mvn(commons-beanutils:commons-beanutils) mvn(io.airlift:airline)
|
|
BuildRequires: mvn(io.netty:netty-all) mvn(javax.inject:javax.inject)
|
|
BuildRequires: mvn(javax.json:javax.json-api) mvn(javax.xml.bind:jaxb-api) mvn(junit:junit)
|
|
BuildRequires: mvn(org.apache:apache:pom:) mvn(org.apache.felix:maven-bundle-plugin)
|
|
BuildRequires: mvn(org.apache.johnzon:johnzon-core)
|
|
BuildRequires: mvn(org.apache.geronimo.specs:geronimo-annotation_1.1_spec)
|
|
BuildRequires: mvn(org.apache.geronimo.specs:geronimo-ejb_3.0_spec)
|
|
BuildRequires: mvn(org.apache.geronimo.specs:geronimo-jta_1.1_spec)
|
|
BuildRequires: mvn(org.apache.maven:maven-plugin-api)
|
|
BuildRequires: mvn(org.apache.maven.plugins:maven-antrun-plugin)
|
|
BuildRequires: mvn(org.apache.maven.plugins:maven-dependency-plugin)
|
|
BuildRequires: mvn(org.apache.maven.plugins:maven-enforcer-plugin)
|
|
BuildRequires: mvn(org.apache.maven.plugins:maven-install-plugin)
|
|
BuildRequires: mvn(org.apache.maven.plugins:maven-plugin-plugin)
|
|
BuildRequires: mvn(org.apache.maven.plugin-tools:maven-plugin-annotations)
|
|
BuildRequires: mvn(org.apache.qpid:proton-j) mvn(org.apache.qpid:proton-jms)
|
|
BuildRequires: mvn(org.apache.rat:apache-rat-plugin)
|
|
BuildRequires: mvn(org.codehaus.mojo:build-helper-maven-plugin)
|
|
BuildRequires: mvn(org.codehaus.mojo:javacc-maven-plugin) mvn(org.easymock:easymock)
|
|
BuildRequires: mvn(org.eclipse.aether:aether-api) mvn(org.eclipse.aether:aether-util)
|
|
BuildRequires: mvn(org.eclipse.jetty:jetty-server) mvn(org.eclipse.jetty:jetty-webapp)
|
|
BuildRequires: mvn(org.eclipse.osgi:org.eclipse.osgi)
|
|
BuildRequires: mvn(org.eclipse.osgi:org.eclipse.osgi.services)
|
|
BuildRequires: mvn(org.glassfish.jaxb:jaxb-jxc) mvn(org.glassfish.jaxb:jaxb-runtime)
|
|
BuildRequires: mvn(org.jboss.logging:jboss-logging)
|
|
BuildRequires: mvn(org.jboss.logging:jboss-logging-processor)
|
|
BuildRequires: mvn(org.jboss.logmanager:jboss-logmanager) mvn(org.jboss.modules:jboss-modules)
|
|
BuildRequires: mvn(org.jboss.spec.javax.jms:jboss-jms-api_2.0_spec)
|
|
BuildRequires: mvn(org.jboss.spec.javax.resource:jboss-connector-api_1.7_spec)
|
|
BuildRequires: mvn(org.jboss.resteasy:resteasy-atom-provider)
|
|
BuildRequires: mvn(org.jboss.resteasy:resteasy-jackson-provider)
|
|
BuildRequires: mvn(org.jboss.resteasy:resteasy-jaxb-provider)
|
|
BuildRequires: mvn(org.jboss.resteasy:resteasy-jaxrs) mvn(org.jboss.resteasy:tjws)
|
|
BuildRequires: mvn(org.jgroups:jgroups) mvn(org.slf4j:slf4j-api)
|
|
BuildRequires: mvn(org.springframework:spring-beans) mvn(org.springframework:spring-context)
|
|
BuildRequires: mvn(org.springframework:spring-core) mvn(org.springframework:spring-jms)
|
|
BuildRequires: mvn(postgresql:postgresql) mvn(xalan:xalan)
|
|
%description
|
|
Apache ActiveMQ Artemis is an open source project to
|
|
build a multi-protocol, embeddable, very high performance,
|
|
clustered, asynchronous messaging system. Artemis
|
|
is an example of Message Oriented Middleware (MoM).
|
|
|
|
%package boot
|
|
Summary: ActiveMQ Artemis Boot
|
|
BuildArch: noarch
|
|
%description boot
|
|
ActiveMQ Artemis Boot.
|
|
|
|
%package cli
|
|
Summary: ActiveMQ Artemis CLI
|
|
BuildArch: noarch
|
|
%description cli
|
|
ActiveMQ Artemis CLI.
|
|
|
|
%package commons
|
|
Summary: ActiveMQ Artemis Commons
|
|
License: ASL 2.0 and Public Domain
|
|
BuildArch: noarch
|
|
Provides: bundled(java-base64) = 2.2.2
|
|
%description commons
|
|
ActiveMQ Artemis Commons.
|
|
|
|
%package core-client
|
|
Summary: ActiveMQ Artemis Core Client
|
|
BuildArch: noarch
|
|
%description core-client
|
|
ActiveMQ Artemis Core Client.
|
|
|
|
%package dto
|
|
Summary: ActiveMQ Artemis DTO
|
|
BuildArch: noarch
|
|
%description dto
|
|
ActiveMQ Artemis DTO.
|
|
|
|
%package jdbc-store
|
|
Summary: ActiveMQ Artemis JDBC Store
|
|
BuildArch: noarch
|
|
%description jdbc-store
|
|
ActiveMQ Artemis JDBC Store.
|
|
|
|
%package jms-client
|
|
Summary: ActiveMQ Artemis JMS Client
|
|
BuildArch: noarch
|
|
%description jms-client
|
|
ActiveMQ Artemis JMS Client.
|
|
|
|
%package jms-server
|
|
Summary: ActiveMQ Artemis JMS Server
|
|
BuildArch: noarch
|
|
%description jms-server
|
|
ActiveMQ Artemis JMS Server.
|
|
|
|
%package journal
|
|
Summary: ActiveMQ Artemis Journal
|
|
BuildArch: noarch
|
|
%description journal
|
|
ActiveMQ Artemis Journal.
|
|
|
|
%package maven-plugin
|
|
Summary: ActiveMQ Artemis Maven Plugin
|
|
BuildArch: noarch
|
|
%description maven-plugin
|
|
ActiveMQ Artemis Maven Plugin.
|
|
|
|
%package native
|
|
Summary: ActiveMQ Artemis native library
|
|
%description native
|
|
Artemis distributes a native library,
|
|
used as a bridge for its fast journal,
|
|
between Artemis and Linux libaio.
|
|
|
|
%package protocols
|
|
Summary: ActiveMQ Artemis Protocols POM
|
|
BuildArch: noarch
|
|
%description protocols
|
|
ActiveMQ Artemis Protocols Parent POM.
|
|
|
|
%package amqp-protocol
|
|
Summary: ActiveMQ Artemis Protocol AMQP
|
|
BuildArch: noarch
|
|
%description amqp-protocol
|
|
Apache ActiveMQ Artemis supports for AMQP 1.0
|
|
specification.
|
|
|
|
%package hornetq-protocol
|
|
Summary: ActiveMQ Artemis Protocol HornetQ
|
|
BuildArch: noarch
|
|
%description hornetq-protocol
|
|
ActiveMQ Artemis Protocol HornetQ.
|
|
|
|
%package hqclient-protocol
|
|
Summary: ActiveMQ Artemis Protocol HQClient
|
|
BuildArch: noarch
|
|
%description hqclient-protocol
|
|
Apache ActiveMQ Artemis Protocol HQClient.
|
|
|
|
%package proton-plug
|
|
Summary: ActiveMQ Artemis Protocol Proton
|
|
BuildArch: noarch
|
|
%description proton-plug
|
|
Apache ActiveMQ Artemis Protocol Proton.
|
|
|
|
%package stomp-protocol
|
|
Summary: ActiveMQ Artemis Protocol STOMP
|
|
BuildArch: noarch
|
|
%description stomp-protocol
|
|
Apache ActiveMQ Artemis Protocol STOMP.
|
|
|
|
%package ra
|
|
Summary: ActiveMQ Artemis RAR
|
|
BuildArch: noarch
|
|
%description ra
|
|
Apache ActiveMQ Artemis RAR.
|
|
|
|
%package rest
|
|
Summary: ActiveMQ Artemis REST Interface Implementation
|
|
BuildArch: noarch
|
|
%description rest
|
|
Apache ActiveMQ Artemis REST Interface Implementation.
|
|
|
|
%package selector
|
|
Summary: ActiveMQ Artemis Selector Implementation
|
|
BuildArch: noarch
|
|
%description selector
|
|
Apache ActiveMQ Artemis Selector Implementation.
|
|
|
|
%package server
|
|
Summary: ActiveMQ Artemis Server
|
|
BuildArch: noarch
|
|
%description server
|
|
Apache ActiveMQ Artemis Server.
|
|
|
|
%package server-osgi
|
|
Summary: ActiveMQ Artemis Server OSGi
|
|
BuildArch: noarch
|
|
%description server-osgi
|
|
Apache ActiveMQ Artemis Server OSGi.
|
|
|
|
%package service-extensions
|
|
Summary: ActiveMQ Artemis Service Extensions
|
|
BuildArch: noarch
|
|
%description service-extensions
|
|
Apache ActiveMQ Artemis Service Extensions.
|
|
|
|
%package web
|
|
Summary: ActiveMQ Artemis Web
|
|
BuildArch: noarch
|
|
%description web
|
|
Apache ActiveMQ Artemis Web.
|
|
|
|
%package spring-integration
|
|
Summary: ActiveMQ Artemis Spring Integration
|
|
BuildArch: noarch
|
|
%description spring-integration
|
|
Apache ActiveMQ Artemis Spring Integration.
|
|
|
|
%package pom
|
|
Summary: ActiveMQ Artemis POM
|
|
BuildArch: noarch
|
|
%description pom
|
|
ActiveMQ Artemis Parent POM.
|
|
|
|
%package javadoc
|
|
Summary: Javadoc for %{name}
|
|
BuildArch: noarch
|
|
%description javadoc
|
|
This package contains javadoc for %{name}.
|
|
|
|
%package doc
|
|
Summary: Documentation for %{name}
|
|
BuildArch: noarch
|
|
%description doc
|
|
Documentation for %{name}.
|
|
|
|
%prep
|
|
%setup -q -n activemq-%{name}-%{version}
|
|
%patch0 -p1
|
|
find -name "*.class" -print -delete
|
|
find -name "*.dll" -print -delete
|
|
find -name "*.exe" -print -delete
|
|
find -name "*.jar" -print -delete
|
|
find -name "*.so" -print -delete
|
|
rm -r .mvn .settings
|
|
%pom_change_dep -r :geronimo-json_1.0_spec javax.json:javax.json-api:1.0 artemis-core-client artemis-jms-server tests/integration-tests pom.xml
|
|
%pom_remove_plugin -r :maven-checkstyle-plugin
|
|
%pom_remove_plugin -r :maven-help-plugin
|
|
%pom_remove_plugin -r :maven-source-plugin
|
|
%pom_remove_plugin :maven-compiler-plugin
|
|
for p in artemis-native \
|
|
artemis-protocols/artemis-proton-plug \
|
|
artemis-protocols/artemis-stomp-protocol
|
|
do
|
|
%pom_add_plugin org.apache.maven.plugins:maven-compiler-plugin ${p} "
|
|
<configuration>
|
|
<compilerArgument>-proc:none</compilerArgument>
|
|
</configuration>"
|
|
done
|
|
%pom_remove_plugin -r :findbugs-maven-plugin
|
|
%pom_remove_dep -r com.sun.winsw:winsw
|
|
%pom_remove_plugin :maven-dependency-plugin artemis-cli
|
|
%pom_change_dep -r org.osgi:org.osgi.core org.eclipse.osgi:org.eclipse.osgi
|
|
%pom_change_dep -r org.osgi:osgi.cmpn org.eclipse.osgi:org.eclipse.osgi.services
|
|
%pom_change_dep -r :geronimo-j2ee-connector_1.5_spec org.jboss.spec.javax.resource:jboss-connector-api_1.7_spec
|
|
%pom_change_dep -r :geronimo-jms_2.0_spec org.jboss.spec.javax.jms:jboss-jms-api_2.0_spec
|
|
%pom_change_dep -r com.sun.xml.bind:jaxb-jxc org.glassfish.jaxb:jaxb-jxc
|
|
%pom_change_dep -r com.sun.xml.bind:jaxb-impl org.glassfish.jaxb:jaxb-runtime
|
|
%pom_xpath_remove -r "pom:dependency[pom:artifactId='jetty-all']/pom:classifier"
|
|
%pom_change_dep -r :jetty-all org.eclipse.jetty:jetty-server
|
|
%pom_add_dep org.eclipse.jetty:jetty-webapp:'${jetty.version}' artemis-web
|
|
%pom_change_dep -r org.postgresql:postgresql postgresql:
|
|
%pom_change_dep -r log4j: ::1.2.17
|
|
%pom_disable_module artemis-distribution
|
|
%pom_disable_module artemis-website
|
|
%pom_disable_module artemis-features
|
|
%pom_disable_module tests
|
|
%pom_disable_module integration/activemq-aerogear-integration
|
|
%pom_disable_module integration/activemq-vertx-integration
|
|
%pom_disable_module artemis-openwire-protocol artemis-protocols
|
|
%pom_disable_module artemis-mqtt-protocol artemis-protocols
|
|
%pom_xpath_remove "pom:plugin[pom:artifactId='maven-bundle-plugin']/pom:configuration/pom:instructions/pom:_exportcontents" artemis-server-osgi
|
|
%pom_xpath_remove "pom:plugin[pom:artifactId='maven-bundle-plugin']/pom:configuration/pom:instructions/pom:Embed-Dependency" artemis-server-osgi
|
|
%pom_xpath_inject "pom:plugin[pom:artifactId='maven-bundle-plugin']/pom:configuration" "
|
|
<excludeDependencies>true</excludeDependencies>" artemis-server-osgi
|
|
%pom_remove_dep :artemis-commons::test artemis-protocols/artemis-proton-plug
|
|
|
|
%build
|
|
(
|
|
cd artemis-native
|
|
%cmake .
|
|
make %{?_smp_mflags}
|
|
)
|
|
%mvn_build -fs
|
|
|
|
%install
|
|
%mvn_install
|
|
mkdir -p %{buildroot}%{_libdir}/%{name}
|
|
install -pm 755 artemis-native/bin/libartemis-native-%{__isa_bits}.so %{buildroot}%{_libdir}/%{name}/libartemis-native.so
|
|
|
|
%files boot -f .mfiles-artemis-boot
|
|
%license LICENSE NOTICE
|
|
|
|
%files cli -f .mfiles-artemis-cli
|
|
%license LICENSE NOTICE
|
|
|
|
%files commons -f .mfiles-artemis-commons
|
|
%license LICENSE NOTICE
|
|
|
|
%files core-client -f .mfiles-artemis-core-client
|
|
%doc README.md
|
|
|
|
%files dto -f .mfiles-artemis-dto
|
|
|
|
%files jdbc-store -f .mfiles-artemis-jdbc-store
|
|
|
|
%files jms-client -f .mfiles-artemis-jms-client
|
|
|
|
%files jms-server -f .mfiles-artemis-jms-server
|
|
|
|
%files journal -f .mfiles-artemis-journal
|
|
|
|
%files maven-plugin -f .mfiles-artemis-maven-plugin
|
|
|
|
%files native -f .mfiles-artemis-native
|
|
%{_libdir}/%{name}
|
|
%license LICENSE NOTICE
|
|
|
|
%files protocols -f .mfiles-artemis-protocols
|
|
%license LICENSE NOTICE
|
|
|
|
%files amqp-protocol -f .mfiles-artemis-amqp-protocol
|
|
|
|
%files hornetq-protocol -f .mfiles-artemis-hornetq-protocol
|
|
|
|
%files hqclient-protocol -f .mfiles-artemis-hqclient-protocol
|
|
|
|
%files proton-plug -f .mfiles-artemis-proton-plug
|
|
|
|
%files stomp-protocol -f .mfiles-artemis-stomp-protocol
|
|
|
|
%files ra -f .mfiles-artemis-ra
|
|
|
|
%files rest -f .mfiles-artemis-rest
|
|
|
|
%files selector -f .mfiles-artemis-selector
|
|
%license LICENSE NOTICE
|
|
|
|
%files server -f .mfiles-artemis-server
|
|
|
|
%files server-osgi -f .mfiles-artemis-server-osgi
|
|
|
|
%files service-extensions -f .mfiles-artemis-service-extensions
|
|
|
|
%files web -f .mfiles-artemis-web
|
|
|
|
%files spring-integration -f .mfiles-artemis-spring-integration
|
|
|
|
%files pom -f .mfiles-artemis-pom
|
|
%license LICENSE NOTICE
|
|
|
|
%files javadoc -f .mfiles-javadoc
|
|
%license LICENSE NOTICE
|
|
|
|
%files doc
|
|
%doc docs/*
|
|
%license LICENSE NOTICE
|
|
|
|
%changelog
|
|
* Wed Oct 28 2020 baizhonggui <baizhonggui@huawei.com> - 1.4.0-1
|
|
- package init
|