summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDongHun Kwak <dh0128.kwak@samsung.com>2021-10-15 15:47:34 +0900
committerDongHun Kwak <dh0128.kwak@samsung.com>2021-10-15 15:47:52 +0900
commitb9cabb56822b097b91ec3aeb2b83b61c62bb1424 (patch)
treee7ce28e2dbd2f54be4bf67cd460db54155ea8577
parent558fa54c62ec59357cb5c40a411f16f1c1754f33 (diff)
downloaddoxygen-sandbox/dh0128.kwak/doxygen-1.9.2-20211015.tar.gz
doxygen-sandbox/dh0128.kwak/doxygen-1.9.2-20211015.tar.bz2
doxygen-sandbox/dh0128.kwak/doxygen-1.9.2-20211015.zip
Change-Id: I212027af5805d9b309736ba656be0165ef8d3e9c Signed-off-by: DongHun Kwak <dh0128.kwak@samsung.com>
-rw-r--r--packaging/0001_static_library_build.patch26
-rw-r--r--packaging/doxygen.manifest5
-rw-r--r--packaging/doxygen.spec60
3 files changed, 91 insertions, 0 deletions
diff --git a/packaging/0001_static_library_build.patch b/packaging/0001_static_library_build.patch
new file mode 100644
index 0000000..289a0dc
--- /dev/null
+++ b/packaging/0001_static_library_build.patch
@@ -0,0 +1,26 @@
+diff --git a/libmscgen/CMakeLists.txt b/libmscgen/CMakeLists.txt
+index 0a23900..34cf4d8 100644
+--- a/libmscgen/CMakeLists.txt
++++ b/libmscgen/CMakeLists.txt
+@@ -16,7 +16,7 @@ foreach(lex_file ${LEX_FILES})
+ FLEX_TARGET(${lex_file} ${lex_file}.l ${GENERATED_SRC}/${lex_file}.cpp COMPILE_FLAGS "${LEX_FLAGS}")
+ endforeach()
+
+-add_library(mscgen
++add_library(mscgen STATIC
+ gd.c
+ gd_security.c
+ gdfontt.c
+diff --git a/libxml/CMakeLists.txt b/libxml/CMakeLists.txt
+index 96c5653..596ed90 100644
+--- a/libxml/CMakeLists.txt
++++ b/libxml/CMakeLists.txt
+@@ -11,7 +11,7 @@ set_source_files_properties(${GENERATED_SRC}/xml.l.h PROPERTIES GENERATED 1)
+
+ FLEX_TARGET(xml xml.l ${GENERATED_SRC}/xml.cpp COMPILE_FLAGS "${LEX_FLAGS}")
+
+-add_library(xml
++add_library(xml STATIC
+ ${GENERATED_SRC}/xml.cpp
+ ${GENERATED_SRC}/xml.l.h
+ )
diff --git a/packaging/doxygen.manifest b/packaging/doxygen.manifest
new file mode 100644
index 0000000..017d22d
--- /dev/null
+++ b/packaging/doxygen.manifest
@@ -0,0 +1,5 @@
+<manifest>
+ <request>
+ <domain name="_"/>
+ </request>
+</manifest>
diff --git a/packaging/doxygen.spec b/packaging/doxygen.spec
new file mode 100644
index 0000000..60e3300
--- /dev/null
+++ b/packaging/doxygen.spec
@@ -0,0 +1,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}/*
+