]> git.pld-linux.org Git - packages/aspectwerkz.git/blame - aspectwerkz.spec
- drop obsolete and outdated manual inclusion of rpm macros
[packages/aspectwerkz.git] / aspectwerkz.spec
CommitLineData
80c323c3
ER
1#
2# Conditional build:
3%bcond_with tests # compile and run tests
4#
7799f632 5Summary: AOP for Java
98f58245 6Summary(pl.UTF-8): AOP dla Javy
7799f632
ER
7Name: aspectwerkz
8Version: 2.0
9Release: 0.1
10License: BSD-style License
11Group: Development/Languages/Java
7799f632
ER
12Source0: http://dist.codehaus.org/aspectwerkz/distributions/%{name}-%{version}.zip
13# Source0-md5: d7462b4d76f268e78a3843a28da71990
14Patch0: %{name}2-build_xml.patch
15Patch1: %{name}2-script.patch
4baebafd 16URL: http://aspectwerkz.codehaus.org/
018fa99a 17BuildRequires: ant >= 1.6
7799f632 18BuildRequires: asm
80c323c3 19BuildRequires: concurrent
6256270b 20#BuildRequires: dom4j
80c323c3
ER
21BuildRequires: gnu.trove
22BuildRequires: jarjar
640fdc47 23BuildRequires: java-junit
24BuildRequires: java-qdox
80c323c3 25BuildRequires: javassist
6256270b
ER
26BuildRequires: jdk
27BuildRequires: jpackage-utils
80c323c3 28BuildRequires: jrexx
80c323c3
ER
29BuildRequires: junitperf
30BuildRequires: piccolo
0de39582 31BuildRequires: rpm-javaprov
6256270b 32BuildRequires: rpmbuild(macros) >= 1.300
329317fc 33BuildRequires: unzip
80c323c3
ER
34%if %(locale -a | grep -q '^en_US$'; echo $?)
35BuildRequires: glibc-localedb-all
36%endif
7799f632 37Requires: concurrent
7799f632 38Requires: gnu.trove
640fdc47 39Requires: java-dom4j
40Requires: java-qdox
7799f632 41Requires: javassist
640fdc47 42Requires: jpackage-utils
7799f632
ER
43Requires: jrexx
44Requires: piccolo
7799f632
ER
45BuildArch: noarch
46BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
47
48%description
49AspectWerkz is a dynamic, lightweight and high-performant AOP/AOSD
50framework for Java. AspectWerkz utilizes runtime bytecode modification
51to weave your classes at runtime. It hooks in and weaves classes
52loaded by any class loader except the bootstrap class loader. It has a
53rich join point model. Aspects, advices and introductions are written
54in plain Java and your target classes can be regular POJOs. You have
55the possibility to add, remove and re-structure advices as well as
56swapping the implementation of your introductions at runtime. Your
57aspects can be defined using either an XML definition file or using
58Runtime Attributes.
59
da130965 60%description -l pl.UTF-8
4baebafd
JB
61AspectWerkz to dynamiczny, lekki i wydajny szkielet AOP/AOSD dla Javy.
62Wykorzystuje modyfikowanie bajtkodu do modyfikowania klas w czasie
da130965
JR
63działania. Przechwytuje i modyfikuje klasy wczytywane przez wszystkie
64procedury ładowania klas oprócz startowej. Ma bogady model punktu
65łączenia. Aspekty, porady i wprowadzenia są napisane w czystej Javie,
66a klasy docelowe mogą być zwykłymi POJO. Istnieje możliwość dodawania,
67usuwania i restrukturyzacji porad, a także zamiany implementacji na
68własną w trakcie działania. Aspekty mogą być definiowane przy użyciu
4baebafd 69pliku definicji XML lub Runtime Attributes.
7799f632
ER
70
71%package javadoc
72Summary: Javadoc for %{name}
98f58245 73Summary(pl.UTF-8): Dokumentacja javadoc dla pakietu %{name}
7799f632 74Group: Documentation
0de39582 75Requires: jpackage-utils
7799f632
ER
76
77%description javadoc
4baebafd
JB
78Javadoc for %{name}.
79
da130965 80%description javadoc -l pl.UTF-8
4baebafd 81Dokumentacja javadoc dla pakietu %{name}.
7799f632
ER
82
83%package manual
84Summary: Documents for %{name}
98f58245 85Summary(pl.UTF-8): Dokumentacja dla pakietu %{name}
7799f632
ER
86Group: Documentation
87
88%description manual
4baebafd
JB
89Documents for %{name}.
90
da130965 91%description manual -l pl.UTF-8
4baebafd 92Dokumentacja dla pakietu %{name}.
7799f632
ER
93
94%package demo
95Summary: Samples for %{name}
98f58245 96Summary(pl.UTF-8): Przykłady dla pakietu %{name}
7799f632
ER
97Group: Documentation
98
99%description demo
4baebafd
JB
100Samples for %{name}.
101
da130965
JR
102%description demo -l pl.UTF-8
103Przykłady dla pakietu %{name}.
7799f632
ER
104
105%prep
106%setup -q
6256270b 107find -name '*.jar' | xargs rm -vf
7799f632 108chmod +x bin/aspectwerkz
7799f632
ER
109%patch0
110%patch1
111
112%build
113export ASPECTWERKZ_HOME=$RPM_BUILD_DIR/%{name}-%{version}
80c323c3
ER
114required_jars="
115jarjar
116asm
117asm-attrs
118asm-util
119dom4j
120gnu.trove
121concurrent
122junit
123jrexx
124javassist
125qdox
126piccolo
127junitperf
128"
129build-jar-repository -s -p lib "$required_jars" || :
130
131export LC_ALL=en_US # source code not US-ASCII
132%ant compile compile:extensions %{?with_tests:compile:test}
7799f632
ER
133
134%install
135rm -rf $RPM_BUILD_ROOT
136
137# jars
138install -d $RPM_BUILD_ROOT%{_javadir}
139cp -p target/%{name}-%{version}.jar \
140 $RPM_BUILD_ROOT%{_javadir}/%{name}-%{version}.jar
141cp -p target/%{name}-core-%{version}.jar \
142 $RPM_BUILD_ROOT%{_javadir}/%{name}-core-%{version}.jar
143cp -p target/%{name}-extensions-%{version}.jar \
144 $RPM_BUILD_ROOT%{_javadir}/%{name}-extensions-%{version}.jar
145cp -p target/%{name}-jdk14-%{version}.jar \
146 $RPM_BUILD_ROOT%{_javadir}/%{name}-jdk14-%{version}.jar
147cp -p target/%{name}-jdk5-%{version}.jar \
148 $RPM_BUILD_ROOT%{_javadir}/%{name}-jdk5-%{version}.jar
149cp -p target/%{name}-nodeps-%{version}.jar \
150 $RPM_BUILD_ROOT%{_javadir}/%{name}-nodeps-%{version}.jar
151cp -p target/%{name}-nodeps-jdk14-%{version}.jar \
152 $RPM_BUILD_ROOT%{_javadir}/%{name}-nodeps-jdk14-%{version}.jar
153cp -p target/%{name}-nodeps-jdk5-%{version}.jar \
154 $RPM_BUILD_ROOT%{_javadir}/%{name}-nodeps-jdk5-%{version}.jar
4baebafd
JB
155
156cd $RPM_BUILD_ROOT%{_javadir}
157for jar in *-%{version}.jar; do
158 ln -sf ${jar} `echo $jar| sed "s|-%{version}||g"`
159done
160cd -
161
7799f632
ER
162install -d $RPM_BUILD_ROOT%{_bindir}
163cp -p bin/aspectwerkz $RPM_BUILD_ROOT%{_bindir}
164
7799f632
ER
165# javadoc
166install -d $RPM_BUILD_ROOT%{_javadocdir}/%{name}-%{version}
167cp -pr docs/apidocs/* $RPM_BUILD_ROOT%{_javadocdir}/%{name}-%{version}
168ln -s %{name}-%{version} $RPM_BUILD_ROOT%{_javadocdir}/%{name} # ghost symlink
169rm -rf docs/apidocs
170
171# demo
172install -d $RPM_BUILD_ROOT%{_datadir}/%{name}-%{version}/src
173install -d $RPM_BUILD_ROOT%{_datadir}/%{name}-%{version}/classes
174install -d $RPM_BUILD_ROOT%{_datadir}/%{name}-%{version}/bin
175cp -pr target/samples-classes/* $RPM_BUILD_ROOT%{_datadir}/%{name}-%{version}/classes
176cp -pr src/samples/* $RPM_BUILD_ROOT%{_datadir}/%{name}-%{version}/src
177
178# manual
179install -d $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}
180cp -pr docs/* $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}
181cp -p LICENSE.txt $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}
182
183%clean
184rm -rf $RPM_BUILD_ROOT
185
186%post javadoc
6256270b 187ln -sf %{name}-%{version} %{_javadocdir}/%{name}
7799f632
ER
188
189%files
190%defattr(644,root,root,755)
191%doc %{_docdir}/%{name}-%{version}/LICENSE.txt
4baebafd 192%attr(755,root,root) %{_bindir}/aspectwerkz
6256270b 193%{_javadir}/*.jar
7799f632
ER
194
195%files javadoc
196%defattr(644,root,root,755)
6256270b 197%{_javadocdir}/%{name}-%{version}
7799f632
ER
198%ghost %{_javadocdir}/%{name}
199
200%files manual
201%defattr(644,root,root,755)
202%doc %{_docdir}/%{name}-%{version}
203
204%files demo
205%defattr(644,root,root,755)
206%{_datadir}/%{name}-%{version}
This page took 0.168059 seconds and 4 git commands to generate.