Mercurial > touhou
annotate setup.py @ 688:1adecaddf442
ecl_vm: implement SetBulletInterval and SetBulletIntervalEx.
author | Emmanuel Gil Peyrot <linkmauve@linkmauve.fr> |
---|---|
date | Sat, 17 Aug 2019 13:50:54 +0200 |
parents | 4fa0a8e7d941 |
children |
rev | line source |
---|---|
213
9bdf116bb2a5
Add a distutils setup and don’t hardcode DAT list.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff
changeset
|
1 # -*- encoding: utf-8 -*- |
9bdf116bb2a5
Add a distutils setup and don’t hardcode DAT list.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff
changeset
|
2 |
431
77c0e9a53795
Use cythonize in setup.py, also compile .py files, and entirely remove pyximport support.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
423
diff
changeset
|
3 import os |
77c0e9a53795
Use cythonize in setup.py, also compile .py files, and entirely remove pyximport support.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
423
diff
changeset
|
4 import sys |
213
9bdf116bb2a5
Add a distutils setup and don’t hardcode DAT list.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff
changeset
|
5 from distutils.core import setup |
9bdf116bb2a5
Add a distutils setup and don’t hardcode DAT list.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff
changeset
|
6 from distutils.extension import Extension |
513
5e3e0b09a531
Move the OpenGL backend to its own package.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
512
diff
changeset
|
7 from subprocess import check_output, CalledProcessError |
213
9bdf116bb2a5
Add a distutils setup and don’t hardcode DAT list.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff
changeset
|
8 |
218
9634eefd2063
Minor changes to the setup script
Thibaut Girka <thib@sitedethib.com>
parents:
213
diff
changeset
|
9 # Cython is needed |
213
9bdf116bb2a5
Add a distutils setup and don’t hardcode DAT list.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff
changeset
|
10 try: |
431
77c0e9a53795
Use cythonize in setup.py, also compile .py files, and entirely remove pyximport support.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
423
diff
changeset
|
11 from Cython.Build import cythonize |
213
9bdf116bb2a5
Add a distutils setup and don’t hardcode DAT list.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff
changeset
|
12 except ImportError: |
9bdf116bb2a5
Add a distutils setup and don’t hardcode DAT list.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff
changeset
|
13 print('You don’t seem to have Cython installed. Please get a ' |
451
c034570ac785
Give a friendlier error message if pkg-config isn’t found.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
450
diff
changeset
|
14 'copy from http://www.cython.org/ and install it.') |
213
9bdf116bb2a5
Add a distutils setup and don’t hardcode DAT list.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff
changeset
|
15 sys.exit(1) |
9bdf116bb2a5
Add a distutils setup and don’t hardcode DAT list.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff
changeset
|
16 |
218
9634eefd2063
Minor changes to the setup script
Thibaut Girka <thib@sitedethib.com>
parents:
213
diff
changeset
|
17 |
418
63f59be04a54
Replace Pyglet with SDL2 for window creation and events; disables framerate control/display and sound.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
237
diff
changeset
|
18 COMMAND = 'pkg-config' |
636
4fa0a8e7d941
Add a GLFW implementation of gui.Window.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
634
diff
changeset
|
19 GLFW_LIBRARIES = ['glfw3'] |
456
cae1ae9de430
Add native text support, MSG instructions 3 and 8, and text at the beginning of a stage.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
455
diff
changeset
|
20 SDL_LIBRARIES = ['sdl2', 'SDL2_image', 'SDL2_mixer', 'SDL2_ttf'] |
555
98380e4a0ee5
Switch to libepoxy instead of libGLEW, which will help with OpenGL portability.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
553
diff
changeset
|
21 GL_LIBRARIES = ['epoxy'] |
418
63f59be04a54
Replace Pyglet with SDL2 for window creation and events; disables framerate control/display and sound.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
237
diff
changeset
|
22 |
521
53129f3a54af
Add a debug option to enable HTML annotations, type inference display and profiling.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
515
diff
changeset
|
23 debug = False # True to generate HTML annotations and display infered types. |
522
e8496e5ba056
Add a compilation option to disable anmviewer.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
521
diff
changeset
|
24 anmviewer = False # It’s currently broken anyway. |
634
5270c34b4c00
Use the number of cores available for parallel compilation, instead of an hardcoded 4 threads.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
633
diff
changeset
|
25 nthreads = os.cpu_count() # How many processes to use for Cython compilation. |
619
39874a722b76
Use two passes for the module search, and clean it up so that pure Python modules don’t get compiled by default.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
608
diff
changeset
|
26 compile_everything = False # Maybe improve running time a bit by wasting a lot |
39874a722b76
Use two passes for the module search, and clean it up so that pure Python modules don’t get compiled by default.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
608
diff
changeset
|
27 # of CPU time during compilation, and disk space. |
541
8895ede4e51e
Fix Windows and OSX build by making pkg-config optional and assuming every dependency is available.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
528
diff
changeset
|
28 |
542
a09f6990eab4
Add a hack to prevent `setup.py clean` from compiling Cython files.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
541
diff
changeset
|
29 |
580
8a8c2e519637
Make setup.py chdir into our root directory, to prevent it to fail when called from elsewhere.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
576
diff
changeset
|
30 # Hack to move us to the correct build directory. |
8a8c2e519637
Make setup.py chdir into our root directory, to prevent it to fail when called from elsewhere.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
576
diff
changeset
|
31 os.chdir(os.path.join(os.getcwd(), os.path.dirname(__file__))) |
8a8c2e519637
Make setup.py chdir into our root directory, to prevent it to fail when called from elsewhere.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
576
diff
changeset
|
32 |
8a8c2e519637
Make setup.py chdir into our root directory, to prevent it to fail when called from elsewhere.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
576
diff
changeset
|
33 |
542
a09f6990eab4
Add a hack to prevent `setup.py clean` from compiling Cython files.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
541
diff
changeset
|
34 # Hack to prevent `setup.py clean` from compiling Cython files. |
576
f3778145d7e7
Allow setup.py to be called without arguments.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
572
diff
changeset
|
35 if len(sys.argv) > 1 and sys.argv[1] == 'clean': |
542
a09f6990eab4
Add a hack to prevent `setup.py clean` from compiling Cython files.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
541
diff
changeset
|
36 import shutil |
a09f6990eab4
Add a hack to prevent `setup.py clean` from compiling Cython files.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
541
diff
changeset
|
37 shutil.rmtree('build', ignore_errors=True) |
a09f6990eab4
Add a hack to prevent `setup.py clean` from compiling Cython files.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
541
diff
changeset
|
38 for directory, _, files in os.walk('pytouhou'): |
a09f6990eab4
Add a hack to prevent `setup.py clean` from compiling Cython files.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
541
diff
changeset
|
39 for filename in files: |
a09f6990eab4
Add a hack to prevent `setup.py clean` from compiling Cython files.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
541
diff
changeset
|
40 if filename.endswith('.c'): |
a09f6990eab4
Add a hack to prevent `setup.py clean` from compiling Cython files.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
541
diff
changeset
|
41 os.unlink(os.path.join(directory, filename)) |
a09f6990eab4
Add a hack to prevent `setup.py clean` from compiling Cython files.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
541
diff
changeset
|
42 sys.exit(0) |
a09f6990eab4
Add a hack to prevent `setup.py clean` from compiling Cython files.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
541
diff
changeset
|
43 |
a09f6990eab4
Add a hack to prevent `setup.py clean` from compiling Cython files.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
541
diff
changeset
|
44 |
562
991c817d1e6b
Fail when libepoxy can’t be found, pass --disable-opengl to skip the OpenGL backend compilation.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
555
diff
changeset
|
45 try: |
991c817d1e6b
Fail when libepoxy can’t be found, pass --disable-opengl to skip the OpenGL backend compilation.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
555
diff
changeset
|
46 sys.argv.remove('--disable-opengl') |
991c817d1e6b
Fail when libepoxy can’t be found, pass --disable-opengl to skip the OpenGL backend compilation.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
555
diff
changeset
|
47 except ValueError: |
991c817d1e6b
Fail when libepoxy can’t be found, pass --disable-opengl to skip the OpenGL backend compilation.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
555
diff
changeset
|
48 use_opengl = True |
991c817d1e6b
Fail when libepoxy can’t be found, pass --disable-opengl to skip the OpenGL backend compilation.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
555
diff
changeset
|
49 else: |
991c817d1e6b
Fail when libepoxy can’t be found, pass --disable-opengl to skip the OpenGL backend compilation.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
555
diff
changeset
|
50 use_opengl = False |
991c817d1e6b
Fail when libepoxy can’t be found, pass --disable-opengl to skip the OpenGL backend compilation.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
555
diff
changeset
|
51 |
991c817d1e6b
Fail when libepoxy can’t be found, pass --disable-opengl to skip the OpenGL backend compilation.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
555
diff
changeset
|
52 |
991c817d1e6b
Fail when libepoxy can’t be found, pass --disable-opengl to skip the OpenGL backend compilation.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
555
diff
changeset
|
53 # Check for epoxy.pc, and don’t compile the OpenGL backend if it isn’t present. |
991c817d1e6b
Fail when libepoxy can’t be found, pass --disable-opengl to skip the OpenGL backend compilation.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
555
diff
changeset
|
54 if use_opengl: |
991c817d1e6b
Fail when libepoxy can’t be found, pass --disable-opengl to skip the OpenGL backend compilation.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
555
diff
changeset
|
55 try: |
991c817d1e6b
Fail when libepoxy can’t be found, pass --disable-opengl to skip the OpenGL backend compilation.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
555
diff
changeset
|
56 check_output([COMMAND] + GL_LIBRARIES) |
991c817d1e6b
Fail when libepoxy can’t be found, pass --disable-opengl to skip the OpenGL backend compilation.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
555
diff
changeset
|
57 except CalledProcessError: |
991c817d1e6b
Fail when libepoxy can’t be found, pass --disable-opengl to skip the OpenGL backend compilation.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
555
diff
changeset
|
58 print('libepoxy not found. Please install it or pass --disable-opengl') |
991c817d1e6b
Fail when libepoxy can’t be found, pass --disable-opengl to skip the OpenGL backend compilation.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
555
diff
changeset
|
59 sys.exit(1) |
991c817d1e6b
Fail when libepoxy can’t be found, pass --disable-opengl to skip the OpenGL backend compilation.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
555
diff
changeset
|
60 except OSError: |
991c817d1e6b
Fail when libepoxy can’t be found, pass --disable-opengl to skip the OpenGL backend compilation.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
555
diff
changeset
|
61 # Assume GL is here if we can’t use pkg-config, but display a warning. |
991c817d1e6b
Fail when libepoxy can’t be found, pass --disable-opengl to skip the OpenGL backend compilation.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
555
diff
changeset
|
62 print('You don’t seem to have pkg-config installed. Please get a copy ' |
991c817d1e6b
Fail when libepoxy can’t be found, pass --disable-opengl to skip the OpenGL backend compilation.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
555
diff
changeset
|
63 'from http://pkg-config.freedesktop.org/ and install it.\n' |
991c817d1e6b
Fail when libepoxy can’t be found, pass --disable-opengl to skip the OpenGL backend compilation.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
555
diff
changeset
|
64 'Continuing without it, assuming every dependency is available.') |
991c817d1e6b
Fail when libepoxy can’t be found, pass --disable-opengl to skip the OpenGL backend compilation.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
555
diff
changeset
|
65 |
991c817d1e6b
Fail when libepoxy can’t be found, pass --disable-opengl to skip the OpenGL backend compilation.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
555
diff
changeset
|
66 |
541
8895ede4e51e
Fix Windows and OSX build by making pkg-config optional and assuming every dependency is available.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
528
diff
changeset
|
67 default_libs = { |
636
4fa0a8e7d941
Add a GLFW implementation of gui.Window.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
634
diff
changeset
|
68 'glfw3': '-lglfw', |
541
8895ede4e51e
Fix Windows and OSX build by making pkg-config optional and assuming every dependency is available.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
528
diff
changeset
|
69 'sdl2': '-lSDL2', |
8895ede4e51e
Fix Windows and OSX build by making pkg-config optional and assuming every dependency is available.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
528
diff
changeset
|
70 'SDL2_image': '-lSDL2_image', |
8895ede4e51e
Fix Windows and OSX build by making pkg-config optional and assuming every dependency is available.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
528
diff
changeset
|
71 'SDL2_mixer': '-lSDL2_mixer', |
8895ede4e51e
Fix Windows and OSX build by making pkg-config optional and assuming every dependency is available.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
528
diff
changeset
|
72 'SDL2_ttf': '-lSDL2_ttf', |
555
98380e4a0ee5
Switch to libepoxy instead of libGLEW, which will help with OpenGL portability.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
553
diff
changeset
|
73 'epoxy': '-lepoxy' |
541
8895ede4e51e
Fix Windows and OSX build by making pkg-config optional and assuming every dependency is available.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
528
diff
changeset
|
74 } |
521
53129f3a54af
Add a debug option to enable HTML annotations, type inference display and profiling.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
515
diff
changeset
|
75 |
228
8f4cd1c01d22
Add basic cx_Freeze support in order to freeze to a windows executable.
Thibaut Girka <thib@sitedethib.com>
parents:
226
diff
changeset
|
76 |
451
c034570ac785
Give a friendlier error message if pkg-config isn’t found.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
450
diff
changeset
|
77 def get_arguments(arg, libraries): |
c034570ac785
Give a friendlier error message if pkg-config isn’t found.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
450
diff
changeset
|
78 try: |
590
e15672733c93
Switch to Python 3.x instead of 2.7.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
580
diff
changeset
|
79 return check_output([COMMAND, arg] + libraries).decode().split() |
513
5e3e0b09a531
Move the OpenGL backend to its own package.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
512
diff
changeset
|
80 except CalledProcessError: |
5e3e0b09a531
Move the OpenGL backend to its own package.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
512
diff
changeset
|
81 # The error has already been displayed, just exit. |
5e3e0b09a531
Move the OpenGL backend to its own package.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
512
diff
changeset
|
82 sys.exit(1) |
451
c034570ac785
Give a friendlier error message if pkg-config isn’t found.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
450
diff
changeset
|
83 except OSError: |
541
8895ede4e51e
Fix Windows and OSX build by making pkg-config optional and assuming every dependency is available.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
528
diff
changeset
|
84 # We already said to the user pkg-config was suggested. |
8895ede4e51e
Fix Windows and OSX build by making pkg-config optional and assuming every dependency is available.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
528
diff
changeset
|
85 if arg == '--cflags': |
8895ede4e51e
Fix Windows and OSX build by making pkg-config optional and assuming every dependency is available.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
528
diff
changeset
|
86 return [] |
8895ede4e51e
Fix Windows and OSX build by making pkg-config optional and assuming every dependency is available.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
528
diff
changeset
|
87 return [default_libs[library] for library in libraries] |
451
c034570ac785
Give a friendlier error message if pkg-config isn’t found.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
450
diff
changeset
|
88 |
c034570ac785
Give a friendlier error message if pkg-config isn’t found.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
450
diff
changeset
|
89 |
636
4fa0a8e7d941
Add a GLFW implementation of gui.Window.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
634
diff
changeset
|
90 glfw_args = {'extra_compile_args': get_arguments('--cflags', GLFW_LIBRARIES), |
4fa0a8e7d941
Add a GLFW implementation of gui.Window.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
634
diff
changeset
|
91 'extra_link_args': get_arguments('--libs', GLFW_LIBRARIES)} |
541
8895ede4e51e
Fix Windows and OSX build by making pkg-config optional and assuming every dependency is available.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
528
diff
changeset
|
92 sdl_args = {'extra_compile_args': get_arguments('--cflags', SDL_LIBRARIES), |
8895ede4e51e
Fix Windows and OSX build by making pkg-config optional and assuming every dependency is available.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
528
diff
changeset
|
93 'extra_link_args': get_arguments('--libs', SDL_LIBRARIES)} |
513
5e3e0b09a531
Move the OpenGL backend to its own package.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
512
diff
changeset
|
94 |
541
8895ede4e51e
Fix Windows and OSX build by making pkg-config optional and assuming every dependency is available.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
528
diff
changeset
|
95 if use_opengl: |
8895ede4e51e
Fix Windows and OSX build by making pkg-config optional and assuming every dependency is available.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
528
diff
changeset
|
96 opengl_args = {'extra_compile_args': get_arguments('--cflags', GL_LIBRARIES + SDL_LIBRARIES), |
8895ede4e51e
Fix Windows and OSX build by making pkg-config optional and assuming every dependency is available.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
528
diff
changeset
|
97 'extra_link_args': get_arguments('--libs', GL_LIBRARIES + SDL_LIBRARIES)} |
513
5e3e0b09a531
Move the OpenGL backend to its own package.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
512
diff
changeset
|
98 |
5e3e0b09a531
Move the OpenGL backend to its own package.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
512
diff
changeset
|
99 |
619
39874a722b76
Use two passes for the module search, and clean it up so that pure Python modules don’t get compiled by default.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
608
diff
changeset
|
100 def get_module_hierarchy(directory): |
39874a722b76
Use two passes for the module search, and clean it up so that pure Python modules don’t get compiled by default.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
608
diff
changeset
|
101 packages = {} |
39874a722b76
Use two passes for the module search, and clean it up so that pure Python modules don’t get compiled by default.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
608
diff
changeset
|
102 allowed_extensions = ('.py', '.pyx', '.pxd') |
39874a722b76
Use two passes for the module search, and clean it up so that pure Python modules don’t get compiled by default.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
608
diff
changeset
|
103 pycache = os.path.sep + '__pycache__' |
39874a722b76
Use two passes for the module search, and clean it up so that pure Python modules don’t get compiled by default.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
608
diff
changeset
|
104 for directory, _, files in os.walk(directory): |
39874a722b76
Use two passes for the module search, and clean it up so that pure Python modules don’t get compiled by default.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
608
diff
changeset
|
105 if directory.endswith(pycache): |
39874a722b76
Use two passes for the module search, and clean it up so that pure Python modules don’t get compiled by default.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
608
diff
changeset
|
106 continue |
39874a722b76
Use two passes for the module search, and clean it up so that pure Python modules don’t get compiled by default.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
608
diff
changeset
|
107 package_name = directory.replace(os.path.sep, '.') |
39874a722b76
Use two passes for the module search, and clean it up so that pure Python modules don’t get compiled by default.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
608
diff
changeset
|
108 package = packages.setdefault(package_name, {}) |
39874a722b76
Use two passes for the module search, and clean it up so that pure Python modules don’t get compiled by default.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
608
diff
changeset
|
109 for filename in files: |
39874a722b76
Use two passes for the module search, and clean it up so that pure Python modules don’t get compiled by default.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
608
diff
changeset
|
110 module_name, file_ext = os.path.splitext(filename) |
39874a722b76
Use two passes for the module search, and clean it up so that pure Python modules don’t get compiled by default.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
608
diff
changeset
|
111 if file_ext not in allowed_extensions: |
522
e8496e5ba056
Add a compilation option to disable anmviewer.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
521
diff
changeset
|
112 continue |
619
39874a722b76
Use two passes for the module search, and clean it up so that pure Python modules don’t get compiled by default.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
608
diff
changeset
|
113 package.setdefault(module_name, []).append(file_ext) |
39874a722b76
Use two passes for the module search, and clean it up so that pure Python modules don’t get compiled by default.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
608
diff
changeset
|
114 for module_name, extensions in list(package.items()): |
39874a722b76
Use two passes for the module search, and clean it up so that pure Python modules don’t get compiled by default.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
608
diff
changeset
|
115 if '.pyx' not in extensions and '.py' not in extensions: |
39874a722b76
Use two passes for the module search, and clean it up so that pure Python modules don’t get compiled by default.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
608
diff
changeset
|
116 del package[module_name] |
39874a722b76
Use two passes for the module search, and clean it up so that pure Python modules don’t get compiled by default.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
608
diff
changeset
|
117 return packages |
39874a722b76
Use two passes for the module search, and clean it up so that pure Python modules don’t get compiled by default.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
608
diff
changeset
|
118 |
39874a722b76
Use two passes for the module search, and clean it up so that pure Python modules don’t get compiled by default.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
608
diff
changeset
|
119 |
39874a722b76
Use two passes for the module search, and clean it up so that pure Python modules don’t get compiled by default.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
608
diff
changeset
|
120 def extract_module_types(packages): |
39874a722b76
Use two passes for the module search, and clean it up so that pure Python modules don’t get compiled by default.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
608
diff
changeset
|
121 py_modules = [] |
39874a722b76
Use two passes for the module search, and clean it up so that pure Python modules don’t get compiled by default.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
608
diff
changeset
|
122 ext_modules = [] |
39874a722b76
Use two passes for the module search, and clean it up so that pure Python modules don’t get compiled by default.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
608
diff
changeset
|
123 for package_name, package in packages.items(): |
39874a722b76
Use two passes for the module search, and clean it up so that pure Python modules don’t get compiled by default.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
608
diff
changeset
|
124 if package_name in ('pytouhou.ui', 'pytouhou.ui.sdl'): |
39874a722b76
Use two passes for the module search, and clean it up so that pure Python modules don’t get compiled by default.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
608
diff
changeset
|
125 package_args = sdl_args |
39874a722b76
Use two passes for the module search, and clean it up so that pure Python modules don’t get compiled by default.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
608
diff
changeset
|
126 elif package_name == 'pytouhou.ui.opengl': |
39874a722b76
Use two passes for the module search, and clean it up so that pure Python modules don’t get compiled by default.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
608
diff
changeset
|
127 package_args = opengl_args |
39874a722b76
Use two passes for the module search, and clean it up so that pure Python modules don’t get compiled by default.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
608
diff
changeset
|
128 else: |
39874a722b76
Use two passes for the module search, and clean it up so that pure Python modules don’t get compiled by default.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
608
diff
changeset
|
129 package_args = {} |
39874a722b76
Use two passes for the module search, and clean it up so that pure Python modules don’t get compiled by default.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
608
diff
changeset
|
130 for module_name, extensions in package.items(): |
39874a722b76
Use two passes for the module search, and clean it up so that pure Python modules don’t get compiled by default.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
608
diff
changeset
|
131 fully_qualified_name = '%s.%s' % (package_name, module_name) |
39874a722b76
Use two passes for the module search, and clean it up so that pure Python modules don’t get compiled by default.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
608
diff
changeset
|
132 if '.pyx' in extensions or '.pxd' in extensions or compile_everything: |
39874a722b76
Use two passes for the module search, and clean it up so that pure Python modules don’t get compiled by default.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
608
diff
changeset
|
133 if fully_qualified_name == 'pytouhou.lib.sdl': |
39874a722b76
Use two passes for the module search, and clean it up so that pure Python modules don’t get compiled by default.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
608
diff
changeset
|
134 compile_args = sdl_args |
636
4fa0a8e7d941
Add a GLFW implementation of gui.Window.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
634
diff
changeset
|
135 elif fully_qualified_name == 'pytouhou.lib.glfw': |
4fa0a8e7d941
Add a GLFW implementation of gui.Window.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
634
diff
changeset
|
136 compile_args = glfw_args |
619
39874a722b76
Use two passes for the module search, and clean it up so that pure Python modules don’t get compiled by default.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
608
diff
changeset
|
137 else: |
39874a722b76
Use two passes for the module search, and clean it up so that pure Python modules don’t get compiled by default.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
608
diff
changeset
|
138 compile_args = package_args |
39874a722b76
Use two passes for the module search, and clean it up so that pure Python modules don’t get compiled by default.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
608
diff
changeset
|
139 ext = 'pyx' if '.pyx' in extensions else 'py' |
39874a722b76
Use two passes for the module search, and clean it up so that pure Python modules don’t get compiled by default.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
608
diff
changeset
|
140 source = '%s.%s' % (fully_qualified_name.replace('.', os.path.sep), ext) |
39874a722b76
Use two passes for the module search, and clean it up so that pure Python modules don’t get compiled by default.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
608
diff
changeset
|
141 ext_modules.append(Extension(fully_qualified_name, |
39874a722b76
Use two passes for the module search, and clean it up so that pure Python modules don’t get compiled by default.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
608
diff
changeset
|
142 [source], |
39874a722b76
Use two passes for the module search, and clean it up so that pure Python modules don’t get compiled by default.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
608
diff
changeset
|
143 **compile_args)) |
513
5e3e0b09a531
Move the OpenGL backend to its own package.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
512
diff
changeset
|
144 else: |
619
39874a722b76
Use two passes for the module search, and clean it up so that pure Python modules don’t get compiled by default.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
608
diff
changeset
|
145 py_modules.append(fully_qualified_name) |
39874a722b76
Use two passes for the module search, and clean it up so that pure Python modules don’t get compiled by default.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
608
diff
changeset
|
146 return py_modules, ext_modules |
39874a722b76
Use two passes for the module search, and clean it up so that pure Python modules don’t get compiled by default.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
608
diff
changeset
|
147 |
39874a722b76
Use two passes for the module search, and clean it up so that pure Python modules don’t get compiled by default.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
608
diff
changeset
|
148 |
39874a722b76
Use two passes for the module search, and clean it up so that pure Python modules don’t get compiled by default.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
608
diff
changeset
|
149 packages = get_module_hierarchy('pytouhou') |
39874a722b76
Use two passes for the module search, and clean it up so that pure Python modules don’t get compiled by default.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
608
diff
changeset
|
150 |
39874a722b76
Use two passes for the module search, and clean it up so that pure Python modules don’t get compiled by default.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
608
diff
changeset
|
151 if not use_opengl: |
39874a722b76
Use two passes for the module search, and clean it up so that pure Python modules don’t get compiled by default.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
608
diff
changeset
|
152 del packages['pytouhou.ui.opengl'] |
39874a722b76
Use two passes for the module search, and clean it up so that pure Python modules don’t get compiled by default.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
608
diff
changeset
|
153 del packages['pytouhou.ui.opengl.shaders'] |
39874a722b76
Use two passes for the module search, and clean it up so that pure Python modules don’t get compiled by default.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
608
diff
changeset
|
154 |
39874a722b76
Use two passes for the module search, and clean it up so that pure Python modules don’t get compiled by default.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
608
diff
changeset
|
155 if not anmviewer: |
39874a722b76
Use two passes for the module search, and clean it up so that pure Python modules don’t get compiled by default.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
608
diff
changeset
|
156 del packages['pytouhou.ui']['anmrenderer'] |
39874a722b76
Use two passes for the module search, and clean it up so that pure Python modules don’t get compiled by default.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
608
diff
changeset
|
157 |
39874a722b76
Use two passes for the module search, and clean it up so that pure Python modules don’t get compiled by default.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
608
diff
changeset
|
158 py_modules, ext_modules = extract_module_types(packages) |
213
9bdf116bb2a5
Add a distutils setup and don’t hardcode DAT list.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff
changeset
|
159 |
9bdf116bb2a5
Add a distutils setup and don’t hardcode DAT list.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff
changeset
|
160 |
541
8895ede4e51e
Fix Windows and OSX build by making pkg-config optional and assuming every dependency is available.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
528
diff
changeset
|
161 # OS-specific setuptools options. |
228
8f4cd1c01d22
Add basic cx_Freeze support in order to freeze to a windows executable.
Thibaut Girka <thib@sitedethib.com>
parents:
226
diff
changeset
|
162 try: |
8f4cd1c01d22
Add basic cx_Freeze support in order to freeze to a windows executable.
Thibaut Girka <thib@sitedethib.com>
parents:
226
diff
changeset
|
163 from cx_Freeze import setup, Executable |
8f4cd1c01d22
Add basic cx_Freeze support in order to freeze to a windows executable.
Thibaut Girka <thib@sitedethib.com>
parents:
226
diff
changeset
|
164 except ImportError: |
8f4cd1c01d22
Add basic cx_Freeze support in order to freeze to a windows executable.
Thibaut Girka <thib@sitedethib.com>
parents:
226
diff
changeset
|
165 extra = {} |
8f4cd1c01d22
Add basic cx_Freeze support in order to freeze to a windows executable.
Thibaut Girka <thib@sitedethib.com>
parents:
226
diff
changeset
|
166 else: |
630
6c40f5840a06
Include all of the modules during cx_Freeze, and don’t prevent multi-threaded Cython compilation on non-Windows platforms.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
629
diff
changeset
|
167 base = None |
6c40f5840a06
Include all of the modules during cx_Freeze, and don’t prevent multi-threaded Cython compilation on non-Windows platforms.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
629
diff
changeset
|
168 if sys.platform == 'win32': |
6c40f5840a06
Include all of the modules during cx_Freeze, and don’t prevent multi-threaded Cython compilation on non-Windows platforms.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
629
diff
changeset
|
169 nthreads = None # It seems Windows can’t compile in parallel. |
6c40f5840a06
Include all of the modules during cx_Freeze, and don’t prevent multi-threaded Cython compilation on non-Windows platforms.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
629
diff
changeset
|
170 base = 'Win32GUI' |
6c40f5840a06
Include all of the modules during cx_Freeze, and don’t prevent multi-threaded Cython compilation on non-Windows platforms.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
629
diff
changeset
|
171 extra = {'options': {'build_exe': {'includes': [mod.name for mod in ext_modules] + py_modules}}, |
546
94dd9862c470
Rename the eosd script into pytouhou, and remove the obsolete pcb one.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
542
diff
changeset
|
172 'executables': [Executable(script='scripts/pytouhou', base=base)]} |
228
8f4cd1c01d22
Add basic cx_Freeze support in order to freeze to a windows executable.
Thibaut Girka <thib@sitedethib.com>
parents:
226
diff
changeset
|
173 |
8f4cd1c01d22
Add basic cx_Freeze support in order to freeze to a windows executable.
Thibaut Girka <thib@sitedethib.com>
parents:
226
diff
changeset
|
174 |
572
7f113f15300b
Include the Glade file in the main package on install.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
563
diff
changeset
|
175 # Create a link to the data files (for packaging purposes) |
7f113f15300b
Include the Glade file in the main package on install.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
563
diff
changeset
|
176 current_dir = os.path.dirname(os.path.realpath(__file__)) |
7f113f15300b
Include the Glade file in the main package on install.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
563
diff
changeset
|
177 temp_data_dir = os.path.join(current_dir, 'pytouhou', 'data') |
7f113f15300b
Include the Glade file in the main package on install.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
563
diff
changeset
|
178 if not os.path.exists(temp_data_dir): |
7f113f15300b
Include the Glade file in the main package on install.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
563
diff
changeset
|
179 os.symlink(os.path.join(current_dir, 'data'), temp_data_dir) |
7f113f15300b
Include the Glade file in the main package on install.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
563
diff
changeset
|
180 |
7f113f15300b
Include the Glade file in the main package on install.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
563
diff
changeset
|
181 |
213
9bdf116bb2a5
Add a distutils setup and don’t hardcode DAT list.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff
changeset
|
182 setup(name='PyTouhou', |
629
26d9d251f658
Use the current revision as the version number.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
626
diff
changeset
|
183 version=check_output(['hg', 'heads', '.', '-T', '{rev}']).decode(), |
218
9634eefd2063
Minor changes to the setup script
Thibaut Girka <thib@sitedethib.com>
parents:
213
diff
changeset
|
184 author='Thibaut Girka', |
9634eefd2063
Minor changes to the setup script
Thibaut Girka <thib@sitedethib.com>
parents:
213
diff
changeset
|
185 author_email='thib@sitedethib.com', |
431
77c0e9a53795
Use cythonize in setup.py, also compile .py files, and entirely remove pyximport support.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
423
diff
changeset
|
186 url='http://pytouhou.linkmauve.fr/', |
218
9634eefd2063
Minor changes to the setup script
Thibaut Girka <thib@sitedethib.com>
parents:
213
diff
changeset
|
187 license='GPLv3', |
619
39874a722b76
Use two passes for the module search, and clean it up so that pure Python modules don’t get compiled by default.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
608
diff
changeset
|
188 py_modules=py_modules, |
39874a722b76
Use two passes for the module search, and clean it up so that pure Python modules don’t get compiled by default.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
608
diff
changeset
|
189 ext_modules=cythonize(ext_modules, nthreads=nthreads, annotate=debug, |
607
9dbc234ea087
Actually compile under 3.x feature level.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
590
diff
changeset
|
190 language_level=3, |
431
77c0e9a53795
Use cythonize in setup.py, also compile .py files, and entirely remove pyximport support.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
423
diff
changeset
|
191 compiler_directives={'infer_types': True, |
521
53129f3a54af
Add a debug option to enable HTML annotations, type inference display and profiling.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
515
diff
changeset
|
192 'infer_types.verbose': debug, |
53129f3a54af
Add a debug option to enable HTML annotations, type inference display and profiling.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
515
diff
changeset
|
193 'profile': debug}, |
515
b3193b43a86c
Add an indirection layer for textures, to cope with drivers assigning them random names.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
513
diff
changeset
|
194 compile_time_env={'MAX_TEXTURES': 128, |
505
bfea9e9a6845
Manage the texture-specific indices in the Texture, and some more renderer optimisations.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
488
diff
changeset
|
195 'MAX_ELEMENTS': 640 * 4 * 3, |
528
7c3c90468996
Inherit music players from a base class.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
525
diff
changeset
|
196 'MAX_SOUNDS': 26, |
555
98380e4a0ee5
Switch to libepoxy instead of libGLEW, which will help with OpenGL portability.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
553
diff
changeset
|
197 'USE_OPENGL': use_opengl}), |
546
94dd9862c470
Rename the eosd script into pytouhou, and remove the obsolete pcb one.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
542
diff
changeset
|
198 scripts=['scripts/pytouhou'] + (['scripts/anmviewer'] if anmviewer else []), |
633
38928d4d6709
package_data doesn’t work with no package specified, add the pytouhou package back.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
630
diff
changeset
|
199 packages=['pytouhou'], |
572
7f113f15300b
Include the Glade file in the main package on install.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
563
diff
changeset
|
200 package_data={'pytouhou': ['data/menu.glade']}, |
431
77c0e9a53795
Use cythonize in setup.py, also compile .py files, and entirely remove pyximport support.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
423
diff
changeset
|
201 **extra) |
572
7f113f15300b
Include the Glade file in the main package on install.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
563
diff
changeset
|
202 |
7f113f15300b
Include the Glade file in the main package on install.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
563
diff
changeset
|
203 |
7f113f15300b
Include the Glade file in the main package on install.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
563
diff
changeset
|
204 # Remove the link afterwards |
7f113f15300b
Include the Glade file in the main package on install.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
563
diff
changeset
|
205 if os.path.exists(temp_data_dir): |
7f113f15300b
Include the Glade file in the main package on install.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
563
diff
changeset
|
206 os.unlink(temp_data_dir) |