gpgme/lang/python/doc
Ben Greiner 5844d9e700
build,python: Build Python bindings without distutils
* m4/python.m4: Add python3.12 and 3.11 as valid interpreters, remove
EOL 3.4, 3.5, 3.7 (keep 3.6 because some distributions still ship and
maintain it).
* lang/python/Makefile.am (clean-local): Remove dist and gpg.egg-info
created by Python 3.9+ on make install.
* lang/python/setup.py.in: switch from distutils to setuptools where
possible, remove obsolete and deprecated -py3 option of swig, add
classifiers up to 3.12, remove 3.4, 3.5, 3.7.
* lang/python/doc/src/gpgme-python-howto.org: replace distutils with
setuptools
* lang/python/examples/howto/advanced/cython/setup.py: replace distutils
with setuptools
--

This fixes building the Python bindings for Python 3.12 where distutils
has been removed.

Based on D545
2024-05-29 17:04:10 +02:00
..
meta spelling: fix misspellings 2018-11-08 12:34:27 +07:00
rst python: doc: Remove generated files, put rules in Makefile. 2019-07-12 14:53:55 +09:00
src build,python: Build Python bindings without distutils 2024-05-29 17:04:10 +02:00
texinfo python,doc: Fix typos in documentation and source code comments 2023-10-13 09:22:36 +02:00
Makefile.am python: Fix how to generate documentation. 2019-11-06 10:30:16 +09:00
README docs: python bindings 2018-11-06 16:22:50 +11:00

GPGME Python Bindings Documentation
===================================

As the GPGME Python bindings exist in two worlds within the FOSS
universe, it's always had a little issue with regards to its
documentation and specifically to the format of it.  The GnuPG
Project, like much of the rest of the GNU Project, uses Texinfo to
build its documentation.  While the actual format used to write and
edit that documentation is Org mode.  Largely because most, if not
all, of the GnuPG developers use GNU Emacs for much of their work.

The Python world, however, utilises reStructuredText almost
universally.  This in turn is used by Sphinx or Docutils directly to
build the documentation.

Each has various advantages for their own ecisystems, but this part of
the GnuPG effort is aimed at both sides.  So, long story short, this
documentation is provided as both Texinfo and reStructuredText files.

This docs directory contains four main subdirectories:

 1. meta
 2. src
 3. rst
 4. texinfo

The Meta directory is for docs that are not intended for distribution
or are about the docs themselves.  The sole exception being this
README file.

The Src directory is where the original edited files are, from which
the following two formats are generated initially.  Most, if not all,
of these are written in Org Mode.

The ReST directory contains reStructuredText files which have been
converted to that format from the Org Mode files via Pandoc.

The Texinfo directory contains Texinfo files which have been exported
to that format from the Org Mode files by Org Mode itself within GNU
Emacs.

Those latter two directories should then be used by their respective
build systems to produce the various output file formats they normally
do.  They should not spill out into this parent directory.
Particularly since it is quite possible, perhaps even likely, that
alternatives to both of them may be added to this parent documentation
directory at some future point.