Commit Graph

173 Commits

Author SHA1 Message Date
Christian Hohnstaedt
c53aabbbdf Issue #300: Extend documentation about database extraction 2022-02-11 22:28:31 +01:00
Christian Hohnstädt
06fbe10d24 cmake: fixup undefined variables
Remove unused variables, define variables for all platforms
and fix typo
2022-01-03 20:03:31 +01:00
Christian Hohnstädt
3f5930a4f3 cmake: use BYPRODUCTS keyword to make ninja work
this also automatically sets the GENERATED flag.
2021-12-29 12:09:15 +01:00
Christian Hohnstaedt
eea60e7904 Silence sphinx output and avoid duplicate sphinx output 2021-11-20 12:23:37 +01:00
Christian Hohnstädt
4a30db9671 Improve dependencies in cmake files and add sensible defaults
Add custom-targets, dependencies and "Generated" properties
to fix race conditions.

Add default paths for my setup on Windows
and MacOSX
2021-11-20 10:55:30 +01:00
Christian Hohnstaedt
d73d4ccd51 Windows MSI: Improve WXS file creation with cmake
The long list of translations and html documentation
pages is now auto-generated by the cmake files,
which know the translations and html files. (DRY)

TODO: Windows SQL drivers for mysql and psql
2021-11-13 23:51:04 +01:00
Christian Hohnstaedt
25d2fdabb2 Fix and improve building help and documentation
- Always build html documentation if sphinx-build is available.
  to be installable during install
- Collect "${D}/qthelp/xca.qhc" "${D}/qthelp/xca.qch" in QTHELP_IDX
  and use this instead.
- On linux also install the qthelp in an html subdirectory like WIN32
- Don't instanciate QHelpEngine if no help available.
2021-11-13 14:49:02 +01:00
Christian Hohnstaedt
48bed71f79 Enable-disable PEM comment checkbox 2021-11-13 13:38:51 +01:00
Christian Hohnstaedt
36e02374ff Put XcaWarningBox on the stack not on the heap 2021-10-24 20:32:12 +02:00
Christian Hohnstädt
30e9568278 Merge remote-tracking branch 'github/master' into main
gzip command moved from doc/Makefile to doc/CMakeLists.txt
2021-10-24 15:09:58 +02:00
Christian Hohnstädt
ac506c83c2 cmake: Build successfully, even without qthelp and qtcollgen 2021-09-24 07:22:56 +02:00
Christian Hohnstaedt
64cd58ef96 Build sphinx documentation duting the default target 2021-09-18 08:53:15 +02:00
kpcyrd
9b4bc75fad Reproducible Builds: Don't embed timestamps in xca.1.gz 2021-07-26 20:46:20 +02:00
Christian Hohnstaedt
2f70cb13d2 doc/CMakeLists.txt: fix building the sphinx-qthelp
Get the output and dependencies right.
2021-06-02 21:49:33 +02:00
Christian Hohnstädt
76763ea98c cmake: include() the CMakeLists.txt file
instead of add_subdirectory() them.

in all subdirectories set ${S} and ${D}
as shortcuts for CMAKE_CURRENT_SOURCE_DIR
and CMAKE_CURRENT_BINARY_DIR
2021-06-01 17:48:38 +02:00
Christian Hohnstaedt
8cdc15aa39 Move database_schema.cpp from widgets to lib
there are no GUI elements in database_schema.cpp
2021-06-01 17:48:37 +02:00
Christian Hohnstaedt
915a920de8 cmake: Split CMakeLists.txt into the different sub directories
mv cmake/sphinx-documentation.cmake -> doc/CMakeLists.txt
2021-06-01 17:48:37 +02:00
Christian Hohnstaedt
9c49c9949f Consolidate and document used environment variables
Rename XCA_SPECIAL to XCA_ARGUMENTS, which is less generic.

and change %1_OPTIONS to XCA_%1_OPTIONS to prefix all
XCA related environment variables with "XCA_".
2021-06-01 17:48:37 +02:00
Christian Hohnstädt
68273d0a30 Switch from autotools/qmake to cmake
Why?
 - QT will switch from qmake to cmake sooner or later.
 - autotools are good for unix-ish systems, cmake also for
   macOS and Xcode as well as Windows and VS-code
 - Cross compiling the windows-binaries on linux
   is not very helpful to attract windows-centric
   developers.

Also drop qmake's xca.pro
Generate man-page and sphinx sources of commandline arguments
during build by executing xca (xcadoc.cpp).
Generating Version-patchlevel and git hash is now also
OS independent.
2021-06-01 17:48:37 +02:00
Christian Hohnstädt
184220e617 Fixup typo: extend the underline of Download
doc/sphinx/miscellaneous.rst:39: WARNING: Title underline too short.
2021-06-01 17:25:36 +02:00
PF4Public
2c1cdde7b3
typo 2021-06-01 16:52:43 +03:00
Christian Hohnstaedt
57802580c8 Drop backward-compatibility for old(<2.0.0) XCA databases 2021-05-10 20:41:12 +02:00
Christian Hohnstaedt
957bdbaa72 Put release related files into an own sub-directory
git.release.something ->
   Create any git release with a tag to test package (debian/rpm) build

