summaryrefslogtreecommitdiff
path: root/libpsl.spec
blob: 5021cca72500e165d8b9e76a21e80b0b19bab540 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
Summary:	C library for the Publix Suffix List
Summary(pl.UTF-8):	Biblioteka C do obsługi listy przyrostków publicznych (Public Suffix List)
Name:		libpsl
Version:	0.5.1
Release:	2
License:	MIT
Group:		Networking
Source0:	https://github.com/rockdaboot/libpsl/archive/%{version}/%{name}-%{version}.tar.gz
# Source0-md5:	3ef1aba32c2422b3527d86d3fb47c18e
URL:		https://rockdaboot.github.io/libpsl
BuildRequires:	autoconf
BuildRequires:	automake
BuildRequires:	gettext-autopoint
BuildRequires:	gettext-devel
BuildRequires:	glib2-devel
BuildRequires:	gtk-doc
BuildRequires:	libicu-devel
BuildRequires:	libxslt
BuildRoot:	%{tmpdir}/%{name}-%{version}-root-%(id -u -n)

%description
libpsl is a C library to handle the Public Suffix List. A "public
suffix" is a domain name under which Internet users can directly
register own names.

Browsers and other web clients can use it to
- Avoid privacy-leaking "supercookies";
- Avoid privacy-leaking "super domain" certificates;
- Domain highlighting parts of the domain in a user interface;
- Sorting domain lists by site;

Libpsl...
- has built-in PSL data for fast access;
- allows to load PSL data from files;
- checks if a given domain is a "public suffix";
- provides immediate cookie domain verification;
- finds the longest public part of a given domain;
- finds the shortest private part of a given domain;
- works with international domains (UTF-8 and IDNA2008 Punycode);
- is thread-safe;
- handles IDNA2008 UTS#46;

%description -l pl.UTF-8
libpsl to biblioteka C do obsługi listy przyrostków publicznych
(Public Suffix List). "Przyrostek publiczny" to nazwa domeny, poniżej
której bezpośrednio użytkownicy Internetu mogą rejestrować własne
nazwy.

Przeglądarki i inni klienci WWW mogą jej używać w celu:
- zapobieganiu "superciasteczek" naruszającym prywatność
- zapobieganiu certyfikatom "superdomenowym" naruszającym prywatność
- podświetlania części domen w interfejsie użytkownika
- sortowania listy domen według serwisu.

Libpsl:
- ma wbudowane dane PSL dla szybkiego dostępu
- pozwala na wczytywanie danych PSL z plików
- sprawdza, czy dana domena jest "przyrostkiem publicznym"
- zapewnia natychmiastową weryfikację domeny ciasteczka
- znajduje najdłuższą publiczną część podanej domeny
- znajduje najkrótszą prywatną część podanej domeny
- działa z domenami międzynarodowymi (UTF-8 i IDNA2008 Punycode)
- jest bezpieczna względem wątków
- obsługuje IDNA2008 UTS#46.

%package devel
Summary:	Development files for libpsl
Summary(pl.UTF-8):	Pliki programistyczne biblioteki libpsl
Requires:	%{name} = %{version}-%{release}

%description devel
This package contains the header file for developing applications that
use libpsl.

%description devel -l pl.UTF-8
Ten pakiet zawiera plik nagłówkowy do tworzenia aplikacji
wykorzystujących bibliotekę libpsl.

%package utils
Summary:	Commandline utility to explore the Public Suffix List
Summary(pl.UTF-8):	Narzędzie linii poleceń do eksplorowania listy przyrostków publicznych
Requires:	%{name} = %{version}-%{release}

%description utils
This package contains a commandline utility to explore the Public
Suffix List, for example it checks if domains are public suffixes,
checks if cookie-domain is acceptable for domains and so on.

%description utils -l pl.UTF-8
Ten pakiet zawiera narzędzie linii poleceń do eksplorowania listy
przyrostków publicznych (Public Suffix List); sprawdza ono na
przykład, czy domeny są przyrostkami publicznymi, czy domena
ciasteczka jest akceptowalna dla domen itp.

%prep
%setup -q

%build
./autogen.sh

%configure \
	--disable-silent-rules \
	--disable-static \
	--enable-man \
	--enable-gtk-doc

%{__make}

%{?with_tests:%{__make} check}

%install
rm -rf $RPM_BUILD_ROOT
%{__make} install \
	DESTDIR=$RPM_BUILD_ROOT

%{__rm} $RPM_BUILD_ROOT%{_datadir}/libpsl/test_psl.txt

%clean
rm -rf $RPM_BUILD_ROOT

%post	-p /sbin/ldconfig
%postun	-p /sbin/ldconfig

%files
%defattr(644,root,root,755)
%doc AUTHORS NEWS README.md
%attr(755,root,root) %{_libdir}/libpsl.so.*.*.*
%attr(755,root,root) %ghost %{_libdir}/libpsl.so.0

%files devel
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdir}/libpsl.so
%{_includedir}/libpsl.h
%{_pkgconfigdir}/libpsl.pc
%{_mandir}/man3/libpsl.3*
#%{_datadir}/gtk-doc/html/libpsl/
%{_datadir}/%{name}

%files utils
%defattr(644,root,root,755)
%attr(755,root,root) %{_bindir}/psl