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