git.release -> Create required changes and tags for the next release
git.publish -> Finalize the release (github release)
gen-binary-hash / binary-hashes.json -> keep track of release hashes
2021-05-09 12:22:53 +02:00
Christian Hohnstädt
63d1a465d3 changelog.html: Special html changelog for the web site 2021-05-08 13:15:51 +02:00
Christian Hohnstaedt
dea42e8d1f Minor documentation update 2021-05-07 22:08:34 +02:00
Christian Hohnstädt
d7cc443ce8 Synchronize divergated icons on several platforms
The certificate has the greatest recognition value.
Even though it is not ideal on very small scale.
2021-04-30 16:27:19 +02:00
Christian Hohnstädt
298c53bfb9 Fix build (ignore documentation) if sphinx is not available
Extend Travis to build with and without sphinx
2021-04-29 08:02:09 +02:00
Christian Hohnstaedt
b907103975 Update documentation 2021-04-28 22:27:04 +02:00
Christian Hohnstaedt
f17811b59a Improve make dependencies 2021-04-28 22:27:04 +02:00
Christian Hohnstädt
8c04bc2b27 Rename PACKAGE_VERSION to XCA_VERSION
For an official release XCA_VERSION == PACKAGE_VERSION.
For any additional commit, XCA_VERSION's path-level is increased.

PACKAGE_VERSION cannot be modified after initially set.
Change any occurance of PACKAGE_VERSION by XCA_VERSION
2021-04-26 10:10:23 +02:00
Christian Hohnstädt
7a05d5623d Change versioning schema: drop iteration counter
The patchlevel will be increased by the iteration counter,
which is the number of commits since the most recent annotated tag.

Tagged version 1.2.3 in VERSION will be called "1.2.3"
3 commits later it will be 1.2.6
2021-04-24 23:16:36 +02:00
Christian Hohnstädt
05db6b5b77 Adapt build methods for Apple developer account
Use Apple developer certificates for code signing and
prepare DMG for notarization.

Tweak the app to match the App Store requirements
Add an entitlements.plist
  com.apple.security.app-sandbox: true
  com.apple.security.network.client: true
  com.apple.security.files.user-selected.read-write: true
2021-04-24 23:16:36 +02:00
Christian Hohnstaedt
90cd685fde Improve documentation generation out-of-tree
Copy files (database-schema, COPYRIGHT, changelog)
to the destination directory

Name all documentation files and qthelp files explicitly
instead of using wildcards
2021-04-23 15:57:32 +02:00
Christian Hohnstaedt
ff7704ff0b Add context sensitive documentation
All dialogs get the "Qt::WindowModal" modality to
operate the Help window in parallel
while also blocking the dialog parent windows.

The manageRevocations() moved from model to view

The Details dialogs become more self-sufficient.
There is a statc start method that shows the dialog and
updates name and comment after accept().
This allows recursive starts of certificate details and
independence of mainwin.
It is necessary to set the current toplevel widget as parent
for the next dialog to not block the application.
2021-04-23 15:50:13 +02:00
Christian Hohnstaedt
d53d64d23d Transform XCA documentation from SGML to sphinx
linuxdoc is pretty outdated, while sphinx is really cool:

 - Sphinx is modern with a broad user base
 - The generated documentation is themeable
 - The sphinx-source is much more readable than the
   SGML-tag scattered linuxdoc.
 - The different topics can be splitted into different files
 - It can be converted to qt-context sensitive help
 - It supports syntax highlighting for the SQL database documentation
 - It is supported on MacOSX,because it is python-based.

Drop code2html perl-script, which was used to colorize the SQL schema.
Generate "doc/arguments.rst" with XCA_MAN="rst" ./xca
2021-04-09 17:36:03 +02:00
Christian Hohnstädt
497e4a6120 Extend Password input by filedescriptor number and automatic man page
Also extend the documentation about the password.
Automatically generate the man page from the options.

Call xca as "XCA_MAN=1 ./xca" to print the current man-page options
2020-10-14 19:48:18 +02:00
Christian Hohnstaedt
c00e4b84df Merge branch 'master' into develop 2020-04-08 20:39:03 +02:00
Christian Hohnstaedt
6a61ba2825 Update date and version in documentation 2020-04-07 21:52:29 +02:00
Christian Hohnstaedt
9c55caf82f Merge branch 'master' into develop 2020-03-23 06:53:06 +01:00
Dan Church
223ba3f5e7
Use DESTDIR instead of destdir when installing
Follows autotools convention.
2020-03-22 12:59:46 -05:00
Christian Hohnstaedt
113a201d39 Separate database from Mainwin for better cmdline support
New classes:
 - database_model: Manage the database tables (keys, req, cert, crl, templ)
   extracted from widgets/MW_database.cpp
 - arguments: parse commandline, dynamically create help text
2020-03-11 07:19:56 +01:00
Christian Hohnstaedt
bd35c66b6f Prepare release 2.2.1 2020-01-30 20:54:12 +01:00
Christian Hohnstaedt
4f8f0715e2 Default templates now support OpenVPN
Support "remote-cert-tls" client/server
2020-01-14 19:47:19 +01:00
Christian Hohnstaedt
62051eac6e Update changelog and pre-compiled documentation 2020-01-13 07:26:46 +01:00
Christian Hohnstaedt
2fbadfc9f0 Update Copyright Years to 2020 2020-01-13 07:26:46 +01:00
Christian Hohnstaedt
31943c507d Update version numbers 2019-12-15 06:40:21 +01:00
Christian Hohnstaedt
5b0a57ec59 Update documentation 2018-08-19 08:57:29 +02:00
Christian Hohnstaedt
c74ce35f72 Update precompiled documentation 2018-07-10 05:52:33 +02:00
Christian Hohnstaedt
a4ab98464c Close #47: macOS: preference directory does not match one in docs/oids.txt
Update the path and add a generic note about the paths shown
in the About dialog of the application.
2018-06-29 18:28:30 +02:00
Christian Hohnstaedt
5ff5d77d68 Update changelog and xca.sgml 2018-06-25 21:20:25 +02:00