From 744fbd541abb71e5921032b7503ec27c461166fe Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc=20W=C3=A4ckerlin?= Date: Thu, 19 Jul 2018 10:25:56 +0200 Subject: [PATCH] migrated to git, build tested for deb and rpm --- COPYING | 2 +- ChangeLog | 127 ----- INSTALL | 2 +- README => README.md | 3 +- ax_check_qt.m4 | 45 +- ax_init_standard_project.m4 | 71 ++- bootstrap.sh | 18 +- build-in-docker.conf | 16 +- build-in-docker.sh | 24 +- configure.ac | 9 +- debian/control.in | 2 +- debian/rules | 2 +- doc/doxyfile.in | 441 +++++++++++------- doc/makefile.am | 2 +- doc/screenshots/screenshot-certificates.png | Bin 96564 -> 0 bytes .../screenshot-hardware-tokeninfo-flags.png | Bin 54668 -> 0 bytes .../screenshot-hardware-tokeninfo.png | Bin 53626 -> 0 bytes mac-create-app-bundle.sh | 64 +-- makefile.am | 16 +- resolve-debbuilddeps.sh | 2 +- resolve-rpmbuilddeps.sh | 4 +- tokentool.spec.in | 45 +- 22 files changed, 475 insertions(+), 420 deletions(-) rename README => README.md (58%) delete mode 100644 doc/screenshots/screenshot-certificates.png delete mode 100644 doc/screenshots/screenshot-hardware-tokeninfo-flags.png delete mode 100644 doc/screenshots/screenshot-hardware-tokeninfo.png diff --git a/COPYING b/COPYING index 88798ab..2fcb217 120000 --- a/COPYING +++ b/COPYING @@ -1 +1 @@ -/usr/share/automake-1.15/COPYING \ No newline at end of file +/usr/share/automake-1.13/COPYING \ No newline at end of file diff --git a/ChangeLog b/ChangeLog index 966f3a7..e69de29 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,127 +0,0 @@ -2017-02-17 11:05 - - * [r13] COPYING, ChangeLog, INSTALL: - backup - -2017-02-06 22:56 - - * [r12] ChangeLog, configure.ac, resolve-debbuilddeps.sh: - fixed debian dependencies - -2017-02-03 15:51 - - * [r11] COPYING, ChangeLog, INSTALL, ax_init_standard_project.m4, - bootstrap.sh, build-in-docker.conf, build-in-docker.sh, - configure.ac, debian, debian/changelog.in[ADD], - debian/compat[ADD], debian/control.in[ADD], debian/docs[ADD], - debian/rules[ADD], resolve-debbuilddeps.sh, - resolve-rpmbuilddeps.sh, src/tokentool.hxx: - updated to qt5 with more information than ever before - -2016-11-11 13:38 - - * [r10] COPYING, ChangeLog, INSTALL, autogen.sh[ADD], - ax_cxx_compile_stdcxx_11.m4, ax_init_standard_project.m4, - bootstrap.sh, build-in-docker.conf[ADD], build-in-docker.sh, - doc/footer.html.in[ADD], doc/header.html.in[ADD], - doc/plantuml.jar[ADD], doc/style.css[ADD], - mac-create-app-bundle.sh, makefile_test.inc.am[ADD], - resolve-debbuilddeps.sh, resolve-rpmbuilddeps.sh, sql-to-dot.sed: - fixed build in docker - -2015-11-13 16:04 marc - - * [r9] ax_init_standard_project.m4, bootstrap.sh, makefile.am, - src/tokentool.ui: - fixed icon and desktop file - -2015-11-12 13:42 marc - - * [r8] src/makefile.am, src/resources.qrc, - src/resources/tokentool-icon.png, - src/resources/tokentool-logo.png[ADD], src/tokentool.ui, - tokentool-icon.png, tokentool-icon.xcf, tokentool-logo.png[ADD]: - window icon - -2015-11-11 15:30 marc - - * [r7] ax_init_standard_project.m4, bootstrap.sh, makefile.am, - src/languages.qrc, src/resources/tokentool-icon.png[ADD], - src/version.cxx, tokentool-icon.png[ADD], - tokentool-icon.xcf[ADD], tokentool.desktop.in[ADD]: - added desktop file and icon - -2015-11-11 13:17 marc - - * [r6] AUTHORS, ChangeLog: - fix for debian build - -2015-11-11 13:05 marc - - * [r5] bootstrap.sh, debian, debian/changelog.in[ADD], - debian/compat[ADD], debian/control.in[ADD], debian/docs[ADD], - debian/rules[ADD], doc/doxyfile.in, src/languages.qrc[CPY], - src/languages.qrc.in[DEL], src/makefile.am, src/tokentool.hxx, - src/version.cxx[ADD]: - updated build system (was an outdated version) - -2015-11-11 12:33 marc - - * [r4] debian/control.in: - migrated to new build system - -2015-11-11 12:30 marc - - * [r3] COPYING, ChangeLog, INSTALL, README, ax_check_qt.m4[ADD], - ax_cxx_compile_stdcxx_11.m4[ADD], - ax_init_standard_project.m4[ADD], bootstrap.sh, - build-in-docker.sh[ADD], build-resource-file.sh[ADD], - configure.ac[ADD], configure.in[DEL], debian, - debian/changelog.in[ADD], debian/compat[ADD], - debian/control.in[ADD], debian/docs[ADD], debian/rules[ADD], doc, - doc/doxyfile.in[ADD], doc/makefile.am[ADD], doc/screenshots[ADD], - doc/screenshots/screenshot-certificates.png[ADD], - doc/screenshots/screenshot-hardware-tokeninfo-flags.png[ADD], - doc/screenshots/screenshot-hardware-tokeninfo.png[ADD], - mac-create-app-bundle.sh[ADD], makefile.am, - resolve-debbuilddeps.sh[ADD], resolve-rpmbuilddeps.sh[ADD], - sql-to-dot.sed[ADD], src/main.cxx, src/makefile.am, - src/qmake.pro.in[DEL], src/tokentool.hxx, src/tokentool.ui, - src/tokentool_de.ts, src/tokentool_en.ts, src/tokentool_fr.ts, - src/tokentool_it.ts, src/version.hxx[ADD], tokentool.spec.in: - migrated to new build system - -2011-11-15 15:56 marc - - * [r2] AUTHORS[ADD], COPYING[ADD], ChangeLog[ADD], INSTALL[ADD], - NEWS[ADD], README[ADD], bootstrap.sh[ADD], configure.in[ADD], - debian[ADD], debian/changelog.in[ADD], debian/compat[ADD], - debian/control[ADD], debian/copyright[ADD], - debian/cron.d.ex[ADD], debian/dirs[ADD], debian/docs[ADD], - debian/emacsen-install.ex[ADD], debian/emacsen-remove.ex[ADD], - debian/emacsen-startup.ex[ADD], debian/manpage.1.ex[ADD], - debian/manpage.sgml.ex[ADD], debian/manpage.xml.ex[ADD], - debian/menu[ADD], debian/menu.ex[ADD], debian/postinst.ex[ADD], - debian/postrm.ex[ADD], debian/preinst.ex[ADD], - debian/prerm.ex[ADD], debian/rules[ADD], - debian/shlibs.local.ex[ADD], debian/tokentool-dev.dirs[ADD], - debian/tokentool-dev.install[ADD], debian/tokentool.dirs[ADD], - debian/tokentool.doc-base.EX[ADD], debian/tokentool.install[ADD], - debian/watch.ex[ADD], doc[ADD], doc/doxyfile.in[ADD], - doc/doxygenlayout.xml[ADD], doc/makefile.am[ADD], - makefile.am[ADD], src[ADD], src/languages.qrc.in[ADD], - src/main.cxx[ADD], src/makefile.am[ADD], src/qmake.pro.in[ADD], - src/resources[ADD], src/resources.qrc[ADD], - src/resources/tokentool.png[ADD], src/tokentool.desktop[ADD], - src/tokentool.hxx[ADD], src/tokentool.pc.in[ADD], - src/tokentool.ui[ADD], src/tokentool_de.ts[ADD], - src/tokentool_en.ts[ADD], src/tokentool_fr.ts[ADD], - src/tokentool_it.ts[ADD], src/version.cxx.in[ADD], - tokentool.spec.in[ADD]: - first working release, can delete certificates - -2011-11-15 11:36 marc - - * [r1] .[ADD]: - start - diff --git a/INSTALL b/INSTALL index ddcdb76..8b641e3 120000 --- a/INSTALL +++ b/INSTALL @@ -1 +1 @@ -/usr/share/automake-1.15/INSTALL \ No newline at end of file +/usr/share/automake-1.13/INSTALL \ No newline at end of file diff --git a/README b/README.md similarity index 58% rename from README rename to README.md index e7b3542..cff35dc 100644 --- a/README +++ b/README.md @@ -1,3 +1,4 @@ TokenInfo - PKCS#11 GUI +======================= -Show PKCS#11 / Cryptoki token information. Especially show the content of a SuisseID smart card token. \ No newline at end of file +Show PKCS#11 / Cryptoki token information. Especially show the content of a SuisseID smart card token. diff --git a/ax_check_qt.m4 b/ax_check_qt.m4 index e0eecf2..1781f62 100644 --- a/ax_check_qt.m4 +++ b/ax_check_qt.m4 @@ -119,10 +119,25 @@ AC_DEFUN([AX_CHECK_QT], [ AC_DEFINE([HAVE_$1]) QTDIR=$(${PKG_CONFIG} --variable=prefix Qt5Core) qt_host_bins=$(${PKG_CONFIG} --variable=host_bins Qt5Core) - if test -d "${qt_host_bins}"; then - QT_PLUGIN_PATH=${qt_host_bins}/../plugins + qt_libdir=$(${PKG_CONFIG} --variable=libdir Qt5Core) + if test -d "${qt_libdir}" -a -d "${qt_libdir}/plugins"; then + QT_PLUGIN_PATH="${qt_libdir}/plugins" + elif test -d "${qt_libdir}/qt5" -a -d "${qt_libdir}/qt5/plugins"; then + QT_PLUGIN_PATH="${qt_libdir}/qt5/plugins" + elif test -d "${qt_host_bins}" -a -d "${qt_host_bins}/../plugins"; then + QT_PLUGIN_PATH="${qt_host_bins}/../plugins" + elif test -d "${QTDIR}/plugins; then + QT_PLUGIN_PATH="${QTDIR}/plugins" + elif test -d "${QTDIR}/share/qt5/plugins; then + QT_PLUGIN_PATH="${QTDIR}/share/qt5/plugins" else - QT_PLUGIN_PATH=${QTDIR}/share/qt5/plugins + AC_MSG_ERROR([QT_PLUGIN_PATH not found + - not in: ${qt_libdir}/plugins + - not in: ${qt_libdir}/qt5/plugins + - not in: ${qt_host_bins}/../plugins + - not in: ${QTDIR}/plugins + - not in: ${QTDIR}/share/qt5/plugins +]) fi MOC_FLAGS+=" -DHAVE_$1=1 ${[$1]5_CFLAGS}" [$1]_CPPFLAGS="${[$1]5_CFLAGS}" @@ -166,10 +181,25 @@ AC_DEFUN([AX_CHECK_QT], [ AC_DEFINE([HAVE_$1]) QTDIR=$(${PKG_CONFIG} --variable=prefix QtCore) qt_host_bins=$(${PKG_CONFIG} --variable=host_bins QtCore) - if test -d "${qt_host_bins}"; then - QT_PLUGIN_PATH=${qt_host_bins}/../plugins + qt_libdir=$(${PKG_CONFIG} --variable=libdir QtCore) + if test -d "${qt_libdir}" -a -d "${qt_libdir}/plugins"; then + QT_PLUGIN_PATH="${qt_libdir}/plugins" + elif test -d "${qt_libdir}/qt5" -a -d "${qt_libdir}/qt5/plugins"; then + QT_PLUGIN_PATH="${qt_libdir}/qt5/plugins" + elif test -d "${qt_host_bins}" -a -d "${qt_host_bins}/../plugins"; then + QT_PLUGIN_PATH="${qt_host_bins}/../plugins" + elif test -d "${QTDIR}/plugins; then + QT_PLUGIN_PATH="${QTDIR}/plugins" + elif test -d "${QTDIR}/share/qt5/plugins; then + QT_PLUGIN_PATH="${QTDIR}/share/qt5/plugins" else - QT_PLUGIN_PATH=${QTDIR}/share/qt/plugins + AC_MSG_ERROR([QT_PLUGIN_PATH not found + - not in: ${qt_libdir}/plugins + - not in: ${qt_libdir}/qt5/plugins + - not in: ${qt_host_bins}/../plugins + - not in: ${QTDIR}/plugins + - not in: ${QTDIR}/share/qt5/plugins +]) fi MOC_FLAGS+=" -DHAVE_$1=1 ${$1_CFLAGS}" [$1]_CPPFLAGS="${[$1]_CFLAGS}" @@ -214,9 +244,6 @@ AC_DEFUN([AX_CHECK_QT], [ AX_CHECK_VALID_CXX_FLAG([-Wl,-subsystem,windows], [windows console flag]) fi test "x$prefix" = xNONE && prefix=$ac_default_prefix - if test "${QT_PLUGIN_PATH}" = "${QT_PLUGIN_PATH#${prefix}}"; then - QT_PLUGIN_PATH=${prefix}${QT_PLUGIN_PATH#/usr} - fi AC_ARG_WITH([qt-plugin-path], [AS_HELP_STRING([--with-qt-plugin-path=PATH], [define a different qt plugin path, current @<:@default=check@:>@])], diff --git a/ax_init_standard_project.m4 b/ax_init_standard_project.m4 index 742db8d..280dd4c 100644 --- a/ax_init_standard_project.m4 +++ b/ax_init_standard_project.m4 @@ -1,4 +1,4 @@ -## @id $Id$ +## @id $Id: ax_init_standard_project.m4 204 2016-09-29 18:29:53Z marc $ ## 1 2 3 4 5 6 7 8 ## 45678901234567890123456789012345678901234567890123456789012345678901234567890 @@ -218,7 +218,7 @@ AC_DEFUN([AX_INIT_STANDARD_PROJECT], [ AX_SUBST(AUTHOR_URL) AX_SUBST(AUTHOR_MAIL) AX_SUBST(PACKAGER) - PROJECT_URL="${PROJECT_URL:-${AUTHOR_URL}/projects/${PACKAGE_NAME}}" + #PROJECT_URL="${PROJECT_URL:-${AUTHOR_URL}}" SOURCE_DOWNLOAD="${SOURCE_DOWNLOAD:-${AUTHOR_URL}/downloads/${PACKAGE_NAME}}" AX_SUBST(PROJECT_URL) AX_SUBST(SOURCE_DOWNLOAD) @@ -365,12 +365,13 @@ AC_DEFUN([AX_USE_CXX], [ #### Begin: Appended by $0 %.app: % -rm -r [\$][@] - \$(MAKE) DESTDIR=[\$][\$](pwd)/[\$][@]/tmp install + \$(MAKE) DESTDIR=[\$][\$](pwd)/tmp install QTDIR="\${QTDIR}" \ QT_PLUGINS="\${QT_PLUGINS}" \ QT_PLUGIN_PATH="\${QT_PLUGIN_PATH}" \ \${top_builddir}/mac-create-app-bundle.sh \ - [\$][@] [\$][<] [\$][\$](pwd)/[\$][@]/tmp\${prefix} + [\$][@] [\$][<] [\$][\$](pwd)/tmp[\$]{prefix} + -rm -rf tmp maintainer-clean-cxx-targets: -rm makefile.in @@ -1066,13 +1067,16 @@ AC_DEFUN([AX_CHECK_VALID_LD_FLAG], [ # Check if a package exists in the current distribution, if yes, require it # in debian/control.in append @DEB_DEPEND_IFEXISTS@ to Build-Depends +# if you pass a list, it will require the first matching, if any matches # - parameter: -# $1 = package name +# $1 = space separated list of package names AC_DEFUN([AX_DEB_DEPEND_IFEXISTS], [ - pkg="$1" - if test -n "$(apt-cache policy -q ${pkg} 2> /dev/null)"; then - DEB_DEPEND_IFEXISTS="${DEB_DEPEND_IFEXISTS}, ${pkg}" - fi + for pkg in $1; do + if test -n "$(apt-cache policy -q ${pkg} 2> /dev/null)"; then + DEB_DEPEND_IFEXISTS="${DEB_DEPEND_IFEXISTS}, ${pkg}" + break + fi + done ]) # require package in debian/control.in append @DEB_BUILD_DEPEND@ to Build-Depends @@ -1109,17 +1113,19 @@ AC_DEFUN([AX_DEB_RESOLVE], [ # Check if a package exists in the current distribution, if yes, require it # in .spec.in append @RPM_DEPEND_IFEXISTS@ to Build-Depends +# if you pass a list, it will require the first matching, if any matches # - parameter: -# $1 = package name +# $1 = space separated package names AC_DEFUN([AX_RPM_DEPEND_IFEXISTS], [ - pkg="$1" - - if (test -x /usr/bin/zypper && zypper search -x "$pkg" 1>&2 > /dev/null) || \ - (test -x /usr/bin/dnf && dnf list -q "$pkg" 1>&2 > /dev/null) || \ - (test -x /usr/bin/yum && yum list -q "$pkg" 1>&2 > /dev/null) || \ - (test -x /usr/sbin/urpmq && urpmq "$pkg" 1>&2 > /dev/null); then - RPM_DEPEND_IFEXISTS="${RPM_DEPEND_IFEXISTS}, ${pkg}" - fi + for pkg in $1; do + if (test -x /usr/bin/zypper && zypper search -x "$pkg" 1>&2 > /dev/null) || \ + (test -x /usr/bin/dnf && dnf list -q "$pkg" 1>&2 > /dev/null) || \ + (test -x /usr/bin/yum && yum list -q "$pkg" 1>&2 > /dev/null) || \ + (test -x /usr/sbin/urpmq && urpmq "$pkg" 1>&2 > /dev/null); then + RPM_DEPEND_IFEXISTS="${RPM_DEPEND_IFEXISTS}, ${pkg}" + break + fi + done ]) # require package in .spec.in append @RPM_BUILD_DEPEND@ to Build-Depends @@ -1160,36 +1166,23 @@ AC_DEFUN([AX_RPM_RESOLVE], [ # Check if a package exists in the current distribution, if yes, require it # in .spec.in append @ALL_DEPEND_IFEXISTS@ to Build-Depends +# if you pass a list, it will require the first matching, if any matches # - parameter: -# $1 = package name +# $1 = space separated list of package names AC_DEFUN([AX_ALL_DEPEND_IFEXISTS], [ - pkg="$1" - if test -n "$(apt-cache policy -q ${pkg} 2> /dev/null)"; then - DEB_DEPEND_IFEXISTS="${DEB_DEPEND_IFEXISTS}, ${pkg}" - fi - if (test -x /usr/bin/zypper && zypper search -x "$pkg" 1>&2 > /dev/null) || \ - (test -x /usr/bin/dnf && dnf list -q "$pkg" 1>&2 > /dev/null) || \ - (test -x /usr/bin/yum && yum list -q "$pkg" 1>&2 > /dev/null) || \ - (test -x /usr/sbin/urpmq && urpmq "$pkg" 1>&2 > /dev/null); then - RPM_DEPEND_IFEXISTS="${RPM_DEPEND_IFEXISTS}, ${pkg}" - fi + AX_DEB_DEPEND_IFEXISTS([$1]) + AX_RPM_DEPEND_IFEXISTS([$1]) ]) # Check if a package exists in the current distribution, if yes, require it # in .spec.in append @ALL_DEPEND_IFEXISTS@ to Build-Depends +# if you pass a list, it will require the first matching, if any matches # - parameter: # $1 = package name AC_DEFUN([AX_ALL_DEPEND_IFEXISTS_DEV], [ - pkg="$1" - if test -n "$(apt-cache policy -q ${pkg}-dev 2> /dev/null)"; then - DEB_DEPEND_IFEXISTS="${DEB_DEPEND_IFEXISTS}, ${pkg}-dev" - fi - if (test -x /usr/bin/zypper && zypper search -x "$pkg"-devel 1>&2 > /dev/null) || \ - (test -x /usr/bin/dnf && dnf list -q "$pkg"-devel 1>&2 > /dev/null) || \ - (test -x /usr/bin/yum && yum list -q "$pkg"-devel 1>&2 > /dev/null) || \ - (test -x /usr/sbin/urpmq && urpmq "$pkg"-devel 1>&2 > /dev/null); then - RPM_DEPEND_IFEXISTS="${RPM_DEPEND_IFEXISTS}, ${pkg}-devel" - fi + pkgs="$1" + AX_DEB_DEPEND_IFEXISTS([${pkgs// /-dev }-dev]) + AX_RPM_DEPEND_IFEXISTS([${pkgs// /-devel }-devel]) ]) # require package in .spec.in append @ALL_BUILD_DEPEND@ to Build-Depends diff --git a/bootstrap.sh b/bootstrap.sh index 705fb76..69c0994 100755 --- a/bootstrap.sh +++ b/bootstrap.sh @@ -1678,7 +1678,7 @@ fi) $(if testtag AX_RPM_DEPEND; then echo "Requires: @RPM_DEPEND@"; fi) Source0: %{name}-%{version}.tar.gz BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root -BuildRequires: which, pkgconfig, pandoc, gnupg, expect, ${VCSDEPENDS_RPM}make, automake, autoconf, rpm-build$( +BuildRequires: which, pkgconfig, gnupg, expect, ${VCSDEPENDS_RPM}make, automake, autoconf, rpm-build$( if testtag AX_USE_CXX; then echo -n ", binutils-devel, gcc-c++" fi @@ -1700,13 +1700,17 @@ BuildRequires: lsb-release$( echo -n ", libqt5-qtbase-devel, libqt5-qttools, libqt5-linguist-devel, libQt5WebKit5-devel libqt5-qtwebengine-devel libQt5WebKitWidgets-devel"; fi) %else +%if 0%{?mageia} +BuildRequires: rpm-sign, lsb-release $( if testtag AX_REQUIRE_QT || testtag AX_CHECK_QT; then - echo -n "BuildRequires: qt5-qtbase-devel, qt5-qttools-devel, qt5-qtwebkit-devel"; + echo -n "BuildRequires: qtbase5-common-devel, qttools5, lib64qt5webkit-devel, lib64qt5webkitwidgets-devel"; fi) -%if 0%{?mageia} -BuildRequires: rpm-sign, lsb-release %else +$( + if testtag AX_REQUIRE_QT || testtag AX_CHECK_QT; then + echo -n "BuildRequires: qt5-qtbase-devel, qt5-qttools-devel, qt5-qtwebkit-devel"; + fi) BuildRequires: rpm-sign, redhat-lsb %global debug_package %{nil} %endif @@ -1715,6 +1719,9 @@ $( if testtag AX_USE_DOXYGEN; then cat <> /etc/apt/preferences" + PREVENT='libpam-systemd policykit.* colord dconf-service' + for f in ${PREVENT}; do + docker exec ${DOCKER_ID} bash -c "echo 'Package: ${f}' >> /etc/apt/preferences" docker exec ${DOCKER_ID} bash -c "echo 'Pin-Priority: -100' >> /etc/apt/preferences" docker exec ${DOCKER_ID} bash -c "echo >> /etc/apt/preferences" done docker exec ${DOCKER_ID} apt-get update ${OPTIONS} + docker exec ${DOCKER_ID} apt-mark hold ${PREVENT} docker exec ${DOCKER_ID} apt-get upgrade ${OPTIONS} - docker exec ${DOCKER_ID} apt-get install ${OPTIONS} python-software-properties software-properties-common apt-transport-https dpkg-dev lsb-release wget || \ - docker exec ${DOCKER_ID} apt-get install ${OPTIONS} software-properties-common apt-transport-https dpkg-dev lsb-release wget || \ - docker exec ${DOCKER_ID} apt-get install ${OPTIONS} python-software-properties apt-transport-https dpkg-dev lsb-release wget; + docker exec ${DOCKER_ID} apt-get install ${OPTIONS} ${PREVENT// /- }- python-software-properties software-properties-common apt-transport-https dpkg-dev lsb-release wget || \ + docker exec ${DOCKER_ID} apt-get install ${OPTIONS} ${PREVENT// /- }- software-properties-common apt-transport-https dpkg-dev lsb-release wget || \ + docker exec ${DOCKER_ID} apt-get install ${OPTIONS} ${PREVENT// /- }- python-software-properties apt-transport-https dpkg-dev lsb-release wget; for key in "${keys[@]}"; do wget -O- "$key" \ | docker exec -i ${DOCKER_ID} apt-key add - @@ -265,9 +267,12 @@ case $mode in for repo in "${repos[@]}"; do ifthenelse "${repo}" "apt-add-repository 'ARG'" done + + + docker exec ${DOCKER_ID} apt-get update ${OPTIONS} for package in "${packages[@]}"; do - ifthenelse "${package}" "apt-get install ${OPTIONS} ARG" + ifthenelse "${package}" "apt-get install ${OPTIONS} ${PREVENT} ARG" done for command in "${commands[@]}"; do ifthenelse "${command}" "ARG" @@ -294,11 +299,14 @@ EOF LSB_RELEASE=/usr/bin/lsb_release fi docker exec ${DOCKER_ID} ${INSTALL_TOOL} rpm-build automake libtool subversion gcc-c++ pkgconfig wget $LSB_RELEASE + if docker exec ${DOCKER_ID} test -x /usr/bin/dnf; then + docker exec ${DOCKER_ID} dnf install -y 'dnf-command(config-manager)' + fi i=0 for key in "${keys[@]}"; do - wget -Orpm-key "$key" + docker exec -i ${DOCKER_ID} wget -Orpm-key "$key" docker exec -i ${DOCKER_ID} rpm --import rpm-key - rm rpm-key + docker exec -i ${DOCKER_ID} rm rpm-key done for repo in "${repos[@]}"; do INSTALL_REPO=$((docker exec ${DOCKER_ID} test -x /usr/bin/zypper && echo zypper ar) || (docker exec ${DOCKER_ID} test -x /usr/bin/dnf && echo dnf config-manager --add-repo) || (docker exec ${DOCKER_ID} test -x /usr/bin/yum && echo wget -O/etc/yum.repos.d/additional$i.repo) || (docker exec ${DOCKER_ID} test -x /usr/sbin/urpmi && echo false)) diff --git a/configure.ac b/configure.ac index a1c8331..5cac8d3 100644 --- a/configure.ac +++ b/configure.ac @@ -9,7 +9,7 @@ ## 45678901234567890123456789012345678901234567890123456789012345678901234567890 m4_define(x_package_name, tokentool) # project's name -m4_define(x_major, 0) # project's major version +m4_define(x_major, 1) # project's major version m4_define(x_minor, 0) # project's minor version m4_include(ax_init_standard_project.m4) AC_INIT(x_package_name, x_version, x_bugreport, x_package_name) @@ -21,16 +21,15 @@ AX_USE_CXX #AX_USE_LIBTOOL #AX_USE_SCRIPTS AX_USE_DOXYGEN -AX_USE_DEBIAN_PACKAGING -AX_USE_RPM_PACKAGING +AX_USE_DEBIAN_PACKAGING([utils]) +AX_USE_RPM_PACKAGING([Applications/Engineering]) #AX_USE_CPPUNIT #AX_BUILD_TEST #AX_BUILD_EXAMPLES #AX_BUILD_HTML +AX_PKG_REQUIRE(mrwcxx, mrw-c++) AX_PKG_REQUIRE(libpcscxx) -AX_DEB_BUILD_DEPEND(libpcscxx-dev) -AX_DEB_RESOLVE # qt features, uncomment, what you need: #AX_CHECK_QT([QT], [QtCore QtGui QtNetwork], [QtWidgets]) diff --git a/debian/control.in b/debian/control.in index 788559d..fab23fb 100644 --- a/debian/control.in +++ b/debian/control.in @@ -1,7 +1,7 @@ Source: @PACKAGE_NAME@ Priority: extra Maintainer: @PACKAGER@ -Build-Depends: debhelper, fakeroot, svn2cl, subversion, subversion-tools, pkg-config, automake, libtool, autotools-dev, pandoc, lsb-release, doxygen, graphviz, mscgen, default-jre-headless|default-jre, qt5-default | libqt4-core | libqtcore4, qt5-qmake | qt4-qmake, qtbase5-dev | libqt4-dev, qtbase5-dev-tools | qt4-dev-tools, qttools5-dev-tools | qt4-dev-tools, qttools5-dev-tools | qt4-dev-tools @DEB_BUILD_DEPEND@ @DEB_DEPEND_IFEXISTS@ +Build-Depends: debhelper, fakeroot, git2cl, git, pkg-config, automake, libtool, autotools-dev, pandoc, lsb-release, doxygen, graphviz, mscgen, default-jre-headless|default-jre, qt5-default | libqt4-core | libqtcore4, qt5-qmake | qt4-qmake, qtbase5-dev | libqt4-dev, qtbase5-dev-tools | qt4-dev-tools, qttools5-dev-tools | qt4-dev-tools, qttools5-dev-tools | qt4-dev-tools @DEB_BUILD_DEPEND@ @DEB_DEPEND_IFEXISTS@ Package: @PACKAGE_NAME@ Section: @DEB_SECTION@ diff --git a/debian/rules b/debian/rules index 04006da..00471c9 100755 --- a/debian/rules +++ b/debian/rules @@ -2,7 +2,7 @@ ## ## This file has been added: ## - by bootstrap.sh -## - on Fri, 03 February 2017 08:45:26 +0100 +## - on Wed, 18 July 2018 15:24:44 +0200 ## Feel free to change it or even remove and rebuild it, up to your needs ## ## 1 2 3 4 5 6 7 8 diff --git a/doc/doxyfile.in b/doc/doxyfile.in index c709c17..8c9b9bd 100644 --- a/doc/doxyfile.in +++ b/doc/doxyfile.in @@ -1,4 +1,4 @@ -# Doxyfile 1.8.6 +# Doxyfile 1.8.11 # This file describes the settings to be used by the documentation system # doxygen (www.doxygen.org) for a project. @@ -46,12 +46,12 @@ PROJECT_NUMBER = @PACKAGE_VERSION@ PROJECT_BRIEF = @DESCRIPTION@ -# With the PROJECT_LOGO tag one can specify an logo or icon that is included in -# the documentation. The maximum height of the logo should not exceed 55 pixels -# and the maximum width should not exceed 200 pixels. Doxygen will copy the logo -# to the output directory. +# With the PROJECT_LOGO tag one can specify a logo or an icon that is included +# in the documentation. The maximum height of the logo should not exceed 55 +# pixels and the maximum width should not exceed 200 pixels. Doxygen will copy +# the logo to the output directory. -PROJECT_LOGO = @PROJECT_LOGO@ +PROJECT_LOGO = @top_srcdir@/@PACKAGE_LOGO@ # The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute) path # into which the generated documentation will be written. If a relative path is @@ -60,7 +60,7 @@ PROJECT_LOGO = @PROJECT_LOGO@ OUTPUT_DIRECTORY = -# If the CREATE_SUBDIRS tag is set to YES, then doxygen will create 4096 sub- +# If the CREATE_SUBDIRS tag is set to YES then doxygen will create 4096 sub- # directories (in 2 levels) under the output directory of each output format and # will distribute the generated files over these directories. Enabling this # option can be useful when feeding doxygen a huge amount of source files, where @@ -70,6 +70,14 @@ OUTPUT_DIRECTORY = CREATE_SUBDIRS = NO +# If the ALLOW_UNICODE_NAMES tag is set to YES, doxygen will allow non-ASCII +# characters to appear in the names of generated files. If set to NO, non-ASCII +# characters will be escaped, for example _xE3_x81_x84 will be used for Unicode +# U+3044. +# The default value is: NO. + +ALLOW_UNICODE_NAMES = NO + # The OUTPUT_LANGUAGE tag is used to specify the language in which all # documentation generated by doxygen is written. Doxygen will use this # information to generate all constant output in the proper language. @@ -85,14 +93,14 @@ CREATE_SUBDIRS = NO OUTPUT_LANGUAGE = English -# If the BRIEF_MEMBER_DESC tag is set to YES doxygen will include brief member +# If the BRIEF_MEMBER_DESC tag is set to YES, doxygen will include brief member # descriptions after the members that are listed in the file and class # documentation (similar to Javadoc). Set to NO to disable this. # The default value is: YES. BRIEF_MEMBER_DESC = YES -# If the REPEAT_BRIEF tag is set to YES doxygen will prepend the brief +# If the REPEAT_BRIEF tag is set to YES, doxygen will prepend the brief # description of a member or function before the detailed description # # Note: If both HIDE_UNDOC_MEMBERS and BRIEF_MEMBER_DESC are set to NO, the @@ -127,7 +135,7 @@ ALWAYS_DETAILED_SEC = NO INLINE_INHERITED_MEMB = YES -# If the FULL_PATH_NAMES tag is set to YES doxygen will prepend the full path +# If the FULL_PATH_NAMES tag is set to YES, doxygen will prepend the full path # before files name in the file list and in the header files. If set to NO the # shortest path that makes the file name unique will be used # The default value is: YES. @@ -197,9 +205,9 @@ MULTILINE_CPP_IS_BRIEF = YES INHERIT_DOCS = YES -# If the SEPARATE_MEMBER_PAGES tag is set to YES, then doxygen will produce a -# new page for each member. If set to NO, the documentation of a member will be -# part of the file/class/namespace that contains it. +# If the SEPARATE_MEMBER_PAGES tag is set to YES then doxygen will produce a new +# page for each member. If set to NO, the documentation of a member will be part +# of the file/class/namespace that contains it. # The default value is: NO. SEPARATE_MEMBER_PAGES = NO @@ -221,12 +229,15 @@ TAB_SIZE = 2 # newlines. ALIASES = "id=\par File-ID\n" +ALIASES += "author=@AUTHOR_NAME@" +ALIASES += "readme=@README_HTML@" +ALIASES += "description=@DESCRIPTION@" ALIASES += "api=\xrefitem api \"API Call\" \"\"" ALIASES += "mutex=\par Reentrant:\nAccess is locked with mutex @c " ALIASES += "instancemutex=\par Reentrant:\nAccess is locked with per instance mutex @c " ALIASES += "classmutex=\par Reentrant:\nAccess is locked with class static mutex @c " ALIASES += "license=\par License\n" -ALIASES += "copy=\par Copyright\n" +ALIASES += "copy=\par Copyright by @AUTHOR_NAME@\n" # This tag can be used to specify a number of word-keyword mappings (TCL only). # A mapping has the form "name=value". For example adding "class=itcl::class" @@ -267,11 +278,14 @@ OPTIMIZE_OUTPUT_VHDL = NO # extension. Doxygen has a built-in mapping, but you can override or extend it # using this tag. The format is ext=language, where ext is a file extension, and # language is one of the parsers supported by doxygen: IDL, Java, Javascript, -# C#, C, C++, D, PHP, Objective-C, Python, Fortran, VHDL. For instance to make -# doxygen treat .inc files as Fortran files (default is PHP), and .f files as C -# (default is Fortran), use: inc=Fortran f=C. +# C#, C, C++, D, PHP, Objective-C, Python, Fortran (fixed format Fortran: +# FortranFixed, free formatted Fortran: FortranFree, unknown formatted Fortran: +# Fortran. In the later case the parser tries to guess whether the code is fixed +# or free formatted code, this is the default for Fortran type files), VHDL. For +# instance to make doxygen treat .inc files as Fortran files (default is PHP), +# and .f files as C (default is Fortran), use: inc=Fortran f=C. # -# Note For files without extension you can use no_extension as a placeholder. +# Note: For files without extension you can use no_extension as a placeholder. # # Note that for custom extensions you also need to set FILE_PATTERNS otherwise # the files are not read by doxygen. @@ -290,8 +304,8 @@ MARKDOWN_SUPPORT = YES # When enabled doxygen tries to link words that correspond to documented # classes, or namespaces to their corresponding documentation. Such a link can -# be prevented in individual cases by by putting a % sign in front of the word -# or globally by setting AUTOLINK_SUPPORT to NO. +# be prevented in individual cases by putting a % sign in front of the word or +# globally by setting AUTOLINK_SUPPORT to NO. # The default value is: YES. AUTOLINK_SUPPORT = YES @@ -331,13 +345,20 @@ SIP_SUPPORT = NO IDL_PROPERTY_SUPPORT = YES # If member grouping is used in the documentation and the DISTRIBUTE_GROUP_DOC -# tag is set to YES, then doxygen will reuse the documentation of the first +# tag is set to YES then doxygen will reuse the documentation of the first # member in the group (if any) for the other members of the group. By default # all members of a group must be documented explicitly. # The default value is: NO. DISTRIBUTE_GROUP_DOC = YES +# If one adds a struct or class to a group and this option is enabled, then also +# any nested class or struct is added to the same group. By default this option +# is disabled and one has to add nested compounds explicitly via \ingroup. +# The default value is: NO. + +GROUP_NESTED_COMPOUNDS = NO + # Set the SUBGROUPING tag to YES to allow class member groups of the same type # (for instance a group of public functions) to be put as a subgroup of that # type (e.g. under the Public Functions section). Set it to NO to prevent @@ -396,7 +417,7 @@ LOOKUP_CACHE_SIZE = 0 # Build related configuration options #--------------------------------------------------------------------------- -# If the EXTRACT_ALL tag is set to YES doxygen will assume all entities in +# If the EXTRACT_ALL tag is set to YES, doxygen will assume all entities in # documentation are documented, even if no documentation was available. Private # class members and static file members will be hidden unless the # EXTRACT_PRIVATE respectively EXTRACT_STATIC tags are set to YES. @@ -406,35 +427,35 @@ LOOKUP_CACHE_SIZE = 0 EXTRACT_ALL = YES -# If the EXTRACT_PRIVATE tag is set to YES all private members of a class will +# If the EXTRACT_PRIVATE tag is set to YES, all private members of a class will # be included in the documentation. # The default value is: NO. EXTRACT_PRIVATE = YES -# If the EXTRACT_PACKAGE tag is set to YES all members with package or internal +# If the EXTRACT_PACKAGE tag is set to YES, all members with package or internal # scope will be included in the documentation. # The default value is: NO. EXTRACT_PACKAGE = YES -# If the EXTRACT_STATIC tag is set to YES all static members of a file will be +# If the EXTRACT_STATIC tag is set to YES, all static members of a file will be # included in the documentation. # The default value is: NO. EXTRACT_STATIC = YES -# If the EXTRACT_LOCAL_CLASSES tag is set to YES classes (and structs) defined -# locally in source files will be included in the documentation. If set to NO +# If the EXTRACT_LOCAL_CLASSES tag is set to YES, classes (and structs) defined +# locally in source files will be included in the documentation. If set to NO, # only classes defined in header files are included. Does not have any effect # for Java sources. # The default value is: YES. EXTRACT_LOCAL_CLASSES = YES -# This flag is only useful for Objective-C code. When set to YES local methods, +# This flag is only useful for Objective-C code. If set to YES, local methods, # which are defined in the implementation section but not in the interface are -# included in the documentation. If set to NO only methods in the interface are +# included in the documentation. If set to NO, only methods in the interface are # included. # The default value is: NO. @@ -459,21 +480,21 @@ HIDE_UNDOC_MEMBERS = NO # If the HIDE_UNDOC_CLASSES tag is set to YES, doxygen will hide all # undocumented classes that are normally visible in the class hierarchy. If set -# to NO these classes will be included in the various overviews. This option has -# no effect if EXTRACT_ALL is enabled. +# to NO, these classes will be included in the various overviews. This option +# has no effect if EXTRACT_ALL is enabled. # The default value is: NO. HIDE_UNDOC_CLASSES = NO # If the HIDE_FRIEND_COMPOUNDS tag is set to YES, doxygen will hide all friend -# (class|struct|union) declarations. If set to NO these declarations will be +# (class|struct|union) declarations. If set to NO, these declarations will be # included in the documentation. # The default value is: NO. HIDE_FRIEND_COMPOUNDS = NO # If the HIDE_IN_BODY_DOCS tag is set to YES, doxygen will hide any -# documentation blocks found inside the body of a function. If set to NO these +# documentation blocks found inside the body of a function. If set to NO, these # blocks will be appended to the function's detailed documentation block. # The default value is: NO. @@ -487,7 +508,7 @@ HIDE_IN_BODY_DOCS = NO INTERNAL_DOCS = NO # If the CASE_SENSE_NAMES tag is set to NO then doxygen will only generate file -# names in lower-case letters. If set to YES upper-case letters are also +# names in lower-case letters. If set to YES, upper-case letters are also # allowed. This is useful if you have classes or files whose names only differ # in case and if your file system supports case sensitive file names. Windows # and Mac users are advised to set this option to NO. @@ -496,12 +517,19 @@ INTERNAL_DOCS = NO CASE_SENSE_NAMES = YES # If the HIDE_SCOPE_NAMES tag is set to NO then doxygen will show members with -# their full class and namespace scopes in the documentation. If set to YES the +# their full class and namespace scopes in the documentation. If set to YES, the # scope will be hidden. # The default value is: NO. HIDE_SCOPE_NAMES = NO +# If the HIDE_COMPOUND_REFERENCE tag is set to NO (default) then doxygen will +# append additional text to a page's title, such as Class Reference. If set to +# YES the compound reference will be hidden. +# The default value is: NO. + +HIDE_COMPOUND_REFERENCE= NO + # If the SHOW_INCLUDE_FILES tag is set to YES then doxygen will put a list of # the files that are included by a file in the documentation of that file. # The default value is: YES. @@ -529,14 +557,14 @@ INLINE_INFO = YES # If the SORT_MEMBER_DOCS tag is set to YES then doxygen will sort the # (detailed) documentation of file and class members alphabetically by member -# name. If set to NO the members will appear in declaration order. +# name. If set to NO, the members will appear in declaration order. # The default value is: YES. SORT_MEMBER_DOCS = YES # If the SORT_BRIEF_DOCS tag is set to YES then doxygen will sort the brief # descriptions of file, namespace and class members alphabetically by member -# name. If set to NO the members will appear in declaration order. Note that +# name. If set to NO, the members will appear in declaration order. Note that # this will also influence the order of the classes in the class list. # The default value is: NO. @@ -581,27 +609,25 @@ SORT_BY_SCOPE_NAME = NO STRICT_PROTO_MATCHING = NO -# The GENERATE_TODOLIST tag can be used to enable ( YES) or disable ( NO) the -# todo list. This list is created by putting \todo commands in the -# documentation. +# The GENERATE_TODOLIST tag can be used to enable (YES) or disable (NO) the todo +# list. This list is created by putting \todo commands in the documentation. # The default value is: YES. GENERATE_TODOLIST = YES -# The GENERATE_TESTLIST tag can be used to enable ( YES) or disable ( NO) the -# test list. This list is created by putting \test commands in the -# documentation. +# The GENERATE_TESTLIST tag can be used to enable (YES) or disable (NO) the test +# list. This list is created by putting \test commands in the documentation. # The default value is: YES. GENERATE_TESTLIST = YES -# The GENERATE_BUGLIST tag can be used to enable ( YES) or disable ( NO) the bug +# The GENERATE_BUGLIST tag can be used to enable (YES) or disable (NO) the bug # list. This list is created by putting \bug commands in the documentation. # The default value is: YES. GENERATE_BUGLIST = YES -# The GENERATE_DEPRECATEDLIST tag can be used to enable ( YES) or disable ( NO) +# The GENERATE_DEPRECATEDLIST tag can be used to enable (YES) or disable (NO) # the deprecated list. This list is created by putting \deprecated commands in # the documentation. # The default value is: YES. @@ -626,8 +652,8 @@ ENABLED_SECTIONS = MAX_INITIALIZER_LINES = 30 # Set the SHOW_USED_FILES tag to NO to disable the list of files generated at -# the bottom of the documentation of classes and structs. If set to YES the list -# will mention the files that were used to generate the documentation. +# the bottom of the documentation of classes and structs. If set to YES, the +# list will mention the files that were used to generate the documentation. # The default value is: YES. SHOW_USED_FILES = YES @@ -675,8 +701,7 @@ LAYOUT_FILE = # to be installed. See also http://en.wikipedia.org/wiki/BibTeX for more info. # For LaTeX the style of the bibliography can be controlled using # LATEX_BIB_STYLE. To use this feature you need bibtex and perl available in the -# search path. Do not use file names with spaces, bibtex cannot handle them. See -# also \cite for info how to create references. +# search path. See also \cite for info how to create references. CITE_BIB_FILES = @@ -692,7 +717,7 @@ CITE_BIB_FILES = QUIET = NO # The WARNINGS tag can be used to turn on/off the warning messages that are -# generated to standard error ( stderr) by doxygen. If WARNINGS is set to YES +# generated to standard error (stderr) by doxygen. If WARNINGS is set to YES # this implies that the warnings are on. # # Tip: Turn warnings on while writing the documentation. @@ -700,7 +725,7 @@ QUIET = NO WARNINGS = YES -# If the WARN_IF_UNDOCUMENTED tag is set to YES, then doxygen will generate +# If the WARN_IF_UNDOCUMENTED tag is set to YES then doxygen will generate # warnings for undocumented members. If EXTRACT_ALL is set to YES then this flag # will automatically be disabled. # The default value is: YES. @@ -717,12 +742,18 @@ WARN_IF_DOC_ERROR = YES # This WARN_NO_PARAMDOC option can be enabled to get warnings for functions that # are documented, but have no documentation for their parameters or return -# value. If set to NO doxygen will only warn about wrong or incomplete parameter -# documentation, but not about the absence of documentation. +# value. If set to NO, doxygen will only warn about wrong or incomplete +# parameter documentation, but not about the absence of documentation. # The default value is: NO. WARN_NO_PARAMDOC = NO +# If the WARN_AS_ERROR tag is set to YES then doxygen will immediately stop when +# a warning is encountered. +# The default value is: NO. + +WARN_AS_ERROR = NO + # The WARN_FORMAT tag determines the format of the warning messages that doxygen # can produce. The string should contain the $file, $line, and $text tags, which # will be replaced by the file and line number from which the warning originated @@ -746,7 +777,7 @@ WARN_LOGFILE = doxygen.errors # The INPUT tag is used to specify the files and/or directories that contain # documented source files. You may enter file names like myfile.cpp or # directories like /usr/src/myproject. Separate the files or directories with -# spaces. +# spaces. See also FILE_PATTERNS and EXTENSION_MAPPING # Note: If this tag is empty the current directory is searched. INPUT = @top_srcdir@/src @@ -762,12 +793,17 @@ INPUT_ENCODING = UTF-8 # If the value of the INPUT tag contains directories, you can use the # FILE_PATTERNS tag to specify one or more wildcard patterns (like *.cpp and -# *.h) to filter out the source-files in the directories. If left blank the -# following patterns are tested:*.c, *.cc, *.cxx, *.cpp, *.c++, *.java, *.ii, -# *.ixx, *.ipp, *.i++, *.inl, *.idl, *.ddl, *.odl, *.h, *.hh, *.hxx, *.hpp, -# *.h++, *.cs, *.d, *.php, *.php4, *.php5, *.phtml, *.inc, *.m, *.markdown, -# *.md, *.mm, *.dox, *.py, *.f90, *.f, *.for, *.tcl, *.vhd, *.vhdl, *.ucf, -# *.qsf, *.as and *.js. +# *.h) to filter out the source-files in the directories. +# +# Note that for custom extensions or not directly supported extensions you also +# need to set EXTENSION_MAPPING for the extension otherwise the files are not +# read by doxygen. +# +# If left blank the following patterns are tested:*.c, *.cc, *.cxx, *.cpp, +# *.c++, *.java, *.ii, *.ixx, *.ipp, *.i++, *.inl, *.idl, *.ddl, *.odl, *.h, +# *.hh, *.hxx, *.hpp, *.h++, *.cs, *.d, *.php, *.php4, *.php5, *.phtml, *.inc, +# *.m, *.markdown, *.md, *.mm, *.dox, *.py, *.pyw, *.f90, *.f, *.for, *.tcl, +# *.vhd, *.vhdl, *.ucf, *.qsf, *.as and *.js. FILE_PATTERNS = *.c *.cc *.cxx *.cpp *.c++ *.java *.ii *.ixx *.ipp *.i++ *.inl *.idl *.ddl *.odl *.h *.hh *.hxx *.hpp *.h++ *.cs *.d *.php *.php4 *.php5 *.phtml *.inc *.m *.markdown *.md *.mm *.dox *.py *.f90 *.f *.for *.tcl *.vhd *.vhdl *.ucf *.qsf *.as *.js *.wt *.sql @@ -800,7 +836,7 @@ EXCLUDE_SYMLINKS = NO # Note that the wildcards are matched against the file with absolute path, so to # exclude all test directories for example use the pattern */test/* -EXCLUDE_PATTERNS = moc_* uic_* qrc_* +EXCLUDE_PATTERNS = moc_* uic_* qrc_* version.[ch]xx # The EXCLUDE_SYMBOLS tag can be used to specify one or more symbol names # (namespaces, classes, functions, etc.) that should be excluded from the @@ -853,6 +889,10 @@ IMAGE_PATH = # Note that the filter must not add or remove lines; it is applied before the # code is scanned, but not when the output code is generated. If lines are added # or removed, the anchors will not be placed correctly. +# +# Note that for custom extensions or not directly supported extensions you also +# need to set EXTENSION_MAPPING for the extension otherwise the files are not +# properly processed by doxygen. INPUT_FILTER = @@ -862,11 +902,15 @@ INPUT_FILTER = # (like *.cpp=my_cpp_filter). See INPUT_FILTER for further information on how # filters are used. If the FILTER_PATTERNS tag is empty or if none of the # patterns match the file name, INPUT_FILTER is applied. +# +# Note that for custom extensions or not directly supported extensions you also +# need to set EXTENSION_MAPPING for the extension otherwise the files are not +# properly processed by doxygen. FILTER_PATTERNS = *.wt=doxygen-webtester.sed *.sql=@top_srcdir@/sql-to-dot.sed # If the FILTER_SOURCE_FILES tag is set to YES, the input filter (if set using -# INPUT_FILTER ) will also be used to filter the input files that are used for +# INPUT_FILTER) will also be used to filter the input files that are used for # producing the source files to browse (i.e. when SOURCE_BROWSER is set to YES). # The default value is: NO. @@ -926,7 +970,7 @@ REFERENCED_BY_RELATION = NO REFERENCES_RELATION = NO # If the REFERENCES_LINK_SOURCE tag is set to YES and SOURCE_BROWSER tag is set -# to YES, then the hyperlinks from functions in REFERENCES_RELATION and +# to YES then the hyperlinks from functions in REFERENCES_RELATION and # REFERENCED_BY_RELATION lists will link to the source code. Otherwise they will # link to the documentation. # The default value is: YES. @@ -973,6 +1017,25 @@ USE_HTAGS = NO VERBATIM_HEADERS = YES +# If the CLANG_ASSISTED_PARSING tag is set to YES then doxygen will use the +# clang parser (see: http://clang.llvm.org/) for more accurate parsing at the +# cost of reduced performance. This can be particularly helpful with template +# rich C++ code for which doxygen's built-in parser lacks the necessary type +# information. +# Note: The availability of this option depends on whether or not doxygen was +# generated with the -Duse-libclang=ON option for CMake. +# The default value is: NO. + +CLANG_ASSISTED_PARSING = NO + +# If clang assisted parsing is enabled you can provide the compiler with command +# line options that you would normally use when invoking the compiler. Note that +# the include paths will already be set by doxygen for the files and directories +# specified with INPUT and INCLUDE_PATH. +# This tag requires that the tag CLANG_ASSISTED_PARSING is set to YES. + +CLANG_OPTIONS = + #--------------------------------------------------------------------------- # Configuration options related to the alphabetical class index #--------------------------------------------------------------------------- @@ -1003,7 +1066,7 @@ IGNORE_PREFIX = # Configuration options related to the HTML output #--------------------------------------------------------------------------- -# If the GENERATE_HTML tag is set to YES doxygen will generate HTML output +# If the GENERATE_HTML tag is set to YES, doxygen will generate HTML output # The default value is: YES. GENERATE_HTML = YES @@ -1041,7 +1104,7 @@ HTML_FILE_EXTENSION = .html # of the possible markers and block names see the documentation. # This tag requires that the tag GENERATE_HTML is set to YES. -HTML_HEADER = +HTML_HEADER = header.html # The HTML_FOOTER tag can be used to specify a user-defined HTML footer for each # generated HTML page. If the tag is left blank doxygen will generate a standard @@ -1051,7 +1114,7 @@ HTML_HEADER = # that doxygen normally uses. # This tag requires that the tag GENERATE_HTML is set to YES. -HTML_FOOTER = +HTML_FOOTER = footer.html # The HTML_STYLESHEET tag can be used to specify a user-defined cascading style # sheet that is used by each HTML page. It can be used to fine-tune the look of @@ -1065,16 +1128,18 @@ HTML_FOOTER = HTML_STYLESHEET = -# The HTML_EXTRA_STYLESHEET tag can be used to specify an additional user- -# defined cascading style sheet that is included after the standard style sheets +# The HTML_EXTRA_STYLESHEET tag can be used to specify additional user-defined +# cascading style sheets that are included after the standard style sheets # created by doxygen. Using this option one can overrule certain style aspects. # This is preferred over using HTML_STYLESHEET since it does not replace the -# standard style sheet and is therefor more robust against future updates. -# Doxygen will copy the style sheet file to the output directory. For an example -# see the documentation. +# standard style sheet and is therefore more robust against future updates. +# Doxygen will copy the style sheet files to the output directory. +# Note: The order of the extra style sheet files is of importance (e.g. the last +# style sheet in the list overrules the setting of the previous ones in the +# list). For an example see the documentation. # This tag requires that the tag GENERATE_HTML is set to YES. -HTML_EXTRA_STYLESHEET = +HTML_EXTRA_STYLESHEET = style.css # The HTML_EXTRA_FILES tag can be used to specify one or more extra images or # other source files which should be copied to the HTML output directory. Note @@ -1087,7 +1152,7 @@ HTML_EXTRA_STYLESHEET = HTML_EXTRA_FILES = # The HTML_COLORSTYLE_HUE tag controls the color of the HTML output. Doxygen -# will adjust the colors in the stylesheet and background images according to +# will adjust the colors in the style sheet and background images according to # this color. Hue is specified as an angle on a colorwheel, see # http://en.wikipedia.org/wiki/Hue for more information. For instance the value # 0 represents red, 60 is yellow, 120 is green, 180 is cyan, 240 is blue, 300 @@ -1118,11 +1183,12 @@ HTML_COLORSTYLE_GAMMA = 80 # If the HTML_TIMESTAMP tag is set to YES then the footer of each generated HTML # page will contain the date and time when the page was generated. Setting this -# to NO can help when comparing the output of multiple runs. -# The default value is: YES. +# to YES can help to show when doxygen was last run and thus if the +# documentation is up to date. +# The default value is: NO. # This tag requires that the tag GENERATE_HTML is set to YES. -HTML_TIMESTAMP = YES +HTML_TIMESTAMP = NO # If the HTML_DYNAMIC_SECTIONS tag is set to YES then the generated HTML # documentation will contain sections that can be hidden and shown after the @@ -1130,7 +1196,7 @@ HTML_TIMESTAMP = YES # The default value is: NO. # This tag requires that the tag GENERATE_HTML is set to YES. -HTML_DYNAMIC_SECTIONS = NO +HTML_DYNAMIC_SECTIONS = YES # With HTML_INDEX_NUM_ENTRIES one can control the preferred number of entries # shown in the various tree structured indices initially; the user can expand @@ -1215,28 +1281,29 @@ GENERATE_HTMLHELP = NO CHM_FILE = # The HHC_LOCATION tag can be used to specify the location (absolute path -# including file name) of the HTML help compiler ( hhc.exe). If non-empty +# including file name) of the HTML help compiler (hhc.exe). If non-empty, # doxygen will try to run the HTML help compiler on the generated index.hhp. # The file has to be specified with full path. # This tag requires that the tag GENERATE_HTMLHELP is set to YES. HHC_LOCATION = -# The GENERATE_CHI flag controls if a separate .chi index file is generated ( -# YES) or that it should be included in the master .chm file ( NO). +# The GENERATE_CHI flag controls if a separate .chi index file is generated +# (YES) or that it should be included in the master .chm file (NO). # The default value is: NO. # This tag requires that the tag GENERATE_HTMLHELP is set to YES. GENERATE_CHI = NO -# The CHM_INDEX_ENCODING is used to encode HtmlHelp index ( hhk), content ( hhc) +# The CHM_INDEX_ENCODING is used to encode HtmlHelp index (hhk), content (hhc) # and project file content. # This tag requires that the tag GENERATE_HTMLHELP is set to YES. CHM_INDEX_ENCODING = -# The BINARY_TOC flag controls whether a binary table of contents is generated ( -# YES) or a normal table of contents ( NO) in the .chm file. +# The BINARY_TOC flag controls whether a binary table of contents is generated +# (YES) or a normal table of contents (NO) in the .chm file. Furthermore it +# enables the Previous and Next buttons. # The default value is: NO. # This tag requires that the tag GENERATE_HTMLHELP is set to YES. @@ -1349,7 +1416,7 @@ DISABLE_INDEX = NO # index structure (just like the one that is generated for HTML Help). For this # to work a browser that supports JavaScript, DHTML, CSS and frames is required # (i.e. any modern browser). Windows users are probably better off using the -# HTML help feature. Via custom stylesheets (see HTML_EXTRA_STYLESHEET) one can +# HTML help feature. Via custom style sheets (see HTML_EXTRA_STYLESHEET) one can # further fine-tune the look of the index. As an example, the default style # sheet generated by doxygen has an example that shows how to put an image at # the root of the tree instead of the PROJECT_NAME. Since the tree basically has @@ -1358,7 +1425,7 @@ DISABLE_INDEX = NO # The default value is: NO. # This tag requires that the tag GENERATE_HTML is set to YES. -GENERATE_TREEVIEW = NO +GENERATE_TREEVIEW = YES # The ENUM_VALUES_PER_LINE tag can be used to set the number of enum values that # doxygen will group on one line in the generated HTML documentation. @@ -1377,7 +1444,7 @@ ENUM_VALUES_PER_LINE = 4 TREEVIEW_WIDTH = 250 -# When the EXT_LINKS_IN_WINDOW option is set to YES doxygen will open links to +# If the EXT_LINKS_IN_WINDOW option is set to YES, doxygen will open links to # external symbols imported via tag files in a separate window. # The default value is: NO. # This tag requires that the tag GENERATE_HTML is set to YES. @@ -1406,7 +1473,7 @@ FORMULA_TRANSPARENT = YES # Enable the USE_MATHJAX option to render LaTeX formulas using MathJax (see # http://www.mathjax.org) which uses client side Javascript for the rendering -# instead of using prerendered bitmaps. Use this if you do not have LaTeX +# instead of using pre-rendered bitmaps. Use this if you do not have LaTeX # installed or if you want to formulas look prettier in the HTML output. When # enabled you may also need to install MathJax separately and configure the path # to it using the MATHJAX_RELPATH option. @@ -1476,11 +1543,11 @@ SEARCHENGINE = NO # When the SERVER_BASED_SEARCH tag is enabled the search engine will be # implemented using a web server instead of a web client using Javascript. There -# are two flavours of web server based searching depending on the -# EXTERNAL_SEARCH setting. When disabled, doxygen will generate a PHP script for -# searching and an index file used by the script. When EXTERNAL_SEARCH is -# enabled the indexing and searching needs to be provided by external tools. See -# the section "External Indexing and Searching" for details. +# are two flavors of web server based searching depending on the EXTERNAL_SEARCH +# setting. When disabled, doxygen will generate a PHP script for searching and +# an index file used by the script. When EXTERNAL_SEARCH is enabled the indexing +# and searching needs to be provided by external tools. See the section +# "External Indexing and Searching" for details. # The default value is: NO. # This tag requires that the tag SEARCHENGINE is set to YES. @@ -1492,7 +1559,7 @@ SERVER_BASED_SEARCH = NO # external search engine pointed to by the SEARCHENGINE_URL option to obtain the # search results. # -# Doxygen ships with an example indexer ( doxyindexer) and search engine +# Doxygen ships with an example indexer (doxyindexer) and search engine # (doxysearch.cgi) which are based on the open source search engine library # Xapian (see: http://xapian.org/). # @@ -1505,7 +1572,7 @@ EXTERNAL_SEARCH = NO # The SEARCHENGINE_URL should point to a search engine hosted by a web server # which will return the search results when EXTERNAL_SEARCH is enabled. # -# Doxygen ships with an example indexer ( doxyindexer) and search engine +# Doxygen ships with an example indexer (doxyindexer) and search engine # (doxysearch.cgi) which are based on the open source search engine library # Xapian (see: http://xapian.org/). See the section "External Indexing and # Searching" for details. @@ -1543,7 +1610,7 @@ EXTRA_SEARCH_MAPPINGS = # Configuration options related to the LaTeX output #--------------------------------------------------------------------------- -# If the GENERATE_LATEX tag is set to YES doxygen will generate LaTeX output. +# If the GENERATE_LATEX tag is set to YES, doxygen will generate LaTeX output. # The default value is: YES. GENERATE_LATEX = NO @@ -1574,7 +1641,7 @@ LATEX_CMD_NAME = latex MAKEINDEX_CMD_NAME = makeindex -# If the COMPACT_LATEX tag is set to YES doxygen generates more compact LaTeX +# If the COMPACT_LATEX tag is set to YES, doxygen generates more compact LaTeX # documents. This may be useful for small projects and may help to save some # trees in general. # The default value is: NO. @@ -1592,9 +1659,12 @@ COMPACT_LATEX = NO PAPER_TYPE = a4 # The EXTRA_PACKAGES tag can be used to specify one or more LaTeX package names -# that should be included in the LaTeX output. To get the times font for -# instance you can specify -# EXTRA_PACKAGES=times +# that should be included in the LaTeX output. The package can be specified just +# by its name or with the correct syntax as to be used with the LaTeX +# \usepackage command. To get the times font for instance you can specify : +# EXTRA_PACKAGES=times or EXTRA_PACKAGES={times} +# To use the option intlimits with the amsmath package you can specify: +# EXTRA_PACKAGES=[intlimits]{amsmath} # If left blank no extra packages will be included. # This tag requires that the tag GENERATE_LATEX is set to YES. @@ -1608,23 +1678,36 @@ EXTRA_PACKAGES = # # Note: Only use a user-defined header if you know what you are doing! The # following commands have a special meaning inside the header: $title, -# $datetime, $date, $doxygenversion, $projectname, $projectnumber. Doxygen will -# replace them by respectively the title of the page, the current date and time, -# only the current date, the version number of doxygen, the project name (see -# PROJECT_NAME), or the project number (see PROJECT_NUMBER). +# $datetime, $date, $doxygenversion, $projectname, $projectnumber, +# $projectbrief, $projectlogo. Doxygen will replace $title with the empty +# string, for the replacement values of the other commands the user is referred +# to HTML_HEADER. # This tag requires that the tag GENERATE_LATEX is set to YES. LATEX_HEADER = # The LATEX_FOOTER tag can be used to specify a personal LaTeX footer for the # generated LaTeX document. The footer should contain everything after the last -# chapter. If it is left blank doxygen will generate a standard footer. +# chapter. If it is left blank doxygen will generate a standard footer. See +# LATEX_HEADER for more information on how to generate a default footer and what +# special commands can be used inside the footer. # # Note: Only use a user-defined footer if you know what you are doing! # This tag requires that the tag GENERATE_LATEX is set to YES. LATEX_FOOTER = +# The LATEX_EXTRA_STYLESHEET tag can be used to specify additional user-defined +# LaTeX style sheets that are included after the standard style sheets created +# by doxygen. Using this option one can overrule certain style aspects. Doxygen +# will copy the style sheet files to the output directory. +# Note: The order of the extra style sheet files is of importance (e.g. the last +# style sheet in the list overrules the setting of the previous ones in the +# list). +# This tag requires that the tag GENERATE_LATEX is set to YES. + +LATEX_EXTRA_STYLESHEET = + # The LATEX_EXTRA_FILES tag can be used to specify one or more extra images or # other source files which should be copied to the LATEX_OUTPUT output # directory. Note that the files will be copied as-is; there are no commands or @@ -1642,8 +1725,8 @@ LATEX_EXTRA_FILES = PDF_HYPERLINKS = YES -# If the LATEX_PDFLATEX tag is set to YES, doxygen will use pdflatex to generate -# the PDF file directly from the LaTeX files. Set this option to YES to get a +# If the USE_PDFLATEX tag is set to YES, doxygen will use pdflatex to generate +# the PDF file directly from the LaTeX files. Set this option to YES, to get a # higher quality PDF documentation. # The default value is: YES. # This tag requires that the tag GENERATE_LATEX is set to YES. @@ -1684,11 +1767,19 @@ LATEX_SOURCE_CODE = NO LATEX_BIB_STYLE = plain +# If the LATEX_TIMESTAMP tag is set to YES then the footer of each generated +# page will contain the date and time when the page was generated. Setting this +# to NO can help when comparing the output of multiple runs. +# The default value is: NO. +# This tag requires that the tag GENERATE_LATEX is set to YES. + +LATEX_TIMESTAMP = NO + #--------------------------------------------------------------------------- # Configuration options related to the RTF output #--------------------------------------------------------------------------- -# If the GENERATE_RTF tag is set to YES doxygen will generate RTF output. The +# If the GENERATE_RTF tag is set to YES, doxygen will generate RTF output. The # RTF output is optimized for Word 97 and may not look too pretty with other RTF # readers/editors. # The default value is: NO. @@ -1703,7 +1794,7 @@ GENERATE_RTF = NO RTF_OUTPUT = rtf -# If the COMPACT_RTF tag is set to YES doxygen generates more compact RTF +# If the COMPACT_RTF tag is set to YES, doxygen generates more compact RTF # documents. This may be useful for small projects and may help to save some # trees in general. # The default value is: NO. @@ -1740,11 +1831,21 @@ RTF_STYLESHEET_FILE = RTF_EXTENSIONS_FILE = +# If the RTF_SOURCE_CODE tag is set to YES then doxygen will include source code +# with syntax highlighting in the RTF output. +# +# Note that which sources are shown also depends on other settings such as +# SOURCE_BROWSER. +# The default value is: NO. +# This tag requires that the tag GENERATE_RTF is set to YES. + +RTF_SOURCE_CODE = NO + #--------------------------------------------------------------------------- # Configuration options related to the man page output #--------------------------------------------------------------------------- -# If the GENERATE_MAN tag is set to YES doxygen will generate man pages for +# If the GENERATE_MAN tag is set to YES, doxygen will generate man pages for # classes and files. # The default value is: NO. @@ -1768,6 +1869,13 @@ MAN_OUTPUT = man MAN_EXTENSION = .3 +# The MAN_SUBDIR tag determines the name of the directory created within +# MAN_OUTPUT in which the man pages are placed. If defaults to man followed by +# MAN_EXTENSION with the initial . removed. +# This tag requires that the tag GENERATE_MAN is set to YES. + +MAN_SUBDIR = + # If the MAN_LINKS tag is set to YES and doxygen generates man output, then it # will generate one additional man file for each entity documented in the real # man page(s). These additional files only source the real man page, but without @@ -1781,7 +1889,7 @@ MAN_LINKS = NO # Configuration options related to the XML output #--------------------------------------------------------------------------- -# If the GENERATE_XML tag is set to YES doxygen will generate an XML file that +# If the GENERATE_XML tag is set to YES, doxygen will generate an XML file that # captures the structure of the code including all documentation. # The default value is: NO. @@ -1795,19 +1903,7 @@ GENERATE_XML = NO XML_OUTPUT = xml -# The XML_SCHEMA tag can be used to specify a XML schema, which can be used by a -# validating XML parser to check the syntax of the XML files. -# This tag requires that the tag GENERATE_XML is set to YES. - -XML_SCHEMA = - -# The XML_DTD tag can be used to specify a XML DTD, which can be used by a -# validating XML parser to check the syntax of the XML files. -# This tag requires that the tag GENERATE_XML is set to YES. - -XML_DTD = - -# If the XML_PROGRAMLISTING tag is set to YES doxygen will dump the program +# If the XML_PROGRAMLISTING tag is set to YES, doxygen will dump the program # listings (including syntax highlighting and cross-referencing information) to # the XML output. Note that enabling this will significantly increase the size # of the XML output. @@ -1820,7 +1916,7 @@ XML_PROGRAMLISTING = YES # Configuration options related to the DOCBOOK output #--------------------------------------------------------------------------- -# If the GENERATE_DOCBOOK tag is set to YES doxygen will generate Docbook files +# If the GENERATE_DOCBOOK tag is set to YES, doxygen will generate Docbook files # that can be used to generate PDF. # The default value is: NO. @@ -1834,14 +1930,23 @@ GENERATE_DOCBOOK = NO DOCBOOK_OUTPUT = docbook +# If the DOCBOOK_PROGRAMLISTING tag is set to YES, doxygen will include the +# program listings (including syntax highlighting and cross-referencing +# information) to the DOCBOOK output. Note that enabling this will significantly +# increase the size of the DOCBOOK output. +# The default value is: NO. +# This tag requires that the tag GENERATE_DOCBOOK is set to YES. + +DOCBOOK_PROGRAMLISTING = NO + #--------------------------------------------------------------------------- # Configuration options for the AutoGen Definitions output #--------------------------------------------------------------------------- -# If the GENERATE_AUTOGEN_DEF tag is set to YES doxygen will generate an AutoGen -# Definitions (see http://autogen.sf.net) file that captures the structure of -# the code including all documentation. Note that this feature is still -# experimental and incomplete at the moment. +# If the GENERATE_AUTOGEN_DEF tag is set to YES, doxygen will generate an +# AutoGen Definitions (see http://autogen.sf.net) file that captures the +# structure of the code including all documentation. Note that this feature is +# still experimental and incomplete at the moment. # The default value is: NO. GENERATE_AUTOGEN_DEF = NO @@ -1850,7 +1955,7 @@ GENERATE_AUTOGEN_DEF = NO # Configuration options related to the Perl module output #--------------------------------------------------------------------------- -# If the GENERATE_PERLMOD tag is set to YES doxygen will generate a Perl module +# If the GENERATE_PERLMOD tag is set to YES, doxygen will generate a Perl module # file that captures the structure of the code including all documentation. # # Note that this feature is still experimental and incomplete at the moment. @@ -1858,7 +1963,7 @@ GENERATE_AUTOGEN_DEF = NO GENERATE_PERLMOD = NO -# If the PERLMOD_LATEX tag is set to YES doxygen will generate the necessary +# If the PERLMOD_LATEX tag is set to YES, doxygen will generate the necessary # Makefile rules, Perl scripts and LaTeX code to be able to generate PDF and DVI # output from the Perl module output. # The default value is: NO. @@ -1866,9 +1971,9 @@ GENERATE_PERLMOD = NO PERLMOD_LATEX = NO -# If the PERLMOD_PRETTY tag is set to YES the Perl module output will be nicely +# If the PERLMOD_PRETTY tag is set to YES, the Perl module output will be nicely # formatted so it can be parsed by a human reader. This is useful if you want to -# understand what is going on. On the other hand, if this tag is set to NO the +# understand what is going on. On the other hand, if this tag is set to NO, the # size of the Perl module output will be much smaller and Perl will parse it # just the same. # The default value is: YES. @@ -1888,14 +1993,14 @@ PERLMOD_MAKEVAR_PREFIX = # Configuration options related to the preprocessor #--------------------------------------------------------------------------- -# If the ENABLE_PREPROCESSING tag is set to YES doxygen will evaluate all +# If the ENABLE_PREPROCESSING tag is set to YES, doxygen will evaluate all # C-preprocessor directives found in the sources and include files. # The default value is: YES. ENABLE_PREPROCESSING = YES -# If the MACRO_EXPANSION tag is set to YES doxygen will expand all macro names -# in the source code. If set to NO only conditional compilation will be +# If the MACRO_EXPANSION tag is set to YES, doxygen will expand all macro names +# in the source code. If set to NO, only conditional compilation will be # performed. Macro expansion can be done in a controlled way by setting # EXPAND_ONLY_PREDEF to YES. # The default value is: NO. @@ -1911,7 +2016,7 @@ MACRO_EXPANSION = YES EXPAND_ONLY_PREDEF = NO -# If the SEARCH_INCLUDES tag is set to YES the includes files in the +# If the SEARCH_INCLUDES tag is set to YES, the include files in the # INCLUDE_PATH will be searched if a #include is found. # The default value is: YES. # This tag requires that the tag ENABLE_PREPROCESSING is set to YES. @@ -1954,9 +2059,9 @@ PREDEFINED += "NAMESPACE=@PACKAGE_NAME@" EXPAND_AS_DEFINED = # If the SKIP_FUNCTION_MACROS tag is set to YES then doxygen's preprocessor will -# remove all refrences to function-like macros that are alone on a line, have an -# all uppercase name, and do not end with a semicolon. Such function macros are -# typically used for boiler-plate code, and will confuse the parser if not +# remove all references to function-like macros that are alone on a line, have +# an all uppercase name, and do not end with a semicolon. Such function macros +# are typically used for boiler-plate code, and will confuse the parser if not # removed. # The default value is: YES. # This tag requires that the tag ENABLE_PREPROCESSING is set to YES. @@ -1976,7 +2081,7 @@ SKIP_FUNCTION_MACROS = YES # where loc1 and loc2 can be relative or absolute paths or URLs. See the # section "Linking to external documentation" for more information about the use # of tag files. -# Note: Each tag file must have an unique name (where the name does NOT include +# Note: Each tag file must have a unique name (where the name does NOT include # the path). If a tag file is not located in the directory in which doxygen is # run, you must also specify the path to the tagfile here. @@ -1988,20 +2093,21 @@ TAGFILES = GENERATE_TAGFILE = @PACKAGE_NAME@.doxytag -# If the ALLEXTERNALS tag is set to YES all external class will be listed in the -# class index. If set to NO only the inherited external classes will be listed. +# If the ALLEXTERNALS tag is set to YES, all external class will be listed in +# the class index. If set to NO, only the inherited external classes will be +# listed. # The default value is: NO. ALLEXTERNALS = NO -# If the EXTERNAL_GROUPS tag is set to YES all external groups will be listed in -# the modules index. If set to NO, only the current project's groups will be +# If the EXTERNAL_GROUPS tag is set to YES, all external groups will be listed +# in the modules index. If set to NO, only the current project's groups will be # listed. # The default value is: YES. EXTERNAL_GROUPS = YES -# If the EXTERNAL_PAGES tag is set to YES all external pages will be listed in +# If the EXTERNAL_PAGES tag is set to YES, all external pages will be listed in # the related pages index. If set to NO, only the current project's pages will # be listed. # The default value is: YES. @@ -2018,7 +2124,7 @@ PERL_PATH = /usr/bin/perl # Configuration options related to the dot tool #--------------------------------------------------------------------------- -# If the CLASS_DIAGRAMS tag is set to YES doxygen will generate a class diagram +# If the CLASS_DIAGRAMS tag is set to YES, doxygen will generate a class diagram # (in HTML and LaTeX) for classes with base or super classes. Setting the tag to # NO turns the diagrams off. Note that this option also works with HAVE_DOT # disabled, but it is recommended to install and use dot, since it yields more @@ -2043,7 +2149,7 @@ MSCGEN_PATH = DIA_PATH = -# If set to YES, the inheritance and collaboration graphs will hide inheritance +# If set to YES the inheritance and collaboration graphs will hide inheritance # and usage relations if the target is undocumented or is not a class. # The default value is: YES. @@ -2054,7 +2160,7 @@ HIDE_UNDOC_RELATIONS = NO # http://www.graphviz.org/), a graph visualization toolkit from AT&T and Lucent # Bell Labs. The other options in this section have no effect if this option is # set to NO -# The default value is: NO. +# The default value is: YES. HAVE_DOT = YES @@ -2068,7 +2174,7 @@ HAVE_DOT = YES DOT_NUM_THREADS = 0 -# When you want a differently looking font n the dot files that doxygen +# When you want a differently looking font in the dot files that doxygen # generates you can specify the font name using DOT_FONTNAME. You need to make # sure dot is able to find the font, which can be done by putting it in a # standard location or by setting the DOTFONTPATH environment variable or by @@ -2116,7 +2222,7 @@ COLLABORATION_GRAPH = YES GROUP_GRAPHS = YES -# If the UML_LOOK tag is set to YES doxygen will generate inheritance and +# If the UML_LOOK tag is set to YES, doxygen will generate inheritance and # collaboration diagrams in a style similar to the OMG's Unified Modeling # Language. # The default value is: NO. @@ -2168,7 +2274,8 @@ INCLUDED_BY_GRAPH = YES # # Note that enabling this option will significantly increase the time of a run. # So in most cases it will be better to enable call graphs for selected -# functions only using the \callgraph command. +# functions only using the \callgraph command. Disabling a call graph can be +# accomplished by means of the command \hidecallgraph. # The default value is: NO. # This tag requires that the tag HAVE_DOT is set to YES. @@ -2179,7 +2286,8 @@ CALL_GRAPH = NO # # Note that enabling this option will significantly increase the time of a run. # So in most cases it will be better to enable caller graphs for selected -# functions only using the \callergraph command. +# functions only using the \callergraph command. Disabling a caller graph can be +# accomplished by means of the command \hidecallergraph. # The default value is: NO. # This tag requires that the tag HAVE_DOT is set to YES. @@ -2202,11 +2310,17 @@ GRAPHICAL_HIERARCHY = YES DIRECTORY_GRAPH = YES # The DOT_IMAGE_FORMAT tag can be used to set the image format of the images -# generated by dot. +# generated by dot. For an explanation of the image formats see the section +# output formats in the documentation of the dot tool (Graphviz (see: +# http://www.graphviz.org/)). # Note: If you choose svg you need to set HTML_FILE_EXTENSION to xhtml in order # to make the SVG files visible in IE 9+ (other browsers do not have this # requirement). -# Possible values are: png, jpg, gif and svg. +# Possible values are: png, png:cairo, png:cairo:cairo, png:cairo:gd, png:gd, +# png:gd:gd, jpg, jpg:cairo, jpg:cairo:gd, jpg:gd, jpg:gd:gd, gif, gif:cairo, +# gif:cairo:gd, gif:gd, gif:gd:gd, svg, png:gd, png:gd:gd, png:cairo, +# png:cairo:gd, png:cairo:cairo, png:cairo:gdiplus, png:gdiplus and +# png:gdiplus:gdiplus. # The default value is: png. # This tag requires that the tag HAVE_DOT is set to YES. @@ -2249,6 +2363,19 @@ MSCFILE_DIRS = DIAFILE_DIRS = +# When using plantuml, the PLANTUML_JAR_PATH tag should be used to specify the +# path where java can find the plantuml.jar file. If left blank, it is assumed +# PlantUML is not used or called during a preprocessing step. Doxygen will +# generate a warning when it encounters a \startuml command in this case and +# will not generate output for the diagram. + +PLANTUML_JAR_PATH = "@top_srcdir@/doc/plantuml.jar" + +# When using plantuml, the specified paths are searched for files specified by +# the !include statement in a plantuml block. + +PLANTUML_INCLUDE_PATH = + # The DOT_GRAPH_MAX_NODES tag can be used to set the maximum number of nodes # that will be shown in the graph. If the number of nodes in a graph becomes # larger than this value, doxygen will truncate the graph, which is visualized @@ -2285,14 +2412,14 @@ MAX_DOT_GRAPH_DEPTH = 0 DOT_TRANSPARENT = YES -# Set the DOT_MULTI_TARGETS tag to YES allow dot to generate multiple output +# Set the DOT_MULTI_TARGETS tag to YES to allow dot to generate multiple output # files in one run (i.e. multiple -o and -T options on the command line). This # makes dot run faster, but since only newer versions of dot (>1.8.10) support # this, this feature is disabled by default. # The default value is: NO. # This tag requires that the tag HAVE_DOT is set to YES. -DOT_MULTI_TARGETS = YES +DOT_MULTI_TARGETS = NO # If the GENERATE_LEGEND tag is set to YES doxygen will generate a legend page # explaining the meaning of the various boxes and arrows in the dot generated @@ -2302,7 +2429,7 @@ DOT_MULTI_TARGETS = YES GENERATE_LEGEND = YES -# If the DOT_CLEANUP tag is set to YES doxygen will remove the intermediate dot +# If the DOT_CLEANUP tag is set to YES, doxygen will remove the intermediate dot # files that are used to generate the various graphs. # The default value is: YES. # This tag requires that the tag HAVE_DOT is set to YES. diff --git a/doc/makefile.am b/doc/makefile.am index 3bf534a..6321176 100644 --- a/doc/makefile.am +++ b/doc/makefile.am @@ -2,7 +2,7 @@ ## ## This file has been added: ## - by bootstrap.sh -## - on Wed, 11 November 2015 12:59:08 +0100 +## - on Wed, 18 July 2018 15:24:44 +0200 ## Feel free to change it or even remove and rebuild it, up to your needs ## ## 1 2 3 4 5 6 7 8 diff --git a/doc/screenshots/screenshot-certificates.png b/doc/screenshots/screenshot-certificates.png deleted file mode 100644 index 5efc14dc3710c884d2f28fbec28be630da5f35a5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 96564 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

