From 7dc4fc5d74690da3b59af18316b72a5b4b656f7c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Zolt=C3=A1n=20Mizsei?= Date: Thu, 26 Jan 2017 08:24:49 +0100 Subject: [PATCH 01/17] Add Haiku to the known OS list --- setup/__init__.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/setup/__init__.py b/setup/__init__.py index 7d4c49734d..f6c57a8abb 100644 --- a/setup/__init__.py +++ b/setup/__init__.py @@ -15,7 +15,8 @@ isfreebsd = 'freebsd' in sys.platform isnetbsd = 'netbsd' in sys.platform isdragonflybsd = 'dragonfly' in sys.platform isbsd = isnetbsd or isfreebsd or isdragonflybsd -islinux = not isosx and not iswindows and not isbsd +ishaiku = 'haiku1' in sys.platform +islinux = not isosx and not iswindows and not isbsd and not ishaiku sys.setup_dir = os.path.dirname(os.path.abspath(__file__)) SRC = os.path.abspath(os.path.join(os.path.dirname(sys.setup_dir), 'src')) sys.path.insert(0, SRC) From 2e5cb8f727feaf1b473cdd24849ad10749d51e70 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Zolt=C3=A1n=20Mizsei?= Date: Thu, 26 Jan 2017 08:31:32 +0100 Subject: [PATCH 02/17] Linker flags for the build script --- setup/build.py | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/setup/build.py b/setup/build.py index 16cb5b4b36..4acf4715d9 100644 --- a/setup/build.py +++ b/setup/build.py @@ -9,7 +9,7 @@ __docformat__ = 'restructuredtext en' import textwrap, os, shlex, subprocess, glob, shutil, re, sys, json from collections import namedtuple -from setup import Command, islinux, isbsd, isosx, SRC, iswindows, __version__ +from setup import Command, islinux, isbsd, isosx, ishaiku, SRC, iswindows, __version__ isunix = islinux or isosx or isbsd py_lib = os.path.join(sys.prefix, 'libs', 'python%d%d.lib' % sys.version_info[:2]) @@ -100,6 +100,8 @@ def parse_extension(ext): ans = ext.pop('osx_' + k, ans) elif isbsd: ans = ext.pop('bsd_' + k, ans) + elif ishaiku: + ans = ext.pop('haiku_' + k, ans) else: ans = ext.pop('linux_' + k, ans) return ans @@ -156,6 +158,12 @@ def init_env(): cflags.append('-I'+sysconfig.get_python_inc()) ldflags.append('-lpython'+sysconfig.get_python_version()) + if ishaiku: + cflags.append('-lpthread') + ldflags.append('-shared') + cflags.append('-I'+sysconfig.get_python_inc()) + ldflags.append('-lpython'+sysconfig.get_python_version()) + if isosx: cflags.append('-D_OSX') ldflags.extend('-bundle -undefined dynamic_lookup'.split()) From 2e2236684df417a2a5514c7e21a673359c1e8700 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Zolt=C3=A1n=20Mizsei?= Date: Thu, 26 Jan 2017 08:41:58 +0100 Subject: [PATCH 03/17] Setup build env --- setup/build_environment.py | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/setup/build_environment.py b/setup/build_environment.py index 749fea8a6e..ff549692d7 100644 --- a/setup/build_environment.py +++ b/setup/build_environment.py @@ -9,7 +9,7 @@ __docformat__ = 'restructuredtext en' import os, subprocess, re, sys, sysconfig from distutils.spawn import find_executable -from setup import isosx, iswindows, is64bit, islinux +from setup import isosx, iswindows, is64bit, islinux, ishaiku is64bit NMAKE = RC = msvc = MT = win_inc = win_lib = None @@ -37,7 +37,7 @@ QMAKE = os.environ.get('QMAKE', QMAKE) PKGCONFIG = find_executable('pkg-config') PKGCONFIG = os.environ.get('PKG_CONFIG', PKGCONFIG) -if islinux and not PKGCONFIG: +if islinux or ishaiku and not PKGCONFIG: raise SystemExit('Failed to find pkg-config on your system. You can use the environment variable PKG_CONFIG to point to the pkg-config executable') def run_pkgconfig(name, envvar, default, flag, prefix): @@ -97,8 +97,8 @@ def get_sip_dir(): pyqt['pyqt_sip_dir'] = get_sip_dir() pyqt['sip_inc_dir'] = os.environ.get('SIP_INC_DIR', sysconfig.get_path('include')) -glib_flags = subprocess.check_output([PKGCONFIG, '--libs', 'glib-2.0']).strip() if islinux else '' -fontconfig_flags = subprocess.check_output([PKGCONFIG, '--libs', 'fontconfig']).strip() if islinux else '' +glib_flags = subprocess.check_output([PKGCONFIG, '--libs', 'glib-2.0']).strip() if islinux or ishaiku else '' +fontconfig_flags = subprocess.check_output([PKGCONFIG, '--libs', 'fontconfig']).strip() if islinux or ishaiku else '' qt_inc = pyqt['inc'] qt_lib = pyqt['lib'] ft_lib_dirs = [] @@ -121,7 +121,7 @@ QT_DLLS = ['Qt5' + x for x in ( 'WebKit', 'WebKitWidgets', 'Widgets', 'Multimedia', 'MultimediaWidgets', 'Xml', # 'XmlPatterns', )] QT_PLUGINS = ('imageformats', 'audio', 'iconengines', 'mediaservice', 'platforms', 'playlistformats', 'printsupport', 'sqldrivers') -if islinux: +if islinux or ishaiku: # platformthemes cause crashes in Ubuntu QT_PLUGINS += ('platforminputcontexts', 'generic',) From 0a34a1d9f443247cb05bfcb2946bda2aef9e4aae Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Zolt=C3=A1n=20Mizsei?= Date: Thu, 26 Jan 2017 08:45:29 +0100 Subject: [PATCH 04/17] Extensions: Haiku support --- setup/extensions.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/setup/extensions.json b/setup/extensions.json index 6f3e7d9c0e..63ddf5e8f4 100644 --- a/setup/extensions.json +++ b/setup/extensions.json @@ -201,13 +201,13 @@ }, { "name": "libusb", - "only": "osx linux", + "only": "osx linux haiku", "sources": "calibre/devices/libusb/libusb.c", "libraries": "usb-1.0" }, { "name": "libmtp", - "only": "osx linux", + "only": "osx linux haiku", "sources": "calibre/devices/mtp/unix/devices.c calibre/devices/mtp/unix/libmtp.c", "headers": "calibre/devices/mtp/unix/devices.h calibre/devices/mtp/unix/upstream/music-players.h calibre/devices/mtp/unix/upstream/device-flags.h", "libraries": "mtp" From dd649edea90962814e5d4584e8c56f6ba1395fc9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Zolt=C3=A1n=20Mizsei?= Date: Thu, 26 Jan 2017 11:52:45 +0100 Subject: [PATCH 05/17] Disable headless on Haiku for now --- setup/build.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/setup/build.py b/setup/build.py index 4acf4715d9..23df9d16cb 100644 --- a/setup/build.py +++ b/setup/build.py @@ -337,7 +337,7 @@ class Build(Command): def build_headless(self): from setup.parallel_build import cpu_count - if iswindows or isosx: + if iswindows or isosx or ishaiku: return # Dont have headless operation on these platforms from setup.build_environment import glib_flags, fontconfig_flags, ft_inc_dirs, QMAKE from PyQt5.QtCore import QT_VERSION From 7c90ef80d0802368156d5ea7181317f69289c23d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Zolt=C3=A1n=20Mizsei?= Date: Thu, 26 Jan 2017 11:59:50 +0100 Subject: [PATCH 06/17] Haiku is unix from now, hail to Haiku! --- setup/build.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/setup/build.py b/setup/build.py index 23df9d16cb..f907152263 100644 --- a/setup/build.py +++ b/setup/build.py @@ -10,7 +10,7 @@ import textwrap, os, shlex, subprocess, glob, shutil, re, sys, json from collections import namedtuple from setup import Command, islinux, isbsd, isosx, ishaiku, SRC, iswindows, __version__ -isunix = islinux or isosx or isbsd +isunix = islinux or isosx or isbsd or ishaiku py_lib = os.path.join(sys.prefix, 'libs', 'python%d%d.lib' % sys.version_info[:2]) @@ -81,7 +81,7 @@ def is_ext_allowed(ext): only = ext.get('only', '') if only: only = only.split() - q = 'windows' if iswindows else 'osx' if isosx else 'bsd' if isbsd else 'linux' + q = 'windows' if iswindows else 'osx' if isosx else 'bsd' if isbsd else 'haiku' if ishaiku else 'linux' return q in only return True From 62dd2ae37093ab72d855209d7ce0bea60a5bb558 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Zolt=C3=A1n=20Mizsei?= Date: Thu, 26 Jan 2017 12:05:07 +0100 Subject: [PATCH 07/17] Haiku is x86 at this moment --- setup/extensions.json | 1 + 1 file changed, 1 insertion(+) diff --git a/setup/extensions.json b/setup/extensions.json index 63ddf5e8f4..c851430bba 100644 --- a/setup/extensions.json +++ b/setup/extensions.json @@ -218,6 +218,7 @@ "inc_dirs": "unrar", "defines": "SILENT RARDLL UNRAR _FILE_OFFSET_BITS=64 _LARGEFILE_SOURCE", "windows_defines": "SILENT RARDLL UNRAR", + "haiku_defines": "LITTLE_ENDIAN", "optimize_level": 2, "windows_libraries": "User32 Advapi32 kernel32 Shell32" } From 67b1a7bb729bd57c9d13359c46d10cc899ec1ff3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Zolt=C3=A1n=20Mizsei?= Date: Thu, 26 Jan 2017 12:07:59 +0100 Subject: [PATCH 08/17] Unrar needs every defines. Maybe there is a cleaner way... --- setup/extensions.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/setup/extensions.json b/setup/extensions.json index c851430bba..1f6d1fb5fd 100644 --- a/setup/extensions.json +++ b/setup/extensions.json @@ -218,7 +218,8 @@ "inc_dirs": "unrar", "defines": "SILENT RARDLL UNRAR _FILE_OFFSET_BITS=64 _LARGEFILE_SOURCE", "windows_defines": "SILENT RARDLL UNRAR", - "haiku_defines": "LITTLE_ENDIAN", + "haiku_defines": "LITTLE_ENDIAN SILENT RARDLL UNRAR _FILE_OFFSET_BITS=64 _LARGEFILE_SOURCE _BSD_SOURCE", + "haiku_libraries": "bsd", "optimize_level": 2, "windows_libraries": "User32 Advapi32 kernel32 Shell32" } From 11e2e05c06370946c4a803c51e942774ffd963cb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Zolt=C3=A1n=20Mizsei?= Date: Thu, 26 Jan 2017 13:10:23 +0100 Subject: [PATCH 09/17] Source based dev env supported on Haiku --- setup/install.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/setup/install.py b/setup/install.py index 75a66bb849..92795544b9 100644 --- a/setup/install.py +++ b/setup/install.py @@ -8,7 +8,7 @@ __docformat__ = 'restructuredtext en' import sys, os, textwrap, subprocess, shutil, tempfile, atexit, glob -from setup import (Command, islinux, isbsd, basenames, modules, functions, +from setup import (Command, islinux, isbsd, ishaiku, basenames, modules, functions, __appname__, __version__) HEADER = '''\ @@ -115,7 +115,7 @@ class Develop(Command): self.info('\tSHARE:', self.staging_sharedir) def pre_sub_commands(self, opts): - if not (islinux or isbsd): + if not (islinux or isbsd or ishaiku): self.info('\nSetting up a source based development environment is only ' 'supported on linux. On other platforms, see the User Manual' ' for help with setting up a development environment.') From 6979f7d0e95b151e62af8c4474ad9a48b372142f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Zolt=C3=A1n=20Mizsei?= Date: Thu, 26 Jan 2017 13:35:03 +0100 Subject: [PATCH 10/17] Haiku OS detection support --- src/calibre/constants.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/calibre/constants.py b/src/calibre/constants.py index bfcc009bc1..934b37de6a 100644 --- a/src/calibre/constants.py +++ b/src/calibre/constants.py @@ -22,9 +22,10 @@ isfreebsd = 'freebsd' in _plat isnetbsd = 'netbsd' in _plat isdragonflybsd = 'dragonfly' in _plat isbsd = isfreebsd or isnetbsd or isdragonflybsd -islinux = not(iswindows or isosx or isbsd) +ishaiku = 'haiku1' in _plat +islinux = not(iswindows or isosx or isbsd or ishaiku) isfrozen = hasattr(sys, 'frozen') -isunix = isosx or islinux +isunix = isosx or islinux or ishaiku isportable = os.environ.get('CALIBRE_PORTABLE_BUILD', None) is not None ispy3 = sys.version_info.major > 2 isxp = iswindows and sys.getwindowsversion().major < 6 From 9901e4b05ec936a8722d4f43526e1ab5e1739114 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Zolt=C3=A1n=20Mizsei?= Date: Thu, 26 Jan 2017 13:39:54 +0100 Subject: [PATCH 11/17] Haiku have libmtp and libusb, so use them! --- src/calibre/constants.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/calibre/constants.py b/src/calibre/constants.py index 934b37de6a..7df28ce1d1 100644 --- a/src/calibre/constants.py +++ b/src/calibre/constants.py @@ -168,7 +168,7 @@ class Plugins(collections.Mapping): plugins.extend(['winutil', 'wpd', 'winfonts']) if isosx: plugins.append('usbobserver') - if islinux or isosx: + if islinux or isosx or ishaiku: plugins.append('libusb') plugins.append('libmtp') self.plugins = frozenset(plugins) From bd5233da8d959796276e7657626d72a0f858bde7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Zolt=C3=A1n=20Mizsei?= Date: Thu, 26 Jan 2017 14:52:08 +0100 Subject: [PATCH 12/17] Hardwired locking mechanism, somebody should fix it --- src/calibre/gui2/main.py | 2 +- src/calibre/utils/lock.py | 6 +++++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/src/calibre/gui2/main.py b/src/calibre/gui2/main.py index 6924a509b0..e28793b0d0 100644 --- a/src/calibre/gui2/main.py +++ b/src/calibre/gui2/main.py @@ -10,7 +10,7 @@ from PyQt5.Qt import ( from calibre import prints, plugins, force_unicode from calibre.constants import (iswindows, __appname__, isosx, DEBUG, islinux, - filesystem_encoding, get_portable_base) + ishaiku, filesystem_encoding, get_portable_base) from calibre.utils.ipc import gui_socket_address, RC from calibre.gui2 import ( initialize_file_icon_provider, Application, choose_dir, diff --git a/src/calibre/utils/lock.py b/src/calibre/utils/lock.py index 34c8849f8c..52a7bbb99d 100644 --- a/src/calibre/utils/lock.py +++ b/src/calibre/utils/lock.py @@ -6,7 +6,7 @@ __docformat__ = 'restructuredtext en' Secure access to locked files from multiple processes. ''' -from calibre.constants import iswindows, __appname__, islinux, win32api, win32event, winerror, fcntl +from calibre.constants import iswindows, __appname__, islinux, ishaiku, win32api, win32event, winerror, fcntl import time, atexit, os, stat, errno @@ -228,6 +228,10 @@ elif islinux: fcntl.fcntl(fd, fcntl.F_SETFD, old_flags | fcntl.FD_CLOEXEC) atexit.register(sock.close) return True +elif ishaiku: + def singleinstance(name): + # Somebody should fix this. + return True else: def singleinstance_path(name): home = os.path.expanduser('~') From c8e6aaa013959c2208eedeaa7f27aeffe7930ec2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Zolt=C3=A1n=20Mizsei?= Date: Thu, 26 Jan 2017 17:21:55 +0100 Subject: [PATCH 13/17] Revert "Haiku have libmtp and libusb, so use them!" Dbus problems, maybe later. This reverts commit 9901e4b05ec936a8722d4f43526e1ab5e1739114. --- src/calibre/constants.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/calibre/constants.py b/src/calibre/constants.py index 7df28ce1d1..934b37de6a 100644 --- a/src/calibre/constants.py +++ b/src/calibre/constants.py @@ -168,7 +168,7 @@ class Plugins(collections.Mapping): plugins.extend(['winutil', 'wpd', 'winfonts']) if isosx: plugins.append('usbobserver') - if islinux or isosx or ishaiku: + if islinux or isosx: plugins.append('libusb') plugins.append('libmtp') self.plugins = frozenset(plugins) From 177a15fe466081abb515052b20b8371e2a52775b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Zolt=C3=A1n=20Mizsei?= Date: Thu, 26 Jan 2017 18:09:00 +0100 Subject: [PATCH 14/17] Simplified Calibre icon for future use. --- icons/calibre_haiku.rdef | 75 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 75 insertions(+) create mode 100644 icons/calibre_haiku.rdef diff --git a/icons/calibre_haiku.rdef b/icons/calibre_haiku.rdef new file mode 100644 index 0000000000..545a1659b7 --- /dev/null +++ b/icons/calibre_haiku.rdef @@ -0,0 +1,75 @@ + +resource() #'VICN' array { + $"6E6369660C035B757B050003C6490502001600000000B4240934240900000046" + $"CC714B5C4D020116003B0BE5A9E62321324B327F604901F6477F20020116003A" + $"B4ABA97CE720E14E323BF7C8526C4B420E020116002E6276BBD25A3A0E232C90" + $"974901F64A6F530379ABFF030C11BA03D6B8650201160040525ABAB75A32B50C" + $"385062D1580E4C470B020116003D7EB5B802CC30304635CDBF4A1F424403D320" + $"0A04BA20B65ABF0BB65ABF0BCA6ABA20CA6A0A04BA20B65ABF0BB65ABF0BCA6A" + $"BA20CA6A0A04B477B444BA02B444BA02CA6AB477CA6A0A04B477B444BA02B444" + $"BA02CA6AB477CA6A0A04B471B59FBA07B59FBA07B682B471B6820A04B471B59F" + $"BA07B59FBA07B682B471B6820A04B470C7FAB9F7C7FAB9F7C8DEB470C8DE0A04" + $"B470C7FAB9F7C7FAB9F7C8DEB470C8DE0A04BA1BB852BF10B852BF10B8D2BA1B" + $"B8D20A04BA1BB852BF10B852BF10B8D2BA1BB8D20A04BA20C80CBF0CC80CBF0C" + $"C88CBA20C88C0A04BA20C80CBF0CC80CBF0CC88CBA20C88C0205B2D7B268B2D8" + $"B290B2D6B251B30FB241B2ECB242B327B241B361B255B345B248B382B265B395" + $"B28FB395B279B396B2A6B360B2B7B381B2B6B31EB2B80205B2D7B268B2D8B290" + $"B2D6B251B30FB241B2ECB242B327B241B361B255B345B248B382B265B395B28F" + $"B395B279B396B2A6B360B2B7B381B2B6B31EB2B80211B3D9B22EB3D9B22EB3D9" + $"B22EB3DFB238B3DFB238B3F5B25FB3F9B26CB3F8B265B3F9B273B3E9B277B3F3" + $"B277B3DFB277B393B266B3DFB277B33BB253B337B253B33BB253B333B253B331" + $"B25AB331B256B331B26421B2B4B345B28521B2B4B376B2B4B376B2B4B362B292" + $"B361B28BB362B290B361B286B36BB284B365B284B373B284B39CB28DB37BB285" + $"B400B2A5B40FB2A5B400B2A5B41DB2A5B426B297B426B29FB426B28DB40AB260" + $"B41EB27EB402B255B3F4B240B3FBB24AB3F1B23BB3E9B230B3EEB237B3E9B230" + $"0211B3D9B22EB3D9B22EB3D9B22EB3DFB238B3DFB238B3F5B25FB3F9B26CB3F8" + $"B265B3F9B273B3E9B277B3F3B277B3DFB277B393B266B3DFB277B33BB253B337" + $"B253B33BB253B333B253B331B25AB331B256B331B26421B2B4B345B28521B2B4" + $"B376B2B4B376B2B4B362B292B361B28BB362B290B361B286B36BB284B365B284" + $"B373B284B39CB28DB37BB285B400B2A5B40FB2A5B400B2A5B41DB2A5B426B297" + $"B426B29FB426B28DB40AB260B41EB27EB402B255B3F4B240B3FBB24AB3F1B23B" + $"B3E9B230B3EEB237B3E9B2300206B2C0B2BBB2C0B2BBB2E4B2EBB2EC1FB2ECB2" + $"F7B2ECB307B2D3B30CB2E4B30CB2C0B30DB291B303B2ABB30AB257B2F5B239B2" + $"C1B239B2DFB238B2B6B247B2A3B23CB2AFB247B2A30206B2C0B2BBB2C0B2BBB2" + $"E4B2EBB2EC1FB2ECB2F7B2ECB307B2D3B30CB2E4B30CB2C0B30DB291B303B2AB" + $"B30AB257B2F5B239B2C1B239B2DFB238B2B6B247B2A3B23CB2AFB247B2A30205" + $"B2D7B268B2D8B290B2D6B251B30FB241B2ECB242B327B241B361B255B345B248" + $"B382B265B395B28FB395B279B396B2A6B360B2B7B381B2B6B31EB2B80205B2D7" + $"B268B2D8B290B2D6B251B30FB241B2ECB242B327B241B361B255B345B248B382" + $"B265B395B28FB395B279B396B2A6B360B2B7B381B2B6B31EB2B80209B2BAB2B0" + $"B2B0B2ADB2C9B2C4B2D1B2CEB2D1B2CEB2DEB2E1B2E6B2F7B2E6B2F0B2E6B301" + $"B2CAB307B2DCB306B2ACB307B265B2F2B28620B245B2E5B238B2C5B239B2D8B2" + $"38B2BAB23EB294B23AB2A7B268B29EB27AB2A2B278B2A2B289B2A6B2A6B2ABB2" + $"97B2A8B2A9B2AC0209B2BAB2B0B2B0B2ADB2C9B2C4B2D1B2CEB2D1B2CEB2DEB2" + $"E1B2E6B2F7B2E6B2F0B2E6B301B2CAB307B2DCB306B2ACB307B265B2F2B28620" + $"B245B2E5B238B2C5B239B2D8B238B2BAB23EB294B23AB2A7B268B29EB27AB2A2" + $"B278B2A2B289B2A6B2A6B2ABB297B2A8B2A9B2AC0A04C31FBBFAC888BB01CB68" + $"C97FC5FFCA780A04C31FBBFAC888BB01CB68C97FC5FFCA780A05C689C2C5C6FF" + $"C1C5C7C2C28FC687BB62C54EBB980A05C689C2C5C6FFC1C5C7C2C28FC687BB62" + $"C54EBB980209C1C9B3D0C1EEB3D2C1C3B3CFC1B8B3D045B3CFC1B8B3D0BF15B4" + $"27BF15B427BEE9B42CBECFB480BECAB454BECFB480C195CA24C195CA24C19BCA" + $"50C1EFCA6AC1C3CA6FC1EFCA6AC493CA13C493CA13C4BFCA0DC4D8C9B9C4DEC9" + $"E5C4D8C9B9C212B415C212B415C20DB3EF0209C1C9B3D0C1EEB3D2C1C3B3CFC1" + $"B8B3D045B3CFC1B8B3D0BF15B427BF15B427BEE9B42CBECFB480BECAB454BECF" + $"B480C195CA24C195CA24C19BCA50C1EFCA6AC1C3CA6FC1EFCA6AC493CA13C493" + $"CA13C4BFCA0DC4D8C9B9C4DEC9E5C4D8C9B9C212B415C212B415C20DB3EF0209" + $"C1C9B3D0C1EEB3D2C1C3B3CFC1B8B3D045B3CFC1B8B3D0BF15B427BF15B427BE" + $"E9B42CBECFB480BECAB454BECFB480C195CA24C195CA24C19BCA50C1EFCA6AC1" + $"C3CA6FC1EFCA6AC493CA13C493CA13C4BFCA0DC4D8C9B9C4DEC9E5C4D8C9B9C2" + $"12B415C212B415C20DB3EF0209C1C9B3D0C1EEB3D2C1C3B3CFC1B8B3D045B3CF" + $"C1B8B3D0BF15B427BF15B427BEE9B42CBECFB480BECAB454BECFB480C195CA24" + $"C195CA24C19BCA50C1EFCA6AC1C3CA6FC1EFCA6AC493CA13C493CA13C4BFCA0D" + $"C4D8C9B9C4DEC9E5C4D8C9B9C212B415C212B415C20DB3EF0209C1C9B3D0C1EE" + $"B3D2C1C3B3CFC1B8B3D045B3CFC1B8B3D0BF15B427BF15B427BEE9B42CBECFB4" + $"80BECAB454BECFB480C195CA24C195CA24C19BCA50C1EFCA6AC1C3CA6FC1EFCA" + $"6AC493CA13C493CA13C4BFCA0DC4D8C9B9C4DEC9E5C4D8C9B9C212B415C212B4" + $"15C20DB3EF0209C1C9B3D0C1EEB3D2C1C3B3CFC1B8B3D045B3CFC1B8B3D0BF15" + $"B427BF15B427BEE9B42CBECFB480BECAB454BECFB480C195CA24C195CA24C19B" + $"CA50C1EFCA6AC1C3CA6FC1EFCA6AC493CA13C493CA13C4BFCA0DC4D8C9B9C4DE" + $"C9E5C4D8C9B9C212B415C212B415C20DB3EF160A000100000A01010110011780" + $"00040A020102000A0101031001178000040A010104000A010105100117800004" + $"0A010106000A0101071001178000040A050108000A0101091001178000040A05" + $"010A000A01010B1001178000040A070116000A0101171001178000040A080118" + $"000A0101191001178000040A09011A000A02011B1001178000040A03011C000A" + $"01011D1001178000040A09011E000A01011F100117800004" +}; From ca33868c6722b1842bfbc98ce7828816354f9451 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Zolt=C3=A1n=20Mizsei?= Date: Wed, 1 Feb 2017 07:19:16 +0100 Subject: [PATCH 15/17] Missing brackets --- setup/build_environment.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/setup/build_environment.py b/setup/build_environment.py index ff549692d7..ae0648ff52 100644 --- a/setup/build_environment.py +++ b/setup/build_environment.py @@ -37,7 +37,7 @@ QMAKE = os.environ.get('QMAKE', QMAKE) PKGCONFIG = find_executable('pkg-config') PKGCONFIG = os.environ.get('PKG_CONFIG', PKGCONFIG) -if islinux or ishaiku and not PKGCONFIG: +if (islinux or ishaiku) and not PKGCONFIG: raise SystemExit('Failed to find pkg-config on your system. You can use the environment variable PKG_CONFIG to point to the pkg-config executable') def run_pkgconfig(name, envvar, default, flag, prefix): From 7f83c236aa3dab7e814c8ce4f03844f056bc25db Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Zolt=C3=A1n=20Mizsei?= Date: Wed, 1 Feb 2017 07:21:30 +0100 Subject: [PATCH 16/17] More brackets (Maybe they are unneeded) --- setup/build_environment.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/setup/build_environment.py b/setup/build_environment.py index ae0648ff52..224ea0530f 100644 --- a/setup/build_environment.py +++ b/setup/build_environment.py @@ -97,8 +97,8 @@ def get_sip_dir(): pyqt['pyqt_sip_dir'] = get_sip_dir() pyqt['sip_inc_dir'] = os.environ.get('SIP_INC_DIR', sysconfig.get_path('include')) -glib_flags = subprocess.check_output([PKGCONFIG, '--libs', 'glib-2.0']).strip() if islinux or ishaiku else '' -fontconfig_flags = subprocess.check_output([PKGCONFIG, '--libs', 'fontconfig']).strip() if islinux or ishaiku else '' +glib_flags = subprocess.check_output([PKGCONFIG, '--libs', 'glib-2.0']).strip() if (islinux or ishaiku) else '' +fontconfig_flags = subprocess.check_output([PKGCONFIG, '--libs', 'fontconfig']).strip() if (islinux or ishaiku) else '' qt_inc = pyqt['inc'] qt_lib = pyqt['lib'] ft_lib_dirs = [] @@ -121,7 +121,7 @@ QT_DLLS = ['Qt5' + x for x in ( 'WebKit', 'WebKitWidgets', 'Widgets', 'Multimedia', 'MultimediaWidgets', 'Xml', # 'XmlPatterns', )] QT_PLUGINS = ('imageformats', 'audio', 'iconengines', 'mediaservice', 'platforms', 'playlistformats', 'printsupport', 'sqldrivers') -if islinux or ishaiku: +if (islinux or ishaiku): # platformthemes cause crashes in Ubuntu QT_PLUGINS += ('platforminputcontexts', 'generic',) From f7b9885660222c3b46101c4dcddc063082ef9aa7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Zolt=C3=A1n=20Mizsei?= Date: Wed, 1 Feb 2017 07:30:32 +0100 Subject: [PATCH 17/17] Revert "More brackets (Maybe they are unneeded)" This reverts commit 7f83c236aa3dab7e814c8ce4f03844f056bc25db. --- setup/build_environment.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/setup/build_environment.py b/setup/build_environment.py index 224ea0530f..ae0648ff52 100644 --- a/setup/build_environment.py +++ b/setup/build_environment.py @@ -97,8 +97,8 @@ def get_sip_dir(): pyqt['pyqt_sip_dir'] = get_sip_dir() pyqt['sip_inc_dir'] = os.environ.get('SIP_INC_DIR', sysconfig.get_path('include')) -glib_flags = subprocess.check_output([PKGCONFIG, '--libs', 'glib-2.0']).strip() if (islinux or ishaiku) else '' -fontconfig_flags = subprocess.check_output([PKGCONFIG, '--libs', 'fontconfig']).strip() if (islinux or ishaiku) else '' +glib_flags = subprocess.check_output([PKGCONFIG, '--libs', 'glib-2.0']).strip() if islinux or ishaiku else '' +fontconfig_flags = subprocess.check_output([PKGCONFIG, '--libs', 'fontconfig']).strip() if islinux or ishaiku else '' qt_inc = pyqt['inc'] qt_lib = pyqt['lib'] ft_lib_dirs = [] @@ -121,7 +121,7 @@ QT_DLLS = ['Qt5' + x for x in ( 'WebKit', 'WebKitWidgets', 'Widgets', 'Multimedia', 'MultimediaWidgets', 'Xml', # 'XmlPatterns', )] QT_PLUGINS = ('imageformats', 'audio', 'iconengines', 'mediaservice', 'platforms', 'playlistformats', 'printsupport', 'sqldrivers') -if (islinux or ishaiku): +if islinux or ishaiku: # platformthemes cause crashes in Ubuntu QT_PLUGINS += ('platforminputcontexts', 'generic',)