]> git.pld-linux.org Git - packages/aspectwerkz.git/blame - aspectwerkz.spec
- new names for some deps (java-junit, java-qdox)
[packages/aspectwerkz.git] / aspectwerkz.spec
CommitLineData
80c323c3
ER
1#
2# Conditional build:
3%bcond_with tests # compile and run tests
4#
6256270b 5%include /usr/lib/rpm/macros.java
7799f632 6Summary: AOP for Java
98f58245 7Summary(pl.UTF-8): AOP dla Javy
7799f632
ER
8Name: aspectwerkz
9Version: 2.0
10Release: 0.1
11License: BSD-style License
12Group: Development/Languages/Java
7799f632
ER
13Source0: http://dist.codehaus.org/aspectwerkz/distributions/%{name}-%{version}.zip
14# Source0-md5: d7462b4d76f268e78a3843a28da71990
15Patch0: %{name}2-build_xml.patch
16Patch1: %{name}2-script.patch
4baebafd 17URL: http://aspectwerkz.codehaus.org/
018fa99a 18BuildRequires: ant >= 1.6
7799f632 19BuildRequires: asm
80c323c3 20BuildRequires: concurrent
6256270b 21#BuildRequires: dom4j
80c323c3
ER
22BuildRequires: gnu.trove
23BuildRequires: jarjar
640fdc47 24BuildRequires: java-junit
25BuildRequires: java-qdox
80c323c3 26BuildRequires: javassist
6256270b
ER
27BuildRequires: jdk
28BuildRequires: jpackage-utils
80c323c3 29BuildRequires: jrexx
80c323c3
ER
30BuildRequires: junitperf
31BuildRequires: piccolo
0de39582 32BuildRequires: rpm-javaprov
6256270b 33BuildRequires: rpmbuild(macros) >= 1.300
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.389644 seconds and 4 git commands to generate.