[packages/python3-pycairo] - restored setup.py from upstream git + changes making it work properly
hawk
hawk at pld-linux.org
Tue Jul 16 07:59:45 CEST 2013
commit 3678fc75b020a4170c15def6bb7551136ca3efd8
Author: Marcin Krol <hawk at tld-linux.org>
Date: Tue Jul 16 06:08:28 2013 +0000
- restored setup.py from upstream git + changes making it work properly
pycairo-setup.patch | 131 ++++++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 131 insertions(+)
---
diff --git a/pycairo-setup.patch b/pycairo-setup.patch
new file mode 100644
index 0000000..32890d8
--- /dev/null
+++ b/pycairo-setup.patch
@@ -0,0 +1,131 @@
+diff -urN pycairo-1.10.0.orig/setup.py pycairo-1.10.0/setup.py
+--- pycairo-1.10.0.orig/setup.py 1970-01-01 00:00:00.000000000 +0000
++++ pycairo-1.10.0/setup.py 2013-07-16 05:59:25.414054186 +0000
+@@ -0,0 +1,127 @@
++#!/usr/bin/env python
++
++import distutils.core as dic
++import distutils.dir_util as dut
++import distutils.file_util as fut
++import distutils.sysconfig as dsy
++import io
++import os
++import subprocess
++import sys
++
++pycairo_version = '1.10.0'
++cairo_version_required = '1.10.1'
++python_version_required = (3,1)
++pkgconfig_file = 'py3cairo.pc'
++config_file = 'src/config.h'
++
++LIBDIR = os.uname ()[-1] == 'x86_64' and 'lib64' or 'lib'
++
++def call(command):
++ pipe = subprocess.Popen(command, shell=True,
++ stdout=subprocess.PIPE,
++ stderr=subprocess.PIPE)
++ pipe.wait()
++ return pipe
++
++def pkg_config_version_check(pkg, version):
++ check = '%s >= %s' % (pkg, version)
++ pipe = call("pkg-config --print-errors --exists '%s'" % (check,))
++ if pipe.returncode == 0:
++ print(check, ' Successful')
++ else:
++ print(check, ' Failed')
++ raise SystemExit(pipe.stderr.read().decode())
++
++def pkg_config_parse(opt, pkg):
++ check = "pkg-config %s %s" % (opt, pkg)
++ pipe = call("pkg-config %s %s" % (opt, pkg))
++ if pipe.returncode != 0:
++ print(check, ' Failed')
++ raise SystemExit(pipe.stderr.read().decode())
++
++ output = pipe.stdout.read()
++ output = output.decode() # get the str
++ opt = opt[-2:]
++ return [x.lstrip(opt) for x in output.split()]
++
++
++def createPcFile(PcFile):
++ print('creating %s' % PcFile)
++ with open(PcFile, 'w') as fo:
++ fo.write ("""\
++prefix=%s
++
++Name: Pycairo
++Description: Python 3 bindings for cairo
++Version: %s
++Requires: cairo
++Cflags: -I${prefix}/include/pycairo
++Libs:
++""" % (sys.prefix, pycairo_version)
++ )
++
++def createConfigFile(ConfigFile):
++ print('creating %s' % ConfigFile)
++ v = pycairo_version.split('.')
++
++ with open(ConfigFile, 'w') as fo:
++ fo.write ("""\
++// Configuration header created by setup.py - do not edit
++#ifndef _CONFIG_H
++#define _CONFIG_H 1
++
++#define PYCAIRO_VERSION_MAJOR %s
++#define PYCAIRO_VERSION_MINOR %s
++#define PYCAIRO_VERSION_MICRO %s
++#define VERSION "%s"
++
++#endif // _CONFIG_H
++""" % (v[0], v[1], v[2], pycairo_version)
++ )
++
++
++if sys.version_info < python_version_required:
++ raise SystemExit('Error: Python >= %s is required' %
++ (python_version_required,))
++
++pkg_config_version_check ('cairo', cairo_version_required)
++if sys.platform == 'win32':
++ runtime_library_dirs = []
++else:
++ runtime_library_dirs = pkg_config_parse('--libs-only-L', 'cairo')
++
++createPcFile(pkgconfig_file)
++createConfigFile(config_file)
++
++
++cairo = dic.Extension(
++ name = 'cairo._cairo',
++ sources = ['src/cairomodule.c',
++ 'src/context.c',
++ 'src/font.c',
++ 'src/matrix.c',
++ 'src/path.c',
++ 'src/pattern.c',
++ 'src/surface.c',
++ ],
++ include_dirs = pkg_config_parse('--cflags-only-I', 'cairo'),
++ library_dirs = pkg_config_parse('--libs-only-L', 'cairo'),
++ libraries = pkg_config_parse('--libs-only-l', 'cairo'),
++ runtime_library_dirs = runtime_library_dirs,
++ )
++
++dic.setup(
++ name = "pycairo",
++ version = pycairo_version,
++ description = "python interface for cairo",
++ ext_modules = [cairo],
++ package_dir = {'cairo': 'src'},
++ packages = ['cairo'],
++ data_files = [
++ ('include/pycairo', ['src/py3cairo.h']),
++ (LIBDIR + '/pkgconfig', [pkgconfig_file]),
++ (os.path.join(dsy.get_python_lib(True, False), 'cairo'),
++ ['src/__init__.py']),
++ ],
++ )
================================================================
---- gitweb:
http://git.pld-linux.org/gitweb.cgi/packages/python3-pycairo.git/commitdiff/f81391f74f4c36da47adf2a8f4699d8cc2907808
More information about the pld-cvs-commit
mailing list