openlp-core team mailing list archive
-
openlp-core team
-
Mailing list archive
-
Message #24176
[Merge] lp:~tomasgroth/openlp/packaging-fixes into lp:openlp/packaging
Tomas Groth has proposed merging lp:~tomasgroth/openlp/packaging-fixes into lp:openlp/packaging.
Requested reviews:
Raoul Snyman (raoul-snyman)
For more details, see:
https://code.launchpad.net/~tomasgroth/openlp/packaging-fixes/+merge/233103
Removed workarounds for fixed PyInstaller issues.
Moved mudrawbin option to config.ini.
Updated documentation in the comments.
--
https://code.launchpad.net/~tomasgroth/openlp/packaging-fixes/+merge/233103
Your team OpenLP Core is subscribed to branch lp:openlp/packaging.
=== modified file 'osx/config.ini.default'
--- osx/config.ini.default 2013-01-01 12:35:00 +0000
+++ osx/config.ini.default 2014-09-02 19:20:07 +0000
@@ -5,6 +5,7 @@
diskutil = diskutil
hdiutil = hdiutil
osascript = osascript
+mudrawbin = /opt/local/bin/mudraw
[paths]
branch = %(projects)s/trunk
=== modified file 'osx/macosx-builder.py'
--- osx/macosx-builder.py 2014-06-14 03:40:12 +0000
+++ osx/macosx-builder.py 2014-09-02 19:20:07 +0000
@@ -34,7 +34,7 @@
This script is used to build the Mac OS X app bundle and pack it into dmg file.
For this script to work out of the box, it depends on a number of things:
-Python 2.6/2.7
+Python 3.3/3.4
PyQt4
You should already have this installed, OpenLP doesn't work without it. The
@@ -50,18 +50,9 @@
the same directory level as OpenLP trunk and named "documentation".
PyInstaller
- PyInstaller should be a checkout of revision 1355 of trunk, and in a
- directory which is configured in the openlp.cfg. The revision is very
- important as there is just included a fix for builds on OS X.
-
- To install PyInstaller, first checkout trunk from Subversion. The
- easiest way is to do a
-
- svn co http://svn.pyinstaller.org/trunk
-
- Then you need to copy the two hook-*.py files from the "pyinstaller"
- subdirectory in OpenLP's "resources" directory into PyInstaller's
- "hooks" directory.
+ PyInstaller should be a git clone of either
+ https://github.com/matysek/pyinstaller branch python3 or
+ https://github.com/pyinstaller/pyinstaller branch python3
Bazaar
You need the command line "bzr" client installed.
@@ -91,7 +82,7 @@
MuPDF
Required for PDF support in OpenLP. Install using macports, or use the
- '--mudraw-bin' option of this script to point to the mudraw binary.
+ mudrawbin option in the config file to point to the mudraw binary.
MachOLib
Python library to analyze and edit Mach-O headers, the executable format
@@ -239,8 +230,6 @@
parser.add_argument('--transifex-pass', dest='transifex_pass', help='Transifex password.')
parser.add_argument('-v', '--verbose', dest='verbose', action='store_true', default=False,
help='Print out additional information.')
- parser.add_argument('--mudraw-bin', dest='mudraw_bin', default='/opt/local/bin/mudraw',
- help='Path to the mudraw binary.')
self.args = parser.parse_args()
def read_config(self):
@@ -269,6 +258,7 @@
self.diskutil = _which(self.config.get('executables', 'diskutil'))
self.hdiutil = _which(self.config.get('executables', 'hdiutil'))
self.osascript = _which(self.config.get('executables', 'osascript'))
+ self.mudraw_bin = _which(self.config.get('executables', 'mudrawbin'))
def setup_paths(self):
"""
@@ -282,10 +272,6 @@
self.docs_path = os.path.abspath(self.args.docs)
else:
self.docs_path = self.config.get('paths', 'documentation')
- if self.args.mudraw_bin:
- self.mudraw_bin = self.args.mudraw_bin
- else:
- self.mudraw_bin = ''
self.openlp_script = os.path.abspath(os.path.join(self.branch_path, 'openlp.py'))
self.hooks_path = os.path.abspath(os.path.join(self.branch_path, self.config.get('paths', 'hooks')))
self.mac_icon = os.path.abspath(self.config.get('paths', 'macicon'))
=== modified file 'windows/config.ini.default'
--- windows/config.ini.default 2012-12-30 23:04:58 +0000
+++ windows/config.ini.default 2014-09-02 19:20:07 +0000
@@ -8,6 +8,7 @@
lrelease = %(sitepackages)s\PyQt4\bin\lrelease.exe
portablelauncher = %(progfiles)s\PortableApps.comLauncher\PortableApps.comLauncherGenerator.exe
portableinstaller = %(progfiles)s\PortableApps.comInstaller\PortableApps.comInstaller.exe
+mudrawbin = %(here)s\..\mupdf-1.5-windows\mudraw.exe
[paths]
branch = %(projects)s\trunk
=== modified file 'windows/windows-builder.py'
--- windows/windows-builder.py 2014-05-30 08:59:26 +0000
+++ windows/windows-builder.py 2014-09-02 19:20:07 +0000
@@ -34,7 +34,7 @@
This script is used to build the Windows binary and the accompanying installer.
For this script to work out of the box, it depends on a number of things:
-Python 2.6/2.7
+Python 3.3/3.4
PyQt4
You should already have this installed, OpenLP doesn't work without it. The
@@ -56,16 +56,9 @@
This is used to create the help file.
PyInstaller
- PyInstaller should be a checkout of revision 1470 of trunk, and in a
- directory called, "pyinstaller" on the same level as OpenLP's Bazaar shared
- repository directory. The revision is very important as there is currently
- a major regression in HEAD.
-
- To install PyInstaller, first checkout trunk from Subversion. The easiest
- way is to install TortoiseSVN and then checkout the following URL to a
- directory called "pyinstaller"::
-
- http://svn.pyinstaller.org/trunk
+ PyInstaller should be a git clone of either
+ https://github.com/matysek/pyinstaller branch python3 or
+ https://github.com/pyinstaller/pyinstaller branch python3
Bazaar
You need the command line "bzr" client installed.
@@ -108,8 +101,8 @@
MuPDF
Required for PDF support in OpenLP. Download the windows build from
- mupdf.com, extract it, and use the '--mudraw-bin' option of this script to
- point to mudraw.exe.
+ mupdf.com, extract it, and set the mudrawbin option in the config file to
+ point to mudraw.exe
Portable App Builds
The following are required if you are planning to make a portable build of
@@ -189,7 +182,6 @@
help='Do NOT update the language translation files.')
parser.add_argument('-v', '--verbose', dest='verbose', action='store_true', default=False,
help='Print out additional information.')
- parser.add_argument('--mudraw-bin', dest='mudraw_bin', default=None, help='Path to the mudraw binary.')
self.args = parser.parse_args()
def read_config(self):
@@ -227,6 +219,7 @@
self.psvince = os.path.abspath(self.config.get('executables', 'psvince'))
self.portableinstaller = os.path.abspath(self.config.get('executables', 'portableinstaller'))
self.portablelauncher = os.path.abspath(self.config.get('executables', 'portablelauncher'))
+ self.mudraw_bin = os.path.abspath(self.config.get('executables', 'mudrawbin'))
if os.path.exists(os.path.join(self.site_packages, 'PyQt4', 'bin')):
# Older versions of the PyQt4 Windows installer put their binaries
# in the "bin" directory
@@ -262,10 +255,6 @@
self.args.portable = self.portable_path
else:
self.portable_path = ''
- if self.args.mudraw_bin:
- self.mudraw_bin = self.args.mudraw_bin
- else:
- self.mudraw_bin = ''
self.openlp_script = os.path.abspath(os.path.join(branch_path, 'openlp.py'))
self.hooks_path = os.path.abspath(self.config.get('paths', 'hooks'))
self.win32_icon = os.path.abspath(self.config.get('paths', 'win32icon'))
@@ -318,7 +307,6 @@
'-i', self.win32_icon,
'-p', self.branch_path,
'-n', 'OpenLP',
- '-d', '-c', # for now this is needed to make OpenLP run under windows
self.openlp_script),
stdout=PIPE)
output = pyinstaller.communicate()[0]
@@ -427,18 +415,6 @@
copy(os.path.join(self.mudraw_bin), os.path.join(self.dist_path, 'mudraw.exe'))
else:
self._print('... WARNING: mudraw.exe not found')
- self._print_verbose('Tempoary workaround for needed dlls not copied by pyinstaller')
- self._print_verbose('... pythoncom33.dll')
- if os.path.isfile('C:\\Python33\\Lib\\site-packages\\pywin32_system32\\pythoncom33.dll'):
- copy('C:\\Python33\\Lib\\site-packages\\pywin32_system32\\pythoncom33.dll',
- os.path.join(self.dist_path, 'pythoncom33.dll'))
- else:
- self._print('... WARNING: pythoncom33.dll not found')
- if os.path.isfile('C:\\windows\\system32\\msvcr100.dll'):
- self._print_verbose('... msvcr100.dll')
- copy('C:\\windows\\system32\\msvcr100.dll', os.path.join(self.dist_path, 'msvcr100.dll'))
- else:
- self._print('... WARNING: msvcr100.dll not found')
def update_translations(self):
"""
Follow ups