diff --git a/README_INSTALL.txt b/README_INSTALL.txt new file mode 100644 index 0000000..2f895d2 --- /dev/null +++ b/README_INSTALL.txt @@ -0,0 +1,8 @@ + + +Building on Windows: + 1. In a CMD window, type: + c:\Python27\python.exe setup.py py2exe + 2. Copy the GUI folder from the root directory into dist\. + 3. The executable is in dist\lightningbeam.exe. You probably do need most if the DLL's, I haven't + gone through them yet. \ No newline at end of file diff --git a/lightningbeam.py b/lightningbeam.py index b4b7744..59e2e18 100755 --- a/lightningbeam.py +++ b/lightningbeam.py @@ -6,7 +6,10 @@ import os, shutil #Uncomment to build on OS X -import objc, AppKit, cPickle +#import objc, AppKit, cPickle + +#Uncomment to build on Windows +import ctypes, ctypes.wintypes, win32print #SVLGUI - my custom GUI wrapper to abstract the GUI import svlgui diff --git a/media/icon.ico b/media/icon.ico new file mode 100644 index 0000000..77b4ed5 Binary files /dev/null and b/media/icon.ico differ diff --git a/setup.py b/setup.py index fc5ea59..a53fc58 100644 --- a/setup.py +++ b/setup.py @@ -36,10 +36,28 @@ if sys.platform == 'darwin': )), ) elif sys.platform == 'win32': + import GUI.py2exe + import py2exe + import os + import win32ui + Mydata_files=["gpl.txt",]#"GUI",] + for files in os.listdir('media'): + f1 = 'media/' + files + if os.path.isfile(f1): # skip directories + f2 = 'media', [f1] + Mydata_files.append(f2) + for files in os.listdir('swfc'): + f1 = 'swfc/' + files + if os.path.isfile(f1): # skip directories + f2 = 'swfc', [f1] + Mydata_files.append(f2) extra_options = dict( setup_requires=['py2exe'], - app=[mainscript], - options=dict(py2app=dict(resources=["media","gpl.txt","swfc","base.js"],)), + windows=[{"script":mainscript,"icon_resources":[(1,"media/icon.ico")]}], + other_resources=[("media",["media"]),("gpl.txt",["gpl.txt"]),("swfc",["swfc"]),("GUI",["GUI"])], + data_files=Mydata_files, + options=dict(py2exe=dict(packages=["win32ui","win32clipboard","win32api","win32gui","win32process"], + skip_archive=True,)), ) else: extra_options = dict(