1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165
|
Metadata-Version: 2.1
Name: pkgconfig
Version: 1.5.5
Summary: Interface Python with pkg-config
Home-page: https://github.com/matze/pkgconfig
License: MIT
Author: Matthias Vogelgesang
Author-email: matthias.vogelgesang@gmail.com
Requires-Python: >=3.3,<4.0
Classifier: Development Status :: 5 - Production/Stable
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.4
Classifier: Programming Language :: Python :: 3.5
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Topic :: Software Development :: Build Tools
Description-Content-Type: text/x-rst
pkgconfig
=========
.. image:: https://travis-ci.org/matze/pkgconfig.png?branch=master
:target: https://travis-ci.org/matze/pkgconfig
``pkgconfig`` is a Python module to interface with the ``pkg-config``
command line tool for Python 3.3+.
It can be used to
- find all pkg-config packages ::
>>> packages = pkgconfig.list_all()
- check if a package exists ::
>>> pkgconfig.exists('glib-2.0')
True
- check if a package meets certain version requirements ::
>>> pkgconfig.installed('glib-2.0', '< 2.26')
False
- return the version ::
>>> pkgconfig.modversion('glib-2.0')
'2.56.3'
- query CFLAGS and LDFLAGS ::
>>> pkgconfig.cflags('glib-2.0')
'-I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include'
>>> pkgconfig.libs('glib-2.0')
'-lglib-2.0'
- get all variables defined for a package::
>>> pkgconfig.variables('glib-2.0')
{u'exec_prefix': u'/usr'}
- parse the output to build extensions with setup.py ::
>>> d = pkgconfig.parse('glib-2.0 gtk+-2.0')
>>> d['libraries']
[u'gtk+-2.0', u'glib-2.0']
or ::
>>> ext = Extension('foo', ['foo.c'])
>>> # sets extension attributes as needed
>>> pkgconfig.configure_extension(ext, 'glib-2.0 gtk+-2.0')
The ``pkgconfig.parse`` function returns a dictonary of lists.
The lists returned are accurate representations of the equivalent
``pkg-config`` call's result, both in content and order.
If ``pkg-config`` is not on the path, raises ``EnvironmentError``.
The ``pkgconfig`` module is licensed under the MIT license.
Changelog
---------
Version 1.5.4
~~~~~~~~~~~~~
- Adjust pyproject.toml and drop Python 2 support
Version 1.5.3
~~~~~~~~~~~~~
- Add ``configure_extension`` API
Version 1.5.2
~~~~~~~~~~~~~
- Update poetry dep
- Improve CI
Version 1.5.0
~~~~~~~~~~~~~
- Use poetry instead of setuptools directly
- Fix #42: raise exception if package is missing
- Fix version parsing for openssl-like version numbers, fixes #32
- Fix #31: expose --modversion
- Fix #30: strip whitespace from variable names
Version 1.4.0
~~~~~~~~~~~~~
- Add boolean ``static`` keyword to output private libraries as well
- Raise original ``OSError`` as well
Version 1.3.1
~~~~~~~~~~~~~
- Fix compatibility problems with Python 2.6
Version 1.3.0
~~~~~~~~~~~~~
- Add variables() API to query defined variables
- Disable Python 3.2 and enable Python 3.5 and 3.6 tests
- Fix #16: handle spaces of values in .pc files correctly
Version 1.2.1 and 1.2.2
~~~~~~~~~~~~~~~~~~~~~~~
Bug fix releases released on December 1st and 2nd 2016.
- Include the ``data`` folder in the distribution in order to run tests
- Improve the tests
Version 1.2.0
~~~~~~~~~~~~~
Released on November 30th 2016.
- Potential break: switch from result set to list
- Expose --list-all query
- Added support for PKG_CONFIG environment variable
Version 1.1.0
~~~~~~~~~~~~~
Released on November 6th 2013.
- Multiple packages can now be parsed with a single call to ``.parse``.
Version 1.0.0
~~~~~~~~~~~~~
First release on September 8th 2013.
|