summaryrefslogtreecommitdiffstats
path: root/lexbor.spec
blob: 6af18e49ae69bfa6e0761f6baea27bd49129e687 (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
# remirepo/fedora spec file for lexbor
#
# SPDX-FileCopyrightText:  Copyright 2026 Remi Collet
# SPDX-License-Identifier: CECILL-2.1
# http://creativecommons.org/licenses/by-sa/4.0/
#
# Please, preserve the changelog entries
#

%bcond_without      tests
%bcond_with         licensecheck

# Github forge
%global gh_vend     %{name}
%global gh_proj     %{name}
%global forgeurl    https://github.com/%{gh_vend}/%{gh_proj}
%global tag         v%{version}
# for EL-8 to avoid TAG usage
%global archivename %{gh_proj}-%{version}

%global soname      2

Name:          lexbor
Summary:       HTML Renderer library
License:       Apache-2.0
Version:       2.7.0
Release:       2%{?dist}
%forgemeta
URL:           %{forgeurl}
Source0:       %{forgesource}
# Use --with licensecheck to generate
Source3:       %{name}-files-by-license.txt

Patch0:        0001-add-support-for-pkg-config.patch
Patch1:        0002-Fix-346-always-generates-lexbor.pc-347.patch

ExcludeArch:   %{ix86}

BuildRequires: cmake >= 2.8.12
BuildRequires: make
BuildRequires: gcc


%description
Crafting a Browser Engine with Simplicity and Flexibility.

Lexbor is still in development, but the existing modules are already
production-ready.

A set of fast, standards-compliant tools (modules) for working with modern
web technologies — HTML parsing, CSS processing, URL handling, and more.
These modules are production-ready today and form the foundation of a browser
engine in development.


%package devel
Summary:    Header files and development libraries for %{name}
Requires:   %{name}%{?_isa} = %{version}-%{release}

%description devel
This package contains the header files and development libraries
for %{name}.


%prep
%forgesetup
%patch -P0 -p1 -b .pkgconfig1
%patch -P1 -p1 -b .pkgconfig2

%if %{with licensecheck}
LST=$(mktemp)

licensecheck -r . | sed -e 's:^./::' >$LST
grep -v UNKNOWN $LST | sed -e 's/.*: //' | sort -u | while read lic
do
	echo -e "\n$lic\n------------"
	grep ": $lic\$" $LST | sed -e "s/: $lic//"
done  | tee %{SOURCE3}
rm $LST
%endif


%build
%cmake \
%if %{with tests}
  -DLEXBOR_BUILD_TESTS=ON \
%endif
  -DLEXBOR_BUILD_EXAMPLES=OFF \
  -DLEXBOR_INSTALL_HEADERS=ON \
  -DLEXBOR_BUILD_SHARED=ON \
  -DLEXBOR_BUILD_STATIC=OFF

%cmake_build


%install
%cmake_install


%if %{with tests}
%check
%ctest
%endif


%files
%license LICENSE
%doc CHANGELOG.md
%doc README.md
%doc SECURITY.md
%{_libdir}/lib%{name}.so.%{soname}*

%files devel
%doc examples
%{_includedir}/%{name}
%{_libdir}/lib%{name}.so
%{_libdir}/cmake/%{name}
%{_libdir}/pkgconfig/%{name}.pc


%changelog
* Fri Mar 27 2026 Remi Collet <remi@remirepo.net> - 2.7.0-2
- improved pkg-config patch (merged upstream)

* Tue Mar 24 2026 Remi Collet <remi@remirepo.net> - 2.7.0-1
- initial package
- open https://github.com/lexbor/lexbor/pull/345
  add support for pkg-config