From a4a081b5818faf63f8c84dfca351fbfae7aefb8b Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Aug 08 2019 13:27:56 +0000 Subject: activemq fails to build from source: https://bugzilla.redhat.com/show_bug.cgi?id=1674631 --- diff --git a/.gitignore b/.gitignore deleted file mode 100644 index 9f46977..0000000 --- a/.gitignore +++ /dev/null @@ -1 +0,0 @@ -/activemq-5.6.0.tar.xz diff --git a/activemq-5.6.0-CVE-2015-5254.patch b/activemq-5.6.0-CVE-2015-5254.patch deleted file mode 100644 index c6b78c8..0000000 --- a/activemq-5.6.0-CVE-2015-5254.patch +++ /dev/null @@ -1,231 +0,0 @@ -diff -Nru activemq-5.6.0/activemq-core/src/main/java/org/apache/activemq/transport/stomp/JmsFrameTranslator.java activemq-5.6.0.CVE-2015-5254/activemq-core/src/main/java/org/apache/activemq/transport/stomp/JmsFrameTranslator.java ---- activemq-5.6.0/activemq-core/src/main/java/org/apache/activemq/transport/stomp/JmsFrameTranslator.java 2012-09-11 01:12:25.000000000 +0200 -+++ activemq-5.6.0.CVE-2015-5254/activemq-core/src/main/java/org/apache/activemq/transport/stomp/JmsFrameTranslator.java 2015-12-15 08:35:09.050277423 +0100 -@@ -84,7 +84,7 @@ - msg = createMapMessage(in); - break; - default: -- throw new Exception("Unkown transformation: " + transformation); -+ throw new Exception("Unknown transformation: " + transformation); - } - } catch (Throwable e) { - command.getHeaders().put(Stomp.Headers.TRANSFORMATION_ERROR, e.getMessage()); -@@ -243,7 +243,8 @@ - } - - if (xstream == null) { -- xstream = new XStream(); -+ xstream = XStreamSupport.createXStream(); -+ xstream.ignoreUnknownElements(); - } - return xstream; - -diff -Nru activemq-5.6.0/activemq-core/src/main/java/org/apache/activemq/transport/stomp/XStreamSupport.java activemq-5.6.0.CVE-2015-5254/activemq-core/src/main/java/org/apache/activemq/transport/stomp/XStreamSupport.java ---- activemq-5.6.0/activemq-core/src/main/java/org/apache/activemq/transport/stomp/XStreamSupport.java 1970-01-01 01:00:00.000000000 +0100 -+++ activemq-5.6.0.CVE-2015-5254/activemq-core/src/main/java/org/apache/activemq/transport/stomp/XStreamSupport.java 2015-12-15 08:36:14.665520108 +0100 -@@ -0,0 +1,47 @@ -+/** -+ * 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. -+ */ -+package org.apache.activemq.transport.stomp; -+ -+import com.thoughtworks.xstream.XStream; -+import com.thoughtworks.xstream.security.AnyTypePermission; -+import com.thoughtworks.xstream.security.NoTypePermission; -+import com.thoughtworks.xstream.security.PrimitiveTypePermission; -+import org.apache.activemq.util.ClassLoadingAwareObjectInputStream; -+ -+import java.util.Collection; -+import java.util.Map; -+ -+public class XStreamSupport { -+ -+ public static XStream createXStream() { -+ XStream stream = new XStream(); -+ stream.addPermission(NoTypePermission.NONE); -+ stream.addPermission(PrimitiveTypePermission.PRIMITIVES); -+ stream.allowTypeHierarchy(Collection.class); -+ stream.allowTypeHierarchy(Map.class); -+ stream.allowTypes(new Class[]{String.class}); -+ if (ClassLoadingAwareObjectInputStream.isAllAllowed()) { -+ stream.addPermission(AnyTypePermission.ANY); -+ } else { -+ for (String packageName : ClassLoadingAwareObjectInputStream.getSerialziablePackages()) { -+ stream.allowTypesByWildcard(new String[]{packageName + ".**"}); -+ } -+ } -+ return stream; -+ } -+ -+} -diff -Nru activemq-5.6.0/activemq-core/src/main/java/org/apache/activemq/util/ClassLoadingAwareObjectInputStream.java activemq-5.6.0.CVE-2015-5254/activemq-core/src/main/java/org/apache/activemq/util/ClassLoadingAwareObjectInputStream.java ---- activemq-5.6.0/activemq-core/src/main/java/org/apache/activemq/util/ClassLoadingAwareObjectInputStream.java 2012-09-11 01:12:25.000000000 +0200 -+++ activemq-5.6.0.CVE-2015-5254/activemq-core/src/main/java/org/apache/activemq/util/ClassLoadingAwareObjectInputStream.java 2015-12-15 08:47:58.347381368 +0100 -@@ -21,7 +21,10 @@ - import java.io.ObjectInputStream; - import java.io.ObjectStreamClass; - import java.lang.reflect.Proxy; -+import java.util.Arrays; -+import java.util.Collection; - import java.util.HashMap; -+import java.util.Map; - - @SuppressWarnings("rawtypes") - public class ClassLoadingAwareObjectInputStream extends ObjectInputStream { -@@ -29,6 +32,8 @@ - private static final ClassLoader FALLBACK_CLASS_LOADER = - ClassLoadingAwareObjectInputStream.class.getClassLoader(); - -+ private static String[] serializablePackages; -+ - /** - * Maps primitive type names to corresponding class objects. - */ -@@ -40,7 +45,9 @@ - - protected Class resolveClass(ObjectStreamClass classDesc) throws IOException, ClassNotFoundException { - ClassLoader cl = Thread.currentThread().getContextClassLoader(); -- return load(classDesc.getName(), cl); -+ Class clazz = load(classDesc.getName(), cl); -+ checkSecurity(clazz); -+ return clazz; - } - - protected Class resolveProxyClass(String[] interfaces) throws IOException, ClassNotFoundException { -@@ -50,18 +57,56 @@ - cinterfaces[i] = load(interfaces[i], cl); - } - -+ Class clazz = null; - try { -- return Proxy.getProxyClass(cl, cinterfaces); -+ clazz = Proxy.getProxyClass(cl, cinterfaces); - } catch (IllegalArgumentException e) { - try { -- return Proxy.getProxyClass(FALLBACK_CLASS_LOADER, cinterfaces); -+ clazz = Proxy.getProxyClass(FALLBACK_CLASS_LOADER, cinterfaces); - } catch (IllegalArgumentException e1) { - } - -- throw new ClassNotFoundException(null, e); -+ } -+ -+ if (clazz != null) { -+ checkSecurity(clazz); -+ return clazz; -+ } else { -+ throw new ClassNotFoundException(null); - } - } - -+ public static String[] getSerialziablePackages() { -+ if (serializablePackages == null) { -+ serializablePackages = System.getProperty("org.apache.activemq.SERIALIZABLE_PACKAGES", -+ "java.lang,java.util,org.apache.activemq,org.fusesource.hawtbuf,com.thoughtworks.xstream.mapper").split(","); -+ } -+ -+ return serializablePackages; -+ }; -+ -+ public static boolean isAllAllowed() { -+ return getSerialziablePackages().length == 1 && getSerialziablePackages()[0].equals("*"); -+ } -+ -+ private void checkSecurity(Class clazz) throws ClassNotFoundException { -+ if (!clazz.isPrimitive()) { -+ if (clazz.getPackage() != null && !isAllAllowed()) { -+ boolean found = false; -+ for (String packageName : getSerialziablePackages()) { -+ if (clazz.getPackage().getName().equals(packageName) || clazz.getPackage().getName().startsWith(packageName + ".")) { -+ found = true; -+ break; -+ } -+ } -+ -+ if (!found) { -+ throw new ClassNotFoundException("Forbidden " + clazz + "! This class is not allowed to be serialized. Add package with 'org.apache.activemq.SERIALIZABLE_PACKAGES' system property."); -+ } -+ } -+ } -+ } -+ - private Class load(String className, ClassLoader cl) throws ClassNotFoundException { - try { - return Class.forName(className, false, cl); -diff -Nru activemq-5.6.0/activemq-optional/src/main/java/org/apache/activemq/transport/xstream/XStreamWireFormat.java activemq-5.6.0.CVE-2015-5254/activemq-optional/src/main/java/org/apache/activemq/transport/xstream/XStreamWireFormat.java ---- activemq-5.6.0/activemq-optional/src/main/java/org/apache/activemq/transport/xstream/XStreamWireFormat.java 2012-09-11 01:12:25.000000000 +0200 -+++ activemq-5.6.0.CVE-2015-5254/activemq-optional/src/main/java/org/apache/activemq/transport/xstream/XStreamWireFormat.java 2015-12-15 08:41:19.421068945 +0100 -@@ -17,9 +17,15 @@ - package org.apache.activemq.transport.xstream; - - import com.thoughtworks.xstream.XStream; -+import com.thoughtworks.xstream.converters.Converter; -+import com.thoughtworks.xstream.converters.MarshallingContext; -+import com.thoughtworks.xstream.converters.UnmarshallingContext; -+import com.thoughtworks.xstream.io.HierarchicalStreamReader; -+import com.thoughtworks.xstream.io.HierarchicalStreamWriter; - import org.apache.activemq.command.Command; - import org.apache.activemq.command.MarshallAware; - import org.apache.activemq.command.MessageDispatch; -+import org.apache.activemq.transport.stomp.XStreamSupport; - import org.apache.activemq.transport.util.TextWireFormat; - import org.apache.activemq.wireformat.WireFormat; - -@@ -105,7 +111,28 @@ - // Implementation methods - // ------------------------------------------------------------------------- - protected XStream createXStream() { -- return new XStream(); -+ final XStream xstream = XStreamSupport.createXStream(); -+ xstream.ignoreUnknownElements(); -+ xstream.registerConverter(new Converter() { -+ final Converter delegate = xstream.getConverterLookup().lookupConverterForType(ByteSequence.class); -+ @Override -+ public void marshal(Object o, HierarchicalStreamWriter hierarchicalStreamWriter, MarshallingContext marshallingContext) { -+ ByteSequence byteSequence = (ByteSequence)o; -+ byteSequence.compact(); -+ delegate.marshal(byteSequence, hierarchicalStreamWriter, marshallingContext); -+ } -+ -+ @Override -+ public Object unmarshal(HierarchicalStreamReader hierarchicalStreamReader, UnmarshallingContext unmarshallingContext) { -+ return delegate.unmarshal(hierarchicalStreamReader, unmarshallingContext); -+ } -+ -+ @Override -+ public boolean canConvert(Class aClass) { -+ return aClass == ByteSequence.class; -+ } -+ }); -+ return xstream; - } - - } -diff -Nru activemq-5.6.0/activemq-web/src/main/java/org/apache/activemq/web/MessageQuery.java activemq-5.6.0.CVE-2015-5254/activemq-web/src/main/java/org/apache/activemq/web/MessageQuery.java ---- activemq-5.6.0/activemq-web/src/main/java/org/apache/activemq/web/MessageQuery.java 2012-09-11 01:12:25.000000000 +0200 -+++ activemq-5.6.0.CVE-2015-5254/activemq-web/src/main/java/org/apache/activemq/web/MessageQuery.java 2015-12-15 08:38:03.340297084 +0100 -@@ -80,9 +80,9 @@ - if (message instanceof ObjectMessage) { - try { - return ((ObjectMessage) message).getObject(); -- } catch (JMSException e) { -+ } catch (Exception e) { - //message could not be parsed, make the reason available -- return e; -+ return new String("Cannot display ObjectMessage body. Reason: " + e.getMessage()); - } - } - if (message instanceof MapMessage) { diff --git a/activemq-5.6.0-jaas-CVE-2015-6524.patch b/activemq-5.6.0-jaas-CVE-2015-6524.patch deleted file mode 100644 index 74c159d..0000000 --- a/activemq-5.6.0-jaas-CVE-2015-6524.patch +++ /dev/null @@ -1,197 +0,0 @@ ---- activemq-5.6.0/activemq-jaas/src/main/java/org/apache/activemq/jaas/LDAPLoginModule.java 2012-09-11 01:12:25.000000000 +0200 -+++ activemq-5.6.0/activemq-jaas/src/main/java/org/apache/activemq/jaas/LDAPLoginModule.java.CVE-2015-6524 2015-01-15 08:57:10.000000000 +0100 -@@ -17,22 +17,13 @@ - package org.apache.activemq.jaas; - - import java.io.IOException; -+import java.net.URI; -+import java.net.URISyntaxException; - import java.security.Principal; - import java.text.MessageFormat; --import java.util.ArrayList; --import java.util.HashSet; --import java.util.Hashtable; --import java.util.List; --import java.util.Map; --import java.util.Set; -- --import javax.naming.AuthenticationException; --import javax.naming.CommunicationException; --import javax.naming.Context; --import javax.naming.Name; --import javax.naming.NameParser; --import javax.naming.NamingEnumeration; --import javax.naming.NamingException; -+import java.util.*; -+ -+import javax.naming.*; - import javax.naming.directory.Attribute; - import javax.naming.directory.Attributes; - import javax.naming.directory.DirContext; -@@ -71,6 +62,8 @@ - private static final String ROLE_SEARCH_MATCHING = "roleSearchMatching"; - private static final String ROLE_SEARCH_SUBTREE = "roleSearchSubtree"; - private static final String USER_ROLE_NAME = "userRoleName"; -+ private static final String EXPAND_ROLES = "expandRoles"; -+ private static final String EXPAND_ROLES_MATCHING = "expandRolesMatching"; - - private static Logger log = LoggerFactory.getLogger(LDAPLoginModule.class); - -@@ -102,7 +95,10 @@ - new LDAPLoginProperty (ROLE_SEARCH_MATCHING, (String)options.get(ROLE_SEARCH_MATCHING)), - new LDAPLoginProperty (ROLE_SEARCH_SUBTREE, (String)options.get(ROLE_SEARCH_SUBTREE)), - new LDAPLoginProperty (USER_ROLE_NAME, (String)options.get(USER_ROLE_NAME)), -- }; -+ new LDAPLoginProperty (EXPAND_ROLES, (String) options.get(EXPAND_ROLES)), -+ new LDAPLoginProperty (EXPAND_ROLES_MATCHING, (String) options.get(EXPAND_ROLES_MATCHING)), -+ -+ }; - } - - @Override -@@ -194,7 +190,7 @@ - try { - - String filter = userSearchMatchingFormat.format(new String[] { -- username -+ doRFC2254Encoding(username) - }); - SearchControls constraints = new SearchControls(); - if (userSearchSubtreeBool) { -@@ -231,13 +227,43 @@ - if (results.hasMore()) { - // ignore for now - } -- NameParser parser = context.getNameParser(""); -- Name contextName = parser.parse(context.getNameInNamespace()); -- Name baseName = parser.parse(getLDAPPropertyValue(USER_BASE)); -- Name entryName = parser.parse(result.getName()); -- Name name = contextName.addAll(baseName); -- name = name.addAll(entryName); -- String dn = name.toString(); -+ -+ String dn; -+ if (result.isRelative()) { -+ log.debug("LDAP returned a relative name: {}", result.getName()); -+ -+ NameParser parser = context.getNameParser(""); -+ Name contextName = parser.parse(context.getNameInNamespace()); -+ Name baseName = parser.parse(getLDAPPropertyValue(USER_BASE)); -+ Name entryName = parser.parse(result.getName()); -+ Name name = contextName.addAll(baseName); -+ name = name.addAll(entryName); -+ dn = name.toString(); -+ } else { -+ log.debug("LDAP returned an absolute name: {}", result.getName()); -+ -+ try { -+ URI uri = new URI(result.getName()); -+ String path = uri.getPath(); -+ -+ if (path.startsWith("/")) { -+ dn = path.substring(1); -+ } else { -+ dn = path; -+ } -+ } catch (URISyntaxException e) { -+ if (context != null) { -+ close(context); -+ } -+ FailedLoginException ex = new FailedLoginException("Error parsing absolute name as URI."); -+ ex.initCause(e); -+ throw ex; -+ } -+ } -+ -+ if (log.isDebugEnabled()) { -+ log.debug("Using DN [" + dn + "] for binding."); -+ } - - Attributes attrs = result.getAttributes(); - if (attrs == null) { -@@ -281,8 +307,10 @@ - List list = currentRoles; - MessageFormat roleSearchMatchingFormat; - boolean roleSearchSubtreeBool; -+ boolean expandRolesBool; - roleSearchMatchingFormat = new MessageFormat(getLDAPPropertyValue(ROLE_SEARCH_MATCHING)); - roleSearchSubtreeBool = Boolean.valueOf(getLDAPPropertyValue(ROLE_SEARCH_SUBTREE)).booleanValue(); -+ expandRolesBool = Boolean.valueOf(getLDAPPropertyValue(EXPAND_ROLES)).booleanValue(); - - if (list == null) { - list = new ArrayList(); -@@ -291,7 +319,7 @@ - return list; - } - String filter = roleSearchMatchingFormat.format(new String[] { -- doRFC2254Encoding(dn), username -+ doRFC2254Encoding(dn), doRFC2254Encoding(username) - }); - - SearchControls constraints = new SearchControls(); -@@ -306,17 +334,40 @@ - log.debug(" base DN: " + getLDAPPropertyValue(ROLE_BASE)); - log.debug(" filter: " + filter); - } -+ HashSet haveSeenNames = new HashSet(); -+ Queue pendingNameExpansion = new LinkedList(); - NamingEnumeration results = context.search(getLDAPPropertyValue(ROLE_BASE), filter, constraints); - while (results.hasMore()) { - SearchResult result = results.next(); - Attributes attrs = result.getAttributes(); -+ if (expandRolesBool) { -+ haveSeenNames.add(result.getNameInNamespace()); -+ pendingNameExpansion.add(result.getNameInNamespace()); -+ } - if (attrs == null) { - continue; - } - list = addAttributeValues(getLDAPPropertyValue(ROLE_NAME), attrs, list); - } -+ if (expandRolesBool) { -+ MessageFormat expandRolesMatchingFormat = new MessageFormat(getLDAPPropertyValue(EXPAND_ROLES_MATCHING)); -+ while (!pendingNameExpansion.isEmpty()) { -+ String name = pendingNameExpansion.remove(); -+ filter = expandRolesMatchingFormat.format(new String[]{name}); -+ results = context.search(getLDAPPropertyValue(ROLE_BASE), filter, constraints); -+ while (results.hasMore()) { -+ SearchResult result = results.next(); -+ name = result.getNameInNamespace(); -+ if (!haveSeenNames.contains(name)) { -+ Attributes attrs = result.getAttributes(); -+ list = addAttributeValues(getLDAPPropertyValue(ROLE_NAME), attrs, list); -+ haveSeenNames.add(name); -+ pendingNameExpansion.add(name); -+ } -+ } -+ } -+ } - return list; -- - } - - protected String doRFC2254Encoding(String inputString) { -@@ -408,9 +459,14 @@ - env.put(Context.INITIAL_CONTEXT_FACTORY, getLDAPPropertyValue(INITIAL_CONTEXT_FACTORY)); - if (isLoginPropertySet(CONNECTION_USERNAME)) { - env.put(Context.SECURITY_PRINCIPAL, getLDAPPropertyValue(CONNECTION_USERNAME)); -+ } else { -+ throw new NamingException("Empty username is not allowed"); - } -+ - if (isLoginPropertySet(CONNECTION_PASSWORD)) { - env.put(Context.SECURITY_CREDENTIALS, getLDAPPropertyValue(CONNECTION_PASSWORD)); -+ } else { -+ throw new NamingException("Empty password is not allowed"); - } - env.put(Context.SECURITY_PROTOCOL, getLDAPPropertyValue(CONNECTION_PROTOCOL)); - env.put(Context.PROVIDER_URL, getLDAPPropertyValue(CONNECTION_URL)); -@@ -433,7 +489,7 @@ - - private boolean isLoginPropertySet(String propertyName) { - for (int i=0; i < config.length; i++ ) { -- if (config[i].getPropertyName() == propertyName && config[i].getPropertyValue() != null) -+ if (config[i].getPropertyName() == propertyName && (config[i].getPropertyValue() != null && !"".equals(config[i].getPropertyValue()))) - return true; - } - return false; diff --git a/activemq.spec b/activemq.spec deleted file mode 100644 index 40f4eea..0000000 --- a/activemq.spec +++ /dev/null @@ -1,219 +0,0 @@ -Name: activemq -Version: 5.6.0 -Release: 23%{?dist} -Summary: Open source messaging and Integration Patterns server -License: ASL 2.0 -URL: http://activemq.apache.org -# git clone -b activemq-5.6.0 https://github.com/apache/activemq.git activemq-core-5.6.0 -# rm -rf activemq-core-5.6.0/.git -# tar cJf activemq-core-5.6.0.tar.xz activemq-core-5.6.0 -Source0: activemq-5.6.0.tar.xz - -Patch0: activemq-5.6.0-jaas-CVE-2015-6524.patch -Patch1: activemq-5.6.0-CVE-2015-5254.patch - -BuildRequires: maven-local -BuildRequires: mvn(com.thoughtworks.xstream:xstream) -BuildRequires: mvn(commons-net:commons-net) -BuildRequires: mvn(org.apache.derby:derby) -BuildRequires: mvn(org.apache.activemq:activeio-core) -BuildRequires: mvn(org.apache.activemq.protobuf:activemq-protobuf) -BuildRequires: mvn(org.apache.felix:maven-bundle-plugin) -BuildRequires: mvn(org.apache.geronimo.specs:geronimo-jms_1.1_spec) -BuildRequires: mvn(org.apache.geronimo.specs:geronimo-jta_1.1_spec) -BuildRequires: mvn(org.apache.maven.plugins:maven-antrun-plugin) -BuildRequires: mvn(org.apache.maven.plugins:maven-clean-plugin) -BuildRequires: mvn(org.apache.maven.plugins:maven-enforcer-plugin) -BuildRequires: mvn(org.apache.rat:apache-rat-plugin) -BuildRequires: mvn(org.apache.xbean:maven-xbean-plugin) -BuildRequires: mvn(org.codehaus.jettison:jettison) -BuildRequires: mvn(org.codehaus.mojo:javacc-maven-plugin) -BuildRequires: mvn(org.jasypt:jasypt) -BuildRequires: mvn(org.springframework:spring-jms) - -BuildArch: noarch - -%description -The most popular and powerful open source messaging and Integration Patterns -server. - -%package core -Summary: ActiveMQ Core - -%description core -ActiveMQ Core Library. - -%package jaas -Summary: ActiveMQ Jaas - -%description jaas -ActiveMQ Jaas Library. - -%package kahadb -Summary: ActiveMQ KahaDB - -%description kahadb -A file based persistence database that is local to the message broker that -is using it. It has been optimized for fast persistence and is the the default -storage mechanism from ActiveMQ 5.4 onwards. KahaDB uses less file descriptors -and provides faster recovery than its predecessor, the AMQ Message Store. - -%package javadoc -Summary: Javadoc for %{name} - -%description javadoc -This package contains javadoc for %{name}. - -%prep - -%setup -q -n %{name}-%{version} -%patch0 -p1 -%patch1 -p1 - -# Disable modules -for m in all camel console fileserver blueprint karaf \ - openwire-generator optional pool ra rar run spring \ - tooling web web-demo web-console xmpp jmdns_1.0 -do - %pom_disable_module %{name}-${m} -done - -%pom_disable_module assembly - -# Remove missing plugin for activemq-core -%pom_remove_dep xsddoc:maven-xsddoc-plugin %{name}-core/pom.xml - -# Remove missing plugin -%pom_remove_plugin org.codehaus.mojo:ianal-maven-plugin -%pom_remove_plugin -r :cobertura-maven-plugin -# Workaround for new bundle plugin -%pom_xpath_remove "pom:plugin[pom:artifactId = 'maven-bundle-plugin' ]/pom:configuration" - -# Remove missing test dependencies -%pom_remove_dep org.springframework:spring-test - -# Remove missing optional dependencies -%pom_remove_dep org.apache.geronimo.specs:geronimo-j2ee-management_1.1_spec - -# Remove jmdns support -rm -rf %{name}-core/src/main/java/org/apache/activemq/transport/discovery/zeroconf -%pom_remove_dep org.apache.activemq:activemq-jmdns_1.0 %{name}-core/pom.xml - -# Remove leveldb support -rm -rf %{name}-core/src/main/java/org/apache/activemq/store/leveldb -%pom_remove_dep org.fusesource.fuse-extra:fusemq-leveldb %{name}-core/pom.xml - -# Remove mqtt support -rm -rf %{name}-core/src/main/java/org/apache/activemq/transport/mqtt -%pom_remove_dep org.fusesource.mqtt-client:mqtt-client %{name}-core/pom.xml - -# Remove other optional dependencies -%pom_remove_dep org.apache.activemq:activemq-openwire-generator %{name}-core/pom.xml -%pom_remove_dep org.apache.geronimo.specs:geronimo-j2ee-management_1.1_spec %{name}-core/pom.xml -%pom_remove_dep org.apache.geronimo.specs:geronimo-jta_1.0.1B_spec %{name}-core/pom.xml -%pom_remove_dep org.apache.geronimo.specs:geronimo-jacc_1.1_spec %{name}-core/pom.xml -%pom_remove_dep org.apache.geronimo.specs:geronimo-annotation_1.0_spec %{name}-core/pom.xml - -chmod 644 LICENSE README.txt - -# Fix license file encoding -mv LICENSE LICENSE.orig -iconv -f iso-8859-1 -t utf-8 LICENSE.orig > LICENSE - -%mvn_package ":activemq-core:{xsd}::" __noinstall - -%build -%mvn_build -sf - -%install -%mvn_install - -%files -f .mfiles-activemq-parent -%doc README.txt -%license LICENSE NOTICE - -%files core -f .mfiles-activemq-core -%license LICENSE NOTICE - -%files jaas -f .mfiles-activemq-jaas -%license LICENSE NOTICE - -%files kahadb -f .mfiles-kahadb -%license LICENSE NOTICE - -%files javadoc -f .mfiles-javadoc -%license LICENSE NOTICE - -%changelog -* Wed Jul 24 2019 Fedora Release Engineering - 5.6.0-23 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild - -* Thu Jan 31 2019 Fedora Release Engineering - 5.6.0-22 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild - -* Thu Jul 12 2018 Fedora Release Engineering - 5.6.0-21 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild - -* Wed Feb 07 2018 Fedora Release Engineering - 5.6.0-20 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild - -* Wed Jul 26 2017 Fedora Release Engineering - 5.6.0-19 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild - -* Fri Feb 10 2017 Fedora Release Engineering - 5.6.0-18 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild - -* Wed Jun 29 2016 gil cattaneo 5.6.0-17 -- add missing build requires - -* Mon Jun 20 2016 gil cattaneo 5.6.0-16 -- add missing build requires - -* Wed Feb 03 2016 Fedora Release Engineering - 5.6.0-15 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild - -* Tue Dec 15 2015 gil cattaneo 5.6.0-14 -- fix for CVE-2015-5254 (rhbz#1291292,1291293) - -* Sat Nov 28 2015 gil cattaneo - 5.6.0-13 -- rebuilt - -* Fri Sep 25 2015 gil cattaneo 5.6.0-12 -- fix for CVE-2015-6524 (rhbz#1257246,1257248) - -* Sun Aug 09 2015 gil cattaneo 5.6.0-11 -- fix FTBFS rhbz#1239362 -- fix BR list and use BR mvn()-like -- introduce license macro - -* Tue Jun 16 2015 Fedora Release Engineering - 5.6.0-10 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild - -* Mon Jun 16 2014 Michal Srb - 5.6.0-9 -- Fix FTBFS - -* Sat Jun 07 2014 Fedora Release Engineering - 5.6.0-8 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild - -* Mon Oct 14 2013 Marek Goldmann - 5.6.0-7 -- Use xmvn -- Fixes Remove binary distribution usage, RHBZ#1018696 - -* Sat Aug 03 2013 Fedora Release Engineering - 5.6.0-6 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild - -* Sun Mar 03 2013 Matt Spaulding - 5.6.0-5 -- Removed optional geronimo-annotation dependency from activemq-core - -* Wed Feb 13 2013 Fedora Release Engineering - 5.6.0-4 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild - -* Wed Sep 19 2012 Matt Spaulding - 5.6.0-3 -- Added NOTICE to all subpackages - -* Wed Sep 19 2012 Matt Spaulding - 5.6.0-2 -- Removed references to RPM_BUILD_ROOT for consistency - -* Mon Sep 10 2012 Matt Spaulding - 5.6.0-1 -- Initial RPM package - diff --git a/dead.package b/dead.package new file mode 100644 index 0000000..a3473b1 --- /dev/null +++ b/dead.package @@ -0,0 +1 @@ +activemq fails to build from source: https://bugzilla.redhat.com/show_bug.cgi?id=1674631 diff --git a/sources b/sources deleted file mode 100644 index 4c3de78..0000000 --- a/sources +++ /dev/null @@ -1 +0,0 @@ -9899f3be7eb799c9641d6a614b42f276 activemq-5.6.0.tar.xz