aboutsummaryrefslogtreecommitdiffstats
path: root/lang/python/Makefile.am (unfollow)
Commit message (Collapse)AuthorFilesLines
2025-02-03python: Remove Python bindingsIngo Klöcker1-112/+0
* README: Update. * configure.ac: Remove checks, variables and file generations related to the Python bindings. Remove python from available_languages and default_languages. * lang/Makefile.am (DIST_SUBDIRS): Remove python. * lang/python: Remove. * m4/ax_pkg_swig.m4, m4/ax_python_devel.m4, m4/python.m4: Remove. -- The Python bindings have been moved to a separate Git repository: gpgmepy. GnuPG-bug-id: 7262
2024-12-04build,python: Fix uninstalling in distcheckIngo Klöcker1-1/+1
* lang/python/Makefile.am (uninstall-local): Get platlib path relative to data path. -- For unknown reasons (at least on my system) Python 3.1x's sysconfig returns a platlib (== directory for site-specific, platform-specific files) starting with /usr/local although the prefix config variable is /usr. This broke uninstallation because a wrong folder was (tried to) remove. Python 2.7 and 3.9 return a platlib starting with just /usr. In order to always get the correct relative path we use the data path instead of the prefix config variable as anchor directory.
2024-05-29build,python: Fix make distcheck for Python 3.9+Ingo Klöcker1-2/+6
* lang/python/Makefile.am (uninstall-local): Remove installed .egg folders. -- Python 3.9+ install the module into a gpg-*.egg folder instead of in "gpg" with accompanying gpg-*.egg-info file. Moreover, Python 3.9+ normalize version numbers, e.g. the version 1.24.0_beta576 is normalized as 1.24.0b576.
2024-05-29build,python: Build Python bindings without distutilsBen Greiner1-1/+1
* 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
2023-05-30cpp,python: Respect --disable-gpg-test for testsBiswapriyo Nath1-1/+7
lang/cpp/Makefile.am (SUBDIRS): Depend tests in RUN_GPG_TESTS. lang/python/Makefile.am (SUBDIRS): Ditto. -- This is similar to the core and qt switch to disable the tests. Signed-off-by: Biswapriyo Nath <[email protected]> ChangeLog entries added by wk.
2019-05-06python: Make EXTRA_DIST files explicitAndre Heinecke1-5/+2
* configure.ac: Configure new Makefiles. * lang/python/Makefile.am: Remove dirs from extra dist and use subdirs. * lang/python/examples/Makefile.am, lang/python/src/Makefile.am, lang/python/doc/Makefile.am: New. Files that list EXTRA_DIST files. -- This is similar to what lang/js does by explicitly listing the files. This ensures that we have clean distribution tarballs without accidentall additions that just lay in the directory. GnuPG-Bug-Id: T4481
2018-11-16Add SPDX identifiers to most source filesWerner Koch1-1/+2
-- Signed-off-by: Werner Koch <[email protected]>
2018-10-18doc: use https:// for www.gnu.orgDaniel Kahn Gillmor1-1/+1
-- Signed-off-by: Daniel Kahn Gillmor <[email protected]>
2018-10-05build: Move config.h to conf/config.hWerner Koch1-1/+1
* conf/: New dir. * configure.ac (AC_CONFIG_HEADER): Move header to conf dir. * doc/Makefile.am (mkdefsinc): Adjust rule. * lang/python/Makefile.am (copystamp): Ditto. -- C++ uses those stupid files without a suffix and thus the new standard header <version> as included by newer other libc++ versions may conflict with the VERSION file in out top directory. This change should solve the problem. GnuPG-bug-id: 4168 Signed-off-by: Werner Koch <[email protected]>
2018-10-04python: makefilesBen McGinnes1-4/+1
* doc/Makefile.am: Removed a bit I forgot about. * Renamed lang/python/docs to lang/python/doc bvecause apparently automake cares about that too. * Decided to be extra explicit in the manifest because if I don't then all sorts of things get deleted ... like lang/python * Tested on an external linux system just in case my osx workstation introduces too much weirdness. Tested-by: Ben McGinnes <[email protected]> Signed-off-by: Ben McGinnes <[email protected]>
2018-10-04python: make fileBen McGinnes1-1/+0
* lang/python/Makefile.am: Attempting to remove the docs/meta directory did a lot worse than I thought it was doing, so better to just be sure the documentation is available than destroy the entire bindings directory. Tested-by: Ben McGinnes <[email protected]> Signed-off-by: Ben McGinnes <[email protected]>
2018-10-04python: make fileBen McGinnes1-1/+2
* lang/python/Makefile.am: Now that gpg2 has been renamed back to gpg and gpg1 is semi-deprecated, we should check what the actual gpg binary is with gpgconf and use that rather than make assumptions per system. * Also, it means less worry if gpg3 is ever a thing. (Trust me, I remember the Python 1 to 2 transition as well as the current 2 to 3 transition). ;) Signed-off-by: Ben McGinnes <[email protected]>
2018-10-03docs: pythonBen McGinnes1-0/+5
* More restructuring. Also the painstaking task of deciphering some of the more eclectic aspects of Texinfo and make.
2017-04-11python: use autoconf pre-processor when building via autoconfAlon Bar-Lev1-0/+4
* configure.ac: Add AC_PROG_CPP. * lang/python/Makefile.am: Set CPP environment for setup.py to use. Signed-off-by: Alon Bar-Lev <[email protected]>
2017-04-10python: Prune CLEANFILES.Justus Winter1-3/+1
-- Fixes-commit: e7d9c0c3d773f826dbd2ed417d04e25c410f3374 Signed-off-by: Justus Winter <[email protected]>
2017-04-10python: Fix distcheck.Justus Winter1-2/+2
* lang/python/Makefile.am (uninstall-local): Explicitly request the scheme 'posix_prefix'. On Python2.7 the default scheme is 'posix_local', breaking distcheck. Fixes-commit: 25e6444b3f4601c7821beab06bc4520deacb007b Signed-off-by: Justus Winter <[email protected]>
2017-04-10python: Remove usage of PYTHON_VERSIONSAlon Bar-Lev1-12/+11
* configure.ac: Remove PYTHON_VERSIONS subst. * lang/python/Makefile.am: Use basename of python as builddir prefix. * lang/python/tests/run-tests.py: Likewise. -- Two variables needs be at sync PYTHONS and PYTHON_VERSIONS, these may go out of sync in some cases, for example in Gentoo where default python is 3.4 we get: PYTHON='/usr/bin/python2' PYTHONS='/usr/bin/python /usr/bin/python2' PYTHON_VERSIONS='2.7 3.4' We can use the basename of the python interpreter to achieve similar effect without having to sync indexes between these two variables. Signed-off-by: Alon Bar-Lev <[email protected]>
2017-04-07python: simplify build, some fixupsAlon Bar-Lev1-26/+12
* lang/python/gpg/version.py.in: Rename to lang/python/version.py.in. configure.ac: Generate version.py.in in lang/python. * lang/python/MANIFEST.in: Include version.py explicitly. * lang/python/gpg: Rename to 'src'. * lang/python/Makefile.am: Do not copy source files, do not use absolute directories, support lib64 in uninstall, clean also dist directory, use symlink for gpg src. * lang/python/setup.py.in: Use builddir, copy sources into builddir, copy version.py into module. -- Simplify build to symlink the gpg sources into builddir instead of copying. This requires handling of version.py as generated file. In addition apply some cleanups: Drop the absolution pathes, clean the dist directory as well, support lib64 for sitelib at uninstall. Signed-off-by: Alon Bar-Lev <[email protected]>
2017-04-05python: Fix vpath builds, fix distcheck.Justus Winter1-8/+23
* lang/python/gpgme-h-clean.py: Delete file. * lang/python/MANIFEST.in: Adapt accordingly. * lang/python/Makefile.am (EXTRA_DIST): Likewise. (COPY_FILES_GPG): Bring variable back. (copystamp): Copy files. (clean-local): Delete copied files. (install-exec-local): Do not create and install list of installed files. (uninstall-local): Instead, create some explicit rules to uninstall the extension. * lang/python/setup.py.in: Parse arguments. Locate files either in the source directory, or in the build base directory. Inline the code from 'gpgme-h-clean.py'. Copy 'helpers.c', add source directory as include directory. Fixes-commit: 801d7d8c5dd530d26ad6c4bcc94d986e6e022da4 Signed-off-by: Justus Winter <[email protected]>
2017-04-05python: Generate files into build directoryAlon Bar-Lev1-52/+27
* lang/python/setup.py.in: Generate files within BuildExtFirstHack adjust build flags at this point instead of global. * lang/python/Makefile.am: Remove logic of separate source directory per python version in favor of build directory. * lang/python/tests/run-tests.py: Adjust build directory location. -- Generate files into build directory, leaving the source directory clean. Use the same source directory for multiple python version build. Result of 'prepare' target is a standard distutil layout that can be used easily by downstream to build all python targets in-place. Signed-off-by: Alon Bar-Lev <[email protected]>
2017-03-29python,build: Reinstate prepare target.Alon Bar-Lev1-10/+15
* lang/python/Makefile.am: Fix 'prepare' target. * lang/python/setup.py.in: Use 'abs_top_builddir' instead of guessing the path. -- 'prepare' will prepare target at PREPAREDIR. The automake integration will also make use of prepare target. Downstream distributors may also make use of prepare target. Signed-off-by: Alon Bar-Lev <[email protected]>
2017-03-14python: Improve build system integration.Justus Winter1-11/+10
* lang/python/Makefile.am: Use 'set -e' when chaining shell commands together in rules. Signed-off-by: Justus Winter <[email protected]>
2017-02-15python: Fix build system integration.Justus Winter1-15/+16
* lang/python/Makefile.am (copystamp): Also copy the setup script, and link the header files. (all-local): Use local setup script. (sdist): Fix Python source distribution creation. (CLEANFILES): Remove now obsolete files. (install-exec-local): Use local setup script. * lang/python/setup.py.in: Adjust relative paths to in-tree files. Fixes-commit: fe65a26ab584bd70fad45c7c4d44330e30a748a4 Signed-off-by: Justus Winter <[email protected]>
2017-02-13python: Use one copy of the source tree per Python version.Justus Winter1-16/+21
* lang/python/Makefile.am (copystamp): Create one copy per Python version. (all-local): Adapt. (clean-local): Likewise. (install-exec-local): Likewise. * lang/python/tests/run-tests.py: Likewise. -- Currently, we use one copy of the Python module's source to build for all Python versions. This is problematic, because SWIG writes a wrapper file into the source tree. Currently, this file works with both Python 2 and 3, but this is purely by chance. Improve the situation by creating one copy per Python version so that SWIG can write version-specific code into each copy. Signed-off-by: Justus Winter <[email protected]>
2016-11-25python: Fix removing the TOFU database.Justus Winter1-1/+1
* lang/python/Makefile.am (CLEANFILES): Move 'tofu.db'... * lang/python/tests/Makefile.am (CLEANFILES): ... here. Fixes-commit: 9b22f82afc5518961e4bea1fc516b79800e379a2 Signed-off-by: Justus Winter <[email protected]>
2016-11-25tests: Remove tofu.db.Justus Winter1-1/+1
* lang/python/Makefile.am (CLEANFILES): Add 'tofu.db'. * tests/gpg/Makefile.am (CLEANFILES): Likewise. Signed-off-by: Justus Winter <[email protected]>
2016-10-31python: Rename Python module from PyME to gpg.Daniel Kahn Gillmor1-22/+22
This follows weeks of discussion on the gnupg-devel mailing list. Hopefully it will make it easier for people using Python to use GnuPG in the future. Signed-off-by: Daniel Kahn Gillmor <[email protected]>
2016-10-14python: Call ln(1) in a portable way.Werner Koch1-2/+2
* lang/python/Makefile.am: Specify target dir for ln. Signed-off-by: Werner Koch <[email protected]>
2016-09-30python: Link 'data.h' and 'config.h' into the builddir.Alon Bar-Lev1-5/+10
* lang/python/Makefile.am: Link to the files. * lang/python/gpgme.i: Update path. * lang/python/setup.py.in: Do not add the top builddir to the include path. -- To make it easy to build the subpackage using standard tools without altering environment or CFLAGS, symlink the required artifacts from source tree into subpackage directory when preparing sources. Signed-off-by: Alon Bar-Lev <[email protected]>
2016-09-30python: Add 'prepare' target.Alon Bar-Lev1-0/+3
* lang/python/Makefile.am: Add 'prepare' target. -- This enables preparing the package using autoconf then build using distutils as separate stage. Signed-off-by: Alon Bar-Lev <[email protected]>
2016-09-26python: Include 'config.h'.Justus Winter1-0/+1
* lang/python/Makefile.am: Pass 'top_builddir' to 'setup.py'. * lang/python/gpgme.i: Include 'config.h'. * lang/python/helpers.c: Likewise. * lang/python/helpers.h: Likewise. * lang/python/setup.py.in: Make sure that 'config.h' can be found. -- Fixes build on 32 bit platforms with large file support. Signed-off-by: Justus Winter <[email protected]>
2016-09-21python: Create install dir.Werner Koch1-0/+1
* lang/python/Makefile.am (install-exec-local): Create dir. Signed-off-by: Werner Koch <[email protected]>
2016-09-20tests: Make "make -j distcheck" work in Python.Werner Koch1-1/+1
* lang/python/Makefile.am (SUBDIRS): Make current dir fist. * lang/python/tests/Makefile.am (xcheck): Depend on pubring-stamp. (CLEANFILES): Remove private-keys-v1.d/gpg-sample.stamp. (check-local): Remove. (initial.py): Remove dependency. (./pubring-stamp): Depend on conf files and the private-keys-v1.d/gpg-sample.stamp file. Also replace use of basename. -- This addresses the problem that two rules might run the private keys copy rule and due to the files being chmod -w during make discheck the second process running that rule's cp would get a permission error. Signed-off-by: Werner Koch <[email protected]>
2016-09-20tests: Improve portability.Werner Koch1-2/+2
* lang/qt/tests/Makefile.am (clean-local): Avoid non-portable "--" * lang/python/Makefile.am (copystamp): Use well defined cp -R instead of cp -r. Signed-off-by: Werner Koch <[email protected]>
2016-09-14python: Build for both Python2 and Python3.Justus Winter1-5/+13
* NEWS: Update. * configure.ac: Check for multiple Python versions. * lang/python/Makefile.am: Build and install for both Python versions. * lang/python/tests/Makefile.am: Test both versions. * lang/python/tests/run-tests.py: New test runner. Signed-off-by: Justus Winter <[email protected]>
2016-08-02python: Fix build system integration.Justus Winter1-3/+17
* lang/python/Makefile.am: Be more careful when cleaning the build directory, we must not delete the generated file 'pyme/version.py'. Signed-off-by: Justus Winter <[email protected]>
2016-07-28python: Rename compiled SWIG module.Justus Winter1-1/+1
Avoid the name pygpgme, as this is the name of another popular Python binding for GPGME. This commit renames the compiled Python module produced by SWIG. * lang/python/Makefile.am: Rename the compiled Python module. * lang/python/gpgme.i: Likewise. * lang/python/pyme/core.py: Likewise. * lang/python/pyme/errors.py: Likewise. * lang/python/pyme/util.py: Likewise. * lang/python/pyme/version.py.in: Likewise. * lang/python/setup.py.in: Likewise. Signed-off-by: Justus Winter <[email protected]>
2016-07-28python: Expose less functions to the Python world.Justus Winter1-2/+2
* lang/python/Makefile.am (EXTRA_DIST, COPY_FILES): Add new file. * lang/python/gpgme.i: Include new file and add comments. * lang/python/helpers.c: Include new file. * lang/python/helpers.h: Move functions we do not need to expose... * lang/python/private.h: ... here. Signed-off-by: Justus Winter <[email protected]>
2016-07-12python: Improve python packaging.Justus Winter1-2/+8
* lang/python/Makefile.am: Sign source releases, and upload them. * lang/python/setup.py.in: Add categories. Signed-off-by: Justus Winter <[email protected]>
2016-07-11python: Fix distcheck.Justus Winter1-0/+2
* lang/python/Makefile.am (EXTRA_DIST): Add missing files. Signed-off-by: Justus Winter <[email protected]>
2016-07-11python: Enable out-of-tree build of pyme bindings.Justus Winter1-16/+12
* lang/python/MANIFEST.in: Update manifest template. * lang/python/Makefile.am: Copy more files, move generation of files to Python build script, add 'sdist' target to build a Python source distribution. * lang/python/gpgme-h-clean.py: Add code to build 'errors.i'. * lang/python/setup.py.in: Generate files, enable out-of-tree builds. Signed-off-by: Justus Winter <[email protected]>
2016-07-07python: Fix distcheck.Justus Winter1-4/+17
* lang/python/INSTALL: Drop obsolete file. * lang/python/Makefile.am (EXTRA_DIST): Add missing files. (CLEANFILES): Remove generated files. (clean-local): Fix permissions of copied files. * lang/python/tests/Makefile.am (TESTS): Use our own setup and teardown scripts. (EXTRA_DIST): Add missing files. * lang/python/tests/final.py: New file. * lang/python/tests/initial.py: Likewise. Signed-off-by: Justus Winter <[email protected]>
2016-06-16python: Avoid creating SWIG proxy classes.Justus Winter1-1/+1
* lang/python/Makefile.am (gpgme_wrap.c): Use '-builtin' to make SWIG generate builtin types for c types. * lang/python/gpgme.i (pygpgme_wrap_gpgme_data_t): Adapt slightly. Signed-off-by: Justus Winter <[email protected]>
2016-06-16python: Wrap objects implementing the buffer protocol.Justus Winter1-1/+1
* lang/python/Makefile.am: Add the toplevel source directory to CFLAGS when compiling the bindings so that we can use private header files. * lang/python/gpgme.i (gpgme_data_t): Rework the object wrapping. Do not create a Python wrapper object, merely a gpgme_data_t object, and keep references to buffer objects, if any. If necessary, update the buffer after the function call. (pygpgme_wrap_gpgme_data_t): New function. * lang/python/helpers.c (object_to_gpgme_data_t): Rework object wrapping. Also wrap objects implementing the buffer protocol. * lang/python/helpers.h (object_to_gpgme_data_t): Update prototype. (pygpgme_wrap_gpgme_data_t): New prototype. * lang/python/tests/t-idiomatic.py: Demonstrate this. Signed-off-by: Justus Winter <[email protected]>
2016-06-16python: Improve the documentation.Justus Winter1-2/+7
* lang/python/Makefile.am: Copy the README file. * lang/python/README: Rename, convert to org, and update. * lang/python/pyme/__init__.py: Move license out of the docstring, update docstring. * lang/python/pyme/core.py: Add and update docstrings. Signed-off-by: Justus Winter <[email protected]>
2016-06-16python: Get version information from the build system.Justus Winter1-2/+3
* configure.ac: Generate 'setup.py' and 'version.py'. * lang/python/Makefile.am: Use generated setup script. * lang/python/pyme/version.py: Turn it into a template, and get version information from the build system. Also drop some variables. * lang/python/setup.py: Likewise. This way we can avoid importing the version module, which is frowned upon and actually caused a problem. Signed-off-by: Justus Winter <[email protected]>
2016-06-16python: Fix license.Justus Winter1-3/+3
Other parts of the build system are also LGPLed. * lang/python/Makefile.am: Fix license. Signed-off-by: Justus Winter <[email protected]>
2016-06-08python: Fix stripping deprecated functionality.Justus Winter1-1/+1
* lang/python/Makefile.am (gpgme.h): Add script as input. * lang/python/gpgme-h-clean.py (deprec_func): Also match struct members. (line_break): Fix matching on struct members. Signed-off-by: Justus Winter <[email protected]>
2016-06-01python: Improve build system integration, fix warnings.Justus Winter1-1/+1
* lang/python/Makefile.am: Pass CFLAGS to python build system. * lang/python/helpers.c (pyPassphraseCb): Use correct type for length. (pygpgme_data_new_from_cbs): Drop unused variable. Signed-off-by: Justus Winter <[email protected]>
2016-05-31python: use GPG_ERROR_CONFIG variableTobias Mueller1-1/+1
instead of calling gpg-error-config. This is useful when configuring with --with-gpgerror-prefix because then GPG_ERROR_CONFIG contains the correct /path/to/bin/gpg-error-config whereas calling gpg-error-config directly would look in the user's PATH (and not in the prefix where gpg-error-config was installed). Signed-off-by: Justus Winter <[email protected]>