Ship some GIO modules on Mac so HTTPS works correctly.
This commit is contained in:
parent
08286102da
commit
23a255d0cf
17
dist/macdeploy.py
vendored
17
dist/macdeploy.py
vendored
@ -106,6 +106,10 @@ QT_PLUGINS_SEARCH_PATH=[
|
|||||||
'/Developer/Applications/Qt/plugins',
|
'/Developer/Applications/Qt/plugins',
|
||||||
]
|
]
|
||||||
|
|
||||||
|
GIO_MODULES_SEARCH_PATH=[
|
||||||
|
'/target/lib/gio/modules',
|
||||||
|
]
|
||||||
|
|
||||||
|
|
||||||
class Error(Exception):
|
class Error(Exception):
|
||||||
pass
|
pass
|
||||||
@ -131,7 +135,7 @@ class CouldNotFindGstreamerPluginError(Error):
|
|||||||
pass
|
pass
|
||||||
|
|
||||||
|
|
||||||
class CouldNotFindScriptPluginError(Error):
|
class CouldNotFindGioModuleError(Error):
|
||||||
pass
|
pass
|
||||||
|
|
||||||
|
|
||||||
@ -360,12 +364,23 @@ def FindGstreamerPlugin(name):
|
|||||||
raise CouldNotFindGstreamerPluginError(name)
|
raise CouldNotFindGstreamerPluginError(name)
|
||||||
|
|
||||||
|
|
||||||
|
def FindGioModule(name):
|
||||||
|
for path in GIO_MODULES_SEARCH_PATH:
|
||||||
|
if os.path.exists(path):
|
||||||
|
for dir, dirs, files in os.walk(path):
|
||||||
|
if name in files:
|
||||||
|
return os.path.join(dir, name)
|
||||||
|
raise CouldNotFindGioModuleError(name)
|
||||||
|
|
||||||
|
|
||||||
FixBinary(binary)
|
FixBinary(binary)
|
||||||
|
|
||||||
for plugin in GSTREAMER_PLUGINS:
|
for plugin in GSTREAMER_PLUGINS:
|
||||||
FixPlugin(FindGstreamerPlugin(plugin), 'gstreamer')
|
FixPlugin(FindGstreamerPlugin(plugin), 'gstreamer')
|
||||||
|
|
||||||
FixPlugin(FindGstreamerPlugin('gst-plugin-scanner'), '.')
|
FixPlugin(FindGstreamerPlugin('gst-plugin-scanner'), '.')
|
||||||
|
FixPlugin(FindGioModule('libgiognutls.so'), 'gio-modules')
|
||||||
|
FixPlugin(FindGioModule('libgiolibproxy.so'), 'gio-modules')
|
||||||
|
|
||||||
try:
|
try:
|
||||||
FixPlugin('clementine-spotifyblob', '.')
|
FixPlugin('clementine-spotifyblob', '.')
|
||||||
|
@ -184,6 +184,11 @@ void SetGstreamerEnvironment() {
|
|||||||
if (!registry_filename.isEmpty()) {
|
if (!registry_filename.isEmpty()) {
|
||||||
SetEnv("GST_REGISTRY", registry_filename);
|
SetEnv("GST_REGISTRY", registry_filename);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#ifdef Q_OS_DARWIN
|
||||||
|
SetEnv("GIO_EXTRA_MODULES",
|
||||||
|
QCoreApplication::applicationDirPath() + "/../PlugIns/gio-modules");
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef HAVE_GIO
|
#ifdef HAVE_GIO
|
||||||
|
Loading…
x
Reference in New Issue
Block a user