]> git.pld-linux.org Git - SPECS.git/blob - nekohtml.spec
SPECS updated Wed 28 Jul 14:48:01 CEST 2021
[SPECS.git] / nekohtml.spec
1 #
2 # Conditional build:
3 %bcond_without  javadoc         # don't build apidocs
4 #
5 Summary:        HTML scanner and tag balancer
6 Summary(pl.UTF-8):      Narzędzie do skanowania i równoważenia znaczników HTML
7 Name:           nekohtml
8 Version:        0.9.5
9 Release:        2
10 License:        Apache-like
11 Group:          Applications/Text
12 Source0:        http://www.apache.org/~andyc/neko/%{name}-%{version}.tar.gz
13 # Source0-md5:  a5b22b189f23d0648eabc308fcfd4542
14 Source1:        %{name}-filter.sh
15 Patch0:         %{name}-crosslink.patch
16 Patch1:         %{name}-HTMLScanner.patch
17 URL:            http://www.apache.org/~andyc/neko/doc/html/
18 BuildRequires:  ant
19 BuildRequires:  java-gcj-compat-devel
20 BuildRequires:  java-xerces >= 2.3.0
21 %{?with_javadoc:BuildRequires:  java-xerces-javadoc >= 2.3.0}
22 Requires:       java-xerces >= 2.3.0
23 BuildArch:      noarch
24 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
25
26 %description
27 NekoHTML is a simple HTML scanner and tag balancer that enables
28 application programmers to parse HTML documents and access the
29 information using standard XML interfaces. The parser can scan HTML
30 files and "fix up" many common mistakes that human (and computer)
31 authors make in writing HTML documents. NekoHTML adds missing parent
32 elements; automatically closes elements with optional end tags; and
33 can handle mismatched inline element tags. NekoHTML is written using
34 the Xerces Native Interface (XNI) that is the foundation of the
35 Xerces2 implementation. This enables you to use the NekoHTML parser
36 with existing XNI tools without modification or rewriting code.
37
38 %description -l pl.UTF-8
39 NekoHTML to proste narzędzie do skanowania i równoważenia znaczników
40 HTML pozwalające programistom aplikacji na analizę dokumentów HTML i
41 dostęp do informacji przy użyciu standardowych interfejsów XML.
42 Analizator potrafi skanować pliki HTML i "poprawiać" wiele popularnych
43 błędów popełnianych przez autorów (ludzi i programy) piszących
44 dokumenty HTML. NekoHTML dodaje brakujące elementy rodzicielskie;
45 automatycznie zamyka elementy z opcjonalnymi znacznikami końcowymi;
46 potrafi obsłużyć niedopasowane znaczniki elementów inline. NekoHTML
47 jest napisane przy użyciu natywnego interfejsu Xercesa (XNI) będącego
48 podstawą implementacji Xerces2. Pozwala to używać analizatora NekoHTML
49 z istniejącymi narzędziami XNI bez modyfikowania czy przepisywania
50 kodu.
51
52 %package javadoc
53 Summary:        Javadoc for %{name}
54 Summary(pl.UTF-8):      Dokumentacja javadoc dla pakietu %{name}
55 Group:          Documentation
56 Requires:       jpackage-utils
57
58 %description javadoc
59 Javadoc for %{name}.
60
61 %description javadoc -l pl.UTF-8
62 Dokumentacja javadoc dla pakietu %{name}.
63
64 %package demo
65 Summary:        Demo for %{name}
66 Summary(pl.UTF-8):      Pliki demonstracyjne dla pakietu %{name}
67 Group:          Applications/Text
68 Requires:       %{name} = %{version}-%{release}
69
70 %description demo
71 Demonstrations and samples for %{name}.
72
73 %description demo -l pl.UTF-8
74 Pliki demonstracyjne i przykłady dla pakietu %{name}.
75
76 %prep
77 %setup -q
78 %patch0 -p0
79 %patch1 -b .sav
80 find . -name "*.jar" -exec rm -f {} \;
81
82 %build
83 export CLASSPATH=$(build-classpath xerces-j2)
84 ant -f build-html.xml \
85         -Dbuild.compiler=extJavac \
86         -Djarfile=%{name}-%{version}.jar \
87         -DjarfileXni=%{name}-xni-%{version}.jar \
88         -DjarfileSamples=%{name}-samples-%{version}.jar \
89 %if %{with javadoc}
90         -Dj2se.javadoc=%{_javadocdir}/java \
91         -Dxni.javadoc=%{_javadocdir}/xerces/xni \
92         -Dxerces.javadoc=%{_javadocdir}/xerces/xerces2 \
93 %endif
94         clean package jar-xni test
95
96 %install
97 rm -rf $RPM_BUILD_ROOT
98
99 # Jars
100 install -d $RPM_BUILD_ROOT%{_javadir}
101 install -p %{name}{,-xni}-%{version}.jar $RPM_BUILD_ROOT%{_javadir}
102 ln -s %{name}-%{version}.jar $RPM_BUILD_ROOT%{_javadir}/%{name}.jar
103 ln -s %{name}-xni-%{version}.jar $RPM_BUILD_ROOT%{_javadir}/%{name}-xni.jar
104
105 # Scripts
106 install -Dpm 755 %{SOURCE1} $RPM_BUILD_ROOT%{_bindir}/%{name}-filter
107
108 # Samples
109 install -d $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
110 install -p %{name}-samples-%{version}.jar \
111         $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
112
113 %if %{with javadoc}
114 # Javadocs
115 install -d $RPM_BUILD_ROOT%{_javadocdir}/%{name}-%{version}
116 cp -a bin/package/nekohtml-*/doc/html/javadoc/* \
117         $RPM_BUILD_ROOT%{_javadocdir}/%{name}-%{version}
118 ln -s %{name}-%{version} $RPM_BUILD_ROOT%{_javadocdir}/%{name} # ghost symlink
119 %endif
120
121 # Avoid having javadocs in %doc.
122 rm -rf bin/package/nekohtml-*/doc/html/javadoc
123
124 # Fix link between docs and javadoc.
125 cd bin/package/nekohtml-*/doc/html
126 ln -sf %{_javadocdir}/%{name}-%{version} javadoc
127
128 %clean
129 rm -rf $RPM_BUILD_ROOT
130
131 %if %{with javadoc}
132 %post javadoc
133 rm -f %{_javadocdir}/%{name}
134 ln -s %{name}-%{version} %{_javadocdir}/%{name}
135 %endif
136
137 %files
138 %defattr(644,root,root,755)
139 %doc LICENSE* README* TODO* bin/package/nekohtml-*/doc/*
140 %attr(755,root,root) %{_bindir}/%{name}-filter
141 %{_javadir}/%{name}*.jar
142
143 %files javadoc
144 %defattr(644,root,root,755)
145 %doc %{_javadocdir}/%{name}-%{version}
146 %ghost %doc %{_javadocdir}/%{name}
147
148 %files demo
149 %defattr(644,root,root,755)
150 %{_examplesdir}/%{name}-%{version}
This page took 0.204497 seconds and 3 git commands to generate.