diff --git a/README.en.md b/README.en.md deleted file mode 100644 index 0a5681c..0000000 --- a/README.en.md +++ /dev/null @@ -1,36 +0,0 @@ -# objectweb-asm - -#### Description -{**When you're done, you can delete the content in this README and update the file with details for others getting started with your repository**} - -#### Software Architecture -Software architecture description - -#### Installation - -1. xxxx -2. xxxx -3. xxxx - -#### Instructions - -1. xxxx -2. xxxx -3. xxxx - -#### Contribution - -1. Fork the repository -2. Create Feat_xxx branch -3. Commit your code -4. Create Pull Request - - -#### Gitee Feature - -1. You can use Readme\_XXX.md to support different languages, such as Readme\_en.md, Readme\_zh.md -2. Gitee blog [blog.gitee.com](https://blog.gitee.com) -3. Explore open source project [https://gitee.com/explore](https://gitee.com/explore) -4. The most valuable open source project [GVP](https://gitee.com/gvp) -5. The manual of Gitee [https://gitee.com/help](https://gitee.com/help) -6. The most popular members [https://gitee.com/gitee-stars/](https://gitee.com/gitee-stars/) diff --git a/README.md b/README.md deleted file mode 100644 index 5df1943..0000000 --- a/README.md +++ /dev/null @@ -1,39 +0,0 @@ -# objectweb-asm - -#### 介绍 -{**以下是码云平台说明,您可以替换此简介** -码云是 OSCHINA 推出的基于 Git 的代码托管平台(同时支持 SVN)。专为开发者提供稳定、高效、安全的云端软件开发协作平台 -无论是个人、团队、或是企业,都能够用码云实现代码托管、项目管理、协作开发。企业项目请看 [https://gitee.com/enterprises](https://gitee.com/enterprises)} - -#### 软件架构 -软件架构说明 - - -#### 安装教程 - -1. xxxx -2. xxxx -3. xxxx - -#### 使用说明 - -1. xxxx -2. xxxx -3. xxxx - -#### 参与贡献 - -1. Fork 本仓库 -2. 新建 Feat_xxx 分支 -3. 提交代码 -4. 新建 Pull Request - - -#### 码云特技 - -1. 使用 Readme\_XXX.md 来支持不同的语言,例如 Readme\_en.md, Readme\_zh.md -2. 码云官方博客 [blog.gitee.com](https://blog.gitee.com) -3. 你可以 [https://gitee.com/explore](https://gitee.com/explore) 这个地址来了解码云上的优秀开源项目 -4. [GVP](https://gitee.com/gvp) 全称是码云最有价值开源项目,是码云综合评定出的优秀开源项目 -5. 码云官方提供的使用手册 [https://gitee.com/help](https://gitee.com/help) -6. 码云封面人物是一档用来展示码云会员风采的栏目 [https://gitee.com/gitee-stars/](https://gitee.com/gitee-stars/) diff --git a/asm-6.2.1.pom b/asm-7.0.pom similarity index 95% rename from asm-6.2.1.pom rename to asm-7.0.pom index 4b4b318..cda9698 100644 --- a/asm-6.2.1.pom +++ b/asm-7.0.pom @@ -9,7 +9,7 @@ org.ow2.asm asm - 6.2.1 + 7.0 asm ASM, a very small and fast Java bytecode manipulation framework http://asm.ow2.org/ @@ -77,19 +77,19 @@ org.ow2.asm asm-test - 6.2.1 + 7.0 test org.junit.jupiter junit-jupiter-api - 5.1.0 + 5.3.0 test org.junit.jupiter junit-jupiter-params - 5.1.0 + 5.3.0 test diff --git a/asm-all.pom b/asm-all.pom index bbd5d29..230058b 100644 --- a/asm-all.pom +++ b/asm-all.pom @@ -1,12 +1,7 @@ - - - + 4.0.0 - org.ow2 ow2 @@ -41,11 +36,6 @@ asm-tree @VERSION@ - - org.ow2.asm - asm-xml - @VERSION@ - diff --git a/asm-analysis-6.2.1.pom b/asm-analysis-7.0.pom similarity index 95% rename from asm-analysis-6.2.1.pom rename to asm-analysis-7.0.pom index aa67b8a..80d07b9 100644 --- a/asm-analysis-6.2.1.pom +++ b/asm-analysis-7.0.pom @@ -9,7 +9,7 @@ org.ow2.asm asm-analysis - 6.2.1 + 7.0 asm-analysis Static code analysis API of ASM, a very small and fast Java bytecode manipulation framework http://asm.ow2.org/ @@ -77,25 +77,25 @@ org.ow2.asm asm-tree - 6.2.1 + 7.0 compile org.ow2.asm asm-test - 6.2.1 + 7.0 test org.junit.jupiter junit-jupiter-api - 5.1.0 + 5.3.0 test org.junit.jupiter junit-jupiter-params - 5.1.0 + 5.3.0 test diff --git a/asm-commons-6.2.1.pom b/asm-commons-7.0.pom similarity index 93% rename from asm-commons-6.2.1.pom rename to asm-commons-7.0.pom index 4859fc1..48e1a9d 100644 --- a/asm-commons-6.2.1.pom +++ b/asm-commons-7.0.pom @@ -9,7 +9,7 @@ org.ow2.asm asm-commons - 6.2.1 + 7.0 asm-commons Usefull class adapters based on ASM, a very small and fast Java bytecode manipulation framework http://asm.ow2.org/ @@ -77,43 +77,43 @@ org.ow2.asm asm - 6.2.1 + 7.0 compile org.ow2.asm asm-tree - 6.2.1 + 7.0 compile org.ow2.asm asm-analysis - 6.2.1 + 7.0 compile org.ow2.asm asm-util - 6.2.1 + 7.0 test org.ow2.asm asm-test - 6.2.1 + 7.0 test org.junit.jupiter junit-jupiter-api - 5.1.0 + 5.3.0 test org.junit.jupiter junit-jupiter-params - 5.1.0 + 5.3.0 test diff --git a/asm-test-6.2.1.pom b/asm-test-7.0.pom similarity index 95% rename from asm-test-6.2.1.pom rename to asm-test-7.0.pom index 5db8588..38fcb41 100644 --- a/asm-test-6.2.1.pom +++ b/asm-test-7.0.pom @@ -9,7 +9,7 @@ org.ow2.asm asm-test - 6.2.1 + 7.0 asm-test Utilities for testing ASM, a very small and fast Java bytecode manipulation framework http://asm.ow2.org/ @@ -77,19 +77,19 @@ org.junit.jupiter junit-jupiter-api - 5.1.0 + 5.3.0 compile org.junit.jupiter junit-jupiter-params - 5.1.0 + 5.3.0 compile org.ow2.asm asm-test - 6.2.1 + 7.0 test diff --git a/asm-tree-6.2.1.pom b/asm-tree-7.0.pom similarity index 95% rename from asm-tree-6.2.1.pom rename to asm-tree-7.0.pom index abbd157..7106d06 100644 --- a/asm-tree-6.2.1.pom +++ b/asm-tree-7.0.pom @@ -9,7 +9,7 @@ org.ow2.asm asm-tree - 6.2.1 + 7.0 asm-tree Tree API of ASM, a very small and fast Java bytecode manipulation framework http://asm.ow2.org/ @@ -77,25 +77,25 @@ org.ow2.asm asm - 6.2.1 + 7.0 compile org.ow2.asm asm-test - 6.2.1 + 7.0 test org.junit.jupiter junit-jupiter-api - 5.1.0 + 5.3.0 test org.junit.jupiter junit-jupiter-params - 5.1.0 + 5.3.0 test diff --git a/asm-util-6.2.1.pom b/asm-util-7.0.pom similarity index 94% rename from asm-util-6.2.1.pom rename to asm-util-7.0.pom index 459981c..0b1cc4e 100644 --- a/asm-util-6.2.1.pom +++ b/asm-util-7.0.pom @@ -9,7 +9,7 @@ org.ow2.asm asm-util - 6.2.1 + 7.0 asm-util Utilities for ASM, a very small and fast Java bytecode manipulation framework http://asm.ow2.org/ @@ -77,19 +77,19 @@ org.ow2.asm asm - 6.2.1 + 7.0 compile org.ow2.asm asm-tree - 6.2.1 + 7.0 compile org.ow2.asm asm-analysis - 6.2.1 + 7.0 compile @@ -101,19 +101,19 @@ org.ow2.asm asm-test - 6.2.1 + 7.0 test org.junit.jupiter junit-jupiter-api - 5.1.0 + 5.3.0 test org.junit.jupiter junit-jupiter-params - 5.1.0 + 5.3.0 test diff --git a/asm-xml-6.2.1.pom b/asm-xml-6.2.1.pom deleted file mode 100644 index f0b0288..0000000 --- a/asm-xml-6.2.1.pom +++ /dev/null @@ -1,108 +0,0 @@ - - - 4.0.0 - - org.ow2 - ow2 - 1.5 - - org.ow2.asm - asm-xml - 6.2.1 - asm-xml - XML API of ASM, a very small and fast Java bytecode manipulation framework - http://asm.ow2.org/ - 2000 - - OW2 - http://www.ow2.org/ - - - - BSD - http://asm.ow2.org/license.html - - - - - ebruneton - Eric Bruneton - ebruneton@free.fr - - Creator - Java Developer - - - - eu - Eugene Kuleshov - eu@javatx.org - - Java Developer - - - - forax - Remi Forax - forax@univ-mlv.fr - - Java Developer - - - - - - ASM Users List - https://mail.ow2.org/wws/subscribe/asm - asm@objectweb.org - https://mail.ow2.org/wws/arc/asm/ - - - ASM Team List - https://mail.ow2.org/wws/subscribe/asm-team - asm-team@objectweb.org - https://mail.ow2.org/wws/arc/asm-team/ - - - - scm:git:https://gitlab.ow2.org/asm/asm/ - scm:git:https://gitlab.ow2.org/asm/asm/ - https://gitlab.ow2.org/asm/asm/ - - - https://gitlab.ow2.org/asm/asm/issues - - - - org.ow2.asm - asm - 6.2.1 - compile - - - org.ow2.asm - asm-util - 6.2.1 - compile - - - org.ow2.asm - asm-test - 6.2.1 - test - - - org.junit.jupiter - junit-jupiter-api - 5.1.0 - test - - - org.junit.jupiter - junit-jupiter-params - 5.1.0 - test - - - diff --git a/generate-tarball.sh b/generate-tarball.sh new file mode 100644 index 0000000..255d107 --- /dev/null +++ b/generate-tarball.sh @@ -0,0 +1,28 @@ +#!/bin/bash +set -e + +name=objectweb-asm +version="$(sed -n 's/Version:\s*//p' *.spec)" +gittag="ASM_${version//./_}" + +# RETRIEVE +wget "https://gitlab.ow2.org/asm/asm/repository/${gittag}/archive.tar.gz#/${name}-${version}.tar.gz" -O "${name}-${version}.orig.tar.gz" + +rm -rf tarball-tmp +mkdir tarball-tmp +cd tarball-tmp +tar xf "../${name}-${version}.orig.tar.gz" + +# Rename dir not to contain commit +mv asm-${gittag}-* ${name}-${version} + +# CLEAN TARBALL +# Remove all jar files +find -name '*.jar' -delete +# Remove all class files except those in asm-test, which are shipped alongside appropriately licensed source +find */asm{,-analysis,-commons} -name '*.class' -delete +rm -r */gradle + +tar cf "../${name}-${version}.tar.gz" * +cd .. +rm -r tarball-tmp "${name}-${version}.orig.tar.gz" diff --git a/objectweb-asm-6.2.1.tar.gz b/objectweb-asm-6.2.1.tar.gz deleted file mode 100644 index 648e715..0000000 Binary files a/objectweb-asm-6.2.1.tar.gz and /dev/null differ diff --git a/objectweb-asm-7.0.tar.gz b/objectweb-asm-7.0.tar.gz new file mode 100644 index 0000000..248488d Binary files /dev/null and b/objectweb-asm-7.0.tar.gz differ diff --git a/objectweb-asm.spec b/objectweb-asm.spec index 199c6d1..0d408fa 100644 --- a/objectweb-asm.spec +++ b/objectweb-asm.spec @@ -1,56 +1,62 @@ -Name: objectweb-asm -Version: 6.2.1 -Release: 3 -Summary: Java bytecode manipulation and analysis framework -License: BSD -URL: http://asm.ow2.org/ -Source0: https://gitlab.ow2.org/asm/asm/repository/ASM_6_2_1/archive.tar.gz#/%{name}-%{version}.tar.gz -Source1: asm-parent.pom -Source2: https://repo1.maven.org/maven2/org/ow2/asm/asm/%{version}/asm-%{version}.pom -Source3: https://repo1.maven.org/maven2/org/ow2/asm/asm-analysis/%{version}/asm-analysis-%{version}.pom -Source4: https://repo1.maven.org/maven2/org/ow2/asm/asm-commons/%{version}/asm-commons-%{version}.pom -Source5: https://repo1.maven.org/maven2/org/ow2/asm/asm-test/%{version}/asm-test-%{version}.pom -Source6: https://repo1.maven.org/maven2/org/ow2/asm/asm-tree/%{version}/asm-tree-%{version}.pom -Source7: https://repo1.maven.org/maven2/org/ow2/asm/asm-util/%{version}/asm-util-%{version}.pom -Source8: https://repo1.maven.org/maven2/org/ow2/asm/asm-xml/%{version}/asm-xml-%{version}.pom -Source9: asm-all.pom - -BuildRequires: maven-local mvn(org.apache.felix:maven-bundle-plugin) mvn(org.apache.maven.plugins:maven-shade-plugin) -BuildRequires: mvn(org.ow2:ow2:pom:) mvn(org.codehaus.janino:janino) mvn(org.junit.jupiter:junit-jupiter-api) -BuildRequires: mvn(org.junit.jupiter:junit-jupiter-engine) mvn(org.junit.jupiter:junit-jupiter-params) -BuildRequires: mvn(org.apache.maven.surefire:surefire-junit-platform) objectweb-asm >= 6 -Requires: javapackages-tools -BuildArch: noarch - +%bcond_without junit5 +%bcond_without osgi +Name: objectweb-asm +Version: 7.0 +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 +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 to dynamically generate classes, directly in binary form. ASM provides some common bytecode transformations and -analysis algorithms from which custom complex transformations and code analysis tools can be built. ASM offers similar -functionality as other Java bytecode frameworks, but is focused on performance. Because it was designed and implemented -to be as small and as fast as possible, it is well suited for use in dynamic systems (but can of course be used in a -static way too, e.g. in compilers). +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 help -Summary: API documentation for objectweb-asm -Provides: %{name}-javadoc = %{version}-%{release} -Obsoletes: %{name}-javadoc < %{version}-%{release} - -%description help -This package provides API help documentation for objectweb-asm. +%package javadoc +Summary: API documentation for %{name} +%description javadoc +This package provides %{summary}. %prep -%autosetup -n asm-ASM_6_2_1-f86d1ce7d413a5d4f9a5b51c49eb592555c82e97 -p1 -install -p -m 644 %{SOURCE1} pom.xml - -find -name '*.jar' -delete -find asm{,-analysis,-commons} -name '*.class' -delete -rm -r gradle - -for pom in asm asm-analysis asm-commons asm-test asm-tree asm-util asm-xml; do - install -p -m 644 $RPM_SOURCE_DIR/${pom}-%{version}.pom $pom/pom.xml +%setup -q +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 "bundle" $pom %pom_add_plugin org.apache.felix:maven-bundle-plugin:3.5.0 $pom \ @@ -65,18 +71,16 @@ for pom in asm asm-analysis asm-commons asm-test asm-tree asm-util asm-xml; do " fi +%endif done - sed -i -e '/testReadAndWriteWithComputeMaxsAndLargeSubroutines/i@org.junit.jupiter.api.Disabled("missing class file")' \ asm/src/test/java/org/objectweb/asm/ClassWriterTest.java sed -i -e '/testMergeWithJsrReachableFromTwoDifferentPaths/i@org.junit.jupiter.api.Disabled("missing class file")' \ asm-analysis/src/test/java/org/objectweb/asm/tree/analysis/BasicInterpreterTest.java sed -i -e '/testSortLocalVariablesAndInstantiate()/i@org.junit.jupiter.api.Disabled("missing class file")' \ asm-commons/src/test/java/org/objectweb/asm/commons/LocalVariablesSorterTest.java - -install -d asm-all -sed 's/@VERSION@/%{version}/g' %{SOURCE9} > asm-all/pom.xml - +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 @@ -87,19 +91,26 @@ 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}/asm-xml %{name}-processor true +%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 help -f .mfiles-javadoc +%files javadoc -f .mfiles-javadoc +%license LICENSE.txt %changelog +* Mon Aug 17 2020 wangyue - 7.0-1 +- upgrade the version to 7.0 + * Tue Feb 25 2020 zhouyihang - 6.2.1-3 - Package init diff --git a/asm-parent.pom b/parent.pom similarity index 74% rename from asm-parent.pom rename to parent.pom index 742e050..8cfbb70 100644 --- a/asm-parent.pom +++ b/parent.pom @@ -1,10 +1,6 @@ - - - + 4.0.0 org.ow2.asm @@ -20,7 +16,6 @@ asm-test asm-tree asm-util - asm-xml asm-all