summaryrefslogtreecommitdiff
path: root/packaging/doxygen.spec
blob: 60e330050c0dfaaef35a6ac3bf9e16425a475268 (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
Name:           doxygen
Version:        1.9.2
Release:        1
License:        GPL-2.0+
Summary:        Automated C, C++, and Java Documentation Generator
Url:            http://www.stack.nl/~dimitri/doxygen/
Group:          Development/Tools
Source:         http://ftp.stack.nl/pub/users/dimitri/doxygen-%{version}.src.tar.gz
Source1001: 	doxygen.manifest
Source1002: 	0001_static_library_build.patch


# BuildRequires:  bison
# BuildRequires:  flex
# BuildRequires:  gcc-c++
# BuildRequires:  gettext-tools

BuildRequires:  cmake
BuildRequires:  python3
BuildRequires:  flex
BuildRequires:  bison

%description
Doxygen is a documentation system for C, C++, Java, and IDL. It can
generate an online class browser (in HTML) and an offline reference
manual (in LaTeX) from a set of documented source files. The
documentation is extracted directly from the sources. Doxygen is
developed on a Linux platform, but it runs on most other UNIX flavors
as well. An executable for Windows 95/NT is also available.

%prep
%setup -q
cp %{SOURCE1001} .
%{__patch} -p1 < %{SOURCE1002}

%build
export CFLAGS+=" -fPIC"
export CXXFLAGS+=" -fPIC"
export LDFLAGS+=" -pie"
%{?ubsan:
/usr/bin/gcc-unforce-options
/usr/bin/gcc-force-options -fsanitize=undefined -fno-sanitize=vptr
}
mkdir build
pushd build
%{cmake} -G "Unix Makefiles" ../
make %{?_smp_mflags}
popd

%install
pushd build
%make_install
popd

%docs_package

%files
%manifest %{name}.manifest
%{_bindir}/*