diff options
Diffstat (limited to 'src/dbus/qdbus_symbols.cpp')
-rw-r--r-- | src/dbus/qdbus_symbols.cpp | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/src/dbus/qdbus_symbols.cpp b/src/dbus/qdbus_symbols.cpp index 7f4d8e7f33..9e3bd5c5d6 100644 --- a/src/dbus/qdbus_symbols.cpp +++ b/src/dbus/qdbus_symbols.cpp @@ -52,6 +52,7 @@ void (*qdbus_resolve_me(const char *name))(); #if !defined QT_LINKED_LIBDBUS +#ifndef QT_BOOTSTRAPPED static QLibrary *qdbus_libdbus = 0; void qdbus_unloadLibDBus() @@ -59,9 +60,11 @@ void qdbus_unloadLibDBus() delete qdbus_libdbus; qdbus_libdbus = 0; } +#endif bool qdbus_loadLibDBus() { +#ifndef QT_BOOTSTRAPPED #ifdef QT_BUILD_INTERNAL // this is to simulate a library load failure for our autotest suite. if (!qgetenv("QT_SIMULATE_DBUS_LIBFAIL").isEmpty()) @@ -93,17 +96,23 @@ bool qdbus_loadLibDBus() delete lib; lib = 0; return false; +#else + return true; +#endif } +#ifndef QT_BOOTSTRAPPED void (*qdbus_resolve_conditionally(const char *name))() { if (qdbus_loadLibDBus()) return qdbus_libdbus->resolve(name); return 0; } +#endif void (*qdbus_resolve_me(const char *name))() { +#ifndef QT_BOOTSTRAPPED if (!qdbus_loadLibDBus()) qFatal("Cannot find libdbus-1 in your system to resolve symbol '%s'.", name); @@ -112,9 +121,15 @@ void (*qdbus_resolve_me(const char *name))() qFatal("Cannot resolve '%s' in your libdbus-1.", name); return ptr; +#else + Q_UNUSED(name); + return 0; +#endif } +#ifndef QT_BOOTSTRAPPED Q_DESTRUCTOR_FUNCTION(qdbus_unloadLibDBus) +#endif #endif // QT_LINKED_LIBDBUS |