From 1fe6f615ce186f1802c919916ae75c490eb376e6 Mon Sep 17 00:00:00 2001 From: Adrian Szyndela Date: Fri, 6 Sep 2019 13:06:31 +0200 Subject: [PATCH] src: fix non-linking with some compilers/linkers We got a report that the library does not link within some environments, giving messages like: undefined reference to `BusPathResolver::KDBUS_SYSTEM_BUS_PATH' This is due to missing definition of static constexpr fields. It is not necessary to give such definition when a field is initialized inline since C++17, but this is compiled with C++11. This commit adds definition of static constexpr fields. Change-Id: Ia354f0e1aa5f1051571bf328fc654627f69c5dbd --- src/libdbuspolicy1.cpp | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/libdbuspolicy1.cpp b/src/libdbuspolicy1.cpp index 74c8ed2..404dad7 100644 --- a/src/libdbuspolicy1.cpp +++ b/src/libdbuspolicy1.cpp @@ -273,6 +273,9 @@ public: uid_t bus_owner() { return owner; } }; +constexpr boost::string_ref BusPathResolver::KDBUS_PATH_PREFIX; +constexpr boost::string_ref BusPathResolver::KDBUS_SYSTEM_BUS_PATH; + DBUSPOLICY1_EXPORT void* dbuspolicy1_init_shared(const char *bus_path, int fd) { assert(bus_path); -- 2.7.4