Projects
Mega:24.03
objectweb-asm
_service:tar_scm:objectweb-asm.spec
Sign Up
Log In
Username
Password
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File _service:tar_scm:objectweb-asm.spec of Package objectweb-asm
%bcond_without junit5 %bcond_without osgi Name: objectweb-asm Version: 8.0.1 Release: 1 Summary: Java bytecode manipulation and analysis framework License: BSD URL: http://asm.ow2.org/ BuildArch: noarch Source0: objectweb-asm-%{version}.tar.gz Source1: parent.pom Source2: http://repo1.maven.org/maven2/org/ow2/asm/asm/%{version}/asm-%{version}.pom Source3: http://repo1.maven.org/maven2/org/ow2/asm/asm-analysis/%{version}/asm-analysis-%{version}.pom Source4: http://repo1.maven.org/maven2/org/ow2/asm/asm-commons/%{version}/asm-commons-%{version}.pom Source5: http://repo1.maven.org/maven2/org/ow2/asm/asm-test/%{version}/asm-test-%{version}.pom Source6: http://repo1.maven.org/maven2/org/ow2/asm/asm-tree/%{version}/asm-tree-%{version}.pom Source7: http://repo1.maven.org/maven2/org/ow2/asm/asm-util/%{version}/asm-util-%{version}.pom Source8: asm-all.pom Source9: generate-tarball.sh Patch0: 0001-Revert-upstream-change-2a58bc9.patch Patch1: 0002-Catch-CompileException-in-test.patch BuildRequires: maven-local mvn(org.apache.felix:maven-bundle-plugin) BuildRequires: mvn(org.apache.maven.plugins:maven-shade-plugin) mvn(org.ow2:ow2:pom:) %if %{with junit5} BuildRequires: mvn(org.codehaus.janino:janino) mvn(org.junit.jupiter:junit-jupiter-api) BuildRequires: mvn(org.junit.jupiter:junit-jupiter-engine) BuildRequires: mvn(org.junit.jupiter:junit-jupiter-params) BuildRequires: mvn(org.apache.maven.surefire:surefire-junit-platform) %endif %if %{with osgi} BuildRequires: objectweb-asm >= 6 %endif Requires: javapackages-tools %description ASM is an all purpose Java bytecode manipulation and analysis framework. It can be used to modify existing classes or dynamically generate classes, directly in binary form. Provided common transformations and analysis algorithms allow to easily assemble custom complex transformations and code analysis tools. %package javadoc Summary: API documentation for %{name} %description javadoc This package provides %{summary}. %prep %autosetup -n %{name}-%{version} -p1 cp -p %{SOURCE1} pom.xml %if %{without junit5} %pom_disable_module asm-test %endif for pom in asm asm-analysis asm-commons asm-test asm-tree asm-util; do cp -p $RPM_SOURCE_DIR/${pom}-%{version}.pom $pom/pom.xml # Fix junit5 configuration %if %{with junit5} %pom_add_dep org.junit.jupiter:junit-jupiter-engine:5.1.0:test $pom %pom_add_plugin org.apache.maven.plugins:maven-surefire-plugin:2.22.0 $pom %endif %if %{with osgi} if [ "$pom" != "asm-test" ] ; then # Make into OSGi bundles bsn="org.objectweb.${pom//-/.}" %pom_xpath_inject pom:project "<packaging>bundle</packaging>" $pom %pom_add_plugin org.apache.felix:maven-bundle-plugin:3.5.0 $pom \ " <extensions>true</extensions> <configuration> <instructions> <Bundle-SymbolicName>$bsn</Bundle-SymbolicName> <Bundle-RequiredExecutionEnvironment>JavaSE-1.8</Bundle-RequiredExecutionEnvironment> <_removeheaders>Bnd-LastModified,Build-By,Created-By,Include-Resource,Require-Capability,Tool</_removeheaders> <_pluginpath>$(pwd)/tools/bnd-module-plugin/bnd-module-plugin.jar, $(find-jar objectweb-asm/asm-all)</_pluginpath> <_plugin>org.objectweb.asm.tools.ModuleInfoBndPlugin;</_plugin> </instructions> </configuration>" fi %endif done sed -i -e '/testToByteArray_computeMaxs_largeSubroutines/i@org.junit.jupiter.api.Disabled("missing class file")' \ asm/src/test/java/org/objectweb/asm/ClassWriterTest.java sed -i -e '/testAnalyze_mergeWithJsrReachableFromTwoDifferentPaths/i@org.junit.jupiter.api.Disabled("missing class file")' \ asm-analysis/src/test/java/org/objectweb/asm/tree/analysis/AnalyzerWithBasicInterpreterTest.java sed -i -e '/testAllMethods_issue317586()/i@org.junit.jupiter.api.Disabled("missing class file")' \ asm-commons/src/test/java/org/objectweb/asm/commons/LocalVariablesSorterTest.java # Remove failing test SerialVersionUidAdderTest due to missing class files rm asm-commons/src/test/java/org/objectweb/asm/commons/SerialVersionUidAdderTest.java mkdir -p asm-all sed 's/@VERSION@/%{version}/g' %{SOURCE8} > asm-all/pom.xml %pom_remove_dep org.ow2.asm:asm-test asm-test %mvn_alias :asm-all org.ow2.asm:asm-debug-all %mvn_package :asm-aggregator __noinstall %mvn_package :asm-test __noinstall %build pushd tools/bnd-module-plugin javac -sourcepath ../../asm/src/main/java/ -cp $(build-classpath aqute-bnd) $(find -name *.java) jar cf bnd-module-plugin.jar -C src/main/java org popd %if %{with junit5} %mvn_build -- -Dmaven.compiler.source=1.8 -Dmaven.compiler.target=1.8 %else %mvn_build -f -- -Dmaven.compiler.source=1.8 -Dmaven.compiler.target=1.8 %endif %install %mvn_install %jpackage_script org.objectweb.asm.xml.Processor "" "" %{name}/asm:%{name}/asm-attrs:%{name}/asm-util %{name}-processor true %files -f .mfiles %license LICENSE.txt %{_bindir}/%{name}-processor %files javadoc -f .mfiles-javadoc %license LICENSE.txt %changelog * Tue May 31 2022 yaoxin <yaoxin30@h-partners.com> - 8.0.1-1 - Update to 8.0.1 * Mon Aug 17 2020 wangyue <wangyue92@huawei.com> - 7.0-1 - upgrade the version to 7.0 * Tue Feb 25 2020 zhouyihang <zhouyihang1@huawei.com> - 6.2.1-3 - Package init
Locations
Projects
Search
Status Monitor
Help
Open Build Service
OBS Manuals
API Documentation
OBS Portal
Reporting a Bug
Contact
Mailing List
Forums
Chat (IRC)
Twitter
Open Build Service (OBS)
is an
openSUSE project
.
浙ICP备2022010568号-2