VXcZ}Wc+UPoa~@1(f}BceCuRE8 z@rB78Z-C~%_|ccLJqE&?jW7RsV}PGPdG+)kAnJd&y4LA;l;er2qL5R&1Oxt53T^nQ+(d+eA_TMW3M~MUnmtpwxF!&#j{alC`m{e69S2aP&J?c55TMLg}_8I|+e1r}sd+rGjJ&6Q!g`z zA&_aWoe@+TRLtaOLsH)vFTJQ0(s$3dQEbtx;3Sq9HCpC7l^)qomB&xW$dEsP ztdiMvOJnJJhu@mHmx$l(hbhUR@$$CJ_KX(P2cJNJVRN;i3M;s{OVk?V#G$$m^gecK`b?#p^%QT$!oU&)&Hw3 z(tq(xDm3WMkg)OZf4@F6ODY>L(L?bFBq(s&4IbFddGq|3h7O8$;l|n3S)mtY7I5m& zXaM`D152~Q`w~bo(V)9Y5|16B%!DA>I9!Io>$rJiCQ|!5%hPAKEG;eJ2aqilj}PeV zDyBf!_V+i88SWV#PM2%&jurG2=-yc$vYc7ZtF0d#d|aUs97-rJY5(vu(%zqAY zR&Qsw?(15zXTkQh7*8e7!Afs(&v*obW^|7n`8{IxZ^gxSrSB*IBkALy7OeVi&#S=7F9Fo0@1YlzWjNW3(W;! zjr(Yx+f)3ALVP+^o*EG3i5k~3m3_pvM|@QPSAYEaX=q}4dh?Ior1Gk&IwcL83X+e= z$Zpq{m>Sh~p-?`7+~ppOXJxDBcR!MxcXe|U4%+4z8mdUsH8N}e(VM*5ljI)1ZaE#4 zrZri~JtY2YJAJ=@Y%Ch^!kxq0FESM$k&*@n26noNYyT5UPAsuRuBON}`88`}m}_1K zW&+mAY`DSoH2J5~N|2rX@dsd(7Jhu=V`2FQnl0!9 zyW#}9y#opFtqjo*v!S4^bQiDo`v&+4XDWV+j&1|J&I2qg)ECnrzcAX;=!)m}m(K)r z>?M2-QhqTV#6&t!0(vo+>E60yr#Dr7IuR6vkb7|3E`JLRmEJcTI~=+9&y}hlf55M} z?HiYaetCA(I5kx}^Sc6W{QrMGD~{KGZXmP&WGF{$wJ+6VB%h3-D_Ud^=%U4z-sAu@ z^i=)UZvptk68&jXHc~~~%L(L>?f5Kqc%X(^XWBV* zKwlx^@~qzRJ+_Q1&kl)QFveQJ_Am2G26z_@pC#po&4I;Zjy!1VmY`|ob2<15rD=6T z?7ufR!A~aX`Obe{jVSj)qX*O_P&BD3ApXOB!w0~zVumbol;m5w-T$uY^Ctv~+j4+k zL9AGYw%d|e8FC5WD)oJR-vDfzUs-7Zorpq0b8~b5&sV5W)*|rd$;mjt(~%z#5lI>w zXNYP*1*rpvy0#4t1n9=zy?gh`-yaoVIK?~w$eVk6Lt!$<-0Uncw}+@5>tNmwef^A1 zqdWxg9R$L0ad82C2a--tq7a>WX#j`^X6NSWW4UdSMv6_a0BT4D_*gOfZ6MUs)tagQ zUCqqrGBPn&wV8@EFeUUJI=TVq1L3!FTC8(ai@brju-P1Ahr$OT1^|!|DS(g@0}553 z%!6}t89+VF2@sE3qw8wlbLi|^0ZraHK3?9gyG{c@2hbjH&Q~J+53rgg>nvbBcdI#= zR7_bp5(YItBp_(3v|k4iVnRs!VztL*G{CdSRu?DME(a@r0E05_OSyM`yqylc5D~Y{ z7lhoKM)TiX<)r))a}XsYH1tof;MK`nYrsShT(zPiHZ*OB&xWovb9l1GH4?7YP1#yE zXF7WN5z8L=SKiLA;zM_3wq`%Rl|ZnKm_+6(_{$xfsOB1S=!k6MM6RK@5htggeof-*hV-7$vB<}xDmBV8UX*nM0Ib# zo)B^YnEVb%@|{E=s37+R!{B9G5Jq+-2zCP+i%bP%4nT(l)|ae`4}JsC0m?#~%QO2! zN`TP-w=@l(*DNY3BIn?EtEUReL{QCc^O^s9D|)^g%hrg200@w#>zw$wGq8f*0vrT{ z9`ca-BqAAd;>j$5#sd}wS;y4W56~GG%|HTnE)eHaQ&S@$)-0t=e8xO6PFVlUT%B(t6h4mITA)>zNDy$JG86c>BEww4`oXEmmNA6| zxOs|NIv8*OoHw;4N_8IY9x%*492_MUSd~p)4jAl|(BdhN4vYQNjyZJ|c;Q zzm-oRiAljAWmJ>5*!^!Z%5iH)2OU##vrKG?LL>uK#BCq`d`rQP{4S<)ZvWn-2YW>x zou<(omTz^qG8LPa@|o5K=}#ysBqE%mQs<Hb*+#j_a{FD44<*xa3;`WXEZBI*8Am12G$;^3;P?ER@^212U6x7HX}?;Z#U zG}&&}aY|4hoh6D-MI& zMZB%@MVe%sXw4n;{QTmd_T#18Lza`3f&W@gd^1N~yQiV?VrFLVKe0o<>y&PyRqhl@ zAr%8^|3I-rf?ujt9Me0~*E=`aYs?T105D2ijF&7=obFpjpnz|IyDe_`Dg!-LzO{Ij z)hbU7ot9AD^mJghET8G{%#+}urN{e?jp-~jUELVt-Yj+u=|!sLIf>y9NLR3}%ls5T z;BT_0uhAaaJT?^cJ8?^m-R*6jstA1oPk2dT+B*YB57o-z7H7bIpO-t5f|EwBsUvpV zu&eDM1#n(7Q||c%Ma`pwfy{c%NwQRav4;QASl$7CXnW;LNe(fXdY;g|4-@@SzqMZT z$#r=|1}@=9zI8HB2k0brcXMLwo2{AnDGIzQgZ5;RlJ^Dr_2UgCfE z^6X8dL81oRLeRQ$o)swa0JH~2uf|@><7!nb(8d+Yg@tmsMeTXCZ}TlS3Fh?l5EAV_ zBHoYeXFrLS`^$x{9sIPMbjiMGZfx$|-tR`(jmUj4eliZHi==l!D97RM0(KnX0VuVc zY-`M*Qp{Kxtdgl6zc|?MhOxeJ)_ToWt8=#KtSs-K5u{lB!Zy&> zE!zK>~@3yiw8 z5X&2EZ=gO2B=gkv`I7I_saCo@l7s=yrRb&*!3YW9l4xPk`h!_)ODQ|kr!9`l`5SE4 zS(Pq)P|>;^Y&1e)iab)QCziWC?&AJ4{{1p zSdCCQNYqr?59$JKx!PNVYq3ZxnaF@+?F2 zF2TyOSWfEi?aK zyJ}|cZM?2FhH@S+2o4cv)%7RTkY4Q(&`=Mxk63Pk>gr(8=8*EdGrnYfXcmwth=wbi zI!I6v5v(icXf-T#s@n`GSS(LKIMSzy2q5N<2DHELm#PAkl$~u6*?R%q*`nwgni>ci z2&f@o>vc3hGIel&zX}P|fTrQ+o!%Zo*Lj7*^8nTDWNOBkDrEy5|AyDo6D$YiE{9p7 z(R-YIVeN-|InAGrn*VqARUGdclNZ0Chi1h$vd?viHj8aPqM}&r+pwkMcp3rOvdw7+ z%FNJ>GYr2!y&udU;2E*DxBk=K{)TuNs>i!`@7EW^vTCu{jC#&|5cMc*&SZ>aHJ*9l z=Dz-9I4lg|4)ehvHS8;!erI9m4SEw$vv##9(e7WkC(c}!CswwSq=QZp8X1u8VB4~? zYG@#o?@UZBJdTeIw1)==Cn$$=)n$B+HmQ}eutNruC-QY~LYno~$Q5hHp+^AFbyt;7 zySY%uWO(e1y8(Bi(yryhSz1Ei0pT1ROB)ro&P}JFvug?>lmWq_9y7LdD~Kj*du_$)E5u8ya}+kTy`9wx&CjM^@EVM`ui@e%r+?Q zw^Z&Yk%uwsow0$bK{AMW+qzjH!esT|p)k zVuqOTCie0#Gr}hciW9(vN}A3fl#G>{1!rf|;{JS!Fn+z$dxxK3elqDBMmbt%Ns9Zl zThH7)jy#Tl-PGz}M;D^`4|X#OGICKIm%Hs>tmj9H92o&@q91UuypK68l`M*0VZU!F z>J#*CB(foj$D9X9(fOv5YzXTtu17?H=FmL-0bJP^@Xcj+fppv9+%?fij>8(uYmc*A z$4kLj&HL3VxB_$#%X)OR5$--{k!{iU8>*cZbJQZv4%ZedJ>W4@+*{GP)A=8Fb~Go- z9Ui0F+PWOwf1Ae&DyN1s`)7X}3&B1LL|HfEo5;*zu~(Wpo0XoHd<%{OA3hy7iUpJI z?|*v^j@2xyh_K)dYe*NqU7D3W>5fcbFI(*Mq5{4b4IzbDnMkDtP=f+;FnC4Y!6y^! z8ZffHsE^}CSSuZK#@v{lzBUyc!lTSsXzbYhap;~c9f3gJOnQW(Q&-CMXsZ{mK6aY> z`2TQ@B?I6D?CB!k{LPUHvq+cMeSl7nmKqefXv%p;T2jiSeRF*rU1A(He@F2@yHyXG zr4#5<5CIWvgD~AN3?vK$9L9+cEddV7TvCne(yX!u&0?VaXuD?5)sM-{{&a-@kAs6_ z&A^M>5YY<@3x5*b{sy5K)R*7dBl8y2BH_U-2;c5VxynTL+lIy*zDd`Eff1jxqxImV zk7UY>+V7^PYTl0|avx;pH+L@5D);pEA`sm}7O+jk^NBA&%)f4rT-r|V^oZ4-T)?6H z4g49kcGAzH(@{mk1b1q1cCRMd4?c{7o zcR5$H!rO8(>oMU_-u&4i;lb*-48J!w2M5OgW+EFQ(krMV;$dqh?&LgN8@&nX6!7jq z0*(~%`KH_7pMwsB7e)d89@)jZUosi9c5>2FtH}#Fpc3VFXmqqh@Rm@xt<6t>HNnHi zEhfT9MfCu#ItWhw)VRzoEVOhH^CEAqjh9IiuMO-{+r)c0S}wLJt+XBv;9ievf*%CD z>&ymwDSY$gF%M*PN|#+l1MmK+pCAG~Nt#SdTgCqJ;C063cxh^E7}g`-TewC>@OUKr zXXNVt)dIZvTcEdQ?t_8f(U|f2@c2^~%I!`6coGu6bHSr6UV-#=>zR{f{L!zHqy9h0 z3dAxV$2@TefMP6Dvsl!OR>*8%c*?Yi?x|>?no<`1Bk{XW-#k5U4Vxy-RF_!_OFTKO z*3PTea^B)Tp0MpA?zTnz<%cm5(bUH1kKskheb4o4u_}knmEM{vJI?B)bV?+#AdbYKjRwJffFU3K8C}3=eNh%!I44V0`;#;vZ{id&SRx6m-k~S_W;UCH7QzB zQB!3-DAJ{i71XXgH2~RSv{Lp+sXZ!KJpSZJ81Oh8%?_(yUp(ki-TLV!IC*iXoYsBv zEp?iq_XJrx+;(YDfXeuK;a5BO?~$bA1Ug%>nok$^o-f#N*PI_cr=|6WN%IJ(K6bPS zVK$za2oMjWFip`O*hh3dP!pK4(FFv)5!VfIy*9Qb!d2vSPQ5qEY2FowzO>*wZ@0Uv zyAzW1lHZeIF_o+NjFynY;%8P2A-mZ?2)Kv)y%Q5zV|ncFLk#xC60}~D%pWpYa*VBh z1j?BNPtQA;1TRZWuh}xRWcES2Ky)8%Vf^_UD=RC6a&D;cwviEKP8(81aQmmOX65^p zckbRkm#G^$)_Z3dfBEDPP(&-cj`Iqi{QQk3k*<3f2X^+pE=S!r^DL{FZ;v`^w@1*% z7>(4N!xKx_Ez1wb=|L#(b0ak+1uWtDQlSRJR_08ONzcZ~{v8PVn(e0axr zs5tXrLfLplL^O!R3)Bv=_jsgKobb961c!h4zR7u;40R5Kz=QWHy7v2*SxOrd75>Y; zy&%?yHqHN#s0~IGj1)e1#WS#0foI@ew=dd&!8G5Qep}RAw8CYTh=^@}RcHJ6e4US) zvBLEBT=~PPc!VKUr}wFJJXgGt6X>fNL<4lDCM=maI2h!|F!D5Q0qv3kOv#A|U)<~d zV}y7Wxn23e*$!EVy9Mus`!N@zmnNp4?N*)n?CisV+_-a}ColB%pLH=X5VUK=#-U1f z1NEh>tW3St1P@@eahR?5N-!DBdJcFRTUT%U+}y@DW%+NPax1{W*fAJ$J=cf|et1=# z=rb3Wl}Kt4a7C&V@F4{guvfSqGeFhHFyyg1kr{U2Sy5=<8xWvBUb+eHc-i&s?BUM% zeRi>6;`zPC1Zx|cxwZ)HmHs@^JKlGSO(qFI_YdGKP2;sq6I!lTO;bF-t5x1x`fj$8 zOOHyM#rw7HXN69)!aT*636@dXt=qAgN<|bQlM08GpN?d}^MZtTeY)IN;(1ogn4yp- zFgrWT=YEC_fjZF4PPbWK7mhkAn{&O<{}weJ;}}WvZB3cIr~h&4f>q+17wVGj#ov2~ zls+T$+0XsgO`r?&4cc+iq~o#*z(u!2r&|4WRomkgTs&CFiDJiFeIXs6upMGS3_ROk zLKu%ufX!8)?BrBF@Rddye^0*W^h82v7>0GjT!>IA z(P`rR{&RVrf?Aj0dHrs(1|g?cppY_L`lVWIo_zYi1TNugsW)K)buJETQeI+Tmd`G- zkh7%RVRzS`J1({{0y?=P9=73rwpP9|FzO?86NSa8=Y_@OSzu_gDC@W07e|=E75hup zbARt)5O>sBlai1GnN`>zffy$YCb;ATq61rha6GT%Qpf(l9N>F)KT6*`9$c5cu)C4a z6_?VKnQnA*Z8*DGhEfL19%$4mNY@=oJeL1bP( zH5IRIIr*)&T||WR8<@Da7al0lD1*^p*%iGMjuiyXpeTRM`Nq#ha%tgh>V29Bgl}9n zRl=dxqvnuyX~~d)^T1|FBxatguCn*-QD@J_{GL?Mp~%ON@SNbj9J5FbU3Zt`G?{Hr z3jH0^-fyCTHVI~Vv>ROTXoo}vBT~>4H+KkAv{+kNJ%JD%(j(gz(Rtn^u4_QmvA(RQ zWutZT%P02}k*h)h@6qLJVu1Gb0aKK`d`Ex~?m(9}QRSJSTC|*RJIny+{L0E^Cor3- zC}g0Ff1pc{J3_VE;%IEB~V|1fogv_!L!if z(#3Q*HxPu!QZYmDj2_nIb<5Y1lF#6DfTgiL7-7z7$Gd(?0ybHVt6Dv~^CNTVS`O!z za?tbPYHIQans_4fO-yn-&{ajkBd_*zq|9o}*EtaPy+o}utuy8xy8COCZHyPa>*^;v zK&N=e4Ch%hoS-d#>V9zIcyrZ<-3*W2<`yVTCr&rNV|&1lU{j)zasOjFDSpYd1CBO}E+r5K{#9_1U zyzfE!0D8JYSDB+j)I!e(cW%e^zP4>2%GsDKlR4AqVJ{OoKWYgn(3yP-f*3Ah?7x3L z`v76q&RGK|xC?II(2$Vdo8x8ptPXS}TU+unVsgiCK>GzxPo5nuG6MF*dSOKl@$?^= z<&CO^F*ohSU(IVIgRoehBqd?WWe;l9xns<^r< z29y|?bg=IRirGxm>_C|s&1u#I9rZ&(!Z)vtsoKBao*CXw(4$(u>RsYu_+?>}R^f4Z zCs(TqFnB)57m`tDw-Mfk9a9YKZ57W&&-LN{9Cc+dez1K{Pfxc6a2C8BcR|Apl^KjW z+kq+Mi!p|}&8?TYZmPhpXxkdal? zhV9edG$x7kiVGe+Pn|LQAe)a_C-nSvG>1ujFS!`Jdonz1mn)L~&GwXgONZj@-~{T2 z2-@!oneSfl*lm18%xNOv1ijn*?IQ-e&A!|G{F-eMc^{IC{Mq(3<%D~BNh=4NcbAnLyMMqqN5qq#(9iJFHQp<+E`WuNYhxBev2o-!mLFg6C3Xk{dpQw)oV=-A| zJA1wP`}eX`5#SoRkGk(U)maP=B-@&*$qsc0-kLNS&gFkhqeKCElR&~D^03zYq9VPc zUr}~z8zR{p=J;$*uXFF+$ek|#;~jX-#&y4n1lxg5z~Ap(W7{^Hw`3p*D~=hVIxP6s zM*qnC(t=doWSNwmICzGPx!#++x@|7?@sW4tdbE>L-BD>iRlMV6=6dklgm7AI@}7MzXCX|z5Q<_(MXwc zbVNS%9q?4JWV2(EV&hRi_~eDk26uq`!YHpRJ}SUAh7N6GtRxJ4LbDpBbb3uedVemQ z3C<~uT*@pizw=wmc=;V1Yz8JLlfxwxVTi;vt4lG`&$nA;F&)kkGbqafd^!d|Z5A+4 zo5XmzBerqga!1nwDCO(xp~dY^r%&Upf-7TS&$@Y-WbeJ4aXd!LS{M zA&ydwDv!9vH{W&4_1gc6ho$TcX4f{i^n_$>kvNqYi$h-faWPh;%6%Nn(QK`2AI94G zV+8LGCcbcETZGBf&)b;7B>A4xS|)`)b42S%;60p&k`{kvJAu{{VzArcpd?L|QtB*a zASBiq@FMmd8)%u}IK(2HJ&=Zq>{LI9o|L_bT#8wO(klfPUa`eE2Fw(K(PM~K*^^Aht_aPQ zPwMIkC0to;89X~H>|n#Dxk;QVAD5K;BJ&yTFC= zU-G+tQuCh*vt4HFDRFfiSgW6p=W>WGRdbm9@3_5?I&vS({zCg~;rZ6Z`$rpNuadpv zy_%G$uvNkfeikY(d$ADL-1U;jrypi_2~zt`7Z&9ANBs$YXlCC# z|MLxLO0X`+ZJ;;qg7*Rd3D1k&X5PszfcRHNi!FNhgH!_Xj@fSdmq*kw>s*g*L+W#YkOxAGg*!c)eCmhGTM z2X|%Y&@T9hq(M(Z1+Xrn?gQnFrMBz1i(Eg#4vzRTzeuM{bs7dGj2Nh6AcOEgIq}8Y z+Xj?@Ptzgj;4#1Z%iApj_Pl8)LQDVP;NT%^5K`|P9U1=lbQ^>vx4eY^K-zWQnGq`J z`=7VOZ?M!N4890AW>x~QeX`ka>8UrtIAZc;ndoPk!={>s z#(y|~+S=NK?db$yTW(m*H=%>F4bXSQNF)RT2v`sJ1`^!*X@9-{S67vY-kaE_3+m^U z_4VYp*`Oi_zZx)Q2euIu@TL(#;1L7Ca{vi{G#D`vUdq57C@B;G_LYw3yZ0Lm8(*@s zvky+eIt-Bnpq4ONb3s8tSOua`Edkg_r;?8Zf+-!9|A)5s4(Iyc|HqZ&U6M*EyPbq& zZ zeZ;9O0eJ_^iM`pAdAe9L%f(bXci#D9`orW&BpjAC#c701K^b(|w;ayLUZ_FQX3oWV z$^Kb=J7J3u%*e`0hKm_`SstI!;o-e|_B{Rg@ne%A8SF(sf8e&2foC=e0++*w&+lBE znR!ol9kLTWtm*(UdpZ=e@b?n_o2&X03Vu+!VEr?r;`pr0Iz2b%MW;;WbigO5nNh@g z55g@7r~bv@Zt?*+u2yc`Vv_9eP$yI3mvjc)TLoRre zBOeQ%lox2Pz%0Wl2!_hZ(^JW#4oj{lCLs^){TZ}=AT$`@HY~v!c{;Yek?^8S|0V;y z6$YUYa1cy$c!V$awXd&g;4qY4LBO5}lRh{DsB-FAV-weMCeTBGWHw?eU#9&AmGR1^ z$}ygE=aRnJ5^wQ80wteW3x!!lNYnB*H=Ypga%i38kV}SLH-K8U=<2_x!`CBp%FB_8 zVLKs5`VOHRE%)7D6B8R!P;m_-V!$0bID9T7@Sb|YQ3t0Xkw6Be6=Cp&qxB*5Tz2%z zFq!MXG*6`2U^SgH?GkZg5LCQ}WoPpV4i4ys=*rCobvo#B6cG88bHslb|UvPpz z`nHTM+ASdZM=4Y4e((B$Z#ZZm+EPNtbTk2h3*|60WZKTNq8`n$o_-FO5p4e#aWFj{ zlahsmOzrDEj|S_RnVF-94};d{W>t+3ICBe#8o~y!f+YZzVHIFQ?sN+I#%VG$D+D<- ztcGf-Mh9?CbmZB8#M2$jWSaRsJ}!In<{`Wr&k-XC)0T@T+tbg&gWM1I4|dtYL?^(v z#QjY0bs~IW88iVQhd_-5)6?~6mMyg8j1m3SgEU}_s&PoZXM_4rQ@5Lef7hGuhR~(c#rI2B)fV-ZFswy z+M&bMT*?ur)byg22h?Z{7xIHT_>YXVDm6gAe0Q#6nZk0si!n88D&v$JV@bNHIQyHk zIb6m~Y(T!szoq(i$>LRZFEhT@q9Iw&&t<<})@eUnqnUEfTqh*LYK|!d`ulso z_X+kH)r<73Q}KIqoHX?!za+bAvHtK6x@hLpfqDoVUe62ercC~PiDp}j#eJbcuSPOC zo%QdF*AIwnNuT0apR1S03}DjM`iun4%=c(RbA59N4-{x4E^cnvbScC)*JkN+V;3a| zw>$CKzH@i~eD2*7Ie0JI&*raP#94d!+O@)hg6BY&4Re;#55tDt1BYv-kA{YZ1vc8z zL4ByL>l#KlI5-#t9)2!O;mDhiEj#%~hL}J^6er*-=Xx~Ka3}5wj-zycUkDKL8|S*d z{Cnq2l{sczIKWIlo0sy>>wqOldhCUx^S_d=mz&X4n@3px+Zl5brH4DhsXl!0vw$9- z1gtG(&~64V(>3I^$y8Lle)DD}J(B`*rD`TgfH(Og2LvOG?^FK|-89 zd_If+0VISK3<)&sKg(7O?h(%a#N;HKgRSe4XdpiFjkomkZSsK|e0GUXY(V$KAX% zI^A|g=#8SAs!>C9(PGSves!(ZIM&f-)7w?e-F;*Q>e5&oa+}JUf)9{A%V0cdK}sg-L1BR==hz{xB_%`j#1^X*tpM$T8-UYD42>F zGS57#cZKdRu7+KVt6F|=?Jo){-I|CXbNtYS2)U4i2zUG@;Kr@ULA;D83&WPkBa0hr zp37j-b$%bO+D3lOFe5{N+hpY6(n8tl{C>%>|@kPQ$vst@Z2xi{+0pUvt#pGhw|U_?6eD?vkO#VD;U> z^|JnJb;;8~?z$V#$z13}w*$@0csRl4*tPzNfUq~#$d1C*er6e7EkY=Ena8AV8%l)7 zV;xaRcD)0#)*0DKaq22ku1qg9c&)}57@}@PaKJePP$)oRBP1jQQYd~o4*e*V?A_3o zSoeyYB4mnS^;3-vu}~h3G!| zvh^J#2A6y44Jy7>=ZgnX(#wSwyGCiHoQ!FX-SP`W>@H@(H<6JnSV@wu>Zt?*Q*eE5@^CM29Xav&=5p5uj94~HgKPCVK~QtE)==4hF!609-|NIe(b0S5Cvp3 zCsIfeollse6^dD#IfwmIjjrVqx+wxU#g^_>tn!`^eFFC>N0CWetRTff_5yqWvG?y! z-=Et-$aI?HJ2O;~g6zrNE4C@38hYyX@=jJ2vrx_Dorrt&02+0gO++LhZ+(r}8PHnk zto?Y6ye`sB%}`Z`MMk7Nhu$3*LK(@Unt95F*&Qq*@@^1a)Au$?$r>JS_l=Dn0uhi& z^*%$jBP18g;J+oyYlkzXLz4IMMl#iSFdZ!yH`8!E~-!2Vw+{VTr9l* zP-#k}!P4@4`GLn1Yc@1&nvr|c6U~XG0UQm1WO%9{4HYhRC&OlCsll=ZCq$fDABG-0 zlR*-RfMF(xq1^g8BIXSHTM#-uAw_Ij8SlQo*xoZV^fzqs2!^;*xU$)^wtdoi|I1CB zq$`(8^|)5%$C1vvxl6pXwDdMuAQC;K+0mJ&H~!yALe&DKX$((ZRD zU%vYMa3AjQ{ru^yGJ#y)U@-UYqw_ygg$_R1c##7g@y{TFI=Mh9v}$?e$dL3d|PEP>zj;dFrwle3uKim$ej*XWuP1%vow7j09`5~;UG+MA#!w$#{Vnw(8N;VroLoG58{PAtRQ*Zzx-<1)W8&!0ZJFAOHYP_Qv#VkFGdIhz zvIlzqY614|%(9&R$t{wQwGWZzs3P|cBbf$Y7(iy)r=cZo@I78^=D0;N1v0?Gf*WkL z>_?tpC*Ok*2%X{S{C{!Qd8u~p41yQ4jx|Fh7O$PX(Nu?2VrJMoKC9J-$7(J!Qi{+k zw#G#_Ae9)fYq2ZiTQnZFwppO!nZn$5gRS)Z4U@&eYZMeDXb@#Fom?tG5+fa>AfO|u zs*+P?(MCkh&O9@vnp8uqTg%ZVZ(sv3hY`WjAO-K;8i3{gePCc!AhV-h(G1DPN-xKF zTUwZOf|jCbMq1xavJ`_#y`Smb`xrm1iaI$pYMW|nyLP1`Q@a+fF~HA6uvGWPI-A

TVgHY&%8!}0<8;^Z*7>@5{+}WW!hcf4(fskv>(|9~b^DwyPIt{9e6rha zi87kXab(%iHOz_3r2VT-VewdC0NRFHWDET#o7ka|75u1_cXVUqfWoKx3m1O;=-W&j zJAm&CNOdp{9=;<^OSrp*b2rjwEqateFG zXmEG15cA#vAb{=>H+@j;TGf zypo!K7_#kPJUnrT?;dZzR({QgEy{z5P@}h`^WP5k>6DcISa61Lr6p$BHCot#bu5!W#jx(&n@2oufh(V5j2x?g5FFw}X+@O@lW4cS`IxmaFX$z82VM3DPo&{@uI}N&gj&pevhBxYkawf?OgDQOpiCd zJ#j6szsWTH9!hO!(^{*?tZlb`z7ey7iptmdL2gt|)nGxqEVQeaMCur}9@xA0SxSoM zjrNAd#;}V{J2PLM&i$Sk)|zs+?yJqLrYJo&~sOB;(H3WS;~J|BG5i zvQ$jLglIMag4v4x!(H>ol}&Lh^Z+DT?yVL-jd8RjfF)2XC^e;u#N==8K6^Gnb98?M z19onm#nra!tovE^zY#ILY*Y>?(p_%M&CiB{y;F&~t3A}K{X-WiYUSPH|H+&AsTA?`YJFE1lYI4d zHp;(9l1ozH^bPs;NXTlWw72xKkKHOeI2r<;P>E3`2;Ms0AhTARBvvJ7xaf=-wfDTt z0abc#{w<&^8&BdC1mRdL`_bkQjT9m>NT$XcJqb$T@bQ=U_Gs9(WTd2o;xtli&)6j5 zLGYau0ma#T^Fy_tINRg1xbpB(~ z?mj0iK;9Z`J|q1SF(|sjnGYjwKTJ2Og199jTabZvDIu_xdpH$Z^RIK3L|X`eMo(XV zdTCnM^+;fwfL-5T>uYOjOo_VybRgH5kW|nWA%k4n*@cYaAmQB~{(N{hlgM$=Zi?3G zwQyt@`}zHcJ7<>-?Qj||%mG_|Z5hockx#6szt~|XsJmS?L32QJinfX@NM|8d4GjE4 zP}h|7yjy>P+u(H`J#fQ~K)i`D3`|UNpfe4gzfenjxc3&Yl&W&S0d!$RDi}ub9zM?F z)pJamFv_{=#F2R)JDY3&BBw~Z9zYV}l_(?un3C-xxrYmP;PT!0|8 zi$S5(2fvTVW7PN(Rni=Ht32|Y?!AVLbKAE&TU!l%%UfTab)Ee6>)S@II2ZH)&=m*+ z5{8iIPW415fK;R0PJ+<1>to?F>AHxLWH+P8XNZ0dufanQ)bLf=dDl8&jzXb&8hulD z+|3J~#jaa0%3~KTEvw;Cr|1U{#yV$18@SiQfs)BoGl>%VAhaTn#ADg#+8UNT2 z08PV7pup;1r$Uq>+=lY_detudIEHv)LCQllK}!dxf!MqNBnZT-VB(YTmmM@j91gha zbE}g?Ix*zw3u_swx_*4~&5=41D62CckJHgNZ_4YggTGCASbG%wZRzY_Er7sZt)I7` z251!07DVFZuc2R;=jnJ6dlV6BMIJ8axAm!q$KF@F$IuqFHpFYV<9k6u`*33@xrw^5 z`1{+indR6mzeh{KF#zv@%A8ge{7PrjLcQA7(8{^4!zr<+`H4! zGB#OPP!@chwKYli6e_&KCr*%&KY4=szA)0`*sSbq)u(PhKKt#!-=S;|hhK$YHg(eq zpO<;~$}tMRNA7;JMSf5Hg0f zw6ai8H8DPSlcK=!HJ^Q!U~k`2$Iabm^_As*Y6W^7PcQ%KqyOP#c_S;e8hnf*@G(C4 z5~Cc+ZP~ZoR>(XxFOQ9z(y8pcbd<8e5X*JepI7-y%L+(re1e5Ue;!o|nXkjTeMdkVkazqRx?d8X#~z+2h(8fsE%GIly`wJ7IOHtb2c9v*rSA6aOBmQ=Mu z`FnjX#dpKudLalj5TY&f+U0%GUB<@9=my-4>hYeza#vOLS>Nw!*x9*1Rg=~?jM_NT z;fwWqCl7^%)l&}qrO)@N?FpDYVJ8^mcY2DJ?pz-MXIm%iCfokr$43sjKtgF#c2@NZ z(`i%)@tRpIbV|V73dpbhiIs^#Xcd>y+#!+x2FBJbeF|*qNx}asoVY6{PJ=Ih@}F?x zB#?K}R*OfY>jb+Zj{d>ho?qYpoA!URi0|zCFMbbyh~E6m`>K=7$zB+wNp7Q9o?Bb( zcejCdNb02LG+e)TOeT@$a8pg~fH7Rv2wmQtuiabXUeevYY5%{$#K$3xf1Z$F8mPmr z{*|ybOI}TYA)AQPZCS=7nG-~+FeD&Q_7UxTcb=$@POIt71X!!VD6l_Xf#>rUva>vX z>d`p@>@B)_W>8QQX;cnNJ+IQeRpP?J!@10UUm6=5Ba%Si(L@}m-01v4xNT)l>K44* zL01kgMrQPAPRGJ#D4L6D7{-5(jkyp+V!5wDZHOeD8ICBBWkkV>vI{}Jk%%USh9wMa z01@foCquAj<|ZW|Wtz<}#iP+~HWevebbR+OqoDBkxzphm5%P`~nK|=GNv9vlgkO+f z1!P)RPw(ZcSL7OL_fKk6xaNc!V(H4kQ7~Jng zRn;HP>1I6a*$N>2B=kjy38)Rbb`ba8slDK*LZNdllEX#*n^wq@1@~%QH}DsWA{^T8y0c>gv<8n`IqYHs z^v#I++IvhY@%H!UTkCU>Kn%vT5P7-ZtlPXoVUv&5NOwd1K@GP*5*LR-W&ovOf1C-t zEzRp{SaBL;rcwZ(d3+?Lq!f`@O+@m;e~vEeH;R~Wgdf9zxDnSUvFBw6EVjq+g;QXu z{S&hYCPon;1}Lg3WPw49_Zg)zavFlay)~#h;)qdP2tcC;RZ-@9Rv!7<&z3XcDaQdF z0!D*qOH56PSV`z#x0+KOq!V`#Au`jdtC34gRp!Hf?fm(tQvL|90x^q}v^P#pWMG}V z3ZB1s0p<^c@JqO%l87*XQJFm(Z(-F0EnFAm=C&Io2@!9IluHCRd_NUrw{^drR<6Tt z5ZXkBD=>0pFmloeQrsedv^p%wLS+9U-V{Mz0GX1!im{;Yb?4<;-fB(Mk??Tdr=9We z88%y@K{XSROoo?&Hy@5c5R%cYuK8Vb0E*P(w(pEDSDj}D8Hyk#RAhJRzFYx`fLSxA(BwuUXBZ`7Qwxzy?BL)) z+>#i?h}XNhjnm-K;WI`6wa=6;f%&(`V6>{^~ zGc^N8?SjtfZpRz^UFvbHAwioNeGCF55vF}PIM*7-QxMV{j-xBb>u5M+?ukqZFxX$Z zqOdTD1Pqk$-(j>oBxYy*tdLb}5Ih!8Hlp7L|8~D4Bk9``n0-*kPZ51Ve76X{Q5fRe zN=izk^Md{A`|+AuCQ!r=6b$uKB;eJA%hH1+F2fg0=*zH1N!AwHO(BrMDQw_zJ#(1AOjJEOb{fl zJtd+~7JeY-nhn#Z`w1udjG(((8Z8HhK#h4>zTJe@)~u{se12n-R(N@{dDo`xEMfS9c$fV4-r zz=%w3;?V(4f%@isaC8e1strTY5Lq1QQ<-mXsm`);K~viW2fSqGeOBA-mHBDhwo3n}$W`A@-Eu#qs$4w0Y+J zR|zrG`BifSJ#WJWjN)&&E%gjevto4P)jZuQ0K6b^K(x4|wDc*}4}68Y5l+kmr1WoG zY)=6{oAnfsk)SWQjN%%n#a1F)1xpt)149IX5W$qVL7l?sX=q^O--DM~j38TZ@Of)9 ze>;4aaFWgRjO3v$duIp^HPN8!{ zj4Bm25P=;DT7+9x+90+C*QI_>ffKTX?;s%=N4(0HWbAPwkQQbK#AgqJzWohy8@V81 zmxoDkd2u1cUkqfSrVg^s3owKWgZ6?EN{<&ygdSUxmY0`PNJvQF!(s7e7ZA8fw=YWe z*2vHhCusLS*~G+k1|W>bux=a7N82gset1D@ShCPG%W-QgD^(>1e-lC)5kk= zJr>57|I!*elS9ZfP&pv4$9QUPP7hm}h~m-H+x882eQS;lH|lA^JaXsGS2~Ri2-Tp8 zMJDPUH!O8ZBQ zj;QzWj3k-PZv+JeuOOYcH9So`R)zHdzEeVUg=BK9D-uGk^{%sUHVYlxX&L&?Y%AXl zfE6M*H19wyk?E{pbc~yu8fnn5#QF?w+ig>u#sE|gdlg!+n@M-baD5WB2{!3~-$Xmx zK|TJgS-No#YI>JT)A`sMJ6GZ5EIi{dCpn}MW&w%_Ev5DEn&jW@1m%`dEJ^S#dSp{T^KnzL66c0@!DdTRzgIWK{|O&kR{&wtd^yu+!egdaztmYAA)0>XO` zVo?h7Ml{z=Y^<&O{1$&BgmpjEH+nODKP|^v6x1J}@_^8TfR55GUcAUNQVRh(7SAlO z3%&;(rLk%$UlOezxt0mOE{4f6OvErn)?|bo4~=gSh;Jz}p;#0`UhcmOkO*Q^%pZxs zDL^7(J@piQF=Rz=6+-SqDx*$GU0seMLi7c)n%acehB${XHP!Wm_oV?r_xT$ zYyE|{i~)y8-hm#T97Pq|jZCe|I~fRH`X`InBfNVZ&}2)R2|ctUM?^&#A*;c05*F-E zv=$20XF#Y9`<19dRYnvoC;%X@aP2b090k<(r7w3-V}ui;-%d8a%SSd3NRpXP_6a8K zX)Ud-L`v8@5E;;(AcEdHMZJR8P5_O86JltWEFl50UdIHc;M~;os3JNC%eD=DyV-)GM z?WUcIxqmo$>q7BH_yxd@6Ay{D0}*1M(J$GAN6BXHWR=!3YKXi5E|G{df*K#Frv;+9 zhHXSmhy-o8Ylx{DP#nu3lnM|(6hT7GF{EgNpAbblA-qJI6EJHWjW^Z1FiDb_K8hzb z#MBIwi7a(rhp=e|5s+M1Soi|l@Jh8%e+fz!+&4WVBX4j9qBqjPy$hXO=*|9U#INE; zA_P{rXEAt{SP>+s|4wmozC*CqZOqyY3k#bIl|p-Tdc=lTr(oM|W-%9(!FX3>$&N2k za|RJANX%RvE*U-}{CJF5e8ADK;|nzOA5pbhhy3NCnb}XPd;aJyp~1rEMi1lg^v_d4 zHEEd0vaw=(x{3&@o|eesgiaDuK#=Ib&Q4?zqsn6twe`aIlA5eX#w&Bfo}=XV&|3)F z&at2xYxtlxaqCtnAzCDalX!cOIp{XQ?`7OP5oa=sEPIFziEL+GG#YsNf3k?N%j-}H zi!Jw2;|Kx{Nhfg`FBBJ zx#C!cnCx1Lx*OUUXu}NGcanmhBr^R20s?T%!dW$d8aoIT#_NNU6wGJYr8II)kw-l6 z|BEWSO8&_y5qDc>A?}nKmq201XYrlcp*IdPE&fRAU0N8A_-C$FdJl@vucqBv{{I=z zVmI^i6yE8o=%5S%+bFg3nTF_(-f$}REI%;Tn)+6Xl7hMM%XJpcl*Au#`o8~PDYlcd zYaRcAj$*5lh6Ca$O^ zBmU3i4=9ZPjM^c*>@e6}465Ew0A%i!CAAXsJyf5FKbeDZ;RRbeDNIj@y{6>s8Gs-i z7vmeSH~1rT#BY2+h~xjDNirc9{tY&LejR_9XXdgm-UX?Xhv|~vuiLE3v2$k!B8PBD zm7kLJ|JA4Hb2ePovAcCIo(})r=oMSq-ni+z%p!(#7IM?2hYRrG4ArMI#~)z5t*?6x z+K`?14Il`6ZPgfm zW%wVNSdIr(-i7&1No(tE+V;GjLqosiU*g>Re~5~VZN4TY1*a!WYFwMVMYIo!PH+Bv z4tOk*zqdE$vqI~Lkf<5NIPACSgq9ct7A@qvxW|S@i2<25&Q$a#iwHM3w?Spy%>+5P zF9fWwuLSt`6dM#e_x35$EROIl>2wO6W*dB$9~;Zol+b-XcYC0KfM7kw$s=0F_e@Tn zfy5Z&r-v~ERfrF0ar{MsY~H?7k5DML-a?}T`a$s?Ef9eVyzV1xTFEc(R^~=RSaVF; z_2jW*q))-k%&c~1%LJW!fuA;;{(S>17tM(G z#sX^-l0Nc~nop<%3~%8Efz*l9rc4=AeWfqoyO%Wc@Yk;kV#{Cl9$B1BLTnR^cK$&Q zLVgAv^P~KU_m|C^;^WEU)c@52XjK-zBbV_L@$0f**|&G^mTzs$4!3)L7qP8A-k}qG zBtX!f&Wg%P=+W3^M@MmDfarXTYNo?HD^|36|JkEQx1wE;3ljQSL~$?!D0X|=B*|d` zmcM8EZ((RV4I((uEZEv*Tb|B-Jb9-&{?nSxA_pZM&u1w0AWnUwB2Fw}{P+5PtV*Ux zF6G$O?#(wjUBRT}uz{aGqv{|{TI~!eUKyCsH(pYYsHiY2`85D+;0Q|#BSmTB?Xxb~ z@FtyEiFVFUNG1Kze?sD7hhWOH}F+2Jm5?@_L>2j8R~m*1Qkm=+upee~j7T>DVw45#2!hpZP}cz&bZ zAL;K!E!@M}$31`6G&bswc>RQnAXh;hN&?~od4HnYd^BAHFW}9-6Ib8)`-ks6%f}(t zYhi7DDZV<5kI&{oVONz~lv4Pw-g?3ADRQcdn3k>+&*?YTJ-mkPbp&Py5z#HMI0GHk zH8x&Nxc}ej#2b>xX0G_SDw{;71e-A--hvvEh?_=Fmk6^ale5!*+F%ipjvZo8d{DHI zfKLiAzB+?~I?=fK0TA8hcx{7KH^w=L4#qmIZtgGH{5HMVS)259|CTKm-i5G4-mGQ0 zc_E~@D{=Aty)oW}cx~elsiLkY{0oPKF(T@Q|LxE#9uAAEFRZ7BKEEFDwGpMNF6^ps zxchkGft7*P<9LgB{oM=#Pg^Yp9ts~u2P6k+4lpl_=G*oZ?Q8PA={ty4MK~#N6$|_X z3AJbPHu6{R{QT7VOxWMV-x5ke4-qKpCl?{dQC^FI@t~+Fssbq3+1V8pl@1Bq;{=<2URIV;gPz_&EAzb+CH+>!K|ev_yPL-P zcC4`4NQGnfO_X2tr9NnU10fzK!p`BH|M_D_uVGWHVZ8prX!}7~Sy^Yw%|IZzUwL@V zq6P{e%py5dlP``C&?AM;)U>p(AxIH-W4OY5@L*fIaS15L#MBgN4&T`+hr@_9Eoxg> zgDCI$+}y7IOZ!y<0$TE|m{G)UjOqWooREE-(pTzfk{P^z-wEZbRkot1uNVayvR*km ztHoMfgBg^D*SH^fhGo$iaoJ>LDQhU*Vr{N_uNQu_yyk|gl4nFr`E?};kMOwbpIw!M zkI7%-Dyt~vRQ?j7zHKATRHor0e`!Bi_i)BsiGG{a*v-hC{7)iIs^vaTEo+-@DHx?) z__xQluH4zMm_G!_+FL>^b=S!{T$|N9$!hTdU4zvb&IBY{ek(l`ad({NY6EYfzLAlF zB4uZK>50h```&xpJ8l4U?ud%K>NUCQcZTmz%U)499uZz1HZnZ(<*SQ~+WR!ka1S=$ z=pxnzUCX|+dS?#|jg)P%{v7vo-_8t{>Km2|!a~bkJ$o@^GVICX)})Pl&&mJ2PiGeA zsg|iX_I75i675WN%ngU(=s#ydLB8|Q^&KSl+q3$wss8&58;>^X8Ci3=wrgko8;5zg zj~Mc?`DS*0)AD~JFJC6q$9?4Iv_BPB`YU}eUbvtC@6O{w%9~&zoTtzz%fCTDcqNPgVoI(X zT9R?2s32d%Zi9ISm}A*%8teDZ^GumO937wpk}^*`eQof{E5zIpvy!?1#)QSpsG;n( z_Ypu?fPjDiVs*u?iTv{pd%9)8cbQvnZioV}`GvM6h~W$Z!qMpIBI6inEv6=7-VN`( z4LV`;_Jo%`A;BHo2?z|*&tSD(n8meD_+XSCFgXFjmFx@rGA6md-1-c93?T`9FTdmyXP!NJ~AlvV;H{uYNg%Hd$wB zs)ulvpvwABO}TDOhY7SuW4&&e8id*nRR~kiU`E^ZU(^bRk-cX({FY|q<7_t+(um^%e$fL z>o1U%tgfz3%oW1b@1V#QrCb)N5SjrLkq|dwObizL79zYEp)+MDxQX(7V`Br;hsd8I zZwJ_0$iC6S>ldD4+*du&qvy|`dpTnLYi2yWpf9}f02#q}IgvRFn1ThYYGWb!pI5Ri zIPub}5#}$!!Qb)uiw(C%QE_PHlmg9w?C8s-*ZXkbpEf8()xeC-nS|I5p`oENF$$sE zf#jZ8uI}0Z)Cp!xu^47EPW&7JF{7wJ1AgK5?ZdddHu{7PN@5uh!}x&SpM>HFAaSB2 z0@vn-XWg6rCzSXYP69%|NVvwly&DZ)FJibi5tNLZ0$>SYNx~c|l3#;^CB#rkXboZC zF2q~{Ak0#8JpLwx|k5-gdWkL|%GJPNQs zdIC=XhUmg5?1O`*cVJ-Qzh0Emha`>GSv`#hEKZkpc)w54LQ=B7f&bOI@*LkX?m3L8 zX{(dz)QgID_Lm8a=V)wF_AN{OdfYFnls zYuAC{D4J*aI!oIwt7p;<76WGEH+^XBkf!!>ezO z3i96KP?7gN6{e4*^Fj$LXSBfc@lMARdx3_QWG+->)#}8(n1c9vBfl{ zd}II9Oc5R238DXuyf4DJ{ig`Va2n+~X6hBk;~Xcme#!j%w{}OC#q#D<_E`Oo<#*4U zE0+KFA6{x!Vkmpw`pOw!h~S1gQqREN&GVqn3pd$0+%9CsOV#&!8uw{;yE>IU>G>@= z#>lYQwex^ywzMviN2kMLj{FtW8Kso3&=}U{8(*AX5M1~Q)`TkGc;`0=x?P~UT#|Dt?c&x zJ<80t?4HHA=Y0BvSW8>0?wuQM>ZzlgCM%X9A#XNCTA&*{#Ch*snK82VfKbPm^@Ba! zdvMV$!kyV{p~4W$4ZXzOq;j^%HJD59Ql^eH6#a;0;5#rrb$_@rb9PYt^gzv#7f~9E zvkW|{v6@bK&yFZLu3YJ#ALhPWlP6J9t>`?}eOIY=w>@bggCh_x638~WpHyi^XDJur zk+izHL;#m|e;{y@kuP$$z(6 zD>n+ktazV^DOR76pdDhd#*fhjSEo%aHVVkHEXS`>1u-!Qn;!x$c=YHoLKbCE6&MV` zo1~i`GT%o><9UrD*mAvPV>-=lrFHwT=#%;I06$tNRXDUx9N&i{U2@Z5{R5}rop?0|wOoI+ z07>_1FXHbj5qM>N@Sv|jX?|Fs;|o-N)3`7AmLGg;%i5~bql25ve%L4~^7?oGpVX(! ze)sJNL|=DIl!r&TU*Hx4lH9!5jls$3&s0&d-92n1y!G0 z4GS*N)*~WB+1&E@QLgvMk>)b0IOK3EW&2YExF>&ahM#aj@n@}vZi#z+!X^n}%rSdh z#e4U{YIwnY=?At;OPr1yBK^r(ZQ2oa_OqI3$i;DMBV(sU%jIVX`~l0EdC{qbMn|_BWPe9cub4PB=KjH|D70 z)YF4+e9BtmF%in6=Qo2WFgiO+v9r+|M4tB%M{zf%O6+Dq>!EjC?n){K_$w&aa0)j( zigA~;ITH{qbmmpry4f-p5djnZoRT=zhHD84@79M?HNl$Yn|l)EMETj`Vh#HyzQd{0 z-^%BZ{y-t-hAiC^>(60f7@xTXw{0jUh?I#y;=VLD^!igS>27aUZd(Lk<~vfY@s8;= zR*Tn{cD|tFHO6-v!yvJdx2dy@*v#o{@|EhTt!eg8Jh~(>s$ywD!!*3Qbag^Y#n&i6 z^vR9PwSh`{9RIJ~s<7IiK3j({t)akKE$x8T}j;^~@*yq`JR9 z%JppDu3THzdKfh?!F2P`(()2&zt_~op3pMa>Xvxfgv$n1u{$~*9u+1Mf)IS^>=Aqf zzImd(b^XXklT`t0%1N03g03Oi_xh5b_BAC>2$W{AQ*0Ne6ygbP?aNQ4hw(QUEy`!` z6;y+CB|%@x%yu(_vn1^-bl@dra=4|4&kk+;W`*Nx7;TH)>EEWM@p-eVglKo?tz}Il zP`@2JN0GAmGmo+LY?ob!8_8%>LIiSLK4|zvn0rUVAEjb*Vbnx#8_z-;C?O3~6(#`*dADAfcGh{Gh2(T&f(rm0Cvelx+dNn>Lp;|Wi3NX~&u(Om0| zwalxGDW>W8pk9zu7F5PD`P2Cewg~{}L<$_YRTV?t{6cX{>ECbC(jemNbBVBE*(xi8@&3p_U~9KL^Gy}Zi@aM$3RANT#Xp=(5P1rN_>+f*av#59h_8e72} zISmAA-Bd{o&WedC`;>zpt`Al+U~Mz#^tj)aLk8YKSxtP^AX1|_9&qk1d;4{UN!f+o zxmVdITXoNOl{_C8emu4Q_g-{#7apmq+RjgqehaVEfIKe9eEnRgbbZ>m6$BT=d!~^J+yjR7S-fZ= zz=a;JUSPe~tz7fCuhD_aPq{yP(`>N3s>+Q?OiZ~l)YDh=uFgUdN_<=wZb%*@v>Jpi zOP7jDA2F5OPoIQJ5icXl(vVP)(UOvSPikHmd~>n(_3p;}AN2;+)=UgC%^aUBWPL9m zC)q{6A?h9^(o2T3#^!?J~cHvd#28oSr`_ki3wNhmA-S- z#qPbU%u<}j3k>K3OF~~!l~z>f^%O|5jzUzy^`wdIVxV}aX;7Z!P{WnhVOE(ZK_ZXd zh~?T^^t)fH2;xs~d311t7Nan?5sYM6GloB!YfnGBbhKxp^GR91c5~cdZIG%s>14Mw zI!;!V0I%UjO@#cv831MC#5!Bqo(>hWGkP%1(c#hTy%6(x3#SoD-Bq2!41$*LrfT*e z_{hb>;~dGBEmkdAvhx?EkRhM7+tc?l(G>*0ASYCv#*VjqO&PaLkZm7mca!~? z{w+L&vC$|435|!_;4vjZ*A^;KA_pPBGkj4ua~^KVkJm^@e(=D=FX-u05}-JL?V$V~ z70sRYc)@aUI5>ISrl=w&kokUh(hD?LQ$szZF0L*^wJECq*|6uoPiilu<=}_{o0+IL ztQc!@-z<8h;^k{kaNpRlVh{!F{v>qn{?ML4QJV_n;i_ReBKgLe8_d&ng%QG554s12 zd!?;y(mrR)Q|bG?o8|Tj8Y>y@DRds7J(i$*0am}8$<})Z2KuKKXLUm-x0AR92?S0~ zEgLr{V5BxJHjQfJ0-JILeRGt0*c zcMC<7ZL&`g3l0$4XT)PI%@(Bo1&B1{|SX| zITsqGShOQb`6?d!p+yXVoSIiob|#-dxYse3p}qDi^QvyIcJJ6h_Up%MPY8tI7jVHf zfEE{;zt^asBY!OGEIs7monMR?VRqr9XKjoD74*FVc0-)k zGZr4lsJh!?m}+)afw=LDNvSN$iP#(=ikiA|Ps%)c>zTRJQBj6C0p1}2*_+htlJ%im zn|4erP#FW#hz=NnzxS%&jSpNgnHhWN8NEmMG()JHwE1nz%G^Yl-8gm@1IC7dkTT)Q z;aggXzAv%xfy|znRZu9|rdMiVvb{Xo`^?{NuLs(jOq4nLh>H@gqmbvRym%G>7`w}+2DdnfUt%C^6bDlt1b}^&78l! z;b^L9uGgLVd;#`nf}ZZ_4gF_}VE`!!7`hU_ZaK5r6<*|YciP!`eJaSgGoVsURqRUZ zn&h#UK#2TA-{P7r^Q^)}E)>3hZbRR+d}!zp@Sd86n&VRwjJwCWOAu(|eQd{@dLQC? zmmO_F$KVPS8kfv7((Q>)EFR-x;fD06~nh;63yW!oPt8fhP-^0aw zE=jLXqe;@~SzBg3C^l=H(6Jy(W+MIIoJQ&j&=o%Oxl)~z@&P~4rqhb(-HSgrtB4JD z=gv_>Lqo(;y2A)FD=>6~JvV0vo%-IrY7!B%ZTv3u!p?68t5ZzMY1STe-ubz?LB4-O zQ-OtUdRJrq%kM!{&UtXV0QwsAKgGinGyBf|IjJlqWmk?vsOCn;r_-fb>JSll8n<~y z$oq*t*=;r12}P9g-`Aj}M3oG2)v4x37YhqM2%CyQ;I5SC^TF#<|5fkV*cV9gL-ZvH zNEXhuSChjCKR8$wbc~113&3o2McHxR^4gl3!)P^a%JV*_E$h!4K^j`w9?1gvE>_)5 zwf+rzOBRU<=QM;TU(?!zWKZKGI|?} zAFM+k6dQV_5p4SIr{3CJy)w3S)IH)oI>1b#M z&Np$+0!=Xoas-GJzX-B#&-xB(nFBW*N}h)hDC({3)kMTbdk?x&7*(%fTudOsPc4>y zZRwZXU+Vv^_XqTQ`L<*b0z#2@Wsym=rm40#Me?nkF3nfdGGk%$*=gNv2V&!D8yoxE zo8k~ds_Y>CCgihyY+BmmCds$)x4f(0xGwcPAtWg{1umz@-?I3D5y5DE&vA3>qRK|D zD0OeK8~a>l$aS6&iTSfS#<~(@2<4b)ll&wkXz)piWq%ntyE~JhOHz_qV3PUn<>fhg zZ<>JtjDOM8H<SzZ`H* zO+AonJEvFk?g$uXwhDI6v#M_N%@#rW@NNuOXZ10d&wdA-mSov#zMEO(vqYImbU~xBsQ>JD-==U}X^+ z5*JrCiWW&Gh|d*y3|rKw`2=o|sF>=UYUWI?kEjM?q#P*E`uD})^S#x=V{oNF!m55^eg31ouv)Zc6qjPu zoaZ7LbMx$r#6-@1gHs$FZV)(@^>dBU?Gy{&Kfk`p*>UyaM7v5r+Sf$R2s;}%sI>x& zS8|qTZ6J{?ac3&3sUacJ5MGt{w@*%-5vJMSv`lf3kfxmRIa`>mf6e>r^EU3Y*ESZ# zn@p$rhdc@e7mnqB+Hg(lPF2t<#kDWpDfCFden93KWAxgB?6Qfp4rm7qD7-9Ry`HW8 zu3$`e9J|J0@XZpVGFH#Jj!rdEoJeeJNMdYYDZrW!0)|{rdYlv#^gAUV#HBmH_ISLD zh|I!OcV~%8oP{~s1>D=OUMAwaNW_h08Z2ynNczg!gqAAhFWb-R897eECyAaMml zx7@UPS9H%A@2k^u_b*`IrrfQDPH2nM#S379PRRwb&G8lIz72)qT6t;qsyQC2+|a_7pVC7H8u=C zkrcG-CxsXqa{&oJ6zm+vrT)$FY16iA4wG51z?}I_yOSYAXo~Cp1};>&PTWncX0fNH zr;rfPLbn`9PR?z)^pH@rYvkHyrs*mw?!(JaHY=lhPJ=`^G^@&KJyo6A=rS-Wp#+0_ z4)NaIbxeBgJe(L7CM8M{4!v{3+-2i!Stj(zjQ)c3VG`@Kdl#&iDEhbYL%n&wD@QG? zqN9zAm)F&+K^g8LJi(VQ;j9r4`Ot1Zin)QbWpN3>_oL6=KuCuUb}zye;Nb!0erR~MWNFUMD^vu$j`JW z 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 Om(_JHyivV=_kRH@@BB^x diff --git a/doc/screenshots/screenshot-hardware-tokeninfo-flags.png b/doc/screenshots/screenshot-hardware-tokeninfo-flags.png deleted file mode 100644 index 10a562e8531b5e6ffaec36c4c7013a13b4513774..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 54668 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∾h!DBc5v2aX4u0`Wp?LxRqQJKg7 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 diff --git a/mac-create-app-bundle.sh b/mac-create-app-bundle.sh index 1b8f511..6b76c09 100755 --- a/mac-create-app-bundle.sh +++ b/mac-create-app-bundle.sh @@ -7,7 +7,7 @@ ## Parameters: ## $1: name of the app-target ## $2: name of the project -## $3: installation source +## $3: package installation target ## ## 1 2 3 4 5 6 7 8 ## 45678901234567890123456789012345678901234567890123456789012345678901234567890 @@ -16,31 +16,33 @@ if test "$(uname -s)" != "Darwin"; then echo "**** ERROR: run on Mac OS-X: $0" exit 1 fi -test -n "$1" -test -n "$2" -test -d "$3" -target="$(pwd)/${1}/Contents/MacOS" + +project=${2:-$(sed -n 's/ *m4_define *( *x_package_name, *\(.*\) *).*/\1/p' $(pwd)/configure.ac)} +apptarget=${1:-${project}.app} +sources=${3:-$(pwd)/tmp} +! test -e "$apptarget" || rm -rf "$apptarget" +test -n "$project" +test -d "$sources" +target="$(pwd)/${apptarget}/Contents/MacOS" + +echo "Creating $apptarget for $project from $sources" # Step 1: create and fill app directory structure -mkdir -p ${1}/Contents/{Resources,MacOS} -! test -d ${3}/bin || \ - find ${3}/bin -mindepth 1 -maxdepth 1 -exec mv {} ${1}/Contents/MacOS/ \; -executablefile=$(ls -1 ${1}/Contents/MacOS/ | head -1) -! test -d ${3}/lib || \ - find ${3}/lib -mindepth 1 -maxdepth 1 -exec mv {} ${1}/Contents/MacOS/ \; -! test -d ${3}/share/${2} || \ - find ${3}/share/${2} -mindepth 1 -maxdepth 1 -exec mv {} ${1}/Contents/Resources/ \; -! test -d ${3}/share/${2} || rmdir ${3}/share/${2} -! test -d ${3}/share || \ - find ${3}/share -mindepth 1 -maxdepth 1 -exec mv {} ${1}/Contents/Resources/ \; -! test -d ${3}/bin || rmdir ${3}/bin -! test -d ${3}/lib || rmdir ${3}/lib -! test -d ${3}/share || rmdir ${3}/share -! test -d ${3} || \ - find ${3} -mindepth 1 -maxdepth 1 -exec mv {} ${1}/Contents/Resources/ \; -! test -d ${3}/include || rm -r ${3}/include -! test -d ${3} || rmdir ${3} -! test -d ${1}/tmp || rm -r ${1}/tmp +mkdir -p ${apptarget}/Contents/{Resources,MacOS} +! test -d ${sources}/bin || \ + find ${sources}/bin -mindepth 1 -maxdepth 1 -exec cp -a {} ${apptarget}/Contents/MacOS/ \; +! test -d ${sources}/scripts || \ + find ${sources}/scripts -mindepth 1 -maxdepth 1 -exec cp -a {} ${apptarget}/Contents/MacOS/ \; +executablefile=${apptarget}/Contents/MacOS/${project} +test -x $executablefile || executablefile=$(ls -1 ${apptarget}/Contents/MacOS/ | head -1) +! test -d ${sources}/lib || \ + find ${sources}/lib -mindepth 1 -maxdepth 1 -exec cp -a {} ${apptarget}/Contents/MacOS/ \; +! test -d ${sources}/share/${project} || \ + find ${sources}/share/${project} -mindepth 1 -maxdepth 1 -exec cp -a {} ${apptarget}/Contents/Resources/ \; +! test -d ${sources}/share || \ + find ${sources}/share -mindepth 1 -maxdepth 1 -name ${project} -prune -o -exec cp -a {} ${apptarget}/Contents/Resources/ \; +! test -d ${sources} || \ + find ${sources} -mindepth 1 -maxdepth 1 -name share -o -name bin -o -name lib -o -name scripts -prune -o -exec cp -a {} ${apptarget}/Contents/Resources/ \; # Step 2: copy qt plugins, if necessary for f in ${QT_PLUGINS}; do @@ -57,7 +59,7 @@ while [ $found -ne 0 ]; do cd "${target}" for file in $(find . -type f); do for lib in $(otool -L ${file} | tail -n +2 \ - | egrep '/opt/local/|'"${HOME}" \ + | egrep '/usr/local/|/opt/local/|'"${HOME}" \ | grep -v $file | awk '{print $1}'); do found=1 test -f ${lib##*/} \ @@ -79,23 +81,23 @@ if test -n "${QTDIR}"; then MENU_NIB=$(find ${QTDIR} -name .svn -o -name .git -prune -o -name qt_menu.nib -print \ | head -1) if test -e "${MENU_NIB}"; then - rsync -r "${MENU_NIB}" ${1}/Contents/Resources/ - test -d ${1}/Contents/Resources/qt_menu.nib + rsync -r "${MENU_NIB}" ${apptarget}/Contents/Resources/ + test -d ${apptarget}/Contents/Resources/qt_menu.nib fi fi # Step 5: copy or create info.plist -infoplist=$(find ${1}/Contents/Resources -name Info.plist) +infoplist=$(find ${apptarget}/Contents/Resources -name Info.plist) if test -f "${infoplist}"; then - mv "${infoplist}" ${1}/Contents/Info.plist + cp -a "${infoplist}" ${apptarget}/Contents/Info.plist else - cat > ${1}/Contents/Info.plist < ${apptarget}/Contents/Info.plist < CFBundleIdentifier - ${2} + ${project} CFBundleExecutable ${executablefile##/} diff --git a/makefile.am b/makefile.am index ea9e643..494ec04 100644 --- a/makefile.am +++ b/makefile.am @@ -2,7 +2,7 @@ ## ## This file has been added: ## - by bootstrap.sh -## - on Fri, 13 November 2015 16:51:30 +0100 +## - on Wed, 18 July 2018 13:41:17 +0000 ## Feel free to change it or even remove and rebuild it, up to your needs ## ## 1 2 3 4 5 6 7 8 @@ -13,6 +13,18 @@ SUBDIRS = src doc desktopdir = ${datadir}/applications desktop_DATA = @PACKAGE_DESKTOP@ dist_pkgdata_DATA = @PACKAGE_ICON@ -dist_doc_DATA = AUTHORS NEWS README COPYING INSTALL ChangeLog +dist_noinst_DATA = ax_check_qt.m4 bootstrap.sh \ + resolve-rpmbuilddeps.sh autogen.sh \ + ax_cxx_compile_stdcxx_11.m4 build-in-docker.sh \ + build-resource-file.sh \ + ax_init_standard_project.m4 \ + mac-create-app-bundle.sh resolve-debbuilddeps.sh \ + dependency-graph.sh template.sh \ + sql-to-dot.sed +dist_doc_DATA = AUTHORS NEWS README.md COPYING INSTALL ChangeLog +README: README.md + cp README.md README + +CLEANFILES = README MAINTAINERCLEANFILES = makefile.in diff --git a/resolve-debbuilddeps.sh b/resolve-debbuilddeps.sh index 36a94e6..e7663eb 100755 --- a/resolve-debbuilddeps.sh +++ b/resolve-debbuilddeps.sh @@ -24,7 +24,7 @@ else fi function install() { - if ${SUDO} apt-get -y install $*; then + if ${SUDO} apt-get install -y --force-yes --no-install-suggests --no-install-recommends $*; then return 0 else return 1 diff --git a/resolve-rpmbuilddeps.sh b/resolve-rpmbuilddeps.sh index 7c1843b..56bfd4f 100755 --- a/resolve-rpmbuilddeps.sh +++ b/resolve-rpmbuilddeps.sh @@ -97,12 +97,12 @@ fi if test -n "${SCHROOTNAME}"; then FILES=$(LANG= schroot -c ${SCHROOTNAME} -- rpmbuild -bb --clean --nobuild --define "_topdir ." --define "_sourcedir ." ${PACKAGE_NAME}.spec 2>&1 | sed -n 's, is needed by.*,,p') - if test -n "${FILES}"; then + if test -n "${FILES}${DEPS}"; then schroot -c ${SCHROOTNAME} -u root -- ${INSTALL_TOOL} ${FILES} ${DEPS} fi else FILES=$(LANG= rpmbuild -bb --clean --nobuild --define "_topdir ." --define "_sourcedir ." ${PACKAGE_NAME}.spec 2>&1 | sed -n 's, is needed by.*,,p') - if test -n "${FILES}"; then + if test -n "${FILES}${DEPS}"; then ${INSTALL_TOOL} ${FILES} ${DEPS} fi fi diff --git a/tokentool.spec.in b/tokentool.spec.in index 0141f16..1e6486a 100644 --- a/tokentool.spec.in +++ b/tokentool.spec.in @@ -1,31 +1,33 @@ Summary: @DESCRIPTION@ Name: @PACKAGE_NAME@ Version: @VERSION@ -Release: @BUILD_NUMBER@%{?dist} +Release: @BUILD_NUMBER@.@DISTRO@ License: LGPL -Group: Applications/... +Group: @RPM_GROUP@ + Source0: %{name}-%{version}.tar.gz BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root -BuildRequires: gnupg, subversion, automake, autoconf, doxygen -%if 0%{?fedora} != 20 -BuildRequires: graphviz +BuildRequires: which, pkgconfig, gnupg, expect, git, make, automake, autoconf, rpm-build, binutils-devel, gcc-c++, doxygen, graphviz, java-openjdk @RPM_BUILD_DEPEND@ @RPM_DEPEND_IFEXISTS@ + +#### os dependent definitions #### +%if 0%{?suse_version} || 0%{?sles_version} +BuildRequires: lsb-release, libqt5-qtbase-devel, libqt5-qttools, libqt5-linguist-devel, libQt5WebKit5-devel libqt5-qtwebengine-devel libQt5WebKitWidgets-devel +%else +%if 0%{?mageia} +BuildRequires: rpm-sign, lsb-release +BuildRequires: qtbase5-common-devel, qttools5, lib64qt5webkit-devel, lib64qt5webkitwidgets-devel +%else +BuildRequires: qt5-qtbase-devel, qt5-qttools-devel, qt5-qtwebkit-devel +BuildRequires: rpm-sign, redhat-lsb +%global debug_package %{nil} %endif -%if 0%{?fedora} || 0%{?rhel} || 0%{?rhl} || 0%{?centos} || 0%{?centos_ver} || 0%{?centos_version} -BuildRequires: pkgconfig, redhat-lsb -%if ! ( 0%{?centos} || 0%{?centos_ver} || 0%{?centos_version} ) +%endif +%if ! 0%{?centos} BuildRequires: mscgen -BuildRequires: qt5-qtbase-devel, qt5-qttools, qt5-qtwebkit-devel -%else -BuildRequires: qt-devel +%if ! 0%{?mageia} +BuildRequires: pandoc %endif -%else%if 0%{?suse_version} || 0%{?sles_version} -BuildRequires: pkg-config, lsb-release -%if 0%{?suse_version} < 1200 || 0%{?sles_version} < 1200 -BuildRequires: libqt4-devel, qt4-x11-tools, libQtWebKit-devel -%else -BuildRequires: libqt5-qtbase-devel, libqt5-qttools, libQt5WebKit5-devel %endif -%endif%endif %description @README@ @@ -50,9 +52,12 @@ rm -rf $RPM_BUILD_ROOT %files %defattr(-,root,root,-) -/usr/bin/* +/usr/bin +/usr/share/applications +/usr/share/@PACKAGE_NAME@ + %doc -/usr/share/* +/usr/share/doc