ports/www/domoticz/files/patch-CMakeLists.txt
Robert Clausecker 5614e7e43d www/domoticz: update to 2023.1
Upstream changes:

- Implemented: Accept JWT tokens as authentication and Authorization Bearer tokens (either from internal or external IAM service)
- Implemented: Blinds, added option to schedule 0%
- Implemented: dzVents, OpenURL PATCH method
- Implemented: Enphase, redesign and added battery readings (Supports firmware V7)
- Implemented: Internal OAuth2/OIDC IAM service supporting 4 different flows (OAuth2 (RFC6749), PKCE extension (RFC7636) and JWT Tokens (RFC7519))
- Implemented: MQTT, added support for Lock status
- Implemented: MQTT, added support for wildcards in discovery topics
- Implemented: MQTT, climate preset mode
- Implemented: New 'auth' debug flag to see IAM related messages
- Implemented: Now 'Applications' can be registered to get secure access to Domoticz, see 'setup' menu (standard DomoticzUI app is registered by default)
- Implemented: P1 Meter, added number of (long) power failures, voltage sags/swells
- Implemented: SECURITY_SETUP.md describing the new/improved security setup
- Implemented: Support for basic OpenID Connect Discovery ('https://<DOMOTICZURL>/.well-known/openid-configuration')
- Implemented: Search option in Switches/Scenes/Temperature/Utility and Weather tab
- Implemented: The Security realm can be configured using the 'vhostname' option (default domoticz.com)
- Implemented: Timer, Grid option for selected switches and thermostat. Big thanks to syrhus/labelette91580 and xbeaudouin
- Implemented: User device selection now displays type/subtype
- Changed: All security related setting are now in 1 settings tab
- Changed: By default prompt for login to only allow secure access
- Changed: Default 'admin' user is generated with standard password (see Users)
- Changed: Dimmer, restores to previous Set Level state after Off
- Changed: Implicit adding local IP to 'trusted networks' has been removed. Needs to be set explicitly for security reasons!
- Changed: Lots of security related code cleanup and improvements
- Changed: Menu option for 'Users' moved to main 'Setup' menu list
- Changed: MQTT timeout increased to 2 minutes
- Changed: The following proxy headers are now properly supported 'Forwarded' (RFC7239), 'X-Forwarder-For' and 'X-Real-IP' (in that order)
- Changed: The secure server (HTTPS) sends proper CORS and Security headers
- Fixed: Dashboard, scenes/lights hidden when this was disabled in user settings
- Fixed: Dashboard, mobile display did not display P1 meter current return value correctly
- Fixed: Dashboard, not showing disabled sections (temperature/weather/utility) when a device has multiple properties (for instance temperature + weather)
- Fixed: Highcharts dropdown menu z-index problem
- Fixed: Logout now returns 204 instead of 401
- Fixed: Waterflow sensor custom icon
- Fixed: Making sure Custom icons are valid (when someone manually edits the database)
- Fixed: Mobile display text objects with long lines
- Fixed: MQTT-AD Climate, fixed setpoint temperature display
- Fixed: Navigation bar display issues on some mobile devices
- Fixed: Setpoint popup when using protection

