Tue, 16 Apr 2019 19:43:53 +0200
setup.py: continued implementing support for setup.py.
6946
660757d6c57b
setup.py: started implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
1 | #!/usr/bin/env python3 |
660757d6c57b
setup.py: started implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
2 | # -*- coding: utf-8 -*- |
660757d6c57b
setup.py: started implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
3 | |
6949
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
4 | # Copyright (c) 2019 Detlev Offenbach <detlev@die-offenbachs.de> |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
5 | # |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
6 | |
6950
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
7 | """ |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
8 | Module to prepare a distribution package for uploading to PyPI. |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
9 | """ |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
10 | |
6949
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
11 | from __future__ import unicode_literals |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
12 | |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
13 | import os |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
14 | import sys |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
15 | import subprocess |
6950
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
16 | import shutil |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
17 | import fnmatch |
6949
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
18 | |
6946
660757d6c57b
setup.py: started implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
19 | from setuptools import setup, find_packages |
6949
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
20 | from distutils.command.install_data import install_data |
6946
660757d6c57b
setup.py: started implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
21 | |
6949
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
22 | ###################################################################### |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
23 | ## some helper functions below |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
24 | ###################################################################### |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
25 | |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
26 | def getVersion(): |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
27 | """ |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
28 | Function to get the version from file. |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
29 | |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
30 | @return string containing the version |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
31 | @rtype str |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
32 | """ |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
33 | version = "<unknown>" |
6950
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
34 | if sys.argv[-1].startswith(("1", "2")): |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
35 | # assume it is a version info starting with year |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
36 | version = sys.argv[-1] |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
37 | del sys.argv[-1] |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
38 | else: |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
39 | # calculate according our version scheme (year.month) |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
40 | import datetime |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
41 | today = datetime.date.today() |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
42 | version = "{0}.{1}".format(today.year - 2000, today.month) |
6949
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
43 | return version |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
44 | |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
45 | |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
46 | def getPackageData(package, extensions): |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
47 | """ |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
48 | Function to return data files of a package with givene extensions. |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
49 | |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
50 | @param package name of the package directory |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
51 | @type str |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
52 | @param extensions list of extensions to test for |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
53 | @type list of str |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
54 | @return list of package data files |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
55 | @rtype list of str |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
56 | """ |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
57 | filesList = [] |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
58 | for dirpath, _dirnames, filenames in os.walk(package): |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
59 | for fname in filenames: |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
60 | if not fname.startswith('.') and \ |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
61 | os.path.splitext(fname)[1] in extensions: |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
62 | filesList.append( |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
63 | os.path.relpath(os.path.join(dirpath, fname), package)) |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
64 | return filesList |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
65 | |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
66 | def getDataFiles(): |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
67 | """ |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
68 | Return data_files in a platform dependent manner |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
69 | """ |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
70 | if sys.platform.startswith('linux'): |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
71 | dataFiles = [ |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
72 | ('share/applications', [ |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
73 | 'linux/eric6.desktop', |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
74 | 'linux/eric6_browser.desktop', |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
75 | ]), |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
76 | ('share/icons', [ |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
77 | 'eric6/icons/default/eric.png', |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
78 | 'eric6/icons/default/ericWeb48.png' |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
79 | ]), |
6950
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
80 | ('share/appdata', ['linux/eric6.appdata.xml']), |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
81 | ('share/metainfo', ['linux/eric6.appdata.xml']), |
6949
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
82 | ] |
6950
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
83 | elif sys.platform.startswith(("win", "cygwin")): |
6949
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
84 | dataFiles = [ |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
85 | ('scripts', [ |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
86 | 'eric6/pixmaps/eric6.ico', |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
87 | 'eric6/pixmaps/ericWeb48.ico']) |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
88 | ] |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
89 | else: |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
90 | dataFiles = [] |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
91 | return dataFiles |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
92 | |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
93 | ###################################################################### |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
94 | ## make Linux detect eric6 desktop files |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
95 | ###################################################################### |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
96 | |
6950
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
97 | class Eric6InstallDataWrapper(install_data): |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
98 | """ |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
99 | Class providing an install_data command wrapper to perform |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
100 | post-installation tasks. |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
101 | """ |
6949
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
102 | def run(self): |
6950
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
103 | """ |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
104 | Public method to perform the data installation. |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
105 | """ |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
106 | # do the distutils install_data first |
6949
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
107 | install_data.run(self) |
6950
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
108 | |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
109 | # now perform our post installation stuff |
6949
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
110 | if sys.platform.startswith('linux'): |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
111 | try: |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
112 | subprocess.call(['update-desktop-database']) |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
113 | except: |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
114 | print("ERROR: unable to update desktop database", |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
115 | file=sys.stderr) |
6950
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
116 | |
6949
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
117 | CmdClass = { |
6950
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
118 | 'install_data': Eric6InstallDataWrapper, |
6949
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
119 | } |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
120 | |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
121 | ###################################################################### |
6950
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
122 | ## functions to prepare the sources for building |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
123 | ###################################################################### |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
124 | |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
125 | def prepareInfoFile(fileName, version): |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
126 | """ |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
127 | Function to prepare an Info.py file when installing from source. |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
128 | |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
129 | @param fileName name of the Python file containing the info (string) |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
130 | @param version version string for the package (string) |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
131 | """ |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
132 | if not fileName: |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
133 | return |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
134 | |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
135 | try: |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
136 | os.rename(fileName, fileName + ".orig") |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
137 | except EnvironmentError: |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
138 | pass |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
139 | try: |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
140 | hgOut = subprocess.check_output(["hg", "identify", "-i"]) |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
141 | if sys.version_info[0] == 3: |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
142 | hgOut = hgOut.decode() |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
143 | except (OSError, subprocess.CalledProcessError): |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
144 | hgOut = "" |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
145 | if hgOut: |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
146 | hgOut = hgOut.strip() |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
147 | if hgOut.endswith("+"): |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
148 | hgOut = hgOut[:-1] |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
149 | f = open(fileName + ".orig", "r", encoding="utf-8") |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
150 | text = f.read() |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
151 | f.close() |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
152 | text = text.replace("@@REVISION@@", hgOut)\ |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
153 | .replace("@@VERSION@@", version) |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
154 | f = open(fileName, "w") |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
155 | f.write(text) |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
156 | f.close() |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
157 | else: |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
158 | shutil.copy(fileName + ".orig", fileName) |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
159 | |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
160 | |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
161 | def cleanupSource(dirName): |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
162 | """ |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
163 | Cleanup the sources directory to get rid of leftover files |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
164 | and directories. |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
165 | |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
166 | @param dirName name of the directory to prune (string) |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
167 | """ |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
168 | # step 1: delete all Ui_*.py files without a corresponding |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
169 | # *.ui file |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
170 | dirListing = os.listdir(dirName) |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
171 | for formName, sourceName in [ |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
172 | (f.replace('Ui_', "").replace(".py", ".ui"), f) |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
173 | for f in dirListing if fnmatch.fnmatch(f, "Ui_*.py")]: |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
174 | if not os.path.exists(os.path.join(dirName, formName)): |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
175 | os.remove(os.path.join(dirName, sourceName)) |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
176 | if os.path.exists(os.path.join(dirName, sourceName + "c")): |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
177 | os.remove(os.path.join(dirName, sourceName + "c")) |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
178 | |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
179 | # step 2: delete the __pycache__ directory and all remaining *.pyc files |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
180 | if os.path.exists(os.path.join(dirName, "__pycache__")): |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
181 | shutil.rmtree(os.path.join(dirName, "__pycache__")) |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
182 | for name in [f for f in os.listdir(dirName) |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
183 | if fnmatch.fnmatch(f, "*.pyc")]: |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
184 | os.remove(os.path.join(dirName, name)) |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
185 | |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
186 | # step 3: delete *.orig files |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
187 | for name in [f for f in os.listdir(dirName) |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
188 | if fnmatch.fnmatch(f, "*.orig")]: |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
189 | os.remove(os.path.join(dirName, name)) |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
190 | |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
191 | # step 4: descent into subdirectories and delete them if empty |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
192 | for name in os.listdir(dirName): |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
193 | name = os.path.join(dirName, name) |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
194 | if os.path.isdir(name): |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
195 | cleanupSource(name) |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
196 | if len(os.listdir(name)) == 0: |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
197 | os.rmdir(name) |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
198 | |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
199 | |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
200 | def __pyName(py_dir, py_file): |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
201 | """ |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
202 | Local function to create the Python source file name for the compiled |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
203 | .ui file. |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
204 | |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
205 | @param py_dir suggested name of the directory (string) |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
206 | @param py_file suggested name for the compile source file (string) |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
207 | @return tuple of directory name (string) and source file name (string) |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
208 | """ |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
209 | return py_dir, "Ui_{0}".format(py_file) |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
210 | |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
211 | |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
212 | def compileUiFiles(dirName): |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
213 | """ |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
214 | Compile the .ui files to Python sources. |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
215 | |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
216 | @param dirName name of the directory to compile UI files for (string) |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
217 | """ |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
218 | from PyQt5.uic import compileUiDir |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
219 | compileUiDir(dirName, True, __pyName) |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
220 | |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
221 | ###################################################################### |
6949
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
222 | ## setup() below |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
223 | ###################################################################### |
6946
660757d6c57b
setup.py: started implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
224 | |
6950
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
225 | Version = getVersion() |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
226 | sourceDir = os.path.join(os.path.dirname(__file__), "eric6") |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
227 | infoFileName = os.path.join(sourceDir, "UI", "Info.py") |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
228 | if sys.argv[1].startswith("bdist"): |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
229 | # prepare the sources under "eric6" for building the wheel file |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
230 | print("preparing the sources...") |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
231 | cleanupSource(sourceDir) |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
232 | compileUiFiles(sourceDir) |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
233 | prepareInfoFile(infoFileName, Version) |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
234 | print("Preparation finished") |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
235 | |
6946
660757d6c57b
setup.py: started implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
236 | setup( |
660757d6c57b
setup.py: started implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
237 | name="eric6", |
6950
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
238 | version=Version, |
6946
660757d6c57b
setup.py: started implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
239 | description="eric6 is an integrated development environment for the" |
660757d6c57b
setup.py: started implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
240 | " Python language.", |
660757d6c57b
setup.py: started implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
241 | long_description="eric6 is an integrated development environment for the" |
660757d6c57b
setup.py: started implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
242 | " Python language. It uses the PyQt5 bindings and the QScintilla2" |
6949
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
243 | " editor widget. See https://eric-ide.python-projects.org for more" |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
244 | " details.", |
6946
660757d6c57b
setup.py: started implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
245 | author="Detlev Offenbach", |
660757d6c57b
setup.py: started implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
246 | author_email="detlev@die-offenbachs.de", |
660757d6c57b
setup.py: started implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
247 | url="https://eric-ide.python-projects.org", |
6949
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
248 | project_urls={ |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
249 | "Source Code": "https://die-offenbachs.homelinux.org/hg/eric/", |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
250 | "Issues Tracker": "https://die-offenbachs.homelinux.org/issues/", |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
251 | }, |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
252 | platforms=["Linux", "Windows", "macOS"], |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
253 | license="GPLv3", |
6946
660757d6c57b
setup.py: started implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
254 | classifiers=[ |
660757d6c57b
setup.py: started implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
255 | "License :: OSI Approved :: GNU General Public License v3 (GPLv3)", |
660757d6c57b
setup.py: started implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
256 | "Environment :: MacOS X", |
660757d6c57b
setup.py: started implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
257 | "Environment :: Win32 (MS Windows)", |
660757d6c57b
setup.py: started implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
258 | "Environment :: X11 Applications", |
660757d6c57b
setup.py: started implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
259 | "Environment :: X11 Applications :: Qt", |
660757d6c57b
setup.py: started implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
260 | "Intended Audience :: Developers", |
660757d6c57b
setup.py: started implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
261 | "Intended Audience :: End Users/Desktop", |
660757d6c57b
setup.py: started implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
262 | "Natural Language :: English", |
660757d6c57b
setup.py: started implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
263 | "Natural Language :: German", |
660757d6c57b
setup.py: started implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
264 | "Natural Language :: Russian", |
660757d6c57b
setup.py: started implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
265 | "Natural Language :: Spanish", |
660757d6c57b
setup.py: started implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
266 | "Operating System :: MacOS :: MacOS X", |
660757d6c57b
setup.py: started implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
267 | "Operating System :: Microsoft :: Windows :: Windows 10", |
660757d6c57b
setup.py: started implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
268 | "Operating System :: POSIX :: Linux", |
660757d6c57b
setup.py: started implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
269 | "Programming Language :: Python", |
660757d6c57b
setup.py: started implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
270 | "Programming Language :: Python :: 2.7", |
660757d6c57b
setup.py: started implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
271 | "Programming Language :: Python :: 3.5", |
660757d6c57b
setup.py: started implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
272 | "Programming Language :: Python :: 3.6", |
660757d6c57b
setup.py: started implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
273 | "Programming Language :: Python :: 3.7", |
660757d6c57b
setup.py: started implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
274 | "Topic :: Software Development", |
660757d6c57b
setup.py: started implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
275 | "Topic :: Text Editors :: Integrated Development Environments (IDE)" |
660757d6c57b
setup.py: started implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
276 | ], |
660757d6c57b
setup.py: started implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
277 | keywords="Development PyQt5 IDE Python3", |
660757d6c57b
setup.py: started implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
278 | python_requires=">=3.5", |
660757d6c57b
setup.py: started implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
279 | install_requires=[ |
660757d6c57b
setup.py: started implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
280 | "PyQt5>=5.12.1", |
660757d6c57b
setup.py: started implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
281 | "PyQtWebEngine>=5.12.1", |
660757d6c57b
setup.py: started implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
282 | "QScintilla>=2.11.1", |
660757d6c57b
setup.py: started implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
283 | "pip", |
660757d6c57b
setup.py: started implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
284 | "docutils", |
660757d6c57b
setup.py: started implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
285 | "Markdown", |
6950
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
286 | "pywin32>=1.0;platform_system=='Windows'", |
6946
660757d6c57b
setup.py: started implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
287 | ], |
6949
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
288 | data_files=getDataFiles(), |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
289 | packages=find_packages(), |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
290 | zip_safe=False, |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
291 | package_data={ |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
292 | "": getPackageData( |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
293 | "eric6", |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
294 | [".png", ".svg", ".svgz", ".xpm", ".ico", ".gif", ".icns", ".txt", |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
295 | ".style", ".tmpl", ".html", ".qch", ".css", ".qss", ".e4h", |
6950
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
296 | ".e6h", ".api", ".bas" ".dat"] |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
297 | ) + ["i18n/eric6_de.qm", "i18n/eric6_en.qm", "i18n/eric6_es.qm", |
6949
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
298 | "i18n/eric6_ru.qm", |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
299 | ] |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
300 | }, |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
301 | entry_points={ |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
302 | "gui_scripts": [ |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
303 | "eric6 = eric6.eric6:main", |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
304 | "eric6_browser = eric6.eric6_browser:main", |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
305 | "eric6_compare = eric6.eric6_compare:main", |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
306 | "eric6_configure = eric6.eric6_configure:main", |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
307 | "eric6_diff = eric6.eric6_diff:main", |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
308 | "eric6_editor = eric6.eric6_editor:main", |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
309 | "eric6_hexeditor = eric6.eric6_hexeditor:main", |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
310 | "eric6_iconeditor = eric6.eric6_iconeditor:main", |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
311 | "eric6_plugininstall = eric6.eric6_plugininstall:main", |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
312 | "eric6_pluginrepository = eric6.eric6_pluginrepository:main", |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
313 | "eric6_pluginuninstall = eric6.eric6_pluginuninstall:main", |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
314 | "eric6_qregexp = eric6.eric6_qregexp:main", |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
315 | "eric6_qregularexpression = eric6.eric6_qregularexpression:main", |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
316 | "eric6_re = eric6.eric6_re:main", |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
317 | "eric6_shell = eric6.eric6_shell:main", |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
318 | "eric6_snap = eric6.eric6_snap:main", |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
319 | "eric6_sqlbrowser = eric6.eric6_sqlbrowser:main", |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
320 | "eric6_tray = eric6.eric6_tray:main", |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
321 | "eric6_trpreviewer = eric6.eric6_trpreviewer:main", |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
322 | "eric6_uipreviewer = eric6.eric6_uipreviewer:main", |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
323 | "eric6_unittest = eric6.eric6_unittest:main", |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
324 | ], |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
325 | "console_scripts":[ |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
326 | "eric6_api = eric6.eric6_api:main", |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
327 | "eric6_doc = eric6.eric6_doc:main", |
6950
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
328 | "eric6_post_install = eric6.eric6_post_install:main" |
6949
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
329 | ], |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
330 | }, |
a5255f1ba3f0
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6946
diff
changeset
|
331 | cmdclass=CmdClass, |
6946
660757d6c57b
setup.py: started implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
332 | ) |
6950
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
333 | |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
334 | if os.path.exists(infoFileName + ".orig"): |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
335 | try: |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
336 | os.remove(infoFileName) |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
337 | os.rename(infoFileName + ".orig", infoFileName) |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
338 | except EnvironmentError: |
62e39a353cd9
setup.py: continued implementing support for setup.py.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6949
diff
changeset
|
339 | pass |