1 |
# Copyright (c) 2000-2008, JPackage Project |
2 |
# All rights reserved. |
3 |
# |
4 |
# Redistribution and use in source and binary forms, with or without |
5 |
# modification, are permitted provided that the following conditions |
6 |
# are met: |
7 |
# |
8 |
# 1. Redistributions of source code must retain the above copyright |
9 |
# notice, this list of conditions and the following disclaimer. |
10 |
# 2. Redistributions in binary form must reproduce the above copyright |
11 |
# notice, this list of conditions and the following disclaimer in the |
12 |
# documentation and/or other materials provided with the |
13 |
# distribution. |
14 |
# 3. Neither the name of the JPackage Project nor the names of its |
15 |
# contributors may be used to endorse or promote products derived |
16 |
# from this software without specific prior written permission. |
17 |
# |
18 |
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS |
19 |
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT |
20 |
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR |
21 |
# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT |
22 |
# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, |
23 |
# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT |
24 |
# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, |
25 |
# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY |
26 |
# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT |
27 |
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |
28 |
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
29 |
# |
30 |
|
31 |
%define gcj_support 1 |
32 |
%define section free |
33 |
|
34 |
Name: asm |
35 |
Version: 1.5.3 |
36 |
Release: %mkrel 3.0.6 |
37 |
Epoch: 0 |
38 |
Summary: A code manipulation tool to implement adaptable systems |
39 |
License: BSD-style |
40 |
URL: http://asm.objectweb.org/ |
41 |
Group: Development/Java |
42 |
Source0: http://download.us.forge.objectweb.org/asm/asm-1.5.3.tar.gz |
43 |
Source1: http://asm.objectweb.org/current/asm-eng.pdf |
44 |
Source2: http://asm.objectweb.org/doc/faq.html |
45 |
Source3: http://repo1.maven.org/maven2/asm/asm/1.5.3/asm-1.5.3.pom |
46 |
Source4: http://repo1.maven.org/maven2/asm/asm-analysis/1.5.3/asm-analysis-1.5.3.pom |
47 |
Source5: http://repo1.maven.org/maven2/asm/asm-attrs/1.5.3/asm-attrs-1.5.3.pom |
48 |
Source6: http://repo1.maven.org/maven2/asm/asm-tree/1.5.3/asm-tree-1.5.3.pom |
49 |
Source7: http://repo1.maven.org/maven2/asm/asm-util/1.5.3/asm-util-1.5.3.pom |
50 |
Source8: http://repo1.maven.org/maven2/asm/asm-xml/1.5.3/asm-xml-1.5.3.pom |
51 |
Source9: http://repo1.maven.org/maven2/asm/kasm/1.5.3/kasm-1.5.3.pom |
52 |
Patch0: asm-no-classpath-in-manifest.patch |
53 |
BuildRequires: ant |
54 |
BuildRequires: java-devel |
55 |
BuildRequires: java-rpmbuild >= 0:1.6 |
56 |
BuildRequires: objectweb-anttask |
57 |
%if %{gcj_support} |
58 |
BuildRequires: java-gcj-compat-devel >= 0:1.0.31 |
59 |
%else |
60 |
BuildArch: noarch |
61 |
%endif |
62 |
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-buildroot |
63 |
|
64 |
%description |
65 |
ASM is a code manipulation tool to implement adaptable systems. |
66 |
|
67 |
%package javadoc |
68 |
Summary: Javadoc for %{name} |
69 |
Group: Development/Java |
70 |
|
71 |
%description javadoc |
72 |
Javadoc for %{name}. |
73 |
|
74 |
%prep |
75 |
%setup -q -n %{name}-%{version} |
76 |
%patch0 -p1 |
77 |
find . -name "*.jar" -exec rm -f {} \; |
78 |
install -m 644 %{SOURCE1} . |
79 |
install -m 644 %{SOURCE2} . |
80 |
|
81 |
%build |
82 |
%ant -Dobjectweb.ant.tasks.path=$(build-classpath objectweb-anttask) jar jdoc |
83 |
|
84 |
%install |
85 |
rm -rf $RPM_BUILD_ROOT |
86 |
|
87 |
# jars |
88 |
install -d -m 755 $RPM_BUILD_ROOT%{_javadir}/%{name} |
89 |
install -d -m 755 $RPM_BUILD_ROOT%{_datadir}/maven2/poms |
90 |
|
91 |
install -m 644 output/dist/lib/asm-%{version}.jar $RPM_BUILD_ROOT%{_javadir}/%{name}/ |
92 |
install -m 644 %{SOURCE3} $RPM_BUILD_ROOT%{_datadir}/maven2/poms/JPP.asm-asm.pom |
93 |
%add_to_maven_depmap %{name} %{name} %{version} JPP/%{name} %{name} |
94 |
|
95 |
install -m 644 output/dist/lib/asm-analysis-%{version}.jar $RPM_BUILD_ROOT%{_javadir}/%{name}/ |
96 |
install -m 644 %{SOURCE4} $RPM_BUILD_ROOT%{_datadir}/maven2/poms/JPP.asm-asm-analysis.pom |
97 |
%add_to_maven_depmap %{name} %{name}-analysis %{version} JPP/%{name} %{name}-analysis |
98 |
|
99 |
install -m 644 output/dist/lib/asm-attrs-%{version}.jar $RPM_BUILD_ROOT%{_javadir}/%{name}/ |
100 |
install -m 644 %{SOURCE5} $RPM_BUILD_ROOT%{_datadir}/maven2/poms/JPP.asm-asm-attrs.pom |
101 |
%add_to_maven_depmap %{name} %{name}-attrs %{version} JPP/%{name} %{name}-attrs |
102 |
|
103 |
install -m 644 output/dist/lib/asm-tree-%{version}.jar $RPM_BUILD_ROOT%{_javadir}/%{name}/ |
104 |
install -m 644 %{SOURCE6} $RPM_BUILD_ROOT%{_datadir}/maven2/poms/JPP.asm-asm-tree.pom |
105 |
%add_to_maven_depmap %{name} %{name}-tree %{version} JPP/%{name} %{name}-tree |
106 |
|
107 |
install -m 644 output/dist/lib/asm-util-%{version}.jar $RPM_BUILD_ROOT%{_javadir}/%{name}/ |
108 |
install -m 644 %{SOURCE7} $RPM_BUILD_ROOT%{_datadir}/maven2/poms/JPP.asm-asm-util.pom |
109 |
%add_to_maven_depmap %{name} %{name}-util %{version} JPP/%{name} %{name}-util |
110 |
|
111 |
install -m 644 output/dist/lib/asm-xml-%{version}.jar $RPM_BUILD_ROOT%{_javadir}/%{name}/ |
112 |
install -m 644 %{SOURCE8} $RPM_BUILD_ROOT%{_datadir}/maven2/poms/JPP.asm-asm-xml.pom |
113 |
%add_to_maven_depmap %{name} %{name}-xml %{version} JPP/%{name} %{name}-xml |
114 |
|
115 |
install -m 644 output/dist/lib/kasm-%{version}.jar $RPM_BUILD_ROOT%{_javadir}/%{name}/ |
116 |
install -m 644 %{SOURCE9} $RPM_BUILD_ROOT%{_datadir}/maven2/poms/JPP.asm-kasm.pom |
117 |
%add_to_maven_depmap %{name} k%{name} %{version} JPP/%{name} k%{name} |
118 |
|
119 |
|
120 |
|
121 |
for jar in output/dist/lib/*.jar; do |
122 |
install -m 644 ${jar} \ |
123 |
$RPM_BUILD_ROOT%{_javadir}/%{name}/`basename ${jar}` |
124 |
done |
125 |
|
126 |
(cd $RPM_BUILD_ROOT%{_javadir}/%{name} && for jar in *-%{version}*; do \ |
127 |
ln -sf ${jar} ${jar/-%{version}/}; done) |
128 |
|
129 |
# javadoc |
130 |
install -p -d -m 755 $RPM_BUILD_ROOT%{_javadocdir}/%{name}-%{version} |
131 |
cp -pr output/dist/doc/javadoc/user/* $RPM_BUILD_ROOT%{_javadocdir}/%{name}-%{version} |
132 |
(cd $RPM_BUILD_ROOT%{_javadocdir} && ln -sf %{name}-%{version} %{name}) |
133 |
|
134 |
%{__perl} -pi -e 's/\r$//g' README.txt |
135 |
|
136 |
%{gcj_compile} |
137 |
|
138 |
%clean |
139 |
%{__rm} -rf %{buildroot} |
140 |
|
141 |
|
142 |
%post |
143 |
%update_maven_depmap |
144 |
%if %{gcj_support} |
145 |
%{update_gcjdb} |
146 |
%endif |
147 |
|
148 |
%postun |
149 |
%update_maven_depmap |
150 |
%if %{gcj_support} |
151 |
%{clean_gcjdb} |
152 |
%endif |
153 |
|
154 |
%files |
155 |
%defattr(0644,root,root,0755) |
156 |
%doc README.txt faq.html asm-eng.pdf |
157 |
%dir %{_javadir}/%{name} |
158 |
%{_javadir}/%{name}/*.jar |
159 |
%{_datadir}/maven2 |
160 |
%{_mavendepmapfragdir} |
161 |
%{gcj_files} |
162 |
|
163 |
%files javadoc |
164 |
%defattr(0644,root,root,0755) |
165 |
%dir %{_javadocdir}/%{name}-%{version} |
166 |
%{_javadocdir}/%{name}-%{version}/* |
167 |
%dir %{_javadocdir}/%{name} |
168 |
|
169 |
|
170 |
|
171 |
|