2 # - rename to java-javassist (?)
3 # - it doesn't build with gcj, because it requires com.sun.jdi. Is there any
4 # non-sun package that provides these classes?
6 Summary: Java Programming Assistant: bytecode manipulation
7 Summary(pl.UTF-8): Asystent programisty Javy: operacje na bajtkodzie
13 Source0: http://downloads.sourceforge.net/jboss/%{name}-%{version}-GA.zip
14 # Source0-md5: a2d1b4421e3902554d333d009db852a8
15 URL: http://www.csg.is.titech.ac.jp/~chiba/javassist/
16 BuildRequires: ant >= 0:1.6
18 BuildRequires: jpackage-utils >= 0:1.6
19 BuildRequires: rpm-javaprov
20 BuildRequires: rpmbuild(macros) >= 1.300
23 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
26 Javassist (Java Programming Assistant) makes Java bytecode
27 manipulation simple. It is a class library for editing bytecodes in
28 Java; it enables Java programs to define a new class at runtime and to
29 modify a class file when the JVM loads it. Unlike other similar
30 bytecode editors, Javassist provides two levels of API: source level
31 and bytecode level. If the users use the source-level API, they can
32 edit a class file without knowledge of the specifications of the Java
33 bytecode. The whole API is designed with only the vocabulary of the
34 Java language. You can even specify inserted bytecode in the form of
35 source text; Javassist compiles it on the fly. On the other hand, the
36 bytecode-level API allows the users to directly edit a class file as
39 %description -l pl.UTF-8
40 Javassist (asystent programisty Javy) ułatwia operacje na bajtkodzie
41 Javy. Jest to biblioteka klas do modyfikowania bajtkodu w Javie;
42 pozwala programom w Javie definiować nowe klasy w czasie działania
43 oraz modyfikować pliki klas w czasie wczytywania ich przez JVM. W
44 przeciwieństwie do innych podobnych edytorów bajtkodu Javassist
45 udostępnia dwa poziomy API: źródłowy i bajtkodu. Korzystający z API
46 poziomu źródłowego mogą modyfikować plik klasy bez znajomości
47 specyfikacji bajtkodu. Całe API jest zaprojektowane z użyciem
48 wyłącznie słownictwa języka Java. Można nawet określać wstawiany
49 bajtkod w postaci tekstu źródłowego - Javassist skompiluje go w locie.
50 Z drugiej strony API poziomu bajtkodu pozwala użytkownikom
51 bezpośrednio modyfikować pliki klas, tak jak inne edytory.
54 Summary: Samples for Javassist
55 Summary(pl.UTF-8): Przykłady użycia Javassista
57 Requires: %{name} = %{version}-%{release}
60 Demonstrations and samples for Javassist.
62 %description demo -l pl.UTF-8
63 Pliki demonstracyjne i przykłady dla Javassista.
66 Summary: Javadoc for Javassista
67 Summary(pl.UTF-8): Dokumentacja Javadoc do Javassista
71 Documentation for Javassist.
73 %description javadoc -l fr.UTF-8
74 Javadoc pour Javassist.
76 %description javadoc -l pl.UTF-8
77 Dokumentacja do Javassista.
80 Summary: Tutorial for Javassist
81 Summary(pl.UTF-8): Podręcznik do Javassista
85 Tutorial for Javassist.
87 %description manual -l pl.UTF-8
88 Podręcznik do Javassista.
91 %setup -q -n %{name}-%{version}-GA
92 find -name '*.jar' | xargs rm -vf
98 rm -rf $RPM_BUILD_ROOT
101 install -d $RPM_BUILD_ROOT%{_javadir}
102 cp -a %{name}.jar $RPM_BUILD_ROOT%{_javadir}/%{name}-%{version}.jar
103 ln -s %{name}-%{version}.jar $RPM_BUILD_ROOT%{_javadir}/%{name}.jar
106 install -d $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
107 cp -pr sample/* $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
110 install -d $RPM_BUILD_ROOT%{_javadocdir}/%{name}-%{version}
111 cp -pr html/* $RPM_BUILD_ROOT%{_javadocdir}/%{name}-%{version}
112 ln -s %{name}-%{version} $RPM_BUILD_ROOT%{_javadocdir}/%{name} # ghost symlink
115 rm -rf $RPM_BUILD_ROOT
118 ln -nfs %{name}-%{version} %{_javadocdir}/%{name}
121 %defattr(644,root,root,755)
122 %doc License.html Readme.html
126 %defattr(644,root,root,755)
127 %{_examplesdir}/%{name}-%{version}
130 %defattr(644,root,root,755)
131 %{_javadocdir}/%{name}-%{version}
132 %ghost %{_javadocdir}/%{name}
135 %defattr(644,root,root,755)