import byteman-4.0.4-2.el8
This commit is contained in:
commit
6097d89a7a
1
.byteman.metadata
Normal file
1
.byteman.metadata
Normal file
@ -0,0 +1 @@
|
||||
4572a27f156b3cba082db187c7712059e99cfd5c SOURCES/4.0.4.tar.gz
|
1
.gitignore
vendored
Normal file
1
.gitignore
vendored
Normal file
@ -0,0 +1 @@
|
||||
SOURCES/4.0.4.tar.gz
|
14
SOURCES/remove_submit_integration_test_verification.patch
Normal file
14
SOURCES/remove_submit_integration_test_verification.patch
Normal file
@ -0,0 +1,14 @@
|
||||
diff --git a/byteman-4.0.2/agent/verification.xml b/byteman-4.0.2/agent/verification.xml
|
||||
index f530cfe..52ece06 100644
|
||||
--- a/byteman-4.0.2/agent/verification.xml
|
||||
+++ b/byteman-4.0.2/agent/verification.xml
|
||||
@@ -171,9 +171,5 @@
|
||||
<location>target/failsafe-reports/org.jboss.byteman.tests.misc.TestThrowBinding.txt</location>
|
||||
<exists/>
|
||||
</file>
|
||||
- <file>
|
||||
- <location>target/failsafe-reports/org.jboss.byteman.tests.submit.TestSubmit.txt</location>
|
||||
- <exists/>
|
||||
- </file>
|
||||
</files>
|
||||
</verifications>
|
327
SPECS/byteman.spec
Normal file
327
SPECS/byteman.spec
Normal file
@ -0,0 +1,327 @@
|
||||
# Note to the interested reader:
|
||||
# fedpkg mockbuild --without tests
|
||||
# will make mvn_build macro skip tests.
|
||||
# See: https://github.com/fedora-java/javapackages/issues/62
|
||||
|
||||
%global javacup_or_asm java_cup:java_cup|org\\.ow2\\.asm:asm.*
|
||||
# Don't have generated mvn()-style requires for java_cup or asm
|
||||
%global mvn_javacup_or_asm_matcher .*mvn\\(%{javacup_or_asm}\\)
|
||||
# Don't have generated requires for java-headless >= 1:1.9
|
||||
%global java_headless_matcher java-headless >= 1:(1\\.9|9)
|
||||
%global __requires_exclude ^%{mvn_javacup_or_asm_matcher}|%{java_headless_matcher}$
|
||||
|
||||
%global homedir %{_datadir}/%{name}
|
||||
%global bindir %{homedir}/bin
|
||||
|
||||
Name: byteman
|
||||
Version: 4.0.4
|
||||
Release: 2%{?dist}
|
||||
Summary: Java agent-based bytecode injection tool
|
||||
License: LGPLv2+
|
||||
URL: http://www.jboss.org/byteman
|
||||
# wget -O 4.0.4.tar.gz https://github.com/bytemanproject/byteman/archive/4.0.4.tar.gz
|
||||
Source0: https://github.com/bytemanproject/byteman/archive/%{version}.tar.gz
|
||||
|
||||
BuildArch: noarch
|
||||
|
||||
# Byteman 4.x requires JDK 9+ to build. Require JDK 11 explicitly.
|
||||
BuildRequires: java-11-openjdk-devel
|
||||
BuildRequires: maven-local
|
||||
BuildRequires: maven-shade-plugin
|
||||
BuildRequires: maven-source-plugin
|
||||
BuildRequires: maven-plugin-plugin
|
||||
BuildRequires: maven-plugin-bundle
|
||||
BuildRequires: maven-assembly-plugin
|
||||
BuildRequires: maven-failsafe-plugin
|
||||
BuildRequires: maven-jar-plugin
|
||||
BuildRequires: maven-surefire-plugin
|
||||
BuildRequires: maven-surefire-provider-testng
|
||||
BuildRequires: maven-surefire-provider-junit
|
||||
BuildRequires: maven-verifier-plugin
|
||||
BuildRequires: maven-dependency-plugin
|
||||
BuildRequires: java_cup
|
||||
BuildRequires: jarjar
|
||||
BuildRequires: objectweb-asm
|
||||
BuildRequires: junit
|
||||
BuildRequires: testng
|
||||
# JBoss modules byteman plugin requires it
|
||||
BuildRequires: mvn(org.jboss.modules:jboss-modules)
|
||||
|
||||
Provides: bundled(objectweb-asm) = 6.2
|
||||
Provides: bundled(java_cup) = 1:0.11b-8
|
||||
# We are filtering java-headless >= 1:1.9 requirement. Add
|
||||
# JDK 8 requirement here explicitly which shouldn't match the filter.
|
||||
Requires: java-headless >= 1:1.8
|
||||
|
||||
# Related pieces removed via pom_xpath_remove macros
|
||||
Patch1: remove_submit_integration_test_verification.patch
|
||||
|
||||
%description
|
||||
Byteman is a tool which simplifies tracing and testing of Java programs.
|
||||
Byteman allows you to insert extra Java code into your application,
|
||||
either as it is loaded during JVM startup or even after it has already
|
||||
started running. The injected code is allowed to access any of your data
|
||||
and call any application methods, including where they are private.
|
||||
You can inject code almost anywhere you want and there is no need to
|
||||
prepare the original source code in advance nor do you have to recompile,
|
||||
repackage or redeploy your application. In fact you can remove injected
|
||||
code and reinstall different code while the application continues to execute.
|
||||
|
||||
%package javadoc
|
||||
Summary: Javadoc for %{name}
|
||||
|
||||
%description javadoc
|
||||
This package contains the API documentation for %{name}.
|
||||
|
||||
%package rulecheck-maven-plugin
|
||||
Summary: Maven plugin for checking Byteman rules.
|
||||
|
||||
%description rulecheck-maven-plugin
|
||||
This package contains the Byteman rule check maven plugin.
|
||||
|
||||
%package bmunit
|
||||
Summary: TestNG and JUnit integration for Byteman.
|
||||
|
||||
%description bmunit
|
||||
The Byteman bmunit jar provides integration of Byteman into
|
||||
TestNG and JUnit tests.
|
||||
|
||||
%package dtest
|
||||
Summary: Remote byteman instrumented testing.
|
||||
|
||||
%description dtest
|
||||
The Byteman dtest jar supports instrumentation of test code executed on
|
||||
remote server hosts and validation of assertions describing the expected
|
||||
operation of the instrumented methods.
|
||||
|
||||
%prep
|
||||
%setup -q -n byteman-%{version}
|
||||
|
||||
# Don't use javadoc plugin, use XMvn for javadocs
|
||||
%pom_remove_plugin -r :maven-javadoc-plugin
|
||||
%pom_xpath_remove 'pom:execution[pom:id="make-javadoc-assembly"]' byteman
|
||||
|
||||
# Fix the gid:aid for java_cup
|
||||
sed -i "s|net.sf.squirrel-sql.thirdparty-non-maven|java_cup|" agent/pom.xml
|
||||
sed -i "s|java-cup|java_cup|" agent/pom.xml
|
||||
sed -i "s|net.sf.squirrel-sql.thirdparty-non-maven|java_cup|" tests/pom.xml
|
||||
sed -i "s|java-cup|java_cup|" tests/pom.xml
|
||||
|
||||
# Remove Submit integration test invocations (agent)
|
||||
%pom_xpath_remove "pom:build/pom:plugins/pom:plugin[pom:artifactId='maven-failsafe-plugin']/pom:executions/pom:execution[pom:id='submit.TestSubmit']" agent
|
||||
%pom_xpath_remove "pom:build/pom:plugins/pom:plugin[pom:artifactId='maven-failsafe-plugin']/pom:executions/pom:execution[pom:id='submit.TestSubmit.compiled']" agent
|
||||
%patch1 -p2
|
||||
|
||||
# Remove Submit integration test invocations (tests)
|
||||
%pom_xpath_remove "pom:build/pom:plugins/pom:plugin[pom:artifactId='maven-failsafe-plugin']/pom:executions/pom:execution[pom:id='submit.TestSubmit']" tests
|
||||
%pom_xpath_remove "pom:build/pom:plugins/pom:plugin[pom:artifactId='maven-failsafe-plugin']/pom:executions/pom:execution[pom:id='submit.TestSubmit.compiled']" tests
|
||||
|
||||
# Remove scope=system and systemPath for com.sun:tools
|
||||
%pom_xpath_remove "pom:profiles/pom:profile/pom:dependencies/pom:dependency[pom:artifactId='tools']/pom:scope" install
|
||||
%pom_xpath_remove "pom:profiles/pom:profile/pom:dependencies/pom:dependency[pom:artifactId='tools']/pom:systemPath" install
|
||||
%pom_xpath_remove "pom:profiles/pom:profile/pom:dependencies/pom:dependency[pom:artifactId='tools']/pom:scope" contrib/bmunit
|
||||
%pom_xpath_remove "pom:profiles/pom:profile/pom:dependencies/pom:dependency[pom:artifactId='tools']/pom:systemPath" contrib/bmunit
|
||||
|
||||
# Some tests fail intermittently during builds. Disable them.
|
||||
%pom_xpath_remove "pom:build/pom:plugins/pom:plugin[pom:artifactId='maven-surefire-plugin']/pom:executions" contrib/bmunit
|
||||
%pom_xpath_set "pom:build/pom:plugins/pom:plugin[pom:artifactId='maven-surefire-plugin']/pom:configuration" '<skip>true</skip>' contrib/bmunit
|
||||
|
||||
# Don't build download, docs modules
|
||||
%pom_disable_module download
|
||||
%pom_disable_module docs
|
||||
|
||||
# Put maven plugin into a separate package
|
||||
%mvn_package ":byteman-rulecheck-maven-plugin" rulecheck-maven-plugin
|
||||
# Put byteman-bmunit/byteman-dtest into a separate packages since they
|
||||
# runtime require junit
|
||||
%mvn_package ":byteman-bmunit" bmunit
|
||||
%mvn_package ":byteman-dtest" dtest
|
||||
|
||||
%build
|
||||
export JAVA_HOME=/usr/lib/jvm/java-11-openjdk
|
||||
%mvn_build
|
||||
|
||||
%install
|
||||
%mvn_install
|
||||
|
||||
install -d -m 755 $RPM_BUILD_ROOT%{_bindir}
|
||||
|
||||
install -d -m 755 $RPM_BUILD_ROOT%{homedir}
|
||||
install -d -m 755 $RPM_BUILD_ROOT%{homedir}/lib
|
||||
install -d -m 755 $RPM_BUILD_ROOT%{bindir}
|
||||
|
||||
install -m 755 bin/bmsubmit.sh $RPM_BUILD_ROOT%{bindir}/bmsubmit
|
||||
install -m 755 bin/bminstall.sh $RPM_BUILD_ROOT%{bindir}/bminstall
|
||||
install -m 755 bin/bmjava.sh $RPM_BUILD_ROOT%{bindir}/bmjava
|
||||
install -m 755 bin/bmcheck.sh $RPM_BUILD_ROOT%{bindir}/bmcheck
|
||||
|
||||
for f in bmsubmit bmjava bminstall bmcheck; do
|
||||
cat > $RPM_BUILD_ROOT%{_bindir}/${f} << EOF
|
||||
#!/bin/sh
|
||||
|
||||
export BYTEMAN_HOME=/usr/share/byteman
|
||||
export JAVA_HOME=/usr/lib/jvm/java
|
||||
|
||||
\$BYTEMAN_HOME/bin/${f} \$*
|
||||
EOF
|
||||
done
|
||||
|
||||
chmod 755 $RPM_BUILD_ROOT%{_bindir}/*
|
||||
|
||||
for m in bmunit dtest install sample submit; do
|
||||
ln -s %{_javadir}/byteman/byteman-${m}.jar $RPM_BUILD_ROOT%{homedir}/lib/byteman-${m}.jar
|
||||
done
|
||||
|
||||
# Create contrib/jboss-module-system structure since bminstall expects it
|
||||
# for the -m option.
|
||||
install -d -m 755 $RPM_BUILD_ROOT%{homedir}/contrib
|
||||
install -d -m 755 $RPM_BUILD_ROOT%{homedir}/contrib/jboss-modules-system
|
||||
ln -s %{_javadir}/byteman/byteman-jboss-modules-plugin.jar $RPM_BUILD_ROOT%{homedir}/contrib/jboss-modules-system/byteman-jboss-modules-plugin.jar
|
||||
|
||||
ln -s %{_javadir}/byteman/byteman.jar $RPM_BUILD_ROOT%{homedir}/lib/byteman.jar
|
||||
|
||||
%files -f .mfiles
|
||||
%{homedir}/lib/byteman.jar
|
||||
%{homedir}/lib/byteman-install.jar
|
||||
%{homedir}/lib/byteman-sample.jar
|
||||
%{homedir}/lib/byteman-submit.jar
|
||||
%{homedir}/contrib/*
|
||||
%{bindir}/*
|
||||
%{_bindir}/*
|
||||
%doc README
|
||||
%license docs/copyright.txt
|
||||
|
||||
%files javadoc -f .mfiles-javadoc
|
||||
%license docs/copyright.txt
|
||||
|
||||
%files rulecheck-maven-plugin -f .mfiles-rulecheck-maven-plugin
|
||||
%license docs/copyright.txt
|
||||
|
||||
%files bmunit -f .mfiles-bmunit
|
||||
%license docs/copyright.txt
|
||||
%{homedir}/lib/byteman-bmunit.jar
|
||||
|
||||
%files dtest -f .mfiles-dtest
|
||||
%license docs/copyright.txt
|
||||
%{homedir}/lib/byteman-dtest.jar
|
||||
|
||||
%changelog
|
||||
* Wed Jul 18 2018 Severin Gehwolf <sgehwolf@redhat.com> - 4.0.4-2
|
||||
- Rebuild with java-11-openjdk.
|
||||
|
||||
* Tue Jul 10 2018 Severin Gehwolf <sgehwolf@redhat.com> - 4.0.4-1
|
||||
- Update to latest upstream 4.0.4 release.
|
||||
- Split junit-dependent packages into sub-packages:
|
||||
byteman-dtest, byteman-bmunit
|
||||
- Fix automatically generated requirements:
|
||||
- ASM is BR-only and bundled.
|
||||
- java-headless >= 1:1.9 would get generated, but byteman 4.x
|
||||
runs on JDK 8 too (would even work for JDK 6)
|
||||
|
||||
* Tue Jul 03 2018 Severin Gehwolf <sgehwolf@redhat.com> - 4.0.3-1
|
||||
- Update to latest upstream 4.0.3 release.
|
||||
|
||||
* Mon Jul 02 2018 Severin Gehwolf <sgehwolf@redhat.com> - 4.0.2-1
|
||||
- Update to latest upstream 4.0.2 release.
|
||||
- Adds support for modular JDKs.
|
||||
|
||||
* Wed May 16 2018 Severin Gehwolf <sgehwolf@redhat.com> - 3.0.6-6
|
||||
- Add maven-javadoc-plugin as BR. Fix versions of bundled
|
||||
libs.
|
||||
|
||||
* Wed Feb 07 2018 Fedora Release Engineering <releng@fedoraproject.org> - 3.0.6-5
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
|
||||
|
||||
* Wed Jul 26 2017 Fedora Release Engineering <releng@fedoraproject.org> - 3.0.6-4
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
|
||||
|
||||
* Fri Feb 10 2017 Fedora Release Engineering <releng@fedoraproject.org> - 3.0.6-3
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
|
||||
|
||||
* Fri Dec 09 2016 Severin Gehwolf <sgehwolf@redhat.com> - 3.0.6-2
|
||||
- Add BRs, maven-plugin-bundle, maven-source-plugin and
|
||||
maven-plugin-plugin, fixing FTBFS.
|
||||
- Resolves: RHBZ#1402998
|
||||
|
||||
* Mon Jun 13 2016 Severin Gehwolf <sgehwolf@redhat.com> - 3.0.6-1
|
||||
- Update to latest upstream release.
|
||||
|
||||
* Mon Mar 14 2016 Severin Gehwolf <sgehwolf@redhat.com> - 3.0.4-2
|
||||
- Enable some tests during build
|
||||
- Fix generated requires by filtering requires for bundled libs.
|
||||
- Split maven plugin into separate package.
|
||||
|
||||
* Thu Feb 18 2016 Severin Gehwolf <sgehwolf@redhat.com> - 3.0.4-1
|
||||
- Update to latest upstream 3.0.4 release.
|
||||
|
||||
* Wed Feb 03 2016 Fedora Release Engineering <releng@fedoraproject.org> - 2.1.4.1-8
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
|
||||
|
||||
* Thu Aug 06 2015 gil cattaneo <puntogil@libero.it> 2.1.4.1-7
|
||||
- Fix FTBFS rhbz#1239392
|
||||
- Remove duplicate files
|
||||
- Introduce license macro
|
||||
|
||||
* Wed Jun 17 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.1.4.1-6
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
|
||||
|
||||
* Fri Feb 27 2015 Michal Srb <msrb@redhat.com> - 2.1.4.1-5
|
||||
- Fix FTBFS
|
||||
- Rebuild to generate new metadata
|
||||
|
||||
* Sat Jun 07 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.1.4.1-4
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
|
||||
|
||||
* Fri Apr 18 2014 Marek Goldmann <mgoldman@redhat.com> - 2.1.4.1-3
|
||||
- Rebuilding for objectweb-asm update, RHBZ#1083570
|
||||
|
||||
* Fri Mar 28 2014 Michael Simacek <msimacek@redhat.com> - 2.1.4.1-2
|
||||
- Use Requires: java-headless rebuild (#1067528)
|
||||
|
||||
* Fri Feb 14 2014 Marek Goldmann <mgoldman@redhat.com> - 2.1.4.1-1
|
||||
- Upstream release 2.1.4.1
|
||||
|
||||
* Sat Aug 03 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.1.2-2
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
|
||||
|
||||
* Thu Jul 04 2013 Marek Goldmann <mgoldman@redhat.com> - 2.1.2-1
|
||||
- Upstream release 2.1.2
|
||||
|
||||
* Wed Jun 5 2013 Mikolaj Izdebski <mizdebsk@redhat.com> - 2.0.4-5
|
||||
- Remove tools.jar from dependencyManagement
|
||||
|
||||
* Wed May 29 2013 Marek Goldmann <mgoldman@redhat.com> - 2.0.4-4
|
||||
- New guidelines
|
||||
|
||||
* Thu Apr 25 2013 Marek Goldmann <mgoldman@redhat.com> - 2.0.4-3
|
||||
- Fixes to the launch scripts
|
||||
|
||||
* Wed Apr 24 2013 Marek Goldmann <mgoldman@redhat.com> - 2.0.4-2
|
||||
- Added bmsubmit, bminstall and bmjava scripts, RHBZ#951560
|
||||
|
||||
* Thu Feb 21 2013 Marek Goldmann <mgoldman@redhat.com> - 2.0.4-1
|
||||
- Upstream release 2.0.4
|
||||
- Switched to Maven
|
||||
- Bundling java_cup and objectweb-asm (fpc#226)
|
||||
|
||||
* Wed Feb 13 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.5.2-6
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
|
||||
|
||||
* Wed Jul 18 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.5.2-5
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
|
||||
|
||||
* Thu Jan 12 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.5.2-4
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild
|
||||
|
||||
* Tue Sep 20 2011 Marek Goldmann <mgoldman@redhat.com> 1.5.2-3
|
||||
- Removed binary files from src.rpm
|
||||
|
||||
* Mon Sep 19 2011 Marek Goldmann <mgoldman@redhat.com> 1.5.2-2
|
||||
- Cleaned spec file
|
||||
|
||||
* Wed Jul 27 2011 Marek Goldmann <mgoldman@redhat.com> 1.5.2-1
|
||||
- Upstream release: 1.5.2
|
||||
|
||||
* Thu Jul 21 2011 Marek Goldmann <mgoldman@redhat.com> 1.5.1-1
|
||||
- Initial packaging
|
||||
|
Loading…
Reference in New Issue
Block a user