]>
Commit | Line | Data |
---|---|---|
9dda6696 AM |
1 | From 694241f7905967bf69af3a31265180c00b73e28c Mon Sep 17 00:00:00 2001 |
2 | From: Michael Cronenworth <mike@cchtml.com> | |
3 | Date: Fri, 11 Aug 2017 10:08:27 -0500 | |
4 | Subject: [PATCH] build: Detect and allow external tinyxpath library usage | |
5 | ||
6 | Signed-off-by: Michael Cronenworth <mike@cchtml.com> | |
7 | --- | |
8 | CMakeLists.txt | 57 +++++++++++++++++++++--------- | |
9ee4483e AM |
9 | removed from Fedora patch hardware/AnnaThermostat.cpp | 3 +- |
10 | removed from Fedora patch hardware/RAVEn.cpp | 3 +- | |
11 | removed from Fedora patch hardware/openzwave/control_panel/ozwcp.cpp | 3 +- | |
12 | removed from Fedora patch hardware/plugins/PluginManager.cpp | 3 +- | |
13 | removed from Fedora patch hardware/plugins/Plugins.cpp | 3 +- | |
14 | removed from Fedora patch main/LuaCommon.cpp | 7 +++- | |
15 | removed from Fedora patch main/LuaHandler.cpp | 3 +- | |
9dda6696 AM |
16 | removed from Fedora patch msbuild/domoticz.vcxproj | 6 ++-- |
17 | 9 files changed, 62 insertions(+), 26 deletions(-) | |
18 | ||
19 | diff --git a/CMakeLists.txt b/CMakeLists.txt | |
20 | index bc231d8f6..334f203a6 100644 | |
21 | --- a/CMakeLists.txt | |
22 | +++ b/CMakeLists.txt | |
72784cf7 AM |
23 | @@ -365,22 +365,6 @@ |
24 | webserver/server.cpp | |
25 | webserver/Websockets.cpp | |
26 | webserver/WebsocketHandler.cpp | |
9dda6696 AM |
27 | -tinyxpath/action_store.cpp |
28 | -tinyxpath/htmlutil.cpp | |
29 | -tinyxpath/lex_util.cpp | |
30 | -tinyxpath/node_set.cpp | |
31 | -tinyxpath/tinystr.cpp | |
32 | -tinyxpath/tinyxml.cpp | |
33 | -tinyxpath/tinyxmlerror.cpp | |
34 | -tinyxpath/tinyxmlparser.cpp | |
35 | -tinyxpath/tokenlist.cpp | |
36 | -tinyxpath/xml_util.cpp | |
37 | -tinyxpath/xpath_expression.cpp | |
38 | -tinyxpath/xpath_processor.cpp | |
39 | -tinyxpath/xpath_stream.cpp | |
40 | -tinyxpath/xpath_stack.cpp | |
41 | -tinyxpath/xpath_static.cpp | |
42 | -tinyxpath/xpath_syntax.cpp | |
43 | ) | |
9dda6696 | 44 | |
72784cf7 AM |
45 | add_executable(domoticz ${domoticz_SRCS}) |
46 | @@ -682,6 +666,47 @@ | |
9ee4483e | 47 | ENDIF(LIBUSB_FOUND) |
9a71e0cb | 48 | ENDIF(WITH_LIBUSB) |
9dda6696 AM |
49 | |
50 | +option(USE_BUILTIN_TINYXPATH "Use builtin tinyxpath library" YES) | |
51 | +IF(USE_BUILTIN_TINYXPATH) | |
52 | + include_directories(tinyxpath) | |
53 | + target_sources( | |
54 | + domoticz | |
55 | + PUBLIC | |
56 | + tinyxpath/action_store.cpp | |
57 | + tinyxpath/htmlutil.cpp | |
58 | + tinyxpath/lex_util.cpp | |
59 | + tinyxpath/node_set.cpp | |
60 | + tinyxpath/tinystr.cpp | |
61 | + tinyxpath/tinyxml.cpp | |
62 | + tinyxpath/tinyxmlerror.cpp | |
63 | + tinyxpath/tinyxmlparser.cpp | |
64 | + tinyxpath/tokenlist.cpp | |
65 | + tinyxpath/xml_util.cpp | |
66 | + tinyxpath/xpath_expression.cpp | |
67 | + tinyxpath/xpath_processor.cpp | |
68 | + tinyxpath/xpath_stream.cpp | |
69 | + tinyxpath/xpath_stack.cpp | |
70 | + tinyxpath/xpath_static.cpp | |
71 | + tinyxpath/xpath_syntax.cpp | |
72 | + ) | |
73 | +else() | |
74 | + pkg_check_modules(TinyXML QUIET tinyxml) | |
75 | + IF(TinyXML_FOUND) | |
76 | + MESSAGE(STATUS "TinyXML found at: ${TinyXML_LIBRARIES}") | |
77 | + IF(EXISTS "/usr/include/tinyxpath/xpath_processor.h") | |
78 | + MESSAGE(STATUS "TinyXPath found") | |
79 | + target_link_libraries(domoticz ${TinyXML_LIBRARIES}) | |
80 | + target_link_libraries(domoticz tinyxpath) | |
81 | + include_directories(/usr/include/tinyxpath) | |
82 | + add_definitions(-DWITH_EXTERNAL_TINYXPATH) | |
83 | + else() | |
84 | + MESSAGE(FATAL_ERROR "TinyXPath not found but USE_BUILTIN_TINYXPATH=NO") | |
85 | + ENDIF() | |
86 | + else() | |
87 | + MESSAGE(FATAL_ERROR "TinyXML not found but USE_BUILTIN_TINYXPATH=NO") | |
88 | + ENDIF(TinyXML_FOUND) | |
89 | +ENDIF(USE_BUILTIN_TINYXPATH) | |
90 | + | |
9a71e0cb JP |
91 | # |
92 | # OpenZWave | |
93 | # try to find open-zwave, if found, include support | |
72784cf7 AM |
94 | --- a/hardware/openzwave/control_panel/ozwcp.cpp 2020-03-22 09:16:16.000000000 -0500 |
95 | +++ b/hardware/openzwave/control_panel/ozwcp.cpp 2020-03-24 10:53:04.968630391 -0500 | |
96 | @@ -49,7 +49,7 @@ | |
97 | #include <sys/stat.h> | |
98 | #include <fstream> | |
99 | #include <iostream> | |
100 | -#include "../../../tinyxpath/tinyxml.h" | |
101 | +#include <tinyxml.h> | |
102 | ||
103 | //#include "microhttpd.h" | |
104 | #include "ozwcp.h" | |
105 | --- a/hardware/plugins/PluginManager.cpp 2020-03-22 09:16:16.000000000 -0500 | |
106 | +++ b/hardware/plugins/PluginManager.cpp 2020-03-24 13:53:05.305852598 -0500 | |
107 | @@ -21,11 +21,12 @@ | |
108 | #include "../../main/Logger.h" | |
109 | #include "../../main/SQLHelper.h" | |
110 | #include "../../main/WebServer.h" | |
111 | -#include "../../tinyxpath/tinyxml.h" | |
112 | #ifdef WIN32 | |
113 | +# include "../../tinyxpath/tinyxml.h" | |
114 | # include <direct.h> | |
115 | #else | |
116 | # include <sys/stat.h> | |
117 | +# include <tinyxml.h> | |
118 | #endif | |
119 | ||
120 | #include "DelayedLink.h" | |
121 | --- a/hardware/plugins/Plugins.cpp 2020-03-22 09:16:16.000000000 -0500 | |
122 | +++ b/hardware/plugins/Plugins.cpp 2020-03-24 13:45:46.056965796 -0500 | |
123 | @@ -16,10 +16,11 @@ | |
124 | #include "../../main/SQLHelper.h" | |
125 | #include "../../main/mainworker.h" | |
126 | #include "../../main/localtime_r.h" | |
127 | -#include "../../tinyxpath/tinyxml.h" | |
128 | ||
129 | #include "../../notifications/NotificationHelper.h" | |
130 | ||
131 | +#include <tinyxml.h> | |
132 | + | |
9a71e0cb JP |
133 | #define ADD_STRING_TO_DICT(pPlugin, pDict, key, value) \ |
134 | { \ | |
135 | PyNewRef pObj = Py_BuildValue("s", value.c_str()); \ | |
72784cf7 AM |
136 | --- a/hardware/AnnaThermostat.cpp 2020-03-22 09:16:16.000000000 -0500 |
137 | +++ b/hardware/AnnaThermostat.cpp 2020-03-24 10:41:00.530030798 -0500 | |
138 | @@ -9,7 +9,7 @@ | |
139 | #include "../httpclient/HTTPClient.h" | |
140 | #include "../main/mainworker.h" | |
141 | ||
142 | -#include "../tinyxpath/tinyxml.h" | |
143 | +#include <tinyxml.h> | |
144 | ||
145 | #define round(a) ( int ) ( a + .5 ) | |
146 | ||
147 | --- a/hardware/EcoDevices.cpp 2020-03-22 09:16:16.000000000 -0500 | |
148 | +++ b/hardware/EcoDevices.cpp 2020-03-24 10:47:20.095926641 -0500 | |
149 | @@ -33,11 +33,11 @@ | |
150 | #include "hardwaretypes.h" | |
151 | #include "../main/localtime_r.h" | |
152 | #include "../httpclient/HTTPClient.h" | |
153 | -#include "../tinyxpath/tinyxml.h" | |
154 | -#include "../tinyxpath/xpath_static.h" | |
155 | #include "../webserver/Base64.h" | |
156 | #include "../main/json_helper.h" | |
157 | #include <sstream> | |
158 | +#include <tinyxml.h> | |
159 | +#include <xpath_static.h> | |
160 | ||
161 | #ifdef _DEBUG | |
162 | #define DEBUG_EcoDevices | |
9ee4483e AM |
163 | --- a/hardware/OnkyoAVTCP.cpp 2018-06-23 09:18:06.000000000 -0500 |
164 | +++ b/hardware/OnkyoAVTCP.cpp 2018-07-08 14:21:06.884163094 -0500 | |
86ad2462 | 165 | @@ -3,15 +3,15 @@ |
9ee4483e AM |
166 | #include "../main/Logger.h" |
167 | #include "../main/Helper.h" | |
9dda6696 | 168 | #include "../main/SQLHelper.h" |
9ee4483e | 169 | -#include <iostream> |
9dda6696 AM |
170 | #include "../main/localtime_r.h" |
171 | #include "../main/mainworker.h" | |
9ee4483e | 172 | #include "../hardware/hardwaretypes.h" |
72784cf7 | 173 | -#include <json/json.h> |
9dda6696 | 174 | -#include "../tinyxpath/tinyxml.h" |
9ee4483e | 175 | #include "../main/WebServer.h" |
9dda6696 | 176 | |
9ee4483e AM |
177 | +#include <iostream> |
178 | #include <sstream> | |
72784cf7 | 179 | +#include <json/json.h> |
9dda6696 | 180 | +#include <tinyxml.h> |
9dda6696 | 181 | |
9ee4483e | 182 | #define RETRY_DELAY 30 |
9dda6696 | 183 | |
72784cf7 AM |
184 | --- a/hardware/RAVEn.cpp 2020-03-22 09:16:16.000000000 -0500 |
185 | +++ b/hardware/RAVEn.cpp 2020-03-24 12:55:59.616310732 -0500 | |
186 | @@ -5,8 +5,8 @@ | |
187 | #include "../main/Logger.h" | |
188 | #include "../main/mainworker.h" | |
189 | #include "../main/RFXtrx.h" | |
190 | -#include "../tinyxpath/tinyxml.h" | |
191 | #include "hardwaretypes.h" | |
192 | +#include <tinyxml.h> | |
193 | ||
194 | //Rainforest RAVEn USB ZigBee Smart Meter Adapter | |
195 | //https://rainforestautomation.com/rfa-z106-raven/ |