diff --git a/src/python/corrade/__init__.py b/src/python/corrade/__init__.py index 2c06f2e..0bcf7d7 100644 --- a/src/python/corrade/__init__.py +++ b/src/python/corrade/__init__.py @@ -25,6 +25,22 @@ """Root Corrade module""" +# On Windows, if a known directory layout is detected, add paths containing +# binaries to the DLL search path +import platform +if platform.system() == 'Windows': + import os + + for directory in [ + # Prebuilt binaries from the magnum-ci repo have this file in + # python/corrade/ and DLLs in bin/ + '../../bin' + ]: + bin_path = os.path.join(os.path.dirname(__file__), directory) + if os.path.exists(bin_path): + os.add_dll_directory(bin_path) + break + from _corrade import * import sys diff --git a/src/python/magnum/__init__.py b/src/python/magnum/__init__.py index d55ae0b..1ecf70d 100644 --- a/src/python/magnum/__init__.py +++ b/src/python/magnum/__init__.py @@ -25,6 +25,10 @@ """Root Magnum module""" +# Important -- performs various platform-specific setup like adding DLL paths +# on Windows +import corrade + from _magnum import * # This feels extremely hackish, but without that it wouldn't be possible to