diff --git a/ChangeLog b/ChangeLog
index b65d9be..1330fef 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,98 +1,133 @@
+2016-05-14 11:31
+
+ * [r21] src/certman.hxx:
+ read more than one certificate from a file; take file names in
+ command line arguments
+
+2016-05-14 10:26
+
+ * [r20] ax_init_standard_project.m4, bootstrap.sh,
+ build-in-docker.conf[ADD], resolve-rpmbuilddeps.sh,
+ src/certman.hxx, src/main.cxx:
+ read more than one certificate from a file; take file names in
+ command line arguments
+
+2016-05-05 17:19
+
+ * [r19] ChangeLog, ax_init_standard_project.m4, build-in-docker.sh:
+ updated build system
+
2016-04-24 16:20
- * ChangeLog, autogen.sh, ax_init_standard_project.m4, bootstrap.sh,
- build-in-docker.sh, mac-create-app-bundle.sh,
+ * [r18] ChangeLog, autogen.sh[ADD], ax_init_standard_project.m4,
+ bootstrap.sh, build-in-docker.sh, mac-create-app-bundle.sh,
resolve-debbuilddeps.sh, resolve-rpmbuilddeps.sh,
- src/version.cxx, src/version.hxx: fix build error
+ src/version.cxx, src/version.hxx:
+ fix build error
2015-11-28 13:48 marc
- * ChangeLog, ax_init_standard_project.m4, bootstrap.sh,
- build-in-docker.sh, certman.desktop.in, sql-to-dot.sed:
+ * [r17] ChangeLog, ax_init_standard_project.m4, bootstrap.sh,
+ build-in-docker.sh, certman.desktop.in[ADD], sql-to-dot.sed[ADD]:
buildsystem update
2015-11-16 12:37 marc
- * doc/doxyfile.in: SVG must not be interactive for embedding in
- redmine
+ * [r16] doc/doxyfile.in:
+ SVG must not be interactive for embedding in redmine
2015-11-09 12:52 marc
- * ax_init_standard_project.m4, bootstrap.sh, debian/control.in,
- resolve-debbuilddeps.sh: fixed build dependencies
+ * [r15] ax_init_standard_project.m4, bootstrap.sh,
+ debian/control.in, resolve-debbuilddeps.sh:
+ fixed build dependencies
2015-11-07 10:47 marc
- * bootstrap.sh: there is no qt4-default
+ * [r14] bootstrap.sh:
+ there is no qt4-default
2015-11-07 09:23 marc
- * bootstrap.sh, debian/control.in: there is no qt4-default
+ * [r13] bootstrap.sh, debian/control.in:
+ there is no qt4-default
2015-11-06 23:58 marc
- * debian/control.in: fixed dependencies
+ * [r12] debian/control.in:
+ fixed dependencies
2015-11-05 09:47 marc
- * ax_init_standard_project.m4, bootstrap.sh, build-in-docker.sh,
- resolve-debbuilddeps.sh: updated build system
+ * [r11] ax_init_standard_project.m4, bootstrap.sh,
+ build-in-docker.sh[ADD], resolve-debbuilddeps.sh:
+ updated build system
2015-11-05 09:07 marc
- * doc/doxyfile.in: doxygen should not build search engine, it's
- awful in embedded redmine
+ * [r10] doc/doxyfile.in:
+ doxygen should not build search engine, it's awful in embedded
+ redmine
2015-11-04 06:27 marc
- * debian/control.in: update dependencies
+ * [r9] debian/control.in:
+ update dependencies
2015-11-03 23:05 marc
- * debian/control.in: set section
+ * [r8] debian/control.in:
+ set section
2015-11-03 22:05 marc
- * AUTHORS: AUTHOR updated to new homepage
+ * [r7] AUTHORS:
+ AUTHOR updated to new homepage
2015-11-03 14:33 marc
- * ChangeLog, ax_check_qt.m4, ax_init_standard_project.m4,
- bootstrap.sh, resolve-debbuilddeps.sh: prepared for build in a
- docker instance on jenkins
+ * [r6] ChangeLog, ax_check_qt.m4, ax_init_standard_project.m4,
+ bootstrap.sh, resolve-debbuilddeps.sh:
+ prepared for build in a docker instance on jenkins
2015-10-09 15:02 marc
- * src/certman.hxx: typo
+ * [r5] src/certman.hxx:
+ typo
2015-10-08 16:37 marc
- * doc/screenshots, doc/screenshots/openfromurl.png: added
- screenshot
+ * [r4] doc/screenshots[ADD], doc/screenshots/openfromurl.png[ADD]:
+ added screenshot
2015-10-08 14:38 marc
- * COPYING, ChangeLog, INSTALL, src/certificate.hxx,
- src/certificate.ui, src/certman.hxx, src/certman.ui,
- src/certman_de.ts, src/certman_en.ts, src/certman_fr.ts,
- src/certman_it.ts, src/makefile.am, src/openfromurl.hxx,
- src/openfromurl.ui: first version to show an save certificates
- from files or urls
+ * [r3] COPYING[ADD], ChangeLog[ADD], INSTALL[ADD],
+ src/certificate.hxx[ADD], src/certificate.ui[ADD],
+ src/certman.hxx, src/certman.ui, src/certman_de.ts[ADD],
+ src/certman_en.ts[ADD], src/certman_fr.ts[ADD],
+ src/certman_it.ts[ADD], src/makefile.am,
+ src/openfromurl.hxx[ADD], src/openfromurl.ui[ADD]:
+ first version to show an save certificates from files or urls
2015-10-08 11:22 marc
- * AUTHORS, NEWS, README, ax_check_qt.m4,
- ax_cxx_compile_stdcxx_11.m4, ax_init_standard_project.m4,
- bootstrap.sh, build-resource-file.sh, certman.spec.in,
- configure.ac, debian, debian/changelog.in, debian/compat,
- debian/control.in, debian/docs, debian/rules, doc,
- doc/doxyfile.in, doc/makefile.am, mac-create-app-bundle.sh,
- makefile.am, resolve-debbuilddeps.sh, resolve-rpmbuilddeps.sh,
- src, src/certman.hxx, src/certman.ui, src/languages.qrc,
- src/main.cxx, src/makefile.am, src/version.cxx, src/version.hxx:
+ * [r2] AUTHORS[ADD], NEWS[ADD], README[ADD], ax_check_qt.m4[ADD],
+ ax_cxx_compile_stdcxx_11.m4[ADD],
+ ax_init_standard_project.m4[ADD], bootstrap.sh[ADD],
+ build-resource-file.sh[ADD], certman.spec.in[ADD],
+ configure.ac[ADD], debian[ADD], debian/changelog.in[ADD],
+ debian/compat[ADD], debian/control.in[ADD], debian/docs[ADD],
+ debian/rules[ADD], doc[ADD], doc/doxyfile.in[ADD],
+ doc/makefile.am[ADD], mac-create-app-bundle.sh[ADD],
+ makefile.am[ADD], resolve-debbuilddeps.sh[ADD],
+ resolve-rpmbuilddeps.sh[ADD], src[ADD], src/certman.hxx[ADD],
+ src/certman.ui[ADD], src/languages.qrc[ADD], src/main.cxx[ADD],
+ src/makefile.am[ADD], src/version.cxx[ADD], src/version.hxx[ADD]:
bootstrapped qt project
2015-10-08 08:50 marc
- * .: structure
+ * [r1] .[ADD]:
+ structure
diff --git a/ax_cxx_compile_stdcxx_11.m4 b/ax_cxx_compile_stdcxx_11.m4
index af37acd..4c831e0 100644
--- a/ax_cxx_compile_stdcxx_11.m4
+++ b/ax_cxx_compile_stdcxx_11.m4
@@ -4,12 +4,16 @@
#
# SYNOPSIS
#
+# AX_REQUIRE_STDCXX_11
+# AX_REQUIRE_STDCXX_14
# AX_CXX_COMPILE_STDCXX_11([ext|noext],[mandatory|optional])
+# AX_CXX_COMPILE_STDCXX_14([ext|noext],[mandatory|optional])
#
# DESCRIPTION
#
# Check for baseline language coverage in the compiler for the C++11
-# standard; if necessary, add switches to CXXFLAGS to enable support.
+# or C++14 standard; if necessary, add switches to CXXFLAGS to
+# enable support.
#
# The first argument, if specified, indicates whether you insist on an
# extended mode (e.g. -std=gnu++11) or a strict conformance mode (e.g.
@@ -131,3 +135,97 @@ AC_DEFUN([AX_CXX_COMPILE_STDCXX_11], [dnl
AC_SUBST(HAVE_CXX11)
fi
])
+
+AC_DEFUN([AX_CXX_COMPILE_STDCXX_14], [dnl
+ m4_if([$1], [], [],
+ [$1], [ext], [],
+ [$1], [noext], [],
+ [m4_fatal([invalid argument `$1' to AX_CXX_COMPILE_STDCXX_14])])dnl
+ m4_if([$2], [], [ax_cxx_compile_cxx14_required=true],
+ [$2], [mandatory], [ax_cxx_compile_cxx14_required=true],
+ [$2], [optional], [ax_cxx_compile_cxx14_required=false],
+ [m4_fatal([invalid second argument `$2' to AX_CXX_COMPILE_STDCXX_14])])dnl
+ AC_LANG_PUSH([C++])dnl
+ ac_success=no
+ AC_CACHE_CHECK(whether $CXX supports C++14 features by default,
+ ax_cv_cxx_compile_cxx14,
+ [AC_COMPILE_IFELSE([AC_LANG_SOURCE([_AX_CXX_COMPILE_STDCXX_11_testbody])],
+ [ax_cv_cxx_compile_cxx14=yes],
+ [ax_cv_cxx_compile_cxx14=no])])
+ if test x$ax_cv_cxx_compile_cxx14 = xyes; then
+ ac_success=yes
+ fi
+
+ m4_if([$1], [noext], [], [dnl
+ if test x$ac_success = xno; then
+ for switch in -std=gnu++14 -std=gnu++0y; do
+ cachevar=AS_TR_SH([ax_cv_cxx_compile_cxx14_$switch])
+ AC_CACHE_CHECK(whether $CXX supports C++14 features with $switch,
+ $cachevar,
+ [ac_save_CXXFLAGS="$CXXFLAGS"
+ CXXFLAGS="$CXXFLAGS $switch"
+ AC_COMPILE_IFELSE([AC_LANG_SOURCE([_AX_CXX_COMPILE_STDCXX_11_testbody])],
+ [eval $cachevar=yes],
+ [eval $cachevar=no])
+ CXXFLAGS="$ac_save_CXXFLAGS"])
+ if eval test x\$$cachevar = xyes; then
+ CXXFLAGS="$CXXFLAGS $switch"
+ ac_success=yes
+ break
+ fi
+ done
+ fi])
+
+ m4_if([$1], [ext], [], [dnl
+ if test x$ac_success = xno; then
+ for switch in -std=c++14 -std=c++0y; do
+ cachevar=AS_TR_SH([ax_cv_cxx_compile_cxx14_$switch])
+ AC_CACHE_CHECK(whether $CXX supports C++14 features with $switch,
+ $cachevar,
+ [ac_save_CXXFLAGS="$CXXFLAGS"
+ CXXFLAGS="$CXXFLAGS $switch"
+ AC_COMPILE_IFELSE([AC_LANG_SOURCE([_AX_CXX_COMPILE_STDCXX_11_testbody])],
+ [eval $cachevar=yes],
+ [eval $cachevar=no])
+ CXXFLAGS="$ac_save_CXXFLAGS"])
+ if eval test x\$$cachevar = xyes; then
+ CXXFLAGS="$CXXFLAGS $switch"
+ ac_success=yes
+ break
+ fi
+ done
+ fi])
+ AC_LANG_POP([C++])
+ if test x$ax_cxx_compile_cxx14_required = xtrue; then
+ if test x$ac_success = xno; then
+ AC_MSG_ERROR([*** A compiler with support for C++14 language features is required.])
+ fi
+ else
+ if test x$ac_success = xno; then
+ HAVE_CXX14=0
+ AC_MSG_NOTICE([No compiler with C++14 support was found])
+ AX_CXX_COMPILE_STDCXX_11([$1], [optional])
+ else
+ HAVE_CXX11=1
+ HAVE_CXX14=1
+ AC_DEFINE(HAVE_CXX14,1,
+ [define if the compiler supports basic C++14 syntax])
+ AC_DEFINE(HAVE_CXX11,1,
+ [define if the compiler supports basic C++14 syntax])
+ fi
+ AC_SUBST(HAVE_CXX11)
+ AC_SUBST(HAVE_CXX14)
+ fi
+])
+
+AC_DEFUN([AX_REQUIRE_STDCXX_11], [
+ if test x${HAVE_CXX11} != x1; then
+ AC_MSG_ERROR([*** A compiler with support for C++11 language features is required.])
+ fi
+])
+
+AC_DEFUN([AX_REQUIRE_STDCXX_14], [
+ if test x${HAVE_CXX14} != x1; then
+ AC_MSG_ERROR([*** A compiler with support for C++14 language features is required.])
+ fi
+])
diff --git a/ax_init_standard_project.m4 b/ax_init_standard_project.m4
index 4128d9f..b54f205 100644
--- a/ax_init_standard_project.m4
+++ b/ax_init_standard_project.m4
@@ -7,7 +7,7 @@
m4_define([mrw_esyscmd_s], [m4_normalize(m4_esyscmd([$1]))])
# define least version number from subversion's revision number:
-# it is taken modulo 256 due to a bug on Apple's MacOSX
+# it is taken modulo 256 due to a bug on Apple's MaxOSX
m4_define(x_least, m4_ifdef([x_least_fix], [x_least_fix],
m4_ifdef([x_least_diff],
mrw_esyscmd_s([
@@ -36,10 +36,7 @@ m4_define(x_least, m4_ifdef([x_least_fix], [x_least_fix],
fi
done
# Mac does not support LEAST > 255
- echo $ECHO_N $(($VCS_REVISION%256))
- ])
- )
-))
+ echo $ECHO_N $(($VCS_REVISION%256))]))))
# define version number from subversion's revision number:
# it is taken modulo 256 due to a bug on Apple's MacOSX
@@ -57,8 +54,8 @@ m4_define(x_minor_diff, m4_ifdef([x_least_fix], 0, mrw_esyscmd_s([
fi;
done
# Mac does not support LEAST > 255
- echo $ECHO_N $(($VCS_REVISION/256))
-])))
+ echo $ECHO_N $(($VCS_REVISION/256))])))
+
# setup version number
m4_define(x_version, [x_major.m4_ifdef([x_least_diff], x_minor, m4_eval(x_minor+x_minor_diff)).m4_eval(m4_ifdef([x_least_diff], [x_least-x_least_diff], [x_least]))])
@@ -129,7 +126,7 @@ AC_DEFUN([AX_SUBST], [
# m4_define(x_minor, MINOR_NUMBER) # project's minor version
# m4_include(ax_init_standard_project.m4)
# AC_INIT(x_package_name, x_version, x_bugreport, x_package_name)
-# AM_INIT_AUTOMAKE([1.9 tar-pax])
+# AM_INIT_AUTOMAKE([1.9 tar-pax parallel-tests color-tests])
# AX_INIT_STANDARD_PROJECT
#
# you change nothing but: YOUR_PACKAGE_NAME, MAJOR_NUMBER, MINOR_NUMBER
@@ -140,6 +137,8 @@ AC_DEFUN([AX_INIT_STANDARD_PROJECT], [
AX_SUBST(PREFIX)
SYSCONFDIR=$(test "$prefix" = NONE && prefix=$ac_default_prefix; eval echo "${sysconfdir}")
AX_SUBST(SYSCONFDIR)
+ PKGSYSCONFDIR=$(test "$prefix" = NONE && prefix=$ac_default_prefix; eval echo "${SYSCONFDIR}/${PACKAGE_NAME}")
+ AX_SUBST(PKGSYSCONFDIR)
DATADIR=$(test "$prefix" = NONE && prefix=$ac_default_prefix; eval echo "${datadir}")
AX_SUBST(DATADIR)
PKGDATADIR=$(test "$prefix" = NONE && prefix=$ac_default_prefix; eval echo "${DATADIR}/${PACKAGE_NAME}")
@@ -170,15 +169,61 @@ AC_DEFUN([AX_INIT_STANDARD_PROJECT], [
AM_CPPFLAGS+=" '-DMAKE_STRING(X)=\#X' '-DNAMESPACE=${PACKAGE_TARNAME//[^a-zA-Z0-9]/_}'"
AX_SUBST(NUMBERS)
AX_SUBST(HOME)
- README=$(tail -n +3 README)
+ if test -f README.md; then
+ README=$(tail -n +3 README.md)
+ DESCRIPTION=$(head -1 README.md)
+ else
+ README=$(tail -n +3 README)
+ DESCRIPTION=$(head -1 README)
+ fi
+ README_ESCAPED=$(echo "$README" | sed ':a;N;$!ba;s/\n/\\n/g;s,",\\",g')
+ if which pandoc 2>&1 > /dev/null; then
+ README_HTML=$(echo "$README" | pandoc -f markdown_github -t html | sed ':a;N;$!ba;s,\\\(.\),\\\\\1,g;s/\n/\\n/g;s,",\\",g;s, ,\ \ ,g')
+ else
+ README_HTML="${README}"
+ fi
AX_SUBST(README)
_AM_SUBST_NOTMAKE([README])
- DESCRIPTION=$(head -1 README)
+ AX_SUBST(README_ESCAPED)
+ _AM_SUBST_NOTMAKE([README_ESCAPED])
+ AX_SUBST(README_HTML)
+ _AM_SUBST_NOTMAKE([README_HTML])
AX_SUBST(DESCRIPTION)
_AM_SUBST_NOTMAKE([DESCRIPTION])
+ LICENSE=$(echo $(head -1 COPYING))
+ AX_SUBST(LICENSE)
+ COPYING=$(.*,\1,')
+ PACKAGER=$(gpg -K --display-charset utf-8 --lock-never 2>/dev/null | sed -n 's,uid *\(\[[ultimate\]] *\)\?,,p' | head -1)
+ if test -z "${PACKAGER}"; then
+ PACKAGER="$AUTHOR"
+ fi
AX_SUBST(AUTHOR)
_AM_SUBST_NOTMAKE([AUTHOR])
+ AX_SUBST(AUTHOR_NAME)
+ AX_SUBST(AUTHOR_URL)
+ AX_SUBST(AUTHOR_MAIL)
+ AX_SUBST(PACKAGER)
+ PROJECT_URL="${PROJECT_URL:-${AUTHOR_URL}/projects/${PACKAGE_NAME}}"
+ SOURCE_DOWNLOAD="${SOURCE_DOWNLOAD:-${AUTHOR_URL}/downloads/${PACKAGE_NAME}}"
+ AX_SUBST(PROJECT_URL)
+ AX_SUBST(SOURCE_DOWNLOAD)
+ VENDOR=$((lsb_release -is 2>/dev/null || echo unknown) | tr ' ' '_')
+ AX_SUBST(VENDOR)
DISTRO=$(lsb_release -sc 2>/dev/null || uname -s 2>/dev/null)
AX_SUBST(DISTRO)
ARCH=$((@<:@@<:@ $(uname -sm) =~ 64 @:>@@:>@ && echo amd64) || (@<:@@<:@ $(uname -sm) =~ 'i?86' @:>@@:>@ && echo i386 || uname -sm))
@@ -242,6 +287,25 @@ AC_DEFUN([AX_INIT_STANDARD_PROJECT], [
else
AM_CPPFLAGS="${AM_CPPFLAGS} -DQT_NO_DEBUG_OUTPUT -DQT_NO_DEBUG"
fi
+
+ AC_ARG_WITH(gcov,
+ [AS_HELP_STRING([--with-gcov=FILE],
+ [enable gcov, set gcov file (defaults to gcov)])],
+ [GCOV="$enableval"], [GCOV="no"])
+ AM_CONDITIONAL(COVERAGE, test "$GCOV" != "no")
+ if test "$GCOV" != "no"; then
+ if test "$GCOV" == "yes"; then
+ GCOV=gcov
+ fi
+ AC_CHECK_PROG(has_gcov, [$GCOV], [yes], [no])
+ if test "$has_gcov" != "yes"; then
+ AC_MSG_ERROR([gcov: program $GCOV not found])
+ fi
+ AC_MSG_NOTICE([Coverage tests enabled, using ${GCOV}]);
+ AM_CXXFLAGS="${AM_CXXFLAGS:-} -O0 --coverage -fprofile-arcs -ftest-coverage"
+ AM_LDFLAGS="${AM_LDFLAGS} -O0 --coverage -fprofile-arcs"
+ AX_SUBST(GCOV)
+ fi
if test -f ${PACKAGE_NAME}.desktop.in; then
AC_CONFIG_FILES([${PACKAGE_NAME}.desktop])
@@ -273,7 +337,7 @@ EOF
AC_DEFUN([AX_USE_CXX], [
m4_include(ax_cxx_compile_stdcxx_11.m4)
AC_LANG(C++)
- AX_CXX_COMPILE_STDCXX_11(noext, optional)
+ AX_CXX_COMPILE_STDCXX_14(noext, optional)
AC_PROG_CXX
AC_PROG_CPP
@@ -362,7 +426,7 @@ EOF
# use this in configure.ac to support CppUnit for C++ unit tests
AC_DEFUN([AX_USE_CPPUNIT], [
- AM_PATH_CPPUNIT([1.0.0], [have_cppunit="yes"], [have_cppunit="no"])
+ PKG_CHECK_MODULES(CPPUNIT, cppunit, [have_cppunit="yes"], [have_cppunit="no"])
# infos and warnings
if test "$have_cppunit" = "no"; then
AC_MSG_WARN([Missing cppunit development library!
@@ -383,6 +447,47 @@ maintainer-clean-example-targets:
EOF
])
+# use this in configure.ac to support NodeJS
+AC_DEFUN([AX_USE_NODEJS], [
+ AC_PATH_PROG(ANDROID, [android], [0],
+ [${PATH}${PATH_SEPARATOR}${ANDROID_HOME}/tools])
+ AC_CONFIG_FILES([nodejs/package.json])
+ AC_CONFIG_FILES([nodejs/makefile])
+ AX_ADD_MAKEFILE_TARGET_DEP([maintainer-clean-am], [maintainer-clean-nodejs-targets], [nodejs/makefile.in])
+ test -f nodejs/makefile.in && cat >> nodejs/makefile.in <> cordova/makefile.in <> doc/makefile.in <> doc/makefile.in <Perl DocumentationPerl Documentation
" > perldoc/index.html
+ for p in \${PERL_SOURCES:%=perldoc/%}; do \
+ echo '- '"\$\${p#perldoc/}"'
' >> perldoc/index.html; \
+ done
+ echo "