Version 2022.2 (November 5 2022)
- Implemented: Blockly,	added 'Toggle' set command
- Implemented: Camera, camera Aspect Ratio
- Implemented: Commandline option '-weblog <weblogfile>' which creates Apache Combined Logformat logs containg all webrequests
- Implemented: Counters, support for larger counter values/usage
- Implemented: Dashboard, temperature Trend indication
- Implemented: Docker	startup script (for instance to install additional packages)
- Implemented: EcoDevices, complete support for EcoDevices RT2 with firmware 3.00.xx
- Implemented: FritzBox, more statistics
- Implemented: Fritzbox, up/download statistics
- Implemented: MQTT Auto Discovery Protocol (Zigbee2MQTT/ Z-Wave JS UI)
- Implemented: P1 Meter, added Current L1/L2/L3 sensor for delivered
- Implemented: Philips Hue, support color change on some vendors bulb (like LIDL)
- Implemented: RFXCom, added internal support for Novy Mood, Level Sensor
- Implemented: SolarEdge, more sensors support
- Implemented: UVI device, added multiply field to widget
- Implemented: Xiaomi Gateway, new model for wired single key switch
- Updated: Mercedes EV, new Token URL (changed November 2022)
- Changed: All inverted Blinds types should not be used anymore, instead use the regular blinds and set the needed Reverse option
- Changed: Blinds working (see https://www.domoticz.com/wiki/Blinds)
- Changed: Energy devices have more precision
- Changed: kWh devices	MAX Power per phase from 10000 to 18400 (230V*80A)
- Changed: P1 Meter, changed P1 Max W from 17250 (25A) to 55200 (80A)
- Changed: P1 Meter, speed up CRC calculation
- Changed: Webserver, removing AppCache, switching to service worker
- Fixed: Blockly, keeping last dim level when switching OFF, option for Close state
- Fixed: Counter incremental, counter in report (when used with meter offset)
- Fixed: Counter short-term log 1 hour offset
- Fixed: Counters, rounding (number of decimals) in GUI
- Fixed: Crash when secure webserver could not start and applying settings
- Fixed: Dimmer, better handling of last dimmer level when switching on/off
- Fixed: EvoHome, correct state/mode for EvoHome type
- Fixed: Floorplan, custom utility icons corrected in Floorplan
- Fixed: Floorplan, fixed blinds state icon/switching
- Fixed: Floorplan, making sure the Door Lock is switchable in the Floorplan
- Fixed: Floorplans, fixed issues with the displaying of some icons
- Fixed: Notification system, prevent double start
- Fixed: P1 Meter, fix for Sibelga smart meters that use a too long string as an identifier
- Fixed: RFXCom, corrected RFXCom solar sensor reading
- Fixed: Temperature, corrected chill calculation
- Fixed: WebGUI, making sure status does not wrap in mobile mode
- Removed: AppCache
- Deprecated: OpenZWave, please move to MQTT Auto Discovery and ZWave JS UI (Project stopped a long time ago!)

PR:		271603
2023-05-25 11:41:32 +02:00

130 lines
5.2 KiB
Text

--- CMakeLists.txt.orig 2023-05-23 11:37:06.693431000 +0200
+++ CMakeLists.txt 2023-05-23 11:37:14.422198000 +0200
@@ -395,11 +395,9 @@
# Target
set(
-domoticztester_SRCS
main/stdafx.cpp
main/Helper.cpp
main/CmdLine.cpp
-main/domoticz_tester.cpp
main/BaroForecastCalculator.cpp
main/HTMLSanitizer.cpp
main/localtime_r.cpp
@@ -412,9 +410,6 @@
#main/IFTTT.cpp
-add_executable(domoticztester ${domoticztester_SRCS})
-set(EXECUTABLE_OUTPUT_PATH ${CMAKE_BINARY_DIR})
-
#
# LUA
#
@@ -513,7 +508,6 @@
# explicitly say that the executable depends on the revisiontag
add_dependencies(domoticz revisiontag)
-add_dependencies(domoticztester revisiontag)
TEST_BIG_ENDIAN(BIGENDIAN)
IF(${BIGENDIAN})
@@ -533,7 +527,6 @@
set(JSONCPP_WITH_PKGCONFIG_SUPPORT OFF CACHE BOOL "Enable jsoncpp pkgconfig support" FORCE)
add_subdirectory (extern/jsoncpp EXCLUDE_FROM_ALL)
target_link_libraries(domoticz jsoncpp_static)
- target_link_libraries(domoticztester jsoncpp_static)
INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/extern/jsoncpp/include)
ELSE(USE_BUILTIN_JSONCPP)
find_package(PkgConfig)
@@ -543,9 +536,6 @@
target_include_directories(domoticz PRIVATE ${JSONCPP_INCLUDE_DIRS})
target_link_directories(domoticz PRIVATE ${JSONCPP_LIBRARY_DIRS})
target_link_libraries(domoticz ${JSONCPP_LIBRARIES})
- target_include_directories(domoticztester PRIVATE ${JSONCPP_INCLUDE_DIRS})
- target_link_directories(domoticztester PRIVATE ${JSONCPP_LIBRARY_DIRS})
- target_link_libraries(domoticztester ${JSONCPP_LIBRARIES})
ELSE(JSONCPP_FOUND)
MESSAGE(FATAL_ERROR "JSONCPP not found on your system! try 'sudo apt-get install jsoncpp-dev'")
ENDIF(JSONCPP_FOUND)
@@ -558,7 +548,6 @@
option(DOCUMENTATION "Build documentation?" OFF)
add_subdirectory (extern/mosquitto EXCLUDE_FROM_ALL)
target_link_libraries(domoticz libmosquitto_static)
- target_link_libraries(domoticztester libmosquitto_static)
INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/extern/mosquitto/include)
INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/extern/mosquitto/lib)
ELSE(USE_BUILTIN_MQTT)
@@ -577,7 +566,6 @@
MESSAGE(STATUS "Using builtin SQLite library")
add_subdirectory (extern/sqlite-amalgamation EXCLUDE_FROM_ALL)
target_link_libraries(domoticz SQLite3)
- target_link_libraries(domoticztester SQLite3)
INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/extern/sqlite-amalgamation)
ELSE(USE_BUILTIN_SQLITE)
find_package(SQLite3)
@@ -586,7 +574,6 @@
MESSAGE(STATUS "SQLite includes found at: ${SQLite3_INCLUDE_DIRS}")
INCLUDE_DIRECTORIES(${SQLite3_INCLUDE_DIRS})
target_link_libraries(domoticz ${SQLite3_LIBRARIES})
- target_link_libraries(domoticztester ${SQLite3_LIBRARIES})
ELSE(SQLite3_FOUND)
MESSAGE(FATAL_ERROR "SQLite3 not found on your system! try 'sudo apt-get install libsqlite3-dev'")
ENDIF(SQLite3_FOUND)
@@ -596,7 +583,6 @@
IF(USE_BUILTIN_MINIZIP)
add_subdirectory (extern/minizip EXCLUDE_FROM_ALL)
target_link_libraries(domoticz minizip)
- target_link_libraries(domoticztester minizip)
INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/extern/minizip)
ELSE(USE_BUILTIN_MINIZIP)
find_package(PkgConfig)
@@ -606,9 +592,6 @@
target_include_directories(domoticz PRIVATE ${MINIZIP_INCLUDE_DIRS})
target_link_directories(domoticz PRIVATE ${MINIZIP_LIBRARY_DIRS})
target_link_libraries(domoticz ${MINIZIP_LIBRARIES})
- target_include_directories(domoticztester PRIVATE ${MINIZIP_INCLUDE_DIRS})
- target_link_directories(domoticztester PRIVATE ${MINIZIP_LIBRARY_DIRS})
- target_link_libraries(domoticztester ${MINIZIP_LIBRARIES})
ELSE(MINIZIP_FOUND)
MESSAGE(FATAL_ERROR "MINIZIP not found on your system! try 'sudo apt-get install minizip-dev'")
ENDIF(MINIZIP_FOUND)
@@ -630,7 +613,6 @@
find_library(MD_LIBRARY NAMES md)
IF(MD_LIBRARY)
target_link_libraries(domoticz ${MD_LIBRARY})
- target_link_libraries(domoticztester ${MD_LIBRARY})
ENDIF(MD_LIBRARY)
ELSE()
message(STATUS "OPENSSL library found at: ${OPENSSL_LIBRARIES}")
@@ -638,7 +620,6 @@
add_definitions(-DWITH_TLS)
include_directories(${OPENSSL_INCLUDE_DIR})
target_link_libraries(domoticz ${OPENSSL_LIBRARIES})
- target_link_libraries(domoticztester ${OPENSSL_LIBRARIES})
ENDIF()
#
@@ -779,7 +760,6 @@
ENDIF(TELLDUSCORE_INCLUDE)
target_link_libraries(domoticz ${Boost_LIBRARIES} ${ZLIB_LIBRARIES} ${MINIZIP_LIBRARIES} ${CURL_LIBRARIES} pthread ${MQTT_LIBRARIES} ${LUA_LIBRARIES} ${CMAKE_DL_LIBS} ${TELLDUS_LIBRARIES})
-target_link_libraries(domoticztester ${Boost_LIBRARIES} ${ZLIB_LIBRARIES} ${MINIZIP_LIBRARIES} ${CURL_LIBRARIES} pthread ${MQTT_LIBRARIES} ${LUA_LIBRARIES} ${CMAKE_DL_LIBS} ${TELLDUS_LIBRARIES})
IF(CMAKE_SYSTEM_NAME STREQUAL "Darwin")
target_link_libraries(domoticz -lresolv)
@@ -789,13 +769,11 @@
target_link_libraries(domoticz ${EXECINFO_LIBRARIES})
ELSE()
target_link_libraries(domoticz -lrt -lresolv ${EXECINFO_LIBRARIES})
- target_link_libraries(domoticztester -lrt -lresolv ${EXECINFO_LIBRARIES})
ENDIF()
IF(USE_PRECOMPILED_HEADER)
message(STATUS "Using precompiled headers")
target_precompile_headers(domoticz PRIVATE "main/stdafx.h")
- target_precompile_headers(domoticztester PRIVATE "main/stdafx.h")
ENDIF(USE_PRECOMPILED_HEADER)
IF(CMAKE_COMPILER_IS_GNUCXX)