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
35 %if %(locale -a | grep -q '^en_US$'; echo $?)
36 BuildRequires: glibc-localedb-all
43 Requires: jpackage-utils
47 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
50 AspectWerkz is a dynamic, lightweight and high-performant AOP/AOSD
51 framework for Java. AspectWerkz utilizes runtime bytecode modification
52 to weave your classes at runtime. It hooks in and weaves classes
53 loaded by any class loader except the bootstrap class loader. It has a
54 rich join point model. Aspects, advices and introductions are written
55 in plain Java and your target classes can be regular POJOs. You have
56 the possibility to add, remove and re-structure advices as well as
57 swapping the implementation of your introductions at runtime. Your
58 aspects can be defined using either an XML definition file or using
61 %description -l pl.UTF-8
62 AspectWerkz to dynamiczny, lekki i wydajny szkielet AOP/AOSD dla Javy.
63 Wykorzystuje modyfikowanie bajtkodu do modyfikowania klas w czasie
64 działania. Przechwytuje i modyfikuje klasy wczytywane przez wszystkie
65 procedury ładowania klas oprócz startowej. Ma bogady model punktu
66 łączenia. Aspekty, porady i wprowadzenia są napisane w czystej Javie,
67 a klasy docelowe mogą być zwykłymi POJO. Istnieje możliwość dodawania,
68 usuwania i restrukturyzacji porad, a także zamiany implementacji na
69 własną w trakcie działania. Aspekty mogą być definiowane przy użyciu
70 pliku definicji XML lub Runtime Attributes.
73 Summary: Javadoc for %{name}
74 Summary(pl.UTF-8): Dokumentacja javadoc dla pakietu %{name}
76 Requires: jpackage-utils
81 %description javadoc -l pl.UTF-8
82 Dokumentacja javadoc dla pakietu %{name}.
85 Summary: Documents for %{name}
86 Summary(pl.UTF-8): Dokumentacja dla pakietu %{name}
90 Documents for %{name}.
92 %description manual -l pl.UTF-8
93 Dokumentacja dla pakietu %{name}.
96 Summary: Samples for %{name}
97 Summary(pl.UTF-8): Przykłady dla pakietu %{name}
103 %description demo -l pl.UTF-8
104 Przykłady dla pakietu %{name}.
108 find -name '*.jar' | xargs rm -vf
109 chmod +x bin/aspectwerkz
114 export ASPECTWERKZ_HOME=$RPM_BUILD_DIR/%{name}-%{version}
130 build-jar-repository -s -p lib "$required_jars" || :
132 export LC_ALL=en_US # source code not US-ASCII
133 %ant compile compile:extensions %{?with_tests:compile:test}
136 rm -rf $RPM_BUILD_ROOT
139 install -d $RPM_BUILD_ROOT%{_javadir}
140 cp -p target/%{name}-%{version}.jar \
141 $RPM_BUILD_ROOT%{_javadir}/%{name}-%{version}.jar
142 cp -p target/%{name}-core-%{version}.jar \
143 $RPM_BUILD_ROOT%{_javadir}/%{name}-core-%{version}.jar
144 cp -p target/%{name}-extensions-%{version}.jar \
145 $RPM_BUILD_ROOT%{_javadir}/%{name}-extensions-%{version}.jar
146 cp -p target/%{name}-jdk14-%{version}.jar \
147 $RPM_BUILD_ROOT%{_javadir}/%{name}-jdk14-%{version}.jar
148 cp -p target/%{name}-jdk5-%{version}.jar \
149 $RPM_BUILD_ROOT%{_javadir}/%{name}-jdk5-%{version}.jar
150 cp -p target/%{name}-nodeps-%{version}.jar \
151 $RPM_BUILD_ROOT%{_javadir}/%{name}-nodeps-%{version}.jar
152 cp -p target/%{name}-nodeps-jdk14-%{version}.jar \
153 $RPM_BUILD_ROOT%{_javadir}/%{name}-nodeps-jdk14-%{version}.jar
154 cp -p target/%{name}-nodeps-jdk5-%{version}.jar \
155 $RPM_BUILD_ROOT%{_javadir}/%{name}-nodeps-jdk5-%{version}.jar
157 cd $RPM_BUILD_ROOT%{_javadir}
158 for jar in *-%{version}.jar; do
159 ln -sf ${jar} `echo $jar| sed "s|-%{version}||g"`
163 install -d $RPM_BUILD_ROOT%{_bindir}
164 cp -p bin/aspectwerkz $RPM_BUILD_ROOT%{_bindir}
167 install -d $RPM_BUILD_ROOT%{_javadocdir}/%{name}-%{version}
168 cp -pr docs/apidocs/* $RPM_BUILD_ROOT%{_javadocdir}/%{name}-%{version}
169 ln -s %{name}-%{version} $RPM_BUILD_ROOT%{_javadocdir}/%{name} # ghost symlink
173 install -d $RPM_BUILD_ROOT%{_datadir}/%{name}-%{version}/src
174 install -d $RPM_BUILD_ROOT%{_datadir}/%{name}-%{version}/classes
175 install -d $RPM_BUILD_ROOT%{_datadir}/%{name}-%{version}/bin
176 cp -pr target/samples-classes/* $RPM_BUILD_ROOT%{_datadir}/%{name}-%{version}/classes
177 cp -pr src/samples/* $RPM_BUILD_ROOT%{_datadir}/%{name}-%{version}/src
180 install -d $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}
181 cp -pr docs/* $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}
182 cp -p LICENSE.txt $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}
185 rm -rf $RPM_BUILD_ROOT
188 ln -sf %{name}-%{version} %{_javadocdir}/%{name}
191 %defattr(644,root,root,755)
192 %doc %{_docdir}/%{name}-%{version}/LICENSE.txt
193 %attr(755,root,root) %{_bindir}/aspectwerkz
197 %defattr(644,root,root,755)
198 %{_javadocdir}/%{name}-%{version}
199 %ghost %{_javadocdir}/%{name}
202 %defattr(644,root,root,755)
203 %doc %{_docdir}/%{name}-%{version}
206 %defattr(644,root,root,755)
207 %{_datadir}/%{name}-%{version}