diff options
author | daid <daid303@gmail.com> | 2013-10-07 11:55:52 +0400 |
---|---|---|
committer | daid <daid303@gmail.com> | 2013-10-07 11:55:52 +0400 |
commit | e86482002e9932b3a7bf01d45d372c404891076a (patch) | |
tree | 7c460a4e69675ae4678adc667ccfd60e57a04ad7 /build_app.py | |
parent | 75ed020c899c4435d42fdfaf286266264ed38761 (diff) |
Update build_app.py to use proper versions, maybe this fixes the random Mac bugs when multiple Cura versions are installed. Always show the plugins, even if no plugins are found.
Diffstat (limited to 'build_app.py')
-rw-r--r-- | build_app.py | 76 |
1 files changed, 12 insertions, 64 deletions
diff --git a/build_app.py b/build_app.py index 22707a0f22..62eaaca8b9 100644 --- a/build_app.py +++ b/build_app.py @@ -5,13 +5,20 @@ import os if sys.platform.startswith('darwin'): from setuptools import setup + try: + f = open('scripts/darwin/dist/Cura.app/Contents/Resources/version', 'r') + version = unicode(f.readline().strip()) + f.close() + except IOError: + version = 'Unknown' + APP = ['Cura/cura.py'] DATA_FILES = ['Cura/LICENSE', 'Cura/resources/images', 'Cura/resources/meshes', 'Cura/resources/example', 'Cura/resources/firmware', 'Cura/resources/locale', 'Cura/resources/machine_profiles'] PLIST = { - u'CFBundleName': u'Cura', - u'CFBundleShortVersionString': u'13.06.5', - u'CFBundleVersion': u'13.06.5', - u'CFBundleIdentifier': u'com.ultimaker.Cura', + u'CFBundleName': u'Cura-'+version, + u'CFBundleShortVersionString': version, + u'CFBundleVersion': version, + u'CFBundleIdentifier': u'com.ultimaker.Cura-'+version, u'LSMinimumSystemVersion': u'10.6', u'LSApplicationCategoryType': u'public.app-category.graphics-design', u'CFBundleDocumentTypes': [ @@ -82,63 +89,4 @@ if sys.platform.startswith('darwin'): setup_requires=['py2app'] ) else: - import zipfile - try: - import cx_Freeze - except: - print "ERROR: You need cx-Freeze installed to build this package" - sys.exit(1) - - freezeVersion = map(int, cx_Freeze.version.split('.')) - if freezeVersion[0] < 4 or freezeVersion[0] == 4 and freezeVersion[1] < 2: - print "ERROR: Your cx-Freeze version is too old to use with Cura." - sys.exit(1) - - sys.path.append(os.path.abspath('cura_sf')) - - # Dependencies are automatically detected, but it might need fine tuning. - build_exe_options = { - "silent": True, - "packages": [ - 'encodings.utf_8', - "OpenGL", "OpenGL.arrays", "OpenGL.platform", "OpenGL.GLU", - ], "excludes": [ - 'Tkinter', 'tcl', 'cura_sf', 'fabmetheus_utilities', 'skeinforge_application', 'numpy', - ], "include_files": [ - ('images', 'images'), - ], "build_exe": 'freeze_build'} - - # GUI applications require a different base on Windows (the default is for a - # console application). - base = None - if sys.platform == "win32": - base = "Win32GUI" - - cx_Freeze.setup( name = "Cura", - version = "RC5", - description = "Cura", - options = {"build_exe": build_exe_options}, - executables = [cx_Freeze.Executable("cura.py", base=base)]) - - m = cx_Freeze.ModuleFinder(excludes=["gui"]) - m.IncludeFile(os.path.abspath("cura.py")) - m.IncludeFile(os.path.abspath("cura_sf/skeinforge_application/skeinforge_plugins/profile_plugins/extrusion.py")) - m.IncludeFile(os.path.abspath("cura_sf/fabmetheus_utilities/fabmetheus_tools/interpret_plugins/stl.py")) - m.IncludeFile(os.path.abspath("cura_sf/skeinforge_application/skeinforge_plugins/craft_plugins/export_plugins/static_plugins/gcode_small.py")) - for name in os.listdir("cura_sf/skeinforge_application/skeinforge_plugins/craft_plugins"): - if name.endswith('.py'): - m.IncludeFile(os.path.abspath("cura_sf/skeinforge_application/skeinforge_plugins/craft_plugins/" + name)) - m.ReportMissingModules() - cwd = os.path.abspath(".") - - z = zipfile.ZipFile("freeze_build/cura_sf.zip", "w", zipfile.ZIP_DEFLATED) - for mod in m.modules: - if mod.file != None and mod.file.startswith(cwd): - if mod.file[len(cwd)+1:] == "cura.py": - z.write(mod.file[len(cwd)+1:], "__main__.py") - else: - z.write(mod.file[len(cwd)+1:]) - z.write('cura_sf/fabmetheus_utilities/templates/layer_template.svg') - z.write('cura_sf/fabmetheus_utilities/version.txt') - z.write('__init__.py') - z.close() + print 'No build_app implementation for your system.' |