]> git.pld-linux.org Git - packages/domoticz.git/blobdiff - domoticz-python.patch
up to 2024.4
[packages/domoticz.git] / domoticz-python.patch
index 9ef3e7ef4e9eeb02a94078ad08b13a8e5f9e6dc9..6047ea155102a15d551946b0b12c3944ada6a51f 100644 (file)
@@ -1,62 +1,71 @@
-diff -urN domoticz-4.10717.orig/hardware/plugins/DelayedLink.h domoticz-4.10717/hardware/plugins/DelayedLink.h
---- domoticz-4.10717.orig/hardware/plugins/DelayedLink.h       2019-05-10 11:37:55.000000000 +0200
-+++ domoticz-4.10717/hardware/plugins/DelayedLink.h    2019-10-05 19:05:40.930495976 +0200
-@@ -145,18 +145,10 @@
-                               if (!shared_lib_) shared_lib_ = LoadLibrary("python35_d.dll");
-                               if (!shared_lib_) shared_lib_ = LoadLibrary("python34_d.dll");
- #     else
+--- domoticz-2021.1/hardware/plugins/DelayedLink.h.orig        2021-04-17 17:50:55.000000000 +0200
++++ domoticz-2021.1/hardware/plugins/DelayedLink.h     2021-04-20 12:36:46.238826640 +0200
+@@ -155,25 +155,9 @@
+                       shared_lib_ = nullptr;
+                       if (!shared_lib_) {
+ #ifdef WIN32
+-                              if (!shared_lib_) shared_lib_ = LoadLibrary("python312.dll");
+-                              if (!shared_lib_) shared_lib_ = LoadLibrary("python311.dll");
+-                              if (!shared_lib_) shared_lib_ = LoadLibrary("python310.dll");
+-                              if (!shared_lib_) shared_lib_ = LoadLibrary("python39.dll");
 -                              if (!shared_lib_) shared_lib_ = LoadLibrary("python38.dll");
 -                              if (!shared_lib_) shared_lib_ = LoadLibrary("python37.dll");
 -                              if (!shared_lib_) shared_lib_ = LoadLibrary("python36.dll");
 -                              if (!shared_lib_) shared_lib_ = LoadLibrary("python35.dll");
 -                              if (!shared_lib_) shared_lib_ = LoadLibrary("python34.dll");
 +                              if (!shared_lib_) shared_lib_ = LoadLibrary("python.dll");
- #     endif
  #else
+-                              if (!shared_lib_) FindLibrary("python3.12", true);
+-                              if (!shared_lib_) FindLibrary("python3.11", true);
+-                              if (!shared_lib_) FindLibrary("python3.10", true);
+-                              if (!shared_lib_) FindLibrary("python3.9", true);
 -                              if (!shared_lib_) FindLibrary("python3.8", true);
 -                              if (!shared_lib_) FindLibrary("python3.7", true);
 -                              if (!shared_lib_) FindLibrary("python3.6", true);
 -                              if (!shared_lib_) FindLibrary("python3.5", true);
 -                              if (!shared_lib_) FindLibrary("python3.4", true);
-+                              if (!shared_lib_) FindLibrary("python3", true);
- #endif
-                               if (shared_lib_)
++                              if (!shared_lib_) FindLibrary(PYTHON_LIBDIR, false);
+ #ifdef __FreeBSD__
+                               if (!shared_lib_) FindLibrary("python3.12m", true);
+                               if (!shared_lib_) FindLibrary("python3.11m", true);
+@@ -355,34 +327,20 @@
+                               else
                                {
-@@ -271,24 +263,12 @@
-                                               library = "lib" + sLibrary + ".so";
-                                               shared_lib_ = dlopen(library.c_str(), RTLD_LAZY | RTLD_GLOBAL);
-                                       }
--                                      // look in directories covered by ldconfig but 'm' variant
--                                      if (!shared_lib_)
+                                       std::vector<std::string> entries;
+-                                      DirectoryListing(entries, sLibrary, true, false);
+-                                      for (const auto &entry : entries)
 -                                      {
--                                              library = "lib" + sLibrary + "m.so";
--                                              shared_lib_ = dlopen(library.c_str(), RTLD_LAZY | RTLD_GLOBAL);
--                                      }
-                                       // look in /usr/lib directories
-                                       if (!shared_lib_)
-                                       {
-                                               library = "/usr/lib/" + sLibrary + "/";
-                                               FindLibrary(library, false);
-                                       }
--                                      // look in /usr/lib directories but 'm' variant
--                                      if (!shared_lib_)
--                                      {
--                                              library = "/usr/lib/" + sLibrary + "m/";
+-                                              if (shared_lib_)
+-                                              {
+-                                                      break;
+-                                              }
+-
+-                                              library = sLibrary + entry + "/";
 -                                              FindLibrary(library, false);
 -                                      }
-                                       // look in /usr/local/lib directory (handles build from source)
-                                       if (!shared_lib_)
+-
+-                                      entries.clear();
+                                       DirectoryListing(entries, sLibrary, false, true);
+                                       for (const auto &filename : entries)
                                        {
-@@ -296,12 +276,6 @@
-                                               shared_lib_ = dlopen(library.c_str(), RTLD_LAZY | RTLD_GLOBAL);
+-                                              if (shared_lib_)
+-                                              {
+-                                                      break;
+-                                              }
  
+                                               if (filename.length() > 12 &&
+                                                       filename.compare(0, 11, "libpython3.") == 0 &&
+-                                                      filename.compare(filename.length() - 3, 3, ".so") == 0 &&
+-                                                      filename.compare(filename.length() - 6, 6, ".dylib") == 0)
++                                                      filename.find(".so", 10) != std::string::npos)
+                                               {
+-                                                      library = sLibrary + filename;
++                                                      library = sLibrary + "/" + filename;
+                                                       shared_lib_ = dlopen(library.c_str(), RTLD_LAZY | RTLD_GLOBAL);
++                                                      if (shared_lib_)
++                                                      {
++                                                              break;
++                                                      }
+                                               }
                                        }
--                                      // look in /usr/local/lib directory (handles build from source) but 'm' variant
--                                      if (!shared_lib_)
--                                      {
--                                              library = "/usr/local/lib/lib" + sLibrary + "m.so";
--                                              shared_lib_ = dlopen(library.c_str(), RTLD_LAZY | RTLD_GLOBAL);
--                                      }
-                                       // MacOS
-                                       // look for .dylib in /usr/local/lib
-                                       if (!shared_lib_)
+                               }
This page took 1.179151 seconds and 4 git commands to generate.