3 %bcond_with tests # compile and run tests
5 %include /usr/lib/rpm/macros.java
7 Summary(pl.UTF-8): AOP dla Javy
11 License: BSD-style License
12 Group: Development/Languages/Java
13 Source0: http://dist.codehaus.org/aspectwerkz/distributions/%{name}-%{version}.zip
14 # Source0-md5: d7462b4d76f268e78a3843a28da71990
15 Patch0: %{name}2-build_xml.patch
16 Patch1: %{name}2-script.patch
17 URL: http://aspectwerkz.codehaus.org/
18 BuildRequires: ant >= 1.6
20 BuildRequires: concurrent
22 BuildRequires: gnu.trove
24 BuildRequires: java-junit
25 BuildRequires: java-qdox
26 BuildRequires: javassist
28 BuildRequires: jpackage-utils
30 BuildRequires: junitperf
31 BuildRequires: piccolo
32 BuildRequires: rpm-javaprov
33 BuildRequires: rpmbuild(macros) >= 1.300
34 %if %(locale -a | grep -q '^en_US$'; echo $?)
35 BuildRequires: glibc-localedb-all
42 Requires: jpackage-utils
46 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
49 AspectWerkz is a dynamic, lightweight and high-performant AOP/AOSD
50 framework for Java. AspectWerkz utilizes runtime bytecode modification
51 to weave your classes at runtime. It hooks in and weaves classes
52 loaded by any class loader except the bootstrap class loader. It has a
53 rich join point model. Aspects, advices and introductions are written
54 in plain Java and your target classes can be regular POJOs. You have
55 the possibility to add, remove and re-structure advices as well as
56 swapping the implementation of your introductions at runtime. Your
57 aspects can be defined using either an XML definition file or using
60 %description -l pl.UTF-8
61 AspectWerkz to dynamiczny, lekki i wydajny szkielet AOP/AOSD dla Javy.
62 Wykorzystuje modyfikowanie bajtkodu do modyfikowania klas w czasie
63 działania. Przechwytuje i modyfikuje klasy wczytywane przez wszystkie
64 procedury ładowania klas oprócz startowej. Ma bogady model punktu
65 łączenia. Aspekty, porady i wprowadzenia są napisane w czystej Javie,
66 a klasy docelowe mogą być zwykłymi POJO. Istnieje możliwość dodawania,
67 usuwania i restrukturyzacji porad, a także zamiany implementacji na
68 własną w trakcie działania. Aspekty mogą być definiowane przy użyciu
69 pliku definicji XML lub Runtime Attributes.
72 Summary: Javadoc for %{name}
73 Summary(pl.UTF-8): Dokumentacja javadoc dla pakietu %{name}
75 Requires: jpackage-utils
80 %description javadoc -l pl.UTF-8
81 Dokumentacja javadoc dla pakietu %{name}.
84 Summary: Documents for %{name}
85 Summary(pl.UTF-8): Dokumentacja dla pakietu %{name}
89 Documents for %{name}.
91 %description manual -l pl.UTF-8
92 Dokumentacja dla pakietu %{name}.
95 Summary: Samples for %{name}
96 Summary(pl.UTF-8): Przykłady dla pakietu %{name}
102 %description demo -l pl.UTF-8
103 Przykłady dla pakietu %{name}.
107 find -name '*.jar' | xargs rm -vf
108 chmod +x bin/aspectwerkz
113 export ASPECTWERKZ_HOME=$RPM_BUILD_DIR/%{name}-%{version}
129 build-jar-repository -s -p lib "$required_jars" || :
131 export LC_ALL=en_US # source code not US-ASCII
132 %ant compile compile:extensions %{?with_tests:compile:test}
135 rm -rf $RPM_BUILD_ROOT
138 install -d $RPM_BUILD_ROOT%{_javadir}
139 cp -p target/%{name}-%{version}.jar \
140 $RPM_BUILD_ROOT%{_javadir}/%{name}-%{version}.jar
141 cp -p target/%{name}-core-%{version}.jar \
142 $RPM_BUILD_ROOT%{_javadir}/%{name}-core-%{version}.jar
143 cp -p target/%{name}-extensions-%{version}.jar \
144 $RPM_BUILD_ROOT%{_javadir}/%{name}-extensions-%{version}.jar
145 cp -p target/%{name}-jdk14-%{version}.jar \
146 $RPM_BUILD_ROOT%{_javadir}/%{name}-jdk14-%{version}.jar
147 cp -p target/%{name}-jdk5-%{version}.jar \
148 $RPM_BUILD_ROOT%{_javadir}/%{name}-jdk5-%{version}.jar
149 cp -p target/%{name}-nodeps-%{version}.jar \
150 $RPM_BUILD_ROOT%{_javadir}/%{name}-nodeps-%{version}.jar
151 cp -p target/%{name}-nodeps-jdk14-%{version}.jar \
152 $RPM_BUILD_ROOT%{_javadir}/%{name}-nodeps-jdk14-%{version}.jar
153 cp -p target/%{name}-nodeps-jdk5-%{version}.jar \
154 $RPM_BUILD_ROOT%{_javadir}/%{name}-nodeps-jdk5-%{version}.jar
156 cd $RPM_BUILD_ROOT%{_javadir}
157 for jar in *-%{version}.jar; do
158 ln -sf ${jar} `echo $jar| sed "s|-%{version}||g"`
162 install -d $RPM_BUILD_ROOT%{_bindir}
163 cp -p bin/aspectwerkz $RPM_BUILD_ROOT%{_bindir}
166 install -d $RPM_BUILD_ROOT%{_javadocdir}/%{name}-%{version}
167 cp -pr docs/apidocs/* $RPM_BUILD_ROOT%{_javadocdir}/%{name}-%{version}
168 ln -s %{name}-%{version} $RPM_BUILD_ROOT%{_javadocdir}/%{name} # ghost symlink
172 install -d $RPM_BUILD_ROOT%{_datadir}/%{name}-%{version}/src
173 install -d $RPM_BUILD_ROOT%{_datadir}/%{name}-%{version}/classes
174 install -d $RPM_BUILD_ROOT%{_datadir}/%{name}-%{version}/bin
175 cp -pr target/samples-classes/* $RPM_BUILD_ROOT%{_datadir}/%{name}-%{version}/classes
176 cp -pr src/samples/* $RPM_BUILD_ROOT%{_datadir}/%{name}-%{version}/src
179 install -d $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}
180 cp -pr docs/* $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}
181 cp -p LICENSE.txt $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}
184 rm -rf $RPM_BUILD_ROOT
187 ln -sf %{name}-%{version} %{_javadocdir}/%{name}
190 %defattr(644,root,root,755)
191 %doc %{_docdir}/%{name}-%{version}/LICENSE.txt
192 %attr(755,root,root) %{_bindir}/aspectwerkz
196 %defattr(644,root,root,755)
197 %{_javadocdir}/%{name}-%{version}
198 %ghost %{_javadocdir}/%{name}
201 %defattr(644,root,root,755)
202 %doc %{_docdir}/%{name}-%{version}
205 %defattr(644,root,root,755)
206 %{_datadir}/%{name}-%{version}